Download MILP approach to the AXXOM case study

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Computational complexity theory wikipedia , lookup

Inverse problem wikipedia , lookup

Computational electromagnetics wikipedia , lookup

Regression analysis wikipedia , lookup

Multiple-criteria decision analysis wikipedia , lookup

Least squares wikipedia , lookup

Transcript
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