% https://bitbucket.org/dosydon/minizinc_planning_domains % depot67 / file1.mzn int: T = 7; array[1..14] of int: n_vals = [4, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 9, 9]; array[1..72] of string: name = ["(drive truck0 depot0 distributor0)", "(drive truck0 depot0 distributor1)", "(drive truck0 distributor0 depot0)", "(drive truck0 distributor0 distributor1)", "(drive truck0 distributor1 depot0)", "(drive truck0 distributor1 distributor0)", "(drive truck1 depot0 distributor0)", "(drive truck1 depot0 distributor1)", "(drive truck1 distributor0 depot0)", "(drive truck1 distributor0 distributor1)", "(drive truck1 distributor1 depot0)", "(drive truck1 distributor1 distributor0)", "(drop hoist0 crate0 crate1 depot0)", "(drop hoist0 crate0 pallet0 depot0)", "(drop hoist0 crate1 crate0 depot0)", "(drop hoist0 crate1 pallet0 depot0)", "(drop hoist1 crate0 crate1 distributor0)", "(drop hoist1 crate0 pallet1 distributor0)", "(drop hoist1 crate1 crate0 distributor0)", "(drop hoist1 crate1 pallet1 distributor0)", "(drop hoist2 crate0 crate1 distributor1)", "(drop hoist2 crate0 pallet2 distributor1)", "(drop hoist2 crate1 crate0 distributor1)", "(drop hoist2 crate1 pallet2 distributor1)", "(lift hoist0 crate0 crate1 depot0)", "(lift hoist0 crate0 pallet0 depot0)", "(lift hoist0 crate0 pallet1 depot0)", "(lift hoist0 crate0 pallet2 depot0)", "(lift hoist0 crate1 crate0 depot0)", "(lift hoist0 crate1 pallet0 depot0)", "(lift hoist0 crate1 pallet1 depot0)", "(lift hoist0 crate1 pallet2 depot0)", "(lift hoist1 crate0 crate1 distributor0)", "(lift hoist1 crate0 pallet0 distributor0)", "(lift hoist1 crate0 pallet1 distributor0)", "(lift hoist1 crate0 pallet2 distributor0)", "(lift hoist1 crate1 crate0 distributor0)", "(lift hoist1 crate1 pallet0 distributor0)", "(lift hoist1 crate1 pallet1 distributor0)", "(lift hoist1 crate1 pallet2 distributor0)", "(lift hoist2 crate0 crate1 distributor1)", "(lift hoist2 crate0 pallet0 distributor1)", "(lift hoist2 crate0 pallet1 distributor1)", "(lift hoist2 crate0 pallet2 distributor1)", "(lift hoist2 crate1 crate0 distributor1)", "(lift hoist2 crate1 pallet0 distributor1)", "(lift hoist2 crate1 pallet1 distributor1)", "(lift hoist2 crate1 pallet2 distributor1)", "(load hoist0 crate0 truck0 depot0)", "(load hoist0 crate0 truck1 depot0)", "(load hoist0 crate1 truck0 depot0)", "(load hoist0 crate1 truck1 depot0)", "(load hoist1 crate0 truck0 distributor0)", "(load hoist1 crate0 truck1 distributor0)", "(load hoist1 crate1 truck0 distributor0)", "(load hoist1 crate1 truck1 distributor0)", "(load hoist2 crate0 truck0 distributor1)", "(load hoist2 crate0 truck1 distributor1)", "(load hoist2 crate1 truck0 distributor1)", "(load hoist2 crate1 truck1 distributor1)", "(unload hoist0 crate0 truck0 depot0)", "(unload hoist0 crate0 truck1 depot0)", "(unload hoist0 crate1 truck0 depot0)", "(unload hoist0 crate1 truck1 depot0)", "(unload hoist1 crate0 truck0 distributor0)", "(unload hoist1 crate0 truck1 distributor0)", "(unload hoist1 crate1 truck0 distributor0)", "(unload hoist1 crate1 truck1 distributor0)", "(unload hoist2 crate0 truck0 distributor1)", "(unload hoist2 crate0 truck1 distributor1)", "(unload hoist2 crate1 truck0 distributor1)", "(unload hoist2 crate1 truck1 distributor1)"]; array[1..72] of int: cost = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]; array[0..T-1,1..72] of var 0..1: actions; array[0..T,1..4] of var 0..1: add_1; array[0..T,1..4] of var 0..1: del_1; array[0..T,1..4] of var 0..1: preadd_1; array[0..T,1..4] of var 0..1: predel_1; array[0..T,1..4] of var 0..1: maintain_1; array[0..T,1..4] of var 0..1: add_2; array[0..T,1..4] of var 0..1: del_2; array[0..T,1..4] of var 0..1: preadd_2; array[0..T,1..4] of var 0..1: predel_2; array[0..T,1..4] of var 0..1: maintain_2; array[0..T,1..3] of var 0..1: add_3; array[0..T,1..3] of var 0..1: del_3; array[0..T,1..3] of var 0..1: preadd_3; array[0..T,1..3] of var 0..1: predel_3; array[0..T,1..3] of var 0..1: maintain_3; array[0..T,1..3] of var 0..1: add_4; array[0..T,1..3] of var 0..1: del_4; array[0..T,1..3] of var 0..1: preadd_4; array[0..T,1..3] of var 0..1: predel_4; array[0..T,1..3] of var 0..1: maintain_4; array[0..T,1..2] of var 0..1: add_5; array[0..T,1..2] of var 0..1: del_5; array[0..T,1..2] of var 0..1: preadd_5; array[0..T,1..2] of var 0..1: predel_5; array[0..T,1..2] of var 0..1: maintain_5; array[0..T,1..2] of var 0..1: add_6; array[0..T,1..2] of var 0..1: del_6; array[0..T,1..2] of var 0..1: preadd_6; array[0..T,1..2] of var 0..1: predel_6; array[0..T,1..2] of var 0..1: maintain_6; array[0..T,1..2] of var 0..1: add_7; array[0..T,1..2] of var 0..1: del_7; array[0..T,1..2] of var 0..1: preadd_7; array[0..T,1..2] of var 0..1: predel_7; array[0..T,1..2] of var 0..1: maintain_7; array[0..T,1..2] of var 0..1: add_8; array[0..T,1..2] of var 0..1: del_8; array[0..T,1..2] of var 0..1: preadd_8; array[0..T,1..2] of var 0..1: predel_8; array[0..T,1..2] of var 0..1: maintain_8; array[0..T,1..2] of var 0..1: add_9; array[0..T,1..2] of var 0..1: del_9; array[0..T,1..2] of var 0..1: preadd_9; array[0..T,1..2] of var 0..1: predel_9; array[0..T,1..2] of var 0..1: maintain_9; array[0..T,1..2] of var 0..1: add_10; array[0..T,1..2] of var 0..1: del_10; array[0..T,1..2] of var 0..1: preadd_10; array[0..T,1..2] of var 0..1: predel_10; array[0..T,1..2] of var 0..1: maintain_10; array[0..T,1..2] of var 0..1: add_11; array[0..T,1..2] of var 0..1: del_11; array[0..T,1..2] of var 0..1: preadd_11; array[0..T,1..2] of var 0..1: predel_11; array[0..T,1..2] of var 0..1: maintain_11; array[0..T,1..2] of var 0..1: add_12; array[0..T,1..2] of var 0..1: del_12; array[0..T,1..2] of var 0..1: preadd_12; array[0..T,1..2] of var 0..1: predel_12; array[0..T,1..2] of var 0..1: maintain_12; array[0..T,1..9] of var 0..1: add_13; array[0..T,1..9] of var 0..1: del_13; array[0..T,1..9] of var 0..1: preadd_13; array[0..T,1..9] of var 0..1: predel_13; array[0..T,1..9] of var 0..1: maintain_13; array[0..T,1..9] of var 0..1: add_14; array[0..T,1..9] of var 0..1: del_14; array[0..T,1..9] of var 0..1: preadd_14; array[0..T,1..9] of var 0..1: predel_14; array[0..T,1..9] of var 0..1: maintain_14; array[0..T,1..4]of var 0..1: sat_1; constraint forall(t in 0..T, j in 1..4)(add_1[t,j] + preadd_1[t,j] + maintain_1[t,j] - sat_1[t,j] >= 0); constraint forall(t in 0..T, j in 1..4)(add_1[t,j] - sat_1[t,j] <= 0); constraint forall(t in 0..T, j in 1..4)(preadd_1[t,j] - sat_1[t,j] <= 0); constraint forall(t in 0..T, j in 1..4)(maintain_1[t,j] - sat_1[t,j] <= 0); array[0..T,1..4]of var 0..1: sat_2; constraint forall(t in 0..T, j in 1..4)(add_2[t,j] + preadd_2[t,j] + maintain_2[t,j] - sat_2[t,j] >= 0); constraint forall(t in 0..T, j in 1..4)(add_2[t,j] - sat_2[t,j] <= 0); constraint forall(t in 0..T, j in 1..4)(preadd_2[t,j] - sat_2[t,j] <= 0); constraint forall(t in 0..T, j in 1..4)(maintain_2[t,j] - sat_2[t,j] <= 0); array[0..T,1..3]of var 0..1: sat_3; constraint forall(t in 0..T, j in 1..3)(add_3[t,j] + preadd_3[t,j] + maintain_3[t,j] - sat_3[t,j] >= 0); constraint forall(t in 0..T, j in 1..3)(add_3[t,j] - sat_3[t,j] <= 0); constraint forall(t in 0..T, j in 1..3)(preadd_3[t,j] - sat_3[t,j] <= 0); constraint forall(t in 0..T, j in 1..3)(maintain_3[t,j] - sat_3[t,j] <= 0); array[0..T,1..3]of var 0..1: sat_4; constraint forall(t in 0..T, j in 1..3)(add_4[t,j] + preadd_4[t,j] + maintain_4[t,j] - sat_4[t,j] >= 0); constraint forall(t in 0..T, j in 1..3)(add_4[t,j] - sat_4[t,j] <= 0); constraint forall(t in 0..T, j in 1..3)(preadd_4[t,j] - sat_4[t,j] <= 0); constraint forall(t in 0..T, j in 1..3)(maintain_4[t,j] - sat_4[t,j] <= 0); array[0..T,1..2]of var 0..1: sat_5; constraint forall(t in 0..T, j in 1..2)(add_5[t,j] + preadd_5[t,j] + maintain_5[t,j] - sat_5[t,j] >= 0); constraint forall(t in 0..T, j in 1..2)(add_5[t,j] - sat_5[t,j] <= 0); constraint forall(t in 0..T, j in 1..2)(preadd_5[t,j] - sat_5[t,j] <= 0); constraint forall(t in 0..T, j in 1..2)(maintain_5[t,j] - sat_5[t,j] <= 0); array[0..T,1..2]of var 0..1: sat_6; constraint forall(t in 0..T, j in 1..2)(add_6[t,j] + preadd_6[t,j] + maintain_6[t,j] - sat_6[t,j] >= 0); constraint forall(t in 0..T, j in 1..2)(add_6[t,j] - sat_6[t,j] <= 0); constraint forall(t in 0..T, j in 1..2)(preadd_6[t,j] - sat_6[t,j] <= 0); constraint forall(t in 0..T, j in 1..2)(maintain_6[t,j] - sat_6[t,j] <= 0); array[0..T,1..2]of var 0..1: sat_7; constraint forall(t in 0..T, j in 1..2)(add_7[t,j] + preadd_7[t,j] + maintain_7[t,j] - sat_7[t,j] >= 0); constraint forall(t in 0..T, j in 1..2)(add_7[t,j] - sat_7[t,j] <= 0); constraint forall(t in 0..T, j in 1..2)(preadd_7[t,j] - sat_7[t,j] <= 0); constraint forall(t in 0..T, j in 1..2)(maintain_7[t,j] - sat_7[t,j] <= 0); array[0..T,1..2]of var 0..1: sat_8; constraint forall(t in 0..T, j in 1..2)(add_8[t,j] + preadd_8[t,j] + maintain_8[t,j] - sat_8[t,j] >= 0); constraint forall(t in 0..T, j in 1..2)(add_8[t,j] - sat_8[t,j] <= 0); constraint forall(t in 0..T, j in 1..2)(preadd_8[t,j] - sat_8[t,j] <= 0); constraint forall(t in 0..T, j in 1..2)(maintain_8[t,j] - sat_8[t,j] <= 0); array[0..T,1..2]of var 0..1: sat_9; constraint forall(t in 0..T, j in 1..2)(add_9[t,j] + preadd_9[t,j] + maintain_9[t,j] - sat_9[t,j] >= 0); constraint forall(t in 0..T, j in 1..2)(add_9[t,j] - sat_9[t,j] <= 0); constraint forall(t in 0..T, j in 1..2)(preadd_9[t,j] - sat_9[t,j] <= 0); constraint forall(t in 0..T, j in 1..2)(maintain_9[t,j] - sat_9[t,j] <= 0); array[0..T,1..2]of var 0..1: sat_10; constraint forall(t in 0..T, j in 1..2)(add_10[t,j] + preadd_10[t,j] + maintain_10[t,j] - sat_10[t,j] >= 0); constraint forall(t in 0..T, j in 1..2)(add_10[t,j] - sat_10[t,j] <= 0); constraint forall(t in 0..T, j in 1..2)(preadd_10[t,j] - sat_10[t,j] <= 0); constraint forall(t in 0..T, j in 1..2)(maintain_10[t,j] - sat_10[t,j] <= 0); array[0..T,1..2]of var 0..1: sat_11; constraint forall(t in 0..T, j in 1..2)(add_11[t,j] + preadd_11[t,j] + maintain_11[t,j] - sat_11[t,j] >= 0); constraint forall(t in 0..T, j in 1..2)(add_11[t,j] - sat_11[t,j] <= 0); constraint forall(t in 0..T, j in 1..2)(preadd_11[t,j] - sat_11[t,j] <= 0); constraint forall(t in 0..T, j in 1..2)(maintain_11[t,j] - sat_11[t,j] <= 0); array[0..T,1..2]of var 0..1: sat_12; constraint forall(t in 0..T, j in 1..2)(add_12[t,j] + preadd_12[t,j] + maintain_12[t,j] - sat_12[t,j] >= 0); constraint forall(t in 0..T, j in 1..2)(add_12[t,j] - sat_12[t,j] <= 0); constraint forall(t in 0..T, j in 1..2)(preadd_12[t,j] - sat_12[t,j] <= 0); constraint forall(t in 0..T, j in 1..2)(maintain_12[t,j] - sat_12[t,j] <= 0); array[0..T,1..9]of var 0..1: sat_13; constraint forall(t in 0..T, j in 1..9)(add_13[t,j] + preadd_13[t,j] + maintain_13[t,j] - sat_13[t,j] >= 0); constraint forall(t in 0..T, j in 1..9)(add_13[t,j] - sat_13[t,j] <= 0); constraint forall(t in 0..T, j in 1..9)(preadd_13[t,j] - sat_13[t,j] <= 0); constraint forall(t in 0..T, j in 1..9)(maintain_13[t,j] - sat_13[t,j] <= 0); array[0..T,1..9]of var 0..1: sat_14; constraint forall(t in 0..T, j in 1..9)(add_14[t,j] + preadd_14[t,j] + maintain_14[t,j] - sat_14[t,j] >= 0); constraint forall(t in 0..T, j in 1..9)(add_14[t,j] - sat_14[t,j] <= 0); constraint forall(t in 0..T, j in 1..9)(preadd_14[t,j] - sat_14[t,j] <= 0); constraint forall(t in 0..T, j in 1..9)(maintain_14[t,j] - sat_14[t,j] <= 0); % C3 constraint add_1[0,1] = 0; constraint maintain_1[0,1] = 0; constraint preadd_1[0,1] = 0; % C2 constraint add_1[0,2] = 1; % C3 constraint add_1[0,3] = 0; constraint maintain_1[0,3] = 0; constraint preadd_1[0,3] = 0; % C3 constraint add_1[0,4] = 0; constraint maintain_1[0,4] = 0; constraint preadd_1[0,4] = 0; % C2 constraint add_2[0,1] = 1; % C3 constraint add_2[0,2] = 0; constraint maintain_2[0,2] = 0; constraint preadd_2[0,2] = 0; % C3 constraint add_2[0,3] = 0; constraint maintain_2[0,3] = 0; constraint preadd_2[0,3] = 0; % C3 constraint add_2[0,4] = 0; constraint maintain_2[0,4] = 0; constraint preadd_2[0,4] = 0; % C3 constraint add_3[0,1] = 0; constraint maintain_3[0,1] = 0; constraint preadd_3[0,1] = 0; % C3 constraint add_3[0,2] = 0; constraint maintain_3[0,2] = 0; constraint preadd_3[0,2] = 0; % C2 constraint add_3[0,3] = 1; % C2 constraint add_4[0,1] = 1; % C3 constraint add_4[0,2] = 0; constraint maintain_4[0,2] = 0; constraint preadd_4[0,2] = 0; % C3 constraint add_4[0,3] = 0; constraint maintain_4[0,3] = 0; constraint preadd_4[0,3] = 0; % C2 constraint add_5[0,1] = 1; % C3 constraint add_5[0,2] = 0; constraint maintain_5[0,2] = 0; constraint preadd_5[0,2] = 0; % C2 constraint add_6[0,1] = 1; % C3 constraint add_6[0,2] = 0; constraint maintain_6[0,2] = 0; constraint preadd_6[0,2] = 0; % C2 constraint add_7[0,1] = 1; % C3 constraint add_7[0,2] = 0; constraint maintain_7[0,2] = 0; constraint preadd_7[0,2] = 0; % C2 constraint add_8[0,1] = 1; % C3 constraint add_8[0,2] = 0; constraint maintain_8[0,2] = 0; constraint preadd_8[0,2] = 0; % C2 constraint add_9[0,1] = 1; % C3 constraint add_9[0,2] = 0; constraint maintain_9[0,2] = 0; constraint preadd_9[0,2] = 0; % C3 constraint add_10[0,1] = 0; constraint maintain_10[0,1] = 0; constraint preadd_10[0,1] = 0; % C2 constraint add_10[0,2] = 1; % C3 constraint add_11[0,1] = 0; constraint maintain_11[0,1] = 0; constraint preadd_11[0,1] = 0; % C2 constraint add_11[0,2] = 1; % C2 constraint add_12[0,1] = 1; % C3 constraint add_12[0,2] = 0; constraint maintain_12[0,2] = 0; constraint preadd_12[0,2] = 0; % C3 constraint add_13[0,1] = 0; constraint maintain_13[0,1] = 0; constraint preadd_13[0,1] = 0; % C3 constraint add_13[0,2] = 0; constraint maintain_13[0,2] = 0; constraint preadd_13[0,2] = 0; % C3 constraint add_13[0,3] = 0; constraint maintain_13[0,3] = 0; constraint preadd_13[0,3] = 0; % C3 constraint add_13[0,4] = 0; constraint maintain_13[0,4] = 0; constraint preadd_13[0,4] = 0; % C3 constraint add_13[0,5] = 0; constraint maintain_13[0,5] = 0; constraint preadd_13[0,5] = 0; % C3 constraint add_13[0,6] = 0; constraint maintain_13[0,6] = 0; constraint preadd_13[0,6] = 0; % C3 constraint add_13[0,7] = 0; constraint maintain_13[0,7] = 0; constraint preadd_13[0,7] = 0; % C2 constraint add_13[0,8] = 1; % C3 constraint add_13[0,9] = 0; constraint maintain_13[0,9] = 0; constraint preadd_13[0,9] = 0; % C3 constraint add_14[0,1] = 0; constraint maintain_14[0,1] = 0; constraint preadd_14[0,1] = 0; % C3 constraint add_14[0,2] = 0; constraint maintain_14[0,2] = 0; constraint preadd_14[0,2] = 0; % C3 constraint add_14[0,3] = 0; constraint maintain_14[0,3] = 0; constraint preadd_14[0,3] = 0; % C3 constraint add_14[0,4] = 0; constraint maintain_14[0,4] = 0; constraint preadd_14[0,4] = 0; % C3 constraint add_14[0,5] = 0; constraint maintain_14[0,5] = 0; constraint preadd_14[0,5] = 0; % C3 constraint add_14[0,6] = 0; constraint maintain_14[0,6] = 0; constraint preadd_14[0,6] = 0; % C2 constraint add_14[0,7] = 1; % C3 constraint add_14[0,8] = 0; constraint maintain_14[0,8] = 0; constraint preadd_14[0,8] = 0; % C3 constraint add_14[0,9] = 0; constraint maintain_14[0,9] = 0; constraint preadd_14[0,9] = 0; % C4 constraint sat_13[T,9] >= 1; constraint sat_14[T,8] >= 1; % C5 constraint forall (t in 1..T)( actions[t-1,13] - add_1[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,14] - add_1[t,1] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,13] + actions[t-1,14] - add_1[t,1] >= 0); % C7 constraint forall (t in 1..T)( actions[t-1,17] - del_1[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,18] - del_1[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,21] - del_1[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,22] - del_1[t,1] <= 0); % C8 constraint forall (t in 1..T) (0 + actions[t-1,17] + actions[t-1,18] + actions[t-1,21] + actions[t-1,22] - del_1[t,1] >= 0); % C9 constraint forall (t in 1..T)( actions[t-1,15] - preadd_1[t,1] <= 0); % C10 constraint forall (t in 1..T) (0 + actions[t-1,15] - preadd_1[t,1] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,25] + actions[t-1,26] + actions[t-1,27] + actions[t-1,28] - predel_1[t,1] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,17] - add_1[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,18] - add_1[t,2] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,17] + actions[t-1,18] - add_1[t,2] >= 0); % C7 constraint forall (t in 1..T)( actions[t-1,13] - del_1[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,14] - del_1[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,21] - del_1[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,22] - del_1[t,2] <= 0); % C8 constraint forall (t in 1..T) (0 + actions[t-1,13] + actions[t-1,14] + actions[t-1,21] + actions[t-1,22] - del_1[t,2] >= 0); % C9 constraint forall (t in 1..T)( actions[t-1,19] - preadd_1[t,2] <= 0); % C10 constraint forall (t in 1..T) (0 + actions[t-1,19] - preadd_1[t,2] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,33] + actions[t-1,34] + actions[t-1,35] + actions[t-1,36] - predel_1[t,2] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,21] - add_1[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,22] - add_1[t,3] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,21] + actions[t-1,22] - add_1[t,3] >= 0); % C7 constraint forall (t in 1..T)( actions[t-1,13] - del_1[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,14] - del_1[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,17] - del_1[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,18] - del_1[t,3] <= 0); % C8 constraint forall (t in 1..T) (0 + actions[t-1,13] + actions[t-1,14] + actions[t-1,17] + actions[t-1,18] - del_1[t,3] >= 0); % C9 constraint forall (t in 1..T)( actions[t-1,23] - preadd_1[t,3] <= 0); % C10 constraint forall (t in 1..T) (0 + actions[t-1,23] - preadd_1[t,3] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,41] + actions[t-1,42] + actions[t-1,43] + actions[t-1,44] - predel_1[t,3] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,25] - add_1[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,26] - add_1[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,27] - add_1[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,28] - add_1[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,33] - add_1[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,34] - add_1[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,35] - add_1[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,36] - add_1[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,41] - add_1[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,42] - add_1[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,43] - add_1[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,44] - add_1[t,4] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,25] + actions[t-1,26] + actions[t-1,27] + actions[t-1,28] + actions[t-1,33] + actions[t-1,34] + actions[t-1,35] + actions[t-1,36] + actions[t-1,41] + actions[t-1,42] + actions[t-1,43] + actions[t-1,44] - add_1[t,4] >= 0); % C7 constraint forall (t in 1..T)( actions[t-1,13] - del_1[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,14] - del_1[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,17] - del_1[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,18] - del_1[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,21] - del_1[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,22] - del_1[t,4] <= 0); % C8 constraint forall (t in 1..T) (0 + actions[t-1,13] + actions[t-1,14] + actions[t-1,17] + actions[t-1,18] + actions[t-1,21] + actions[t-1,22] - del_1[t,4] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_1[t,4] >= 0); % C11 constraint forall (t in 1..T) (0 - predel_1[t,4] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,15] - add_2[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,16] - add_2[t,1] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,15] + actions[t-1,16] - add_2[t,1] >= 0); % C7 constraint forall (t in 1..T)( actions[t-1,19] - del_2[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,20] - del_2[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,23] - del_2[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,24] - del_2[t,1] <= 0); % C8 constraint forall (t in 1..T) (0 + actions[t-1,19] + actions[t-1,20] + actions[t-1,23] + actions[t-1,24] - del_2[t,1] >= 0); % C9 constraint forall (t in 1..T)( actions[t-1,13] - preadd_2[t,1] <= 0); % C10 constraint forall (t in 1..T) (0 + actions[t-1,13] - preadd_2[t,1] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,29] + actions[t-1,30] + actions[t-1,31] + actions[t-1,32] - predel_2[t,1] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,19] - add_2[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,20] - add_2[t,2] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,19] + actions[t-1,20] - add_2[t,2] >= 0); % C7 constraint forall (t in 1..T)( actions[t-1,15] - del_2[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,16] - del_2[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,23] - del_2[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,24] - del_2[t,2] <= 0); % C8 constraint forall (t in 1..T) (0 + actions[t-1,15] + actions[t-1,16] + actions[t-1,23] + actions[t-1,24] - del_2[t,2] >= 0); % C9 constraint forall (t in 1..T)( actions[t-1,17] - preadd_2[t,2] <= 0); % C10 constraint forall (t in 1..T) (0 + actions[t-1,17] - preadd_2[t,2] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,37] + actions[t-1,38] + actions[t-1,39] + actions[t-1,40] - predel_2[t,2] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,23] - add_2[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,24] - add_2[t,3] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,23] + actions[t-1,24] - add_2[t,3] >= 0); % C7 constraint forall (t in 1..T)( actions[t-1,15] - del_2[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,16] - del_2[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,19] - del_2[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,20] - del_2[t,3] <= 0); % C8 constraint forall (t in 1..T) (0 + actions[t-1,15] + actions[t-1,16] + actions[t-1,19] + actions[t-1,20] - del_2[t,3] >= 0); % C9 constraint forall (t in 1..T)( actions[t-1,21] - preadd_2[t,3] <= 0); % C10 constraint forall (t in 1..T) (0 + actions[t-1,21] - preadd_2[t,3] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,45] + actions[t-1,46] + actions[t-1,47] + actions[t-1,48] - predel_2[t,3] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,29] - add_2[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,30] - add_2[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,31] - add_2[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,32] - add_2[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,37] - add_2[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,38] - add_2[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,39] - add_2[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,40] - add_2[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,45] - add_2[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,46] - add_2[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,47] - add_2[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,48] - add_2[t,4] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,29] + actions[t-1,30] + actions[t-1,31] + actions[t-1,32] + actions[t-1,37] + actions[t-1,38] + actions[t-1,39] + actions[t-1,40] + actions[t-1,45] + actions[t-1,46] + actions[t-1,47] + actions[t-1,48] - add_2[t,4] >= 0); % C7 constraint forall (t in 1..T)( actions[t-1,15] - del_2[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,16] - del_2[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,19] - del_2[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,20] - del_2[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,23] - del_2[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,24] - del_2[t,4] <= 0); % C8 constraint forall (t in 1..T) (0 + actions[t-1,15] + actions[t-1,16] + actions[t-1,19] + actions[t-1,20] + actions[t-1,23] + actions[t-1,24] - del_2[t,4] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_2[t,4] >= 0); % C11 constraint forall (t in 1..T) (0 - predel_2[t,4] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,3] - add_3[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,5] - add_3[t,1] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,3] + actions[t-1,5] - add_3[t,1] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_3[t,1] >= 0); % C9 constraint forall (t in 1..T)( actions[t-1,49] - preadd_3[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,51] - preadd_3[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,61] - preadd_3[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,63] - preadd_3[t,1] <= 0); % C10 constraint forall (t in 1..T) (0 + actions[t-1,49] + actions[t-1,51] + actions[t-1,61] + actions[t-1,63] - preadd_3[t,1] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,1] + actions[t-1,2] - predel_3[t,1] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,1] - add_3[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,6] - add_3[t,2] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,1] + actions[t-1,6] - add_3[t,2] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_3[t,2] >= 0); % C9 constraint forall (t in 1..T)( actions[t-1,53] - preadd_3[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,55] - preadd_3[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,65] - preadd_3[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,67] - preadd_3[t,2] <= 0); % C10 constraint forall (t in 1..T) (0 + actions[t-1,53] + actions[t-1,55] + actions[t-1,65] + actions[t-1,67] - preadd_3[t,2] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,3] + actions[t-1,4] - predel_3[t,2] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,2] - add_3[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,4] - add_3[t,3] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,2] + actions[t-1,4] - add_3[t,3] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_3[t,3] >= 0); % C9 constraint forall (t in 1..T)( actions[t-1,57] - preadd_3[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,59] - preadd_3[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,69] - preadd_3[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,71] - preadd_3[t,3] <= 0); % C10 constraint forall (t in 1..T) (0 + actions[t-1,57] + actions[t-1,59] + actions[t-1,69] + actions[t-1,71] - preadd_3[t,3] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,5] + actions[t-1,6] - predel_3[t,3] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,9] - add_4[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,11] - add_4[t,1] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,9] + actions[t-1,11] - add_4[t,1] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_4[t,1] >= 0); % C9 constraint forall (t in 1..T)( actions[t-1,50] - preadd_4[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,52] - preadd_4[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,62] - preadd_4[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,64] - preadd_4[t,1] <= 0); % C10 constraint forall (t in 1..T) (0 + actions[t-1,50] + actions[t-1,52] + actions[t-1,62] + actions[t-1,64] - preadd_4[t,1] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,7] + actions[t-1,8] - predel_4[t,1] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,7] - add_4[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,12] - add_4[t,2] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,7] + actions[t-1,12] - add_4[t,2] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_4[t,2] >= 0); % C9 constraint forall (t in 1..T)( actions[t-1,54] - preadd_4[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,56] - preadd_4[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,66] - preadd_4[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,68] - preadd_4[t,2] <= 0); % C10 constraint forall (t in 1..T) (0 + actions[t-1,54] + actions[t-1,56] + actions[t-1,66] + actions[t-1,68] - preadd_4[t,2] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,9] + actions[t-1,10] - predel_4[t,2] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,8] - add_4[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,10] - add_4[t,3] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,8] + actions[t-1,10] - add_4[t,3] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_4[t,3] >= 0); % C9 constraint forall (t in 1..T)( actions[t-1,58] - preadd_4[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,60] - preadd_4[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,70] - preadd_4[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,72] - preadd_4[t,3] <= 0); % C10 constraint forall (t in 1..T) (0 + actions[t-1,58] + actions[t-1,60] + actions[t-1,70] + actions[t-1,72] - preadd_4[t,3] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,11] + actions[t-1,12] - predel_4[t,3] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,13] - add_5[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,14] - add_5[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,15] - add_5[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,16] - add_5[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,49] - add_5[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,50] - add_5[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,51] - add_5[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,52] - add_5[t,1] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,13] + actions[t-1,14] + actions[t-1,15] + actions[t-1,16] + actions[t-1,49] + actions[t-1,50] + actions[t-1,51] + actions[t-1,52] - add_5[t,1] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_5[t,1] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_5[t,1] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,25] + actions[t-1,26] + actions[t-1,27] + actions[t-1,28] + actions[t-1,29] + actions[t-1,30] + actions[t-1,31] + actions[t-1,32] + actions[t-1,61] + actions[t-1,62] + actions[t-1,63] + actions[t-1,64] - predel_5[t,1] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,25] - add_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,26] - add_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,27] - add_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,28] - add_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,29] - add_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,30] - add_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,31] - add_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,32] - add_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,61] - add_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,62] - add_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,63] - add_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,64] - add_5[t,2] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,25] + actions[t-1,26] + actions[t-1,27] + actions[t-1,28] + actions[t-1,29] + actions[t-1,30] + actions[t-1,31] + actions[t-1,32] + actions[t-1,61] + actions[t-1,62] + actions[t-1,63] + actions[t-1,64] - add_5[t,2] >= 0); % C7 constraint forall (t in 1..T)( actions[t-1,13] - del_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,14] - del_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,15] - del_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,16] - del_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,49] - del_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,50] - del_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,51] - del_5[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,52] - del_5[t,2] <= 0); % C8 constraint forall (t in 1..T) (0 + actions[t-1,13] + actions[t-1,14] + actions[t-1,15] + actions[t-1,16] + actions[t-1,49] + actions[t-1,50] + actions[t-1,51] + actions[t-1,52] - del_5[t,2] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_5[t,2] >= 0); % C11 constraint forall (t in 1..T) (0 - predel_5[t,2] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,17] - add_6[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,18] - add_6[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,19] - add_6[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,20] - add_6[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,53] - add_6[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,54] - add_6[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,55] - add_6[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,56] - add_6[t,1] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,17] + actions[t-1,18] + actions[t-1,19] + actions[t-1,20] + actions[t-1,53] + actions[t-1,54] + actions[t-1,55] + actions[t-1,56] - add_6[t,1] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_6[t,1] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_6[t,1] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,33] + actions[t-1,34] + actions[t-1,35] + actions[t-1,36] + actions[t-1,37] + actions[t-1,38] + actions[t-1,39] + actions[t-1,40] + actions[t-1,65] + actions[t-1,66] + actions[t-1,67] + actions[t-1,68] - predel_6[t,1] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,33] - add_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,34] - add_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,35] - add_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,36] - add_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,37] - add_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,38] - add_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,39] - add_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,40] - add_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,65] - add_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,66] - add_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,67] - add_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,68] - add_6[t,2] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,33] + actions[t-1,34] + actions[t-1,35] + actions[t-1,36] + actions[t-1,37] + actions[t-1,38] + actions[t-1,39] + actions[t-1,40] + actions[t-1,65] + actions[t-1,66] + actions[t-1,67] + actions[t-1,68] - add_6[t,2] >= 0); % C7 constraint forall (t in 1..T)( actions[t-1,17] - del_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,18] - del_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,19] - del_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,20] - del_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,53] - del_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,54] - del_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,55] - del_6[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,56] - del_6[t,2] <= 0); % C8 constraint forall (t in 1..T) (0 + actions[t-1,17] + actions[t-1,18] + actions[t-1,19] + actions[t-1,20] + actions[t-1,53] + actions[t-1,54] + actions[t-1,55] + actions[t-1,56] - del_6[t,2] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_6[t,2] >= 0); % C11 constraint forall (t in 1..T) (0 - predel_6[t,2] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,21] - add_7[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,22] - add_7[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,23] - add_7[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,24] - add_7[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,57] - add_7[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,58] - add_7[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,59] - add_7[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,60] - add_7[t,1] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,21] + actions[t-1,22] + actions[t-1,23] + actions[t-1,24] + actions[t-1,57] + actions[t-1,58] + actions[t-1,59] + actions[t-1,60] - add_7[t,1] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_7[t,1] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_7[t,1] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,41] + actions[t-1,42] + actions[t-1,43] + actions[t-1,44] + actions[t-1,45] + actions[t-1,46] + actions[t-1,47] + actions[t-1,48] + actions[t-1,69] + actions[t-1,70] + actions[t-1,71] + actions[t-1,72] - predel_7[t,1] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,41] - add_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,42] - add_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,43] - add_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,44] - add_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,45] - add_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,46] - add_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,47] - add_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,48] - add_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,69] - add_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,70] - add_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,71] - add_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,72] - add_7[t,2] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,41] + actions[t-1,42] + actions[t-1,43] + actions[t-1,44] + actions[t-1,45] + actions[t-1,46] + actions[t-1,47] + actions[t-1,48] + actions[t-1,69] + actions[t-1,70] + actions[t-1,71] + actions[t-1,72] - add_7[t,2] >= 0); % C7 constraint forall (t in 1..T)( actions[t-1,21] - del_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,22] - del_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,23] - del_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,24] - del_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,57] - del_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,58] - del_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,59] - del_7[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,60] - del_7[t,2] <= 0); % C8 constraint forall (t in 1..T) (0 + actions[t-1,21] + actions[t-1,22] + actions[t-1,23] + actions[t-1,24] + actions[t-1,57] + actions[t-1,58] + actions[t-1,59] + actions[t-1,60] - del_7[t,2] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_7[t,2] >= 0); % C11 constraint forall (t in 1..T) (0 - predel_7[t,2] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,13] - add_8[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,14] - add_8[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,17] - add_8[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,18] - add_8[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,21] - add_8[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,22] - add_8[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,29] - add_8[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,37] - add_8[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,45] - add_8[t,1] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,13] + actions[t-1,14] + actions[t-1,17] + actions[t-1,18] + actions[t-1,21] + actions[t-1,22] + actions[t-1,29] + actions[t-1,37] + actions[t-1,45] - add_8[t,1] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_8[t,1] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_8[t,1] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,15] + actions[t-1,19] + actions[t-1,23] + actions[t-1,25] + actions[t-1,26] + actions[t-1,27] + actions[t-1,28] + actions[t-1,33] + actions[t-1,34] + actions[t-1,35] + actions[t-1,36] + actions[t-1,41] + actions[t-1,42] + actions[t-1,43] + actions[t-1,44] - predel_8[t,1] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,15] - add_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,19] - add_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,23] - add_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,25] - add_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,26] - add_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,27] - add_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,28] - add_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,33] - add_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,34] - add_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,35] - add_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,36] - add_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,41] - add_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,42] - add_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,43] - add_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,44] - add_8[t,2] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,15] + actions[t-1,19] + actions[t-1,23] + actions[t-1,25] + actions[t-1,26] + actions[t-1,27] + actions[t-1,28] + actions[t-1,33] + actions[t-1,34] + actions[t-1,35] + actions[t-1,36] + actions[t-1,41] + actions[t-1,42] + actions[t-1,43] + actions[t-1,44] - add_8[t,2] >= 0); % C7 constraint forall (t in 1..T)( actions[t-1,13] - del_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,14] - del_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,17] - del_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,18] - del_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,21] - del_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,22] - del_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,29] - del_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,37] - del_8[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,45] - del_8[t,2] <= 0); % C8 constraint forall (t in 1..T) (0 + actions[t-1,13] + actions[t-1,14] + actions[t-1,17] + actions[t-1,18] + actions[t-1,21] + actions[t-1,22] + actions[t-1,29] + actions[t-1,37] + actions[t-1,45] - del_8[t,2] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_8[t,2] >= 0); % C11 constraint forall (t in 1..T) (0 - predel_8[t,2] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,15] - add_9[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,16] - add_9[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,19] - add_9[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,20] - add_9[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,23] - add_9[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,24] - add_9[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,25] - add_9[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,33] - add_9[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,41] - add_9[t,1] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,15] + actions[t-1,16] + actions[t-1,19] + actions[t-1,20] + actions[t-1,23] + actions[t-1,24] + actions[t-1,25] + actions[t-1,33] + actions[t-1,41] - add_9[t,1] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_9[t,1] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_9[t,1] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,13] + actions[t-1,17] + actions[t-1,21] + actions[t-1,29] + actions[t-1,30] + actions[t-1,31] + actions[t-1,32] + actions[t-1,37] + actions[t-1,38] + actions[t-1,39] + actions[t-1,40] + actions[t-1,45] + actions[t-1,46] + actions[t-1,47] + actions[t-1,48] - predel_9[t,1] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,13] - add_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,17] - add_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,21] - add_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,29] - add_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,30] - add_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,31] - add_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,32] - add_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,37] - add_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,38] - add_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,39] - add_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,40] - add_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,45] - add_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,46] - add_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,47] - add_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,48] - add_9[t,2] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,13] + actions[t-1,17] + actions[t-1,21] + actions[t-1,29] + actions[t-1,30] + actions[t-1,31] + actions[t-1,32] + actions[t-1,37] + actions[t-1,38] + actions[t-1,39] + actions[t-1,40] + actions[t-1,45] + actions[t-1,46] + actions[t-1,47] + actions[t-1,48] - add_9[t,2] >= 0); % C7 constraint forall (t in 1..T)( actions[t-1,15] - del_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,16] - del_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,19] - del_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,20] - del_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,23] - del_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,24] - del_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,25] - del_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,33] - del_9[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,41] - del_9[t,2] <= 0); % C8 constraint forall (t in 1..T) (0 + actions[t-1,15] + actions[t-1,16] + actions[t-1,19] + actions[t-1,20] + actions[t-1,23] + actions[t-1,24] + actions[t-1,25] + actions[t-1,33] + actions[t-1,41] - del_9[t,2] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_9[t,2] >= 0); % C11 constraint forall (t in 1..T) (0 - predel_9[t,2] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,26] - add_10[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,30] - add_10[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,34] - add_10[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,38] - add_10[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,42] - add_10[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,46] - add_10[t,1] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,26] + actions[t-1,30] + actions[t-1,34] + actions[t-1,38] + actions[t-1,42] + actions[t-1,46] - add_10[t,1] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_10[t,1] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_10[t,1] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,14] + actions[t-1,16] - predel_10[t,1] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,14] - add_10[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,16] - add_10[t,2] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,14] + actions[t-1,16] - add_10[t,2] >= 0); % C7 constraint forall (t in 1..T)( actions[t-1,26] - del_10[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,30] - del_10[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,34] - del_10[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,38] - del_10[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,42] - del_10[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,46] - del_10[t,2] <= 0); % C8 constraint forall (t in 1..T) (0 + actions[t-1,26] + actions[t-1,30] + actions[t-1,34] + actions[t-1,38] + actions[t-1,42] + actions[t-1,46] - del_10[t,2] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_10[t,2] >= 0); % C11 constraint forall (t in 1..T) (0 - predel_10[t,2] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,27] - add_11[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,31] - add_11[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,35] - add_11[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,39] - add_11[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,43] - add_11[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,47] - add_11[t,1] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,27] + actions[t-1,31] + actions[t-1,35] + actions[t-1,39] + actions[t-1,43] + actions[t-1,47] - add_11[t,1] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_11[t,1] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_11[t,1] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,18] + actions[t-1,20] - predel_11[t,1] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,18] - add_11[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,20] - add_11[t,2] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,18] + actions[t-1,20] - add_11[t,2] >= 0); % C7 constraint forall (t in 1..T)( actions[t-1,27] - del_11[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,31] - del_11[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,35] - del_11[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,39] - del_11[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,43] - del_11[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,47] - del_11[t,2] <= 0); % C8 constraint forall (t in 1..T) (0 + actions[t-1,27] + actions[t-1,31] + actions[t-1,35] + actions[t-1,39] + actions[t-1,43] + actions[t-1,47] - del_11[t,2] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_11[t,2] >= 0); % C11 constraint forall (t in 1..T) (0 - predel_11[t,2] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,28] - add_12[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,32] - add_12[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,36] - add_12[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,40] - add_12[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,44] - add_12[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,48] - add_12[t,1] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,28] + actions[t-1,32] + actions[t-1,36] + actions[t-1,40] + actions[t-1,44] + actions[t-1,48] - add_12[t,1] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_12[t,1] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_12[t,1] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,22] + actions[t-1,24] - predel_12[t,1] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,22] - add_12[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,24] - add_12[t,2] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,22] + actions[t-1,24] - add_12[t,2] >= 0); % C7 constraint forall (t in 1..T)( actions[t-1,28] - del_12[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,32] - del_12[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,36] - del_12[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,40] - del_12[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,44] - del_12[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,48] - del_12[t,2] <= 0); % C8 constraint forall (t in 1..T) (0 + actions[t-1,28] + actions[t-1,32] + actions[t-1,36] + actions[t-1,40] + actions[t-1,44] + actions[t-1,48] - del_12[t,2] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_12[t,2] >= 0); % C11 constraint forall (t in 1..T) (0 - predel_12[t,2] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,49] - add_13[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,53] - add_13[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,57] - add_13[t,1] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,49] + actions[t-1,53] + actions[t-1,57] - add_13[t,1] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_13[t,1] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_13[t,1] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,61] + actions[t-1,65] + actions[t-1,69] - predel_13[t,1] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,50] - add_13[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,54] - add_13[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,58] - add_13[t,2] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,50] + actions[t-1,54] + actions[t-1,58] - add_13[t,2] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_13[t,2] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_13[t,2] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,62] + actions[t-1,66] + actions[t-1,70] - predel_13[t,2] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,25] - add_13[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,26] - add_13[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,27] - add_13[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,28] - add_13[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,61] - add_13[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,62] - add_13[t,3] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,25] + actions[t-1,26] + actions[t-1,27] + actions[t-1,28] + actions[t-1,61] + actions[t-1,62] - add_13[t,3] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_13[t,3] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_13[t,3] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,13] + actions[t-1,14] + actions[t-1,49] + actions[t-1,50] - predel_13[t,3] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,33] - add_13[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,34] - add_13[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,35] - add_13[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,36] - add_13[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,65] - add_13[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,66] - add_13[t,4] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,33] + actions[t-1,34] + actions[t-1,35] + actions[t-1,36] + actions[t-1,65] + actions[t-1,66] - add_13[t,4] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_13[t,4] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_13[t,4] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,17] + actions[t-1,18] + actions[t-1,53] + actions[t-1,54] - predel_13[t,4] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,41] - add_13[t,5] <= 0); constraint forall (t in 1..T)( actions[t-1,42] - add_13[t,5] <= 0); constraint forall (t in 1..T)( actions[t-1,43] - add_13[t,5] <= 0); constraint forall (t in 1..T)( actions[t-1,44] - add_13[t,5] <= 0); constraint forall (t in 1..T)( actions[t-1,69] - add_13[t,5] <= 0); constraint forall (t in 1..T)( actions[t-1,70] - add_13[t,5] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,41] + actions[t-1,42] + actions[t-1,43] + actions[t-1,44] + actions[t-1,69] + actions[t-1,70] - add_13[t,5] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_13[t,5] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_13[t,5] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,21] + actions[t-1,22] + actions[t-1,57] + actions[t-1,58] - predel_13[t,5] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,13] - add_13[t,6] <= 0); constraint forall (t in 1..T)( actions[t-1,17] - add_13[t,6] <= 0); constraint forall (t in 1..T)( actions[t-1,21] - add_13[t,6] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,13] + actions[t-1,17] + actions[t-1,21] - add_13[t,6] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_13[t,6] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_13[t,6] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,25] + actions[t-1,33] + actions[t-1,41] - predel_13[t,6] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,14] - add_13[t,7] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,14] - add_13[t,7] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_13[t,7] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_13[t,7] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,26] + actions[t-1,34] + actions[t-1,42] - predel_13[t,7] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,18] - add_13[t,8] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,18] - add_13[t,8] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_13[t,8] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_13[t,8] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,27] + actions[t-1,35] + actions[t-1,43] - predel_13[t,8] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,22] - add_13[t,9] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,22] - add_13[t,9] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_13[t,9] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_13[t,9] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,28] + actions[t-1,36] + actions[t-1,44] - predel_13[t,9] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,51] - add_14[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,55] - add_14[t,1] <= 0); constraint forall (t in 1..T)( actions[t-1,59] - add_14[t,1] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,51] + actions[t-1,55] + actions[t-1,59] - add_14[t,1] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_14[t,1] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_14[t,1] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,63] + actions[t-1,67] + actions[t-1,71] - predel_14[t,1] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,52] - add_14[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,56] - add_14[t,2] <= 0); constraint forall (t in 1..T)( actions[t-1,60] - add_14[t,2] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,52] + actions[t-1,56] + actions[t-1,60] - add_14[t,2] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_14[t,2] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_14[t,2] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,64] + actions[t-1,68] + actions[t-1,72] - predel_14[t,2] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,29] - add_14[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,30] - add_14[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,31] - add_14[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,32] - add_14[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,63] - add_14[t,3] <= 0); constraint forall (t in 1..T)( actions[t-1,64] - add_14[t,3] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,29] + actions[t-1,30] + actions[t-1,31] + actions[t-1,32] + actions[t-1,63] + actions[t-1,64] - add_14[t,3] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_14[t,3] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_14[t,3] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,15] + actions[t-1,16] + actions[t-1,51] + actions[t-1,52] - predel_14[t,3] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,37] - add_14[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,38] - add_14[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,39] - add_14[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,40] - add_14[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,67] - add_14[t,4] <= 0); constraint forall (t in 1..T)( actions[t-1,68] - add_14[t,4] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,37] + actions[t-1,38] + actions[t-1,39] + actions[t-1,40] + actions[t-1,67] + actions[t-1,68] - add_14[t,4] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_14[t,4] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_14[t,4] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,19] + actions[t-1,20] + actions[t-1,55] + actions[t-1,56] - predel_14[t,4] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,45] - add_14[t,5] <= 0); constraint forall (t in 1..T)( actions[t-1,46] - add_14[t,5] <= 0); constraint forall (t in 1..T)( actions[t-1,47] - add_14[t,5] <= 0); constraint forall (t in 1..T)( actions[t-1,48] - add_14[t,5] <= 0); constraint forall (t in 1..T)( actions[t-1,71] - add_14[t,5] <= 0); constraint forall (t in 1..T)( actions[t-1,72] - add_14[t,5] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,45] + actions[t-1,46] + actions[t-1,47] + actions[t-1,48] + actions[t-1,71] + actions[t-1,72] - add_14[t,5] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_14[t,5] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_14[t,5] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,23] + actions[t-1,24] + actions[t-1,59] + actions[t-1,60] - predel_14[t,5] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,15] - add_14[t,6] <= 0); constraint forall (t in 1..T)( actions[t-1,19] - add_14[t,6] <= 0); constraint forall (t in 1..T)( actions[t-1,23] - add_14[t,6] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,15] + actions[t-1,19] + actions[t-1,23] - add_14[t,6] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_14[t,6] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_14[t,6] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,29] + actions[t-1,37] + actions[t-1,45] - predel_14[t,6] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,16] - add_14[t,7] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,16] - add_14[t,7] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_14[t,7] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_14[t,7] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,30] + actions[t-1,38] + actions[t-1,46] - predel_14[t,7] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,20] - add_14[t,8] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,20] - add_14[t,8] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_14[t,8] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_14[t,8] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,31] + actions[t-1,39] + actions[t-1,47] - predel_14[t,8] = 0); % C5 constraint forall (t in 1..T)( actions[t-1,24] - add_14[t,9] <= 0); % C6 constraint forall (t in 1..T) (0 + actions[t-1,24] - add_14[t,9] >= 0); % C7 % C8 constraint forall (t in 1..T) (0 - del_14[t,9] >= 0); % C9 % C10 constraint forall (t in 1..T) (0 - preadd_14[t,9] >= 0); % C11 constraint forall (t in 1..T) (0 + actions[t-1,32] + actions[t-1,40] + actions[t-1,48] - predel_14[t,9] = 0); % C12 constraint forall (j in 1..n_vals[1], t in 0..T)( add_1[t,j] + maintain_1[t,j] + del_1[t,j] + predel_1[t,j] <= 1); % C13 constraint forall (j in 1..n_vals[1], t in 0..T)( preadd_1[t,j] + maintain_1[t,j] + del_1[t,j] + predel_1[ t,j] <= 1); % C14 constraint forall (j in 1..n_vals[1], t in 0..T-1)( preadd_1[t+1,j] + maintain_1[t+1,j] + predel_1[t+1,j] - add_1[t,j] - preadd_1[t,j] - maintain_1[t,j] <= 0); % C12 constraint forall (j in 1..n_vals[2], t in 0..T)( add_2[t,j] + maintain_2[t,j] + del_2[t,j] + predel_2[t,j] <= 1); % C13 constraint forall (j in 1..n_vals[2], t in 0..T)( preadd_2[t,j] + maintain_2[t,j] + del_2[t,j] + predel_2[ t,j] <= 1); % C14 constraint forall (j in 1..n_vals[2], t in 0..T-1)( preadd_2[t+1,j] + maintain_2[t+1,j] + predel_2[t+1,j] - add_2[t,j] - preadd_2[t,j] - maintain_2[t,j] <= 0); % C12 constraint forall (j in 1..n_vals[3], t in 0..T)( add_3[t,j] + maintain_3[t,j] + del_3[t,j] + predel_3[t,j] <= 1); % C13 constraint forall (j in 1..n_vals[3], t in 0..T)( preadd_3[t,j] + maintain_3[t,j] + del_3[t,j] + predel_3[ t,j] <= 1); % C14 constraint forall (j in 1..n_vals[3], t in 0..T-1)( preadd_3[t+1,j] + maintain_3[t+1,j] + predel_3[t+1,j] - add_3[t,j] - preadd_3[t,j] - maintain_3[t,j] <= 0); % C12 constraint forall (j in 1..n_vals[4], t in 0..T)( add_4[t,j] + maintain_4[t,j] + del_4[t,j] + predel_4[t,j] <= 1); % C13 constraint forall (j in 1..n_vals[4], t in 0..T)( preadd_4[t,j] + maintain_4[t,j] + del_4[t,j] + predel_4[ t,j] <= 1); % C14 constraint forall (j in 1..n_vals[4], t in 0..T-1)( preadd_4[t+1,j] + maintain_4[t+1,j] + predel_4[t+1,j] - add_4[t,j] - preadd_4[t,j] - maintain_4[t,j] <= 0); % C12 constraint forall (j in 1..n_vals[5], t in 0..T)( add_5[t,j] + maintain_5[t,j] + del_5[t,j] + predel_5[t,j] <= 1); % C13 constraint forall (j in 1..n_vals[5], t in 0..T)( preadd_5[t,j] + maintain_5[t,j] + del_5[t,j] + predel_5[ t,j] <= 1); % C14 constraint forall (j in 1..n_vals[5], t in 0..T-1)( preadd_5[t+1,j] + maintain_5[t+1,j] + predel_5[t+1,j] - add_5[t,j] - preadd_5[t,j] - maintain_5[t,j] <= 0); % C12 constraint forall (j in 1..n_vals[6], t in 0..T)( add_6[t,j] + maintain_6[t,j] + del_6[t,j] + predel_6[t,j] <= 1); % C13 constraint forall (j in 1..n_vals[6], t in 0..T)( preadd_6[t,j] + maintain_6[t,j] + del_6[t,j] + predel_6[ t,j] <= 1); % C14 constraint forall (j in 1..n_vals[6], t in 0..T-1)( preadd_6[t+1,j] + maintain_6[t+1,j] + predel_6[t+1,j] - add_6[t,j] - preadd_6[t,j] - maintain_6[t,j] <= 0); % C12 constraint forall (j in 1..n_vals[7], t in 0..T)( add_7[t,j] + maintain_7[t,j] + del_7[t,j] + predel_7[t,j] <= 1); % C13 constraint forall (j in 1..n_vals[7], t in 0..T)( preadd_7[t,j] + maintain_7[t,j] + del_7[t,j] + predel_7[ t,j] <= 1); % C14 constraint forall (j in 1..n_vals[7], t in 0..T-1)( preadd_7[t+1,j] + maintain_7[t+1,j] + predel_7[t+1,j] - add_7[t,j] - preadd_7[t,j] - maintain_7[t,j] <= 0); % C12 constraint forall (j in 1..n_vals[8], t in 0..T)( add_8[t,j] + maintain_8[t,j] + del_8[t,j] + predel_8[t,j] <= 1); % C13 constraint forall (j in 1..n_vals[8], t in 0..T)( preadd_8[t,j] + maintain_8[t,j] + del_8[t,j] + predel_8[ t,j] <= 1); % C14 constraint forall (j in 1..n_vals[8], t in 0..T-1)( preadd_8[t+1,j] + maintain_8[t+1,j] + predel_8[t+1,j] - add_8[t,j] - preadd_8[t,j] - maintain_8[t,j] <= 0); % C12 constraint forall (j in 1..n_vals[9], t in 0..T)( add_9[t,j] + maintain_9[t,j] + del_9[t,j] + predel_9[t,j] <= 1); % C13 constraint forall (j in 1..n_vals[9], t in 0..T)( preadd_9[t,j] + maintain_9[t,j] + del_9[t,j] + predel_9[ t,j] <= 1); % C14 constraint forall (j in 1..n_vals[9], t in 0..T-1)( preadd_9[t+1,j] + maintain_9[t+1,j] + predel_9[t+1,j] - add_9[t,j] - preadd_9[t,j] - maintain_9[t,j] <= 0); % C12 constraint forall (j in 1..n_vals[10], t in 0..T)( add_10[t,j] + maintain_10[t,j] + del_10[t,j] + predel_10[t,j] <= 1); % C13 constraint forall (j in 1..n_vals[10], t in 0..T)( preadd_10[t,j] + maintain_10[t,j] + del_10[t,j] + predel_10[ t,j] <= 1); % C14 constraint forall (j in 1..n_vals[10], t in 0..T-1)( preadd_10[t+1,j] + maintain_10[t+1,j] + predel_10[t+1,j] - add_10[t,j] - preadd_10[t,j] - maintain_10[t,j] <= 0); % C12 constraint forall (j in 1..n_vals[11], t in 0..T)( add_11[t,j] + maintain_11[t,j] + del_11[t,j] + predel_11[t,j] <= 1); % C13 constraint forall (j in 1..n_vals[11], t in 0..T)( preadd_11[t,j] + maintain_11[t,j] + del_11[t,j] + predel_11[ t,j] <= 1); % C14 constraint forall (j in 1..n_vals[11], t in 0..T-1)( preadd_11[t+1,j] + maintain_11[t+1,j] + predel_11[t+1,j] - add_11[t,j] - preadd_11[t,j] - maintain_11[t,j] <= 0); % C12 constraint forall (j in 1..n_vals[12], t in 0..T)( add_12[t,j] + maintain_12[t,j] + del_12[t,j] + predel_12[t,j] <= 1); % C13 constraint forall (j in 1..n_vals[12], t in 0..T)( preadd_12[t,j] + maintain_12[t,j] + del_12[t,j] + predel_12[ t,j] <= 1); % C14 constraint forall (j in 1..n_vals[12], t in 0..T-1)( preadd_12[t+1,j] + maintain_12[t+1,j] + predel_12[t+1,j] - add_12[t,j] - preadd_12[t,j] - maintain_12[t,j] <= 0); % C12 constraint forall (j in 1..n_vals[13], t in 0..T)( add_13[t,j] + maintain_13[t,j] + del_13[t,j] + predel_13[t,j] <= 1); % C13 constraint forall (j in 1..n_vals[13], t in 0..T)( preadd_13[t,j] + maintain_13[t,j] + del_13[t,j] + predel_13[ t,j] <= 1); % C14 constraint forall (j in 1..n_vals[13], t in 0..T-1)( preadd_13[t+1,j] + maintain_13[t+1,j] + predel_13[t+1,j] - add_13[t,j] - preadd_13[t,j] - maintain_13[t,j] <= 0); % C12 constraint forall (j in 1..n_vals[14], t in 0..T)( add_14[t,j] + maintain_14[t,j] + del_14[t,j] + predel_14[t,j] <= 1); % C13 constraint forall (j in 1..n_vals[14], t in 0..T)( preadd_14[t,j] + maintain_14[t,j] + del_14[t,j] + predel_14[ t,j] <= 1); % C14 constraint forall (j in 1..n_vals[14], t in 0..T-1)( preadd_14[t+1,j] + maintain_14[t+1,j] + predel_14[t+1,j] - add_14[t,j] - preadd_14[t,j] - maintain_14[t,j] <= 0); array[1..T*72] of var 0..1: actions_aux; constraint forall(i in 0..T-1, j in 1..72) (actions_aux[i*72+j] = actions[i,j]); solve :: int_search(actions_aux, input_order, indomain_min, complete) satisfy; %solve satisfy; output [name[i] ++ "\n" | t in 0..T-1, i in 1..72 where fix(actions[t,i]) == 1]