A Hybrid Algorithm for Compiling Equality. Constraints and its Implementation. Department of Computer and Information Science
|
|
- Megan Audra Harper
- 5 years ago
- Views:
Transcription
1 URL: 9 pages A Hybrid Algorithm for Compiling Equality Constraints and its Implementation Neng-Fa Zhou Department of Computer and Information Science Brooklyn College, The City University of New York New York, NY , USA Sosuke Kaneko Graduate School of Computer Science and Systems Engineering Kyushu Institute of Technology Kawazu, Iizuka, Fukuoka , Japan Abstract In this paper, we extend the language we proposed in [11] to make it possible to program arc-consistency algorithms. We also propose a hybrid algorithm that integrates the interval-consistency (IC) and arc-consistency (AC) algorithms. For a constraint, the algorithm checks IC when it is non-binary and checks AC when the constraint turns into binary. The algorithm is well-balanced. Its reduction cost is close to the IC checking algorithm, while its reduction power is close to the AC checking algorithm for most problems. The experimental results show that the hybrid algorithm may be a little slower than the IC checking algorithm for programs that do not require strong reduction power, but may be an order of magnitude faster than IC for other programs. 1 Introduction Constraint propagation is a method that has been widely used to solve constraint satisfaction problems [9]. The basic idea of constraint propagation is to trigger a domain reduction procedure, called domain-reducer, whenever some update occurs to a variable. Many propagation algorithms can be derived from this idea depending on what kind of domain reducer to use and when to trigger it. There is a trade-of involved in deciding which algorithm is better. In general, the stronger the reduction power of an algorithm is, the less the number of backtracks will be in search and the stronger the reduction power is, the greater the cost of reduction itself will be. Most nite-domain constraint systems only maintain interval-consistency (IC) for constraints and trigger the domain-reducer only when the low and/or c2000 Published by Elsevier Science B. V. Open access under CC BY-NC-ND license.
2 upper bound of a domain is updated. The CHIP system maintains arcconsistency (AC) for binary equality constraints and triggers the domain reducer when whatever elements are excluded from a domain. For complex constraints, the IC checking algorithm is used. In [11], we proposed an intermediate language, called delay clauses, for compiling constraints and showed four dierent schemes for compiling arithmetic constraints. As an implementation language for constraints, delay clauses are much morepowerful than indexicals [2,5]. Many propagation algorithms that are impossible to describe in indexicals can be implemented straightforwardly in delay clauses. Constraint handling rules (CHRs) [3] are avery high-level language for implementing constraint reasoning and propagation. The high description power is not oered without cost [6]. Constraint solvers implemented in CHRs are an order of magnitude slower than those implemented in indexicals and delay clauses. In this paper, we extend delay clauses and make it possible to implement arc-consistency algorithms. We also propose a hybrid algorithm that integrates the IC and AC algorithms. For a constraint, the algorithm checks IC when it is non-binary and checks AC when the constraint turns into binary. The algorithm is well-balanced. Its reduction cost is close to the IC checking algorithm, while its reduction power is close to the AC checking algorithm for most problems. The experimental results show that the hybrid algorithm is an order of magnitude faster than the IC checking algorithm for many problems. 2 Preliminaries 2.1 Domain variables A domain variable is variable that has a nite domain associated with it. When the domain of a variable becomes a singleton, then the variable will be boundtothevalue. A failure occurs when the domain of a variable becomes empty. There are several primitive operations available on domain variables. For example, the primitive dvar(x) succeeds if X is a domain variable the primitive fd min(x,min) says that the minimum element in the domain of X is Min and the primitive fd max(x,max) says that the maximum element in the domain of X is Min. 2.2 Delay clauses Adelay clause takes the following form : delay Head:-Condition:{Triggers} Action. where Condition is a sequence of in-line tests, Triggers is a sequence of trigger declarations, and Action is a sequence of arbitrary calls. For any call to the predicate of Head, ifitmatches Head and Condition is satised, then the call delays and Action is executed. Triggers species the 2
3 events that will trigger the execution of the delayed calls. There are four kinds of triggers: ins(x) is on when X is instantiated min(x) is on when the low bound of X is updated max(x) is on when the upper bound of X is updated and dom(x) is on when any inner elementofthe domain of X is excluded. A delay clause is executed in an event-driven manner. At the entry and exit points of every predicate, the system checks to see whether there is a trigger that has been turned on. If so, then the current procedure is interrupted and control is moved to the delayed calls associated with the trigger. 2.3 The AC-5 algorithm In the AC-5 algorithm, constraints are classied into three dierent classes: functional (for instance, X=2Y+1), anti-functional (for instance, Xn=Y), and monotonic (for instance, X>2X+1). For anti-functional constraints, AC- 5delays until constraints become unary. For monotonic constraints, AC-5 maintains IC of constraints and examines only the upper and low bounds of domains. For equality (functional) constraints, AC-5 maintains AC ofcon- straints. Consider a binary functional constraint p(x,y). Whenever an element x is excluded from the domain of X, then the corresponding element y in the domain of Y that satises p(x,y) will be excluded from the domain of Y. 3 Extending Domain Variables In order to implement AC-5, we need to know what elements have been excluded from a domain since the last time we examined the domain. For each domain variable, we add a new eld to it that stores the list of inner elements that have been excluded from the domain. Note that the low andupper bounds are not recorded on the list when they are excluded. We do not lose any reduction power by doing so as long as we lettheacchecking algorithm check IC. We introduce the following two new primitives on domain variables: fd delta(+x,-deltax) X is a domain variable and DeltaX is an internal number associated with the list of excluded elements of X. fd delta elms(+deltax,-elms) Elms is bound to the list of elements that have been excluded from X since the last time fd delta elms(deltax, ) is executed or since DeltaX was generated if no other fd delta elms(deltax, ) has been executed. For example, consider the following program: testdelta:- X in 1..10, fd_delta(x,deltax), 3
4 X #\= 4, fd_delta_elms(deltax,a), X #\= 5, X #\= 10, fd_delta_elms(deltax,b), write(a,b). At the end of the clause, the variable A will be bound to [4] and B to [5]. The excluded element 10 is not included in B since it was the upper bound when it was excluded. 4 Propagators for Binary Equality Constraints With the new primitives, fd delta and fd delta elms, on domain variables, it becomes now possible to implement the AC-5 algorithm for binary equality constraints. In this section, we show how to implement the propagator for the binary constraint ax=by+c where X and Y are domain variables, a and b are non-negative integers, and c is an arbitrary integer. More specic and ecient propagators can be derived from this general propagator by taking special coecients into account. The following shows the propagator: 'ax=by+c'(a,x,b,y,c):- (1)'arc_consistent_aX=bY+c'(A,X,B,Y,C), (2)fd_delta(X,DeltaX), (3)fd_delta(Y,DeltaY), (4)'aX=bY+c_prop'(A,X,B,Y,C,DeltaX), % reduce Y when X is updated C1 is -C, (5)'aX=bY+c_prop'(B,Y,A,X,C1,DeltaY). % reduce X when Y is updated The call on line (1) preprocesses the constraint to make the constraint arcconsistent: for each element x in the domain of X, there is an element y in the domain of Y such that A x = B y + c. The same thing is guaranteed for each element in Y. The calls on lines (2) and (3) tell the system to start memorizing excluded elements from the domains of X and Y, respectively. The predicate call 'ax=by+c prop'(a,x,b,y,c,deltax),which is dened as follows, reduces the domain of Y when X is updated. delay 'ax=by+c_prop'(a,x,b,y,c,deltax):- dvar(x),dvar(y) : {ins(x),min(x),max(x),dom(x)}, Y in (A*min(X)-C)/>B..(A*max(X)-C)/<B, fd_delta_elms(deltax,elmsx), reduce the domain of Y for each element in ElmsX. 4
5 'ax=by+c_prop'(a,x,b,y,c,deltax):- dvar(x) : X is (B*Y-C)//A. 'ax=by+c_prop'(a,x,b,y,c,deltax):- true : Y is -(A*X+C)//B. When whatever update is made to the variable X, the predicate will be reexecuted. The action in the delay clause, which is executed when both X and Y are variables, reduces the domain of Y to make the constraint arc-consistent with respect to X: for each x in the domain of X, there exists an element y in the domain of Y such that Ax=By+C. When either X or Y is instantiated, then the constraint becomes an assignment or a test. The remaining two clauses take care of these cases. 5 A Hybrid Algorithm for Compiling Equality Constraints In the current version of B-Prolog, a constraint with n variables is compiled to a call to the following predicate: delay c(c,a1,a2,...,an,x1,x2,..,xn):- no_vars_gt(n,0) : {Triggers}, reduce domains of X1,..,Xn. c(c,a1,a2,...,an,x1,x2,..,xn):- true : test the constraint. where the in-line call no vars gt(n,m) succeeds if there are more than m variables occurring in the last n arguments. The predicate uses the same code to reduce the domains of the variables to achieve ICuntil the constraint becomes ground. For a constraint, the hybrid algorithm maintains IC when there are multiple variables involved in the constraint and start to maintain AC when the constraint becomes binary. The propagator for an n-ary constraint looks as follows: delay c(c,a1,a2,...,an,x1,x2,..,xn):- no_vars_gt(n,2) : {Triggers}, reduce domains of X1,..,Xn. c(c,a1,a2,...,an,x1,x2,..,xn):- true : nary_to_binary(n,newc,b1,y1,b2,y2), call_bc_propagator(newc,b1,y1,b2,y2). When there are more than two variables in the constraint, the domains are reduced to make the constraint interval-consistent. When the number of variables becomes two or less, the call nary to binary(n,newc,b1, Y1,B2,Y2), which is a built-in 1, transforms the constraintinto a binary one: B1*Y1+B2*Y2+NewC 1 We use a trick here. Instead of passing the coecients and the variables of the constraint to nary to binary, we let it get the information from its parent call. 5
6 =0, and the next call invokes an appropriate propagator for the binary constraint. 6 Performance Evaluation Table 1 compares the CPU times required by two versions of B-Prolog to run several programs. bp interval is the current B-Prolog (version 3.5) that checks only IC of constraints, and bp hybrid is a version of B-Prolog that adopts the hybrid algorithm described in this paper. bp hybrid is nearly twice as fast as bp interval for alpha and is explosively faster than bp interval for the linear-space N-queen program [8]. For the remaining programs, bp hybrid has similar performance to that of bp interval. We understand from this results that the overhead of keeping record of excluded elements is actually very low. The following two facts tell the reason: First, bp hybrid starts to memorize the updates of the domain of a variable only after the variable appears in some binary constraints and second only inner elements that are excluded from a domain are memorized. Table 1 Execution Times (SPARC-10, milliseconds) Program bp interval bp hybrid alpha alpha crypta eq magic queens queens queens queens queens queens Table 2 compares the numbers of backtracks made in the two versions for the programs. We can understand from this table that the speed-ups of bp hybrid come from the reduction of the number of backtracks. Table 3 compares the CPU times required by the two versions to run the DJ system [13]. DJ is an extension of Java that supports constraint programming. DJ runs on B-Prolog and relies on the constraint propagators of B-Prolog 6
7 Table 2 Numbers of Backtracks Program bp interval bp hybrid alpha alpha crypta eq magic queens queens queens queens queens queens Table 3 Execution Times of DJ Programs (SPARC-10, milliseconds) Program bp interval bp hybrid Circles Circles Japan UK USA Marriage SendMoreMoney to solve constraints. bp hybrid is signicantly faster than bp interval. For instance, for the Marriage program, bp hybrid is nearly 20 times faster than bp interval. Most of the DJ programs have some constraints on the layout of graphical components. The hybrid algorithm proves very useful for solving geometric constraints. 7
8 7 Conclusion The AC and IC checking algorithms are two well known propagation algorithms for solving CSPs. The AC checking algorithm has a good reduction power but has to spend a lot of time reducing domains. On the other hand, the IC checking algorithm spend less time than IC in reducing domains but has a reduction power that may be too weak for big search problems. We proposed a hybrid algorithm that checks IC of constraints when there are multiple variables involved and checks AC of constraints when the constraints become binary. The experimental results show that the hybrid algorithm may be a little slower than the IC checking algorithm for programs that do not require strong reduction power, but may be an order of magnitude faster than IC for other programs. We demonstrated once again that delay clause is a powerful and ecient language for programming and compiling constraints. References [1] Abderrahmane Aggoun and Nicolas Beldiceanu. Overview of the CHIP compiler System, Proc. the 8th International Conference on Logic Programming, pp , MIT Press, [2] Philippe Codognet and Daniel Diaz. Compiling Constraints in clp(fd), Journal of Logic Programming, pp , [3] Thom W. Fruhwirth: Theory and Practice of Constraint Handling Rules, Journal of Logic Programming, Vol.37, , [4] Pascal Van Hentenryck, Yves Deville, and Choh-Man Teng. A generic arcconsistency algorithm and its specializations, Articial Intelligence 57(1992) [5] Pascal Van Hentenryck, Vijay A. Saraswat, Yves Deville: Design, Implementation, and Evaluation of the Constraint Language cc(fd), Journal of Logic Programming, Vol.37, pp , [6] C. Holzbaur and T. Fruhwirth: Compiling Constraint Handling Rules into Prolog iwth Attributed Variables, International Conference on Principles and Practice of Declarative Programming, [7] Micha Meier. Better Late Than Never, Implementations of Logic Programming Systems, E.Tick and G.Succi, Eds., Kluwer Academic Publishers, [8] Jean-Francois Puget and Michel Leconte. Beyond the Glass Box: Constraints as Objects, Proc International Symposium on Logic Programming, pp , MIT Press, [9] Edward Tsang. FOUNDATIONS of CONSTRAINT SATISFACTION, ACADEMIC PRESS,
9 [10] Neng-Fa Zhou: A Novel Implementation Method of Delay. In Proceedings of Joint International Conference and Symposium on Logic Programming, pp , MIT Press, [11] Neng-Fa Zhou. A High-Level Intermediate Language and Algorithm for Compiling Finite-Domain Constraints, Proc. Joint International Conference and Symposium on Logic Programming, pp.70-84, MIT Press, [12] Neng-Fa Zhou. B-Prolog User's Manual (Version 3.5), [13] Neng-Fa Zhou. DJ User's Manual (Version 0.5), 9
Constraint Programming
Constraint In Pursuit of The Holly Grail Roman Barták Charles University in Prague Constraint programming represents one of the closest approaches computer science has yet made to the Holy Grail of programming:
More informationThe dom Event and its Use in Implementing Constraint Propagators
The dom Event and its Use in Implementing Constraint Propagators Neng-Fa Zhou 1, Mark Wallace 2 and Peter Stucky 3 1 CUNY Brooklyn College & Graduate Center zhou@sci.brooklyn.cuny.edu 2 Monash University
More informationTwo Problems - Two Solutions: One System - ECLiPSe. Mark Wallace and Andre Veron. April 1993
Two Problems - Two Solutions: One System - ECLiPSe Mark Wallace and Andre Veron April 1993 1 Introduction The constraint logic programming system ECL i PS e [4] is the successor to the CHIP system [1].
More informationThe GNU Prolog System and its Implementation
The GNU Prolog System and its Implementation Daniel Diaz University of Paris 1 CRI, bureau C1407 90, rue de Tolbiac 75634 Paris Cedex 13, France and INRIA-Rocquencourt Daniel.Diaz@inria.fr Philippe Codognet
More informationA Simple and Efficient Boolean Solver for Constraint Logic Programming
A Simple and Efficient Boolean Solver for Constraint Logic Programming Philippe Codognet and Daniel Diaz INRIA-Rocquencourt Domaine de Voluceau BP 105 78153 Le Chesnay Cedex FRANCE {Philippe.Codognet,
More informationn-ary constraints are provided by many constraint programming languages and libraries. There are two main approaches to deal with n-ary CSPs. The rst
Arc Consistency on n-ary Monotonic and Linear Constraints Zhang Yuanlin and Roland H.C. Yap School of Computing National University of Singapore 3 Science Drive 2 Republic of Singapore 119260 fzhangyl,ryapg@comp.nus.edu.sg
More informationConstraint-Directed Backtracking Algorithm. Wanlin Pang. Scott D. Goodwin. May 1996
Constraint-Directed Backtracking Algorithm for Constraint-Satisfaction Problems Wanlin Pang Scott D. Goodwin Technical Report CS-96-05 May 1996 cwanlin Pang and Scott D. Goodwin Department of Computer
More informationDecomposable Constraints
Decomposable Constraints Ian Gent 1, Kostas Stergiou 2, and Toby Walsh 3 1 University of St Andrews, St Andrews, Scotland. ipg@dcs.st-and.ac.uk 2 University of Strathclyde, Glasgow, Scotland. ks@cs.strath.ac.uk
More informationConstraint Satisfaction Problems. Chapter 6
Constraint Satisfaction Problems Chapter 6 Constraint Satisfaction Problems A constraint satisfaction problem consists of three components, X, D, and C: X is a set of variables, {X 1,..., X n }. D is a
More informationChapter 9: Constraint Logic Programming
9. Constraint Logic Programming 9-1 Deductive Databases and Logic Programming (Winter 2007/2008) Chapter 9: Constraint Logic Programming Introduction, Examples Basic Query Evaluation Finite Domain Constraint
More informationis a kind of generalization of AC-3 to non-binary constraints. As AC-3, that algorithm has a bad worst-case time complexity (O(er 2 d r+1 ), with e th
Arc consistency for general constraint networks: preliminary results Christian Bessiere LIRMM{CNRS (UMR 5506) 161 rue Ada 34392 Montpellier cedex 5, France Email: bessiere@lirmm.fr Jean-Charles Regin ILOG
More informationA Comparative Study of Eight Constraint Programming Languages Over the Boolean and Finite Domains
Constraints, 5, 275 301 (2000) c 2000 Kluwer Academic Publishers, Boston. Manufactured in The Netherlands. A Comparative Study of Eight Constraint Programming Languages Over the Boolean and Finite Domains
More informationLecture 6: Constraint Satisfaction Problems (CSPs)
Lecture 6: Constraint Satisfaction Problems (CSPs) CS 580 (001) - Spring 2018 Amarda Shehu Department of Computer Science George Mason University, Fairfax, VA, USA February 28, 2018 Amarda Shehu (580)
More informationLocal consistency for ternary numeric constraints. Boi Faltings and Esther Gelle. Articial Intelligence Laboratory (LIA)
Local consistency for ternary numeric constraints Boi Faltings and Esther Gelle Articial Intelligence Laboratory (LIA) Swiss Federal Institute of Technology (EPFL) IN-Ecublens, 1015 Lausanne, Switzerland
More informationConstraint Satisfaction Problems
Last update: February 25, 2010 Constraint Satisfaction Problems CMSC 421, Chapter 5 CMSC 421, Chapter 5 1 Outline CSP examples Backtracking search for CSPs Problem structure and problem decomposition Local
More informationConstraint Satisfaction
Constraint Satisfaction Philipp Koehn 1 October 2015 Outline 1 Constraint satisfaction problems (CSP) examples Backtracking search for CSPs Problem structure and problem decomposition Local search for
More informationUnifying and extending hybrid tractable classes of CSPs
Journal of Experimental & Theoretical Artificial Intelligence Vol. 00, No. 00, Month-Month 200x, 1 16 Unifying and extending hybrid tractable classes of CSPs Wady Naanaa Faculty of sciences, University
More informationAn Efficient Arc Consistency Algorithm for a Class of CSP Problems
An Efficient Arc Consistency Algorithm for a Class of CSP Problems Yves Deville* University of Namur, 21 rue Grandgagnage B-5000 Namur (Belgium) Email: yde@infoiundp.ac.be Pascal Van Hentenryck Brown University,
More informationconstraint logic language over nite domains based on the cc framework (non-linear) arithmetic constraints over natural numbers which are approximated
J. LOGIC PROGRAMMING 1994:19, 20:1{679 1 DESIGN, IMPLEMENTATION, AND EVALUATION OF THE CONSTRAINT LANGUAGE cc(fd) PASCAL VAN HENTENRYCK, VIJAY SARASWAT, AND YVES DEVILLE. This paper describes the design,
More informationThese advantages are exemplied by a scheduling workbench called Oz Scheduler [13]. This workbench makes use of dierent OR algorithms for propagation a
Constraint-Based Scheduling in Oz Jorg Wurtz, DFKI GmbH, Saarbrucken Abstract It is discussed, how scheduling problems can be solved in the concurrent constraint programming language Oz. Oz is the rst
More informationThe Dierence All-Dierence Makes. Kostas Stergiou and Toby Walsh. Glasgow, Scotland. 2 Formal background
The Dierence All-Dierence Makes Kostas Stergiou and Toby Walsh Department of Computer Science University of Strathclyde Glasgow, Scotland fks,twg@cs.strath.ac.uk Abstract We perform a comprehensive theoretical
More informationReduction of nite linear CSPs to SAT using dierent encod
Reduction of nite linear CSPs to SAT using dierent encodings Mirko Stojadinovi mirkos@matf.bg.ac.rs Department of Computer Science Faculty of Mathematics University of Belgrade Fifth Workshop on Formal
More informationExample: Map coloring
Today s s lecture Local Search Lecture 7: Search - 6 Heuristic Repair CSP and 3-SAT Solving CSPs using Systematic Search. Victor Lesser CMPSCI 683 Fall 2004 The relationship between problem structure and
More informationConstraint Satisfaction Problems. slides from: Padhraic Smyth, Bryan Low, S. Russell and P. Norvig, Jean-Claude Latombe
Constraint Satisfaction Problems slides from: Padhraic Smyth, Bryan Low, S. Russell and P. Norvig, Jean-Claude Latombe Standard search problems: State is a black box : arbitrary data structure Goal test
More informationNegation as Failure Introduction to Prolog
Negation as Failure Introduction to Prolog Useful references: Clocksin, W.F. and Mellish, C.S., Programming in Prolog: Using the ISO Standard (5th edition), 2003. Bratko, I., Prolog Programming for Artificial
More informationConstraint (Logic) Programming
Constraint (Logic) Programming Roman Barták Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic bartak@ktiml.mff.cuni.cz Sudoku Combinatorial puzzle, whose goal is to enter
More information1 Computer arithmetic with unsigned integers
1 Computer arithmetic with unsigned integers All numbers are w-bit unsigned integers unless otherwise noted. A w-bit unsigned integer x can be written out in binary as x x x w 2...x 2 x 1 x 0, where x
More informationRajiv Chopra, Rohini Srihari and Anthony Ralston. labeling problem. However, these are dicult to
Expensive Constraints and HyperArc-Consistency Rajiv Chopra, Rohini Srihari and Anthony Ralston Dept. of Computer Science, SUNY at Bualo 224 Bell Hall, Amherst NY 14214 frchopra,rohini,ralstong@cs.buffalo.edu
More informationproc {Produce State Out} local State2 Out2 in State2 = State + 1 Out = State Out2 {Produce State2 Out2}
Laziness and Declarative Concurrency Raphael Collet Universite Catholique de Louvain, B-1348 Louvain-la-Neuve, Belgium raph@info.ucl.ac.be May 7, 2004 Abstract Concurrency and distribution in a programming
More information1 Inference for Boolean theories
Scribe notes on the class discussion on consistency methods for boolean theories, row convex constraints and linear inequalities (Section 8.3 to 8.6) Speaker: Eric Moss Scribe: Anagh Lal Corrector: Chen
More informationExtra-High Speed Matrix Multiplication on the Cray-2. David H. Bailey. September 2, 1987
Extra-High Speed Matrix Multiplication on the Cray-2 David H. Bailey September 2, 1987 Ref: SIAM J. on Scientic and Statistical Computing, vol. 9, no. 3, (May 1988), pg. 603{607 Abstract The Cray-2 is
More informationLecture 9 Arc Consistency
Computer Science CPSC 322 Lecture 9 Arc Consistency (4.5, 4.6) Slide 1 Lecture Overview Recap of Lecture 8 Arc Consistency for CSP Domain Splitting 2 Problem Type Static Sequential Constraint Satisfaction
More informationHybrid Algorithms for SAT. Irina Rish and Rina Dechter.
To Guess or to Think? Hybrid Algorithms for SAT Irina Rish and Rina Dechter Information and Computer Science University of California, Irvine fdechter,irinarg@ics.uci.edu http://www.ics.uci.edu/f~irinar,~dechterg
More informationConstraint Satisfaction Problems
Constraint Satisfaction Problems CE417: Introduction to Artificial Intelligence Sharif University of Technology Spring 2013 Soleymani Course material: Artificial Intelligence: A Modern Approach, 3 rd Edition,
More informationConstraint Satisfaction Problems
Constraint Satisfaction Problems Chapter 5 Chapter 5 1 Outline CSP examples Backtracking search for CSPs Problem structure and problem decomposition Local search for CSPs Chapter 5 2 Constraint satisfaction
More informationView-based Propagator Derivation
View-based Propagator Derivation Christian Schulte SCALE, KTH & SICS, Sweden joint work with: Guido Tack NICTA & Monash University, Australia Based on:. Christian Schulte, Guido Tack. Constraints 18(1),
More informationLecture 18. Questions? Monday, February 20 CS 430 Artificial Intelligence - Lecture 18 1
Lecture 18 Questions? Monday, February 20 CS 430 Artificial Intelligence - Lecture 18 1 Outline Chapter 6 - Constraint Satisfaction Problems Path Consistency & Global Constraints Sudoku Example Backtracking
More informationConstraint Programming. Global Constraints. Amira Zaki Prof. Dr. Thom Frühwirth. University of Ulm WS 2012/2013
Global Constraints Amira Zaki Prof. Dr. Thom Frühwirth University of Ulm WS 2012/2013 Amira Zaki & Thom Frühwirth University of Ulm Page 1 WS 2012/2013 Overview Classes of Constraints Global Constraints
More informationInner and outer approximation of capture basin using interval analysis
Inner and outer approximation of capture basin using interval analysis M. Lhommeau 1 L. Jaulin 2 L. Hardouin 1 1 Laboratoire d'ingénierie des Systèmes Automatisés ISTIA - Université d'angers 62, av. Notre
More informationOther approaches. Marco Kuhlmann & Guido Tack Lecture 11
Other approaches Marco Kuhlmann & Guido Tack Lecture 11 Plan for today CSP-based propagation Constraint-based local search Linear programming CSP-based propagation History of CSP-based propagation AI research
More informationRapid Prototyping of a Structured Domain through Indexical Compilation
Rapid Prototyping of a Structured Domain through Indexical Compilation Joseph D. Scott Uppsala University Abstract. We report on our experience with rapid prototyping for a new structured domain of bounded-length
More informationConstraint Satisfaction Problems
Constraint Satisfaction Problems In which we see how treating states as more than just little black boxes leads to the invention of a range of powerful new search methods and a deeper understanding of
More informationValidating Plans with Durative Actions via Integrating Boolean and Numerical Constraints
Validating Plans with Durative Actions via Integrating Boolean and Numerical Constraints Roman Barták Charles University in Prague, Faculty of Mathematics and Physics Institute for Theoretical Computer
More informationConstraint Satisfaction. AI Slides (5e) c Lin
Constraint Satisfaction 4 AI Slides (5e) c Lin Zuoquan@PKU 2003-2018 4 1 4 Constraint Satisfaction 4.1 Constraint satisfaction problems 4.2 Backtracking search 4.3 Constraint propagation 4.4 Local search
More informationConstraint-Based Scheduling: An Introduction for Newcomers
Constraint-Based Scheduling: An Introduction for Newcomers Roman Barták * Charles University in Prague, Faculty of Mathematics and Physics Malostranské námestí 2/25, 118 00, Praha 1, Czech Republic bartak@kti.mff.cuni.cz
More information3rd CHR Summer School Topics: Introduction to Constraint Programming
3rd CHR Summer School Topics: Introduction to Constraint Programming Prof. Dr. Slim Abdennadher 8.7.2013 c S.Abdennadher 1 Constraint Programming: Much Quoted Sentence Constraint Programming represents
More informationPath Consistency Revisited. Moninder Singh. University of Pennsylvania. Philadelphia, PA
Proceedings of the 7th IEEE International Conference on Tools with Articial Intelligence, 318-325, 1995. c Institute of Electrical and Electronics Engineers, Inc. (IEEE). Path Consistency Revisited Moninder
More informationModelling Combinatorial Problems for CLP(FD+R) Henk Vandecasteele. Department of Computer Science, K. U. Leuven
Modelling Combinatorial Problems for CLP(FD+R) Henk Vandecasteele Department of Computer Science, K. U. Leuven Celestijnenlaan 200A, B-3001 Heverlee, Belgium henk.vandecasteele@cs.kuleuven.ac.be Robert
More informationConstraint Propagation: The Heart of Constraint Programming
Constraint Propagation: The Heart of Constraint Programming Zeynep KIZILTAN Department of Computer Science University of Bologna Email: zeynep@cs.unibo.it URL: http://zeynep.web.cs.unibo.it/ What is it
More informationIMPLEMENTING CONSTRAINT SOLVERS IN B-PROLOG
IMPLEMENTING CONSTRAINT SOLVERS IN B-PROLOG Neng-Fa Zhou Department of Computer and Information Science CUNY Brooklyn College & Gmduate Center New York, NY 11210-2889, USA zhouldsci.brooklyn.cuny.edu Abstract
More informationLinear Programming based Induction (LPI): a Constraint Logic Programming elaboration
Linear Programming based Induction (LPI): a Constraint Logic Programming elaboration Intitute of Computer Science Foundation for Research and Technology - Hellas (FORTH) Science & Technology Parc of Crete
More informationINTRODUCTION TO PROLOG
INTRODUCTION TO PROLOG PRINCIPLES OF PROGRAMMING LANGUAGES Norbert Zeh Winter 2018 Dalhousie University 1/44 STRUCTURE OF A PROLOG PROGRAM Where, declaratively, Haskell expresses a computation as a system
More informationA CSP Search Algorithm with Reduced Branching Factor
A CSP Search Algorithm with Reduced Branching Factor Igor Razgon and Amnon Meisels Department of Computer Science, Ben-Gurion University of the Negev, Beer-Sheva, 84-105, Israel {irazgon,am}@cs.bgu.ac.il
More informationConstraint Satisfaction Problems. Chapter 6
Constraint Satisfaction Problems Chapter 6 Office hours Office hours for Assignment 1 (ASB9810 in CSIL): Sep 29th(Fri) 12:00 to 13:30 Oct 3rd(Tue) 11:30 to 13:00 Late homework policy You get four late
More informationLecture 7. Search. Search. Foundations of Constraint Programming
Lecture 7 1 Outline Introduce search trees Discuss various types of labeling trees, in particular trees for - forward checking - partial look ahead - maintaining arc consistency (MAC) Discuss various search
More informationChapter 16. Logic Programming. Topics. Unification. Resolution. Prolog s Search Strategy. Prolog s Search Strategy
Topics Chapter 16 Logic Programming Summary (resolution, unification, Prolog search strategy ) Disjoint goals The cut operator Negative goals Predicate fail Debugger / tracer Lists 2 Resolution Resolution
More informationA New Algorithm for Singleton Arc Consistency
A New Algorithm for Singleton Arc Consistency Roman Barták, Radek Erben Charles University, Institute for Theoretical Computer Science Malostranské nám. 2/25, 118 Praha 1, Czech Republic bartak@kti.mff.cuni.cz,
More informationChapter 6 Constraint Satisfaction Problems
Chapter 6 Constraint Satisfaction Problems CS5811 - Artificial Intelligence Nilufer Onder Department of Computer Science Michigan Technological University Outline CSP problem definition Backtracking search
More informationExample: Map-Coloring. Constraint Satisfaction Problems Western Australia. Example: Map-Coloring contd. Outline. Constraint graph
Example: Map-Coloring Constraint Satisfaction Problems Western Northern erritory ueensland Chapter 5 South New South Wales asmania Variables, N,,, V, SA, Domains D i = {red,green,blue} Constraints: adjacent
More informationWith the advent of cost-eective massively parallel computers, researchers
Concurrent Constraint Logic Programming on Massively Parallel SIMD Computers Bo-Ming Tong and Ho-Fung Leung Department of Computer Science The Chinese University of Hong Kong Shatin, New Territories Hong
More informationArc Consistency for Dynamic CSPs
Arc Consistency for Dynamic CSPs Malek Mouhoub mouhoubm@cs.uregina.ca Department of Computer Science, University of Regina 3737 Waskana Parkway, Regina SK, Canada, S4S 0A2 ABSTRACT Constraint Satisfaction
More informationConstraint Satisfaction
Constraint Satisfaction Reading: Russell & Norvig Chapter 5, Kumar, Algorithms for constraint satisfaction problems: A survey SEND + MORE = MONEY Assign distinct digits to the letters S, E, N, D, M, O,
More informationConstraint Solving by Composition
Constraint Solving by Composition Student: Zhijun Zhang Supervisor: Susan L. Epstein The Graduate Center of the City University of New York, Computer Science Department 365 Fifth Avenue, New York, NY 10016-4309,
More informationCongruence Closure in Intensional Type Theory
Congruence Closure in Intensional Type Theory Daniel Selsam 1 Leonardo de Moura 2 1 Stanford University 2 Microsoft Research June 30, 2016 Goal Intensional type theory (ITT) Coq, Lean, Agda, Epigram, Idris
More informationModule 4. Constraint satisfaction problems. Version 2 CSE IIT, Kharagpur
Module 4 Constraint satisfaction problems 4.1 Instructional Objective The students should understand the formulation of constraint satisfaction problems Given a problem description, the student should
More information2 Keywords Backtracking Algorithms, Constraint Satisfaction Problem, Distributed Articial Intelligence, Iterative Improvement Algorithm, Multiagent Sy
1 The Distributed Constraint Satisfaction Problem: Formalization and Algorithms IEEE Trans. on Knowledge and DATA Engineering, vol.10, No.5 September 1998 Makoto Yokoo, Edmund H. Durfee, Toru Ishida, and
More informationQuteSat. A Robust Circuit-Based SAT Solver for Complex Circuit Structure. Chung-Yang (Ric) Huang National Taiwan University
QuteSat A Robust Circuit-Based SAT Solver for Complex Circuit Structure Chung-Yang (Ric) Huang National Taiwan University To appear: DATE 27 2/1/27 Fact Sheet (Background) Boolean Satisfiability (SAT)
More informationConstraint Satisfaction Problems
Constraint Satisfaction Problems Tuomas Sandholm Carnegie Mellon University Computer Science Department [Read Chapter 6 of Russell & Norvig] Constraint satisfaction problems (CSPs) Standard search problem:
More informationSoft constraints: Polynomial classes, Applications
Soft constraints: Polynomial classes, Applications T. Schiex INRA - Toulouse, France Padova 2004 - Soft constraints p. 1 Polynomial classes structural classes: when the constraint (hyper)-graph has good
More informationConstraint Satisfaction Problems Chapter 3, Section 7 and Chapter 4, Section 4.4 AIMA Slides cstuart Russell and Peter Norvig, 1998 Chapter 3, Section
Constraint Satisfaction Problems Chapter 3, Section 7 and Chapter 4, Section 4.4 AIMA Slides cstuart Russell and Peter Norvig, 1998 Chapter 3, Section 7 and Chapter 4, Section 4.4 1 Outline } CSP examples
More informationConstraint Satisfaction Problems
Constraint Satisfaction Problems Frank C. Langbein F.C.Langbein@cs.cf.ac.uk Department of Computer Science Cardiff University 13th February 2001 Constraint Satisfaction Problems (CSPs) A CSP is a high
More informationModelling with Constraints
Masterclass Modelling with Constraints Part 1: Introduction Alan M Frisch Artificial Intelligence Group Dept of Computer Science University of York 12 December 2011 1 Motivation A modern generation of
More informationParallelizing SAT Solver With specific application on solving Sudoku Puzzles
6.338 Applied Parallel Computing Final Report Parallelizing SAT Solver With specific application on solving Sudoku Puzzles Hank Huang May 13, 2009 This project was focused on parallelizing a SAT solver
More informationCourse Summary! What have we learned and what are we expected to know?
Course Summary! What have we learned and what are we expected to know? Overview! Introduction Modelling in MiniZinc Finite Domain Constraint Solving Search Linear Programming and Network Flow Mixed Integer
More informationA Fast and Simple Algorithm for Bounds Consistency of the AllDifferent Constraint
A Fast and Simple Algorithm for Bounds Consistency of the AllDifferent Constraint Alejandro Lopez-Ortiz 1, Claude-Guy Quimper 1, John Tromp 2, Peter van Beek 1 1 School of Computer Science 2 C WI University
More informationCOP4020 Programming Languages. Compilers and Interpreters Robert van Engelen & Chris Lacher
COP4020 ming Languages Compilers and Interpreters Robert van Engelen & Chris Lacher Overview Common compiler and interpreter configurations Virtual machines Integrated development environments Compiler
More informationPropagate the Right Thing: How Preferences Can Speed-Up Constraint Solving
Propagate the Right Thing: How Preferences Can Speed-Up Constraint Solving Christian Bessiere Anais Fabre* LIRMM-CNRS (UMR 5506) 161, rue Ada F-34392 Montpellier Cedex 5 (bessiere,fabre}@lirmm.fr Ulrich
More informationReading: Chapter 6 (3 rd ed.); Chapter 5 (2 nd ed.) For next week: Thursday: Chapter 8
Constraint t Satisfaction Problems Reading: Chapter 6 (3 rd ed.); Chapter 5 (2 nd ed.) For next week: Tuesday: Chapter 7 Thursday: Chapter 8 Outline What is a CSP Backtracking for CSP Local search for
More informationLars Schmidt-Thieme, Information Systems and Machine Learning Lab (ISMLL), University of Hildesheim, Germany, Course on Artificial Intelligence,
Course on Artificial Intelligence, winter term 2012/2013 0/35 Artificial Intelligence Artificial Intelligence 3. Constraint Satisfaction Problems Lars Schmidt-Thieme Information Systems and Machine Learning
More informationGames and Adversarial Search II Alpha-Beta Pruning (AIMA 5.3)
Games and Adversarial Search II Alpha-Beta Pruning (AIMA 5.) Some slides adapted from Richard Lathrop, USC/ISI, CS 7 Review: The Minimax Rule Idea: Make the best move for MAX assuming that MIN always replies
More informationFunctional Logic Programming. Kristjan Vedel
Functional Logic Programming Kristjan Vedel Imperative vs Declarative Algorithm = Logic + Control Imperative How? Explicit Control Sequences of commands for the computer to execute Declarative What? Implicit
More information10/11/2017. Constraint Satisfaction Problems II. Review: CSP Representations. Heuristic 1: Most constrained variable
//7 Review: Constraint Satisfaction Problems Constraint Satisfaction Problems II AIMA: Chapter 6 A CSP consists of: Finite set of X, X,, X n Nonempty domain of possible values for each variable D, D, D
More informationOn the Complexity of Interval-Based Constraint. Networks. September 19, Abstract
On the Complexity of Interval-Based Constraint Networks Rony Shapiro 1, Yishai A. Feldman 2, and Rina Dechter 3 September 19, 1998 Abstract Acyclic constraint satisfaction problems with arithmetic constraints
More informationCS 188: Artificial Intelligence Fall 2011
CS 188: Artificial Intelligence Fall 2011 Lecture 5: CSPs II 9/8/2011 Dan Klein UC Berkeley Multiple slides over the course adapted from either Stuart Russell or Andrew Moore 1 Today Efficient Solution
More informationLogic, Programming and Prolog (Supplement)
Logic, Programming and Prolog (Supplement) Ulf Nilsson Dept of Computer and Information Science Linköping University ulfni@ida.liu.se http://www.ida.liu.se/labs/logpro/ulfni c Ulf Nilsson, November 26,
More informationA Parameterized Local Consistency for Redundant Modeling in Weighted CSPs
A Parameterized Local Consistency for Redundant Modeling in Weighted CSPs Y.C. Law, J.H.M. Lee, and M.H.C. Woo Department of Computer Science and Engineering The Chinese University of Hong Kong, Shatin,
More informationConstructive Search Algorithms
Constructive Search Algorithms! Introduction Historically the major search method for CSPs Reference: S.W.Golomb & L.D.Baumert (1965) Backtrack Programming, JACM 12:516-524 Extended for Intelligent Backtracking
More informationArtificial Intelligence Constraint Satisfaction Problems
Artificial Intelligence Constraint Satisfaction Problems Recall Search problems: Find the sequence of actions that leads to the goal. Sequence of actions means a path in the search space. Paths come with
More informationBound Consistency for Binary Length-Lex Set Constraints
Bound Consistency for Binary Length-Lex Set Constraints Pascal Van Hentenryck and Justin Yip Brown University, Box 1910 Carmen Gervet Boston University, Providence, RI 02912 808 Commonwealth Av. Boston,
More informationA Generic Scheme for Integrating Strong Local Consistencies into Constraint Solvers
A Generic Scheme for Integrating Strong Local Consistencies into Constraint Solvers Julien Vion, Thierry Petit, and Narendra Jussien École des Mines de Nantes, LINA UMR CNRS 6241, 4, rue Alfred Kastler,
More informationTopics in Constraint Programming: Exercises
Topics in Constraint Programming: Exercises K. Kuchcinski, J. Ma luszyński, U. Nilsson October, 999 README.FIRST The objective of the attached exercises is to give some practical experience with: the constraint
More informationAUTOMATED REASONING. Agostino Dovier. Udine, October 1, Università di Udine CLPLAB
AUTOMATED REASONING Agostino Dovier Università di Udine CLPLAB Udine, October 1, 2018 AGOSTINO DOVIER (CLPLAB) AUTOMATED REASONING UDINE, OCTOBER 1, 2018 1 / 28 COURSE PLACEMENT International Master Degree
More informationInconsistency and Redundancy Do Not Imply Irrelevance
From: AAAI Technical Report FS-94-02. Compilation copyright 1994, AAAI (www.aaai.org). All rights reserved. Inconsistency and Redundancy Do Not Imply Irrelevance Eugene C. Freuder Paul D. Hubbe Daniel
More informationSome Applications of Graph Bandwidth to Constraint Satisfaction Problems
Some Applications of Graph Bandwidth to Constraint Satisfaction Problems Ramin Zabih Computer Science Department Stanford University Stanford, California 94305 Abstract Bandwidth is a fundamental concept
More informationA Pearl on SAT Solving in Prolog (extended abstract)
A Pearl on SAT Solving in Prolog (extended abstract) Jacob M. Howe and Andy King 1 Introduction The Boolean satisfiability problem, SAT, is of continuing interest because a variety of problems are naturally
More informationConstraint Technology for Solving Combinatorial Problems: Overview, Results, and Applications. Pierre Flener
Constraint Technology for Solving Combinatorial Problems: Overview, Results, and Applications Pierre Flener Computing Science Division Department of Information Technology Uppsala University, Sweden Acknowledgements:
More informationAnnouncements. Homework 4. Project 3. Due tonight at 11:59pm. Due 3/8 at 4:00pm
Announcements Homework 4 Due tonight at 11:59pm Project 3 Due 3/8 at 4:00pm CS 188: Artificial Intelligence Constraint Satisfaction Problems Instructor: Stuart Russell & Sergey Levine, University of California,
More informationUsing auxiliary variables and implied constraints to model non-binary problems
Using auxiliary variables and implied constraints to model non-binary problems Barbara Smith School of Computer Studies University of Leeds Leeds LS2 9JT England bms@scs.leeds.ac.uk Kostas Stergiou Department
More informationChapter 3: Finite Constraint Domains
Chapter 3: Finite Constraint Domains Where we meet the simplest and yet most difficult constraints, and some clever and not so clever ways to solve them Finite Constraint Domains Constraint Satisfaction
More informationToday. Introduction to Artificial Intelligence COMP 3501 / COMP Lecture 5. Constraint Satisfaction Problems (CSP) CSP Definition
Today COMP 3501 / COMP 4704-4 Lecture 5 Finish up 2-player games Discuss homework Constraint Satisfaction Problems Prof. JGH 318 Constraint Satisfaction Problems (CSP) CSP s are our first work on factored
More information