

グラフ理論の数学分野において、二部グラフ(または二部グラフ)とは、頂点を互いに素で独立した2つの集合に分割できるグラフのことである。そしてつまり、すべての辺は頂点を繋いでいる。1つに頂点集合そしてこれらは通常、グラフのパーツと呼ばれます。言い換えれば、二部グラフとは奇数長のサイクルを含まないグラフのことです。[ 1 ] [ 2 ]
2セットそしては、グラフを 2 色で彩色したものと考えることができます。すべてのノードを彩色する場合、青色、そしてすべてのノードグラフ彩色問題で要求されるように、各辺の端点は赤色で、各辺の端点は異なる色になります。[ 3 ] [ 4 ]対照的に、三角形のような非二部グラフの場合、このような彩色は不可能です。1 つのノードが青色に、別のノードが赤色に彩色された後、三角形の 3 番目の頂点は両方の色の頂点に接続されているため、どちらの色も割り当てることができません。
よく書く分割された部分が以下の部分を持つ二部グラフを表すそして、 とグラフのエッジを表します。二部グラフが連結でない場合、二部グラフは複数の二部分割を持つ可能性があります。[ 5 ]この場合、表記法は、アプリケーションで重要となる可能性のある特定の二分割を指定するのに役立ちます。つまり、2つの部分集合の濃度が等しい場合、はバランスのとれた二部グラフと呼ばれます。[ 3 ]二部グラフの同じ側のすべての頂点が同じ次数を持つ場合、双正則と呼ばれる。
2つの異なるクラスのオブジェクト間の関係をモデル化する場合、二部グラフは自然に発生することが非常に多い。たとえば、サッカー選手とクラブのグラフでは、選手がそのクラブでプレーしたことがある場合に選手とクラブの間にエッジが存在するが、これはソーシャルネットワーク分析で使用される二部グラフの一種である所属ネットワークの自然な例である。[ 6 ]
二部グラフが自然に現れるもう 1 つの例は、( NP 完全) 鉄道最適化問題です。この問題では、入力は列車の時刻表と停車駅であり、目標は、すべての列車が選択された駅の少なくとも 1 つを訪れるような、できるだけ小さい駅のセットを見つけることです。この問題は、各列車と各駅に頂点があり、駅とそこに停車する列車のペアごとにエッジがある二部グラフの支配集合問題としてモデル化できます。[ 7 ]
より抽象的な例としては、以下のようなものがあります。
二部グラフは、いくつかの異なる方法で特徴づけることができます。
二部グラフでは、最小頂点被覆のサイズは最大マッチングのサイズに等しくなります。これはケーニッヒの定理です。[ 17 ] [ 18 ]この定理の別の同等の形式は、最大独立集合のサイズと最大マッチングのサイズの合計が頂点の数に等しいということです。孤立頂点のない任意のグラフでは、最小辺被覆のサイズと最大マッチングのサイズの合計が頂点の数に等しくなります。[ 19 ]この等式をケーニッヒの定理と組み合わせると、二部グラフでは、最小辺被覆のサイズが最大独立集合のサイズに等しく、最小辺被覆のサイズと最小頂点被覆のサイズの合計が頂点の数に等しいという事実が得られます。
関連する結果のもう 1 つのクラスは完全グラフに関するものです。すべての二部グラフ、すべての二部グラフの補グラフ、すべての二部グラフの線グラフ、およびすべての二部グラフの線グラフの補グラフはすべて完全です。二部グラフの完全性は容易にわかります (彩色数は 2 であり、最大クリークサイズも 2 です) が、二部グラフの補グラフの完全性はそれほど自明ではなく、ケーニッヒの定理の別の言い換えです。これは、完全グラフの最初の定義を促した結果の 1 つです。[ 20 ]完全グラフの線グラフの補グラフの完全性は、ケーニッヒの定理のさらに別の言い換えであり、線グラフ自体の完全性は、すべての二部グラフは最大次数に等しい数の色を使用してエッジ彩色を行うという、ケーニッヒの以前の定理の言い換えです。
強完全グラフ定理によれば、完全グラフは二部グラフに似た禁止グラフ特性を持ちます。グラフが二部グラフであるのは、その部分グラフに奇数サイクルが存在しない場合に限ります。また、グラフが完全グラフであるのは、その部分グラフに奇数サイクルまたはその補グラフが誘導部分グラフとして存在しない場合に限ります。二部グラフ、二部グラフの線グラフ、およびそれらの補グラフは、強完全グラフ定理の証明で使用される完全グラフの 5 つの基本クラスのうち 4 つを構成します。[ 21 ]したがって、二部グラフの任意の部分グラフは奇数サイクルを獲得できないため、二部グラフでもあります。[ 22 ]
頂点について、隣接する頂点の数をその頂点の次数と呼び、次のように表されます。二部グラフの次数和公式は[ 23 ]と述べている。
二部グラフの次数列は、2つの部分の次数をそれぞれ含むリストのペアである。そして例えば、完全二部グラフK 3,5 の次数列は同型な二部グラフは同じ次数列を持ちます。しかし、一般に次数列は二部グラフを一意に識別するものではありません。場合によっては、同型でない二部グラフでも同じ次数列を持つことがあります。
二部グラフ実現問題とは、次数列が与えられた2つの自然数のリストであるような単純な二部グラフを見つける問題である。(末尾のゼロは、有向グラフに適切な数の孤立頂点を追加することで容易に実現できるため、無視してもよい。)
二部グラフの隣接行列サイズが(0,1) の行列です隣接する頂点のペアごとに 1、隣接しない頂点には 0 が割り当てられます。[ 24 ]二部グラフ、ハイパーグラフ、および有向グラフ間の等価性を記述するために、二部隣接行列が使用される場合があります。
ハイパーグラフは、無向グラフと同様に頂点と辺を持つ組み合わせ構造ですが、辺は必ずしも2つの端点を持つ必要はなく、任意の頂点の集合であることができます。二部グラフUはハイパーグラフの頂点の集合、Vはハイパーエッジの集合であり、Eはハイパーグラフの頂点vからハイパーグラフのエッジeへのエッジを、 v がeの端点のいずれかである場合に限り含むハイパーグラフをモデル化するために使用できます。この対応関係の下では、二部グラフの双方向隣接行列は、対応するハイパーグラフの隣接行列と完全に一致します。二部グラフとハイパーグラフの間のこの対応関係の特殊なケースとして、任意の多重グラフ(同じ 2 つの頂点間に 2 つ以上のエッジが存在する可能性があるグラフ) は、いくつかのハイパーエッジが等しい端点の集合を持ち、多重隣接がなく、二分割の一方の側の頂点がすべて次数2 である二部グラフによって表現されるハイパーグラフとして解釈できます。[ 25 ]
隣接行列の同様の再解釈を用いることで、有向グラフ(ラベル付き頂点の数が与えられ、自己ループを許容する)と、二部グラフの両側に同じ数の頂点を持つバランスのとれた二部グラフとの間に一対一の対応関係があることを示すことができる。なぜなら、 n個の頂点を持つ有向グラフの隣接行列は、任意の(0,1)行列でサイズはこれは、二部グラフの両側にn個の頂点を持つ二部グラフの隣接行列として再解釈できます。 [ 26 ]この構成では、二部グラフは有向グラフの二部二重被覆です。
深さ優先探索(DFS)を使用すれば、グラフが二部グラフであるかどうかを判定し、二部グラフであれば 2 色彩、そうでなければ奇数サイクルを線形時間で返すことが可能です。主なアイデアは、深さ優先探索フォレストを先行順で走査し、各頂点に DFS フォレスト内の親の色とは異なる色を割り当てることです。これにより、頂点を親に接続するエッジで構成される全域フォレストの 2 色彩が必ず得られますが、フォレスト以外のエッジの一部は適切に色付けされない可能性があります。DFS フォレストでは、フォレスト以外のエッジの 2 つの端点のうちの 1 つがもう一方の端点の祖先であり、深さ優先探索がこのようなエッジを発見した場合は、これら 2 つの頂点が異なる色を持っていることを確認する必要があります。そうでない場合、祖先から子孫への森の中のパスと、色付けが間違っているエッジが奇数サイクルを形成し、アルゴリズムはグラフが二部グラフではないという結果とともにそれを返します。ただし、アルゴリズムがこの種の奇数サイクルを検出せずに終了した場合、すべてのエッジが正しく着色されている必要があり、アルゴリズムはグラフが二部グラフであるという結果とともに着色を返します。[ 27 ]
あるいは、DFS の代わりに幅優先探索を使用して同様の手順を実行することもできます。ここでも、各ノードは、幅優先の順序で、探索フォレスト内の親ノードとは反対の色を与えられます。頂点が着色されたときに、以前に同じ色で着色された頂点に接続するエッジが存在する場合、このエッジと、幅優先探索フォレスト内でその 2 つの端点をそれらの最小共通祖先に接続するパスは、奇数サイクルを形成します。この方法で奇数サイクルが見つからずにアルゴリズムが終了した場合、適切な着色が見つかったはずであり、グラフが二部グラフであると安全に結論付けることができます。[ 28 ]
交差グラフの場合ユークリッド平面上の線分やその他の単純な図形の場合、グラフが二部グラフであるかどうかをテストし、2色塗りまたは奇数サイクルを返すことができます。ビッグオー記法を使用すると、グラフ自体は最大でエッジ。[ 29 ]

奇数サイクル横断は、グラフG = ( V , E ) と数kが与えられたとき、 Gから削除すると結果として得られるグラフが二部グラフになるk 個の頂点の集合が存在するかどうかを問うNP 完全なアルゴリズム問題です。 [ 30 ]この問題は固定パラメータ扱い可能であり、つまり、実行時間がグラフのサイズの多項式関数にkのより大きな関数を掛けたもので制限できるアルゴリズムが存在します。[ 31 ]奇数サイクル横断という名前は、グラフが奇数サイクルを持たない場合に限り二部グラフであるという事実から来ています。したがって、二部グラフを得るためにグラフから頂点を削除するには、「すべての奇数サイクルをヒットする」か、いわゆる奇数サイクル横断セットを見つける必要があります。図では、グラフ内のすべての奇数サイクルに青色 (最下) の頂点が含まれているため、これらの頂点を削除するとすべての奇数サイクルが消滅し、二部グラフが残ります。
エッジ二部分割問題は、グラフを二部グラフにするためにできるだけ少ないエッジを削除するアルゴリズム問題であり、グラフ修正アルゴリズムにおける重要な問題でもあります。この問題は固定パラメータ扱い可能であり、時間で解くことができます。[ 32 ]ここでkは削除するエッジの数、mは入力グラフのエッジの数である。
グラフにおけるマッチングは、そのエッジのサブセットであり、どの 2 つのエッジも端点を共有しません。マッチングに関する多くのアルゴリズム問題、例えば最大マッチング(可能な限り多くのエッジを使用するマッチングを見つける)、最大重みマッチング、安定結婚などに対して、多項式時間アルゴリズムが知られています。[ 33 ]多くの場合、マッチング問題は非二部グラフよりも二部グラフの方が簡単に解決できます。[ 34 ]また、最大カーディナリティマッチングのためのHopcroft–Karp アルゴリズム[ 35 ]など、多くのマッチングアルゴリズムは二部グラフの入力に対してのみ正しく動作します。
簡単な例として、集合が多くの人々が、あるセットの中から仕事を探しているすべての人がすべての仕事に適しているわけではないが、仕事には様々な種類がある。この状況は二部グラフとしてモデル化できる。エッジが各求職者と各適切な仕事を結び付けている。[ 36 ]完全マッチングは、すべての求職者を同時に満足させ、すべての仕事を埋める方法を表す。ホールの結婚定理は、完全マッチングを可能にする二部グラフの特徴付けを提供する。全米レジデントマッチングプログラムは、米国の医学生の求職者と病院のレジデンシーの仕事に関するこの問題を解決するためにグラフマッチング手法を適用している。[ 37 ]
ダルマージ・メンデルソン分解は、最大マッチングを見つけるのに役立つ二部グラフの構造的分解である。[ 38 ]
二部グラフは、特にチャネルから受信した符号語を復号するために、現代の符号理論で広く使用されています。ファクターグラフとタナーグラフはその一例です。タナーグラフは二部グラフであり、二部グラフの一方の側の頂点は符号語の桁を表し、もう一方の側の頂点は、エラーのない符号語で合計がゼロになると予想される桁の組み合わせを表します。[ 39 ]ファクターグラフは、LDPC 符号とターボ符号の確率的復号に使用される、密接に関連する信念ネットワークです。[ 40 ]
コンピュータサイエンスにおいて、ペトリネットは並行システムの解析およびシミュレーションに使用される数学的モデリングツールです。システムは、リソースを含む「プレイス」ノードのセットと、リソースを生成および/または消費する「イベント」ノードのセットという2つのノードセットを持つ二部有向グラフとしてモデル化されます。ノードとエッジには、システムの動作を制約する追加の制約があります。ペトリネットは、二部有向グラフの特性およびその他の特性を利用して、システムの動作の数学的証明を可能にすると同時に、システムのシミュレーションの容易な実装も可能にします。[ 41 ]
射影幾何学において、レヴィグラフは、構成内の点と線の間の関係をモデル化するために使用される二部グラフの一種です。任意の2つの線は最大で1点で交わり、任意の2つの点は1本の線で結ばれるという点と線の幾何学的性質に対応して、レヴィグラフは必然的に長さ4のサイクルを含まないため、その周長は6以上でなければなりません。[ 42 ]