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  row 2
                        row 2  row 3
                                     .
                                     .
                        row i   row (i+1) 
                                     .
                                     .
                       row n  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.
_______________________________________________
Gecode users mailing list
users@gecode.org
https://www.gecode.org/mailman/listinfo/gecode-users

Reply via email to