組み合わせ最適化において、マトロイド交差問題とは、同一の基底集合上の2つのマトロイドにおいて、最大の共通独立集合を見つける問題である。マトロイドの要素に実数重みが割り当てられている場合、重み付きマトロイド交差問題とは、可能な限り最大の重みを持つ共通独立集合を見つける問題である。これらの問題は、二部グラフにおける最大マッチングや最大重みマッチングの探索、有向グラフにおける有向枝の探索など、グラフ理論や組み合わせ最適化における多くの問題を一般化したものである。
ジャック・エドモンズによるマトロイド交差定理[1]は、任意の2つのマトロイド に対して、そして我々は持っています
どこそしては、それぞれのランク関数である。そして言い換えれば、常に単純な上限証明が存在し、それは2つのマトロイド間で基底集合を分割し、その値(それぞれのランクの合計)が最大共通独立集合のサイズに等しくなるというものである。
この定理に基づき、2つのマトロイドの交差問題は、マトロイド分割アルゴリズムを用いることで多項式時間で解くことができる。
G = ( U , V ; E ) を二部グラフとする。基底集合E上に分割マトロイドM Uを定義することができる。このマトロイドでは、 U内のどの 2 つの端点も同じでない場合に、辺の集合は独立である。同様に、 V内のどの 2 つの端点も同じでない場合に、辺の集合は独立であるマトロイドM Vを定義することができる。M UとM Vの両方で独立である辺の集合は、どの 2 つの辺も端点を共有しないという性質を持つ。つまり、マッチングである。したがって、 M UとM Vの最大の共通独立集合は、Gにおける最大マッチングである。
同様に、各エッジに重みがある場合、 MUとM Vの最大重み独立集合はGにおける最大重みマッチングになります。
重み付きマトロイド交差には、実行時間が異なる多項式時間アルゴリズムがいくつか存在する。実行時間は、 - 共通基本セットの要素数、- 2 つのマトロイドのランク間の最大値、 -回路探索オラクルに必要な操作の数、および- 交差部分の要素数(特定のサイズの交差部分を見つけたい場合))
重み付きマトロイド交差の変種である「(P k )」では、 k の濃度を持つすべての集合の中から、可能な限り最大の重みを持つ共通の独立集合を見つけることが目標です(そのような集合が存在する場合)。この変種も多項式時間で解くことができます。[ 7 ]
マトロイド交差問題は、2つのマトロイドだけでなく、3つのマトロイドが関係する場合、NP困難となる。
この困難性の証明の一つは、有向グラフにおけるハミルトン経路問題からの還元を利用しています。n 個の頂点を持つ有向グラフGと、指定されたノードsおよびtが与えられたとき、ハミルトン経路問題は、 sから始まりtで終わる長さn − 1の単純経路が存在するかどうかを判定する問題です。一般性を失うことなく、 s には入力エッジがなく、tには出力エッジがないと仮定できます。すると、ハミルトン経路が存在するのは、グラフのエッジ集合上の 3 つのマトロイドの交差部分にn − 1 個の要素の集合が存在する場合のみです。これらの 3 つのマトロイドは、選択されたエッジ集合の入次数と出次数が両方とも最大で 1 であることを保証する 2 つの分割マトロイドと、Gのエッジの向きを忘れることによって形成される無向グラフのグラフィック マトロイドであり、選択されたエッジ集合にサイクルがないことを保証します。[ 11 ]
マトロイドに関する別の計算問題であるマトロイドパリティ問題は、Lawler [ 12 ]によってマトロイド交差と非二部グラフマッチングの一般的な一般化として定式化されました。しかし、線形マトロイドの場合は多項式時間で解くことができますが、他のマトロイドの場合はNP困難であり、マトロイドオラクルモデルでは指数時間が必要です。[ 13 ]
評価付きマトロイドとは、基底の集合上に値関数vを備えたマトロイドであり、次の交換特性を持つ。任意の 2 つの異なる基底に対して、そして、 もしならば、要素が存在する両方ともそしては基底であり 、:。
重み付き二部グラフG = ( X + Y , E ) と、基底集合B Xと評価値v Xを持つX上のマトロイドと、基底B Yと評価値v Yを持つY上のマトロイドの 2 つが与えられたとき、評価付き独立割り当て問題は、 G内のマッチングMを見つける問題であり 、M X ( MによってマッチングされるXの部分集合) はB Xの基底であり、M YはB Yの基底であり、この条件の下で、合計がを最大化します。重み付きマトロイド交差問題は、マトロイド評価が一定である特殊なケースなので、最大化することだけを求めます。制約条件は、M XはB Xの基底であり、M YはB Y の基底である。[ 14 ]室田はこの問題に対する多項式時間アルゴリズムを提示している。[ 15 ]