Mamba Meets Scheduling: Learning to Solve Flexible Job Shop Scheduling with Efficient Sequence Modeling
Organizations: Dalian University of Technology, Dalian, China · Nanyang Technological University, Singapore · Eindhoven University of Technology, Eindhoven, the Netherlands
Abstract
The Flexible Job Shop Problem (FJSP) is a well-studied combinatorial optimization problem with extensive applications for manufacturing and production scheduling. It involves assigning jobs to various machines to optimize criteria, such as minimizing total completion time. Current learning-based methods in this domain often rely on localized feature extraction models, limiting their capacity to capture overarching dependencies spanning operations and machines. This paper introduces an innovative architecture that harnesses Mamba, a state-space model with linear computational complexity, to facilitate comprehensive sequence modeling tailored for FJSP. In contrast to prevalent graph-attention-based frameworks that are computationally intensive for FJSP, we show our model is more efficient. Specifically, the proposed model possesses an encoder and a decoder. The encoder incorporates a dual Mamba block to extract operation and machine features separately. Additionally, we introduce an efficient cross-attention decoder to learn interactive embeddings of operations and machines. Our experimental results demonstrate that our method achieves faster solving speed and surpasses the performance of state-of-the-art learning-based methods for FJSP across various benchmarks.
Figures & tables
| Brandimarte | Hurink(rdata) | Hurink(edata) | Hurink(vdata) | Barnes | Dauzere | |||||||
| Obj/Gap | Time(s) | Obj/Gap | Time(s) | Obj/Gap | Time(s) | Obj/Gap | Time(s) | Obj/Gap | Time(s) | Obj/Gap | Time(s) | |
| OR-Tools | 174.20 | 1447 | 935.80 | 1397 | 1028.93 | 900 | 919.60 | 639 | 995.19 | 879 | 2224.17 | 1701 |
| 1.50% | 0.11% | -0.03% | -0.01% | -0.18% | 0.52% | |||||||
| FIFO | 205.56 | 0.16 | 1087.12 | 0.17 | 1244.92 | 0.17 | 982.89 | 0.17 | 1281.57 | 0.19 | 2564.67 | 0.35 |
| 31.82% | 17.25% | 20.83% | 7.58% | 28.77% | 15.63% | |||||||
| MOR | 200.36 | 0.16 | 1066.73 | 0.17 | 1227.07 | 0.17 | 966.01 | 0.17 | 1231.52 | 0.19 | 2478.56 | 0.38 |
| FJSP 10x5 | FJSP 20x5 | FJSP 15x10 | FJSP 20x10 | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Obj | Gap | Time(s) | Obj | Gap | Time(s) | Obj | Gap | Time(s) | Obj | Gap | Time(s) | |
| OR-Tools | 96.32 | 0.00% | 1745 | 188.15 | 0.00% | 1800 | 143.53 | 0.00% | 1696 | 195.98 | 0.00% | 1805 |
| FIFO | 119.4 | 24.06% | 0.07 | 216.08 | 14.87% | 0.10 | 184.55 | 28.65% | 0.16 | 233.48 | 19.22% | 0.23 |
| MOR | 115.38 | 19.87% | 0.05 | 214.16 | 13.85% | 0.10 | 173.15 | 20.68% | 0.17 | 219.8 | 12.2% | 0.23 |
| SPT | 129.82 | 34.76% | 0.05 | 230.48 | 22.56% | 0.10 | 198.33 | 38.22% | 0.17 | 255.17 | 30.25% | 0.23 |
| MWKR | 113.23 | 17.58% | 0.05 | 209.78 | 11.51% | 0.10 | 171.25 | 19.41% | 0.18 | 216.11 | 10.3% | 0.23 |
| FJSP 30x10 | FJSP 40x10 | FJSP 100x10 | FJSP 1000x10 | FJSP 10000x10 | |||||||||||
| Obj | Gap | Time(s) | Obj | Gap | Time(s) | Obj | Gap | Time(s) | Obj | Gap | Time(s) | Obj | Gap | Time | |
| OR-Tools | 274.67 | 0.00% | 1772 | 365.96 | 0.00% | 1769 | 940.7 | 0.00% | 1800 | 10283.9 | 0.00% | 3603 | - | OOM-CPU | - |
| FIFO | 328.238 | 19.56% | 0.37 | 426.968 | 16.7% | 0.51 | 1045.7 | 11.17% | 1.72 | 10302 | 0.24% | 87.28 | 102534.6 | - | 2.72h |
| MOR | 317.428 | 15.6% | 0.37 | 421.344 | 15.16% | 0.52 | 1043 | 10.88% | 1.73 | 10296.8 | 0.18% | 86.13 | 102542.8 | - | 2.85h |
| SPT | 350.074 | 27.47% | 0.36 | 445.17 | 21.66% | 0.51 | 1026 | 9.06% | 1.71 | 9570.7 | -6.88% | 84.22 | 94728.4 | - | 2.71h |
| MWKR | 312.926 | 13.96% | 0.37 | 414.816 | 13.37% | 0.52 | 1038.7 | 10.42% | 1.74 | 10273 | -0.04% | 85.12 | 102508 | - | 2.76h |
| FJSP 10x5 | FJSP 20x5 | FJSP 15x10 | FJSP 20x10 | |||||||||
| Obj | Gap | Time(s) | Obj | Gap | Time(s) | Obj | Gap | Time(s) | Obj | Gap | Time(s) | |
| DAN | 108.76 | 12.96% | 0.32 | 197.03 | 4.72% | 0.63 | 160.61 | 11.9% | 0.97 | 199.73 | 1.95% | 1.31 |
| DME | 106.17 | 10.24% | 0.15 | 193.36 | 2.8% | 0.30 | 157.91 | 10.05% | 0.46 | 193.65 | -1.17% | 0.62 |
| DM2E | 105.12 | 9.13% | 0.19 | 193.88 | 3.07% | 0.38 | 159.06 | 10.84% | 0.58 | 194.29 | -0.84% | 0.80 |
| DM3E | 105.47 | 9.51% | 0.23 | 194.11 | 3.19% | 0.46 | 158.11 | 10.19% | 0.69 | 194.2 | -0.89% | 0.97 |
| CA | 105.97 | 10.0% | 0.14 | 193.15 | 2.67% | 0.31 | 158.44 | 10.45% | 0.50 | 194.67 | -0.65% | 0.61 |
Appendix figures & tables9 assets
Supplementary material from the paper’s appendix.
Appendix
| Benchmarks | Source | Sizes | Range | Instances |
|---|---|---|---|---|
| Brandimarte | ( Brandimarte, 1993 ) | 10x6-20x15 | [1,20] | 10 |
| Hurink(rdata) | ( Hurink et al., 1994 ) | 10x5-30x10 | [1,99] | 40 |
| Hurink(edata) | ( Hurink et al., 1994 ) | 10x5-30x10 | [1,99] | 40 |
| Hurink(vdata) | ( Hurink et al., 1994 ) | 10x5-30x10 | [1,99] | 40 |
| Barnes | ( Barnes and Chambers, 1996 ) | 10x11-15x17 | [1,99] | 21 |
| Dauzere | ( Dauzère-Pérès and Paulli, 1997 ) | 10x5-20x10 | [1,100] | 18 |
| FJSP 20x10 | FJSP 30x10 | FJSP 40x10 | ||||||||||
| Obj | Model(s) | Other(s) | Total(s) | Obj | Model(s) | Other(s) | Total(s) | Obj | Model(s) | Other(s) | Total(s) | |
| DAN-G | 199.73 | 1.06 | 0.39 | 1.45 | 283.57 | 1.63 | 0.62 | 2.24 | 373.22 | 2.02 | 0.78 | 2.80 |
| DAN-S | 195.14 | 1.09 | 3.88 | 4.97 | 280.51 | 1.74 | 8.48 | 10.22 | 370.85 | 2.28 | 14.04 | 16.32 |
| DME-G | 193.65 | 0.20 | 0.41 | 0.61 | 277.17 | 0.30 | 0.63 | 0.93 | 366.44 | 0.40 | 0.89 | 1.28 |
| DME-S | 190.13 | 0.27 | 3.99 | 4.26 | 274.48 | 0.39 | 7.99 | 8.38 | 364.21 | 0.59 | 14.32 | 14.91 |
| M-CA-G | 193.9 | 0.36 | 0.42 | 0.78 | 277 | 0.53 | 0.64 | 1.17 | 367.06 | 0.71 | 0.88 | 1.59 |
| Ta 15x15 | Ta 20x15 | Ta 20x20 | Ta 30x15 | Ta 30x20 | Ta 50x15 | Ta 50x20 | Ta 100x20 | ||
|---|---|---|---|---|---|---|---|---|---|
| L2D | Obj | 1547.4 | 1774.7 | 2128.1 | 2378.8 | 2603.9 | 3393.8 | 3593.9 | 6097.6 |
| Gap | 26.00% | 30.00% | 31.60% | 33.00% | 33.60% | 22.40% | 26.50% | 13.60% | |
| DAN-G | Obj | 1425.1 | 1634.4 | 1916.6 | 2132.8 | 2355.6 | 3136.6 | 3244.4 | 5708.5 |
| Gap | 15.97% | 19.72% | 18.49% | 19.23% | 20.94% | 13.13% | 14.11% | 6.39% | |
| Time | 1.49 | 2.00 | 2.72 | 3.08 | 4.19 | 5.34 | 7.52 | 17.12 | |
| DAN-S | Obj | 1350.6 | 1553.8 | 1816.6 | 2035.5 | 2278.5 | 3025.5 | 3148.7 | 5583.4 |
| FJSP 100x10 | FJSP 500x10 | FJSP 1000x10 | FJSP 5000x10 | FJSP 10000x10 | ||||||
| Obj/Mem | Time(s) | Obj/Mem | Time(s) | Obj/Mem | Time(s) | Obj/Mem | Time(s) | Obj/Mem | Time | |
| OR-tools | 940.7 | 1800.00 | 5038.5 | 1801.08 | 10283.9 | 3603.00 | 579152.4 | 7214.00 | - | - |
| FIFO | 1045.7 | 1.72 | 5233.8 | 28.91 | 10302 | 87.28 | 51411 | 2029.67 | 102534.6 | 2.72h |
| MOR | 1043 | 1.73 | 5227.4 | 28.96 | 10296.8 | 86.13 | 51400.8 | 2097.52 | 102542.8 | 2.85h |
| SPT | 1026 | 1.71 | 4911.1 | 28.91 | 9570.7 | 84.22 | 47545.4 | 2088.12 | 94728.4 | 2.71h |
| MWKR | 1038.7 | 1.74 | 5221.5 | 25.46 | 10273 | 85.12 | 51406.4 | 2056.33 | 102508 | 2.76h |