A Study into Ant Colony Optimisation, Evolutionary Computation and Constraint Programming on Binary Constraint Satisfaction Problems Jano van Hemert Christine Solnon http://www.cwi.nl/ ∼ jvhemert http://www710.univ-lyon1.fr/ ∼ csolnon CWI, Amsterdam, The Netherlands LIRIS, University of Lyon 1, France Jano van Hemert & Christine Solnon – p.1
Research questions ✔ For binary CSP , how do EC , ACO and CP relate to each other performance wise? Jano van Hemert & Christine Solnon – p.2
Research questions ✔ For binary CSP , how do EC , ACO and CP relate to each other performance wise? ✔ ...near the phase transition Jano van Hemert & Christine Solnon – p.2
Research questions ✔ For binary CSP , how do EC , ACO and CP relate to each other performance wise? ✔ ...near the phase transition ✔ ...when the problem size is scaled up Jano van Hemert & Christine Solnon – p.2
Research questions ✔ For binary CSP , how do EC , ACO and CP relate to each other performance wise? ✔ ...near the phase transition ✔ ...when the problem size is scaled up ✔ What reasons lie behind failing? Jano van Hemert & Christine Solnon – p.2
Binary constraint satisfaction & problem difficulty Jano van Hemert & Christine Solnon – p.3
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 & Christine Solnon – p.4
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 v i , denoted as the tuple � x i , v i � , where v i ∈ D x i Jano van Hemert & Christine Solnon – p.4
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 v i , denoted as the tuple � x i , v i � , where v 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 values that are not allowed to be assigned simultaneously Jano van Hemert & Christine Solnon – p.4
CSP: the problem ☞ Assign to each x i ∈ X a value from D x i such that no constraint c ∈ C is violated Jano van Hemert & Christine Solnon – p.5
CSP: the problem ☞ Assign to each x i ∈ X a value from D x i such that no constraint c ∈ C is violated � � ✎ A solution is written as: � x 1 , v 1 �� x 2 , v 2 � · · · � x | X | , v | X | � Jano van Hemert & Christine Solnon – p.5
CSP: the problem ☞ Assign to each x i ∈ X a value from D x i such that no constraint c ∈ C is violated � � ✎ A solution is written as: � x 1 , v 1 �� x 2 , v 2 � · · · � x | X | , v | X | � ☞ A binary constraint satisfaction problem is a CSP where all constraints are associated with at most two variables Jano van Hemert & Christine Solnon – p.5
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 & Christine Solnon – p.6
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 & Christine Solnon – p.6
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 & Christine Solnon – p.7
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 & Christine Solnon – p.7
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 & Christine Solnon – p.7
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 & Christine Solnon – p.7
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 & Christine Solnon – p.7
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 & Christine Solnon – p.7
Phase transition ✔ In general, a phase transition is defined as a change of a system ✔ In the context of solving NP -complete problems, it refers to a change in properties such as solvability and hardness of solving ✔ For BINCSP we shall use the connectivity as an order parameter ✔ Using the constrainedness we may predict the hardness of problem solving, this can be expressed as κ = n − 1 1 p 1 log m ( ) 2 1 − p 2 Jano van Hemert & Christine Solnon – p.8
Three methodologies . . . . . . three algorithms Jano van Hemert & Christine Solnon – p.9
Ant Colony Optimisation ✔ Ants create a path that corresponds to an assignment of the variables (Solnon, 2002) ✔ The order of assigning variables is set by the smallest domain heuristic ✔ Post-processing with a local search where at random variables are chosen that are involved in conflicts; their assignments are changed to minimise the number of conflicts (Minton et al., 1992) ✔ Pheromone trails are updated according to the best assignment found Jano van Hemert & Christine Solnon – p.10
Evolutionary Computation ✔ Glass-Box (Marchiori, 1997), one of the three best algorithms from an extensive comparison study (Craenen et al., 2003) ✔ Employs a repair method that tries to change the variable assignments of each constraint in order to get it satisfied ✔ Uses a heuristic; constraints with the most conflicts are changed first Jano van Hemert & Christine Solnon – p.11
Constraint Programming ✔ Forward checking with conflict-directed Backjumping (Prosser, 1993) ✔ Forward checking decreases the domains of unassigned variables and moves forward until a solution occurs or until a domain becomes empty (Haralick and Elliot, 1980) ✔ Conflict-directed backjumping improves the speed by making larger jumps during backtrack moves (Dechter, 1990) ✎ The method is complete, and will always provide a solution if it exists Jano van Hemert & Christine Solnon – p.12
Experiments Jano van Hemert & Christine Solnon – p.13
Measurement: success ratio ✔ Number of successful runs divided by total runs ✔ Every problem instance used in the experiments has at least one solution ✔ Note that FC - CBJ is always successful, i.e., the success ratio is one Jano van Hemert & Christine Solnon – p.14
Measurement: 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 ✔ This measurement is not influenced by hardware or software issues Jano van Hemert & Christine Solnon – p.15
Measurement: resampling ratio ✔ Let S denote the set of points in the search space sampled by an algorithm ✔ Then, define resampling ratio as # evaluations − | S | # evaluations (van Hemert and Bäck, 2002) ✔ The resampling ratio provides a means of observing how efficient an algorithm is sampling the search space; a high value corresponds to a low efficiency Jano van Hemert & Christine Solnon – p.16
Experiments Two experiments: ① Phase transition: n = 20 , m = 20 , p 1 = 1 , and 10 settings of p 2 : 0 . 22 , 0 . 23 , . . . , 0 . 28 ② Scale-up: n ∈ { 15 , 20 , . . . , 60 } , m = 20 , p 1 = 1 , and p 2 is set to ensure a constrainedness of κ = 0 . 92 Jano van Hemert & Christine Solnon – p.17
Experiments Two experiments: ① Phase transition: n = 20 , m = 20 , p 1 = 1 , and 10 settings of p 2 : 0 . 22 , 0 . 23 , . . . , 0 . 28 ② Scale-up: n ∈ { 15 , 20 , . . . , 60 } , m = 20 , p 1 = 1 , and p 2 is set to ensure a constrainedness of κ = 0 . 92 ✎ For each setting 25 unique problem instances are used, generated using Model E (Achlioptas et al., 2001) using RandomCsp (download available from my home page) Jano van Hemert & Christine Solnon – p.17
Recommend
More recommend