Backtracking and probing

P. Purdom, G. Haven
{"title":"Backtracking and probing","authors":"P. Purdom, G. Haven","doi":"10.1090/dimacs/035/03","DOIUrl":null,"url":null,"abstract":"We analyze two algorithms for solving constraint satisfaction problems. One of these algorithms, Probe Order Backtracking, has an average running time much faster than any previously analyzed algorithm for problems where solutions are common. Probe Order Backtracking uses a probing assignment a prese-lected test assignment to unset variables to help guide the search for a solution to a constraint satisfaction problem. If the problem is not satissed when the unset variables are temporarily set to the probing assignment , the algorithm selects one of the relations that the probing assignment fails to satisfy and selects an unset variable from that relation. Then at each b a c ktracking step it generates subproblems by setting the selected variable each p o s s i b l e w ay. It simpliies each subproblem, and tries the same technique on them. For random problems with v variables, t clauses, and probability p that a literal appears in a clause, the average time for Probe Order Backtracking is no more than v n when p lnt=v plus lower order terms. The best previous result was p p ln t=v. When the algorithm is combined with an algorithm of Franco that makes selective use of resolution, the average time for solving random problems is polynomial for all values of p when t On 1=3 v=ln v 2=3. The best previous result was t On 1=3 v=ln v 1=6. Probe Order Backtracking also runs in polynomial average time when p 1=v, compared with the best previous result of p 1=2v. With Probe Order Backtracking the range of p that leads to more than polynomial time is much smaller than that for previously analyzed algorithms. 1 Backtracking The constraint satisfaction problem is to determine whether a set of constraints over discrete variables can be satissed. Each constraint m ust have a form that is easy to evaluate, so any diiculty in solving such a problem comes from the interaction between the constraints and the need to nd a setting for the variables that simultaneously satisses all of the constraints. Constraint satisfaction problems are extremely common. Indeed, the proof that a problem is NP-complete implies an eecient w ay to transform the problem into a constraint satisfaction problem. Most NP-complete problems are initially stated as constraint satisfaction problems. A few special forms of constraint satisfaction problems have known algorithms that solve problem instances in polynomial worst-case time. …","PeriodicalId":434373,"journal":{"name":"Satisfiability Problem: Theory and Applications","volume":"67 3","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"15","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Satisfiability Problem: Theory and Applications","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1090/dimacs/035/03","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 15

Abstract

We analyze two algorithms for solving constraint satisfaction problems. One of these algorithms, Probe Order Backtracking, has an average running time much faster than any previously analyzed algorithm for problems where solutions are common. Probe Order Backtracking uses a probing assignment a prese-lected test assignment to unset variables to help guide the search for a solution to a constraint satisfaction problem. If the problem is not satissed when the unset variables are temporarily set to the probing assignment , the algorithm selects one of the relations that the probing assignment fails to satisfy and selects an unset variable from that relation. Then at each b a c ktracking step it generates subproblems by setting the selected variable each p o s s i b l e w ay. It simpliies each subproblem, and tries the same technique on them. For random problems with v variables, t clauses, and probability p that a literal appears in a clause, the average time for Probe Order Backtracking is no more than v n when p lnt=v plus lower order terms. The best previous result was p p ln t=v. When the algorithm is combined with an algorithm of Franco that makes selective use of resolution, the average time for solving random problems is polynomial for all values of p when t On 1=3 v=ln v 2=3. The best previous result was t On 1=3 v=ln v 1=6. Probe Order Backtracking also runs in polynomial average time when p 1=v, compared with the best previous result of p 1=2v. With Probe Order Backtracking the range of p that leads to more than polynomial time is much smaller than that for previously analyzed algorithms. 1 Backtracking The constraint satisfaction problem is to determine whether a set of constraints over discrete variables can be satissed. Each constraint m ust have a form that is easy to evaluate, so any diiculty in solving such a problem comes from the interaction between the constraints and the need to nd a setting for the variables that simultaneously satisses all of the constraints. Constraint satisfaction problems are extremely common. Indeed, the proof that a problem is NP-complete implies an eecient w ay to transform the problem into a constraint satisfaction problem. Most NP-complete problems are initially stated as constraint satisfaction problems. A few special forms of constraint satisfaction problems have known algorithms that solve problem instances in polynomial worst-case time. …
回溯和探测
分析了求解约束满足问题的两种算法。其中一种算法是Probe Order Backtracking,它的平均运行时间比之前分析过的解决常见问题的算法快得多。探测顺序回溯使用探测分配(预先选择的测试分配)来取消变量设置,以帮助指导对约束满足问题的解决方案的搜索。当未设置变量临时设置为探测赋值时,如果不满足问题,则算法选择一个探测赋值不满足的关系,并从该关系中选择一个未设置变量。然后,在每b个c跟踪步骤中,它通过将所选变量设置为每p个c来生成子问题。它简化了每个子问题,并对它们尝试相同的技术。对于具有v个变量、t个子句和文本出现在子句中的概率p的随机问题,当p lnt=v加上低阶项时,探测阶回溯的平均时间不超过v n。之前最好的结果是p p ln t=v。当该算法与选择性使用分辨率的Franco算法结合使用时,当t On 1= 3v = lnv2 =3时,对于所有p值,求解随机问题的平均时间都是多项式。之前最好的结果是t On 1= 3v = lnv1 =6。与之前的最佳结果p1 =2v相比,探针阶回溯在p1 =v时也以多项式平均时间运行。使用探针顺序回溯p的范围,导致超过多项式的时间比以前分析的算法要小得多。约束满足问题是确定离散变量上的一组约束是否可以满足。每个约束m必须具有易于计算的形式,因此解决此类问题的任何困难都来自约束之间的相互作用以及同时满足所有约束的变量设置的需求。约束满足问题非常普遍。事实上,证明一个问题是np完全的意味着有一种有效的方法将问题转化为约束满足问题。大多数np完全问题最初被描述为约束满足问题。一些特殊形式的约束满足问题已经有了已知的算法,可以在多项式最坏情况时间内解决问题实例。…
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信