Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
UNIVERSITY OF D ORTM UND MILP Approach to the Axxom Case Study Sebastian Panek UNIVERSITY OF D ORTM UND Introduction • What is this talk about? • MILP formulation for the scheduling problem provided by Axxom (lacquer production) • What‘s new since our meeting in Sept. 02? • Improved model and solution procedure, new results • What about modeling TA as MILP? • This work is still in progress... UNIVERSITY OF D ORTM UND Overview • • • • • Short problem description MILP formulation Solution procedure Emprical studies Conclusions UNIVERSITY OF D ORTM UND Short problem description UNIVERSITY OF D ORTM UND Additional problem characteristics • Additional restrictions for pairs of tasks: – start-start restrictions – end-start restrictions – end-end restrictions • Parallel allocation of mixing vessels • Machine allocation allowed interval UNIVERSITY OF D ORTM UND Problem simplifications • Labs are non-bottleneck resources, no exclusive resource allocation is needed (provided by Axxom) • Individual colors for lacquers => many different products – No batch merging is possible • Only few jobs exceeding max. batch capacity – Batch splitting is not considered UNIVERSITY OF D ORTM UND General approaches • For short-term scheduling problems in the processing industry [Kondili,Floudas, Pantelides, Grossmann,...]: – State Task Networks (STN) – Resource Task Networks (RTN) • Early formulations: discrete time • Recent work: continuous time State A 1 State B 1 Task 1 1 State C Task 2 1 UNIVERSITY OF D ORTM UND General approaches (2) • Advantages: – – – – Batch splitting/merging Mass balances Individual modeling of products Restrictions on storages • Disadvantages: – Continuous and discrete time models tend to require many points of time, number difficult to estimate – Very detailed view of the problem not always necessary Problem: large models, difficult to solve UNIVERSITY OF D ORTM UND Our approach: sequencing based continuous time model • • • • • Continuous time Individual representation of time for machines Focused on tasks and machines Products (states) are not considered explicitly Fixed batch sizes (no merging and splitting of batches) • Grows according to the number of tasks and not to the time horizon UNIVERSITY OF D ORTM UND MILP formulation of the continuous time model • Real variables for starting and ending times of tasks si , ei • Binary variables for the machine allocation – task i is processed on machine k : ik 1 • Binary variables for the sequencing of tasks – task i is processed before task h on machine k : ihk 1, hik 0 UNIVERSITY OF D ORTM UND Starting and ending times for allocated machines • Starting and ending dates for tasks i on machines k sik : si ik eik : ei ik • Extra linear equations are needed to express nonlinear products of binary and real variables UNIVERSITY OF D ORTM UND Restrictions on binary variables • Each task must be processed on 1 machine ik 1 k • If both tasks i and h are processed on machine k then either i is scheduled before h or vice versa ihk hik ik hk UNIVERSITY OF D ORTM UND Sequencing restrictions • Tasks i, h processed on the same machine k must not overlap each other • Set ihk 1 iff task i is finished before task h eik shk M (1 ihk ) M (1 (ik hk )) eik shk m ihk M (1 (ik hk )) UNIVERSITY OF D ORTM UND Objective function • Minimize too late and too early job completions min J max ei deadline i ,0 i max deadline i ei ,0, i UNIVERSITY OF D ORTM UND Additional heuristics 1. Non-overtaking of non-overlapping jobs if deadlinei release h then eik shk 2. Non-overtaking of equal-typed jobs (M. Bozga) if deadlinei deadline h and typei typeh then eik shk 3. Earliest Due Date (EDD) if deadlinei deadline h then eik shk UNIVERSITY OF D ORTM UND 2-step solution procedure 1. 2. 3. 4. Apply heuristics 3 (EDD) by fixing some variables Solve the problem Relax and fix some variables according to heuristics 1+2 Solve the problem again reusing previous solution as initial integer solution UNIVERSITY OF D ORTM UND How is the model influenced by the heuristics? N: #Tasks, M: #Machines Most binary variables are ihk variables. Worst case: # ihk variables = O(N2M) (!!!) (i,h=1...N, k=1...M) # real variables = ~2NM But: When using heuristics, many binary variables are fixed and disappear from the model. We want to reduce O(N2M) to O(NM)! How that? UNIVERSITY OF D ORTM UND A little example: 1 machine, 4 jobs, 1 task/job Job# Release Deadline Type 1 0 2 1 2 1 3 1 h=1 i=1 3 1 4 2 2 3 4 * * * * * 2 * 3 * * 4 * * * * 4 3 5 2 Matrix of ihk variables UNIVERSITY OF D ORTM UND Heuristics #1 non-overlapping jobs Job# Release Deadline Type 1 0 2 1 2 1 3 1 h=1 i=1 3 1 4 2 2 3 4 * * 1 * 1 2 * 3 * * 4 0 0 * * 4 3 5 2 Matrix of ihk variables UNIVERSITY OF D ORTM UND Heuristics #2 equal-typed jobs Job# Release Deadline Type 1 0 2 1 2 1 3 1 h=1 i=1 3 1 4 2 2 3 4 1 * 1 * 1 2 0 3 * * 4 0 0 1 0 4 3 5 2 Matrix of ihk variables UNIVERSITY OF D ORTM UND Heuristics #2 EDD Job# Release Deadline Type 1 0 2 1 2 1 3 1 h=1 i=1 3 1 4 2 2 3 4 1 1 1 1 1 2 0 3 0 0 4 0 0 1 0 4 3 5 2 Matrix of ihk variables UNIVERSITY OF D ORTM UND Empirical studies on the Axxom Case Study • • • • • model scaled from 4 up to 29 jobs Jobs in job table sorted according to deadlines 2-stage solution procedure (heuristics 3, 1+2) CPU usage limited to 20+20 minutes Measurement of • solution time, • equations, real and binary variables, • objective values and bounds • Software: GAMS+Cplex • Hardware: 1.5 GHz Athlon, 1 GB Ram UNIVERSITY OF D ORTM UND Objective values integer solutions gap lower bounds UNIVERSITY OF D ORTM UND Solution times 20 min. limit was active for >10 jobs UNIVERSITY OF D ORTM UND Variables and Equations equations ~50% of all Variables! total variables binary variables UNIVERSITY OF D ORTM UND Gantt chart: 29 jobs 2h of computation time, first integer solution after few min.(node 173) UNIVERSITY OF D ORTM UND 22 jobs, moving horizon procedure Horizon: 7 jobs, 16 steps a 25 minutes, 300 MHz machine UNIVERSITY OF D ORTM UND Conclusions from empirical studies • EDD heuristics at 1. stage helps finding integer solutions quickly (even for large instances!) • 2. stage usually cannot find better solutions (in short time)... • but the number of binary variables is significantly reduced from O(N2M) to O(NM) without restricting the problem too much • for <20 jobs very good gaps can be expected in short time • first integer solutions within few minutes for the 29 jobs instance • efficiency comparable to TA model from M. Bozga (VERIMAG)... • but quantitative infos about integer solutions from the gaps • A decomposition strategy helps improving the efficiency and the quality of results