handbook of CP 10.6/7/8/9 翻译

10.6 Combinations of Symmetry Breaking Methods

我们已经描述了各种对称破缺方法,每种方法都有优点和缺点。 将两种或更多种方法结合起来以获得所有优点显然是个好主意。 不幸的是,正确组合对称破坏方法已被证明是非常困难的。 对称破坏方法试图从每个等价类中保留一个解决方案。 如何选择这种解决方案取决于对称性破坏的方法。 任意组合任意两种方法可能意味着每种对称性破坏方法排除了不同的解决方案,因此丢失了解决方案

有一段时间,许多人认为,如果使用相同的变量和值排序,那么同时应用几种对称破坏方法是有效的,因为这些方法都没有删除正则解(canonical solutions)。因此,任何组合都将保持规范的解决方案。例如,可以声明Lex2约束,同时对矩阵模型使用SBDD。然而,Smith[112]已经证明事实并非如此。Harvey[60]稍后记录了这个结果的一个示例,然后展示了如何修改SBDS和SBDD,以便它们能够正确地结合字典顺序约束。不幸的是,这种组合的实证结果令人失望。另一个已经得到一些研究的领域是将打破变量对称性的方法与打破值对称性的方法相结合。由于这两种方法作用于不同的对称群,这种组合本质上是安全的。Puget[101]展示了当所有变量都有一个 all-different 的约束时,如何通过简单的排序约束打破所有变量的对称性。他成功地将这种方法与GE树相结合,打破了值的对称性。另一种包括GEtrees的组合已经尝试过了[69]。该方法成功地结合了GE树和GAP-SBDD两种方法来打破变量的对称性。这种方法在打破所有对称性方面是完全可靠的,但在所有尝试的问题上,它的效率低于单独使用GAP-SBDD。

在10.5.7节中,注意到STAB是关于对称性破坏的不完整方法,这意味着它不仅仅返回非同构解。 为了克服这个缺点,Puget将SBDD与STAB结合起来。 这种组合方法产生了良好的结果,优于单独的SBDD。

Petrie[90]完成了对称破坏方法的另一个成功组合。Petrie证明了GAP-SBDS和GAP-SBDD都不是普遍更好的,所以将这两种方法结合起来。这是通过让一个操作位于搜索树的顶部,而不是在较低的级别切换到另一个方法来实现的。对该方法的实证分析表明,该方法有时优于单独使用这两种方法中的任何一种。然而,也许更重要的是,它被证明是一种更健壮的方法,因为组合方法的效率从未低于两个贡献系统中效率最低的系统。

10.7 Successful Applications

前面部分中概述的许多对称性破坏方法已成功应用于各种问题。 我们已经提到了两个成功的应用程序:本章开头的国际象棋谜题和优美的图形(graceful graphs)。 在这两种情况下,使用约束规划中的对称性破坏获得了新的结果。 我们简要概述了一些更多的应用程序,并指出哪些对称破坏方法已成功应用于它们。 CSPLib(www.csplib.org)是约束问题的在线目录:每当此资源中包含问题时,本文中给出了问题的数量,以帮助感兴趣的人找到详细的问题规范。 所提供的参考文献是讨论应用程序内对称性破坏的论文。

Balanced Incomplete Block Design (BIBD)平衡不完全块设计(BIBD)生成是设计理论中的标准组合问题,最初用于统计实验的设计,但自从发现其他应用如密码学以来。 这是Block Design的一个特例,它还包括拉丁方问题。 BIBD是CSPLib中的问题28,Lam的问题,CSPLib中的问题25是查找特定BIBD实例的问题。 BIBD可以通过使用矩阵轻松建模,因此许多对矩阵设置对称性破坏约束的方法已应用于它们 [44]。 这个问题也被用作STAB [98]和GAP-SBDD [53]的试验台。

Steel Mill Slab Design 钢坯设计是对一个实际工业问题的简化,即对一个工厂的钢坯生产进行计划。这是CSPLib中的第38题。Gent等人在这个问题[54]中考虑了条件对称性破缺。

Maximum Density Still Life 最大密度静物问题源于20世纪60年代John Horton Conway发明的生命游戏,并由马丁加德纳在他的科学美国专栏中推广。 稳定的模式或静物不会被导致生命游戏迭代的规则所改变。 问题是要找到最密集的静物模式,即具有最大活细胞数的模式,可以安装到电路板的n×n部分,其余所有电路板都死了。 最大密度静止是CSPLib中的问题38。 史密斯[114]以及博世和特里克[12]都考虑过静物画中的造型和对称性。 Petrie等人研究了CP-LP混合动力学中的动态对称破缺,然后将这个想法应用于这个问题[90]。

Social Golfers Problem 社交高尔夫球手问题是当地高尔夫俱乐部的协调员有以下问题的地方。 在她的俱乐部里,有32名社交高尔夫球手,每人每周打一次高尔夫球,并且总是以4人为一组。她希望你能为这些高尔夫球手制定一个比赛时间表,尽可能持续数周, 这使得没有高尔夫球手在不止一次的情况下与任何其他高尔夫球手在同一组中比赛。 该问题可以容易地推广到在p周内安排m组n个高尔夫球手的问题,使得没有高尔夫球手与任何其他高尔夫球手两次在同一组中比赛(即,实现最大社交)。 社交高尔夫球手是CSPLib中的第10个问题。 撰写本文时,Harvey和Winterer为这个问题提供了最有效的算法,其中包括对称性破解[62]。

Peaceable Coexisting Armies of Queens 皇家和平共存军队由罗伯特博世于1999年在Optima的专栏中引入[13]。 它是一类问题的变体,需要将棋子放在棋盘上,对它们攻击的方格数有要求:Martin Gardner [47]讨论了这个类的更多例子。在“皇后军队”问题中,我们需要在棋盘上放置两个相同大小的黑白女王,以便白色女王不攻击黑人女王(并且必然是v.v.)并找到两个这样的军队的最大尺寸。博世要求对问题进行整数规划,并为标准8×8棋盘提供多少最佳解决方案。 但是,这个问题显然可以推广到n×n棋盘。 史密斯等人认为,这个问题与动态对称性破坏相关的各种模型,本章开头的谜题是本研究的衍生物[115]。

Fixed Length Error Correcting Codes 固定长度误差校正码定义如下:字母F上长度为n的固定长度误差校正码C是来自Fn的一组串。 给定来自Fn的两个字符串,我们可以定义它们之间的距离。 最常用的距离是汉明距离,定义为字符串不同的位置数。 使用这个,我们将C的最小距离定义为C的不同字符串对之间的距离的最小值。固定长度误差校正码是CSPLib中的问题36。 结合Frisch等人的对称性破坏约束来研究该问题[42]。

Peg Solitare Peg Solitare(也称为Hi-Q)是在一个有很多洞的板上玩的。在英文版本的游戏中,棋盘是一个有33个洞的十字形。所述板上设置有销钉,以便至少留有一个孔。单人纸牌游戏会产生许多不同的问题,例如从初始状态到目标状态的路径,或者从最短的移动次数到不可能再移动的状态。在CSPLib中,Peg是37题。Jefferson等人研究了如何使用各种人工智能范式来解决这个问题,包括关于打破[42]对称的讨论。

Alien Tiles Alien Tiles可通过互联网在www.alientiles.com上播放。 Alien Tiles是CSPLib中的问题27。 根特,史密斯和林顿研究了如何将动态对称性破解成功地应用于寻找最难实例的问题[49]。

我们可以看到对称方法足够灵活,可以应用于各种各样的问题,而且我们还没有提到迄今为止所有成功的应用。最成功的似乎是组合谜题,如优美的图表。因此,对称性破缺在工业规模问题上具有重要的应用价值还有待于社会各界的证实。

10.8 Symmetry Expression and Detection

大多数关于对称约束的研究都假设,一个问题的对称性可以由程序员以某种形式提供。例如,SBDS依赖于程序员提供函数列表来实现对称操作;SBDD需要写一个优势检查;而lex-leader和GAP-SBDS等方法需要提供一个组。即使对于不需要这样的方法,例如在矩阵模型中使用双lex约束,程序员也必须认识到矩阵对称性发生,并且双lex约束是用它来破解它们的适当技术。 近年来,越来越多的工作基于这样一个前提,即这是一个站不住脚的立场。已经考虑了两种克服这一缺陷的方法。首先,程序员可以更容易地写出对称。其次,可以自动检测对称,这样程序员就完全不用工作了。McDonald[48]和Harvey等[63]对第一种方法进行了独立研究,目的是创建一个系统,该系统使用计算群理论生成方法所需的组,而用户无需确切了解组是如何生成的。这些系统有三个主要目标。第一种方法是不需要将变量/值对映射到点的函数(这个概念在10.1.1节中概述)。第二种是用一种简单而有力的方式来表达对称。三是建立一个用户不具备群体理论先验知识的系统。通过提供一组函数来实现这些目标,这些函数将变量和值(例如,矩阵的所有行都可以互换)的对称性表达式映射到组生成器。到目前为止,这些技术仅限于最常见的对称类型,并且不允许用户表示任意组。

通过确定与约束问题相关联的图的自同构群,可以自动识别一些CSP的对称组。 Puget [100]表明,这可以结合微观结构图来完成,微观结构图与约束的存在表示密切相关。 这种方法的关注点在于它可能无法很好地扩展(在大多数情况下,它处于图同构的复杂性类别中)。 当问题很大时,图也是如此,并且无法在合理的时间内计算自同构。 由于非二元约束,小问题也可能有大图,这也意味着无法在合理的时间内计算自同构。为了解决这个潜在的问题,Puget还引入了一种方法,他考虑了与每个约束的内涵表示相关的图。普吉特发现,使用这两种方法都可以非常有效地检测出各种问题的对称性。Ramani和Markov最近也通过一种与Puget方法密切相关的方法取得了一些成功。该方法对与约束的内涵表示相关联的解析器树进行图同构。虽然该方法不能保证完全,但由于不能保证找到完全对称群,在实践中取得了一些成功的结果。值得一提的是,在SAT社区中,使用自动对称性检测已经取得了优异的结果,即使是对较大的问题[1]。这尤其令人鼓舞,因为自然结构(例如约束问题的微观结构)对应于编码到SAT中。 为了知道这种有吸引力的简单方法何时在CP方面是可行的,需要进行经验分析。

如Frisch等[45]所指出的,在建模过程中还增加了许多对称性。 如果我们能够理解何时添加这种对称性,那么应该很容易将这些对称性传递给对称破缺方法。

10.9 Further Research Themes

我们现在讨论使用对称性的各种研究,这种研究只是在本章的其他地方不容易进行统一归纳。 我们不认为本节中的工作不如本章其余部分那么重要。 实际上,使这项研究难以分类的相同原因使其中一些特别具有创新性,因此它具有未来探索的巨大潜力。

Symmetry and inference对称性和推理: 几乎所有关于约束对称的研究都集中在打破对称以减少搜索。当搜索问题中存在对称性时,它的存在就是我们可以用其他方式利用的信息。一个特殊的例子是增强约束问题的表示和推理。首先,我们可以大大压缩表示的大小,从而增强表示的能力。其次,我们可以利用群体结构的知识来改变我们的推理和传播算法。如果我们使用基于组的压缩表示,这是必要的,但也提供了优势。如果我们执行一些工作来推断一个值可以被删除,我们不需要再执行任何工作来删除它的所有对称等价物。类似地,如果我们知道一个给定的值不能被删除,那么我们就不需要再做传播对称等价物的工作。该思想的一个简单例子是利用弧一致性约束的双向性来改进AC-6[9]。更一般地说,我们可能有任意组作用于约束集。正确有效地与群体打交道会带来许多难题。这些困难现在正受到严重的攻击。到目前为止,Dixon等人在一篇长达200多页的分三部分的期刊论文中,将最重要的工作体应用于SAT环境[27,26,28]。他们制作了ZAP,这是一个功能强大的SAT求解器,旨在使用群论来简化问题的表达,同时利用现代SAT求解器的高效率进步。 在更小的范围内,新的传播算法已被引入约束编程。 Gent等人介绍了(i,j) - 一致性和单一一致性的对称变体,以及它们的执行算法。 虽然已经提供了实现,但是尚未证明基于对称的推理技术在实践中将是强大的。 尽管如此,正如Dixon等人对其巨大努力的结论所暗示的那样,研究领域具有很大的前景:“重要的是要认识到我们的结果只是划分了ZAP代表性转变所允许的表面”[28]。

Symmetry and implied constraints对称性和隐含约束: 当在搜索之前添加约束时,可以使用它们派生“隐含”约束。这些隐含的(或“冗余的”)约束可能会大大减少搜索,而使用原始问题约束[44]是不可能的。在10.4.3节中,我们看到了另一个例子,对称性破坏和问题约束可以非常有效地交互。动态对称破坏技术不允许添加隐含的约束——至少不像静态对称破坏方法那样简单。添加隐含约束也会遇到类似的问题。它可以极大地减少搜索量,但目前还没有自动添加有效隐含约束的技术。

Symmetry and local search: 当我们知道约束问题中的对称性时,就没有道德上的强制要求去消除它:我们可以用任何我们选择的方式利用对称性。当使用局部搜索代替回溯搜索时,Prestwich指出添加打破对称性的约束是不利的[94,91]。虽然对于任何搜索方法来说,更多的解决方案都是好的,但是当排除解决方案时,局部搜索会受到特别大的影响。由于随机方法是随机探索搜索空间的,因此很难将其从被排除的搜索空间中引导出来,而每个被排除的解都成为一个新的局部最优解。在详细的分析中,Prestwich和Roli确定了两种对局部搜索方法引起的对称性破坏约束的病理:全局解决方案具有相对较小的吸引力池,而局部最优值变得相对较大[95]。 由于排除对称性似乎对局部搜索不利,我们可以通过引入对称来改进它吗? Prestwich提出了这个可爱的想法并取得了一些成功[92,91]。 在局部搜索算法中利用对称性仍然是一个有趣但不发达的研究领域:Petcu和Faltings使用互换性来引导局部搜索远离冲突[87],但在这方面做得很少。

Dominance and almost symmetries优势和几乎对称: 研究人员调查了标准对称破坏方法不适用的案例。例如,Beck和Prestwich研究了约束问题[7]中的“优势”。优势是赋值之间的一种过渡,这种过渡肯定会改进(或至少不会使情况变得更糟)成本函数的某些概念。我们可以将对称视为优势的特殊情况,其中成本保持不变,因此转换是可逆的。贝克和普雷斯维奇认为,作为一种通用的CP技术,优势性“应该与对称性破坏并列,并且以一种统一的方式对待两者都是有益的。”最近受到关注的另一个问题是“几乎对称”[37],这是最近[29]研讨会的主题。一般的观点是,这些对称性几乎,但不完全,存在于最初的问题中。它们可以通过添加或删除问题[58]上的约束来产生。前一种情况的例子是搜索过程中出现的对称性:处理这些对称性可能很困难,因为它们会给SBDS或SBDD[54]之类的技术带来重大问题。放松约束问题以获得新的对称性的想法如下[61,81]。 如果放松的问题是高度对称的,那么缩小的搜索空间应该有助于搜索。 如果放松的问题没有解决方案,那么原始问题也没有。 如果我们确实找到了放松问题的解决方案,我们需要额外的步骤来确保它们与原始解决方案相对应

Symmetry in other problems: 鉴于本手册的重点是约束,我们自然将讨论局限于约束和SAT。 然而,对约束中的对称性感兴趣的研究人员也应该对如何在其他领域中解决对称感兴趣。 例如,我们可以将约束中的对称性思想应用于其他问题吗? 在其他领域开发的想法是否可以应用于约束? 虽然我们现在指出其他领域的一些重要文献,但我们甚至没有声称提供具有对称性的其他搜索问题的详尽列表,更不用说那些领域中相关文献的详尽或分析性研究。在整数编程中,Margot已经展示了如何调整算法以利用大对称群[79,80]。 基于对称性生成新切割,并使用Schreier-Sims处理大组以表示它们。 在规划方面,Fox和Long已将对称推理整合到最先进的规划师SymmetricStan [38,37]中。 Fox和Long指出,由于规划问题的性质,搜索期间的对称检测以及几乎对称的存在非常重要。或许令人惊讶的是,在这两个研究领域似乎没有更重要的工作。 自动定理证明中的情况就不那么严重了,其中有大量文献在调整证明系统以处理对称性,例如: [3,71,86,24,117]。 多年来在模型检查方面也做了大量工作,例如: [15,20,66,110]。 在约束中,这项工作倾向于假设用户认识到对称性,并且它们也仅限于简单的对称情况而不是使用计算代数的力量。 最近,Donaldson等人已经证明了使用GAP和图形同构软件进行模型检查的更一般的对称性[30,31,32]。最后,我们只是在关于对称搜索的广泛数学文献中以最轻微的方式接触。 我们特别提到了McKay用于Graph Isomorphism的[n]软件[83]和Soicher用于处理与组相关的图形的GRAPE软件包[116]。 关键算法是“分区回溯”[83,76],这是回溯搜索和组理论计算的非常微妙的混合。 这些技术的数学应用很多:一个是设计理论,它处理组合设计,如平衡不完整块设计,并在www.designtheory.org [6]上提供在线存储库。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值