{"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. …