A CSP Search Algorithm with Reduced Branching Factor

Size: px
Start display at page:

Download "A CSP Search Algorithm with Reduced Branching Factor"

Transcription

1 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, , Israel Abstract. This paper presents an attempt to construct a practical CSP algorithm that assigns a variable with 2 values at every step. Such a strategy has been successfully used for construction of theoretical constraint solvers because it decreases twice the base of the exponent of the upper bound of the search algorithm. We present a solver based on the strategy. The pruning mechanism of the algorithm resembles Forward Checking (FC), therefore we term it 2FC. According to our experimental evaluation, 2FC outperforms FC on graph coloring problems and on non-dense instances of randomly generated CSPs. 1 Introduction Partition of domains is a strategy that allows to reduce the size of the search space explored by a constraint solver. Consider a method based on the strategy that partitions the domain of every variable into subsets of two values (if a domain has an odd size than one subset is a singleton). The algorithm scans all constraint networks obtained by restriction of the domain of every variable to one of the partition classes. If at least one constraint network being scanned is soluble, the algorithm returns the solution found. Otherwise, it reports failure. Assume that the considered constraint network has n variables and the maximal domain size is d. Then a simple analysis shows that the algorithm scans O((d/2) n ) constraint networks if d is even and O(((d+1)/2) n ) if d is odd. Taking into account that constraint networks with domains of size at most two can be solved efficiently [7], we get that these upper bounds determine the search space size of the considered algorithm. Clearly, this size is much smaller than O(d n ) of FC, MAC, and others. The strategy of domain partition has been successfully applied to the design of constraint solvers with exact upper bounds. Sophisticated techniques based on the strategy are presented in [5, 1]. However, the strategy attracted little attention of researchers that investigate practical approaches to construction of complete constraint solvers. This paper introduces an attempt to construct a practical complete constraint solver based on domain partition. The main problem with the strategy

2 is that the resulting algorithm is not guaranteed to have a solution when all variables are assigned. Therefore the algorithm could generate many long insoluble 2-CNs (constraint networks with domain sizes at most 2) which makes the actual time of its work close to the theoretical upper bound. To overcome this difficulty, we introduce the following modifications. Variables are assigned one by one. A variable is assigned with 2 values if its current domain contains at least 2 values. Otherwise, the variable is assigned with one value. To present this situation in a more general form, we say that at every step of the algorithm, a variable v is assigned with a subset S of its current domain. Whenever a variable v is assigned with a set of values S, the algorithm removes all values of unassigned variables that are incompatible with all the values of S. The algorithm backtracks when the current domain of some variable becomes empty. Whenever a variable v is assigned with a set {val 1, val 2 }, a new conflict is added between any pair ( v 1, val 1, v 2, val 2 ) of values of different unassigned variables v 1 and v 2 such that v 1, val 1 conflicts with v, val 1 and v 2, val 2 conflicts with v, val 2. The proposed algorithm resembles FC with the main difference that a variable can be assigned with 2 values. Therefore we call the algorithm 2FC. The main property of 2FC is that whenever all variables are assigned, the resulting 2-CN is guaranteed to have a solution. In our experimental analysis, we compared 2FC to FC. The main experimental observation is that 2FC strictly outperforms FC on graph k-coloring problem. The rate of runtime improvement changes from a factor of 2 to 10. 2FC also outperforms FC on randomly generated constraint networks with low density. The experimental result suggest that the proposed approach could be useful in the area of graph coloring. Another possible application of 2FC follows from the fact that it returns a 2-CN which could have many solutions that can be efficiently generated. Therefore the algorithm could be useful for dynamic environments where constraints frequently change: it might allow quick replacing of an inconsistent solution by another solution without performing search. The rest of the paper is organized as follows. Section 2 provides necessary background. Section 3 presents the 2FC algorithm. Section 4 proves correctness of the 2FC algorithm. Section 5 demonstrates result of experimental evaluation. Section 6 outlines directions of further investigation. 2 Preliminaries The model we consider in the paper is binary constraint network (CN). A CN Z = V, D, C is a triple consisting of a set of variables V, a set of domains D and a set of constraints C. Let V = {v 1,..., v n }. Then D = {D(v 1 ),..., D(v n )},

3 where D(v i ) is the domain of values of v i, C = {C(v i, v j ) i j, 1 i, j n}, where C(v i, v j ) D(v i ) D(v j ) is the set of all compatible pairs of values of v i and v j. We refer to the parts of Z as V Z, D Z, and C Z. To emphasize that a value val belongs to the domain of a variable v, we refer to this value as v, val. In this paper we consider a special case of constraint network, 2-CN, that is a CN for which every domain has at most 2 values. Given a CN Z as above, the task of Constraint Satisfaction Problem (CSP) is to find a set P = { v 1, val 1,..., v n, val n } such that every val i belongs to the domain of v i and all values of P are mutually compatible (consistent), or to report that there is no such a set. The set P is called a solution of Z. A typical CSP search algorithm like Forward Checking (FC) [4] usually creates a solution in an iterative manner. During its work it maintains a consistent set of values of a subset of variables and tries to extend it to a solution. This set of values is called a partial solution. Variables whose values are contained in the partial solution are called assigned. Other variables are called unassigned. The present paper introduces an algorithm that can assign a variable with more than one value. We refer to a set of assigned values maintained by the algorithm as an extended partial solution. When all variables are assigned, the algorithm has an extended solution. The following notion is frequently used further in the paper. Definition 1. Let Z be a CN and let S be a set of values of Z. A subnetwork Z of Z induced by S is obtained as follows: take to Z only those variables of Z whose values appear in S; the domain of every variable v of Z is the intersection of the domain of v in Z with S; two values are compatible in Z if and only if they are compatible in Z. To illustrate the notion, consider Figure 1. On the left side of the figure there is a CN Z. Ellipses represent variables, black points represent values, conflicting values are connected by arcs. The CN Z is a subnetwork of Z induced by the set of values encircled by additional circles. Note that Z does not contain variable V 4 because no value of the domain of V 4 is included in the inducing set of values. Also note that there are conflicts between V 1, 2 and V 2, 2 and between V 2, 3 and V 3, 3 because these conflicts appear in the original CN. Finally, we recall the notions of directional arc and path-consistency. Definition 2. A value v i, val is consistent with a set of values S if it is compatible with at least one value of S. Definition 3. A CN Z is called directionally arc-consistent with respect to an order v 1,..., v n of its variables if every value v i, val is consistent with a domain of a variable v k whenever k < i. Definition 4. A pair of values { v i, val i, v k, val k } is consistent with a set of values S if at least one value of S is compatible with both v i, val i and v k, val k.

4 Fig. 1. Illustration of a CN induced by a set of values. Definition 5. A CN Z is called directionally path-consistent with respect to the order v 1,..., v n of its variables if every pair of compatible values { v i, val i, v k, val k } is consistent with the domain of a variable v l whenever l < i and l < k. 3 The 2FC Algorithm In this section we introduce a modification of FC that explores much smaller search space than FC. In particular, processing a CN with n variables and maximal domain size d, the algorithm generates a search tree with O((d/2) n ) nodes if d is even and O(((d + 1)/2) n ) nodes if d is odd. The first 3 steps of the modification are the following. 1. Variables are assigned with subsets of their current domains. In particular, let v be the variable being assigned currently. If the current domain of v is of size at least 2 then v is assigned with a subset S of its domain such that S = 2. Otherwise, if the domain is a singleton, v is assigned with the domain itself. 2. Once a variable v is assigned with a set S, the algorithm removes from the domains of unassigned variables all the values that are incompatible with all the values of S. 3. Unassigning a variable v at the backtrack stage, the algorithm removes from the current domain of v all values of the set assigned to v. These 3 steps naturally generalize FC, providing the ability to assign a variable with one value as well as with two values. However the resulting algorithm has an essential drawback: when all variables are assigned, the CN induced by the assigned values may be insoluble and this is in contrast to the standard FC that has a solution when all variables are assigned. Thus the modified FC has a restricted ability of early recognition of dead-ends. To illustrate this drawback, consider a CN with variables {v 1, v 2, v 3, v 4 } and the domain of every variable {1, 2, 3}. Every 2 variables are connected by the

5 inequality constraint. Assume that the algorithm assigns v 1 with {1, 2}. No value is deleted from the domains of the unassigned variables because there are values incompatible with 1, values incompatible with 2, but none that are incompatible with both of them. In the same way, the algorithm can assign v 2, v 3, v 4 with {1, 2}. The CN induced by the assigned values is clearly insoluble. The following claim (proved in the next section) suggests a simple way to overcome the drawback. Lemma 1. Let Z be a 2-CN with no empty domain which is directionally arcconsistent and directionally path consistent with respect to an order v 1,..., v n of variables of Z. Then Z is soluble. 1 Thus, to guarantee that whenever all the variables are assigned, the CN induced by the assigned values is soluble, it is enough to ensure that it is directionally arc-consistent and directionally path-consistent. Note that directional arc-consistency is already ensured by the modification number 2 described above. To ensure directional path-consistency, it is possible to perform the following operation: Every time a variable v is assigned with a set S, add a conflict between every pair P of compatible assignments of future variables such that P is inconsistent with S. We call the resulting algorithm 2FC. Algorithm 1 introduces its pseudocode. The algorithm is presented in the form of a recursive procedure that gets a CN Z as input. In the first 6 lines the termination conditions are checked. In particular, if Z has no variables, the procedure returns (lines 1-3), if Z has a variable with the empty domain, the procedure returns F AIL. In line 7 a variable u is selected. In line 8 a CN Z is created by removing from Z the variable u and all its values. Before exploring the domain of u, the algorithm removes from it all values that conflict with domains of some other unassigned variable (line 9). The loop described in lines explores the domain of u. In lines a subset S of the current domain of u is selected. The set S contains 2 values unless there is only one value in the current domain of u. After u is assigned by S, the algorithm removes from the domains of variables of Z all values inconsistent with S (line 16). If the size of S is 2, the algorithm adds conflicts between compatible pairs of values of Z that are inconsistent with S (lines 18-20). Then the function 2FC is applied recursively to Z (line 22). If the output of the recursive application is not F AIL, the procedure returns the union of the output with S (line 24). (The operation is correct because the output of 2FC is either F AIL or a set of values.) Otherwise, if the recursive application returns F AIL, the algorithm removes S from the domain of u (line 26) and starts a new iteration of the loop or finishes it if the domain of u is wiped out. In the latter case the algorithm returns F AIL in line 28. Note that when 2FC returns a set of values, a solution can from it by the process described in the proof of Lemma 1. (See the next section.) 1 Note that the suggested sufficient condition of solubility of 2-CNs is weaker than path-consistency whose sufficiency is proved in [7].

6 Algorithm 1 function 2FC(Z) 1: if V Z = then 2: Return 3: end if 4: if There is a variable with the empty domain then 5: Return F AIL 6: end if 7: Select a variable u 8: Z Z \ u 9: Remove from D z(u) all values that are inconsistent with domains of unassigned variables 10: while D z(u) do 11: if D z(u) 2 then 12: S {val 1, val 2}, where val 1 and val 2 are two values of D z(u) 13: else 14: S D z(u) 15: end if 16: Remove from the domains of Z the values that are inconsistent with S 17: if S 2 then 18: for every pair { v 1, val 1, v 2, val 2 } of compatible values of Z that is inconsistent with S do 19: C Z (v 1, v 2) C Z (v 1, v 2) \ {{ v 1, val 1, v 2, val 2 }} 20: end for 21: end if 22: R 2F C(Z ) 23: if R F AIL then 24: Return R S 25: end if 26: D Z(u) = D Z(u) \ S 27: end while 28: Return F AIL

7 Consider an example of application of 2FC. Let Z be the CN described above with variables {v 1,..., v 4 }, each domain equal {1, 2, 3} and variables connected by inequality constraint. Assume that v 1 is assigned with {1, 2}. Then 2FC adds conflicts between every pair of values 1 and 2 of different unassigned variables, that is between v 2, 1 and v 3, 2, between v 2, 2 and v 3, 1 and so on. Assume that in the next iteration, variable v 2 is assigned with {1, 2}. Then values 1 and 2 are deleted from the current domains of v 3 and v 4. In the next iteration, trying to assign v 3, 2FC backtracks, because the only remaining values v 3, 3 wipes out the current domain of v 4. As a result of backtrack, 2FC unassigns v 2. The only possible next assignment is {3}. After the assignment, 2FC removes 3 from the domains of v 3 and v 4. In the next iteration, 2FC tries again to assign v 3, but backtracks because both remaining values 1 and 2 wipe out the domain of v 4. This time, after unassigning v 2, the current domain of v 2 is finished; therefore 2FC backtracks again and changes the assignment of v 1 to {3}. In a few iteration the algorithm finishes with FAIL because of wiping out of the current domain of v 1. A drawback of 2FC is large overhead spent to addition of conflicts between values of unassigned variables. It is not hard to show that O(n 2 d 2 ) additional consistency checks per iteration must be spent. The overhead can be reduced if we observe that 2FC checks compatibility of values of two variables only if one of these variables is either assigned or selected to be assigned. Based on the observation we suggest a procedure of adding new conflicts based on the notion of critical value. Let u be a variable assigned with a set {val 1, val 2 }. We say that u, val 1 is critical with respect to a value v, val if v, val conflicts with u, val 2. Instead of performing lines in Algorithm 1, new conflicts can be added in the following lazy way. Whenever a new variable v is selected to be assigned, a conflict is added between every pair of compatible values v, val, w, val that satisfies the following conditions: w is an unassigned variable other than u; val belongs to the current domain of w; w, val conflicts with at least one critical value with respect to v, val. One can calculate that the suggested technique of updating of constraints takes O(n 2 d) consistency checks per iteration. We use the technique in our implementation of 2FC. We decided not to describe the method directly in the pseudocode because it reduces readability of the code and makes the correctness proof more complicated. 4 Theoretical Analysis. In this section we prove correctness of 2FC. We start from proving Lemma 1. Proof of Lemma 1 By induction on n, the number of variables of Z. It is trivial for n = 1. For n > 1, assign v n with a value val n that belongs to its domain. Let Z be a 2-CN obtained from Z by removing v n and deleting from the domains of the rest of variables all values that are incompatible with v n, val n. Observe the following properties of Z.

8 The domains of all variables of Z are not empty. Really, an empty domain of some variable v in Z would mean that v n, val n conflicts with all the values of the domain of v in Z in contradiction to the directional arc-consistency of Z. Z is directionally arc-consistent with respect to the order v 1,..., v n 1. Assume by contradiction that a value v k, val is inconsistent with the domain of v i, i < k. If the domain of v i in Z is the same as in Z, v k, val is inconsistent with v i in Z in contradiction to our assumption about directional arc-consistency of Z. Otherwise, one of the values of the domain of v i is incompatible with v n, val n, the other is incompatible with v k, val, while v n, val n and v k, val are compatible. In this case we get contradiction with out assumption about directional path-consistency of Z. Z is directionally path-consistent. For otherwise, if we have two compatible values v k, val k and v l, val l that wipe out the domain of some variable v i, (i < k, l), the same situation occurs in Z in contradiction to directional path-consistency of Z. Thus Z satisfies all conditions of the lemma and has n 1 variables, therefore it is soluble by the induction assumption. Let S be a solution of Z. Note that all values of Z are compatible with v n, val n. Therefore S { v n, val n } is a solution of Z.. The next lemma claims that every extended partial solution generated by 2FC satisfies the conditions of Lemma 1. Lemma 2. Every extended partial solution generated by 2FC induces a 2-CN without empty domains, directionally arc-consistent with respect to the chronological order of assignment of variables, and directionally path consistent with respect to the same order. Proof. By induction on the length n of the extended partial solution. It is clear that the lemma is valid for n = 1. For n > 1, let S be the considered extended partial solution and let v 1,..., v n be the order according to which the variables were assigned. By the induction assumption, the extended partial solution obtained by removing v n satisfies the conditions of the lemma. Therefore, if S violates these conditions then the values assigned to v n violate either the directional arc-consistency or the directional path-consistency. Assume that the former holds. That is, a value val of assigned to v n is inconsistent with all values assigned to v k (k < n). However, such a situation cannot happen because 2FC would remove val from the current domain of v n when v k has been assigned. For the latter, assume that a value val assigned to v n, together with a compatible value val assigned to some v k are inconsistent with the set of values assigned to some v i (i < k, n). However, such a situation cannot happen as well because 2FC would add a conflict between v k, val and v n, val when v i was selected to be assigned. Thus the lemma holds for S. Now we are ready to claim the correctness of 2FC. Theorem 1. The 2FC algorithm is correct.

9 Proof. To prove correctness, we have to prove that the algorithm terminates and also that it is sound and complete. Termination is easy to verify by induction. If the underlying CN has 0 variables, the algorithm clearly terminates. Otherwise, 2FC selects a variable, assigns it with some partition class of its domain, and applies recursively to a CN created by the rest of variables (with updated constraints). By the induction assumption, every recursive application eventually finishes and also the number of partition classes in the first variable is finite so the algorithm terminates. Soundness (solubility of an extended solution returned by 2FC) directly follows from Lemmas 1 and 2. It follows from termination and soundness that 2FC always returns F AIL when processes an insoluble CN. It remains to prove completeness, that is to show that 2FC always returns a solution when processes a soluble CN. In essence, all we have to show is that the additional conflicts generated by 2FC do not cause missing of a solution. We prove completeness by induction on the number n of variables of the CN. Completeness follows immediately for n = 1. For n > 1, let v be the variable that 2FC selects to be assigned first. If the underlying CN is soluble then 2FC eventually assigns v with a set of values S that belongs to an extended solution. Then 2FC removes from the domains of the rest of variables all values that are inconsistent with S and adds conflicts between pairs of compatible values that wipe S out. Note that neither the removed values can be in the same solution with any value of S nor pairs of values that are made incompatible. Therefore 2FC is applied recursively to a soluble CN where it finds an extended solution by the induction assumption. 5 Experimental Evaluation It is not hard to show that 2FC explores O( d/2 n ) nodes of the search tree and its running time is the bound multiplied by a polynomial. Clearly, this bound is much smaller than O(d n ) upper bound for FC. However, we are interested to evaluate the practical merits of 2FC. To do this we compare in this section actual running times of 2FC and FC. We implemented the algorithms in Microsoft Visual C and tested them on a computer with CPU 2.4GHz and 0.2GB RAM. We used two measures of computation effort: the number of nodes visited and runtime (in seconds). For every tuple of parameters of the tested instances, the computation effort measures were obtained as average of 50 runs. In our implementation, variables are ordered by the Fail-First heuristic [6] which takes first a variable with the smallest domain. The values of the variable being assigned are ordered according to the min-conflict heuristic, that is, values that conflict with the less number of values in the domains of unassigned variables are assigned first. (FC assigns the values one by one, while 2FC assigns them in pairs.)

10 We compared these algorithms on graph k-coloring problem and on randomly generated binary CNs. Given a graph G with n vertices and k-colors, the CN that encodes the k-coloring problem for G has n variables corresponding to the vertices of G. The domain of every variable is {1,..., k}. Pairs of variables that correspond to adjacent vertices of G are connected by the inequality constraint. We generated 3 sets of instances: the first with 60 and 6 colors, the second with 45 vertices and 8 colors and the third with 30 vertices and 10 colors. For every set of instances we tried densities from 10% to 90% by steps of 5%. The results of comparison of 2FC and FC on the first set of instances are shown on Figures 2 and 3. In this set of instances the phase transition region falls to the area of small density. Clearly, 2FC performs better than FC on this set of instances. Fig. 2. 2FC vs. FC for graphs with 60 vertices and 6 colors (nodes visited) Fig. 3. 2FC vs. FC for graphs with 60 vertices and 6 colors (runtimes) The results of comparison of 2FC and FC on the second set of instances are shown on Figures 4 and 5. In this experiment the graph that are most hard for coloring have an average density. Note that for denser graphs the rate of improvement of 2FC with respect to FC grows. The results of comparison of 2FC and FC on the third set of instances are shown on Figures 6 and 7. In this experiments the phase transition region falls to the area of dense graphs. Note that here 2FC exhibits a larger factor of improvement as compared to the previous cases. Comparing 2FC and FC on randomly generated CNs, we generated them using 4 parameters: the number of variables, the domain size, density, and tight-

11 Fig. 4. 2FC vs. FC for graphs with 45 and 8 colors (nodes visited) Fig. 5. 2FC vs. FC for graphs with 45 and 8 colors (runtimes) Fig. 6. 2FC vs. FC for graphs with 30 and 10 colors (nodes visited) Fig. 7. 2FC vs. FC for graphs with 30 and 10 colors (runtimes)

12 ness [9]. To generate a set of instances, we fixed the number of variables, the domain size, and the density and varied the tightness from 10% to 90% by steps of 5%. In the first set of experiments, the generated CNs have 60 variables domains of size 10 and density 10%. Figures 8 and 9 compare the number of nodes visited and the runtimes, respectively. We can see that 2FC outperforms FC on this set of instances. Fig. 8. 2FC vs. FC for CNs with 60 variables, domain size 10, and density 10 (nodes visited) Fig. 9. 2FC vs. FC for CNs with 60 variables, domain size 10, and density 10 (runtimes) Unfortunately, on denser instances of randomly generated CNs, 2FC works worse than FC. Moreover, 2FC becomes worse and worse compared to FC as the underlying CN gets denser. To see this, consider the following two sets of sets of experiments (Figures 10, 11, 12, and 13). On the set of instances with density 0.2, 2FC continues to perform better in the number of nodes visited while spends more runtime. However, on the instances with density 0.8, it looks worse with respect to the both measures. Thus, according to our experiments, 2FC performs better than FC on graph coloring problems and non-dense instances of randomly generated CN, while works worse on denser random CNs.

13 Fig FC vs. FC for CNs with 50 variables, domain size 10, and density 20 (nodes visited) Fig FC vs. FC for CNs with 50 variables, domain size 10, and density 20 (runtimes) Fig FC vs. FC for CNs with 40 variables, domain size 10, and density 80 (nodes visited) Fig FC vs. FC for CNs with 40 variables, domain size 10, and density 80 (runtimes)

14 6 Discussion We introduced the 2FC algorithm which is based on the idea of assigning a variable with two values instead of one. In this section we discuss possible applications of the proposed approach and directions of further development. According to our experimental results, 2FC performs very well on graph k- coloring problem. This result suggests the possibility of combining the proposed approach (of assigning a vertex with 2 colors) with branch-and-bound algorithms that find chromatic numbers of graphs (like [2]). The proposed approach could also be useful in the area of resource allocation problems because many of such problems, like timetabling [8], have binary constraint networks with inequality constraints. On the other hand, 2FC is not very successful on random constraint networks. A natural way of improvement of its pruning ability is replacing FC by MAC, that is design of 2MAC. We expect that 2MAC would behave better with respect to MAC than 2FC does with respect to FC. This is because maintaining arcconsistency has a better ability than FC to utilize the conflicts that are added after every new assignment. An interesting direction of further research is the application of the approach to CNs with non-binary constraints. Note that the application cannot be straightforward because solving a 2-CN with non-binary constraints is NPcomplete in general (it can be shown by reduction from SAT). A possible way to recognize dead-ends early is maintaining the current extended partial solution S together with a solution T of the CN induced by S. Every time when S grows by assigning a new variable, T must grow also. Solving a 2-CN with non-binary constraints at every iteration of the algorithm could require too much time, therefore one has to develop heuristic methods of quick solving of such CNs. 2FC could also be useful in dynamic environments where solutions are frequently discarded because of updating of constraints. The set of values returned by 2FC can contain many solutions and they can be efficiently extracted. Therefore, there is a chance that once a single solution is discarded, another solution could be found instantly without applying search. Finally, there is an intriguing connection of the proposed approach with the technique of bucket elimination [3]. In its simplest form, the principle of bucket elimination states that whenever there is an unassigned variable v conflicting with at most two other unassigned variables, variable v can be eliminated. To preserve consistency, conflicts must be added between the pairs of values that wipe out the current domain of v. Note that the described bucket elimination technique as well as assigning a variable with two values have the following common paradigm: assign a variable v with a subset s of its domain such that every minimal consistent partial solution on the future variables that wipes s out has the size at most 2. Bucket elimination is an extremal realization of the paradigm where a variable is assigned with the whole domain. Assigning a variable with only one value is another case of extremal realization. Then assigning a variable with two values can be considered as some intermediate case. Continuing the reasoning, we derive that there may be other intermediate

15 realizations of the paradigm. For example, a more flexible version of bucket elimination can be considered, where a variable is assigned with a subset of its values that conflict with at most two unassigned variables. References 1. O. Angelsmark and P. Jonsson. Improved algorithms for counting solutions in constraint satisfaction problems. In CP 2003, pages 81 95, M. Caramia and P. Dell Olmo. Constraint propagation in graph coloring. Journal of Heuristics, 8:83 107, R. Dechter. Bucket elimination: A unifying framework for reasoning. Artificial Intelligence, 113:41 85, R. Dechter. Constraint Processing. Morgan Kaufmann Publishers, D. Eppstein. Improved algorithms for 3-coloring, 3-edge coloring and constraint satisfaction. In SODA-2001, pages , R. M. Haralick and G.L. Elliott. Increasing tree search efficiency for constraint satisfaction problems. Artificial Intelligence, 14: , P. Jeavons, D. Cohen, and M. Cooper. Constraints, consistency, and closure. Artificial Intelligence, 101: , A. Meisels and A. Schaerf. Modelling and solving employee timetabling problems. Annals of Mathematics and Artificial Intelligence, 39:41 59, P. Prosser. An empirical study of phase transition in binary constraint satisfaction problems. Artificial Intelligence, 81:81 109, 1996.

Reduced branching-factor algorithms for constraint satisfaction problems

Reduced branching-factor algorithms for constraint satisfaction problems Reduced branching-factor algorithms for constraint satisfaction problems 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 information

Conflict based Backjumping for Constraints Optimization Problems

Conflict based Backjumping for Constraints Optimization Problems Conflict based Backjumping for Constraints Optimization Problems Roie Zivan and Amnon Meisels {zivanr,am}@cs.bgu.ac.il Department of Computer Science, Ben-Gurion University of the Negev, Beer-Sheva, 84-105,

More information

Conflict Directed Backjumping for Max-CSPs

Conflict Directed Backjumping for Max-CSPs Conflict Directed Backjumping for Max-CSPs Roie Zivan and Amnon Meisels, Department of Computer Science, Ben-Gurion University of the Negev, Beer-Sheva, 84-105, Israel Abstract Max-CSPs are Constraint

More information

A New Algorithm for Singleton Arc Consistency

A 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 information

Dynamic Ordering for Asynchronous Backtracking on DisCSPs

Dynamic Ordering for Asynchronous Backtracking on DisCSPs Dynamic Ordering for Asynchronous Backtracking on DisCSPs Roie Zivan and Amnon Meisels, Department of Computer Science, Ben-Gurion University of the Negev, Beer-Sheva, 84-105, Israel No Institute Given

More information

Lecture 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 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 information

Some Applications of Graph Bandwidth to Constraint Satisfaction Problems

Some 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 information

Unifying and extending hybrid tractable classes of CSPs

Unifying 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 information

3 No-Wait Job Shops with Variable Processing Times

3 No-Wait Job Shops with Variable Processing Times 3 No-Wait Job Shops with Variable Processing Times In this chapter we assume that, on top of the classical no-wait job shop setting, we are given a set of processing times for each operation. We may select

More information

Synchronous vs Asynchronous search on DisCSPs

Synchronous vs Asynchronous search on DisCSPs Synchronous vs Asynchronous search on DisCSPs Roie Zivan and Amnon Meisels {zivanr,am}@cs.bgu.ac.il Department of Computer Science, Ben-Gurion University of the Negev, Beer-Sheva, 84-105, Israel Abstract.

More information

Constraint Satisfaction Problems

Constraint 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 information

The strong chromatic number of a graph

The strong chromatic number of a graph The strong chromatic number of a graph Noga Alon Abstract It is shown that there is an absolute constant c with the following property: For any two graphs G 1 = (V, E 1 ) and G 2 = (V, E 2 ) on the same

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems Search and Lookahead Bernhard Nebel, Julien Hué, and Stefan Wölfl Albert-Ludwigs-Universität Freiburg June 4/6, 2012 Nebel, Hué and Wölfl (Universität Freiburg) Constraint

More information

Paths, Flowers and Vertex Cover

Paths, Flowers and Vertex Cover Paths, Flowers and Vertex Cover Venkatesh Raman M. S. Ramanujan Saket Saurabh Abstract It is well known that in a bipartite (and more generally in a König) graph, the size of the minimum vertex cover is

More information

Mathematical Programming Formulations, Constraint Programming

Mathematical Programming Formulations, Constraint Programming Outline DM87 SCHEDULING, TIMETABLING AND ROUTING Lecture 3 Mathematical Programming Formulations, Constraint Programming 1. Special Purpose Algorithms 2. Constraint Programming Marco Chiarandini DM87 Scheduling,

More information

Paths, Flowers and Vertex Cover

Paths, Flowers and Vertex Cover Paths, Flowers and Vertex Cover Venkatesh Raman, M.S. Ramanujan, and Saket Saurabh Presenting: Hen Sender 1 Introduction 2 Abstract. It is well known that in a bipartite (and more generally in a Konig)

More information

Constraint Satisfaction Problems. Chapter 6

Constraint 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 information

In the last six years, since the year 2000, the community of researchers in the field have had at least one yearly workshop. These activities have

In the last six years, since the year 2000, the community of researchers in the field have had at least one yearly workshop. These activities have Preface DistributedsearchbyagentsisanimportanttopicofdistributedAIandhas not been treated thoroughly as such. While the scope of work on multi-agent systems has grown steadily over the last decade, very

More information

Scan Scheduling Specification and Analysis

Scan Scheduling Specification and Analysis Scan Scheduling Specification and Analysis Bruno Dutertre System Design Laboratory SRI International Menlo Park, CA 94025 May 24, 2000 This work was partially funded by DARPA/AFRL under BAE System subcontract

More information

Chronological Backtracking Conflict Directed Backjumping Dynamic Backtracking Branching Strategies Branching Heuristics Heavy Tail Behavior

Chronological Backtracking Conflict Directed Backjumping Dynamic Backtracking Branching Strategies Branching Heuristics Heavy Tail Behavior PART III: Search Outline Depth-first Search Chronological Backtracking Conflict Directed Backjumping Dynamic Backtracking Branching Strategies Branching Heuristics Heavy Tail Behavior Best-First Search

More information

Constraint 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 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 information

Matching Algorithms. Proof. If a bipartite graph has a perfect matching, then it is easy to see that the right hand side is a necessary condition.

Matching Algorithms. Proof. If a bipartite graph has a perfect matching, then it is easy to see that the right hand side is a necessary condition. 18.433 Combinatorial Optimization Matching Algorithms September 9,14,16 Lecturer: Santosh Vempala Given a graph G = (V, E), a matching M is a set of edges with the property that no two of the edges have

More information

Constraint (Logic) Programming

Constraint (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 information

Message delay and DisCSP search algorithms

Message delay and DisCSP search algorithms Message delay and DisCSP search algorithms Roie Zivan and Amnon Meisels {zivanr,am}@cs.bgu.ac.il Department of Computer Science, Ben-Gurion University of the Negev, Beer-Sheva, 84-105, Israel Abstract.

More information

General Methods and Search Algorithms

General Methods and Search Algorithms DM811 HEURISTICS AND LOCAL SEARCH ALGORITHMS FOR COMBINATORIAL OPTIMZATION Lecture 3 General Methods and Search Algorithms Marco Chiarandini 2 Methods and Algorithms A Method is a general framework for

More information

ARTIFICIAL INTELLIGENCE (CS 370D)

ARTIFICIAL INTELLIGENCE (CS 370D) Princess Nora University Faculty of Computer & Information Systems ARTIFICIAL INTELLIGENCE (CS 370D) (CHAPTER-6) CONSTRAINT SATISFACTION PROBLEMS Outline What is a CSP CSP applications Backtracking search

More information

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 22.1 Introduction We spent the last two lectures proving that for certain problems, we can

More information

On the Space-Time Trade-off in Solving Constraint Satisfaction Problems*

On the Space-Time Trade-off in Solving Constraint Satisfaction Problems* Appeared in Proc of the 14th Int l Joint Conf on Artificial Intelligence, 558-56, 1995 On the Space-Time Trade-off in Solving Constraint Satisfaction Problems* Roberto J Bayardo Jr and Daniel P Miranker

More information

Variable and Value Elimination in Binary Constraint Satisfaction via Forbidden Patterns

Variable and Value Elimination in Binary Constraint Satisfaction via Forbidden Patterns Variable and Value Elimination in Binary Constraint Satisfaction via Forbidden Patterns David A. Cohen a, Martin C. Cooper b,, Guillaume Escamocher c, Stanislav Živný d a Dept. of Computer Science, Royal

More information

Decreasing the Diameter of Bounded Degree Graphs

Decreasing the Diameter of Bounded Degree Graphs Decreasing the Diameter of Bounded Degree Graphs Noga Alon András Gyárfás Miklós Ruszinkó February, 00 To the memory of Paul Erdős Abstract Let f d (G) denote the minimum number of edges that have to be

More information

CSCLP 2005 Joint ERCIM/CoLogNET International Workshop on Constraint Solving and Constraint Logic Programming

CSCLP 2005 Joint ERCIM/CoLogNET International Workshop on Constraint Solving and Constraint Logic Programming CSCLP 2005 Joint ERCIM/CoLogNET International Workshop on Constraint Solving and Constraint Logic Programming Mats Carlsson, François Fages, Brahim Hnich, and Francesca Rossi (eds.) Workshop Proceedings

More information

Outline. Best-first search

Outline. Best-first search Outline Best-first search Greedy best-first search A* search Heuristics Local search algorithms Hill-climbing search Beam search Simulated annealing search Genetic algorithms Constraint Satisfaction Problems

More information

Unrestricted Nogood Recording in CSP search

Unrestricted Nogood Recording in CSP search Unrestricted Nogood Recording in CSP search George Katsirelos and Fahiem Bacchus Department of Computer Science, University Of Toronto, Toronto, Ontario, Canada [gkatsi,fbacchus]@cs.toronto.edu Abstract.

More information

Consistency and Set Intersection

Consistency and Set Intersection Consistency and Set Intersection Yuanlin Zhang and Roland H.C. Yap National University of Singapore 3 Science Drive 2, Singapore {zhangyl,ryap}@comp.nus.edu.sg Abstract We propose a new framework to study

More information

The Encoding Complexity of Network Coding

The Encoding Complexity of Network Coding The Encoding Complexity of Network Coding Michael Langberg Alexander Sprintson Jehoshua Bruck California Institute of Technology Email: mikel,spalex,bruck @caltech.edu Abstract In the multicast network

More information

Constraint Satisfaction Problems (CSPs)

Constraint Satisfaction Problems (CSPs) 1 Hal Daumé III (me@hal3.name) Constraint Satisfaction Problems (CSPs) Hal Daumé III Computer Science University of Maryland me@hal3.name CS 421: Introduction to Artificial Intelligence 7 Feb 2012 Many

More information

Theorem 2.9: nearest addition algorithm

Theorem 2.9: nearest addition algorithm There are severe limits on our ability to compute near-optimal tours It is NP-complete to decide whether a given undirected =(,)has a Hamiltonian cycle An approximation algorithm for the TSP can be used

More information

Propagate the Right Thing: How Preferences Can Speed-Up Constraint Solving

Propagate 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 information

Path Consistency on Triangulated Constraint Graphs*

Path Consistency on Triangulated Constraint Graphs* Path Consistency on Triangulated Constraint Graphs* Christian Bliek ILOG 1681 Route des Dolines 06560 Valbonne, France bliekqilog.fr Djamila Sam-Haroud Artificial Intelligence Laboratory Swiss Federal

More information

Lecture 6: Constraint Satisfaction Problems (CSPs)

Lecture 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 information

Rigidity, connectivity and graph decompositions

Rigidity, connectivity and graph decompositions First Prev Next Last Rigidity, connectivity and graph decompositions Brigitte Servatius Herman Servatius Worcester Polytechnic Institute Page 1 of 100 First Prev Next Last Page 2 of 100 We say that a framework

More information

Partitions and Packings of Complete Geometric Graphs with Plane Spanning Double Stars and Paths

Partitions and Packings of Complete Geometric Graphs with Plane Spanning Double Stars and Paths Partitions and Packings of Complete Geometric Graphs with Plane Spanning Double Stars and Paths Master Thesis Patrick Schnider July 25, 2015 Advisors: Prof. Dr. Emo Welzl, Manuel Wettstein Department of

More information

arxiv:cs/ v1 [cs.ds] 20 Feb 2003

arxiv:cs/ v1 [cs.ds] 20 Feb 2003 The Traveling Salesman Problem for Cubic Graphs David Eppstein School of Information & Computer Science University of California, Irvine Irvine, CA 92697-3425, USA eppstein@ics.uci.edu arxiv:cs/0302030v1

More information

On the Space-Time Trade-off in Solving Constraint Satisfaction Problems*

On the Space-Time Trade-off in Solving Constraint Satisfaction Problems* On the Space-Time Trade-off in Solving Constraint Satisfaction Problems* Roberto J. Bayardo Jr. and Daniel P. Miranker Department of Computer Sciences and Applied Research Laboratories The University of

More information

Decomposable Constraints

Decomposable 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 information

Outline. Best-first search

Outline. Best-first search Outline Best-first search Greedy best-first search A* search Heuristics Local search algorithms Hill-climbing search Beam search Simulated annealing search Genetic algorithms Constraint Satisfaction Problems

More information

Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching. 1 Primal/Dual Algorithm for weighted matchings in Bipartite Graphs

Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching. 1 Primal/Dual Algorithm for weighted matchings in Bipartite Graphs CMPUT 675: Topics in Algorithms and Combinatorial Optimization (Fall 009) Lecture 4: Primal Dual Matching Algorithm and Non-Bipartite Matching Lecturer: Mohammad R. Salavatipour Date: Sept 15 and 17, 009

More information

Search Algorithms in Type Theory

Search Algorithms in Type Theory Search Algorithms in Type Theory James L. Caldwell Ian P. Gent Judith Underwood Revised submission to Theoretical Computer Science: Special Issue on Proof Search in Type-theoretic Languages May 1998 Abstract

More information

On Covering a Graph Optimally with Induced Subgraphs

On Covering a Graph Optimally with Induced Subgraphs On Covering a Graph Optimally with Induced Subgraphs Shripad Thite April 1, 006 Abstract We consider the problem of covering a graph with a given number of induced subgraphs so that the maximum number

More information

Constraint satisfaction problems. CS171, Winter 2018 Introduction to Artificial Intelligence Prof. Richard Lathrop

Constraint satisfaction problems. CS171, Winter 2018 Introduction to Artificial Intelligence Prof. Richard Lathrop Constraint satisfaction problems CS171, Winter 2018 Introduction to Artificial Intelligence Prof. Richard Lathrop Constraint Satisfaction Problems What is a CSP? Finite set of variables, X 1, X 2,, X n

More information

Andrew Davenport and Edward Tsang. fdaveat,edwardgessex.ac.uk. mostly soluble problems and regions of overconstrained, mostly insoluble problems as

Andrew Davenport and Edward Tsang. fdaveat,edwardgessex.ac.uk. mostly soluble problems and regions of overconstrained, mostly insoluble problems as An empirical investigation into the exceptionally hard problems Andrew Davenport and Edward Tsang Department of Computer Science, University of Essex, Colchester, Essex CO SQ, United Kingdom. fdaveat,edwardgessex.ac.uk

More information

Validating Plans with Durative Actions via Integrating Boolean and Numerical Constraints

Validating 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 information

CSE 473: Artificial Intelligence

CSE 473: Artificial Intelligence CSE 473: Artificial Intelligence Constraint Satisfaction Luke Zettlemoyer Multiple slides adapted from Dan Klein, Stuart Russell or Andrew Moore What is Search For? Models of the world: single agent, deterministic

More information

Exact Algorithms Lecture 7: FPT Hardness and the ETH

Exact Algorithms Lecture 7: FPT Hardness and the ETH Exact Algorithms Lecture 7: FPT Hardness and the ETH February 12, 2016 Lecturer: Michael Lampis 1 Reminder: FPT algorithms Definition 1. A parameterized problem is a function from (χ, k) {0, 1} N to {0,

More information

CPSC 536N: Randomized Algorithms Term 2. Lecture 10

CPSC 536N: Randomized Algorithms Term 2. Lecture 10 CPSC 536N: Randomized Algorithms 011-1 Term Prof. Nick Harvey Lecture 10 University of British Columbia In the first lecture we discussed the Max Cut problem, which is NP-complete, and we presented a very

More information

Module 11. Directed Graphs. Contents

Module 11. Directed Graphs. Contents Module 11 Directed Graphs Contents 11.1 Basic concepts......................... 256 Underlying graph of a digraph................ 257 Out-degrees and in-degrees.................. 258 Isomorphism..........................

More information

On the Max Coloring Problem

On the Max Coloring Problem On the Max Coloring Problem Leah Epstein Asaf Levin May 22, 2010 Abstract We consider max coloring on hereditary graph classes. The problem is defined as follows. Given a graph G = (V, E) and positive

More information

CS 188: Artificial Intelligence. Recap: Search

CS 188: Artificial Intelligence. Recap: Search CS 188: Artificial Intelligence Lecture 4 and 5: Constraint Satisfaction Problems (CSPs) Pieter Abbeel UC Berkeley Many slides from Dan Klein Recap: Search Search problem: States (configurations of the

More information

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang

/ Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang 600.469 / 600.669 Approximation Algorithms Lecturer: Michael Dinitz Topic: Linear Programming Date: 2/24/15 Scribe: Runze Tang 9.1 Linear Programming Suppose we are trying to approximate a minimization

More information

The External Network Problem

The External Network Problem The External Network Problem Jan van den Heuvel and Matthew Johnson CDAM Research Report LSE-CDAM-2004-15 December 2004 Abstract The connectivity of a communications network can often be enhanced if the

More information

CS W4701 Artificial Intelligence

CS W4701 Artificial Intelligence CS W4701 Artificial Intelligence Fall 2013 Chapter 6: Constraint Satisfaction Problems Jonathan Voris (based on slides by Sal Stolfo) Assignment 3 Go Encircling Game Ancient Chinese game Dates back At

More information

Treewidth and graph minors

Treewidth and graph minors Treewidth and graph minors Lectures 9 and 10, December 29, 2011, January 5, 2012 We shall touch upon the theory of Graph Minors by Robertson and Seymour. This theory gives a very general condition under

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems Look-Back Malte Helmert and Stefan Wölfl Albert-Ludwigs-Universität Freiburg June 5, 2007 S. Wölfl, M. Helmert (Universität Freiburg) Constraint Satisfaction Problems June

More information

Bound Consistency for Binary Length-Lex Set Constraints

Bound 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 information

CS 188: Artificial Intelligence Fall 2011

CS 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 information

Lecture 9 Arc Consistency

Lecture 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 information

Binary Encodings of Non-binary Constraint Satisfaction Problems: Algorithms and Experimental Results

Binary Encodings of Non-binary Constraint Satisfaction Problems: Algorithms and Experimental Results Journal of Artificial Intelligence Research 24 (2005) 641-684 Submitted 04/05; published 11/05 Binary Encodings of Non-binary Constraint Satisfaction Problems: Algorithms and Experimental Results Nikolaos

More information

Crossword Puzzles as a Constraint Problem

Crossword Puzzles as a Constraint Problem Crossword Puzzles as a Constraint Problem Anbulagan and Adi Botea NICTA and Australian National University, Canberra, Australia {anbulagan,adi.botea}@nicta.com.au Abstract. We present new results in crossword

More information

An Effective Upperbound on Treewidth Using Partial Fill-in of Separators

An Effective Upperbound on Treewidth Using Partial Fill-in of Separators An Effective Upperbound on Treewidth Using Partial Fill-in of Separators Boi Faltings Martin Charles Golumbic June 28, 2009 Abstract Partitioning a graph using graph separators, and particularly clique

More information

GSAT and Local Consistency

GSAT and Local Consistency GSAT and Local Consistency Kalev Kask Computer Science Department University of California at Irvine Irvine, CA 92717 USA Rina Dechter Computer Science Department University of California at Irvine Irvine,

More information

Conflict-based Statistics

Conflict-based Statistics Conflict-based Statistics Tomáš Müller 1, Roman Barták 1 and Hana Rudová 2 1 Faculty of Mathematics and Physics, Charles University Malostranské nám. 2/25, Prague, Czech Republic {muller bartak}@ktiml.mff.cuni.cz

More information

What is Search For? CS 188: Artificial Intelligence. Constraint Satisfaction Problems

What is Search For? CS 188: Artificial Intelligence. Constraint Satisfaction Problems CS 188: Artificial Intelligence Constraint Satisfaction Problems What is Search For? Assumptions about the world: a single agent, deterministic actions, fully observed state, discrete state space Planning:

More information

Interleaving Schemes on Circulant Graphs with Two Offsets

Interleaving Schemes on Circulant Graphs with Two Offsets Interleaving Schemes on Circulant raphs with Two Offsets Aleksandrs Slivkins Department of Computer Science Cornell University Ithaca, NY 14853 slivkins@cs.cornell.edu Jehoshua Bruck Department of Electrical

More information

Using Constraint Programming to Solve the Maximum Clique Problem

Using Constraint Programming to Solve the Maximum Clique Problem Using Constraint Programming to Solve the Maximum Clique Problem Jean-Charles Régin ILOG Sophia Antipolis Les Taissounières HB, 1681 route des Dolines, 06560 Valbonne, France regin@ilog.fr Abstract. This

More information

Foundations of Computer Science Spring Mathematical Preliminaries

Foundations of Computer Science Spring Mathematical Preliminaries Foundations of Computer Science Spring 2017 Equivalence Relation, Recursive Definition, and Mathematical Induction Mathematical Preliminaries Mohammad Ashiqur Rahman Department of Computer Science College

More information

A strong local consistency for constraint satisfaction

A strong local consistency for constraint satisfaction A strong local consistency for constraint satisfaction Romuald Debruyne Ecole des Mines de Nantes 4, rue Alfred Kastler, La Chantrerie 4437 Nantes cedex 3 - France Email: debruyne@lirmm.fr Abstract Filtering

More information

The Branch & Move algorithm: Improving Global Constraints Support by Local Search

The Branch & Move algorithm: Improving Global Constraints Support by Local Search Branch and Move 1 The Branch & Move algorithm: Improving Global Constraints Support by Local Search Thierry Benoist Bouygues e-lab, 1 av. Eugène Freyssinet, 78061 St Quentin en Yvelines Cedex, France tbenoist@bouygues.com

More information

CS 188: Artificial Intelligence Fall 2011

CS 188: Artificial Intelligence Fall 2011 Announcements Project 1: Search is due next week Written 1: Search and CSPs out soon Piazza: check it out if you haven t CS 188: Artificial Intelligence Fall 2011 Lecture 4: Constraint Satisfaction 9/6/2011

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems Chapter 5 Section 1 3 Constraint Satisfaction 1 Outline Constraint Satisfaction Problems (CSP) Backtracking search for CSPs Local search for CSPs Constraint Satisfaction

More information

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings

On the Relationships between Zero Forcing Numbers and Certain Graph Coverings On the Relationships between Zero Forcing Numbers and Certain Graph Coverings Fatemeh Alinaghipour Taklimi, Shaun Fallat 1,, Karen Meagher 2 Department of Mathematics and Statistics, University of Regina,

More information

Space vs Time, Cache vs Main Memory

Space vs Time, Cache vs Main Memory Space vs Time, Cache vs Main Memory Marc Moreno Maza University of Western Ontario, London, Ontario (Canada) CS 4435 - CS 9624 (Moreno Maza) Space vs Time, Cache vs Main Memory CS 4435 - CS 9624 1 / 49

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems [These slides were created by Dan Klein and Pieter Abbeel for CS188 Intro to AI at UC Berkeley. All CS188 materials are available at http://ai.berkeley.edu.] What is Search

More information

CS 771 Artificial Intelligence. Constraint Satisfaction Problem

CS 771 Artificial Intelligence. Constraint Satisfaction Problem CS 771 Artificial Intelligence Constraint Satisfaction Problem Constraint Satisfaction Problems So far we have seen a problem can be solved by searching in space of states These states can be evaluated

More information

Week 8: Constraint Satisfaction Problems

Week 8: Constraint Satisfaction Problems COMP3411/ 9414/ 9814: Artificial Intelligence Week 8: Constraint Satisfaction Problems [Russell & Norvig: 6.1,6.2,6.3,6.4,4.1] COMP3411/9414/9814 18s1 Constraint Satisfaction Problems 1 Outline Constraint

More information

Example: Map coloring

Example: 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 information

A Hybrid Recursive Multi-Way Number Partitioning Algorithm

A Hybrid Recursive Multi-Way Number Partitioning Algorithm Proceedings of the Twenty-Second International Joint Conference on Artificial Intelligence A Hybrid Recursive Multi-Way Number Partitioning Algorithm Richard E. Korf Computer Science Department University

More information

CP Models for Maximum Common Subgraph Problems

CP Models for Maximum Common Subgraph Problems CP Models for Maximum Common Subgraph Problems Samba Ndojh Ndiaye and Christine Solnon Université de Lyon, CNRS Université Lyon 1, LIRIS, UMR5205, F-69622, France Abstract. The distance between two graphs

More information

CS 188: Artificial Intelligence Fall 2008

CS 188: Artificial Intelligence Fall 2008 CS 188: Artificial Intelligence Fall 2008 Lecture 4: CSPs 9/9/2008 Dan Klein UC Berkeley Many slides over the course adapted from either Stuart Russell or Andrew Moore 1 1 Announcements Grading questions:

More information

Announcements. CS 188: Artificial Intelligence Fall Large Scale: Problems with A* What is Search For? Example: N-Queens

Announcements. CS 188: Artificial Intelligence Fall Large Scale: Problems with A* What is Search For? Example: N-Queens CS 188: Artificial Intelligence Fall 2008 Announcements Grading questions: don t panic, talk to us Newsgroup: check it out Lecture 4: CSPs 9/9/2008 Dan Klein UC Berkeley Many slides over the course adapted

More information

1 Inference for Boolean theories

1 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 information

Constraint Satisfaction

Constraint 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 information

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I Instructor: Shaddin Dughmi Announcements Posted solutions to HW1 Today: Combinatorial problems

More information

Nogood-FC for Solving Partitionable Constraint Satisfaction Problems

Nogood-FC for Solving Partitionable Constraint Satisfaction Problems Nogood-FC for Solving Partitionable Constraint Satisfaction Problems Montserrat Abril, Miguel A. Salido, Federico Barber Dpt. of Information Systems and Computation, Technical University of Valencia Camino

More information

Completeness and Performance of the APO Algorithm

Completeness and Performance of the APO Algorithm Journal of Artificial Intelligence Research 33 (2008) 223-258 Submitted 5/08; published 10/08 Completeness and Performance of the APO Algorithm Tal Grinshpoun Amnon Meisels Ben-Gurion University of the

More information

CS 4100 // artificial intelligence

CS 4100 // artificial intelligence CS 4100 // artificial intelligence instructor: byron wallace Constraint Satisfaction Problems Attribution: many of these slides are modified versions of those distributed with the UC Berkeley CS188 materials

More information

Fixed-Parameter Algorithm for 2-CNF Deletion Problem

Fixed-Parameter Algorithm for 2-CNF Deletion Problem Fixed-Parameter Algorithm for 2-CNF Deletion Problem Igor Razgon Igor Razgon Computer Science Department University College Cork Ireland A brief introduction to the area of fixed-parameter algorithms 2

More information

THREE LECTURES ON BASIC TOPOLOGY. 1. Basic notions.

THREE LECTURES ON BASIC TOPOLOGY. 1. Basic notions. THREE LECTURES ON BASIC TOPOLOGY PHILIP FOTH 1. Basic notions. Let X be a set. To make a topological space out of X, one must specify a collection T of subsets of X, which are said to be open subsets of

More information

CS 343: Artificial Intelligence

CS 343: Artificial Intelligence CS 343: Artificial Intelligence Constraint Satisfaction Problems Prof. Scott Niekum The University of Texas at Austin [These slides are based on those of Dan Klein and Pieter Abbeel for CS188 Intro to

More information

Chapter 9 Graph Algorithms

Chapter 9 Graph Algorithms Introduction graph theory useful in practice represent many real-life problems can be if not careful with data structures Chapter 9 Graph s 2 Definitions Definitions an undirected graph is a finite set

More information

Chapter 6 Constraint Satisfaction Problems

Chapter 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 information