想象一下,你有一羣人都想從這羣人中找到合作伙伴。每個人都可以向整個團體或任何特定人員發佈公告。目標是在可能的情況下它們都會成對出現。使用消息配對人的算法
新人可以進入組而配對過程正在進行。一旦兩個人儘可能優化配對,他們就會退出組隊。
每個人對每個其他人都有一個「分數」。人們應儘可能與更高分的合作伙伴配對。然而,更重要的是人們找到配對,而不是那些配對是嚴格最優的。因此,例如,讓兩個人「臨時配對」,然後等一會兒,看看是否有更好的伴侶出現,這是合理的。如果沒有,那麼將這兩者妥善配對,然後退出組。
沒有中央控制實體:所有的工作必須通過在人們之間傳遞消息(或廣播給整個組)來完成。
這樣做的最佳算法是什麼?
很顯然,我試圖避免的問題是,A隨機選擇B,並說「嘿,做我的搭檔」,同時B對C說「嘿,做我的搭檔」。此外,A不能只是宣佈「有人成爲我的伴侶!」因爲A會收到每個人的回覆,如果B還宣佈「有人成爲我的合作伙伴」,B是否應答A的聲明? (a)這是關於找到一個「穩定」(嚴格最優)解決方案,這對我的問題是有用的,但不是必需的;(b)它假設組是固定的規模並沒有改變,而我的問題允許在「配對選舉」正在進行的同時加入新的參與者。
有趣的問題!你能否照亮你的預期用途,然後提出想法更容易。例如,該系統應該是激勵兼容的嗎?這對於這個特殊情況來說似乎很棘手。 –
我不認爲我知道「激勵兼容」是什麼意思? – sil
在博弈論中,如果你讓代理人(在這種情況下是人們)決定某件事情,你想阻止他們「作弊」。在這種情況下,如果所有人都永遠等待,在完美的比賽出現之前就害怕結合,那將是一種欺騙。你想要防止這樣的戰略? –