# J02 # The set of nodes in the network set N := 1 2 3 4 5 6 7 8 9 10; # The set of modular sizes for structures and couplers set W := 4 8 16 20 40 80; # The set of OD pairs and # the number wavelengths required for each o-d pair param: D: r := 1 2 2 1 6 20 1 7 8 1 10 16 2 4 4 2 6 9 2 8 20 2 9 17 2 10 5 3 4 5 3 6 19 3 9 13 3 10 12 4 5 2 4 8 16 4 9 2 5 6 4 5 9 10 5 10 2 6 8 3 6 10 7 7 10 7 8 9 10 8 10 11 ; # The set of available structures set S := 1 2 3 4 5; # The set of available couplers set C := 1 2 3 4 5 6; # The set of routing paths set P := 1 5 9 13 17 21 25 29 4 8 12 16 20 24 28 3 7 11 15 19 23 27 2 6 10 14 18 22 26 30; # The set of pairs of routing paths that intersect set H := (1,3) (1,13) (1,22) (2,5) (2,14) (2,22) (3,5) (9,23) (3,13) (3,19) (3,25) (3,30) (4,14) (4,27) (5,13) (12,28) (6,7) (6,11) (6,16) (6,22) (6,27) (7,9) (7,16) (16,21) (7,26) (7,30) (8,14) (8,21) (8,26) (9,12) (9,17) (20,24) (9,28) (10,16) (10,28) (11,16) (11,28) (12,17) (12,23) (3,10) (13,16) (13,20) (13,26) (13,30) (14,19) (14,25) (14,30) (5,22) (16,26) (17,18) (17,22) (17,26) (17,30) (19,22) (19,27) (7,22) (21,26) (22,23) (22,28) (23,27) (25,27) (26,28) (28,30) (9,25) (1,4) (1,14) (1,27) (2,6) (2,15) (2,27) (3,6) (12,30) (3,14) (3,21) (3,26) (4,6) (4,16) (4,28) (5,14) (16,22) (6,8) (6,12) (6,17) (6,23) (6,28) (7,12) (7,17) (21,22) (7,27) (8,9) (8,16) (8,22) (8,27) (9,13) (9,19) (3,11) (9,30) (10,19) (11,13) (11,19) (12,13) (12,19) (12,25) (5,27) (13,17) (13,22) (13,27) (14,15) (14,21) (14,26) (15,16) (7,23) (16,27) (17,19) (17,23) (17,27) (18,19) (19,23) (19,28) (9,26) (21,27) (22,25) (22,30) (23,28) (25,28) (26,30) (3,7) (13,14) (1,6) (1,16) (1,28) (2,11) (2,16) (2,28) (5,15) (16,23) (3,16) (3,22) (3,27) (4,10) (4,19) (5,6) (7,18) (21,23) (6,9) (6,13) (6,19) (6,25) (6,30) (7,13) (9,21) (3,12) (7,28) (8,12) (8,17) (8,23) (8,28) (9,14) (12,26) (5,28) (10,13) (10,22) (11,14) (11,22) (12,14) (12,21) (16,17) (7,24) (13,18) (13,23) (13,28) (14,16) (14,22) (14,27) (19,29) (9,27) (16,28) (17,20) (17,24) (17,28) (18,29) (19,24) (3,8) (13,15) (21,28) (22,26) (23,25) (23,30) (25,30) (27,28) (5,16) (16,25) (1,10) (1,19) (2,3) (2,13) (2,19) (3,4) (7,19) (21,25) (3,17) (3,23) (3,28) (4,13) (4,22) (5,11) (9,22) (6,10) (6,14) (6,21) (6,26) (7,8) (7,14) (12,27) (7,29) (8,13) (8,19) (8,25) (8,30) (9,16) (16,19) (10,14) (10,27) (11,15) (11,27) (12,16) (12,22) (19,30) (13,19) (13,24) (13,29) (14,17) (14,23) (14,28) (3,9) (16,30) (17,21) (17,25) (17,29) (19,20) (19,26) (5,19) (21,30) (22,27) (23,26) (25,26) (26,27) (27,30) (7,20); # Sets of routing paths serving each OD pair set J[1,2] := 1 2; set J[1,6] := 3; set J[1,7] := 4 5; set J[1,10] := 6; set J[2,4] := 7; set J[2,6] := 8; set J[2,8] := 9; set J[2,9] := 10 11; set J[2,10] := 12; set J[3,4] := 13; set J[3,6] := 14; set J[3,9] := 15; set J[3,10] := 16; set J[4,5] := 17; set J[4,8] := 18; set J[4,9] := 19; set J[5,6] := 20 21; set J[5,9] := 22; set J[5,10] := 23; set J[6,8] := 24 25; set J[6,10] := 26; set J[7,10] := 27; set J[8,9] := 28; set J[8,10] := 29 30; # Sets of routing paths using each structure set K[1] := 7 13 17 19 20 24; set K[2] := 3 7 9 13 16 19 22 25 27 30 6 8 12 14 17 21 23 26 28; set K[3] := 1 3 4 6 10 13 14 16 19 22 27 28; set K[4] := 7 13 17 18 19 29; set K[5] := 2 3 5 6 11 13 14 15 16 19 22 27 28; # Sets of routing paths using each coupler set L[1] := 13 7 19; set L[2] := 19 16 14 13 3 6 22 27 28; set L[3] := 3 6 13 14 16 19 22 27 28; set L[4] := 7 13 17 19; set L[5] := 13 14 16; set L[6] := 7 13 17 19; # The structure costs param a: 4 8 16 20 40 80 := 1 35 63 105 140 280 525 2 23 41 69 92 184 345 3 39 70 117 156 312 585 4 15 27 45 60 120 225 5 45 81 135 180 360 675 ; # The coupler costs param f: 4 8 16 20 40 80 := 1 5 9 15 20 40 74 2 7 12 20 27 55 104 3 5 9 15 20 40 74 4 6 10 17 23 47 89 5 8 14 23 31 63 119 6 3 5 9 12 24 45 ;