Upload
effie
View
35
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Variability and Uncertainty. Introduction Stochastic Programming Robust Programming Multiparametric Programming Dynamic Programming. Supply Chain. Efficiency Profitability. Coordination of resources. Introduction: PSE Chemical Supply Chain. Enterprise management. design planning - PowerPoint PPT Presentation
Citation preview
Plantilla -10
Variability and Uncertainty
IntroductionStochastic ProgrammingRobust ProgrammingMultiparametric ProgrammingDynamic Programming
2
Introduction: PSE Chemical Supply Chain
Enterprise management
designplanning
scheduling
Supply Chain
Coordination of resources
EfficiencyProfitability
3
Introduction: Modeling systems in PSE
decision detaillevel
temporal scale
Analytical ITproduction plant
supervisory and local control
distribution scheduling modeling systems
production scheduling modeling systems
(site i)
Operational analysis
Tactical analysis
production planning modeling systems
(site i)
logistics modeling systems
tactical modeling systems
Strategic analysis
strategic modeling systems
variablemarket trends
technologychangesenvironmental
conditions
decisions
Modeling system
uncertainty
reliable
inputinformation
Plantilla -40
Introduction: Uncertainty
The model will include a series of uncertain parameters There is not a unique solution… There is not an optimal solution…
In spite of this, a decision should be made (before the uncertainty is revealed)
Solution based on average values (or nominal values) does not need to be the best It could be even unfeasible
Decision making implies a risk Typically, there will be a trade-off among expected efficiency and assumed risk
Prediction is very difficult… specially about the futureNiels Bohr
5
ExecutionExecution
Executed scheduleExecuted schedule
Introduction: Scheduling under uncertainty
Data ambiguousoutdatedincomplete
BREAKDOWN
Dynamic & uncertain environment
Infeasible schedulePoor efficiencyOpportunity losses
Predictive schedulePredictive schedule
Decision makingDecision making
HowWhen
Whereinputinformation
t
6
Introduction: Motivating example
u2
u1
u3
ABDECmk: 101 TU wt: 0 TU
Predictive schedule (nominal)
u2
u1
u3
ABDECmk: 104 TU wt: 19 TU
Executed schedule
u2
u1
u3
Predictive schedule
ADEBCmk: 103 TU wt: 0 TU Is it worth spending effort to obtain a predictive
schedule optimal for nominal conditions that will eventually change at execution time due to disruptions and changes in the operation environment?
reaction
U1
dryingcentrifugation
U3U2
ABCDE
wait times
(Balasubramanian & Grossmann, 2002)
7
Safety measuresSlack time Intermediate storageExtra capacity
Sensitivity analysisProactive scheduling
Proactive approaches
Introduction: Management of the uncertainty
Reactive scheduling Completely reactive scheduling
Predictive - reactive scheduling Modification of operation conditions
Reactive approaches
Ability to achieve robust schedule execution despite the occurrence of unexpected events.
uncertaintyrealization
BREAKDOWN
Predictive schedule
How
When
Where
t
Uncertainty
Plantilla -80
Sources of Uncertainty
Unexpected events Ambiguous and/or incomplete information
processing / transport timesyield ratiosresources availabilityresources qualitymodel parametersoperators absenteeismcontrol systemsmisjudgements
Strategic Uncertainty
Tactical Uncertainty
Operational Uncertaintyinformation flowsdue datesmisjudgementsinflexible capacitiesraw materials availabilitymarket demandscancelled / rush orders
environmental conditionstechnology changesmarket parametersregion-specific featuresinternational aspectscompetitorsgovernmental regulationsfinancial issuesclinical trials
temporal scale
decision detaillevel
What will customers order?How many products should remain in stock?Will resources be available during production?Will suppliers deliver the materials on time?
Plantilla -90
Formal aspects
The way how the model relates the decission variables with the uncertain information Decoupling these two types of variables makes the
problem much more easy !
The way to express the probabiloity distribution of uncertain varaibles Continuous distributions vs. Discrete distributions.
The size of the problem The characteristics of the mathematical model
(convex, continuous, …) Including the characteristics introduced by the
probability functions to be applied (the probability functions are not convex (nor concave) transformations, disretizations, etc.)
There are different ways to face these problems. The most convenient way depends on aspects like:
Plantilla -100
Decision making under Uncertainty
Something has to be deceided “here and now” in spite of the fact that decision results only will be known in the future, once uncertainty is revealed
Plantilla -110
Typical decision making with a probabilistic representation of uncertainty
Sampling loop
MODEL (scenario simulation)
Objective function (k)
Scenario (k)Uncertain parameters
STOCHASTIC MODELER
Probabilistic objective function
Decision variables
OPTIMIZER Optimal probabilistic
solution
•Numerical or analytic techniques
Discrete distribution (scenario based)
• Sampling techniques
Continuous probability distribution
Plantilla -120
Optimization under uncertainty
Stochastic optimization Objective: Mathematic hope related to an efficiency measurement
Variability is not taken into account
Optimización robusta Compromise between “hope and variability ( Risc)
Plantilla -130
1.- Stochastic Programming
Combines the power of mathematical programming with statistical advanced techniques: Convexity analysis, development of dual problems, … problem decomposition Constraints management
The solution procedures are driven by the formalization of the
probability model. For example: When the number of scenarios to be contemplated is discrete
Deterministic equivalent problem (the size of the problem will be basically a function of the number of scenarios to be considered)
General Methods of stochastic programming
Multi-step methods(multistage stochastic programming): Penalization (“recourse problems”): The potential losses caused by uncertainty
are “a posteriori” compensated solving another optimization problem. This second problem depend on the decisions already made (“first step”) and on
the uncertainty finally revealed. The variable associated to this new optimization is the “resource” required to
compensate the uncertainty effects. During the first step decision making, the eventual (uncertain) values of the
second stage variables are explicitly considered Limitations:
Not applicable if the decisions (and states) affect the probability distribution
The costs associated to the “resource decisions” should be known in advance.
Chance-constrained programming: some constraints do not need to be maintained in a limited number of cases.
Plantilla -140
Plantilla -150
Equivalent deterministic problem (finite number of scenarios):
Min c'x + p1 d1'y1 + p2 d2'y2 + p3 d3'y3 s.t. A x = b T x + W y1 = h1
T x + W y2 = h2
T x + W y3 = h3
x, yi ≥ 0
(x: 1st stage variables(yi: 2nd stage variables(pi: probability of scenario “i”
Plantilla -160
Stochastic Programming: Example
Management of a local gas distribution company (http://wiki.mcs.anl.gov/NEOS/index.php/Stochastic_Programming):
Data: Gas demand for the current period (100 units), buying price (1 €/unit) and selling price for the current period (2 €/unit). Storage cost (0.05 €/unit)
Uncertain data: Gas demand for the next period, and buying/selling prices Uncertainty model: 3 equiprobable scenarios:
Decision: How much gas should be bought “here and now” the the global operators (taking into account that gas can be stored and consumed during the next period)
Solution alternatives: Solve the problem for each scenario Solve the problem for the average scenario Stochastic programming
Scenario Probability Gas cost (€/unit) Demand (units)
Normal 1/3 5.0 100
Cold 1/3 6.0 150
Very cold 1/3 7.5 180
Plantilla -170
Equivalent deterministic problem (finite number of scenarios):
Min c'x + p1 d1'y1 + p2 d2'y2 + p3 d3'y3 s.t. A x = b T x + W y1 = h1
T x + W y2 = h2
T x + W y3 = h3
x, yi ≥ 0
x: gas to be bought (and/or store)yi: gas to be bought during the second year (for each scenario)di: price of the gas to be bought during the second year (for each scenario)b: demand (in the first year)T, A y c’: parameters to ensure that the extra quantity bought during the 1st year will be stored
(cost!) and will be used to cover the 2nd year demand (or part of it)hi: demand for the second year (for each scenario)pi: probability of scenario “i”
Plantilla -180
Mathematical formulation
One unique scenarioMinimize (sum Price[t] * Buy[t]) + (sum Store[t] * StorageCost) subject to: Buy[t] + Use_stored[t] >= Demand[t], t in (1,2) Store[t] = Store[t-1] + Buy[t] - Demand[t], t in (1,2) Use_stored[t] <= Store[t-1], t in (1,2)
“n” scenariosMinimize (Price[1][1] * Buy[1][1] + sum Store[1][1] * StorageCost) + + sum Scen Prob[Scen] * (Price[2][Scen] * Buy[2][Scen] + Store[2][Scen] * StorageCost) First-period constraints Buy[1][1] + Use_stored[1][1] >= Demand[1][1] Store[1] = Store[0] + Buy[1] - Demand[1] Use_stored[1] <= Store[0] Second-period constraints Buy[2][Scen] + Use_stored[2][Scen] >= Demand[2][Scen] Store[2][Scen] = Store[1][1] + Buy[2][Scen] - Demand[1][Scen]
Use_stored[2][Scen] <= Store[1][1]
Plantilla -190
Excel solution
1000.0
1400.0
1800.0
2200.0
50 100 150 200 250 300
Coste total esperado
coste total mínimo
coste total medio
coste total máximo
Mínimo coste esperado: 1400, con una compra de 200Mínimo "coste mínimo": 1000, con una compra de 100 (+100 como mínimo en el escenario "normal")Mínimo "coste máximo": 1595, con una compra de 270 (+10 como máximo en el escenario "muy frío")Mínimo "coste de escenario medio": 1360, con una compra de 243.33 (100+143.33 = D2)
“Chance constrained” programming
Equivalent to stochastic programming, including a new constraint to limit the probability of not matching a certain constraint to a certain maximum value.
Examples: Same problem including a constraint to limit the probability of having to buy more than 30 units in the second periodAccepting solutions no covering the 10% of the second year demand in a 5% of the eventual situations
Helps to assess the “parameters” probability distribution
Plantilla -200
Plantilla -210
2.- Robust programming
The model includes a series of “i” unknow parameters (si); although their value is unknown, they should be among a specific set of specific values (Si)
Optimization = To look for the best solution which meets all constraints (feasibility) for any parameters value combination
Worst Case Analysis for any eventual decision (The set of scenarions is, actually,i irrelevant
“S”: Set of “s” = uncertain parameters (preferably: continuous and convex)
Variation: To look for the best solution which meets all constraints (feasibility) which a probability less than “alfa” to get a result worst than “zmin” (“downside risk”)
Plantilla -220
Robust programming example
Management of a local gas distribution company (http://wiki.mcs.anl.gov/NEOS/index.php/Stochastic_Programming):
Data: Gas demand for the current period (100 units), buying price (1 €/unit) and selling price for the current period (2 €/unit). Storage cost (0.05 €/unit)
Uncertain data: Gas demand for the next period, and buying/selling prices Uncertainty model: 3 equiprobable scenarios:
Decision: How much gas should be bought “here and now” the global operators (taking into account that gas can be stored and consumed during the next period)
Solution alternatives Only one: To determine the optimum gas quantity to be bought in the first period
Objective: maximize retrofit benefit in the worst of the uncertain scenarios ( buy 270 Maximum cost of 1595 in the “very cold” scenario. The expected (average) cost is 1575)
Optimization of the expected cost implies buying 200 units and a expected cost of 1400, but this cost can lead to a cost of 1700 in the very cold scenario
Scenario Probability Cost (€/unit) Demand (units)
Normal 1/3 5.0 100
Cold 1/3 6.0 150
Very cold 1/3 7.5 180
Management of a local gas distribution company (http://wiki.mcs.anl.gov/NEOS/index.php/Stochastic_Programming):
Data: Gas demand for the current period (100 units), buying price (1 €/unit) and selling price for the current period (2 €/unit). Storage cost (0.05 €/unit)
Uncertain data: Gas demand for the next period, and buying/selling prices Uncertainty model: 3 equiprobable scenarios:
Decision: How much gas should be bought “here and now” the the global operators (taking into account that gas can be stored and consumed during the next period)
Solution alternatives: Solve the problem for each scenario Solve the problem for the average scenario Stochastic programming
Plantilla -230
3.- Multiparametric programming(Origin: Sensibility analysis)
The model (F.Obj. + Constraints) includes a series of bounded parameters (they can vary among certain limits)
Objective To obtain explicit (exact or approximate) analytical expressions for the F.Obj. and other characteristric variables as a function of the uncertain parameters (and, eventualy, the range of applicability of such expressions)
The determination of the applicability ranges is a major problem
Note 1: Multiparametric programming offers “the” exact mathematic solutionNote 2: Is not usefull for decission making (“previous” to uncertainty is revealed)
Very complex mathematical problem (the numerical solution is not valid….) Multiparametric Linear and Quadratic Programming Multiparametric Nonlinear Programming Multiparametric Mixed-Integer Linear Programming Multiparametric Mixed-Integer Quadratic and Nonlinear Programming Parametric Global Optimization Bilevel and Multilevel Programming
Example (AICHE Journal, 53,12, pg. 3183, 2007 // I&EChR, 37, pg 4341, 1998):Li & Ierapetritou Scheduling with uncertain demand
Plantilla -240
Equipo Capacidad Tarea(s) Tiempo Estado Almace -namiento
Cantidad Inicial
Precio
U1 100 Task1 3.0 + 0.0300 B S1 Unlimited Unlimited 0.0
U2 75 Task2 2.0 + 0.0266 B S2 100 0.0 0.0
U3 50 Task3 1.0 + 0.0200 B S3 100 0.0 0.7
S4 Unlimited 0.0 1.0
ParámetroIncierto
Rango
Demand S3 0-50
Demand S4 0-100
Plantilla -250
Programa Objetivo Estado
SCH-1 -90.46 CR1
SCH-2 -73.547 + 0.029 D2 CR2
SCH-3 -96.140 - 0.158 D1 CR3 + CR5
SCH-4 88.55 CR4
Ejemplo (AICHE Journal, 53,12, pg. 3183, 2007 // I&EChR, 37, pg 4341, 1998):Li & Ierapetritou Scheduling with uncertain demand
90
80
70
60
50
40
30
20
10
If DS3 < 10 this schedule allows to produce the maximum of S4 (74, if DS3 is 0: reducing the batch size of the second S3 batch allows to advance the second batch of s4, and it is possible to produce more S4 (againts S3)
While DS3 < 36, produce as much as possible of S4 (65)(36 of S3 is the maximum)
While DS4 < 50, produce just a batch of S4 and produce as much as possible of S3 (until the end)
If DS3 >36, this sequence allows to produce the maximum of S3, if DS4 is less than DS3
Plantilla -260
4.- Dynamic Stochastic Programming
Transformation of problems under uncertainty in dynamic programming problems
Dynamic programming problem characteristics:The problem can be divided in single decision “steps”Each step has a number of associate states.
Decision in a certain step transforms one step into another in the next step.In a certain state, the optimum decision for the next steps does not depend on the previous decision (the system is like an “state function”)There exist a recursive function to obtain the optimum solution at step j, if step j+1 is already solved.Final step solution is obvious.
Optimality principle (Bellman): “Any subset of decisions sequence from the optimal decision sequence is
an optimum solution of the corresponding subproblem
Knapsack problem: n=3 C=15
(b1,b2,b3)=(38,40,24)
(p1,p2,p3)=(9,6,5)
Strategy: Take first the maximum benefit per unit of weight.
Obtained solution:(x1,x2,x3)=(0,1,1), 64
Optimum solution:(x1,x2,x3)=(1,1,0), 78
(because of the integer nature of the problem)
Dynamic programming example:
Se emplea típicamente para resolver problemas de optimización. Permite resolver problemas mediante una secuencia de decisiones.
Como el esquema voraz
A diferencia del esquema voraz, se producen varias secuencias de decisiones (d1, d2, …, dn) y solo al final se sabe cuál es la mejor de ellas.
Si hay «o» opciones posibles para cada una de las decisiones, una técnica de fuerza bruta exploraría un total de on secuencias posibles de decisiones (explosión combinatoria).
La programación dinámica evita explorar todas las secuencias posibles por medio de la resolución de subproblemas de tamaño creciente y almacenamiento en una tabla de las soluciones óptimas de esos subproblemas para facilitar la solución de los problemas más grandes.
Dynamic programming: Introduction
R. Bellman: Dynamic Programming,
Princeton University Press, 1957.
Dynamic programming methods
Problema: ¿ineficiencia ? Un problema de tamaño N (número de objetos disponibles) se reduce a dos
subproblemas de tamaño (N-1). Cada uno de los dos subproblemas se reduce a otros dos…
Por tanto, se obtiene un algoritmo exponencial.
Sin embargo, el número total de sub-problemas a resolver no es tan grande: Sólo hay NxC problemas diferentes:
Decidir si el objeto n va a la mochila ( N) en un momento determinado El momento (C =peso ya obtenido por decisiones anteriores)
Por tanto, la solución recursiva está generando y resolviendo el mismo problema muchas veces Para evitar la repetición de cálculos, las soluciones de los subproblemas se pueden almacenan en una tabla.
Plantilla -290
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15p1 9 0 0 0 0 0 0 0 0 0 38 38 38 38 38 38 38p2 6 0 0 0 0 0 0 40 40 40 40 40 40 40 40 40 78p3 5 0 0 0 0 0 24 40 40 40 40 40 64 64 64 64 78
Problema de la mochila: n=3
C=15
(b1,b2,b3)=(38,40,24)
(p1,p2,p3)=(9,6,5)
Dynamic Programming example
TSP Problem
Plantilla -300
número devértices
n
tiempofuerza bruta
n!
tiempoprog . dinámica
n2 2n
espacioprog . dinámica
n2n
5 120 800 16010 3628800 102400 1024015 1, 311012 7372800 491520
20 2, 431018 419430400 20971520
Plantilla -310
Dynamic stochastic programming
The gas company should now cover the demand in 3 different locations, in competence with other local suppliers. They have bought 300 units of gas previously (at a very good price) They will get a benefit of 2.00 €/unit BUT
If they do not sell it, they should have to sell it to the competence, so the benefit will be reduced to 0.50 €/unit.
If more gas is required, they can buy it to the competence, without benefit. The selling probabilities for the next period are estimated as follows:
Objective: Assign gas to cities to obtain the maximum expected benefit
Location Demand Probability
A 50 / 100 / 150 0.60 / 0.00 / 0.40
B 50 / 100 / 150 0.50 / 0.10 / 0.40
C 50 / 100 / 150 0.40 / 0.30 / 0.30
Plantilla -320
Dynamic stochastic programming
Transformation to dynamic programming: The expected benefit to send 100 units to location A is:
0.60 * ( 50*2.0 + 50*0.5 + 00*0.0) + 0.00 * (100*2.0 + 00*0.5 + 00*0.0) + 0.40 * (100*2.0 + 50*0.0 + 50*0.0) = 155 €
In a similar way:
Now we have a deterministic problem, which can be solved by dynamic programming
Location Demand Probability
A 50 / 100 / 150 0.60 / 0.00 / 0.40
B 50 / 100 / 150 0.50 / 0.10 / 0.40
C 50 / 100 / 150 0.40 / 0.30 / 0.30
Location Service Expected value
A 0 / 50 / 100 / 150 0.0 / 100.0 / 155.0 / 210.0
B 0 / 50 / 100 / 150 0.0 / 100.0 / 162.5 / 217.5
C 0 / 50 / 100 / 150 0.0 / 100.0 / 170.0 / 217.5
Decissions to be made (and costs)
Plantilla -330
300
150
100
50
0
300
250
200
150
Availability toA+B+C
Availability toB+C
Availability toC
210
0217.5
217.5
0
0
100
170
217.5100
155217.5
217.5
0
100
100162.5
162.5
162.5
Location Service Expected value
A 0 / 50 / 100 / 150 0.0 / 100.0 / 155.0 / 210.0
B 0 / 50 / 100 / 150 0.0 / 100.0 / 162.5 / 217.5
C 0 / 50 / 100 / 150 0.0 / 100.0 / 170.0 / 217.5
300
150
100
50
0
300
250
200
150
Availability forA+B+C
Availability forB+C
Availability forC
150 to A
0 to A
150 to B
150 to B
0
0 to C
50 to C100 to C
150 to C
Plantilla -340
Procedure
1 step per location 3rd step: to serve “no more” than 0, 50, 100 or 150 units to C
Depending on how much is served to A and B, availability to C will be limited 2nd step: to serve “no more” than 150, 200, 250 o 300 units to B and C
Depending on how much is served to “A” availability to B and C will be limited 1st step: to serve 300 units to A, B y C.
300
150
100
50
0
300
250
200
150
Availability to A+B+C
Availability to B+C
Availability to C
150 a A
0 a A
150 a B
150 a B
0
0 a C
50 a C100 a C
150 a C
Plantilla -350
Procedure
Location Service Expected value
A 0 / 50 / 100 / 150 0.0 / 100.0 / 155.0 / 210.0
B 0 / 50 / 100 / 150 0.0 / 100.0 / 162.5 / 217.5
C 0 / 50 / 100 / 150 0.0 / 100.0 / 170.0 / 217.5
300
150
100
50
0
300
250
200
150
Disponibilidadpara
A+B+CDisponibilidadrestante para
B+C
Disponibilidadrestante para
C
150 a A
0 a A
150 a B
150 a B
0
0 a C
50 a C100 a C
150 a C
Plantilla -360
Procedure
UnidB+C
Location Serv ice Expected value
A 0 / 50 / 100 / 150 0.0 / 100.0 / 155.0 / 210.0
B 0 / 50 / 100 / 150 0.0 / 100.0 / 162.5 / 217.5
C 0 / 50 / 100 / 150 0.0 / 100.0 / 170.0 / 217.5
Second step: there are different alternatives take the best for each origin
162.5100
162.5
300
15010050
0
300250200150
Availability to A+B+C
Availability to B+C
Availability to C
210
0217.5
217.5+0 = 217.5
0
0
100
170
217.5100
155217.5
217.5
0+217.5=217.5
100+170=270
162.5+100 = 262.5
300
150
100
50
0
300
250
200
150
Availability toA+B+C
Availability to B+C
Availability toC
150 a A
0 a A
150 a B
150 a B
0
0 a C
50 a C100 a C
150 a C
Plantilla -370
Procedure
UnidB+C
UnidC
City Service Expected value
A 0 / 50 / 100 / 150 0.0 / 100.0 / 155.0 / 210.0
B 0 / 50 / 100 / 150 0.0 / 100.0 / 162.5 / 217.5
C 0 / 50 / 100 / 150 0.0 / 100.0 / 170.0 / 217.5
Second step: there are different alternatives take the best for each origin
162.5+170=332.5300
15010050
0
300250200150210
0217.5+217.5=435
0170
217.5
100
155
217.5+170=387.5
100+170=270
300
150
100
50
0
300
250
200
150150 a A
0 a A
150 a B
150 a B
0
0 a C
50 a C100 a C
150 a C
Plantilla -380
Procedure
UnidB+CThere are 2 equivalent optima:
50 to A, 150 to B and 100 to C. 487.5 €.100 to A, 100 to B and 100 to C. 487.5 €.
300
150
100
50
0
300
250
200
150210
0217.5
217.5
0
0
100
170
217.5100
155217.5
217.5
0
100
100162.5
162.5
162.5
Location Service Expected value
A 0 / 50 / 100 / 150 0.0 / 100.0 / 155.0 / 210.0
B 0 / 50 / 100 / 150 0.0 / 100.0 / 162.5 / 217.5
C 0 / 50 / 100 / 150 0.0 / 100.0 / 170.0 / 217.5
Thirs step: there are different alternatives take the best for each origin
300
150
100
50
0
300
250
200
150480
435
435
0170
217.5487.5
487.5 332.5
270
387.5
Plantilla -390
Limitations: what else ?
Uncertainty modeling Fuzzy sets ? Fuzzy programming ? (principle of “difficulty conservation”?)
Generalization of methodologies (modeling and solution) Multiple sources of uncertainty Multiple objectives ( “trade off”)
Computing efficiency (industrial problem) Uncertainty of uncertainty