Upload
lytram
View
214
Download
0
Embed Size (px)
Citation preview
Chemical Production Scheduling:Notation, Problem Classes,
Modeling Approaches, and Solution Methods
Christos T. MaraveliasDepartment of Chemical and Biological Engineering
University of Wisconsin – Madison
Enterprise-wide Optimization SeminarCarnegie Mellon University
February 27, 2014
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Outline
Introduction
Problem classes
Classification of modeling approaches
New MIP scheduling models
Time representation in material-based models
Solution methods
Concluding thoughts
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
What is Scheduling?
It is the allocation of limited resources to tasks over timeMichael Pinedo, 1998
Single-Stage SchedulingN jobs to be processed in M machines
pij, cij, sijRelease/due times
A D
C B
Assignment of jobs to machines Sequencing of jobs in the same machine
Reso
urce
s(p
roce
ssin
g un
its)
Time
A D
C B
Changeover cost
A D
C B
makespan
A D
C B
di
LatenessD
LatenessB
1
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014 2
Preliminaries Systematic scheduling practiced in manufacturing since early 20th century
First scheduling publications in the early 1950sSalveson, M.E. On a quantitative method in production planning and scheduling. Econometrica, 20(9), 1952.
Extensive research in 1970s• Closely related to developments in computing and algorithms• Computational Complexity: Job Sequencing one of 21 NP-complete problems in (Karp, 1972)
Widespread applicationsAirlines industry (e.g., fleet, crew scheduling); sports; transportation (e.g., vehicle routing)Government; education (e.g., class scheduling); services (e.g., service center scheduling)
Chemical industries • Batch process scheduling (e.g., pharma, food industry, fine chemicals)• Continuous process scheduling (e.g., polymerization)• Transportation and delivery of crude oil
Scheduling in PSE• First publications in early 1980s; focused on sequential facilities (Rippin, Reklaitis)• Problems in network structures addressed in early 1990s (Pantelides et al.)
Very challenging problem: Small problems can be very hard• Most Open problems in MIPLIB are scheduling related
– Railway scheduling: 1,500 constraints, 1,083 variables, 794 binaries– Production planning: 1,307 constraints, 792 variables, 240 binaries
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Problem Statement
Scheduling Batching Assignment Sequencing Timing
ShopfloorManagement
Distribution &Transport Planning
Production targets
ProductionPlanning
Material availability(release dates)
Master PlanningMaterials Planning
Resource availability
Faci
lity
& re
cipe
dat
a
Given are:a) Production facility data; e.g., unit capacities, unit connectivity, etc.b) Production recipes; i.e., mixing rules, processing times/rates, utility requirements, etc. d) Production costs; e.g., raw materials, utilities, changeover, etc.e) Material availability; e.g., deliveries (amount and date) of raw materials. f) Resource availability; e.g., maintenance schedule, resource allocation from planning, etc. g) Production targets or orders with due dates.
Facility and recipe data
Input from otherplanning functions
3
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Problem Statement
Our goal is to find a least cost schedule that meets production targets subject to resource constraints. Alternative objective functions are the minimization of tardiness or lateness (minimization of backlog cost)or the minimization of earliness (minimization of inventory cost) or the maximization of profit.
In the general problem, we seek to optimize our objective by making four types of decisions: a) Selection and sizing of batches to be carried out (batching) b) Assignment of batches to processing units or general resources. c) Sequencing of batches on processing units. d) Timing of batches.
Demand (orders)ABCD
A1 A2 A3
B1 B2
C1
Task selection (batching)How many tasks/batches? What size?
Batches
D1
Task-resource AssignmentWhat resources each task requires?
A1
A2
A3
B1
B2
C1
U1
U2
D1
Sequencing (for unary resources)In what sequence are batches processed?
C1A2 A3A1
B1D1 B2TimingWhen do tasks start?
C1A2 A3A1B1D1 B2
Given are:a) Production facility data; e.g., unit capacities, unit connectivity, etc.b) Production recipes; i.e., mixing rules, processing times/rates, utility requirements, etc. d) Production costs; e.g., raw materials, utilities, changeover, etc.e) Material availability; e.g., deliveries (amount and date) of raw materials. f) Resource availability; e.g., maintenance schedule, resource allocation from planning, etc. g) Production targets or orders with due dates.
3
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Outline
Introduction
Problem classes
Classification of modeling approaches
New MIP scheduling models
Time representation in material-based models
Solution methods
Concluding thoughts
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Traditional Scheduling Notation
Machine environment• Single machine• Parallel machines• Machines in series
Processing characteristics• Preemption• Release/due times• Setup times
Objective • Makespan• Tardiness• Cost
α / β / γ
4
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
From Machine to Production Environments .
Multi-stage Multi-purpose
i∈I: Jobsj∈J: Machinesk∈K: Operationsc∈C: Work centers
Ri: Routing of job i (jobshop)Ji: Machines for job i (open-shop)Jk: Machines in stage kCi: Centers for job i
m1
m2
m1
m2
m4
m3
m5
m m1 mK…m2
m1 m3
m4
A
B
Cm2
m1 m3
m4
RA = {m1, m3} RB = {M1, M2}
RC = {M2, M4}
JB = {m1, m2}JA = {m1, m3}
JC = {m2, m4}
B
A
C
Operation 1:J1 = {m1, m2}
Operation 2:J2 = {m3, m4, m5}
m3m1
m2
m5
m4
A
BRA = {c1, c2}
c1 = {m1, m2}, c2 = {m3, m4}, c3 = {m5}
C
RC = {c3, c2}
RB = {c1, c3}
m3m1
m2
m5
m4
CA = {c1, c2}
CB = {c1, c3}
A
B
c1 = {m1, m2}, c2 = {m3, m4}, c3 = {m5}
(a) Single machine (b) Flow-shop (c) Job-shop (d) Open-shop
(e) Machines in parallel (f) Flexible flow-shop (g) Flexible job-shop (h) Flexible open-shop
6
R o u t i n g G e n e r a l i z a t i o nOperations: Single ⇒ Multiple
Routes: Common ⇒ Job-specific Routes: Predetermined ⇒ Free
Op
erationG
eneralization
1st
Generalization L
evel: Machines per Stage
2ndG
eneralization Level:
Parallel machine sim
ilarity
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Network Production Environment Discrete manufacturing
• A job (e.g., circuit chip) moves through operations consisting of parallel machines• Each job is not split into multiple jobs; jobs are not merged
Chemical production: tasks involve fluids• Fluids coming from different batches can be mixed into a vessel;
fluids of different types can be mixed to be converted to a new fluid;output of a batch (stored in a vessel) can be used in multiple downstream batches.
• No mixing/splitting restrictions may be added (e.g., quality control)
Batches
Fermentation Centrifugation
…
Drying
Sequential processing Materials cannot be mixed/split/recycled Problem defined in terms of:
Batches, stages, and units Problems similar to discrete manufacturing
A
B
RM1
RM2
Int1
Int2
Int3
ImB
40%
60%
40%
60%10%
90%80%
20%
RM3
Network processing Materials can be mixed/split/recycled Amounts of materials must be monitored Problem defined in terms of:
Materials, tasks, resources Problem is different from discrete manufacturing
Mendez et al., (2006), Computers & Chemical Engineering7
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Basic Insights - I
U1-T1F
Tasks:T1 in U1: F → I (2 h); T2 in U2: I → P (3 h)Capacities: βmin/βmax (kg):U1: 20/40, U2: 20/40, V: 0/40v
No special restrictions for intermediate I
V U2-T2 PI
U1
V
U2
T1/20
T2/40
Two batches of T1 mix into onebatch of T2Store/20
T1/20
0 2 4 6 8 (h)
20
20
20
U1
V
U2 T2/20
Store/20
T2/200 2 4 6 8 (h)
20
2020
T1/40 One batch of T1 splitsinto two batches of T2
Sequential-looking process
Sequential plant structure does NOT imply sequential processing Materials handling restrictions determine type of processing
Network-looking process
U0-T0F
U3-T3 P3
I U2-T2 P2
U1-T1 P1
Tasks: T0/U0: F → I (2 h); T1/U1: I → P1 (3 h) T2/U2: I → P2 (4 h); T3/U3: I → P3 (2 h)Capacities: βmin/βmax (kg): All units should run 20 kg batches
Each batch of intermediate I should beconsumed by a single downstream batch
U0
U1
U2
U3 T3/20
0 2 4 6 8 (h)
20
T0/20
T2/20
T0/20
T1/20
T0/2020 20
Batches
Stage 1 Stage 2
8
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Basic Insights - II
Tasks: T1/U1: F → I (60%) + U (40%) (2 h)T2/U2: I → P1 (3 h); T3/U3: U → F (50%) + W (50%) (2 h)Capacities: βmin/βmax (kg): U1: 20/20; U2: 12/12; U3: 16/16
A batch of intermediate I should be consumedby a single downstream batch of T2 Byproduct U should be treated when enough
material is accumulated
U1-T1F I
U3-T3
P1U2-T2
U V1
W
Sequential or network?
U3-T3 P2
U2-T2 P1U1-T1F2 I
U1-T0F1 A V1
Tasks: T0/U1: F1 → A (2 h); T1/U1: F2 → I (2 h);T2/U2: I (90%) + A (10%) → P1 (4 h); T3/U3: I (80%) + A (20%) → P2 (2 h)Capacities: βmin/βmax (kg): U1: 16/20; U2: 20/20; U3: 20/20
A batch of intermediate I should be consumedby a single downstream batch of T2 or T3 Each batch of T2 or T3 requires additive A A can be stored and used in multiple batches
Sequential or network?
U1
V1
U2
U3 T3/20
0 2 4 6 8 (h)
16
2T2/20
4
Store 20Store 18Store 141820
T1/16T1/18T0/20
We have materials mixing (A+I) We do not have batch mixing for I
U1
U2
V1
U3 T3/16
0 2 4 6 8 (h)
T2/12
Store 8
12T1/20
8T2/12
T1/2012 8
8
We have multiple output materials (I+U) We do not have batch splitting for I
9
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Problem Classes
α / β / γα Production environment
• Material handling constraints are key (not facility structure): sequential, network, hybridβ Processing characteristics
• Typical characteristics: setups, changeovers, release/due times, etc. • Chemical production characteristics: storage constraints, material transfer constraints, utilities, etc.
γ Objective functions• min Cost, min Lateness, min Tardiness, max Throughput, etc.
Sequential – multistage (Sms)
Network (N)Hybrid (H)
Sequential – multipurpose (Smp)
Production Environment - α
min Makespan (Mmax)min Cost (Ctot)min Max Lateness (Lmax)min Weighted Lateness (ΣwiLi)…
Objective Function - γ
Problem Classe.g. Sms/s, u, r/Mmax
Processing characteristics - β
-Setups (s) & changeovers (c)Utilities (u)Storage restrictions (st)
Material transfers (mt)
Unit connectivity constraints (uc)
. . .Release/due times (r)
Selection of oneMultiple selections possible
Maravelias (2011), AIChE Journal
10
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Outline
Introduction
Problem classes
Classification of modeling approaches
New MIP scheduling models
Time representation in material-based models
Solution methods
Concluding thoughts
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
From Problems to ModelsMath Programming Scheduling Models in the PSE literature (1980 – 2007): For sequential processes we developed batch-based approachesTrack batches; do not account for material amountsFixed number and size of batches: only assignment and sequencing decisions; no batching
Demand (orders)ABCD
A1 A2 A3
B1 B2
C1
Task selection (batching)Batches
D1
Task-resource AssignmentA1
A2A3
B1
B2C1
U1
U2
D1
Sequencing
C1A2 A3A1
B1D1 B2
Other common assumptions• No storage constraints• No utility requirements
A
B
RM1
RM2
Int1
Int2
Int3
ImB
40%
60%
40%
60%10%
90%80%
20%
RM3
Also account for: • Storage constraints• Utility requirements• Transfer operations• Blending
11
For network processes we developed material-based approachesWe model amounts of material (material balances)We make batching, assignment and sequencing/timing decisions
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Modeling Attributes Key modeling entities
• Batches/tasks• Material amounts• Both
Scheduling decisions• Task number & size (batching)• Task-unit assignment• Sequencing/timing
1. Network processes2. Network & sequential
processes
Sequential with batching
II. Scheduling Decisions
Sequencing/timingUnit-batch assignment
Sequencing/timing
Batching (no & size)Unit-batch assignment
Sequencing/timing
I. Ke
y M
odel
ing
Elem
ents
Task
sM
ater
ials
Task
s &m
ater
ials
Sequential, no batching• Single-unit
Sequential, no batching• Single-stage, multi-
stage, multi-purpose
12
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Modeling Attributes Key modeling entities
• Batches/tasks• Material amounts• Both
Scheduling decisions• Task number & size (batching)• Task-unit assignment• Sequencing/timing
Modeling of time (four types of decisions)1. Selection between precedence based and time-grid-based approaches2. Selection of (i) type of precedence relationship (local vs. global)
(ii) type of time grid (common vs. unit specific)Precedence-based
CAB D
Local precedence relations (L)YBA = 1 YAC = 1 YCD = 1
YBC = 0 YAD = 0
YBD = 0
CB
Global precedence relations (G)
YBC = 1
A DYAD = 1
YBD = 1
Time-grid-based
U1
U2
… T2 T3 T4 …
Unit-specific time grids (U)
CA
BD… T3 T4 T5 T6 …
Common (global) time grid (C)
U1
U2
CA
BD
… T3 T4 T5 T6 T7 …
12
YBA = 1 YAC = 1 YCD = 1
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Modeling Attributes Key modeling entities
• Batches/tasks• Material amounts• Both
Scheduling decisions• Task number & size (batching)• Task-unit assignment• Sequencing/timing
Modeling of time (four types of decisions)1. Selection between precedence based and time-grid-based approaches2. Selection of (i) type of precedence relationship (local vs. global)
(ii) type of time grid (common vs. unit specific)3. Specific representation assumptions
CAB D
Local precedence relations (L) YBA = 1 YAC = 1 YCD = 1
YBC = 0 YAD = 0
τi: processing time of task i; σij: i → j changeover time; M: sufficiently large numberCA
(LG1) Use start times (Tsi)to enforce precedences; Tsidefined as any time between the end of j → i changeoverand the actual start of i.
TsA TsC
)1( AC
ACACAAC
YMYTsTs
−+++≥ στ
CA
(LG2) Use end times (Tei) to enforce precedences; Tei defined as the end of i (i.e., before the i → jchangeover).
TeA TeC
)1( AC
CACACAC
YMYTeTe
−+++≥ τσ
(LG3) …
Precedence-based
12
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Modeling Attributes Key modeling entities
• Batches/tasks• Material amounts• Both
Scheduling decisions• Task number & size (batching)• Task-unit assignment• Sequencing/timing
Modeling of time (four types of decisions)1. Selection between precedence based and time-grid-based approaches2. Selection of (i) type of precedence relationship (local vs. global)
(ii) type of time grid (common vs. unit specific)3. Specific representation assumptions4. Selection between discrete- and continuous-time
Levels
1. Precedence vs. time grid
2. Type of precedence/grid
3. Specific assumptions
4. Time representation
Precedence-based Time-grid-based
Local Global Unit-specific Common
U1 U2 ... C1 C2 ...
III. Modeling of time
Discrete vs. Continuous
L1 L2 … G1 G2 …
12
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
The Universe of Modeling Approaches
1. Network processes2. Network & sequential
processes
Sequential with batching
II. Scheduling Decisions
Sequencing/timingUnit-batch assignment
Sequencing/timing
Batching (no & size)Unit-batch assignment
Sequencing/timing
I. K
ey M
odel
ing
Elem
ents
Task
sM
ater
ials
Task
s &m
ater
ials
Sequential, no batching• Single-unit
Sequential, no batching• Single-stage, multi-
stage, multi-purpose
Levels
1. Precedence vs. time grid
2. Type of precedence/grid
3. Specific assumptions
4. Time representation
Precedence-based Time-grid-based
Local Global Unit-specific Common
U1 U2 ... C1 C2 ...
III. Modeling of time
Discrete vs. Continuous
L1 L2 … G1 G2 …
SchedulingDecisions
Key ModelingElements
Modeling of Time
Materials
Tasks &Materials
Assignment &Sequencing/timing
Sequencing/timing
Tasks
Batching,Assignment &
Sequencing/timing
Precedence-based
Time-grid-based
Local Global Unit-specific Common
U1 U2 … C1 C2 …L1 G1 G2 …L2 …
L1D L1C … C1D … C1C… … C2C …
13
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
The Universe of Modeling Approaches
SchedulingDecisions
Key ModelingElements
Modeling of Time
Materials
Tasks &Materials
Assignment &Sequencing/timing
Sequencing/timing
Tasks
Batching,Assignment &
Sequencing/timing
Precedence-based
Time-grid-based
Local Global Unit-specific Common
U1 U2 … C1 C2 …L1 G1 G2 …L2 …
L1D L1C … C1D … C1C… … C2C …
STN (Kondili et al., 1993)• Decisions:
Batching, assignment & timing• Modeling element:
Materials• Modeling of time:
1. Time-grid-based2. Common grid3. Tasks start/finish @ time pts4. Discrete-time
13
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Outline
Introduction
Problem classes
Classification of modeling approaches
New MIP scheduling models for:
Sequential environments under storage and utility constraints
General production environment
Time representation in material-based models
Solution methods
Concluding thoughts
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
PSE Scheduling Literature: 1980 - 2008
Batch-based formulations Exploit sequential process structure Batch-centric approach
• Batches are assigned to units• Precedence constraints for batches in the same unit
Batching problem is solved prior to scheduling Other common assumptions:
• No storage constraints• No utility constraints
. . . . . . . . . . . .
Task-unit assignmentA1
A2A3
B1B2
C1
U1
U2D1
Sequencing
C1A2 A3A1
B1D1 B2
Material-based formulations Handle network environments (mixing, splitting, recycle) Consider wide range of processing constraints
• Storage & utility constraints Consider batching and scheduling simultaneously Material-based approach
• Tasks consume/produce materials & resources
Can we formulate general models for problems in sequential environments?
14
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
General Models for Sequential Environments1) Simultaneous batching, assignment and sequencing 1
• Variable number of batches ⇒ variable batchsizes ⇒ variable processing times• Introduce new selection variables; if a batch is selected then it is assigned and sequenced
2) Simultaneous batching, assignment, sequencing + general storage constraints 2• Consider timing (waiting in units & tanks) and capacity (tank number & size) constraints• Storage tanks modeled as additional resources
Task-unit assignment
A1A2
A3B1
B2C1
U1
U2D1
Sequencing
C1A2 A3A1
B1D1 B2
Demand (orders)ABCD
A1 A2 A3
B1 B2
C1
Task selection (batching)Batches
D1
3) Simultaneous batching, assignment, sequencing + storage and utility constraints 3• Storage tanks modeled as resources• Adopt common (discrete) time grid to monitor utilities• Express resource balance constraints for units, tanks, and utitilties
1 Prasad & Maravelias, Computers and Chemical Engineering, 32 (6), 20082 Sundaramoorthy & Maravelias, Industrial and Engineering Chemistry Research, 47 (17), 2008 3 Sundaramoorthy & Maravelias, Industrial and Engineering Chemistry Research, 48 (13), 2009
15
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Network processing
Sequential processing
No batch mixingBatch splitting allowed
Facilities with Multiple Environments
Bottling
D. W.
DILUTION
Filtering
Liter500 BPM
¼ STD700 BPM
½ STD600 BPM
½ PREMIER600 BPM
½ T.A., ¼ BOH.750 BPM
Liter350 BPM
LATA1200 LPM
½ T.A EXP750 BPM
Fermentation
Storage
Batch
Semi-continuousContinuous
ADJUNCT
COOKER 1 MASHING 1 LAUTER 1 BOILING 1
BOILING 2
WHIRLPOOL 1
WHIRLPOOL 2
MALT
Aging
Brew House
Feedstocks
No methods available for facilities with combined environments But such facilities are common!
Can we formulate models applicable to all/combined environments?
16
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Unified Framework
17
60%
40%
30%70%
Feed1
P1
P2Mixer U1
Reactor U2
Reactor U3
intermediate
M
Feed 3
Feed 2
R1
R2
P3
P4
Reactor U4/U5
Reactor U4/U5
Separator U6/U7
Separator U6/U7
R3 S1
Intermediate 1 (5 orders)
(7 orders)Intermediate 2
R4 S2
Stage 1 Stage 2
U4
U5
U6
U7
Batch-based
T1 T2S1 S3 S5
T3S2 S6
{U1}
{U2, U3}{U2, U3}
60%
40%
30%70%
S4Material-based
Trad
ition
al
proc
ess
repr
esen
tatio
nNetwork Sequential
T4 T5S7 S8
T6 T7S9 S10
T1 T2S1 S3 S5
T3S2 S6
{U4,U5} {U6,U7}
{U4,U5} {U6,U7}
{U1}
{U2, U3}
{U2, U3}
60%
40%
30%70%
S4
Network taskNetwork material
Sequential taskSequential material
Hybrid material
Sundaramoorthy & Maravelias, AIChE, 2011
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Industrial ApplicationProcessing Stages: Fermentation → Filtering → Storage → BottlingProduction Type: Batch, continuous, and semi-continuousPlanning Horizon: 6 weeksProduction Environment:
8 processing units (lines)22 products families25 product subfamilies162 products
FERMENTACIÓNFERMENTACIÓN
TANQUE REPOSOTANQUE REPOSO
REPOSOREPOSO
TANQUES DE
GOBIERNO I
TANQUES DE
GOBIERNO I
Bottling
D. W.
DILUTION
Filtering
TANQUES DE
GOBIERNO II
TANQUES DE
GOBIERNO II
TANQUES DE GOBIERNO
Litro
500 BPM
¼ STD
700 BPM
½ STD
600 BPM
½ PREMIER
600 BPM
½ T.A., ¼ BOH.
750 BPM
Litro
350 BPM
LATA
1200 LPM
½ T.A EXP
750 BPM
Fermentation
Storage
major changeover
Product family Product family
Product (item)minor changeover
(sequence independent)
Product families: Products (for bottling) are grouped into familiesChangeover costs/times between families; setup costs/times between productsProducts belong to subfamilies
Kopanos et al.,IECR, 201118
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Industrial Application: Executed ScheduleExecuted Schedule
19
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Industrial Application: Integrated Approach No “memory” across planning periods Minimize setup time & costs
20
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Industrial ApplicationSchedule Found Using Integrated Framework
21
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Industrial ApplicationComparison with Implemented Solution
22
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
RemarksSequential environments Simultaneous batching, assignment, sequencing Storage policies, shared storage vessels, general resource constraintsNetwork environments* Non-simultaneous and multiple material transfers1
Resource-constrained material transfers and changeover activities2
. . . Hybrid environments3 * Different handling constraints for different materials;
e.g., batch integrity maintained for major product but byproduct is mixed Combined environments3 * Upstream sequential followed by downstream network, followed by continuous processing
All of the above4 *
* Material-based models
1 Gimenez et al., Computers and Chemical Engineering, 33 (9), 20092 Gimenez et al., Computers and Chemical Engineering, 33 (10), 2009 3 Sundaramoorthy & Maravelias, AIChE J., 57(3), 20114 Velez & Maravelias, Industrial & Engineering Chemistry Research, 52(9), 2013
23
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Outline
Introduction
Problem classes
Classification of modeling approaches
New MIP scheduling models
Time representation in material-based models
Solution methods
Concluding thoughts
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Material-Based ModelProblem StatementGiven are a set of tasks i∈I, processing units j∈J, materials (states) k∈K, and resources r∈R A processing unit j can be used to carry out tasks i∈Ij. Task i in unit j has processing time τij and variable batchsize in [βj
min βjmax]
Each task can consume/produce multiple materials; conversion coefficient ρik
Material k can be produced/consumed by multiple tasks; is stored in a dedicated tank Task i requires ψir units of resource r during its execution
Generalizations for continuous processing, variable processing times, release and due dates, variable utility consumption, etc.
Tasks trigger changes in:(1) unit utilization, (2) material inventories, (3) resource utilization/availability
Tasks are mapped onto one or more time grids Changes in unit, inventories, resources models through balances over time
1 Sundaramoorthy & Maravelias, AIChE J. , 2013.24
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Time Grids Early Discrete1,2,3,4 : horizon η divided into uniform periods of known length δ Processing times are approximated Large-scale MIP models
Continuous5,6,7: horizon η divided into periods of unknown (variable) length Exact processing times Smaller MIP models
Continuous time models have been studied extensively since 19958,9,10,11,12,13,
unit-specific time grids; wide range of constraints, etc.
1 Kondili et al., Computers and Chemical Engineering, 17, 19932 Shah et al., Computers and Chemical Engineering, 17, 19933 Pantelides, 2nd Conference on Foundations of Computer Aided Process Operations, 19944 Bassett et al., AIChE J., 42(12), 19965 Zhang & Sargent, Computers and Chemical Engineering, 19966 Schilling & Pantelides, Computers and Chemical Engineering, 20, 19967 Mockus & Reklaitis, Industrial and Engineering Chemistry Research, 38, 19998 Ierapetritou & Floudas, Industrial and Engineering Chemistry Research, 37, 19989 Castro et al., Industrial and Engineering Chemistry Research, 40(9), 201110 Maravelias & Grossmann, Industrial and Engineering Chemistry Research, 24, 200311 Sundaramoorthy & Karimi, Chemical Engineering Science, 60, 200512 Janak & Floudas, Computers and Chemical Engineering, 32, 200813 Gimenez et al., Computers and Chemical Engineering, 22, 2009
25
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Discrete Time: Modeling Advantages
A. Inventory cost, ICk (νk: unit cost [$/(kg⋅hr)])
Discrete: ICk = ∑𝑛𝑛 𝜈𝜈𝑘𝑘𝛿𝛿𝑆𝑆𝑘𝑘𝑛𝑛0 1 2 3 4 5 6 t (hr) In
vent
ory
(kg)
Skn
linearT1 variable
Continuous: ICk = ∑𝑛𝑛 𝜈𝜈𝑘𝑘𝑇𝑇𝑛𝑛𝑆𝑆𝑘𝑘𝑛𝑛0 1 2 3 4 5 6 t (hr) In
vent
ory
(kg)
Skn
bilinear
δ parameter
Skn variable
Skn variable
B. Utility cost, UCr (σr: unit cost [$/(kW⋅hr)])
Discrete: UCr = ∑𝑛𝑛 𝜎𝜎𝑟𝑟𝛿𝛿𝑅𝑅𝑟𝑟𝑛𝑛0 1 2 3 4 5 6 t (hr)
Reso
urce
usag
e (k
W)
Rrn
linear
Continuous: UCr = ∑𝑛𝑛 𝜎𝜎𝑟𝑟𝑇𝑇𝑛𝑛𝑅𝑅𝑟𝑟𝑛𝑛bilinear
δ parameter
Rrn variable
0 1 2 3 4 5 6 t (hr)
Reso
urce
usag
e (k
W)
RrnTn variable
Rrn variable
D. Time-varying resource pricing
0 1 2 3 4 5 6 t (hr)
Pricing: $0.04/kWh during 0-2.5 and 4.25-6 hr$0.03/kWh during 2.5-4.25 hr
0 1 2 3 4 5 6 t (hr)
Calculation of time-varying resource price σrnFor δ=0.5: σrn = 0.04, n = 1-5, 9-12; σrn = 0.03, n = 6-8
UCr = ∑𝑛𝑛 𝜎𝜎𝑟𝑟𝑛𝑛𝛿𝛿𝑅𝑅𝑟𝑟𝑛𝑛linear
Real
Prof
ile
σrn
Deliveries: 20 kg of A 30 kg of B@ t=0.5 hr @ t=1.75 hr
1 2 3 4 5 6 t (hr)
A B
C
Real timeline
Calculation of shipments ξkn (δ = 1):Deliveries/orders moved to next/previous point if needed
5 6
1 2 3 4 t (hr)
A B
C
Discrete timeline
E. Modeling of release and due times
Order:25 kg of C
@ t = 5. 25 h
ξA1 = 20 ξB2 = 30 ξC5 = -25Material balance:𝑆𝑆𝑘𝑘𝑛𝑛 = 𝑆𝑆𝑘𝑘,𝑛𝑛−1 + ∑𝑖𝑖,𝑗𝑗 𝜌𝜌𝑖𝑖𝑘𝑘𝐵𝐵𝑖𝑖𝑗𝑗,𝑛𝑛−𝜏𝜏𝑖𝑖𝑖𝑖 + ∑𝑖𝑖,𝑗𝑗 𝜌𝜌𝑖𝑖𝑘𝑘𝐵𝐵𝑖𝑖𝑗𝑗𝑛𝑛 + 𝜉𝜉𝑘𝑘𝑛𝑛
0 1 2 3 4 5 6 t (hr)
0 1 2 3 4 5 6 t (hr)
C. Time-varying resource availability
Availability: 30 kW during 0-2.25 and 4.25-6 hr20 kW during 2.25-4.25 hr
Calculation of time-varying resource availability θrnFor δ=0.5: θrn = 30, n = 1-4, 10-12; θrn = 20, n = 5-9
Resource constraint: 𝑅𝑅𝑟𝑟𝑛𝑛 ≤ 𝜃𝜃𝑟𝑟𝑛𝑛Re
alPr
ofile
ζrn
paramter
s = 0 1 2 3 4
10
0
-10
F
P
Electricity consumption (kW)(𝜓𝜓𝑅𝑅,𝐸𝐸,𝑠𝑠𝐵𝐵𝑅𝑅,𝑈𝑈,𝑛𝑛−𝑠𝑠)
Coefficient 𝜓𝜓𝑅𝑅,𝐸𝐸,𝑠𝑠 (kW/kg)
Recipe of task i = R in unit j = U:Load B = 10 kg of input FRemove product P (75%) after 4 hrElectricity consumption (kW/kg): 0-1 h: 10; 1-3 h: 5; 3-4 h: 10 kW/kg ψRP4=0.75
ψRF0=-1
F. Variable resource consumption during task
𝑅𝑅𝑟𝑟,𝑛𝑛+1 = 𝑅𝑅𝑟𝑟,𝑛𝑛 + ∑𝑖𝑖,𝑗𝑗 ∑𝑠𝑠=0𝜏𝜏𝑖𝑖𝑖𝑖 (𝜑𝜑𝑖𝑖𝑟𝑟𝑠𝑠𝑋𝑋𝑖𝑖𝑗𝑗,𝑛𝑛−𝑠𝑠 + 𝜓𝜓𝑖𝑖𝑟𝑟𝑠𝑠𝐵𝐵𝑖𝑖𝑗𝑗,𝑛𝑛−𝑠𝑠)
26Velez & Maravelias, Ann Rev Chemical & Biomolecular Engineering, 2014
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Computational Comparison
Objectives:S: Sales without ordersP: Profit with orders
Processing Times:CPT: fixed processing timesVPT1/2: variable processing times
weak/strong dependence on batch size
Features:U: utilitiesSET: setupsINT: intermediate due datesHC: holding and backlog costs
Continuous vs. DiscreteAveraged over 18-24 instances
0
25
50
75
100
0
1000
2000
3000
4000
5000
Optim
ality
gap
or Q
ualit
y (%
)
CPU
time
(s)
Objective.Processing Time.Features
Sundaramoorthy & Maravelias, Industrial and Engineering Chemistry Research, 50, 2011.
Discrete (time) Continuous (time)Discrete (gap) Continuous (gap)Discrete (quality) Continuous (quality)
Adding Features to DiscreteAveraged over 18 instances
0
25
50
75
100
0
1000
2000
3000
4000
5000
Optim
ality
gap
or Q
ualit
y (%
)
CPU
time
(s)
Objective.Processing Time
27
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Outline
Introduction
Problem classes
Classification of modeling approaches
New MIP scheduling models
Time representation in material-based models
Solution methods
Tightening methods
Reformulation
Concluding thoughts
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Major Types of Scheduling Constraints1. A unit can process at most one task at a time Xijt = 1 if task i starts in unit j at time t Basic difference between discrete- and continuous-time formulations
∑𝑖𝑖∈𝐈𝐈𝑖𝑖 ∑𝑛𝑛′≥𝑛𝑛−𝜏𝜏𝑖𝑖𝑖𝑖+1𝑛𝑛 𝑋𝑋𝑖𝑖𝑗𝑗𝑛𝑛𝑖 ≤ 1, ∀𝑗𝑗, 𝑛𝑛
2. Batch-sizes are within the unit capacity Bijt = batch-size of task i in unit j starting at time t
If a task is carried out then its batch-size is within a lower and upper bound𝛽𝛽𝑗𝑗𝑚𝑚𝑖𝑖𝑛𝑛𝑋𝑋𝑖𝑖𝑗𝑗𝑛𝑛 ≤ 𝐵𝐵𝑖𝑖𝑗𝑗𝑛𝑛 ≤ 𝛽𝛽𝑗𝑗𝑚𝑚𝑚𝑚𝑚𝑚𝑋𝑋𝑖𝑖𝑗𝑗𝑛𝑛, ∀𝑖𝑖, 𝑗𝑗 ∈ 𝐉𝐉𝑖𝑖 ,𝑛𝑛
3. Material balance constraints Sst = inventory of material s at time t
𝑆𝑆𝑘𝑘𝑛𝑛= 𝑆𝑆𝑘𝑘,𝑛𝑛−1 + ∑𝑖𝑖∈𝐈𝐈𝑘𝑘+ 𝜌𝜌𝑖𝑖𝑘𝑘 ∑𝑗𝑗∈𝐉𝐉𝑖𝑖 𝐵𝐵𝑖𝑖𝑗𝑗,𝑛𝑛−𝜏𝜏𝑖𝑖𝑖𝑖 + ∑𝑖𝑖∈𝐈𝐈𝑘𝑘− 𝜌𝜌𝑖𝑖𝑘𝑘 ∑𝑗𝑗∈𝐉𝐉𝑖𝑖 𝐵𝐵𝑖𝑖𝑗𝑗𝑛𝑛 + 𝜉𝜉𝑘𝑘𝑛𝑛 ≤ 𝛾𝛾𝑘𝑘 , ∀𝑘𝑘,n
28
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Motivating Example
Demand: 90 kg S3 and 25 kg S4
# of Batches Min. Cost ($)T1 T2 T3
LP-RelaxationNo tightening 1.9 1.8 0.5 76.7With tightening* 3 2 1 105
Optimal solution 3 2 1 105
Calculation of some bounds for specific models using auxiliary LPs & MIPs Burkard & Hatzl, 2006; Janak & Floudas, 2008
Can we generalize to all networks and models and calculate bounds fast?
T1T2: 90
T3: 35
90
25
S1 S2 S3
S4
{U1}{U2,U3}
1. Demand ⇒ number of batches:• T2 must produce 90 kg in at least 2 batches• T3 has to produce 25 kg, but the minimum capacity
is 35 kg, so T3 must produce 35 kg in 1 batch
2.Number of batches ⇒ intermediate demand:• 125 kg of S2 are needed
T1T2: 90
125T3: 35
90
25
S1 S2 S3
S4
{U1}{U2,U3}
3.Intermediate demand ⇒ number of batches:• T1 has to produce at least 125 kg; • Capacity of U1 is 25-60 kg, so 3 batches are required
T1: 125T2: 90
125T3: 35
90
25
S1 S2 S3
S4
{U1}{U2,U3}
T1T2
T3
S1 S2 S3
S4
{U1}{U2,U3}
Capacities:U1: 25-60 kgU2: 40-50 kgU3: 35-40 kg
29
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Basic PropagationBasic parameters: ωk: minimum required amount of material k
• Calculated once µi is known for all tasks consuming material k• For final products, ωk is the customer demand
𝜔𝜔𝑘𝑘 = max 0,∑𝑖𝑖∈𝐈𝐈𝑘𝑘− 𝜌𝜌𝑖𝑖𝑘𝑘− 𝜇𝜇𝑖𝑖 − 𝜉𝜉𝑘𝑘0
μi: minimum cumulative production of task i• Calculated once ωk is known for all materials produced by task I
𝜇𝜇𝑖𝑖 = max𝑘𝑘∈𝐊𝐊𝑖𝑖
+⁄𝜔𝜔𝑘𝑘 𝜌𝜌𝑖𝑖𝑘𝑘+
T1: 50
T2: 30
50%50%
ω = 55
ω = 0.5*50+30
Capacity: 30-40kg4321
0 20 40 60 80 100 120 140 160
# of
Bat
ches
µi = 50 →µi* = 60
Tightening of µi• If units have min and max capacities, some values of μi are not feasible• μi is feasible if, for some m, ∑𝑗𝑗∈𝐉𝐉𝑖𝑖 𝛼𝛼𝑗𝑗
𝑚𝑚𝛽𝛽𝑗𝑗𝑚𝑚𝑖𝑖𝑛𝑛 ≤ 𝜇𝜇𝑖𝑖 ≤ ∑𝑗𝑗∈𝐉𝐉𝑖𝑖 𝛼𝛼𝑗𝑗𝑚𝑚𝛽𝛽𝑗𝑗𝑚𝑚𝑚𝑚𝑚𝑚
where 𝛼𝛼𝑗𝑗𝑚𝑚 is the number of batches in unit j for range m, 𝛽𝛽𝑗𝑗𝑚𝑚𝑖𝑖𝑛𝑛/𝛽𝛽𝑗𝑗𝑚𝑚𝑚𝑚𝑚𝑚is the minimum/maximum capacity of unit j, and Ji is the set of units for task i
• Otherwise, increase µi to the nearest attainable amount µi* ≥ µi
1000 20 40 60 80
U1 U20 10 21 01 12 02 13 0
# of
Bat
ches
Capacity: U1 20-25 kg, U2 45-50 kgµi = 55
→µi* = 60
20
80%
20%
50μ = 100
μ = max{20/0.2,50/0.8}
30
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Algorithm for General Networks
50%50%
T1: 60
T2: 40
55T3: 60
2050
S1 S3S5S6
{U3}{U1,U2}
15 S4
S2 75%25%
3. T2 and T3 both need S3
4. T1 produces S3
2. T3 only produces S6: T2 produces both S4 and S5
1. Demand: 15kg S4 , 20kg S5, and 50kg S6
50%50%
T1
T2
T32050
S1 S3S5S6
{U3}{U1,U2}
15 S4
S2 75%25%
50%50%
T1
T2: 40
T3: 602050
S1 S3S5S6
{U3}{U1,U2}
15 S4
S2 75%25%
50%50%
T1
T2: 40
55T3: 60
2050
S1 S3S5S6
{U3}{U1,U2}
15 S4
S2 75%25%
1000 20 40 60 80
U1 U20 10 21 01 12 02 13 0
# of
Bat
ches
Capacity: U1 20-25 kg, U2 45-50 kgµi = 55
→µi* = 60
31
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
RemarksChallenges A material can be produced by many tasks A task can be carried out in many units (of unequal capacity) Recycle streams
General Networks
No Loops Loops
Recycle MaterialsNo Recycle Materials
Single Loop Nested Loops
S1T1 T2
S2
… …S1
T1 T2S2
… … T1 T2S1
… …T1 T2
S1
S2
… …
Algorithm depends on network structure
32
Use tear streams; iterate until bounds converge Use combination of backward and forward propagation for nested loops
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
The Algorithm
1. Set νis=0 ∀s∈ST, i∈IT∩Is+; ts=0
∀s∈ST ; and SiC={s:s∈ST ∩ Si
+}
2. Set SNC=S, INC=I, IA=∅, and SA=SF
Is IA=∅& SA=∅?
Is SA∩SR=∅?
5. Set SNC=SNC\SA, SiC=Si
C∪{s:s∈Si+∩ SA},
SA=∅, and IA={i:i∈INC, SiC=Si
+}
6. Calculate μi and μ ̃i∀i∈IA. Set INC=INC\IA. IA=∅ and SA={s:s∈SNC, Is
-∩INC=∅}
3. Calculate ωs∀s∈SA
4. Calculate νis∀s∈SA, i∈Is+ using LPi
Is νis≤ρisμ ̃i∀s∈ST,
i∈IT∩Is+?
Stop YES
NO
YES
YES
NO
NO
12. Calculate ωsR∀s∈SRA (eqn. 10
or 14). Set SRNC=SRNC\ SRA, SRA=∅, and IRA={i:i∈IRNC, Si
- ∩SRNC=∅}
13. Calculate μiR ∀i∈IRA (eqn. 11
or 16). Set IRNC=IRNC\IRA, IRA=∅, and SRA={s:s∈ SRNC, Is
+∩IRNC=∅}
Is SRNC=∅& IRNC=∅?
11. Calculate ψiS* and νiS* ∀i∈ IS*
+ and remove s* from SRC
14. Set SRA={s:s∈SR∩SRNC, (Is+∩ Is*
SL)\IRNC
≠∅} and IRA={i:i∈ IRNC, (Si-∩Ss*
SL)\SRNC ≠∅, |Si
- ∩Ss*SL|>1}. Calculate ξs∀s∈SRA
YES
YESIs SRA≠∅
or SRNC=∅?
NO
NO
9. Choose an s∈SRC and label it s*
8. Set SRC=SA∩SR
10. Set μiR=∞∀i∉Is*
SL, ωsR=∞∀s∉Ss*
SL
IRNC=Is*SL, SRNC=Ss*
SL, IRA=∅, and SRA={s*}
Is SRC = ∅ ? YES NO
Is ts ≤1∀s∈ST?
7. ts=ts+1∀s∈ST
s.t. νis>ρisμ ̃i∃i∈IT∩Is
+
YES
Stop: Infeasible
NO
General networksRecycle loopsRecycle materialsNested loops
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
The Algorithm
1. Set νis=0 ∀s∈ST, i∈IT∩Is+; ts=0
∀s∈ST ; and SiC={s:s∈ST ∩ Si
+}
2. Set SNC=S, INC=I, IA=∅, and SA=SF
Is IA=∅& SA=∅?
Is SA∩SR=∅?
5. Set SNC=SNC\SA, SiC=Si
C∪{s:s∈Si+∩ SA},
SA=∅, and IA={i:i∈INC, SiC=Si
+}
6. Calculate μi and μ ̃i∀i∈IA. Set INC=INC\IA. IA=∅ and SA={s:s∈SNC, Is
-∩INC=∅}
3. Calculate ωs∀s∈SA
4. Calculate νis∀s∈SA, i∈Is+ using LPi
Is νis≤ρisμ ̃i∀s∈ST,
i∈IT∩Is+?
Stop YES
NO
YES
YES
NO
NO
12. Calculate ωsR∀s∈SRA (eqn. 10
or 14). Set SRNC=SRNC\ SRA, SRA=∅, and IRA={i:i∈IRNC, Si
- ∩SRNC=∅}
13. Calculate μiR ∀i∈IRA (eqn. 11
or 16). Set IRNC=IRNC\IRA, IRA=∅, and SRA={s:s∈ SRNC, Is
+∩IRNC=∅}
Is SRNC=∅& IRNC=∅?
11. Calculate ψiS* and νiS* ∀i∈ IS*
+ and remove s* from SRC
14. Set SRA={s:s∈SR∩SRNC, (Is+∩ Is*
SL)\IRNC
≠∅} and IRA={i:i∈ IRNC, (Si-∩Ss*
SL)\SRNC ≠∅, |Si
- ∩Ss*SL|>1}. Calculate ξs∀s∈SRA
YES
YESIs SRA≠∅
or SRNC=∅?
NO
NO
9. Choose an s∈SRC and label it s*
8. Set SRC=SA∩SR
10. Set μiR=∞∀i∉Is*
SL, ωsR=∞∀s∉Ss*
SL
IRNC=Is*SL, SRNC=Ss*
SL, IRA=∅, and SRA={s*}
Is SRC = ∅ ? YES NO
Is ts ≤1∀s∈ST?
7. ts=ts+1∀s∈ST
s.t. νis>ρisμ ̃i∃i∈IT∩Is
+
YES
Stop: Infeasible
NO
Backward Propagation
Update Tear Streams Recycle StreamsGeneral networksRecycle loopsRecycle materialsNested loops
Computational requirements: avg = 0.26 sec, max = 4.3 sec
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Tightening constraints1A. Number of batches of task i
∑𝑗𝑗∈𝐉𝐉𝑖𝑖,𝑛𝑛 𝑋𝑋𝑖𝑖𝑗𝑗𝑛𝑛 ≥ �𝜇𝜇𝑖𝑖1 max𝑗𝑗∈𝐉𝐉𝑖𝑖
𝛽𝛽𝑗𝑗𝑚𝑚𝑚𝑚𝑚𝑚 ∀𝑖𝑖
1B. Number of batches of all tasks producing material s ∑𝑖𝑖∈𝐈𝐈𝑘𝑘+,𝑗𝑗∈𝐉𝐉𝑖𝑖,𝑛𝑛
𝑋𝑋𝑖𝑖𝑗𝑗𝑛𝑛 ≥ �𝜔𝜔𝑘𝑘 max𝑖𝑖∈𝐈𝐈𝑘𝑘
+𝑗𝑗∈𝐉𝐉𝑖𝑖𝜌𝜌𝑖𝑖𝑘𝑘𝛽𝛽𝑗𝑗𝑚𝑚𝑚𝑚𝑚𝑚 ∀𝑘𝑘
2A. Cumulative production of task i∑𝑗𝑗∈𝐉𝐉𝑖𝑖,𝑛𝑛 𝛽𝛽𝑗𝑗
𝑚𝑚𝑚𝑚𝑚𝑚𝑋𝑋𝑖𝑖𝑗𝑗𝑛𝑛 ≥ 𝜇𝜇𝑖𝑖∗∀𝑖𝑖
2B. Cumulative production of material k∑𝑖𝑖∈𝐈𝐈𝑘𝑘+,𝑗𝑗∈𝐉𝐉𝑖𝑖,𝑛𝑛
𝜌𝜌𝑖𝑖𝑘𝑘𝛽𝛽𝑗𝑗𝑚𝑚𝑚𝑚𝑚𝑚𝑋𝑋𝑖𝑖𝑗𝑗𝑛𝑛 ≥ 𝜔𝜔𝑘𝑘 ∀𝑘𝑘
Tightening ConstraintsThe algorithm calculates:ωs: minimum required amount of material sμi
1: minimum cumulative production of task i
Problem dataβj
max = maximum capacity of unit jρis
+ = fraction of material s produced by task i
Variable in all time-indexed formulationsXijt = 1 if task i starts in unit j at time t
34
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Computational ResultsDiscrete-time model Shah et al., 1993 (SPS) Testing library: 36 instances, 1800 CPU resource limit Four formulations
F1: SPS F2: SPS + 1A&B F3: SPS + 2A&B F4: SPS + 1A&B + 2A&B Makespan minimization: 95% of problems solved to optimality by SPS Cost minimization: less than 40% of problems solved to optimality by SPS
Average Time or Optimality Gap
189 s 1.3%2.1%
1.4 s 2.4 s1.5%Tightening (1 &2)
No Tightening
Optimal Solution
Suboptimal Solution
0 14 34 36Problems
35
T1 T3S1 S5 S7
T4
S4
80%20%
T2S2 S630%
70%S8
T6S10
T5S9
T7S11
S35%
95%
10%
80%
20%
90%
Example 1minimize Cost over 120 hours (δ = 1 hr
Without tightening: 2.22% gap after 16 hours With tightening: Solved to optimality in 5.8 sec
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
U2U3
U1 100 10020 20 2040 40 40
20100
2010
Xijn = 0.5
Computational ChallengeEquivalent schedules Formed by shifting tasks earlier or later Have the same number of batches Have the same objective value
In the B&B algorithm: Branching on Xijn leads to equivalent schedules There are millions of equivalent fractional solutions Bound does not improve
The number of batches is a key feature Leads to schedules with different objectives
U2
U3U1
P1
P2F I
T1 T2 T3Proc. Time (hr) 5 2 3Cost ($/batch) 1 1 1Capacity (kg) 100 20 10Profit ($/kg) 0 0.5 0.2
U2U3
U1 100 10020 20 2040 40 40
20100
2010
U2U3
U1 100 10020 20 2040 40 40
20100
2010
U2U3
U1 100 10020 20 2040 40 40
20100
2010
0 2 4 6 8 10 12 14 16 18… ~600 more equivalent schedules
36
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Parallel Branch-and-bound Algorithm1. Branch on the sum of binaries for a task and unit over time2. Solve nodes as MIPs in parallel3. Prune node if: node is infeasible best node bound is worse than best integer solution
4. Branch again if node is not solved to optimality within time limitInteger solutions are shared among all nodes as soon as they are found
Easy problems solved faster with standard MIP Branch-and-Bound Hard problems are more likely to be solved with Parallel Branch-and-BoundGoal: Branch on # of batches, but without overhead of parallel methodVelez & Maravelias, Computers & Chemical Engineering, 55, 2013.
1
2 3 4 5 6
7 8 9
10 11 12 13 14=9
=19≥22
≤ 16 =17 =18
=20 =21
=10=8<8 >10
≤18
Task 2 in Unit 3
T2,U1,nn
X∑
T2,U3,nn
X∑
Task 2 in Unit 1
Solved in parallel
37
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
ReformulationIntroduce New Variable & Defining Equation Nij = number of batches of each task i executed on unit j
𝑁𝑁𝑖𝑖𝑗𝑗 = ∑𝑛𝑛𝑋𝑋𝑖𝑖𝑗𝑗𝑛𝑛 Tried various reformulations using SOS1 binaries (∑𝑏𝑏∈𝐁𝐁𝑖𝑖𝑖𝑖 𝑏𝑏𝑍𝑍𝑖𝑖𝑗𝑗𝑏𝑏 = ∑𝑛𝑛𝑋𝑋𝑖𝑖𝑗𝑗𝑛𝑛)
Branching Alternatives No priorities High priority on Nij
High priorities on Xijn
Specific Nij priorities calculated from LP-relaxation at each node Various priorities with and without strong branching with SOS1 variables
Summary of Results Using Nij was faster than Zijb by a factor of ~2 Using priorities on Xijn was worse than using no priorities For cost/makespan, using or not using priorities on Nij gave similar results For profit, using priorities on Nij was faster than no priorities by 12%
Using priorities on Nij gave the best results Results presented for Nij reformulation without priorities
38
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Branching on Nij
39
Example: Maximize profit over η = 120 hr (δ = 1 hr)
Original formulation• 10 hours, 10 million nodes• Bound improves from $689.7 to $689.5• Only closes ~5% of integrality gap
Reformulation• Route node: zLP = 689.7; NT3 = 28.5• Branching once on NT3 improves bound to $686.4
(closes gap by 89%)• Branching twice improves bound to $686• Closes 100% of integrality gap in 5 nodes• CPLEX solves to optimality in <1 second
U2
U3U1
P1
P2F I
T1 T2 T3Proc. Time (hr) 5 2 3Cost ($/batch) 1 1 1Capacity (kg) 100 20 10Profit ($/kg) 0 0.5 0.2
1$689.7 𝑁𝑁𝑇𝑇11 = 22.8,
𝑁𝑁𝑇𝑇𝑇1 = 57,𝑁𝑁𝑇𝑇𝑇1 = 28.5
2$686.4
3$684.2
NT3≤28 NT3≥29
𝑁𝑁𝑇𝑇1𝑇 = 22.6,𝑁𝑁𝑇𝑇𝑇𝑇 = 57,𝑁𝑁𝑇𝑇𝑇𝑇 = 28
𝑁𝑁𝑇𝑇1𝑇 = 22.8,𝑁𝑁𝑇𝑇𝑇𝑇 = 56,𝑁𝑁𝑇𝑇𝑇𝑇 = 29
5 $6864$676.5
NT1≤22 NT1≥23
𝑁𝑁𝑇𝑇14 = 22,𝑁𝑁𝑇𝑇𝑇4 = 57,𝑁𝑁𝑇𝑇𝑇4 = 26.5
𝑁𝑁𝑇𝑇15 = 23,𝑁𝑁𝑇𝑇𝑇5 = 57,𝑁𝑁𝑇𝑇𝑇5 = 28
LP-Relaxation: $689.7 Optimal Solution: $686 Integrality gap: $3.7
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Computational Results – STN Testing library: 8 instances; 120-hr horizon ; 1-hr time step Settings: 3 hour resource limit ; default CPLEX settings
Makespan Minimization Cost Minimization Profit MaximizationOriginal Formulation 1.6%
Reformulation 1.1%
8Instances
1 2 3 4 5 6 7
1.5s 987s
2.8s 1.4%
1
10
100
1000
10000
0 1 2 3
Solu
tion
Tim
e (s
)
Instances
Original FormulationReformulation
103
101
100
102
104
1
10
100
1000
10000
0 1 2 3
Solu
tion
Tim
e (s
)
Instances
Original FormulationReformulation
103
101
100
102
104
1
10
100
1000
10000
0 1 2 3
Solu
tion
Tim
e (s
)Instances
Original FormulationReformulation
103
101
100
102
104
Original Formulation
Reformulation
7 81 2 3 4 5 6Instances
1944s85.1s
1.3%1121sOriginal Formulation 1.6%
Reformulation 0.7%
5 6 7 81 2 3 4Instances
0.2s 7.5s
1.4s 0.8%
40
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Computational Results – RTN
Makespan Minimization Cost Minimization Profit MaximizationOriginal Formulation 1.0%
Reformulation 1.5%1.4s 17.6%
6 7 8
1.4s 340s
1 2 3 4 5Instances
Original Formulation 1.6%
Reformulation 1.6%
1Instances
82 3 4 5 6 7
100s 220s
1551s 1.0%Original Formulation
Reformulation
6 7 8Instances
1 2 3 4 5
11.5s 0.6%
1.3%2.5%
1
10
100
1000
10000
0 1 2 3
Solu
tion
Tim
e (s
)
Instances
Original FormulationReformulation
103
101
100
102
104
1
10
100
1000
10000
0 1 2 3
Solu
tion
Tim
e (s
)
Instances
Original FormulationReformulation
103
101
100
102
104
1
10
100
1000
10000
0 1 2 3So
lutio
n Ti
me
(s)
Instances
Original FormulationReformulation
103
101
100
102
104
Testing library: 8 instances; 120-hr horizon ; 1-hr time step Settings: 3 hour resource limit ; default CPLEX settings
40
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Example 1Example: Maximize profit over η = 240 hr; δ = 1 hr 2,372 Binary variables 6,305 Continuous variables 11,810 Constraints
Original formulation: Runs out of memory after 40 hours (1.1% gap)
Reformulation: Solves in 12.6 s
Papageorgiou & Pantelides, Industrial and Engineering Chemistry Research, 35, 1996
U1: 1.3-5
U5: 0.8-3
U2: 2-8 U3: 1.5-6
U6: 1-4U4: 2-8
T1 T2F1
S1 S2
T8
S4
T7F2
S695%
5% IN2T9
S6
T3 IN1
T4
98%
90%
2%
10%
50% T10P3
50%
T6P2
T5
P1
S3
WS
Up to 59 batches run in a single unit 128 time points would be required in a continuous-time formulation
41
Example 2
T30F3 S30
T60F6 S60
T31F4 S31
T10F2 S10
T20F1 S20
T61F5 S61
T32IN3
T62IN4
T11IN1
T22S22
T23 P1
T70S70
T50S50
T40S40
T21S21
IN2P2
P3
T71S71 P4
S72
15%
85%
20%
80%50%
50%
60%40%
35%
65% 95%5%
U1 (1.2-6)
U2 (1-5)
U3 (1.4-7)
U4 (1.4-7)
U5 (1.6-8)
U6 (1.2-2)
U7 (1.4-7)
U8 (1.6-8)
T41
T51
T72
Resource1Resource2
75%
25%No Storage20 kg Inventory Capacity50 kg Inventory CapacityUnlimited Storage
00.511.52
048
1216
0 12 24 36 48 60 72 84 96 108 120 Cost
($/a
mou
nt)
Amou
nt
R1: Availability R2: Availability R1: Cost R2: Cost
Feed Delivery (variable amounts) Orders Due(variable amounts)
Utility availability & cost, deliveries, and orders:
Objective: max Profit, while filling customer ordersPapageorgiou & Pantelides, Industrial and Engineering Chemistry Research, 35, 1996 42
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Example 2 Original model runs out of memory after 2.5 days (0.6% optimality gap) Reformulation is solved in 3.5 minutes
43
-3-2.5-2-1.5-1-0.500.51
0
4
8
12
16
0 12 24 36 48 60 72 84 96 108 120
Cost
($/a
mou
nt)
Amou
nt
R1: Usage R1: Availability R1: Cost
C. Resource R1 Profile
0
4
8
12
16
0 12 24 36 48 60 72 84 96 108 120
Amou
nt
R2: Usage R2: Availability
C. Resource R2 Profile
U8
108
U1U2U3U4U5U6U7
84 120966048 720 12 3624
020406080
0 12 24 36 48 60 72 84 96 108 120
Inve
ntor
y
F1 F4 F5P1 P3 P4
B. Inventory Profile
A. Gantt Chart
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Concluding Thoughts
44
General framework Notation; problem classes; classification of modeling approaches
New scheduling models Sequential environment
Simultaneous batching and scheduling with storage and utility constraints General scheduling model
Problems in all/combined production environmentsunder wide range of processing characteristics and constraints
Solution methods Constraint propagation for tightening constraints Reformulation and branching methods Orders of magnitude reduction in computational requirements Can be applied to all time-indexed MIP scheduling formulations
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Concluding Thoughts
45
Where do we go next? Solution methods for nonlinear models Online scheduling
• Simply solving to optimality can lead to poor schedules(even in the deterministic case)
• What are set-point trajectories in scheduling? Do we need them? • Are recursive feasibility and stability relevant/useful?• Do we need terminal region/penalties?• How can we generate them systematically? • What can we learn from process control?
Acknowledgements Modeling: Arul Sundaramoorthy Solution methods: Sara Velez
Research supported by National Science Foundation: CBET-1066206
C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014
Q u e s t i o n s ?