A novel approach in CSP with GA by Juhos Istvan, Phillip Tann, Toth Attila, Tezuka Masaru
EvoNet Szeged Contents Constraint Satisfaction Problem: Graph colouring - ”an old friend” Representation GA model Results Conclusion
EvoNet Szeged Constraint Satisfaction Constraint Satisfaction Problem (CSP) : where X : variables { x 1, …, x n } D : domain { D 1, …, D n } C : constraints { (x, y) | x,y X }
EvoNet Szeged X = { x 1, x 2, x 3, x 4, x 5 } D = { red, blue, green,… } C = { (x 1, x 2 ), (x 2, x 3 ), (x 3, x 4 ), (x 2, x 4 ), (x 4, x 5 ) } (x i,x k ) means: != Graph colouring
EvoNet Szeged Representation: Graph Colouring Each column is a vertex and each row is a colour. Ex: x 1 is colour A (code : 1) x 2 cannot be colour A (code : 0) Goal: minimize the nb of colours. How: merge the rows x1x1 x2x2 x3x3 x4x4 x5x5 A10xxx B0100x Cx010x Dx0010 Exxx01
EvoNet Szeged Merge operator Merging two rows: 1 and X 1 0 and X 0 0 and 0 0 1 and 1 1 X and X X 1 and 0 not allowed 0 and 1 not allowed A10xxx Cx010x A+C1010x
EvoNet Szeged Phenotype : merged matrix = nb of colours Genotype : merging order = permutation of the rows ( D, B, A, E, C ) Fitness function : number of rows in the merged matrix GA Framework
EvoNet Szeged GA framework cont. Variation Operators: Mutation : swap two members in the permutation Crossover : standard crossover not allowed (doesn’t preserve permutations)
EvoNet Szeged GA framework cont. Solution: order-based crossover [Syswerda] Select a crossing point; Parent (Head, Tail); Reorder Parent1 Tail according to Parent2. A B C D E E B C A D B A C D E B E C A D
EvoNet Szeged The program Novel Genetic algorithm EASEA and EO aided Written in C++ Compiled and running on Linux Uses common input DIMACS format
EvoNet Szeged Experimental Setting -Problems considered -URL: - Size of the problems -GA parameters: -Nb of individuals: 100 -Mutation probability: 0.3 -Crossover probability: 0.8 -Nb of fitness evaluations: -Typically 100% known solution is found -How many runs -Computational effort -Compared with previous works
EvoNet Szeged Results cont. NameOptimaNo Diff. parameter No xover No Diff. parameter With xover With Diff. parameter no xover With Diff. parameter with xover Vertex Edges Flat300_ Le450_15b Queen11_ Mychel Mulsol.i
EvoNet Szeged Conclusion What we have done: an algorithm to graph colouring a CSP algorithm the idea seems exciting the results seem good What remains to be done: more intensive tests investigate the mutation and crossover operation improve the fitness function Thanks to EvoNet 2002, special thanks to Michele Sebag and Jano van Hemert
EvoNet Szeged Perspectives Pheromone-like information about constrained variables Most constrained variables should be put first. What are the most constrained variables ? Learn which variables are the last ones Stored in a global vector: –shared by population, –updated at each generation, –exploited to guide mutation.