Tools for Dynamic Analysis and Debugging of Constraint Programs
Outils pour l'Analyse Dynamique et la mise au Point de
Programmes avec Contraintes

Classical Examples: n-queens flamme!

Description du problème :

place n safe queens on a chessboard nxn. Strategy: first-fail / minimum value first (naiv alldiff constraint).

Interest : n=4, trivial case (1 backtrack before the first solution). The visualisation variable/value with discovery is well adaptad  (chessboard vue).

GNU-Prolog traces with no symetry breaking :


[4 queens.xml (2 sol, 420 events .gz 7K)] - [8 queens full trace (39686 events).xml 20,5M .gz: 725K]

GNU-Prolog traces with symmetry breaking:

Symmetry breaking software gprolog-sbds has been used. In this example first all symmetries are broken (8 geometric symmetries) and then only the vertical, horizontal and 180° rotational (by composition of two firsts) symmetries.

Propagation tree snapshot:

These snapshots are obtained with Pavot 1.2

[8 queens.gif] -

Traces CHIP :

[8 queens.xml] (first sol, 76 events, non compliant trace, to be changed)]