[英]Maximum weight matching in bipartite graphs with constraints
假設我們有兩個集合:A =(a_1,a_2,...,a_m)和B =(b_1,b_2,...,a_n)(不一定大小相同)。 函數F為從集合A到集合B的每個鏈接分配權重:F:A * B-> R。 因此,例如,F(a_1,b_1)= 2意味着a_1和b_1之間的鏈接的權重為2。問題是將集合A的元素連接到集合B的元素,以最大程度地增加集合A的元素。滿足以下約束的鏈接權重:
我已經搜索了一些想法,並研究了賦值問題和匈牙利算法。 另一件事是這些都不考慮我的第二個約束。 您對如何解決這個問題有任何想法嗎?
謝謝
這是NP難題。
取一個子集和實例{x 1 ,x 2 ,...,x n },其中x i > 0和一個數字k。 創建一個二部圖,其中左頂點為{a 1 ,...,a n },右頂點為{b 1 ,b 2 },並且:
F(a i ,b 1 )= x i
F(a i ,b 2 )= 0
C 1 = k
C 2 = 0
因此,您可以通過將i與b 1連接來獲取x i的值,而通過與b 2連接來保留數字x i 。 顯然,如果子集和實例具有解,則權重k匹配。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.