Metadata
Kegyes, Tamás; Süle, Zoltán; Abonyi, János Disassembly line optimization with reinforcement learning. CEJOR, Cent. Eur. J. Oper. Res. 32, No. 4, 1115-1142 (2024).
Authors:
- corresponding: János Abonyi
janos@abonyilab.com - research group
- lead researcher named lab: private or public?
Summary
- Incomplete model
Questions
- Code for real MILP formulation
- Data for test cases in machine readable form
Notes
- data: “precedence graph” is used in transitive reduced form
- would be nice, if it would be a normal digraph
- but here it has “AND” and “OR” edge labels
- I can think of a few ways to reduce this graph, but am not even sure if a transitive reduced form exists, neither if it is uniqe
- Table 2 mixes all kinds of quantities (inputs, decision variables) up
- $N_a^{ws}$ is never used
- Section 2.3:
- objective part $F_2$
- $h$ takes values in Yes/No (see tables 3 and 5)
- but is described as boolean in table 2 … ok, still compatible
- but taken as binary value in $F_2$?
- so the mapping Yes -> 1, No -> 0?
- 6 kinds of decision variables named $x$. Yeah for readability!
- variable $x^{Type2}$ is never used
- is this $C$? … no because of (2)
- variable $x^{Type5}$ is never used
- if it equals $T^{ws}$, then a definition of $x^{Type4}k \sum{i} x_{i,k}^{Type3} T_i^{rm}$ seems to be more correct? Difficult to say
- domains are not given with decision variables, but implicitly given in (13)
- not defined
- $N^{ws}$ is the number of workstations
- $C$ is never defined – is this $x_6$?
- $T^{ws}$ … is this $x^{Type5}$?
- index error in (2): $k$ on rhs should be $j$?
- so in short: problem is not fully defined
- objective part $F_2$
- Section 4:
- 2 cases with data
- differences between tables 6 and 7 (optimal solutions) not clear
- are there multiple MIP solutions? Probably …
- should be one table with differences highlighted
- text: concordance is 293/300
- Table 8:
- benchmarking only on single runs :-( for MILP
- Gurobi under Matlab
- but 100 simulations for RL
- benchmarking only on single runs :-( for MILP
Models
In ASCI-printable Symplex notation.
Model as in paper
´´´ input N_c input N_ws
input T_rm[i in {1, …, N_c}] input T_c
input P_AND[i in {1, …, N_c}] subseteq {1, …, N_c} input P_OR[i in {1, …, N_c}] subseteq {1, …, N_c}
input h[i in {1, …, N_c}] in {T, F} input d[i in {1, …, N_c}] in [0, infty[
input w_1 in [0, infty[ input w_2 in [0, infty[ input w_3 in [0, infty[
decision x_1[i in {1, …, N_c}][j in {1, …, N_c}] in {0, 1} decision x_2[j in {1, …, N_c}] in [0, T_c] decision x_3[i in {1, …, N_c}][k in {1, …, N_ws}] in {0, 1} decision x_4[k in {1, …, N_ws}] in {0, 1} decision x_5[k in {1, …, N_ws}] in [0, T_c] decision x_6[j in {1, …, N_c}] in {0, …, N_ws}
decision C[k in {1, …, N_c}] in {1, …, N_c} decision N_u_ws
constraint EQ_2[j in {1, …, N_c}] is x_2[j] = T_rm[C[k]]
constraint EQ_6[k in {1, …, N_ws}] is x_5[k] = T_c * x_4[k] * sum[i in {1, …, N_c}] x_3[i][k] * C[i]
constraint EQ_7[i in {1, …, N_c}] is sum[j in {1, …, N_ws}]
constraint EQ_8[k in {1, …, N_ws}] is sum[i in {1, …, N_ws}] T_rm[i] * x_3[i][k] <= T_c
constraint EQ_9[i in {1, …, N_c}][l in P_AND[i]] is sum[j in {1, …, N_c}] j * x_1[l][j] <= sum[j in {1, …, N_c}] j * x_1[i][j]
constraint EQ_10[i in {1, …, N_c}][j in {1, …, N_c}] is x_1[i][j] <= sum[h in {1, …, j}] sum[l in P_OR[i]] j * x_1[l][h]
constraint EQ_11[in in {1, …, N_c}] is sum[k in {1, …, N_ws}] x_3[i][k] = 1
constraint EQ_12_a[j in {2, …, N_c}] is 0 <= x_6[j] - x_6[j - 1]
constraint EQ_12_b[j in {2, …, N_c}] is x_6[j] - x_6[j - 1] <= 1
minimize w_1 * sum[j in {1, …, N_u_ws}] (T_c - T_ws[j]) ^ 2
- w_2 * sum[k in {1, …, N_c}] k * h[C[k]]
- w_3 * sum[k in {1, …, N_c}] k * d[C[k]]
´´´