假设有两个这样的图:
我们的目标是找到两个图之间的匹配对应关系。现在我们使用一种方法来计算两个图之间两个节点的相似性。 w(A,1)表示节点A与右图之间的左图之间的相似性。然后我们可以有这样的表:
我们的目标是计算所有这些节点的最大权重匹配。我们可以使用Kuhn-Munkras算法来解决这个问题。
但现在的问题是,如果我们在两个图中添加边之间的相似性,我们如何计算最大权重匹配。这意味着表格变为:
AA表示节点A,AB表示从A到B的边缘。约束是如果最终结果是节点A与节点1匹配,则边缘AB必须匹配12或13.因此我们可以使用算法像Kuhn-Munkras解决这个问题?如果没有,我们怎样才能找到多项式时间内的最大权重匹配?
答案 0 :(得分:1)
假设我们想知道两个图是否是同构的,例如你的例子中的两个。
在第一个图中,我们有边AC和CB,而在第二个图中我们有边13和32。
我们可以设置权重矩阵,以便将第一个边缘映射到第二个边缘时获得高回报。
即。 AC-> 13和AC-> 32以及CB-> 13和CB-> 32都将具有权重1,而所有其他匹配具有权重零。
当且仅当最大权重与权重等于边数相匹配时,图之间存在同构。
因此,您的问题至少与图同构一样困难,因此Kuhn算法不太可能有效地扩展到这种情况。