結婚マッチング問題の複雑さ?


8

人の男性と人の女性がいるとします。各人には属性がます。各人は、候補者が持つべき属性のセットを示します。マッチングはペアのセットです。各ペアは1人の男性を1人の女性にバインドします。マッチングの満足度は、最も不運な人が満足する属性の数です。 メートル

最大満足度のマッチングを効率的に解決できますか、それともハードですか?NP


満足している属性の平均数は、最も幸運でない人が満足している属性の数よりも満足度のより良い尺度ですか?
ドナル・

回答:


7

問題の決定版から始めましょう。「満足度レベル」kが与えられた場合、全員が少なくともk個の望ましい属性を持つ人物に一致する一致が存在しますか。これは、男性と女性がお互いに満足度kを得る場合、男性と女性を接続するグラフの2部マッチングを解決するだけです。(実行時間はO(mn ^ 2)のように見えます。)元の問題を取得するには、kに対してバイナリ検索を実行します(実行時間に追加のlog(m)係数がある場合)。


伊藤剛のトマー・ヴロメンの答えに対するコメントと同じ解決策のように思われますか?
Jukka Suomela、2009

あなたのアルゴリズムは、各人が望ましい属性のセットと望ましくない属性のセットを示す場合に一般化しますか?
Mohammad Al-Turkistany

7

私の答えがセルジュのものと矛盾するので、私は質問を誤解したかもしれません。私の理解では、線形ボトルネック割り当て問題について質問しています。これはO(n ^ 2.5)で解決されることが知られています。

最も完全な情報源は[1]ですが、私は本のスタイルが本当に好きではありません。ウェブサイトもあります:http : //www.assignmentproblems.com/linearBNAP.htm

編集:明確にするために、最大コストのエッジが最小化されるような割り当てが必要です。コストは、一致する男性または女性のいずれかに割り当てられていない属性の最大数になります。

EDIT2:私は引用した本からの参照のみを提供できます。それらの3つは次のとおりです。

  1. G. CarpanetoおよびP. Tothアルゴリズム。ボトルネック割り当て問題を解決します。コンピューティング、27:179-187m 1981
  2. U. Derigs。ボトルネック割り当ての問題を解決するための代替戦略-分析と計算結果。コンピューティング、33:95-106、1984
  3. U. DerigsおよびU. Zimmermann。線形ボトルネック割り当て問題を解決するための拡張パス法。コンピューティング、19:285-295、1978

利用可能なアルゴリズムのいくつかをリストしているので、あなたは本を手に入れようとするべきです。

[1] Rainer Burkard、Mauro Dell'Amico、Silvano Martelloによる割り当ての問題


これはうまくいくと思います。O(n ^ 2.5)時間アルゴリズムのリファレンスを提供できますか?
Serge Gaspers、2010

@Serge、私は参照を含めるように私の回答を編集しました
Tomer Vromen

2
ちなみに、より遅いアルゴリズムに満足している場合、バイナリ検索を使用して完全な問題を解決することで、「線形ボトルネック割り当て問題」(名前がわからなかった、なぜ「線形」なのか)を多項式時間で簡単に解決できます。各反復でのマッチング問題。
伊藤剛

3

以下のコメントでTsuyoshiが指摘しているように、問題の解決策が安定したマッチングでなければならない理由はありません。したがって、この回答のアプローチはおそらく機能しません。特に私はトメールの答えが正しいと信じているので。


あなたの結婚問題のバージョンは、ネクタイの最小後悔の安定した結婚問題と同等であるようです。そこでは、みんなが他のセックスのメンバーを可能な絆でランク付けし、目標は最小の「幸せ」を最大化することです。

N1εε>0N

[1]:デビッドマンラブ、ロバートW.アーヴィング、岩間和夫、宮崎修一、森田康史:安定した結婚のハードバリアント。理論。計算。サイエンス。276(1-2):261-279(2002)。ポストプリント


1
S|S|

1
質問を完全に理解していませんが、質問の解決策が安定したマッチングでなければならない理由がわかりません。
伊藤剛

0

これは最小コストの最大2部マッチングのバリエーションではありませんか?各エッジの重みは、満足する属性の数に等しく、重みの合計が最小になる最大の一致を見つける代わりに、最小のエッジの重みが最大化されているものが必要です。

この理解が正しければ、Busacker–Gowen [ 1 ]と同様の拡張パスアルゴリズムが機能すると思います。(重みの合計に関して)常に最も安価な拡張パスを見つける代わりに、(最小エッジを最大化する)最良の拡張パスを見つけます。これも、標準の最短パスアルゴリズム(EdmondsとKarpの重み調整を使用するBusacker–Gowenのバージョンで使用されるダイクストラのアルゴリズムなど)にわずかな変更を加えるだけで実行できるはずです。

Ov|E|lg|V|Ov2lg

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.