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

Bouchene Sabrina genius_linda1987 at yahoo.fr
Tue Sep 23 17:12:17 CEST 2014


Hi,

I would break symmetries from a probleme with the LDSB layer, i model a probleme with a Matrix, so i have found in the manual of Gecode these Symmetry declarations to break symmetries for matrix Model:

       rows-interchange : to specify that a rows of the matrix are interchangeable, and
       column-interchange : to specify that a columns of the matrix are interchangeable, 

But in my problem i need functions for breaking only specified rows or specified columns that are interchangeable, for example : rows 4 and 7 of the matrix are interchangeable, or for example: column 2 and 5 only are interchangeable and not all rows are interchangeable and not all columns are interchangeable.

it means that i would have a function like this : VariableSymmetry ( const IntVarArgs &x, const IntArgs &inc ...) : specified variables in x are interchangeable,
but which can be applied to a Matrix and not variables or vectors.. 

an other case that i need is: where we have the following permutations of rows of a matrix ( rotation of rows):

                        row 1   takes the content of   row 2
                        row 2   takes the content of   row 3
                                                      .
                                                      .
                        row i     takes the content of   row (i+1) 
                                                      .
                                                      .
                       row n     takes the content of   row 1

These are the two forms of symmetries that i would handle with LDSB but i didn't find the symmetry declarations for this two cases.


Thank you.

Best regards. 

Sabrina.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.gecode.org/pipermail/users/attachments/20140923/315d1416/attachment-0001.html>


More information about the users mailing list