【问题标题】:creating regular subgraph through edge deletion通过边删除创建规则子图
【发布时间】:2014-07-15 07:18:36
【问题描述】:

问题: 给定一个 Q 正则无向图,我正在寻找一种算法来通过边缘删除来识别一个 N 正则无向子图。 N

我尝试过的: 到目前为止,我最好的方法是找到一个哈密顿循环,并删除循环上的所有其他边。这很好地创建了一个 (Q-1)-regular 子图,并且原则上可以重复直到达到所需的规律性程度,或者我无意中创建了一个没有哈密顿循环的图。然而,这种方法很慢(这是我的主要问题),而且它依赖于哈密顿循环的其他完全不必要的限制,这有点问题。

我的问题: 任何人都可以提出哈密顿循环方法的替代方案,或者可能只是告诉我这个问题本质上是困难的,并且比哈密顿循环检测更快的解决方案是不可能的?我意识到我在这里与一些图论概念调情,但我担心我没有专业知识来更正式地构建它。

感谢您的宝贵时间:)

编辑: 我忘了说原始网络中的顶点数(= L)是偶数。我做了这个限制以确保可以创建一个规则图,因为如果 L 和 Q 都是奇数,这是不可能的,并且我希望对 Q 的限制尽可能少。 其次,我确实希望保留所有顶点(因此我只提到了边缘删除)。

【问题讨论】:

  • 通过哈密顿循环的方法不一定是一个好的方法,因为 a) 可能没有跨越所有原始顶点的 Q-1 正则子图,而可能存在其他 Q-1 - 正则子图和 b) 即使对于 Q 正则图 with Q ≥ 3,找到哈密顿循环也是 NP-hard。
  • 另外,哈密顿循环方法要求顶点数是偶数。
  • 您能否澄清一下您是否希望子图包含所有原始顶点?我现在才意识到你可能是那个意思。
  • 您反复尝试找到一个 1 因子并将其删除。这通常不起作用;参见,例如,math.stackexchange.com/questions/520203/…。如果您可以通过某种方式找到一个并希望将其随机化,那么我在上一个问题中建议的马尔可夫链方法仍然适用(尽管我不知道收敛速度会是什么样子)。
  • @G.Bach:我知道哈密顿循环方法可能不是最理想的,这就是我来这里的原因:) 我对图论不是很有经验,所以我不能想出更好的东西。但是感谢您的 cmets :)

标签: algorithm graph subgraph


【解决方案1】:

我突然想到,Peter de Rivaz 的答案的一个变体是从原始图中找到 N 个连续的完整匹配,然后将网络构建为这 N 个匹配的连接。如果 N

【讨论】:

    【解决方案2】:

    this article 中,作者提供了一种将特殊的Q-regular 图转换为Q-1 - regular 中的O(n^3) 的方法,这意味着对于某些特殊情况,您的问题可以在O(n^4) 中解决。你可能想看看这篇文章,看看它对你有没有帮助。

    【讨论】:

    • 请注意,论文摘要说该算法仅适用于特定的 Q-正则图族,并且在不属于该族的图中,还有另一族 Q-正则图不存在 Q-1 正则子图。
    • 谢谢,你说得对,我误解了摘要。我已经更新了答案。
    【解决方案3】:

    另一种方法是构建最大匹配(例如使用Edmond's Blossom algorithm)。

    这构造了一组边,使得每个顶点最多连接到一个边。

    这可能比寻找哈密顿路径更有效,并且更有可能奏效(例如,对于断开连接的图)。

    当且仅当每个顶点都连接到匹配中的一条边时,删除最大匹配中的边将导致 Q-1 正则图。 (一个顶点不可能连接到多条边,但某些顶点可能连接到0条边。但是,我相信只有在不可能有​​Q-1规则时才会发生这种情况子图。)

    要使其随机化,您可以考虑使用weighted matching algorithm 并使用随机权重。

    【讨论】:

    • 我不确定 Kaare 是否想要一种仅适用于婚姻图(即满足霍尔条件的图)的算法。您当然可以遍历所有诱导子图并检查其中哪些是婚姻图,但显然这将花费指数时间。
    • Agrred,尽管它应该适用于他当前方法适用的所有情况,以及一些其他情况(并且更快,这是他的主要关注点)。我相信只有在实际上根本不可能从原始图制作任何 Q-1 正则图时它才会失败。
    • 它会比他提到的哈密顿循环方法更快,并且它会提供更多的案例,真的。我刚刚意识到 Kaare 没有明确指定子图是否应该包含所有原始顶点,所以这种方法实际上是正确的,以防他想要保留所有顶点。
    • @G.Bach 好点 - 我没有考虑到他可能想要一个省略一些顶点的子图,我想我们将不得不等待 Kaare 的澄清。
    猜你喜欢
    • 2015-07-07
    • 1970-01-01
    • 1970-01-01
    • 2015-05-17
    • 2015-08-12
    • 1970-01-01
    • 2017-05-31
    • 1970-01-01
    相关资源
    最近更新 更多