59
Chemical Production Scheduling: Notation, Problem Classes, Modeling Approaches, and Solution Methods Christos T. Maravelias Department of Chemical and Biological Engineering University of Wisconsin – Madison Enterprise-wide Optimization Seminar Carnegie Mellon University February 27, 2014

Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

  • Upload
    lytram

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 2: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 3: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 4: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 5: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 6: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 7: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 8: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 9: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 10: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 11: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 12: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 13: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 14: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 15: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 16: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 17: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 18: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 19: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 20: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 21: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 22: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 23: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 24: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 25: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 26: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 27: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 28: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014

Industrial Application: Executed ScheduleExecuted Schedule

19

Page 29: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 30: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014

Industrial ApplicationSchedule Found Using Integrated Framework

21

Page 31: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014

Industrial ApplicationComparison with Implemented Solution

22

Page 32: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 33: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 34: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 35: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 36: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 37: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 38: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 39: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 40: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 41: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 42: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 43: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 44: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 45: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 46: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 47: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 48: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 49: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 50: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 51: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 52: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 53: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 54: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 55: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 56: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 57: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 58: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

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

Page 59: Chemical Production Scheduling - Carnegie Mellon …egon.cheme.cmu.edu/ewo/docs/EWO_Seminar_02_27_2014.pdf · February 27, 2014. C.T. Maravelias ... Chemical Production Scheduling

C.T. Maravelias Enterprise-wide Optimization Seminar: Chemical Production Scheduling February 27, 2014

Q u e s t i o n s ?