3
我在尋找一種算法來解決以下問題:搜索分佈式算法來分配一些對象
有n
軟件組件,其能夠通過多播通信。此外還有一個帶有m
對象的游泳池。每個sw組件都知道該池包含的內容。 對象具有不同的值。取決於我想要將對象分配給sw組件的值。這意味着:必須優先考慮具有較大值的對象,忽略具有較低值的對象(例如,當所有sw組件不能取更多對象時)。
這是非常重要的,沒有對象分佈不止一次。當一個對象被分配給一個SW組件時,它不能被分配給另一個SW組件。
此外,我想實現整個事情作爲分佈式算法,這意味着沒有一箇中央單位執行該分配。
任何想法?
爲什麼不讓每個軟件組件檢查池並獲取最高價值的對象? – mbeckish 2012-07-07 14:44:26
是的,但問題是要確保沒有對象分佈多次。 – stormsam 2012-07-08 10:52:51
這完全取決於你的游泳池的性質。例如,網絡中是否有一個負責池的系統,其他軟件組件是否要求它提供一個對象?或者,池是否只是由每個軟件組件維護的列表,並且它們都必須相互通信以使其版本池保持同步? – mbeckish 2012-07-09 02:18:25