Symmetry in Mathematical Programming Leo Liberti IBM Research, - - PowerPoint PPT Presentation

symmetry in mathematical programming
SMART_READER_LITE
LIVE PREVIEW

Symmetry in Mathematical Programming Leo Liberti IBM Research, - - PowerPoint PPT Presentation

Symmetry in Mathematical Programming Leo Liberti IBM Research, Yorktown Heights, USA LIX, Ecole Polytechnique, Palaiseau, France OSE 2013, Abo University p. 1/83 Summary 1. What is a symmetric mathematical program? 2. Detecting


slide-1
SLIDE 1

Symmetry in Mathematical Programming

Leo Liberti IBM Research, Yorktown Heights, USA LIX, Ecole Polytechnique, Palaiseau, France

OSE 2013, ˚ Abo University – p. 1/83

slide-2
SLIDE 2

Summary

  • 1. What is a symmetric mathematical program?
  • 2. Detecting symmetries

Drawing mathematical programs From instances to problems

  • 3. Exploiting symmetries

The sb3 reformulation The sbstab reformulation Orbital shrinking

OSE 2013, ˚ Abo University – p. 2/83

slide-3
SLIDE 3

What is a symmetric MP?

OSE 2013, ˚ Abo University – p. 3/83

slide-4
SLIDE 4

Permuting vertices in graphs (2, 3)    2 1 3    = 3 1 2

# apply permutation to edge set gap> OnSetsSets([[1,2],[1,3]], (2,3)); [ [ 1, 2 ], [ 1, 3 ] ]

OSE 2013, ˚ Abo University – p. 4/83

slide-5
SLIDE 5

Action on the incidence matrix (2, 3)   1 1 0 1 0 1   =   1 0 1 1 1 0  

the edge order is irrelevant

  1 0 1 1 1 0   (1, 2) =   1 1 0 1 0 1  

OSE 2013, ˚ Abo University – p. 5/83

slide-6
SLIDE 6

Notation

(column permutation)(MATRIX)(row permutation) = (PERMUTED MATRIX)

(2, 3)   1 1 0 1 0 1   (1, 2) =   1 1 0 1 0 1  

# apply permutation to columns gap> J := [[1,1,0],[1,0,1]]; gap> Apply(J, r->Permuted(r, (2,3))); J; [ [ 1, 0, 1 ], [ 1, 1, 0 ] ] # apply permutation to rows gap> Permuted(J, (1,2)); [ [ 1, 1, 0 ], [ 1, 0, 1 ] ]

OSE 2013, ˚ Abo University – p. 6/83

slide-7
SLIDE 7

Permuting ILPs...

π

           min (1, 1, 1)(x1, x2, x3)

T

  1 1 0 1 0 1        x1 x2 x3      ≥   1 1   ∀i ∈ {1, 2, 3} xi ∈ {0, 1}            =

OSE 2013, ˚ Abo University – p. 7/83

slide-8
SLIDE 8

...defined as permuting variables

= min (1, 1, 1)π(x1, x2, x3)

T

  1 1 0 1 0 1   π      x1 x2 x3      ≥   1 1   πx ∈ {0, 1}3

OSE 2013, ˚ Abo University – p. 8/83

slide-9
SLIDE 9

Action on linear forms

(1, 2, 3)(cTx) = (def) = cT(1, 2, 3)(x1, x2, x3) = = c1x3 + c2x1 + c3x2 = = c(1,2,3)3x3 + c(1,2,3)1x1 + c(1,2,3)2x2 = (reorder) = c(1,2,3)1x1 + c(1,2,3)2x2 + c(1,2,3)3x3 =

= ((1, 2, 3)(c1, c2, c3))      x1 x2 x3     

Permuting vars ⇔ permuting coeffs

OSE 2013, ˚ Abo University – p. 9/83

slide-10
SLIDE 10

Theorem

π      min cTx Ax ≥ b x ∈ Z      = min (πc)

Tx

(πA)x ≥ b x ∈ Z

OSE 2013, ˚ Abo University – p. 10/83

slide-11
SLIDE 11

ILP isomorphism

π is an ILP isomorphism if

min cTx Ax ≥ b x ∈ Z          “=”          min (πc)

Tx

(πA)x ≥ b x ∈ Z

the constraint order is irrelevant

⇒ “=” means:

πc = c ∧ ∃σ (πAσ = A ∧ bσ = b)

OSE 2013, ˚ Abo University – p. 11/83

slide-12
SLIDE 12

Example

min (1, 1, 1, 1, 1, 1)Tx

      

1 1 1 1 1 1 1 1 1 1 1 1

      

x ≥

      

1 1 1 1 1

      

∀i ≤ 6 xi ∈ {0, 1}

                      

gap> A := [[1,1,1,0,0,0], [0,0,0,1,1,1], [1,0,0,1,0,0], [0,1,0,0,1,0], [0,0,1,0,0,1]];; gap> G := MatrixAutomorphisms(A); Group([(1,4)(2,5)(3,6), (2,3)(5,6), (1,2)(4,5)]) gap> StructureDescription(G); "D12"

OSE 2013, ˚ Abo University – p. 12/83

slide-13
SLIDE 13

Another example

Change LP data: c = (2, 2, 1, 2, 2, 1) and b = (2, 2, 1, 1, 1)T Add a last row (c, 0) and column (b, 0)T to A Re-compute the matrix automorphism group

gap> for i in [1..Size(A)] do A[i] := Concatenation(A[i], [1]); od;; gap> A[1][7] := 2;; A[2][7] := 2;; gap> Add(A, [2,2,1,2,2,1,0]); gap> H := MatrixAutomorphisms(A); Group([ (1,4)(2,5)(3,6), (1,2)(4,5) ]) gap> StructureDescription(H); "C2 x C2" gap> IsSubgroup(G,H); true

OSE 2013, ˚ Abo University – p. 13/83

slide-14
SLIDE 14

Generalizations

Similar definitions hold for LP , MILP , SDP For NLP/MINLP , need more work Transform MINLP into a graph using expression DAGs E.g. x

y + ey is represented by

+ ÷ x y e·

Define MINLP isomorphism as a DAG isomorphism

OSE 2013, ˚ Abo University – p. 14/83

slide-15
SLIDE 15

NLP example

Consider the following NLP

min x6 + x7 + x8 + x9

c0 : x6x7 + x8x9

= 1

c1 : x6x8 + x7x9

= 1 x6, x7, x8, x9 ∈ [−1, 1]

Objective x6 + x7 + x8 + x9 and box constraints

x6, x7, x8, x9 ∈ [−1, 1]: invariant w.r.t. all permutations of {x6, x7, x8, x9}

Just look at the symmetries of c0, c1

OSE 2013, ˚ Abo University – p. 15/83

slide-16
SLIDE 16

NLP example

x66 x77 x88 x99 +0 ×2 ×3 +1 ×4 ×5

Dreadnaut version 2.4 (32 bits). > n=10 g 2 3; 4 5; 6 7; 8 9; 6 8; 7 9. f=[0:1|2:5|6:9] x (4 5)(6 7)(8 9) !blue: variable permutations (2 3)(6 8)(7 9) !purple:

  • perator permutations

(0 1)(2 4)(3 5)(7 8) !red: constraint permutations (0, 1)(2, 4)(3, 5)(7, 8): can swap x7, x8 if at the same time swap operator nodes 2, 4 and 3, 5, and constraint nodes 0, 1

OSE 2013, ˚ Abo University – p. 16/83

slide-17
SLIDE 17

NLP example

Only look at action on variable indices

x7, x8 can be swapped ⇒ ((1, 0, 1, 1) is a solution ⇒ (1, 1, 0, 1) is also a solution)

But DAG nodes also include operators “Project” DAG group action onto variable nodes

gap> L := [(4,5)(6,7)(8,9), (2,3)(6,8)(7,9), (10,1)(2,4)(3,5)(7,8)];; gap> G := Group(L);; GAP perms. start from 1 gap> Omg := Orbits(G); [ [ 1, 10 ], [ 2, 3, 4, 5 ], [6, 7, 8, 9 ]

  • ]

gap> H := Action(G, Omg[3]); Group([ (1,3)(2,4), (1,2)(3,4), (2,3) ]) gap> LoadPackage("SONATA");; gap> IsIsomorphicGroup(H, G); true variable indices

OSE 2013, ˚ Abo University – p. 17/83

slide-18
SLIDE 18

What are orbits?

1 2 1 2 2 1

x = (2, 1, 0)

gx=(1,2,0) g=(1,2) gx=(0,2,1) g=(1,2,3) gx=(0,1,2) g=(1,3) gx=(1,0,2) g=(1,3,2) gx=(2,0,1) g=(2,3)

S3(2, 1, 0)T

OSE 2013, ˚ Abo University – p. 18/83

slide-19
SLIDE 19

What are orbits?

π1 = (1, 2) π2 = (4, 5, 6) G = π1, π2 X = {1, 2, 3, 4, 5, 6} x1 ∼ x2 ⇔ ∃π ∈ G (π(x1) = x2) Ω(G)

  • X/∼

= {{1, 2}, {3}, {4, 5, 6}}

OSE 2013, ˚ Abo University – p. 19/83

slide-20
SLIDE 20

Formulation group

Reduce a MP P to a coloured DAG DP Find the automorphism group Aut(DP) of the DAG Thm. The action of Aut(DP) on DP can be “meaningfully projected” onto the set of variable indices “Meaningfully”⇒

∃Λ ⊆ Ω(DP) ( Λ = set of variable indices)

Notation: Ω(G) = set of orbits of G

Projection GP: formulation group of P

Projection operator: look at generators of DP as disjoint cycle products, only keep cycles acting on index variables

OSE 2013, ˚ Abo University – p. 20/83

slide-21
SLIDE 21

Solution group

Let G(P) be the set of globally optimal solutions of P The group Aut(G(P)) of automorphisms of G(P) is the

solution group of P

Thm. Formulation group ≤ the solution group Computing the solution group generally requires G(P) The formulation group can be computed a priori

OSE 2013, ˚ Abo University – p. 21/83

slide-22
SLIDE 22

Detecting symmetries in MINLPs

OSE 2013, ˚ Abo University – p. 22/83

slide-23
SLIDE 23

MINLP

Minimize an objective function f(x) subject to constraints ∀i ≤ m gi(x) ≤ bi Some variables might be integer: ∀i ∈ Z (xi ∈ Z)

f, gi are mathematical expressions representing

functions Rn → R We represent mathematical expressions using DAGs, E.g. xy given by

× x y

No black-box functions

OSE 2013, ˚ Abo University – p. 23/83

slide-24
SLIDE 24

MINLP as DAG

Introduce special nodes for objective & constraints

min{x | xy ≥ 1∧x+y ≥ 0} P ≥ + ≥ × x y 1

min

Color nodes the same if it makes sense to swap them

P ≥ + ≥ × x y 1

min

OSE 2013, ˚ Abo University – p. 24/83

slide-25
SLIDE 25

Finding graph automorphisms

1 2 3 4 5 6 7 8 9

10

Dreadnaut version 2.4 (32 bits). n=10 $=1 g 2 5 10; 3 4; 7 8; ; 6 9; 7 8; ; ; ; 7; x (2 5)(3 6)(4 9) f=[1|2 5|3|4|6|9|7 8|10] x () !

trivial group: no symmetries

OSE 2013, ˚ Abo University – p. 25/83

slide-26
SLIDE 26

From the MINLPLib: elf

24 binary variables, 30 continuous variables ≥ 0 min

48

  • i=25

xi ∀i ∈ {25, . . . , 48}, j ∈ {49, 50, 51}, k ∈ {1, . . . , 8} xi − (ck − xj)2 ≥ 100(xi−24 − 1) ∀k ∈ {1, . . . 8}

3k

  • i=3(k−1)+1

xi ≥ 1 ∀h ∈ {1, 2, 3} x52+h =

8

  • k=1

x3(k−1)+h ∀h ∈ {1, 2, 3} x48+hx52+h =

8

  • k=1

ckx3(k−1)+h (c1, . . . , c8) = (8, 8.5, 8.3, 8.7, 8.6, 9, 9.2, 9.5)

OSE 2013, ˚ Abo University – p. 26/83

slide-27
SLIDE 27

The elf’s DAG

$ ( cat elf.mod ; echo "option solver roseamp;" ; \ echo "option roseamp options \"mainsolver=14 symmgroupouttype=3\";" ; \ echo "solve;" ) | ampl > /dev/null 2>&1 $ mv Rsymmgroup out.gph elf.gph $ gph2dot elf.gph > elf.dot $ dot -Tgif elf.dot > elf.gif

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 55 24 56 25 58 26 28 57 27 59 29 60 30 61 31 65 32 62 33 63 34 36 64 35 66 37 67 38 69 39 41 68 40 70 42 71 43 72 44 76 45 73 46 74 47 49 75 48 77 50 78 51 80 52 54 79 53 81 55 82 56 83 57 87 58 84 59 85 60 62 86 61 88 63 89 64 91 65 67 90 66 92 68 93 69 94 70 98 71 95 72 96 73 75 97 74 99 76 100 77 102 78 80 101 79 103 81 104 82 105 83 109 84 106 85 107 86 88 108 87 110 89 111 90 113 91 93 112 92 114 94 115 95 116 96 120 97 117 98 118 99 101 119 100 121 102 122 103 124 104 106 123 105 125 107 126 108 127 109 131 110 128 111 129 112 114 130 113 132 115 133 116 135 117 119 134 118 136 120 137 121 138 122 142 123 139 124 140 125 127 141 126 143 128 144 129 146 130 132 145 131 147 133 148 134 149 135 153 136 150 137 151 138 140 152 139 154 141 155 142 157 143 145 156 144 158 146 159 147 160 148 164 149 161 150 162 151 153 163 152 165 154 166 155 168 156 158 167 157 169 159 170 160 171 161 175 162 172 163 173 164 166 174 165 176 167 177 168 179 169 171 178 170 180 172 181 173 182 174 186 175 183 176 184 177 179 185 178 187 180 188 181 190 182 184 189 183 191 185 192 186 193 187 197 188 194 189 195 190 192 196 191 198 193 199 194 201 195 197 200 196 202 198 203 199 204 200 208 201 205 202 206 203 205 207 204 209 206 210 207 212 208 210 211 209 213 211 214 212 215 213 219 214 216 215 217 216 218 218 217 220 219 221 220 223 221 223 222 222 224 224 225 225 226 226 230 227 227 228 228 229 231 229 230 231 232 232 233 234 234 236 233 235 235 237 236 238 237 239 241 240 238 241 239 242 244 240 243 242 245 243 246 245 247 249 244 248 246 250 247 251 248 252 252 253 249 254 250 255 257 251 256 253 258 254 259 256 260 262 255 261 257 263 258 264 259 265 263 266 260 267 261 268 270 262 269 264 271 265 272 267 273 275 266 274 268 276 269 277 270 278 274 279 271 280 272 281 283 273 282 275 284 276 285 278 286 288 277 287 279 289 280 290 281 291 285 292 282 293 283 294 296 284 295 286 297 287 298 289 299 301 288 300 290 302 291 303 292 304 296 305 293 306 294 307 309 295 308 297 310 298 311 300 312 314 299 313 301 315 302 316 303 317 307 318 304 319 305 320 322 306 321 308 323 309 324 311 325 327 310 326 312 328 313 329 314 330 318 331 315 332 316 333 335 317 334 319 320 336 322 337 324 338 326 339 328 340 330 341 332 342 334 343 336 344 346 321 345 348 323 347 350 325 349 352 327 351 354 329 353 356 331 355 358 333 357 360 335 359 361 362 337 338 363 340 364 342 365 344 366 346 367 348 368 350 369 352 370 354 371 373 339 372 375 341 374 377 343 376 379 345 378 381 347 380 383 349 382 385 351 384 387 353 386 388 389 355 356 390 358 391 360 392 362 393 364 394 366 395 368 396 370 397 372 398 400 357 399 402 359 401 404 361 403 406 363 405 408 365 407 410 367 409 412 369 411 414 371 413 415 416 373 417 418 419 374 420 421 422 375 423 424 425 376 426 427 428 377 429 430 431 378 432 433 434 379 435 436 437 380 438 439 440 381 441 382 442 384 443 386 444 388 445 390 446 392 447 394 448 396 449 451 383 450 453 385 452 455 387 454 457 389 456 459 391 458 461 393 460 463 395 462 465 397 464 398 466 399 467 401 468 403 469 405 470 407 471 409 472 411 473 413 474 476 400 475 478 402 477 480 404 479 482 406 481 484 408 483 486 410 485 488 412 487 490 414 489 415 491 416 492 418 493 420 494 422 495 424 496 426 497 428 498 430 499 501 417 500 503 419 502 505 421 504 507 423 506 509 425 508 511 427 510 513 429 512 515 431 514

OSE 2013, ˚ Abo University – p. 27/83

slide-28
SLIDE 28

The elf’s group

$ mod2group elf.mod $ cat elf.gap | gap -b <permutation group with 2 generators> G := Group( [ ( 2, 3)( 5, 6)( 8, 9)( 11, 12)( 14, 15)( 17, 18)( 20, 21) ( 23, 24)( 26, 27)( 29, 30)( 32, 33)( 35, 36)( 38, 39)( 41, 42)( 44, 45) ( 47, 48)( 50, 51)( 53, 54), ( 1, 2)( 4, 5)( 7, 8)( 10, 11)( 13, 14) ( 16, 17)( 19, 20)( 22, 23)( 25, 26)( 28, 29)( 31, 32)( 34, 35)( 37, 38) ( 40, 41)( 43, 44)( 46, 47)( 49, 50)( 52, 53) ] ) gap> StructureDescription(G); "S3"

The S3 structure is not immediately evident from

1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 3 0 3 1 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 4 0 4 1 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 9 5 0 5 1 5 2 5 3 5 4 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 2 2 2 3 5 5 2 4 5 6 2 5 5 8 2 6 2 8 5 7 2 7 5 9 2 9 6 0 3 0 6 1 3 1 6 5 3 2 6 2 3 3 6 3 3 4 3 6 6 4 3 5 6 6 3 7 6 7 3 8 6 9 3 9 4 1 6 8 4 0 7 0 4 2 7 1 4 3 7 2 4 4 7 6 4 5 7 3 4 6 7 4 4 7 4 9 7 5 4 8 7 7 5 0 7 8 5 1 8 0 5 2 5 4 7 9 5 3 8 1 5 5 8 2 5 6 8 3 5 7 8 7 5 8 8 4 5 9 8 5 6 0 6 2 8 6 6 1 8 8 6 3 8 9 6 4 9 1 6 5 6 7 9 0 6 6 9 2 6 8 9 3 6 9 9 4 7 0 9 8 7 1 9 5 7 2 9 6 7 3 7 5 9 7 7 4 9 9 7 6 100 7 7 102 7 8 8 0 101 7 9 103 8 1 104 8 2 105 8 3 109 8 4 106 8 5 107 8 6 8 8 108 8 7 110 8 9 111 9 0 113 9 1 9 3 112 9 2 114 9 4 115 9 5 116 9 6 120 9 7 117 9 8 118 9 9 1 0 1 119 1 0 0 121 1 0 2 122 1 0 3 124 1 0 4 1 0 6 123 1 0 5 125 1 0 7 126 1 0 8 127 1 0 9 131 1 1 0 128 1 1 1 129 1 1 2 1 1 4 130 1 1 3 132 1 1 5 133 1 1 6 135 1 1 7 1 1 9 134 1 1 8 136 1 2 0 137 1 2 1 138 1 2 2 142 1 2 3 139 1 2 4 140 1 2 5 1 2 7 141 1 2 6 143 1 2 8 144 1 2 9 146 1 3 0 1 3 2 145 1 3 1 147 1 3 3 148 1 3 4 149 1 3 5 153 1 3 6 150 1 3 7 151 1 3 8 1 4 0 152 1 3 9 154 1 4 1 155 1 4 2 157 1 4 3 1 4 5 156 1 4 4 158 1 4 6 159 1 4 7 160 1 4 8 164 1 4 9 161 1 5 0 162 1 5 1 1 5 3 163 1 5 2 165 1 5 4 166 1 5 5 168 1 5 6 1 5 8 167 1 5 7 169 1 5 9 170 1 6 0 171 1 6 1 175 1 6 2 172 1 6 3 173 1 6 4 1 6 6 174 1 6 5 176 1 6 7 177 1 6 8 179 1 6 9 1 7 1 178 1 7 0 180 1 7 2 181 1 7 3 182 1 7 4 186 1 7 5 183 1 7 6 184 1 7 7 1 7 9 185 1 7 8 187 1 8 0 188 1 8 1 190 1 8 2 1 8 4 189 1 8 3 191 1 8 5 192 1 8 6 193 1 8 7 197 1 8 8 194 1 8 9 195 1 9 0 1 9 2 196 1 9 1 198 1 9 3 199 1 9 4 201 1 9 5 1 9 7 200 1 9 6 202 1 9 8 203 1 9 9 204 2 0 0 208 2 0 1 205 2 0 2 206 2 0 3 2 0 5 207 2 0 4 209 2 0 6 210 2 0 7 212 2 0 8 2 1 0 211 2 0 9 213 2 1 1 214 2 1 2 215 2 1 3 219 2 1 4 216 2 1 5 217 2 1 6 2 1 8 218 2 1 7 220 2 1 9 221 2 2 0 223 2 2 1 2 2 3 222 2 2 2 224 2 2 4 225 2 2 5 226 2 2 6 230 2 2 7 227 2 2 8 228 2 2 9 2 3 1 229 2 3 0 231 2 3 2 232 2 3 3 234 2 3 4 2 3 6 233 2 3 5 235 2 3 7 236 2 3 8 237 2 3 9 241 2 4 0 238 2 4 1 239 2 4 2 2 4 4 240 2 4 3 242 2 4 5 243 2 4 6 245 2 4 7 2 4 9 244 2 4 8 246 2 5 0 247 2 5 1 248 2 5 2 252 2 5 3 249 2 5 4 250 2 5 5 2 5 7 251 2 5 6 253 2 5 8 254 2 5 9 256 2 6 0 2 6 2 255 2 6 1 257 2 6 3 258 2 6 4 259 2 6 5 263 2 6 6 260 2 6 7 261 2 6 8 2 7 0 262 2 6 9 264 2 7 1 265 2 7 2 267 2 7 3 2 7 5 266 2 7 4 268 2 7 6 269 2 7 7 270 2 7 8 274 2 7 9 271 2 8 0 272 2 8 1 2 8 3 273 2 8 2 275 2 8 4 276 2 8 5 278 2 8 6 2 8 8 277 2 8 7 279 2 8 9 280 2 9 0 281 2 9 1 285 2 9 2 282 2 9 3 283 2 9 4 2 9 6 284 2 9 5 286 2 9 7 287 2 9 8 289 2 9 9 3 0 1 288 3 0 0 290 3 0 2 291 3 0 3 292 3 0 4 296 3 0 5 293 3 0 6 294 3 0 7 3 0 9 295 3 0 8 297 3 1 0 298 3 1 1 300 3 1 2 3 1 4 299 3 1 3 301 3 1 5 302 3 1 6 303 3 1 7 307 3 1 8 304 3 1 9 305 3 2 0 3 2 2 306 3 2 1 308 3 2 3 309 3 2 4 311 3 2 5 3 2 7 310 3 2 6 312 3 2 8 313 3 2 9 314 3 3 0 318 3 3 1 315 3 3 2 316 3 3 3 3 3 5 317 3 3 4 319 320 3 3 6 322 3 3 7 324 3 3 8 326 3 3 9 328 3 4 0 330 3 4 1 332 3 4 2 334 3 4 3 336 3 4 4 3 4 6 321 3 4 5 3 4 8 323 3 4 7 3 5 0 325 3 4 9 3 5 2 327 3 5 1 3 5 4 329 3 5 3 3 5 6 331 3 5 5 3 5 8 333 3 5 7 3 6 0 335 3 5 9 3 6 1 3 6 2 337 338 3 6 3 340 3 6 4 342 3 6 5 344 3 6 6 346 3 6 7 348 3 6 8 350 3 6 9 352 3 7 0 354 3 7 1 3 7 3 339 3 7 2 3 7 5 341 3 7 4 3 7 7 343 3 7 6 3 7 9 345 3 7 8 3 8 1 347 3 8 0 3 8 3 349 3 8 2 3 8 5 351 3 8 4 3 8 7 353 3 8 6 3 8 8 3 8 9 355 356 3 9 0 358 3 9 1 360 3 9 2 362 3 9 3 364 3 9 4 366 3 9 5 368 3 9 6 370 3 9 7 372 3 9 8 4 0 0 357 3 9 9 4 0 2 359 4 0 1 4 0 4 361 4 0 3 4 0 6 363 4 0 5 4 0 8 365 4 0 7 4 1 0 367 4 0 9 4 1 2 369 4 1 1 4 1 4 371 4 1 3 4 1 5 4 1 6 373 4 1 7 4 1 8 4 1 9 374 4 2 0 4 2 1 4 2 2 375 4 2 3 4 2 4 4 2 5 376 4 2 6 4 2 7 4 2 8 377 4 2 9 4 3 0 4 3 1 378 4 3 2 4 3 3 4 3 4 379 4 3 5 4 3 6 4 3 7 380 4 3 8 4 3 9 4 4 0 381 4 4 1 382 4 4 2 384 4 4 3 386 4 4 4 388 4 4 5 390 4 4 6 392 4 4 7 394 4 4 8 396 4 4 9 4 5 1 383 4 5 0 4 5 3 385 4 5 2 4 5 5 387 4 5 4 4 5 7 389 4 5 6 4 5 9 391 4 5 8 4 6 1 393 4 6 0 4 6 3 395 4 6 2 4 6 5 397 4 6 4 398 4 6 6 399 4 6 7 401 4 6 8 403 4 6 9 405 4 7 0 407 4 7 1 409 4 7 2 411 4 7 3 413 4 7 4 4 7 6 400 4 7 5 4 7 8 402 4 7 7 4 8 0 404 4 7 9 4 8 2 406 4 8 1 4 8 4 408 4 8 3 4 8 6 410 4 8 5 4 8 8 412 4 8 7 4 9 0 414 4 8 9 415 4 9 1 416 4 9 2 418 4 9 3 420 4 9 4 422 4 9 5 424 4 9 6 426 4 9 7 428 4 9 8 430 4 9 9 5 0 1 417 5 0 0 5 0 3 419 5 0 2 5 0 5 421 5 0 4 5 0 7 423 5 0 6 5 0 9 425 5 0 8 5 1 1 427 5 1 0 5 1 3 429 5 1 2 5 1 5 431 5 1 4

Let’s redraw the graph using fdp. . .

OSE 2013, ˚ Abo University – p. 28/83

slide-29
SLIDE 29

The elf’s DAG again

1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 3 0 3 1 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 4 0 4 1 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 9 5 0 5 1 5 2 5 3 5 4 1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 2 2 2 3 5 5 2 4 5 6 2 5 5 8 2 6 2 8 5 7 2 7 5 9 2 9 6 0 3 0 6 1 3 1 6 5 3 2 6 2 3 3 6 3 3 4 3 6 6 4 3 5 6 6 3 7 6 7 3 8 6 9 3 9 4 1 6 8 4 0 7 0 4 2 7 1 4 3 7 2 4 4 7 6 4 5 7 3 4 6 7 4 4 7 4 9 7 5 4 8 7 7 5 0 7 8 5 1 8 0 5 2 5 4 7 9 5 3 8 1 5 5 8 2 5 6 8 3 5 7 8 7 5 8 8 4 5 9 8 5 6 0 6 2 8 6 6 1 8 8 6 3 8 9 6 4 9 1 6 5 6 7 9 0 6 6 9 2 6 8 9 3 6 9 9 4 7 0 9 8 7 1 9 5 7 2 9 6 7 3 7 5 9 7 7 4 9 9 7 6 100 7 7 102 7 8 8 0 101 7 9 103 8 1 104 8 2 105 8 3 109 8 4 106 8 5 107 8 6 8 8 108 8 7 110 8 9 111 9 0 113 9 1 9 3 112 9 2 114 9 4 115 9 5 116 9 6 120 9 7 117 9 8 118 9 9 1 0 1 119 1 0 0 121 1 0 2 122 1 0 3 124 1 0 4 1 0 6 123 1 0 5 125 1 0 7 126 1 0 8 127 1 0 9 131 1 1 0 128 1 1 1 129 1 1 2 1 1 4 130 1 1 3 132 1 1 5 133 1 1 6 135 1 1 7 1 1 9 134 1 1 8 136 1 2 0 137 1 2 1 138 1 2 2 142 1 2 3 139 1 2 4 140 1 2 5 1 2 7 141 1 2 6 143 1 2 8 144 1 2 9 146 1 3 0 1 3 2 145 1 3 1 147 1 3 3 148 1 3 4 149 1 3 5 153 1 3 6 150 1 3 7 151 1 3 8 1 4 0 152 1 3 9 154 1 4 1 155 1 4 2 157 1 4 3 1 4 5 156 1 4 4 158 1 4 6 159 1 4 7 160 1 4 8 164 1 4 9 161 1 5 0 162 1 5 1 1 5 3 163 1 5 2 165 1 5 4 166 1 5 5 168 1 5 6 1 5 8 167 1 5 7 169 1 5 9 170 1 6 0 171 1 6 1 175 1 6 2 172 1 6 3 173 1 6 4 1 6 6 174 1 6 5 176 1 6 7 177 1 6 8 179 1 6 9 1 7 1 178 1 7 0 180 1 7 2 181 1 7 3 182 1 7 4 186 1 7 5 183 1 7 6 184 1 7 7 1 7 9 185 1 7 8 187 1 8 0 188 1 8 1 190 1 8 2 1 8 4 189 1 8 3 191 1 8 5 192 1 8 6 193 1 8 7 197 1 8 8 194 1 8 9 195 1 9 0 1 9 2 196 1 9 1 198 1 9 3 199 1 9 4 201 1 9 5 1 9 7 200 1 9 6 202 1 9 8 203 1 9 9 204 2 0 0 208 2 0 1 205 2 0 2 206 2 0 3 2 0 5 207 2 0 4 209 2 0 6 210 2 0 7 212 2 0 8 2 1 0 211 2 0 9 213 2 1 1 214 2 1 2 215 2 1 3 219 2 1 4 216 2 1 5 217 2 1 6 2 1 8 218 2 1 7 220 2 1 9 221 2 2 0 223 2 2 1 2 2 3 222 2 2 2 224 2 2 4 225 2 2 5 226 2 2 6 230 2 2 7 227 2 2 8 228 2 2 9 2 3 1 229 2 3 0 231 2 3 2 232 2 3 3 234 2 3 4 2 3 6 233 2 3 5 235 2 3 7 236 2 3 8 237 2 3 9 241 2 4 0 238 2 4 1 239 2 4 2 2 4 4 240 2 4 3 242 2 4 5 243 2 4 6 245 2 4 7 2 4 9 244 2 4 8 246 2 5 0 247 2 5 1 248 2 5 2 252 2 5 3 249 2 5 4 250 2 5 5 2 5 7 251 2 5 6 253 2 5 8 254 2 5 9 256 2 6 0 2 6 2 255 2 6 1 257 2 6 3 258 2 6 4 259 2 6 5 263 2 6 6 260 2 6 7 261 2 6 8 2 7 0 262 2 6 9 264 2 7 1 265 2 7 2 267 2 7 3 2 7 5 266 2 7 4 268 2 7 6 269 2 7 7 270 2 7 8 274 2 7 9 271 2 8 0 272 2 8 1 2 8 3 273 2 8 2 275 2 8 4 276 2 8 5 278 2 8 6 2 8 8 277 2 8 7 279 2 8 9 280 2 9 0 281 2 9 1 285 2 9 2 282 2 9 3 283 2 9 4 2 9 6 284 2 9 5 286 2 9 7 287 2 9 8 289 2 9 9 3 0 1 288 3 0 0 290 3 0 2 291 3 0 3 292 3 0 4 296 3 0 5 293 3 0 6 294 3 0 7 3 0 9 295 3 0 8 297 3 1 0 298 3 1 1 300 3 1 2 3 1 4 299 3 1 3 301 3 1 5 302 3 1 6 303 3 1 7 307 3 1 8 304 3 1 9 305 3 2 0 3 2 2 306 3 2 1 308 3 2 3 309 3 2 4 311 3 2 5 3 2 7 310 3 2 6 312 3 2 8 313 3 2 9 314 3 3 0 318 3 3 1 315 3 3 2 316 3 3 3 3 3 5 317 3 3 4 319 320 3 3 6 322 3 3 7 324 3 3 8 326 3 3 9 328 3 4 0 330 3 4 1 332 3 4 2 334 3 4 3 336 3 4 4 3 4 6 321 3 4 5 3 4 8 323 3 4 7 3 5 0 325 3 4 9 3 5 2 327 3 5 1 3 5 4 329 3 5 3 3 5 6 331 3 5 5 3 5 8 333 3 5 7 3 6 0 335 3 5 9 3 6 1 3 6 2 337 338 3 6 3 340 3 6 4 342 3 6 5 344 3 6 6 346 3 6 7 348 3 6 8 350 3 6 9 352 3 7 0 354 3 7 1 3 7 3 339 3 7 2 3 7 5 341 3 7 4 3 7 7 343 3 7 6 3 7 9 345 3 7 8 3 8 1 347 3 8 0 3 8 3 349 3 8 2 3 8 5 351 3 8 4 3 8 7 353 3 8 6 3 8 8 3 8 9 355 356 3 9 0 358 3 9 1 360 3 9 2 362 3 9 3 364 3 9 4 366 3 9 5 368 3 9 6 370 3 9 7 372 3 9 8 4 0 0 357 3 9 9 4 0 2 359 4 0 1 4 0 4 361 4 0 3 4 0 6 363 4 0 5 4 0 8 365 4 0 7 4 1 0 367 4 0 9 4 1 2 369 4 1 1 4 1 4 371 4 1 3 4 1 5 4 1 6 373 4 1 7 4 1 8 4 1 9 374 4 2 0 4 2 1 4 2 2 375 4 2 3 4 2 4 4 2 5 376 4 2 6 4 2 7 4 2 8 377 4 2 9 4 3 0 4 3 1 378 4 3 2 4 3 3 4 3 4 379 4 3 5 4 3 6 4 3 7 380 4 3 8 4 3 9 4 4 0 381 4 4 1 382 4 4 2 384 4 4 3 386 4 4 4 388 4 4 5 390 4 4 6 392 4 4 7 394 4 4 8 396 4 4 9 4 5 1 383 4 5 0 4 5 3 385 4 5 2 4 5 5 387 4 5 4 4 5 7 389 4 5 6 4 5 9 391 4 5 8 4 6 1 393 4 6 0 4 6 3 395 4 6 2 4 6 5 397 4 6 4 398 4 6 6 399 4 6 7 401 4 6 8 403 4 6 9 405 4 7 0 407 4 7 1 409 4 7 2 411 4 7 3 413 4 7 4 4 7 6 400 4 7 5 4 7 8 402 4 7 7 4 8 0 404 4 7 9 4 8 2 406 4 8 1 4 8 4 408 4 8 3 4 8 6 410 4 8 5 4 8 8 412 4 8 7 4 9 0 414 4 8 9 415 4 9 1 416 4 9 2 418 4 9 3 420 4 9 4 422 4 9 5 424 4 9 6 426 4 9 7 428 4 9 8 430 4 9 9 5 0 1 417 5 0 0 5 0 3 419 5 0 2 5 0 5 421 5 0 4 5 0 7 423 5 0 6 5 0 9 425 5 0 8 5 1 1 427 5 1 0 5 1 3 429 5 1 2 5 1 5 431 5 1 4

OSE 2013, ˚ Abo University – p. 29/83

slide-30
SLIDE 30

Drawing mathematical programs

OSE 2013, ˚ Abo University – p. 30/83

slide-31
SLIDE 31

gear2 DAG and group

D8

1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 3 6 1 3 0 2 3 1 3 3 2 4 3 3 5 3 4 6 3 5 7 8 9 1 0 1 1 3 7 1 2 3 8 1 3 4 0 1 4 4 2 1 5 4 4 1 6 4 6 1 7 4 8 1 8 2 0 3 9 1 9 2 2 4 1 2 1 2 4 4 3 2 3 2 6 4 5 2 5 2 8 4 7 2 7 3 0 4 9 2 9 5 0 3 1 5 1 3 2 5 3 3 3 5 5 3 4 5 7 3 5 5 9 3 6 6 1 3 7 3 9 5 2 3 8 4 1 5 4 4 0 4 3 5 6 4 2 4 5 5 8 4 4 4 7 6 0 4 6 4 9 6 2 4 8 6 3 5 0 6 4 5 1 6 6 5 2 6 8 5 3 7 0 5 4 7 2 5 5 7 4 5 6 5 8 6 5 5 7 6 0 6 7 5 9 6 2 6 9 6 1 6 4 7 1 6 3 6 6 7 3 6 5 6 8 7 5 6 7 7 6 6 9 7 7 7 0 7 9 7 1 8 1 7 2 8 3 7 3 8 5 7 4 8 7 7 5 7 7 7 8 7 6 7 9 8 0 7 8 8 1 8 2 8 0 8 3 8 4 8 2 8 5 8 6 8 4 8 7 8 8 8 6

OSE 2013, ˚ Abo University – p. 31/83

slide-32
SLIDE 32

hmittelman DAG and group

C3

2

1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 2 0 1 2 3 2 2 4 3 2 7 4 3 0 5 3 3 6 3 4 7 3 7 8 1 8 9 1 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 2 1 1 8 2 2 1 9 2 0 2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 3 0 2 5 3 1 2 6 3 2 3 3 3 4 3 5 3 6 2 8 3 7 2 9 3 8 3 9 4 0 4 1 4 2 3 1 4 3 3 2 4 4 4 5 4 6 4 7 4 8 4 9 5 0 5 1 5 2 5 3 3 5 5 4 3 6 5 5 5 6 5 7 5 8 5 9 6 0 3 8 6 1 3 9 6 2 6 3 6 4 6 5 6 6 4 0 4 1 6 7 4 4 6 8 4 7 6 9 5 0 7 0 5 1 7 1 5 4 7 2 4 2 7 3 4 3 7 4 7 5 7 6 7 7 7 8 7 9 8 0 8 1 4 5 8 2 4 6 8 3 8 4 8 5 8 6 8 7 8 8 8 9 4 8 9 0 4 9 9 1 9 2 9 3 9 4 9 5 9 6 9 7 9 8 9 9 1 0 0 5 2 1 0 1 5 3 1 0 2 1 0 3 1 0 4 1 0 5 1 0 6 5 5 1 0 7 5 6 1 0 8 1 0 9 1 1 0 1 1 1 1 1 2 5 7 5 8 1 1 3 5 9 1 1 4 6 2 1 1 5 6 5 1 1 6 6 6 1 1 7 6 9 1 1 8 1 1 9 1 2 0 1 2 1 1 2 2 1 2 3 1 2 4 6 0 1 2 5 6 1 1 2 6 1 2 7 1 2 8 1 2 9 1 3 0 1 3 1 6 3 1 3 2 6 4 1 3 3 1 3 4 1 3 5 1 3 6 1 3 7 1 3 8 1 3 9 1 4 0 1 4 1 1 4 2 6 7 1 4 3 6 8 1 4 4 1 4 5 1 4 6 1 4 7 1 4 8 1 4 9 1 5 0 1 5 1 1 5 2 1 5 3 7 0 7 1 1 5 4 7 4 1 5 5 7 7 1 5 6 8 0 1 5 7 8 3 1 5 8 7 2 1 5 9 7 3 1 6 0 1 6 1 1 6 2 1 6 3 1 6 4 1 6 5 1 6 6 1 6 7 7 5 1 6 8 7 6 1 6 9 1 7 0 1 7 1 1 7 2 1 7 3 1 7 4 1 7 5 7 8 1 7 6 7 9 1 7 7 1 7 8 1 7 9 1 8 0 1 8 1 1 8 2 8 1 1 8 3 8 2 1 8 4 1 8 5 1 8 6 1 8 7 1 8 8 1 8 9 1 9 0 1 9 1 1 9 2 1 9 3 8 4 8 5 1 9 4 8 8 1 9 5 9 1 1 9 6 9 2 1 9 7 9 5 1 9 8 8 6 1 9 9 8 7 2 0 0 2 0 1 2 0 2 2 0 3 2 0 4 2 0 5 2 0 6 8 9 2 0 7 9 0 2 0 8 2 0 9 2 1 0 2 1 1 2 1 2 2 1 3 2 1 4 2 1 5 2 1 6 2 1 7 2 1 8 2 1 9 2 2 0 9 3 2 2 1 9 4 2 2 2 2 2 3 2 2 4 2 2 5 2 2 6 2 2 7 9 6 2 2 8 9 7 2 2 9 2 3 0 2 3 1 2 3 2 2 3 3 9 8 9 9 2 3 4 102 2 3 5 105 2 3 6 108 2 3 7 109 2 3 8 112 2 3 9 100 2 4 0 101 2 4 1 2 4 2 2 4 3 2 4 4 2 4 5 2 4 6 103 2 4 7 104 2 4 8 2 4 9 2 5 0 2 5 1 2 5 2 106 2 5 3 107 2 5 4 2 5 5 2 5 6 2 5 7 2 5 8 2 5 9 2 6 0 2 6 1 2 6 2 2 6 3 110 2 6 4 111 2 6 5 2 6 6 2 6 7 2 6 8 2 6 9 2 7 0 113 2 7 1 114 2 7 2 2 7 3 2 7 4 2 7 5 2 7 6 115 116 2 7 7 119 2 7 8 122 2 7 9 125 2 8 0 128 2 8 1 131 2 8 2 134 2 8 3 117 2 8 4 118 2 8 5 2 8 6 2 8 7 2 8 8 2 8 9 2 9 0 2 9 1 120 2 9 2 121 2 9 3 2 9 4 2 9 5 2 9 6 2 9 7 123 2 9 8 124 2 9 9 3 0 0 3 0 1 3 0 2 3 0 3 126 3 0 4 127 3 0 5 3 0 6 3 0 7 3 0 8 3 0 9 3 1 0 129 3 1 1 130 3 1 2 3 1 3 3 1 4 3 1 5 3 1 6 3 1 7 132 3 1 8 133 3 1 9 3 2 0 3 2 1 3 2 2 3 2 3 135 3 2 4 136 3 2 5 3 2 6 3 2 7 3 2 8 3 2 9 137 138 3 3 0 141 3 3 1 144 3 3 2 147 3 3 3 150 3 3 4 153 3 3 5 156 3 3 6 139 3 3 7 140 3 3 8 3 3 9 3 4 0 3 4 1 3 4 2 3 4 3 3 4 4 142 3 4 5 143 3 4 6 3 4 7 3 4 8 3 4 9 3 5 0 3 5 1 3 5 2 3 5 3 145 3 5 4 146 3 5 5 3 5 6 3 5 7 3 5 8 3 5 9 3 6 0 148 3 6 1 149 3 6 2 3 6 3 3 6 4 3 6 5 3 6 6 151 3 6 7 152 3 6 8 3 6 9 3 7 0 3 7 1 3 7 2 154 3 7 3 155 3 7 4 3 7 5 3 7 6 3 7 7 3 7 8 157 3 7 9 158 3 8 0 3 8 1 3 8 2 3 8 3 3 8 4

OSE 2013, ˚ Abo University – p. 32/83

slide-33
SLIDE 33

nvs09 DAG and group

S10

1 2 3 4 5 6 7 8 9 1 0 1 1 1 6 1 2 1 2 2 8 3 3 3 4 4 0 5 4 5 6 5 2 7 5 7 8 6 4 9 6 9 1 0 7 6 1 1 8 1 1 2 8 8 1 3 9 3 1 4 100 1 5 105 1 6 112 1 7 117 1 8 124 1 9 129 2 0 1 2 2 1 1 5 2 2 1 3 2 3 2 4 1 4 2 5 1 7 2 6 1 8 2 7 1 9 2 8 2 0 2 9 3 0 3 1 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 2 2 4 0 2 7 4 1 2 3 4 2 2 4 4 3 2 5 4 4 4 6 2 6 4 5 2 9 4 7 3 2 4 8 3 0 4 9 5 0 3 1 5 1 3 4 5 2 3 9 5 3 3 5 5 4 3 6 5 5 3 7 5 6 5 8 3 8 5 7 4 1 5 9 4 4 6 0 4 2 6 1 6 2 4 3 6 3 4 6 6 4 5 1 6 5 4 7 6 6 4 8 6 7 4 9 6 8 7 0 5 0 6 9 5 3 7 1 5 6 7 2 5 4 7 3 7 4 5 5 7 5 5 8 7 6 6 3 7 7 5 9 7 8 6 0 7 9 6 1 8 0 8 2 6 2 8 1 6 5 8 3 6 8 8 4 6 6 8 5 8 6 6 7 8 7 7 0 8 8 7 5 8 9 7 1 9 0 7 2 9 1 7 3 9 2 9 4 7 4 9 3 7 7 9 5 8 0 9 6 7 8 9 7 9 8 7 9 9 9 8 2 1 0 0 8 7 1 0 1 8 3 1 0 2 8 4 1 0 3 8 5 1 0 4 1 0 6 8 6 1 0 5 8 9 1 0 7 9 2 1 0 8 9 0 1 0 9 1 1 0 9 1 1 1 1 9 4 1 1 2 9 9 1 1 3 9 5 1 1 4 9 6 1 1 5 9 7 1 1 6 1 1 8 9 8 1 1 7 101 1 1 9 104 1 2 0 102 1 2 1 1 2 2 103 1 2 3 106 1 2 4 111 1 2 5 107 1 2 6 108 1 2 7 109 1 2 8 1 3 0 110 1 2 9 113 1 3 1 116 1 3 2 114 1 3 3 1 3 4 115 1 3 5 118 1 3 6 123 1 3 7 119 1 3 8 120 1 3 9 121 1 4 0 1 4 2 122 1 4 1 125 1 4 3 128 1 4 4 126 1 4 5 1 4 6 127 1 4 7 130 1 4 8 135 1 4 9 131 1 5 0 132 1 5 1 133 1 5 2 1 5 4 134 1 5 3

OSE 2013, ˚ Abo University – p. 33/83

slide-34
SLIDE 34

synheat DAG and group

S4

1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 3 0 3 1 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 4 0 4 1 4 2 4 3 4 44 5 4 6 4 7 4 8 4 9 5 0 5 1 5 2 5 3 5 4 5 5 5 6 5 7 5 8 5 9 6 0 6 1 6 2 6 3 6 46 5 6 6 6 7 6 8 6 9 7 1 1 7 3 2 7 5 3 7 7 4 7 9 5 8 1 6 8 3 7 8 5 8 8 7 9 8 9 1 0 9 1 1 1 9 3 1 2 9 5 1 3 9 7 1 4 9 9 1 5 101 1 6 103 1 7 105 1 8 107 1 9 109 2 0 122 2 1 135 2 2 148 2 3 161 2 4 174 2 5 187 2 6 200 2 7 213 2 8 227 2 9 241 3 0 253 3 1 3 3 7 0 3 2 3 5 7 2 3 4 3 7 7 4 3 6 3 9 7 6 3 8 4 1 7 8 4 0 4 3 8 0 4 2 4 5 8 2 4 4 4 7 8 4 4 6 4 9 8 6 4 8 5 1 8 8 5 0 5 3 9 0 5 2 5 5 9 2 5 4 5 7 9 4 5 6 5 9 9 6 5 8 6 1 9 8 6 0 6 3 100 6 2 6 5 102 6 4 6 7 104 6 6 6 9 106 6 8 7 1 108 7 0 110 7 2 111 7 3 7 4 112 7 5 113 7 6 121 7 7 114 7 8 120 7 9 115 8 0 119 8 1 116 8 2 117 8 3 8 4 8 5 118 8 6 8 7 8 8 123 8 9 124 9 0 9 1 125 9 2 126 9 3 134 9 4 127 9 5 133 9 6 128 9 7 132 9 8 129 9 9 130 1 0 0 1 0 1 1 0 2 131 1 0 3 1 0 4 1 0 5 136 1 0 6 137 1 0 7 1 0 8 138 1 0 9 139 1 1 0 147 1 1 1 140 1 1 2 146 1 1 3 141 1 1 4 145 1 1 5 142 1 1 6 143 1 1 7 1 1 8 1 1 9 144 1 2 0 1 2 1 1 2 2 149 1 2 3 150 1 2 4 1 2 5 151 1 2 6 152 1 2 7 160 1 2 8 153 1 2 9 159 1 3 0 154 1 3 1 158 1 3 2 155 1 3 3 156 1 3 4 1 3 5 1 3 6 157 1 3 7 1 3 8 1 3 9 162 1 4 0 163 1 4 1 1 4 2 164 1 4 3 165 1 4 4 173 1 4 5 166 1 4 6 172 1 4 7 167 1 4 8 171 1 4 9 168 1 5 0 169 1 5 1 1 5 2 1 5 3 170 1 5 4 1 5 5 1 5 6 175 1 5 7 176 1 5 8 1 5 9 177 1 6 0 178 1 6 1 186 1 6 2 179 1 6 3 185 1 6 4 180 1 6 5 184 1 6 6 181 1 6 7 182 1 6 8 1 6 9 1 7 0 183 1 7 1 1 7 2 1 7 3 188 1 7 4 189 1 7 5 1 7 6 190 1 7 7 191 1 7 8 199 1 7 9 192 1 8 0 198 1 8 1 193 1 8 2 197 1 8 3 194 1 8 4 195 1 8 5 1 8 6 1 8 7 196 1 8 8 1 8 9 1 9 0 201 1 9 1 202 1 9 2 1 9 3 203 1 9 4 204 1 9 5 212 1 9 6 205 1 9 7 211 1 9 8 206 1 9 9 210 2 0 0 207 2 0 1 208 2 0 2 2 0 3 2 0 4 209 2 0 5 2 0 6 2 0 7 214 2 0 8 215 2 0 9 2 1 0 216 2 1 1 217 2 1 2 226 2 1 3 218 2 1 4 225 2 1 5 219 2 1 6 220 2 1 7 2 1 8 221 2 1 9 222 2 2 0 224 2 2 1 2 2 3 223 2 2 2 228 2 2 4 229 2 2 5 2 2 6 230 2 2 7 231 2 2 8 240 2 2 9 232 2 3 0 239 2 3 1 233 2 3 2 234 2 3 3 2 3 4 235 2 3 5 236 2 3 6 238 2 3 7 2 3 9 237 2 3 8 242 2 4 0 243 2 4 1 2 4 2 244 2 4 3 245 2 4 4 252 2 4 5 246 2 4 6 251 2 4 7 247 2 4 8 248 2 4 9 2 5 0 249 2 5 1 2 5 2 250 2 5 3 254 2 5 4 255 2 5 5 2 5 6 256 2 5 7 257 2 5 8 264 2 5 9 258 2 6 0 263 2 6 1 259 2 6 2 260 2 6 3 2 6 4 261 2 6 5 2 6 6 262 2 6 7 265 2 6 9 266 2 6 8 2 7 1 267 2 7 0 268 2 7 3 269 2 7 2 2 7 5 270 2 7 4 271 2 7 7 272 2 7 6 2 7 9 273 2 7 8 274 2 8 1 275 2 8 0 2 8 3 276 2 8 2 277 2 8 5 278 2 8 4 2 8 7 279 2 8 6 280 2 8 9 281 2 8 8 2 9 1 282 2 9 0 283 2 9 3 284 2 9 2 2 9 5 285 2 9 4 286 2 9 7 287 2 9 6 2 9 9 288 2 9 8 289 3 0 1 290 3 0 0 3 0 3 291 3 0 2 292 3 0 5 293 3 0 4 3 0 7 294 3 0 6 295 3 0 9 296 3 0 8 3 1 1 297 3 1 0 298 3 1 3 299 3 1 2 3 1 5 300 3 1 4 301 302 3 1 6 304 3 1 7 306 3 1 8 308 3 1 9 3 2 1 303 3 2 0 3 2 3 305 3 2 2 3 2 5 307 3 2 4 3 2 7 309 3 2 6 310 311 3 2 8 313 3 2 9 315 3 3 0 317 3 3 1 3 3 3 312 3 3 2 3 3 5 314 3 3 4 3 3 7 316 3 3 6 3 3 9 318 3 3 8 319 320 3 4 0 322 3 4 1 324 3 4 2 326 3 4 3 3 4 5 321 3 4 4 3 4 7 323 3 4 6 3 4 9 325 3 4 8 3 5 1 327 3 5 0 328 329 3 5 2 331 3 5 3 333 3 5 4 335 3 5 5 3 5 7 330 3 5 6 3 5 9 332 3 5 8 3 6 1 334 3 6 0 3 6 3 336 3 6 2 337 338 3 6 4 340 3 6 5 3 6 7 339 3 6 6 3 6 9 341 3 6 8 342 343 3 7 0 345 3 7 1 3 7 3 344 3 7 2 3 7 5 346 3 7 4 347 348 3 7 6 350 3 7 7 352 3 7 8 354 3 7 9 356 3 8 0 3 8 2 349 3 8 1 3 8 4 351 3 8 3 3 8 6 353 3 8 5 3 8 8 355 3 8 7 3 9 0 357 3 8 9 358 359 3 9 1 361 3 9 2 363 3 9 3 365 3 9 4 367 3 9 5 3 9 7 360 3 9 6 3 9 9 362 3 9 8 4 0 1 364 4 0 0 4 0 3 366 4 0 2 4 0 5 368 4 0 4 369 370 4 0 6 372 4 0 7 374 4 0 8 376 4 0 9 4 1 1 371 4 1 0 4 1 3 373 4 1 2 4 1 5 375 4 1 4 4 1 7 377 4 1 6 378 379 4 1 8 381 4 1 9 383 4 2 0 385 4 2 1 4 2 3 380 4 2 2 4 2 5 382 4 2 4 4 2 7 384 4 2 6 4 2 9 386 4 2 8 387 388 4 3 0 390 4 3 1 392 4 3 2 394 4 3 3 4 3 5 389 4 3 4 4 3 7 391 4 3 6 4 3 9 393 4 3 8 4 4 1 395 4 4 0 396 397 4 4 2 399 4 4 3 401 4 4 4 403 4 4 5 4 4 7 398 4 4 6 4 4 9 400 4 4 8 4 5 1 402 4 5 0 4 5 3 404 4 5 2 405 406 4 5 4 408 4 5 5 4 5 7 407 4 5 6 4 5 9 409 4 5 8 410 411 4 6 0 413 4 6 1 4 6 3 412 4 6 2 4 6 5 414 4 6 4 415 416 4 6 6 418 4 6 7 420 4 6 8 422 4 6 9 424 4 7 0 4 7 2 417 4 7 1 4 7 4 419 4 7 3 4 7 6 421 4 7 5 4 7 8 423 4 7 7 4 8 0 425 4 7 9 426 427 4 8 1 429 4 8 2 431 4 8 3 433 4 8 4 435 4 8 5 4 8 7 428 4 8 6 4 8 9 430 4 8 8 4 9 1 432 4 9 0 4 9 3 434 4 9 2 4 9 5 436 4 9 4 437 4 9 6 438 4 9 7 4 9 9 439 4 9 8 440 5 0 0 441 5 0 1 5 0 3 442 5 0 2 443 5 0 4 444 5 0 5 5 0 7 445 5 0 6 446 5 0 8 447 5 0 9 5 1 1 448 5 1 0 449 5 1 2 450 5 1 3 5 1 5 451 5 1 4 452 5 1 6 453 5 1 7 5 1 9 454 5 1 8 455 5 2 0 456 5 2 1 5 2 3 457 5 2 2 458 5 2 4 459 5 2 5 5 2 7 460 5 2 6 461 5 2 8 462 5 2 9 5 3 1 463 5 3 0 464 5 3 2 465 5 3 3 5 3 5 466 5 3 4 467 5 3 6 468 5 3 7 5 3 9 469 5 3 8 470 5 4 0 471 5 4 1 5 4 3 472 5 4 2 473 5 4 4 474 5 4 5 5 4 7 475 5 4 6 476 5 4 8 477 5 4 9 5 5 1 478 5 5 0 479 5 5 2 480 5 5 3 5 5 5 481 5 5 4 482 5 5 6 483 5 5 7 5 5 9 484 5 5 8 485 5 6 0 486 5 6 1 5 6 3 487 5 6 2 488 5 6 4 489 5 6 5 5 6 7 490 5 6 6 491 5 6 8 492 5 6 9 5 7 1 493 5 7 0 494 5 7 2 495 5 7 3 5 7 5 496 5 7 4 497 5 7 6 5 7 8 498 5 7 7 500 5 7 9 5 8 1 499 5 8 0 5 8 3 501 5 8 2 502 5 8 4 5 8 6 503 5 8 5 505 5 8 7 5 8 9 504 5 8 8 5 9 1 506 5 9 0 507 5 9 2 5 9 4 508 5 9 3 510 5 9 5 5 9 7 509 5 9 6 5 9 9 511 5 9 8 512 6 0 0 6 0 2 513 6 0 1 515 6 0 3 6 0 5 514 6 0 4 6 0 7 516 6 0 6 517 6 0 8 6 1 0 518 6 0 9 520 6 1 1 6 1 3 519 6 1 2 6 1 5 521 6 1 4 522 6 1 6 6 1 8 523 6 1 7 525 6 1 9 6 2 1 524 6 2 0 6 2 3 526 6 2 2 527 6 2 4 6 2 6 528 6 2 5 530 6 2 7 6 2 9 529 6 2 8 6 3 1 531 6 3 0 532 6 3 2 6 3 4 533 6 3 3 535 6 3 5 6 3 7 534 6 3 6 6 3 9 536 6 3 8 537 6 4 0 6 4 2 538 6 4 1 540 6 4 3 6 4 5 539 6 4 4 6 4 7 541 6 4 6 542 6 4 8 6 5 0 543 6 4 9 545 6 5 1 6 5 3 544 6 5 2 6 5 5 546 6 5 4 547 6 5 6 6 5 8 548 6 5 7 550 6 5 9 6 6 1 549 6 6 0 6 6 3 551 6 6 2 552 6 6 4 6 6 6 553 6 6 5 555 6 6 7 6 6 9 554 6 6 8 6 7 1 556 6 7 0 557 6 7 2 6 7 4 558 6 7 3 560 6 7 5 6 7 7 559 6 7 6 6 7 9 561 6 7 8 562 6 8 0 6 8 2 563 6 8 1 565 6 8 3 6 8 5 564 6 8 4 6 8 7 566 6 8 6 567 6 8 8 6 9 0 568 6 8 9 570 6 9 1 6 9 3 569 6 9 2 6 9 5 571 6 9 4 572 6 9 6 6 9 8 573 6 9 7 575 6 9 9 7 0 1 574 7 0 0 7 0 3 576 7 0 2 577 7 0 4 578 7 0 5 7 0 7 579 7 0 6 580 7 0 8 581 7 0 9 7 1 1 582 7 1 0 583 7 1 2 7 1 3 584 7 1 4 7 1 5

OSE 2013, ˚ Abo University – p. 34/83

slide-35
SLIDE 35

sts27 DAG and group

(C3

3 ⋉ PSL(3, 3)) ⋉ C2

1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 2 2 2 3 2 4 2 5 2 6 2 7

1 2 3 4 5 6 7 8 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 2 0 2 1 2 2 2 3 2 4 2 5 2 6

2 8

2 7 2 8 2 9

2 9

3 0 3 1 3 2

3 0

3 3 3 4 3 5

3 1

3 6 3 7 3 8

3 2

3 9 4 0 4 1

3 3

4 2 4 3 4 4

3 4

4 5 4 6 4 7

3 5

4 8 4 9 5 0

3 6

5 1 5 2 5 3

3 7

5 4 5 5 5 6

3 8

5 7 5 8 5 9

3 9

6 0 6 1 6 2

4 0

6 3 6 4 6 5

4 1

6 6 6 7 6 8

4 2

6 9 7 0 7 1

4 3

7 2 7 3 7 4

4 4

7 5 7 6 7 7

4 5

7 8 7 9 8 0

4 6

8 1 8 2 8 3

4 7

8 4 8 5 8 6

4 8

8 7 8 8 8 9

4 9

9 0 9 1 9 2

5 0

9 3 9 4 9 5

5 1

9 6 9 7 9 8

5 2

9 9 1 0 0 1 0 1

5 3

1 0 2 1 0 3 1 0 4

5 4

1 0 5 1 0 6 1 0 7

5 5

1 0 8 1 0 9 1 1 0

5 6

1 1 1 1 1 2 1 1 3

5 7

1 1 4 1 1 5 1 1 6

5 8

1 1 7 1 1 8 1 1 9

5 9

1 2 0 1 2 1 1 2 2

6 0

1 2 3 1 2 4 1 2 5

6 1

1 2 6 1 2 7 1 2 8

6 2

1 2 9 1 3 0 1 3 1

6 3

1 3 2 1 3 3 1 3 4

6 4

1 3 5 1 3 6 1 3 7

6 5

1 3 8 1 3 9 1 4 0

6 6

1 4 1 1 4 2 1 4 3

6 7

1 4 4 1 4 5 1 4 6

6 8

1 4 7 1 4 8 1 4 9

6 9

1 5 0 1 5 1 1 5 2

7 0

1 5 3 1 5 4 1 5 5

7 1

1 5 6 1 5 7 1 5 8

7 2

1 5 9 1 6 0 1 6 1

7 3

1 6 2 1 6 3 1 6 4

7 4

1 6 5 1 6 6 1 6 7

7 5

1 6 8 1 6 9 1 7 0

7 6

1 7 1 1 7 2 1 7 3

7 7

1 7 4 1 7 5 1 7 6

7 8

1 7 7 1 7 8 1 7 9

7 9

1 8 0 1 8 1 1 8 2

8 0

1 8 3 1 8 4 1 8 5

8 1

1 8 6 1 8 7 1 8 8

8 2

1 8 9 1 9 0 1 9 1

8 3

1 9 2 1 9 3 1 9 4

8 4

1 9 5 1 9 6 1 9 7

8 5

1 9 8 1 9 9 2 0 0

8 6

2 0 1 2 0 2 2 0 3

8 7

2 0 4 2 0 5 2 0 6

8 8

2 0 7 2 0 8 2 0 9

8 9

2 1 0 2 1 1 2 1 2

9 0

2 1 3 2 1 4 2 1 5

9 1

2 1 6 2 1 7 2 1 8

9 2

2 1 9 2 2 0 2 2 1

9 3

2 2 2 2 2 3 2 2 4

9 4

2 2 5 2 2 6 2 2 7

9 5

2 2 8 2 2 9 2 3 0

9 6

2 3 1 2 3 2 2 3 3

9 7

2 3 4 2 3 5 2 3 6

9 8

2 3 7 2 3 8 2 3 9

9 9

2 4 0 2 4 1 2 4 2

100

2 4 3 2 4 4 2 4 5

101

2 4 6 2 4 7 2 4 8

102

2 4 9 2 5 0 2 5 1

103

2 5 2 2 5 3 2 5 4

104

2 5 5 2 5 6 2 5 7

105

2 5 8 2 5 9 2 6 0

106

2 6 1 2 6 2 2 6 3

107

2 6 4 2 6 5 2 6 6

108

2 6 7 2 6 8 2 6 9

109

2 7 0 2 7 1 2 7 2

110

2 7 3 2 7 4 2 7 5

111

2 7 6 2 7 7 2 7 8

112

2 7 9 2 8 0 2 8 1

113

2 8 2 2 8 3 2 8 4

114

2 8 5 2 8 6 2 8 7

115

2 8 8 2 8 9 2 9 0

116

2 9 1 2 9 2 2 9 3

117

2 9 4 2 9 5 2 9 6

118

2 9 7 2 9 8 2 9 9

119

3 0 0 3 0 1 3 0 2

120

3 0 3 3 0 4 3 0 5

121

3 0 6 3 0 7 3 0 8

122

3 0 9 3 1 0 3 1 1

123

3 1 2 3 1 3 3 1 4

124

3 1 5 3 1 6 3 1 7

125

3 1 8 3 1 9 3 2 0

126

3 2 1 3 2 2 3 2 3

127

3 2 4 3 2 5 3 2 6

128

3 2 7 3 2 8 3 2 9

129

3 3 0 3 3 1 3 3 2

130

3 3 3 3 3 4 3 3 5

131

3 3 6 3 3 7 3 3 8

132

3 3 9 3 4 0 3 4 1

133

3 4 2 3 4 3 3 4 4

134

3 4 5 3 4 6 3 4 7

135

3 4 8 3 4 9 3 5 0

136

3 5 1 3 5 2 3 5 3

137

3 5 4 3 5 5 3 5 6

138

3 5 7 3 5 8 3 5 9

139

3 6 0 3 6 1 3 6 2

140

3 6 3 3 6 4 3 6 5

141

3 6 6 3 6 7 3 6 8

142

3 6 9 3 7 0 3 7 1

143

3 7 2 3 7 3 3 7 4

144

3 7 5 3 7 6 3 7 7

OSE 2013, ˚ Abo University – p. 35/83

slide-36
SLIDE 36

ex8 4 6 DAG and group

S3

1 2 3 4 5 6 7 8 9 1 0 1 1 12 13 1 4 1 5 2 0 1 25 2 3 0 3 3 5 4 4 0 5 45 6 50 7 1 6 8 1 9 9 1 1 1 7 1 0 1 2 1 8 1 3 2 1 1 4 24 1 5 1 7 2 2 1 6 1 8 2 3 1 9 26 2 0 29 2 1 2 3 27 2 2 2 4 28 2 5 3 1 2 6 3 4 2 7 2 9 3 2 2 8 3 0 3 3 3 1 3 6 3 2 3 9 3 3 3 5 3 7 3 4 3 6 3 8 3 7 4 1 3 8 4 4 3 9 4 1 4 2 4 0 4 2 4 3 4 3 46 4 4 49 4 5 4 7 47 4 6 4 8 48 4 9 51 5 0 54 5 1 5 3 52 5 2 5 4 53 5 5 5 5 5 6 5 6 5 8 5 7 6 2 5 8 6 6 5 9 6 1 5 7 6 0 6 2 5 9 6 3 60 6 4 6 6 61 6 5 6 7 6 3 6 8 6 4 6 9 7 1 6 5 7 0 7 2 6 7 7 3 6 8 7 4 7 6 6 9 7 5 7 0 7 1 7 7 7 3 7 8 7 7 7 9 8 1 8 0 8 2 7 2 8 1 8 3 7 4 8 4 75 8 5 8 7 76 8 6 8 8 7 8 8 9 7 9 9 0 9 2 8 0 9 1 9 3 8 2 9 4 8 3 9 5 9 7 8 4 9 6 8 5 86 9 8 8 8 9 9 9 2 1 0 0 9 6 1 0 1 1 0 3 87 1 0 2 1 0 4 89 1 0 5 90 1 0 6 1 0 8 91 1 0 7 1 0 9 9 3 1 1 0 9 4 1 1 1 1 1 3 9 5 1 1 2 1 1 4 9 7 1 1 5 9 8 1 1 6 1 1 8 9 9 1 1 7 100 101 1 1 9 103 1 2 0 107 1 2 1 111 1 2 2 1 2 4 102 1 2 3 1 2 5 104 1 2 6 105 1 2 7 1 2 9 106 1 2 8 1 3 0 108 1 3 1 109 1 3 2 1 3 4 110 1 3 3 1 3 5 112 1 3 6 113 1 3 7 1 3 9 114 1 3 8 115 116 1 4 0 118 1 4 1 122 1 4 2 126 1 4 3 1 4 5 117 1 4 4 1 4 6 119 1 4 7 120 1 4 8 1 5 0 121 1 4 9 1 5 1 123 1 5 2 124 1 5 3 1 5 5 125 1 5 4 1 5 6 127 1 5 7 128 1 5 8 1 6 0 129 1 5 9 130 131 1 6 1 133 1 6 2 137 1 6 3 141 1 6 4 1 6 6 132 1 6 5 1 6 7 134 1 6 8 135 1 6 9 1 7 1 136 1 7 0 1 7 2 138 1 7 3 139 1 7 4 1 7 6 140 1 7 5 1 7 7 142 1 7 8 143 1 7 9 1 8 1 144 1 8 0 145 146 1 8 2 148 1 8 3 152 1 8 4 156 1 8 5 1 8 7 147 1 8 6 1 8 8 149 1 8 9 150 1 9 0 1 9 2 151 1 9 1 1 9 3 153 1 9 4 154 1 9 5 1 9 7 155 1 9 6 1 9 8 157 1 9 9 158 2 0 0 2 0 2 159 2 0 1 160 161 2 0 3 163 2 0 4 167 2 0 5 171 2 0 6 2 0 8 162 2 0 7 2 0 9 164 2 1 0 165 2 1 1 2 1 3 166 2 1 2 2 1 4 168 2 1 5 169 2 1 6 2 1 8 170 2 1 7 2 1 9 172 2 2 0 173 2 2 1 2 2 3 174 2 2 2

OSE 2013, ˚ Abo University – p. 36/83

slide-37
SLIDE 37

From instances to problems

OSE 2013, ˚ Abo University – p. 37/83

slide-38
SLIDE 38

Conjecturing symmetries

Reduction to graph isomorphism: per-instance Problem ≡ infinite set of instances parametrized on

symbols taking infinitely many values How about finding symmetries of a problem?

  • 1. Generate many small instances
  • 2. Use method above to detect their formulation group
  • 3. Use GAP’s StructureDescription to find their

group name

  • 4. Conjecture a group name in function of problem

parameter

  • 5. Prove your conjecture

OSE 2013, ˚ Abo University – p. 38/83

slide-39
SLIDE 39

Kissing Number Problem

KISSING NUMBER PROBLEM (decision version): Given integers D, N > 1, can N unit spheres (with pairwise empty interior intersection) be placed adjacent to a given unit sphere in Rd?

Formulation:

maxx,α α ∀i ≤ N ||xi||2 = 1 ∀i < j ≤ N ||xi − xj||2 ≥ α α ∈ [0, 1], ∀i ≤ N xi ∈ [−1, 1]D

OSE 2013, ˚ Abo University – p. 39/83

slide-40
SLIDE 40

KNP group properties

If α ≥ 1, answer YES, otherwise NO

The solution group has infinite (uncountable) cardinality: each feasible solution can be rotated by any angle in RD

The formulation group, however, is necessarily finite

OSE 2013, ˚ Abo University – p. 40/83

slide-41
SLIDE 41

KNP group: wrong conjecture

$ ./knpsymm 2 4 knp.mod ./knpsymm: group structure is C2 $ ./knpsymm 2 5 knp.mod ./knpsymm: group structure is C2 $ ./knpsymm 2 6 knp.mod ./knpsymm: group structure is C2 $ ./knpsymm 3 4 knp.mod ./knpsymm: group structure is S3 $ ./knpsymm 3 5 knp.mod ./knpsymm: group structure is S3 $ ./knpsymm 3 6 knp.mod ./knpsymm: group structure is S3

Conjecture: GP ∼

= SD

OSE 2013, ˚ Abo University – p. 41/83

slide-42
SLIDE 42

KNP group: right conjecture

Rewrite constraint xi − xj2 ≥ α using xi2 = 1:

xi − xj2 =

  • k≤D

(xik − xjk)2 =

  • k≤D

(x2

ik + x2 jk − 2xikxjk)

=

  • k≤D

x2

ik +

  • k≤D

x2

ik −

  • k≤D

xikxjk = xi2 + xj2 −

  • k≤D

xikxjk = 2 −

  • k≤D

xikxjk

OSE 2013, ˚ Abo University – p. 42/83

slide-43
SLIDE 43

KNP group: right conjecture

$ ./knpsymm 2 4 knpref.mod ./knpsymm: group structure is C2 x S4 $ ./knpsymm 2 5 knpref.mod ./knpsymm: group structure is C2 x S5 $ ./knpsymm 2 6 knpref.mod ./knpsymm: group structure is C2 x S6 $ ./knpsymm 3 4 knpref.mod ./knpsymm: group structure is S4 x S3 $ ./knpsymm 3 5 knpref.mod ./knpsymm: group structure is S5 x S3 $ ./knpsymm 3 6 knpref.mod ./knpsymm: group structure is S6 x S3

Conjecture becomes: GP ∼

= SD × SN

(The reason: − is not commutative, × is)

OSE 2013, ˚ Abo University – p. 43/83

slide-44
SLIDE 44

Exploiting symmetries

OSE 2013, ˚ Abo University – p. 44/83

slide-45
SLIDE 45

Improving CPU time

If GP = 1, algorithms may evaluate symmetric solutions: duplication of effort

Overall strategy: “remove symmetries”

You are using a heuristic algorithm:

don’t bother

You are using BB/sBB:

can be useful

OSE 2013, ˚ Abo University – p. 45/83

slide-46
SLIDE 46

Removing symmetries

  • 1. Add cuts leaving at least one solution feasible but

making symmetric solutions infeasible problem reformulation of narrowing type symbolic algorithms acting on formulation use standard solvers to solve the reformulation marginal to good CPU improvement, worsening also possible but it’s basically for free

  • 2. Adapt standard solvers to natively deal with symmetry

best results much more difficult to implement CPU time worsening still occurs Focus on reformulation methods (at least it’s free, right?)

OSE 2013, ˚ Abo University – p. 46/83

slide-47
SLIDE 47

Symmetry Breaking Constraints

Recall the NLP example: min x6 + x7 + x8 + x9 c0 : x6x7 + x8x9 = 1 c1 : x6x8 + x7x9 = 1 x6, x7, x8, x9 ∈ [−1, 1] gap> G := Group((6,7)(8,9), (6,8)(7,9), (7,8));; Orbits(G)

[ [6, 7, 8, 9] ]

G is transitive on ω = {6, 7, 8, 9} ⇒ ∀i = j ∈ ω∃π ∈ G (π(i) = j) Thm. Whatever the structure of G, and for all i ∈ ω, there must be π ∈ G such that xπ(i) = min{xj | j ∈ ω}

Arbitrarily choose i = min ω

⇒ Cuts ∀j > i (xi ≤ xj) preserve at least one optimum

OSE 2013, ˚ Abo University – p. 47/83

slide-48
SLIDE 48

Generic SBCs

By definition, all groups are transitive on their orbits The action of GP

limited to a single orbit ω subsumes a group GP [ω]

called a transitive constituent of GP GP [ω] is isomorphic to a subgroup of GP GP [ω] could be seen as the “projection of GP on ω” Cuts for P guaranteed to keep at least one symmetric optimum feasible are called symmetry breaking constraints (SBC) SBCs depend on the structure of GP [ω] By transitivity of GP [ω] on ω, ∀j ∈ ω (j > min ω → xmin ω ≤ xj) are SBCs for any GP [ω] In any orbit, one element must index a component with minimum value

OSE 2013, ˚ Abo University – p. 48/83

slide-49
SLIDE 49

Strong SBCs

Thm. If x∗ is an optimum of P and GP[ω] = Sym(ω), any ordering

  • f {x∗

j | j ∈ ω} yields an optimum of P

Hence, the following are valid SBCs:

∀j ∈ ω (j < max ω → xj ≤ xj+),

where j+ is the <-successor of j in ω

In orbits where GP has a full symmetric action, we can impose an order

OSE 2013, ˚ Abo University – p. 49/83

slide-50
SLIDE 50

The sb3 reformulation

OSE 2013, ˚ Abo University – p. 50/83

slide-51
SLIDE 51

Automatic SBC generation

Strategy (sb3)

  • 1. Automatically detect GP
  • 2. Let ω be the largest orbit of GP
  • 3. If GP[ω] = Sym(ω), generate strong SBCs
  • 4. Otherwise, generate generic SBCs
  • 5. If [very restrictive conditions] let ω be another orbit of GP and

goto Step 3

OSE 2013, ˚ Abo University – p. 51/83

slide-52
SLIDE 52

Several orbits?

In general, we cannot carry out the previous procedure “for all orbits” min

x∈{0,1}4 x1 + x2 + x3 + x4

x1 + 2x3 ≥ 1 x2 + 2x4 ≥ 1 x1 + x2 = x3 + x4

1 2 3 4

1 2 3

5

4

6

5 7

7

6

8

8

9

9 1 1

1 0

1 0

1 1

1 2 1 3

1 2

1 4

1 4

1 5 1 7

1 3

1 6 1 9

1 5

1 8

Group GP = (1, 2)(3, 4) ∼ = C2, orbits Ω = {ω1 = {1, 2}, ω2 = {3, 4}} x∗ = (0, 1, 1, 0) is an optimum SBCs: ω1 ⇒ x1 ≤ x2 , ω2 ⇒ x3 ≤ x4 Both SBCs at the same time ⇒ both x∗, (1, 2)(3, 4)x∗ infeasible ⇒ problem becomes infeasible

OSE 2013, ˚ Abo University – p. 52/83

slide-53
SLIDE 53

Restrictive conditions

Let X ⊆ {1, . . . , n} and G ≤ Sn

G[X]: product of generators g of G s.t. g moves

elements of X only Consider distinct orbits ω, θ s.t. gcd(|ω|, |θ|) = 1 If GP[ω ∪ θ] has a subgroup H s.t:

H[ω] ∼ = C|ω| ∧ H[θ] ∼ = C|θ|

then: We can adjoin SBCs for ω, θ at the same time

OSE 2013, ˚ Abo University – p. 53/83

slide-54
SLIDE 54

Performance: small-scale

Generate and test small-scale vertex cover instances Formulation: given G = (V, E),

min

x∈{0,1}|V |

  • v∈V

xv ∀v ∈ V

  • u∈V

{u,v}∈E

xu ≥ 1

Formulation group ∼

= graph automorphism group

OSE 2013, ˚ Abo University – p. 54/83

slide-55
SLIDE 55

Mesh graphs 1

Size/group BB tree: original BB tree: sb3 10 × 10 C4

2 ⋉ C2

  • Inf

3 0 3 0 3 0 3 0 3 0 3 0 3 0 3 0 3 0 3 0

  • Inf

3 0 3 0 3 0 3 0 3 0 3 0 3 0 3 1 3 0 3 0

11 × 11 D2

8

  • Inf

3 5 3 5 3 6 3 5 3 6 3 5 3 6 3 6

  • Inf

3 6 3 5 3 6 3 7 3 5 3 6 3 5 3 5 3 6 3 6

12 × 12 C4

2 ⋉ C2

  • Inf

4 2 4 2 4 3 4 3 4 2 4 2 4 2 4 2 4 2 4 2 4 2 4 2 4 2 4 2

  • Inf

4 2 4 2 4 2 4 2

OSE 2013, ˚ Abo University – p. 55/83

slide-56
SLIDE 56

Mesh graphs 2

Mesh size BB tree: original BB tree: sb3 13 × 13 D2

8

  • Inf

5 0 5 0 5 0 5 0 5 0 4 9 4 9 4 9 4 9 4 9 4 9 4 9 4 9 4 9 5 0 5 0

  • Inf

5 0 4 9 4 9 5 0 4 9 4 9 4 9 4 9

14 × 14 C4

2 ⋉ C2

  • Inf

5 6 5 6 5 6 5 6 5 6 5 6 5 6 5 6 5 6 5 6 5 7 5 7 5 6 5 6 5 7 5 7

  • Inf

5 7 5 7 5 7 5 7 5 6 5 6 5 6 5 6 5 7 5 7 5 7 5 6 5 7 5 7 5 6 5 6 5 7 5 6

15 × 15 D2

8

  • Inf

6 3 6 3 6 4 6 3

  • Inf

6 3 6 3 6 4 6 3

OSE 2013, ˚ Abo University – p. 56/83

slide-57
SLIDE 57

Mesh graphs 3

Mesh size BB tree: original BB tree: sb3 16 × 16 C4

2 ⋉ C2

  • Inf
72 72 72 72 72 72 72 72 72 72 72 73 73 72 73 73 72 73 73 72 72 72 72 72 72 72 72 72 73 72 72 73 73 72 73 72 72 72 73 73 73 73
  • Inf

7 2 7 3 7 3 7 2 7 2 7 2 7 2 7 3 7 2 7 2 7 3 7 2

17 × 17 D2

8

  • Inf
8 2 8 2 8 1 8 2 8 2 8 2 8 1 8 1 8 1 8 1 8 2 8 1 8 1 8 1 8 2 8 1 8 2 8 1 8 1 8 1 8 2 8 2 8 2 8 2 8 2 8 2 8 1 8 1 8 1 8 1 8 1 8 1 8 1 8 1 8 1 8 2 8 2 8 2 8 1 8 1 8 1 8 1 8 1 8 1 8 1 8 1
  • Inf

8 1 8 1 8 1 8 1 8 1 8 1 8 2 8 1 8 2 8 1

18 × 18 C4

2 ⋉ C2

  • Inf
9 1 9 1 9 0 9 0 9 0 9 0 9 0 9 1 9 0 9 1 9 0 9 0 9 0 9 0 9 0 9 0 9 0 9 1 9 0 9 0 9 0 9 0 9 0 9 0 9 0 9 0 9 0 9 1 9 0 9 1 9 0 9 1 9 0 9 1 9 0 9 0 9 1 9 0 9 1 9 1 9 0 9 0 9 0 9 1 9 0 9 1 9 1 9 1 9 0 9 1 9 1 9 1 9 0 9 0 9 0 9 0 9 1 9 1 9 1 9 1 9 1 9 1
  • Inf

9 0 9 1 9 1 9 1 9 0 9 1 9 0 9 0 9 0 9 0 9 0 9 0 9 0 9 1

OSE 2013, ˚ Abo University – p. 57/83

slide-58
SLIDE 58

Mesh graphs 4

Mesh size BB tree: original BB tree: sb3 19 × 19 D2

8

  • Inf

9 9 9 9 9 9 9 9

  • Inf

9 9 9 9 9 9 9 9 9 9 1 0 0 1 0 0 9 9

20 × 20 C4

2 ⋉ C2

  • Inf
111 110 111 110 111 111 110 110 110 110 111 111 110 110 111 110 111 110 111 111 111 111 111 111 111 110 110 110 110 110 110 110 110 110 111 110 110 110 110 110 110 111 110 110
  • Inf
110 111 110 110 111 110 111 110 110 110 110 111 110 110 110 111 110 110 111 110 110 110 111 111 111 111 110 110 111 110 110 110 110 110 110 110 111 110 111 110 110 110 111 110

OSE 2013, ˚ Abo University – p. 58/83

slide-59
SLIDE 59

Torus graphs 1

Size/group BB tree: original BB tree: sb3 5 × 5 D2

10 ⋉ C2

  • Inf
7 7 7 7 7 8 7 7 7 8 7 8 8 8 7 7 8 8 8 8 8 8 8 8 8 8 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 7 7 8 8 8 8 8 8
  • Inf
7 25 7 7 7 7 7 8 7 7 8 8 8 8 8 8 7 7 8 8 8 8 8 8 8 8 8 8 7 7 8 8 8 8 8 8 8 8 8 8

6 × 6

(C2×(S2

3 ⋉C2))≀C2

  • Inf
9 1 0 9 1 0 1 0 1 0 9 1 0 1 0 1 0 9 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 0 1 0 1 0 1 1 1 0 1 0
  • Inf
9 3 6 9 1 0 9 1 0 1 0 1 0 9 1 0 1 0 1 0 9 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0

7 × 7 D2

14 ⋉ C2

  • Inf
13 13 13 13 13 14 13 13 13 14 13 14 14 14 13 13 13 14 14 14 14 14 13 14 14 14 13 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14 13 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14 13 13 14 14 14 14 14 14 13 13 14 14 14 14 15 14 14 14 14 14 15 14 15 14 15 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 15 15 15 15 14 14 14 15 14 14 14 15 15 15 15 14 14 14 15 14 14 14 14 14 15 15 14 14 14 14 14 14 14 14 14 14 14 14 15 15
  • Inf
13 13 13 13 13 14 13 13 14 14 13 14 14 14 13 13 14 14 14 14 14 14 13 14 14 14 13 13 13 14 14 14 14 14 13 14 14 14 13 13 14 14 14 14 14 15 14 14 14 14 13 14 14 14 14 14 15 14 15 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 15 14 14 14 14 15 15 14 15 14 14 15 14 15 15 14 14 15 14 15 14 15 15 14 14 15 15 15 15

OSE 2013, ˚ Abo University – p. 59/83

slide-60
SLIDE 60

Torus graphs 2

Mesh size BB tree: original BB tree: sb3 8 × 8 |G| = 131072 2 orbits

  • Inf
  • Inf

1 6 6 4

9 × 9 D2

18 ⋉ C2

(1105 nodes) (677 nodes) 10 × 10 |G| = 320000 2 orbits

  • Inf
2 5 2 6 2 5 2 6 2 6 2 6 2 5 2 6 2 6 2 6 2 5 2 6 2 6 2 6 2 5 2 6 2 6 2 6 2 5 2 6 2 6 2 6 2 5 2 6 2 6 2 6 2 5 2 6 2 6 2 6 2 5 2 6 2 6 2 6 2 6 2 6 2 6 2 6 2 6 2 6 2 6 2 6 2 6 2 6
  • Inf
25 100 25 26 25 26 26 26 25 26 26 26 25 26 26 26 25 26 26 26 25 26 26 26 25 26 26 26 25 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26 26

OSE 2013, ˚ Abo University – p. 60/83

slide-61
SLIDE 61

Triangle graphs 1

Size/group BB tree: original BB tree: sb3 5 S3

  • Inf

5 5 5 5 5 5

  • Inf

5 5 5 5 5 7

6 S3

  • Inf

5 5 6 6 6 6 6 6 6 6 6 6 6 6 7 6

  • Inf

5 8 6 6 8 8 6 6 6 6

7 S3

  • Inf
8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 9 9 8 8 8 8 8 8 8 8 8 8 8 8 8 9 8 8 9 9 9 9 9 9 9 9
  • Inf
8 9 8 8 10 10 8 8 8 8 8 8 9 9 8 8 8 8 9 8 8 8 9 9 9 9 9 9 9 9

OSE 2013, ˚ Abo University – p. 61/83

slide-62
SLIDE 62

Triangle graphs 2

Mesh size BB tree: original BB tree: sb3 8 S3

  • Inf
9 10 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 10 10 10 10 10 11 10 11 10 10 10 10 10 10 10 10 10 11 10 10 10 10 10 11 10 10 10 11 11 11 10 11 10 11
  • Inf
9 10 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 11 10 11 10 11 10 10 10 10 10 10 10 11 10 11 10 10 10 10 10 10 10 10 10 11 10 10 10 11 10 11 11 11 11 11 11 11 11 11 10 10 11 11 10 11 11 11 10 11 10 10 10 11 10 10 11 11 11 11 10 11 11 11 10 10 10 10 10 11 10 11 10 11 11 10

9 S3

  • Inf
10 10 10 10 10 10 11 11 11 11 11 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 12 11 11 12 12 11 11 12 12 11 11 12 12 12 12 12 11 11 11 12 11 11 11 11 12 12 12 12 12 12 12 12 12 12 12 11 12 12 12 11 12 11 12 12 12 12 12 11 11 12 12 12 12 12 12 12 12 11 11 12 12 12 12 12 12 12 12 12 12 12 12 11 12 12 12 12 12 11 12 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 11 11 11 12 12 12 12 12 12 12 12 12 12 12 12 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 13 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 12 12 12 12 13 12 12 12 13 12 12
  • Inf
10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 12 11 11 11 11 11 11 11 11 11 11 11 11 11 12 12 11 11 12 12 11 11 12 12 12 12 12 12 12 12 12 12 12 12 11 11 12 12 11 11 12 12 11 12 11 12 12 12 12 12 11 12 11 12 11 12 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 11 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 13 12 12 13 13 13 13 12 12 12 12 12 12 12 12 13 12 12 12 13 12 13 12 13 12 13 12

10 S3 (1593 nodes) (1271 nodes)

OSE 2013, ˚ Abo University – p. 62/83

slide-63
SLIDE 63

Permutahedron graphs

Order/group BB tree: original BB tree: sb3 3 S2

3 ⋉ C2

  • Inf

4 4 4 4 4 4

  • Inf

4 6 4 4

4 (C2

2 × A2 4) ⋉ C2

  • Inf
9 9 9 9 9 9 9 9 9 9 9 9 10 9 9 9 10 9 9 9 9 9 10 10 9 9 10 10 10 10 10 10 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10
  • Inf
9 9 9 9 9 9 9 9 10 9 9 9 9 9 10 10 9 9 10 10 9 10 9 10 9 9 10 10 10 10 10 10 10 10 10 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10

OSE 2013, ˚ Abo University – p. 63/83

slide-64
SLIDE 64

Flower snarks 1

Order/group BB tree: original BB tree: sb3 4 D2

8 ⋉ C2

  • Inf

6 6 6 7 6 6 6 6 7 7 6 7

  • Inf

6 6 7 6 7 6 7 7 7 6 7 8 7 6 7 7

5 S3 × D10

  • Inf
7 8 8 8 8 8 8 8 8 9 8 8 8 9 8 8 8 8 8 8 9 9 8 9 9 9 8 9 9 9
  • Inf

7 8 8 8 8 8 8 8 8 8 8 8 9 9

6 (C2

2 × S2 3) ⋉ C2

  • Inf
9 9 9 9 9 9 9 9 9 10 9 9 9 10 9 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 9 10 10 10 10 10 10 11 10 10 10 11 10 10 10 11 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 10 10 10 10 11 11 11 11 10 10 10 10 10 10 10 10
  • Inf
9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 10 10 10 11 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 11 10 10

OSE 2013, ˚ Abo University – p. 64/83

slide-65
SLIDE 65

Flower snarks 2

Order BB tree: original BB tree: sb3 7 S3 × D14

  • Inf
10 11 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 12 11 12 11 12 11 12 11 12 11 12 11 11 11 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 11 12 12 12 11 12 12 12 11 12 12 12 12 12 12 12 11 12 11 12 12 12 12 12 11 11 11 12 12 11 11 12 11 12 12 12 11 12 12 12 11 12 11 12 11 12 12 12 12 12 12 12
  • Inf
10 10 11 11 11 11 11 11 11 11 11 11 11 12 11 11 11 11 11 11 12 12 11 11 11 12 11 12 12 12 11 11 11 11 12 11 11 12 11 11 12 12 12 12 12 13 11 11 11 12 12 11 12 12

8 (D2

16) ⋉ C2

  • Inf
11 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 13 13 13 13 13 13 13 13 13 13 12 13 13 13 13 13 13 13 13 13 13 13 13 12 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13
  • Inf
12 12 12 12 12 12 12 12 12 13 12 12 13 13 13 12 13 12 13 13 13 13 13 13 12 13 13 13 12 13 13 13 13 12 13 13 13 12 13 13 13 13 13 13 13 13 13 13 13 13 13 13

9 S3 × D18

  • Inf
13 13 13 13 13 14 13 13 14 13 14 14 14 15 14 14 13 14 14 14 14 14 14 14 14 15 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 15 15 15 14 14 14 14 14 14 15 15 14 15 15 15 14 14 14 14 14 15 14 15 14 14 14 15 14 14 15 15 14 14 15 15 14 14 14 15 14 15 14 14 14 15 15 15 14 14 14 14 14 14 14 14 14 15 14 15 15 15 15 15 15 15 15 15
  • Inf
13 13 13 13 13 14 14 14 14 14 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 14 15 14 14 15 14 15 14 15 14 14 14 15 14 14 14 15 14 14 14 15 15 15 15 15 14 14 14 14 15 15 14 15 14 14 14 15 14 15 14 15 14 15 14 15 14 15 15 15 14 15 15 15 15 15 15 15 14 15 14 15 14 15 15 15 15 15 15 15 14 15 15 15 15 14 14 15 14 15 15 15 14 15 15 15 15 15 16 15 14 14 15 15 14 15 14 15 15 15 15 15 15 15 15 15 15 15 14 15 14 15 14 15 15 15 15 15 15 15 15 15 16 14 15 15 14 15 15 15 14 15 15 15 15 15 16 16 14 15 15 15 15 14 15 15 15 15 15 15 14 15 15 15 15 15 15 16 14 15 15 15 15 15 14 15

OSE 2013, ˚ Abo University – p. 65/83

slide-66
SLIDE 66

Improvement?

Sometimes the original formulation solves faster than the SBC reformulation

BB performance depends on several factors: LP solution, Branching policy, Cut generation, . . . Adjoining SBCs keeps objective function value by changes LP solution

  • ptimal face
  • ptimization direction

SBC Feasible region

Forcing arbitrary choices in SBCs prevents BB from making the correct ones

OSE 2013, ˚ Abo University – p. 66/83

slide-67
SLIDE 67

The sbstab reformulation

OSE 2013, ˚ Abo University – p. 67/83

slide-68
SLIDE 68

Leftover symmetry

Consider a covering problem C on the flower snark J4

GC(J4) ∼ = (D8 × D8) ⋉ C2

Let R be the operator that applies the sb3 reformulation to MPs

GR(C(J4)) ∼ = C2 × D8

Need to break more than just one orbit

OSE 2013, ˚ Abo University – p. 68/83

slide-69
SLIDE 69

By the way,

Flower snark Jk:

  • 1. draw k copies of a 4-star
  • 2. vertices with star size 3: O1, . . . Ok
  • 3. other vertices: A1, . . . , Ak, B1, . . . , Bk, C1, . . . , Ck
  • 4. draw n-cycle A1, . . . , Ak
  • 5. draw 2n-cycle B1, . . . , Bk, C1, . . . , Ck

5 10

1

15

2

6

15

9

19

11

20

19

29

16

25

1

3 4 5

7

16

12

21

17

26

2

6 7 8

8

17

13

22

18

27

3

9 10 11 18

14

23 28

4

12 13 14 24

6 12

1

18

2

7

18

11

23

13

24

23

35

19

30

1

3 4 5

8

19

14

25

20

31

2

6 7 8

9

20

15

26

21

32

3

9 10 11

10

21

16

27

22

33

4

12 13 14 22

17

28 34

5

15 16 17 29

7 14

1

21

2

8

21

13

27

15

28

27

41

22

35

1

3 4 5

9

22

16

29

23

36

2

6 7 8

10

23

17

30

24

37

3

9 10 11

11

24

18

31

25

38

4

12 13 14

12

25

19

32

26

39

5

15 16 17 26

20

33 40

6

18 19 20 34

OSE 2013, ˚ Abo University – p. 69/83

slide-70
SLIDE 70

A group “modulo an orbit”

sb3: breaks symmetries of only one orbit ω Need the “residual group” of symmetries acting outside of ω (i.e. on [n] ω) Let G act on X and Y ⊆ X

Point-wise stabilizer of Y w.r.t. G: subgroup GY ≤ G s.t. gy = y for all

g ∈ GY , y ∈ Y

pointwise

y1 y1 y2 y2 y3 y3 y4 y4 g Y X Gω

P ≤ GP : generate SBCs from the orbits of Gω P

OSE 2013, ˚ Abo University – p. 70/83

slide-71
SLIDE 71

Approach

# covering problem on flower snark J4 gap> G := Group([(9,13)(11,15)(25,29)(27,31), (5,7)(9,11)(13,15)(21,23)(25,27)(29,31), (2,4)(9,13)(18,20)(25,29),(10,14)(12,16)(26,30)(28,32), (6,8)(10,12)(14,16)(22,24)(26,28)(30,32), (1,2)(3,4)(5,6)(7,8)(9,14)(10,13)(11,12)(15,16)(17,18) (19,20)(21,22)(23,24)(25,30)(26,29)(27,28)(31,32)]);; gap> Omg := Orbits(G);; List(Omg, function(v) return Size(v); end); [ 4, 4, 8, 4, 4, 8 ] gap> omega := Omg[1]; [ 1, 2, 4, 3 ]; # generate SBCs w.r.t. omega gap> G1 := Stabilizer(G, omega, OnTuples);; Omg := Orbits(G1);; gap> List(Omg, function(v) return Size(v); end); [ 2, 2, 4, 4, 2, 2, 4, 4 ] gap> omega := Omg[1]; [ 5, 7 ]; # generate SBCs w.r.t. omega gap> G2 := Stabilizer(G1, omega, OnTuples);; Omg := Orbits(G2);;

  • mega := Omg[1];; # generate SBCs w.r.t. omega

gap> G3 := Stabilizer(G2, omega, OnTuples);; Omg := Orbits(G3);;

  • mega := Omg[1];; # generate SBCs w.r.t. omega

gap> G4 := Stabilizer(G3, omega, OnTuples);; Omg := Orbits(G4);;

  • mega := Omg[1];; # generate SBCs w.r.t. omega

gap> G5 := Stabilizer(G4, omega, OnTuples); Group(()); # stop

OSE 2013, ˚ Abo University – p. 71/83

slide-72
SLIDE 72

The sbstab reformulation

  • 1. Let G = GP and C = ∅;
  • 2. Let Ω be the set of orbits of the action of G on [n];
  • 3. Choose an orbit ω ∈ Ω;
  • 4. Let g[ω](x) ≤ 0 be some SBCs for P and G w.r.t. ω;
  • 5. Let C = C ∪ {g[ω](x) ≤ 0};
  • 6. If the (pointwise) stabilizer Gω is nontrivial:

(a) replace G with Gω (b) adjoin g[ω](x) ≤ 0 to P (c) go to Step 2;

  • 7. Return C.

Can add SBCs from all orbits chosen in Step 3 concur- rently

OSE 2013, ˚ Abo University – p. 72/83

slide-73
SLIDE 73

Flower snarks

BB tree nodes Order

  • riginal

sb3 sbstab 4

13

17 17 5 31 15

11

6 79 73

51

7 107

55

79 8 61 53

25

9 111 203

97

OSE 2013, ˚ Abo University – p. 73/83

slide-74
SLIDE 74

MILP results

MILP

sb3 sbstab

Instance Incumbent Time Gap Status Incumbent Time Gap Status

air03

340160 1.66 0%

  • pt

340160 1.06 0%

  • pt

arki001

7.58e+06 30.35 0%

  • pt

7.58e+06 13.73 0%

  • pt

cod105r

  • 11

34.04 0%

  • pt
  • 11

27.59 0%

  • pt

cod83r

  • 19

53.14 0%

  • pt
  • 19

27.04 0%

  • pt

cod93r

  • 39

3315.69 9.31% limit

  • 39

4699.36 0%

  • pt

flosn52 +∞

19.3 NA infeas

+∞

NA infeas

flosn60 +∞

69.79 NA infeas

+∞

NA infeas

jgt18 +∞

2.09 NA infeas

+∞

0.95 NA infeas

jgt30 +∞

419.56 NA infeas

+∞

131.7 NA infeas

mas74

11857.4 46.1 6.6876% limit 11801.2 458.81 0%

  • pt

mas76

40005.4 62.29 0%

  • pt

40005.4 48.73 0%

  • pt

mered +∞

4.7 NA infeas

+∞

0.99 NA infeas

misc06

12850.8 0.48 0%

  • pt

12850.8 0.29 0%

  • pt

mitre

115155 0.88 0%

  • pt

115155 0.64 0%

  • pt
  • a66234

48 0%

  • pt

48 0.02 0%

  • pt
  • a67233

48 0%

  • pt

48 0.01 0%

  • pt
  • a68233

48 0.42 0%

  • pt

48 0.2 0%

  • pt
  • a76234

56 0.02 0%

  • pt

56 0.02 0%

  • pt
  • a77233

56 0.03 0%

  • pt

56 0.04 0%

  • pt
  • f5 14 7

+∞

0.28 NA infeas

+∞

0.19 NA infeas

  • f7 18 9

+∞

0.17 NA infeas

+∞

0.08 NA infeas

  • fsub9

+∞

2394.37 NA infeas

+∞

288.64 NA infeas

p0201

7615 0.71 0%

  • pt

7615 0.33 0%

  • pt

p2756

3124 0.87 0%

  • pt

3124 1.16 0%

  • pt

protfold

  • 15

3313.45 147.778% limit

  • 26

6753.95 39.32% limit

qiu

  • 132.873

46.35 0%

  • pt
  • 132.873

64.89 0%

  • pt

rgn

82.2 0.34 0%

  • pt

82.2 0.22 0%

  • pt

OSE 2013, ˚ Abo University – p. 74/83

slide-75
SLIDE 75

Orbital shrinking

OSE 2013, ˚ Abo University – p. 75/83

slide-76
SLIDE 76

Orbital shrinking

Don’t break but shrink symmetry Aim to obtain a MILP relaxation “modulo symmetry” Replace:

  • rbits(x)

− →

added var.z

(1)

  • j∈ω

xj → zω

Obtain compact MILP (faster solution) Need reformulation where x’s only appear as

j∈ω

xj

OSE 2013, ˚ Abo University – p. 76/83

slide-77
SLIDE 77

The original formulation

ILP:

min cx Ax ≤ b x ∈ Xn

    

[P]

(2)

where A is m × n, X = {0, . . . , q} Consider G ≤ GP

Ω: set of orbits of G acting on [n] = {1, . . . , n}

E.g. (1, 2)(3, 4) acting on [4] gives Ω = {{1, 2}, {3, 4}}

Write i-th row of Ax ≤ b as:

  • j∈[n]

Aijxj =

  • ω∈Ω
  • j∈ω

Aijxj ≤ bi

(3)

OSE 2013, ˚ Abo University – p. 77/83

slide-78
SLIDE 78

The details 1/2

Apply a given π ∈ G to (3):

  • ω∈Ω
  • j∈ω

Aiπ(j)xj ≤ bi

(4)

G ≤ GP ⇒ ∃σ ∈ Sm s.t. (4) is equal to:

  • ω∈Ω
  • j∈ω

Aσ(i)jxj ≤ bσ(i)

(5) (5) row of Ax ≤ b and equal to (4) ⇒ (4) valid for P

Sum (4) over all π ∈ G, get valid ineq.:

  • ω∈Ω
  • j∈ω
  • π∈G

Aiπ(j)xj ≤ |G|bi

(6)

OSE 2013, ˚ Abo University – p. 78/83

slide-79
SLIDE 79

The details 2/2

Burnside’s Lemma: ω orbit of G and f s.t. dom f = [n]: ∀j ∈ ω

  • π∈G

f(π(j)) = |G| |ω|

  • ℓ∈ω

f(ℓ)

(7)

Apply (7) to (6):

  • ω∈Ω
  • j∈ω

|G| |ω|

  • ℓ∈ω

Aiℓxj ≤ |G|bi

(8)

  • ω∈Ω
  • j∈ω
  • 1

|ω|

  • ℓ∈ω

Aiℓ

  • xj

≤ bi

(9)

  • ω∈Ω

i

  • j∈ω

xj ≤ bi,

(10)

where Aω

i = 1 |ω|( ℓ∈ω Aiℓ)

OSE 2013, ˚ Abo University – p. 79/83

slide-80
SLIDE 80

The relaxation

For ω ∈ Ω, add new vars zω ∈ {0, . . . , q|ω|} to P Replace

j∈ω xj by zω and get:

  • ω∈Ω

i zω ≤ bi,

(11)

Relaxation A(P):

replace original system Ax ≤ b with (11) for each i ≤ m

A(P) ∪ {Ax ≤ b} ∪ {∀ω ∈ Ω zω =

j∈ω xj}

is an exact reformulation of P

Shows A(P) is a relaxation

OSE 2013, ˚ Abo University – p. 80/83

slide-81
SLIDE 81

Remarks

Extension to MINLPs s.t. only continuous vars. appear in nonlinear terms If ω = {j} for all ω ∈ Ω and j ∈ [n], then zω = xj ⇒ relaxation same as original formulation

The relaxation is nontrivial only if |ω| > 1

If G is transitive on [n] then Ω = {ω} ⇒ relaxation consists of a single variable zω

The relaxation is nontrivial only if |Ω| > 1

Different choices of G ≤ GP yield different orbit sets Ω and hence different relaxations

Use automated learning to pick a good G

OSE 2013, ˚ Abo University – p. 81/83

slide-82
SLIDE 82

CPLEX Results

Instance

  • pt

LP

  • Orb. Br.

CPU BB:time2bnd

ca36243

49∗ 48 48 0.02

clique9 ∞∗

36

0.06 0.17

cod105

  • 12∗
  • 18
  • 12

limit

cod105r

  • 11∗
  • 15
  • 11

24.12 28.36

cod83

  • 20∗
  • 28
  • 24

16.78 9.54

cod83r

  • 19∗
  • 25
  • 22

4.44 7.85

cod93

  • 40
  • 51
  • 44

limit

cod93r

  • 38
  • 47
  • 44

271.74 446.48

cov1075

20∗ 18 19 3.03 79.79

cov1076

45 43 43 2.78

cov954

30∗ 26 26 0.11

mered ∞∗

140

0.15 3.37

O4 35 ∞∗

70 70 0.0

  • a36243

∞∗

48 48 0.01

  • a77247

∞∗

112

0.1 265.92

  • f5 14 7

∞∗

35 35 0.00

  • f7 18 9

∞∗

63

0.09 0.15

pa36243

  • 44∗
  • 48
  • 48

0.01

sts27

18∗ 9 12 0.01

  • sts45

30∗ 15 15 0.00

sts63

45∗ 21 27 0.02 1.99

sts81

61 27 33 0.01 3.92

sts135

106 45 60 0.1 109.81

esc16b

292 220 222 3.58 1.84

OSE 2013, ˚ Abo University – p. 82/83

slide-83
SLIDE 83

The end

  • 1. L. Liberti, J. Ostrowski, Stabilizer-based symmetry breaking constraints for mathematical

programs, JOGO, to appear

  • 2. A. Costa, P

. Hansen, L. Liberti, On the impact of symmetry-breaking constraints on spatial

Branch-and-Bound for circle packing in a square, Discrete Applied Mathematics, 161:96-106, 2013

  • 3. M. Fischetti, L. Liberti, Orbital Shrinking, in ISCO12 Proceedings (LNCS), 2012
  • 4. L. Liberti, Reformulations in mathematical programming: Automatic symmetry detection and

exploitation, Mathematical Programming A, 131:273-304, 2012

  • 5. L. Liberti, Symmetry in Mathematical Programming, in S. Leyffer and J. Lee (eds.), Mixed

Integer Nonlinear Programming, IMA Series 154:263-286, Springer, New York, 2012

  • 6. A. Costa, Pierre Hansen, Leo Liberti, Static symmetry breaking in circle packing, in U.

Faigle, R. Schrader, D. Herrmann (eds.), CTW10 Proceedings, 47-50, Köln, 2010.

  • 7. L. Liberti, Automatic generation of symmetry-breaking constraints, in B. Yang, D.-Z. Du and

C.A. Wang (eds.) COCOA08 Proceedings, LNCS 5165:328-338, Springer, New York, 2008

OSE 2013, ˚ Abo University – p. 83/83