• Aucun résultat trouvé

Chapter 8: Symmetry Breaking (Balanced Incomplete Block Designs)

N/A
N/A
Protected

Academic year: 2021

Partager "Chapter 8: Symmetry Breaking (Balanced Incomplete Block Designs)"

Copied!
471
0
0

Texte intégral

(1)

Problem Program Symmetry Breaking

Chapter 8: Symmetry Breaking (Balanced Incomplete Block Designs)

Helmut Simonis

Cork Constraint Computation Centre Computer Science Department

University College Cork Ireland

ECLiPSe ELearning

Overview

(2)

Problem Program Symmetry Breaking

Licence

This work is licensed under the Creative Commons

Attribution-Noncommercial-Share Alike 3.0 Unported License.

To view a copy of this license, visit http:

//creativecommons.org/licenses/by-nc-sa/3.0/ or

send a letter to Creative Commons, 171 Second Street, Suite

300, San Francisco, California, 94105, USA.

(3)

Problem Program Symmetry Breaking

Outline

1 Problem

2 Program

3 Symmetry Breaking

(4)

Problem Program Symmetry Breaking

What we want to introduce

BIBD - Balanced Incomplete Block Designs Using lex constraints to remove symmetries Finding all solutions to a problem

Using timeout to limit search

(5)

Problem Program Symmetry Breaking

Outline

1 Problem

2 Program

3 Symmetry Breaking

(6)

Problem Program Symmetry Breaking

Problem Definition

BIBD (Balanced Incomplete Block Design)

A BIBD is defined as an arrangement of v distinct objects into b

blocks such that each block contains exactly k distinct objects,

each object occurs in exactly r different blocks, and every two

distinct objects occur together in exactly λ blocks. A BIBD is

therefore specified by its parameters (v, b, r, k, λ).

(7)

Problem Program Symmetry Breaking

Motivation: Test Planning

Consider a new release of some software with v new features.

You want to regression test the software against combinations of the new features. Testing each subset of features is too expensive, so you want to run b tests, each using k features.

Each feature should be used r times in the tests. Each pair of

features should be tested together exactly λ times. How do you

arrange the tests?

(8)

Problem Program Symmetry Breaking

Model

Another way of defining a BIBD is in terms of its incidence matrix, which is a binary matrix with v rows, b columns, r ones per row, k ones per column, and scalar product λ between any pair of distinct rows.

A (6,10,5,3,2) BIBD

(9)

Problem Program Symmetry Breaking

Model

Another way of defining a BIBD is in terms of its incidence matrix, which is a binary matrix with v rows, b columns, r ones per row, k ones per column, and scalar product λ between any pair of distinct rows.

A (6,10,5,3,2) BIBD

(10)

Problem Program Symmetry Breaking

Outline

1 Problem

2 Program

3 Symmetry Breaking

(11)

Problem Program Symmetry Breaking

Model

A binary v × b matrix. Entry V ij states if item i is in block j.

Sum constraints over rows, each sum equal r Sum constraints over columns, each sum equal k

Scalar product between any pair of rows, the product value

is λ.

(12)

Problem Program Symmetry Breaking

Top Level Program

:-module(bibd).

:-export(top/0).

:-lib(ic).

:-lib(ic_global).

top:-

bibd(6,10,5,3,2,Matrix),writeln(Matrix).

bibd(V,B,R,K,L,Matrix):- model(V,B,R,K,L,Matrix),

extract_array(row,Matrix,List),

search(L,0,input_order,indomain,

(13)

Problem Program Symmetry Breaking

Top Level Program

:-module(bibd).

:-export(top/0).

:-lib(ic).

:-lib(ic_global).

top:-

bibd(6,10,5,3,2,Matrix),writeln(Matrix).

bibd(V,B,R,K,L,Matrix):-

model(V,B,R,K,L,Matrix), é Set up model extract_array(row,Matrix,List),

search(L,0,input_order,indomain,

(14)

Problem Program Symmetry Breaking

Top Level Program

:-module(bibd).

:-export(top/0).

:-lib(ic).

:-lib(ic_global).

top:-

bibd(6,10,5,3,2,Matrix),writeln(Matrix).

bibd(V,B,R,K,L,Matrix):- model(V,B,R,K,L,Matrix),

extract_array(row,Matrix,List), é Get list

search(L,0,input_order,indomain,

(15)

Problem Program Symmetry Breaking

Top Level Program

:-module(bibd).

:-export(top/0).

:-lib(ic).

:-lib(ic_global).

top:-

bibd(6,10,5,3,2,Matrix),writeln(Matrix).

bibd(V,B,R,K,L,Matrix):- model(V,B,R,K,L,Matrix),

extract_array(row,Matrix,List),

search(L,0,input_order,indomain,

(16)

Problem Program Symmetry Breaking

Constraint Model

model(V,B,R,K,L,Matrix,Method):- dim(Matrix,[V,B]),

Matrix[1..V,1..B] :: 0..1,

(for(I,1,V), param(Matrix,B,R) do sumlist(Matrix[I,1..B],R) ),

(for(J,1,B), param(Matrix,V,K) do sumlist(Matrix[1..V,J],K) ),

(for(I,1,V-1), param(Matrix,V,B,L) do (for(I1,I+1,V), param(Matrix,I,B,L) do

scalar_product(Matrix[I,1..B],

(17)

Problem Program Symmetry Breaking

Constraint Model

model(V,B,R,K,L,Matrix,Method):-

dim(Matrix,[V,B]), é Define Binary Matrix Matrix[1..V,1..B] :: 0..1,

(for(I,1,V), param(Matrix,B,R) do sumlist(Matrix[I,1..B],R) ),

(for(J,1,B), param(Matrix,V,K) do sumlist(Matrix[1..V,J],K) ),

(for(I,1,V-1), param(Matrix,V,B,L) do (for(I1,I+1,V), param(Matrix,I,B,L) do

scalar_product(Matrix[I,1..B],

(18)

Problem Program Symmetry Breaking

Constraint Model

model(V,B,R,K,L,Matrix,Method):- dim(Matrix,[V,B]),

Matrix[1..V,1..B] :: 0..1,

(for(I,1,V), param(Matrix,B,R) do sumlist(Matrix[I,1..B],R) ), é Row Sum = R

(for(J,1,B), param(Matrix,V,K) do sumlist(Matrix[1..V,J],K) ),

(for(I,1,V-1), param(Matrix,V,B,L) do (for(I1,I+1,V), param(Matrix,I,B,L) do

scalar_product(Matrix[I,1..B],

(19)

Problem Program Symmetry Breaking

Constraint Model

model(V,B,R,K,L,Matrix,Method):- dim(Matrix,[V,B]),

Matrix[1..V,1..B] :: 0..1,

(for(I,1,V), param(Matrix,B,R) do sumlist(Matrix[I,1..B],R) ),

(for(J,1,B), param(Matrix,V,K) do sumlist(Matrix[1..V,J],K) ), é Column Sum = K

(for(I,1,V-1), param(Matrix,V,B,L) do (for(I1,I+1,V), param(Matrix,I,B,L) do

scalar_product(Matrix[I,1..B],

(20)

Problem Program Symmetry Breaking

Constraint Model

model(V,B,R,K,L,Matrix,Method):- dim(Matrix,[V,B]),

Matrix[1..V,1..B] :: 0..1,

(for(I,1,V), param(Matrix,B,R) do sumlist(Matrix[I,1..B],R) ),

(for(J,1,B), param(Matrix,V,K) do sumlist(Matrix[1..V,J],K) ),

(for(I,1,V-1), param(Matrix,V,B,L) do (for(I1,I+1,V), param(Matrix,I,B,L) do

scalar_product(Matrix[I,1..B],

(21)

Problem Program Symmetry Breaking

scalar_product

scalar_product(XVector,YVector,V):- collection_to_list(XVector,XList), collection_to_list(YVector,YList), (foreach(X,XList),

foreach(Y,YList), fromto(0,A,A1,Term) do

A1 = A+X*Y ),

eval(Term) #= V.

(22)

Problem Program Symmetry Breaking

scalar_product

scalar_product(XVector,YVector,V):- collection_to_list(XVector,XList),

collection_to_list(YVector,YList), é Get lists (foreach(X,XList),

foreach(Y,YList), fromto(0,A,A1,Term) do

A1 = A+X*Y ),

eval(Term) #= V.

(23)

Problem Program Symmetry Breaking

scalar_product

scalar_product(XVector,YVector,V):- collection_to_list(XVector,XList), collection_to_list(YVector,YList), (foreach(X,XList), é Iterate over lists

foreach(Y,YList), é ...in parallel fromto(0,A,A1,Term) do

A1 = A+X*Y ),

eval(Term) #= V.

(24)

Problem Program Symmetry Breaking

scalar_product

scalar_product(XVector,YVector,V):- collection_to_list(XVector,XList), collection_to_list(YVector,YList), (foreach(X,XList),

foreach(Y,YList),

fromto(0,A,A1,Term) do é Build term A1 = A+X*Y

),

eval(Term) #= V.

(25)

Problem Program Symmetry Breaking

scalar_product

scalar_product(XVector,YVector,V):- collection_to_list(XVector,XList), collection_to_list(YVector,YList), (foreach(X,XList),

foreach(Y,YList), fromto(0,A,A1,Term) do

A1 = A+X*Yé Construct term ),

eval(Term) #= V.

(26)

Problem Program Symmetry Breaking

scalar_product

scalar_product(XVector,YVector,V):- collection_to_list(XVector,XList), collection_to_list(YVector,YList), (foreach(X,XList),

foreach(Y,YList), fromto(0,A,A1,Term) do

A1 = A+X*Y ),

eval(Term) #= V. é State Constraint

(27)

Problem Program Symmetry Breaking

Search Routine

Static variable order

First fail does not work for binary variables Enumerate variables by row

Use utility predicate extract_array/3

Assign with indomain, try value 0, then value 1

Use simple search call

(28)

Problem Program Symmetry Breaking

Basic Model - First Solution

1

(29)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2

0

(30)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3

0

0

(31)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4

0

0

0

(32)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5

0

0

0

0

(33)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11

0 0 0 0 0

(34)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12

0 0 0 0 0 0

(35)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13

0 0 0 0 0 0 0

(36)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14

0 0 0 0 0 0 0 0

(37)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14 15

0 0 0 0 0 0 0 0 0

(38)

Problem Program Symmetry Breaking

Basic Model - First Solution

0

1 2 3 4 5 11 12 13 14 15 0 0 0 0 0 0 0 0 0 0

(39)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14 15 0

16 1 0 0 0 0 0 0 0 0 0

(40)

Problem Program Symmetry Breaking

Basic Model - First Solution

0

1 2 3 4 5 11 12 13 14 15 0

16 0 1 0 0 0 0 0 0 0 0 0

(41)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14 15 0

16 0

17 1 1 0 0 0 0 0 0 0 0 0

(42)

Problem Program Symmetry Breaking

Basic Model - First Solution

0

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 0 0 0 0 0 0 0 0 0

(43)

Problem Program Symmetry Breaking

Basic Model - First Solution

1

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1 0 0 0 0 0 0 0 0 0

(44)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1 0

15 1 0 0 0 0 0 0 0 0

(45)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0 15 16 0 1 0 0 0 0 0 0 0 0

(46)

Problem Program Symmetry Breaking

Basic Model - First Solution

0

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0 15 16 0 0 1 0 0 0 0 0 0 0 0

(47)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0 15 16 0

17 1 0 1 0 0 0 0 0 0 0 0

(48)

Problem Program Symmetry Breaking

Basic Model - First Solution

0

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 0 1 0 0 0 0 0 0 0 0

(49)

Problem Program Symmetry Breaking

Basic Model - First Solution

1

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 1 0 1 0 0 0 0 0 0 0 0

(50)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 1 0

16 1 1 0 0 0 0 0 0 0 0

(51)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 1

0 16 17 0 1 1 0 0 0 0 0 0 0 0

(52)

Problem Program Symmetry Breaking

Basic Model - First Solution

0

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 1

0 16 17 0 0 1 1 0 0 0 0 0 0 0 0

(53)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0 16 17 0

18 1 0 1 1 0 0 0 0 0 0 0 0

(54)

Problem Program Symmetry Breaking

Basic Model - First Solution

0

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 1

0 16 17 0

18 0 1 0 1 1 0 0 0 0 0 0 0 0

(55)

Problem Program Symmetry Breaking

Basic Model - First Solution

1

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1 0 1 1 0 0 0 0 0 0 0 0

(56)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0 16 17 0

18 0 1 1 0

17 1 1 1 0 0 0 0 0 0 0 0

(57)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1 1 1 0 0 0 0 0 0 0 0

(58)

Problem Program Symmetry Breaking

Basic Model - First Solution

0

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 0 1 1 1 0 0 0 0 0 0 0 0

(59)

Problem Program Symmetry Breaking

Basic Model - First Solution

1

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 0 0 0 0 0 0 0 0

(60)

Problem Program Symmetry Breaking

Basic Model - First Solution

1

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0

16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1 0 0 0 0 0 0 0 0

(61)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0

16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1 0

14 1 0 0 0 0 0 0 0

(62)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0

16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1 0

14 15 0 1 0 0 0 0 0 0 0

(63)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14 15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0

16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0 0 1 0 0 0 0 0 0 0

(64)

Problem Program Symmetry Breaking

Basic Model - First Solution

0

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0

16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0 0 0 1 0 0 0 0 0 0 0

(65)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0

16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 1 0 0 1 0 0 0 0 0 0 0

(66)

Problem Program Symmetry Breaking

Basic Model - First Solution

0

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0

16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 0 0 1 0 0 0 0 0 0 0

(67)

Problem Program Symmetry Breaking

Basic Model - First Solution

1

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0

16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1 0 0 1 0 0 0 0 0 0 0

(68)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0

16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1 0

16 1 0 1 0 0 0 0 0 0 0

(69)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0

16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0 1 0 1 0 0 0 0 0 0 0

(70)

Problem Program Symmetry Breaking

Basic Model - First Solution

0

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0

16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0 0 1 0 1 0 0 0 0 0 0 0

(71)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0

16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 1 0 1 0 1 0 0 0 0 0 0 0

(72)

Problem Program Symmetry Breaking

Basic Model - First Solution

0

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0

16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 0 1 0 1 0 0 0 0 0 0 0

(73)

Problem Program Symmetry Breaking

Basic Model - First Solution

1

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1 0 1 0 1 0 0 0 0 0 0 0

(74)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1 0 17 1 1 0 1 0 0 0 0 0 0 0

(75)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1 1 0 1 0 0 0 0 0 0 0

(76)

Problem Program Symmetry Breaking

Basic Model - First Solution

1

0

2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0

15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 0 1 1 0 1 0 0 0 0 0 0 0

(77)

Problem Program Symmetry Breaking

Basic Model - First Solution

1

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 0 1 0 0 0 0 0 0 0

(78)

Problem Program Symmetry Breaking

Basic Model - First Solution

1

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 0 1 0 0 0 0 0 0 0

(79)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 0

15 1 1 0 0 0 0 0 0 0

(80)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 0

15 16 0 1 1 0 0 0 0 0 0 0

(81)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1

0 15 16 17 0 0 1 1

0 0 0 0 0 0 0

(82)

Problem Program Symmetry Breaking

Basic Model - First Solution

0

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1

0 15 16 17 0 0 0 1 1

0 0 0 0 0 0 0

(83)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1

0

15 16 17 0

18 1 0 0 1 1

0 0 0 0 0 0 0

(84)

Problem Program Symmetry Breaking

Basic Model - First Solution

1

0

2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1

0

15 16 17 0

18 0 1 0 0 1 1

0 0 0 0 0 0 0

(85)

Problem Program Symmetry Breaking

Basic Model - First Solution

1

1

2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1 0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1 0 1 1 1

0

15 16 17 0

18 0 1 1 0 0 1 1

0 0 0 0 0 0 0

(86)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1 0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1 0 1 1 1

0

15 16 17 0

18 0 1 1 0 17 1 0 1 1

0 0 0 0 0 0 0

(87)

Problem Program Symmetry Breaking

Basic Model - First Solution

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0 15 16 0 17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0 17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1

0

15 16 17 0

18 0 1 1 0

17 18 0 1 0 1 1

0 0 0 0 0 0 0

(88)

Problem Program Symmetry Breaking

Basic Model - First Solution

0

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0 15 16 0 17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0 17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1

0

15 16 17 0 18 0 1 1

0 17 18 0 0 1 0 1 1

0 0 0 0 0 0 0

(89)

Problem Program Symmetry Breaking

Basic Model - First Solution

1

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0 15 16 0 17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1

0 1 1 1

0

15 16 17 0

18 0 1 1

0 17 18 0 1

0 1 0 1 1

0 0 0 0 0 0 0

(90)

Problem Program Symmetry Breaking

Basic Model - First Solution

1

1 2 3 4 5 11 12 13 14

15 0

16 0

17 0 1 1 1

0 15 16 0 17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1 0 1 1 1 1

0

14 15 16 0

17 0 1 1

0 16 17 0

18 0 1 1

0 17 18 0 1 0 1 1 1

0

15 16 17 0 18 0 1 1

0 17 18 0 1 0 1 1 0 1 1

0 0 0 0 0 0 0

Références

Documents relatifs

L’accès à ce site Web et l’utilisation de son contenu sont assujettis aux conditions présentées dans le site LISEZ CES CONDITIONS ATTENTIVEMENT AVANT D’UTILISER CE SITE

Given the variance-covariance matrix of the horizontal coordinates (x, y) of a survey station, determine the semi-major and semi-minor axes and the orientation of

a) Precision and accuracy. b) Type I and Type II errors in statistical testing. c) Statistically independent and uncorrelated. d) Standard deviation and root mean square error.

Although programmable calculators may be used, candidates must show all formulae used, the substitution of values into them, and any intermediate values to 2 more significant

Given a leveling network with 100 observed height differences and 40 unknown points, use mathematical equations to explain which method of adjustment (parametric

# PDSIlag = 1-year lagged winter PDSI values (i.e., from year preceding survey) as matrix of Florida PDSI divisions (rows) x year (columns).. # deltaland = percent land cover

Aging, aging theories, deductive analysis of impossibility, evolvability theory, mutation- accumulation theory, antagonistic pleiotropy theory, disposable soma theory,

A design is partially equitably ℓ-colourable if in a weak colouring of the design, the points can be coloured with ℓ colours such that every block is partially equitably