evolving binary constraint satisfaction problem instances
play

Evolving Binary Constraint Satisfaction Problem Instances that are - PowerPoint PPT Presentation

Evolving Binary Constraint Satisfaction Problem Instances that are Difficult to Solve Jano van Hemert http://www.cwi.nl/jvhemert < jvhemert@cwi.nl > Dutch National Institute for Mathematics and Computer Science (CWI), Amsterdam Jano


  1. Evolving Binary Constraint Satisfaction Problem Instances that are Difficult to Solve Jano van Hemert http://www.cwi.nl/˜jvhemert < jvhemert@cwi.nl > Dutch National Institute for Mathematics and Computer Science (CWI), Amsterdam Jano van Hemert — CEC 2003 – p.1

  2. Research questions ① How viable are evolutionary algorithms for the creation of difficult problem instances? Jano van Hemert — CEC 2003 – p.2

  3. Research questions ① How viable are evolutionary algorithms for the creation of difficult problem instances? ② What can we learn from such difficult problem instances? Jano van Hemert — CEC 2003 – p.2

  4. Research questions ① How viable are evolutionary algorithms for the creation of difficult problem instances? ② What can we learn from such difficult problem instances? ③ Can we use this process to discover an algorithm’s weak spots in an automatic manner? Jano van Hemert — CEC 2003 – p.2

  5. Binary constraint satisfaction & problem difficulty Jano van Hemert — CEC 2003 – p.3

  6. Constraint satisfaction ✔ Given a set of variables X , a set of finite domains D and a set of constraints C (Tsang, 1993) Jano van Hemert — CEC 2003 – p.4

  7. Constraint satisfaction ✔ Given a set of variables X , a set of finite domains D and a set of constraints C (Tsang, 1993) ✔ Each x i ∈ X has a corresponding discrete domain D x i from which they can be assigned the value d i , denoted as the tuple � x i , d i � , where d i ∈ D x i Jano van Hemert — CEC 2003 – p.4

  8. Constraint satisfaction ✔ Given a set of variables X , a set of finite domains D and a set of constraints C (Tsang, 1993) ✔ Each x i ∈ X has a corresponding discrete domain D x i from which they can be assigned the value d i , denoted as the tuple � x i , d i � , where d i ∈ D x i ✔ Every element c ∈ C is a constraint over a subset of variables of X , it consists of sets that contain tuples of objects that are not allowed to be assigned simultaneously Jano van Hemert — CEC 2003 – p.4

  9. CSP: the problem ☞ Assign to each x i ∈ X an object from D x i such that no constraint c ∈ C is violated Jano van Hemert — CEC 2003 – p.5

  10. CSP: the problem ☞ Assign to each x i ∈ X an object from D x i such that no constraint c ∈ C is violated � � ✎ A solution is written as: � x 1 , d 1 �� x 2 , d 2 � · · · � x | X | , d | X | � Jano van Hemert — CEC 2003 – p.5

  11. CSP: the problem ☞ Assign to each x i ∈ X an object from D x i such that no constraint c ∈ C is violated � � ✎ A solution is written as: � x 1 , d 1 �� x 2 , d 2 � · · · � x | X | , d | X | � ☞ A binary constraint satisfaction problem is a CSP where all constraints are associated with at most two variables Jano van Hemert — CEC 2003 – p.5

  12. Binary constraint satisfaction ☞ Using four parameters it is possible to make predictions about the difficulty of solving binary CSP s (Smith, 1993; Gent et al., 1996) Jano van Hemert — CEC 2003 – p.6

  13. Binary constraint satisfaction ☞ Using four parameters it is possible to make predictions about the difficulty of solving binary CSP s (Smith, 1993; Gent et al., 1996) ① the number of variables n ② the domain size m ③ the constraint density p 1 ④ the average tightness of constraints p 2 Jano van Hemert — CEC 2003 – p.6

  14. A binary CSP: parameters a b c a 0 0 1 b 1 1 0 c 0 0 0 x 1 x 2 a b c a b c a 0 0 0 a 1 0 0 b 1 0 0 b 0 1 0 c 1 0 1 c 0 0 1 x 4 x 3 Jano van Hemert — CEC 2003 – p.7

  15. A binary CSP: parameters a b c a 0 0 1 b 1 1 0 c 0 0 0 x 1 x 2 a b c a b c a 0 0 0 a 1 0 0 b 1 0 0 b 0 1 0 c 1 0 1 c 0 0 1 x 4 x 3 � n, m, p 1 , p 2 � = � 4 , ? , ? , ? � Jano van Hemert — CEC 2003 – p.7

  16. A binary CSP: parameters a b c a 0 0 1 b 1 1 0 c 0 0 0 x 1 x 2 a b c a b c a 0 0 0 a 1 0 0 b 1 0 0 b 0 1 0 c 1 0 1 c 0 0 1 x 4 x 3 � n, m, p 1 , p 2 � = � 4 , 3 , ? , ? � Jano van Hemert — CEC 2003 – p.7

  17. A binary CSP: parameters a b c a 0 0 1 b 1 1 0 c 0 0 0 x 1 x 2 a b c a b c a 0 0 0 a 1 0 0 b 1 0 0 b 0 1 0 c 1 0 1 c 0 0 1 x 4 x 3 4 , 3 , 3 � � � n, m, p 1 , p 2 � = 6 , ? Jano van Hemert — CEC 2003 – p.7

  18. A binary CSP: parameters a b c a 0 0 1 b 1 1 0 c 0 0 0 x 1 x 2 a b c a b c a 0 0 0 a 1 0 0 b 1 0 0 b 0 1 0 c 1 0 1 c 0 0 1 x 4 x 3 4 , 3 , 1 2 , 3 � � � n, m, p 1 , p 2 � = 9 Jano van Hemert — CEC 2003 – p.7

  19. A binary CSP: parameters a b c a 0 0 1 b 1 1 0 c 0 0 0 x 1 x 2 a b c a b c a 0 0 0 a 1 0 0 b 1 0 0 b 0 1 0 c 1 0 1 c 0 0 1 x 4 x 3 4 , 3 , 1 2 , 1 � � � n, m, p 1 , p 2 � = 3 Jano van Hemert — CEC 2003 – p.7

  20. Grouping conflict pairs ✔ Consider a binary CSP with 3 variables ( n = 3) , a domain size of 3 ( m = 3) and all constraints present ( p 1 = 1) Jano van Hemert — CEC 2003 – p.8

  21. Grouping conflict pairs ✔ Consider a binary CSP with 3 variables ( n = 3) , a domain size of 3 ( m = 3) and all constraints present ( p 1 = 1) � n m 2 , where ✔ Create the set S = { s 0 , . . . , s k } with k = � 2 every s i ∈ S is the set of all possible binary CSP s that have the above properties and, in addition, that the portion of conflicting value pairs present is exactly p 2 = i k Jano van Hemert — CEC 2003 – p.8

  22. Grouping conflict pairs ✔ Consider a binary CSP with 3 variables ( n = 3) , a domain size of 3 ( m = 3) and all constraints present ( p 1 = 1) � n m 2 , where ✔ Create the set S = { s 0 , . . . , s k } with k = � 2 every s i ∈ S is the set of all possible binary CSP s that have the above properties and, in addition, that the portion of conflicting value pairs present is exactly p 2 = i k ✔ Determine for each set s i the total number of instances and the total number of unsolvable instances Jano van Hemert — CEC 2003 – p.8

  23. Counting solvable instances 2e+07 all solvable Number of instances 1.5e+07 1e+07 5e+06 0 0 0.2 0.4 0.6 0.8 1 Tightness Jano van Hemert — CEC 2003 – p.9

  24. Counting solvable instances 1 0.8 Ratio solvable/all 0.6 0.4 0.2 0 0 0.2 0.4 0.6 0.8 1 Tightness Jano van Hemert — CEC 2003 – p.10

  25. Counting solvable instances 1 0.8 Ratio solvable/all 0.6 0.4 0.2 0 0 0.2 0.4 0.6 0.8 1 Tightness Jano van Hemert — CEC 2003 – p.10

  26. Search effort ☞ The effort to search for a solution is commonly measured in the number of conflict checks ☞ one conflict check occurs when an algorithm checks whether the assignment of values to two variables is forbidden or not Jano van Hemert — CEC 2003 – p.11

  27. Phase transition 1600 BM-CBJ BT 1400 estimation Average number of conflict checks 1200 1000 800 600 400 200 0 0 0.2 0.4 0.6 0.8 1 Ratio of conflicts to maximal number of conflicts possible A pattern easy → hard → easy is called a phase transition Jano van Hemert — CEC 2003 – p.12

  28. Important parameters ✔ Using � n, m, p 1 , p 2 � we can predict with considerable accuracy where a phase transition will occur (Smith, 1993; Gent et al., 1996) ✔ Using these parameters we can create sets of random binary CSP s that are of approximately equal difficulty, which can be used to test the effectiveness and efficiency of algorithms (Palmer, 1985; Achlioptas et al., 2001; MacIntyre et al., 1998) ✔ The most difficult problem instances occur not at the predicted phase transition (Hogg and Williams, 1994) Jano van Hemert — CEC 2003 – p.13

  29. Evolutionary computation for evolving binary CSP s Jano van Hemert — CEC 2003 – p.14

  30. The problem space ☞ Using order parameters we can estimate what difficult problem instances are Jano van Hemert — CEC 2003 – p.15

  31. The problem space ☞ Using order parameters we can estimate what difficult problem instances are ☞ However, problem instances with the same order parameters still show a large variation in the search effort required to solve them Jano van Hemert — CEC 2003 – p.15

  32. The problem space ☞ Using order parameters we can estimate what difficult problem instances are ☞ However, problem instances with the same order parameters still show a large variation in the search effort required to solve them ☞ How do we get to the really, really , really hard to solve problem instances? Jano van Hemert — CEC 2003 – p.15

  33. The problem space ☞ Using order parameters we can estimate what difficult problem instances are ☞ However, problem instances with the same order parameters still show a large variation in the search effort required to solve them ☞ How do we get to the really, really , really hard to solve problem instances? ☞ Idea: use an evolutionary algorithm to search the space of problem instances Jano van Hemert — CEC 2003 – p.15

  34. General idea ✔ Fix the number of variables and each variable’s domain size ✔ Let the evolutionary algorithm evolve the structure of the problem ✔ Use a complete algorithm to solve the evolved structures ✔ The fitness function is the search effort required by the complete algorithm Jano van Hemert — CEC 2003 – p.16

Recommend


More recommend