I had chance to challenge before โข I have been wondering how to use DL to solve numerical optimization problems: Vehicle routing problem, scheduling etc
Job Shop Scheduling Problem (JSP): to build a schedule for multiple "machines" executing multiple jobs, each job contains several tasks required to perform on some machines so that the total time to finish all job is minimum โข Manufacture one automobile, build a house etc โข Formula: This paper study a classical setting where each job requires number of tasks equals to number of machine so that each job has one task assigned to each machine https://developers.google.com/optimization/scheduling/job_shop J: job, T: task, M: machines u: makespan (total time to finish all jobs) ๐ ๐ ๐ก๐ก:start time of task t ๐๐๐ก๐ก:process time of task t
times ๐ ๐ ๐๐ with input is task processing time of each task given fixed machine and jobs ๐ ๐ ๐๐ = ฮก(๐๐๐๐ ) and objective function become: min ๐๐ ๏ฟฝ ๐๐=1 ๐๐ ๐ฟ๐ฟ(๐ ๐ ๐๐ , ๏ฟฝ ๐๐๐๐ (๐๐๐๐ ) ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ ๐ก๐ก๐ก๐ก: ๐ถ๐ถ(๏ฟฝ ๐๐๐๐ ๐๐๐๐ , ๐๐๐๐ ) โข Using Lagrangian relaxation, the objective function become: L ๐ ๐ , ฬ ๐ ๐ , ๐๐ = ๐ฟ๐ฟ ๐ ๐ , ฬ ๐ ๐ + ๏ฟฝ ๐๐๐๐๐๐ ๐๐๐๐ ๐๐๐๐ ( ฬ ๐ ๐ , ๐๐) โข During learning process, model parameters ๐๐๐๐ and Lagrangian multiplier ๐๐๐๐ will be updated in order as following algo:
Machine layers and Job layers, each machine has its own hidden layer so that there is no connection between machines โข Machine layers: โข M components โข Each components has 4 layers: J, 2J, 2J, J โข Job layers: โข J components โข Each components has 4 layers: M, 2M, 2M, M โข Shared layers: โข Concat from all layers from Machine, Jobs โข Size: 2MJ, 2MJ, X (not mentioned), MJ (output) This paper study a classical setting where each job requires number of tasks equals to number of machine so that each job has one task assigned to each machine
model result gives an approximation of starting time for each tasks but with some degree of constraint violation โข From the approximation, the schedule is built with greedy algorithm as:
instance is solved using IBM CP-Opt software with time limit 1800s to get sub-optimal solution โข Compared target: some heuristics algo, IBM software, 1fully connected (FC) network model with same number of parameters โข Result Model inference time less than 30 ms โข Better result than all compared heuristics method โข Reached really closed result to SoTA solver within significantly less time
produce approximations of JSPs that runs in milliseconds โข Combined with Lagrangian dual to include the constraints into learning process โข Introduced efficient recovery techniques to build schedule from model result โข Model showed promising result where SOTA commercial CP takes significant amount of time to obtain solutions with same quality -> can use this model as warm start โข My personal view: โข Interesting idea on model structure and utilizing Lagrangian to incorporate troublesome constraints of the problem โข The model is solving a simplified setting that is not common in real world problem so would need further research and adjustment in design โ Each job has exactly 1 task for each machine โ Number of Jobs and Machines is fixed for 1 model