[gecode-users] Breaking symmetries with LDSB in Matrix model.

Bouchene Sabrina genius_linda1987 at yahoo.fr
Mon Sep 29 11:29:33 CEST 2014


Thank you sir, 

I have an other question in the same context :

A/ So, if i have understand, i can do the same thing with reflection of columns in Matrix model as follow:

Symmetries s;

BoolVarArgs a; for (int i = 0 ; i < (opt.cols/2-1); i++) { a << p.col(i); } for (int i = (opt.col-1) ; i >= opt.col/2 ; i--) { a << p.col(i); } s << VariableSequenceSymmetry(a, opt.cols*opt.rows); 
if this part of code is correct so his effect is aquivalent to this function of Gecode: columns_reflect(): to specify that a matrix's columns can be reflected.
B/ an other question please about combination of symmetries:
suppose th probleme have the symmetric groupe Gn = Dn*Z2 /
- Dn: Consist on n rotation of rows of the Matrix ( the second form of      symmetry described in my first question (first email)) and n  permutations of specified rows or specified columns of the Matrix (the first form of symmetry described in my first email).
- Z2 = {id, rev}= {+1, -1}. id = +1, rev = -1./ rev represent the possibility of reflection of columns of the Matrix. ( it is the form of symmetry described in this email in A.
So my question is: How to do this combinaition ? how to post the combinaition of this 3 forms of symmetries in the branch function, i must post eatch one independently or in the same time. it means in general, hox post this forms of combinaition: example:
Combination 1 = Sym a + Sym b.
Combination 2 = Sym a * Sym b.
I hope that my question was clear.
Thank you.

Best regards.
Sabrina. 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.gecode.org/pipermail/users/attachments/20140929/628a01aa/attachment.html>


More information about the users mailing list