簡體   English   中英

如何將連通加權圖划分為 N 個半等子圖

[英]How to divide a connected weighted graph to N semi-equal subgraphs

我有一個主要相互連接的數百個節點的圖表。 我可以對整個圖進行處理,但確實需要很多時間,因此我想將其划分為大小大致相似的較小子圖。

換句話說。 我有一組航拍圖像,並對所有圖像進行成對圖像匹配。 結果,我得到了每對的一組匹配(來自第一幅圖像的像素與第二幅圖像上的像素匹配)。 匹配數被視為此(無向)邊的權重。 這些邊然后形成上面提到的圖。

我對圖論不太熟悉(因為它是一個非常廣泛的話題)。 這項工作的最佳算法是什么?

謝謝你。

編輯:這個問題有一個完美的類比,我認為它更容易理解。 想象一下,你有一群人和他們的關系/友誼,比如我的社交網絡。 每個友誼都有一個數值/權重,代表他們是多么好的朋友。 所以在一大群人中,我想得到k最相互關聯的子組。

不幸的是,您所描述的問題幾乎肯定是 NP 難的。 從圖形的角度來看,您有一個圖形,其中每條邊都有一個權重。 您正在嘗試將圖形拆分為相對相等的部分,同時削減邊切割的最低總成本。 這個問題被稱為最大 k-cut 問題,是 NP-hard 問題。 如果您引入約束,即您還想嘗試使碎片的大小大致均勻,則會遇到平衡 k-cut 問題,這也是 NP-hard 問題。

好消息是這些問題有很好的近似算法,所以如果你正在尋找“足夠好”的解決方案,那么你可能會在某處找到一個實現它們的庫。 還有其他技術,如頻譜聚類,它們在實踐中運行良好,速度非常快,但不能保證它們的效果。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM