Stochastic programming in logistics Stein W Wallace The

  • Slides: 42
Download presentation
Stochastic programming in logistics Stein W. Wallace The Chinese University of Hong Kong Molde

Stochastic programming in logistics Stein W. Wallace The Chinese University of Hong Kong Molde University College, Norway

The goals of today • • • Show you some logistics problems Show why

The goals of today • • • Show you some logistics problems Show why they are hard or simple Think a lot about options Discuss hard and soft constraints Discuss stages

Why stochastic programming? • To find all the explicit and implicit options worth paying

Why stochastic programming? • To find all the explicit and implicit options worth paying for – A spare bus in case of breakdowns – Extra ground time for a plane to absorb small delays – A financial instrument to reduce variations in income from trade in several currencies – A different schedule which is simply more robust in light of delays.

To do this we must … Model stages … … and thereby the information

To do this we must … Model stages … … and thereby the information structure Study random phenomena … … and decide how to represent them Update our old modeling skills … … not the least how we treat constraints

The inventory model • The most classical of them all • Three versions –

The inventory model • The most classical of them all • Three versions – Lost sales – Backorder – Demand must be met

What if demand is random? • All demand must be met turns into a

What if demand is random? • All demand must be met turns into a worstcase model. – The highest demand will drive the model – The rest is without importance to the solution • And what if the highest demand is not really known? – Demand will not be met all the time! – We get (close to) random results

Message • Hard constraints on such as resources and demand are dangerous in stochastic

Message • Hard constraints on such as resources and demand are dangerous in stochastic models. • Hard constraints imply the willingness to pay any amount to satisfy the constraint. • Particularly bad if combined with a subjectively chosen worst case – which most of the time is the case

But the stages … • But this is naturally a multi-stage problem – maybe

But the stages … • But this is naturally a multi-stage problem – maybe infinitely many • There are others of similar type: – Any other model with inventory – Any model where the vehicles do not return to the “depot” at the end of the day – Project scheduling (i. e. models with state variables other than inventory)

More about stages • … since they are hard to handle. • I will

More about stages • … since they are hard to handle. • I will look at a few classical models to see some issues – Network design (random demand) – Vehicle routing (random demand) – Crew training (sick crew members)

Examples • Network design: building networks, creating schedules. • Facility layout: Production planning •

Examples • Network design: building networks, creating schedules. • Facility layout: Production planning • All major investments that later are used for a long time under uncertain conditions.

Network design • Stage 1: Create a network • Stage 2: Use it under

Network design • Stage 1: Create a network • Stage 2: Use it under random demand • Type A: The use is memory-less (easy) • Type B: The use has memory (hard)

Vehicle routing • Stage 1: Find a route • Stage 2: Return to depot

Vehicle routing • Stage 1: Find a route • Stage 2: Return to depot when full and then continue your route • Issue: Make sure you run full (which is a random event) near the depot • Simplification implied: You never use information as it arrives during a trip.

Crew training • A crew consists of a given number of people from a

Crew training • A crew consists of a given number of people from a given set of roles (engineers of different types, cooks, hotel personnel, nurse, …) • A certain number of them need certificates for safety roles (fire, life-boats, …) • Stage 1: Who to train • Stage 2: Replace whoever is missing

Inherently multi-stage • Notice: In these problems all stages are equal or similar. All

Inherently multi-stage • Notice: In these problems all stages are equal or similar. All the decisions are on operative level. These are hard SPs. • The options are not major – Reposition vehicles – Produce for inventory – Invest in the duration of an activity

Inherently multi-stage • Stage structure is clear – Inventory models – Financial models •

Inherently multi-stage • Stage structure is clear – Inventory models – Financial models • Stage structure is not clear – Project scheduling – Vehicle routing with information gathering

Stage structure not clear • The order of the decisions depends on other decisions

Stage structure not clear • The order of the decisions depends on other decisions and realizations of random variables • Not well suited for stochastic programming • But these problems are both important and interesting! – Recreate stage structure – Powell et al. – Online optimization – Van Hentenryck et al.

Stage structure is clear • What do you want? • Policies? Then SP is

Stage structure is clear • What do you want? • Policies? Then SP is not the right tool. • Transient behavior? – Finite horizon: Multi-stage SP: OK – Infinite: How will you model that in SP? • Must make it finite • Model the tail: Value of ending inventory, care about where vehicles end up …

Inherently two-stage • Structure: Invest, then use the investment. • True two-stage: There is

Inherently two-stage • Structure: Invest, then use the investment. • True two-stage: There is no memory in the use (like producing perishables) – Newsboy • The second stage is really multistage (infinite) as it has memory. • My view: These are the problems best suited for SP.

… the infinite case • Does it make sense at all to model this

… the infinite case • Does it make sense at all to model this situation? – An investment followed by (in principle) infinitely many stages of usage? • I don’t think we really understand what this means, and hence, how to model it. • Two ways out – Make the usage part finite – Make the usage part circular (and two-stage)

Make the usage part finite … • Build a warehouse, then use it for

Make the usage part finite … • Build a warehouse, then use it for a long time. A warehouse is needed due to – Production cost structure – fixed costs etc – Uncertainty in demand, lead times • Must be very careful with tail effects – Especially for the uncertain effects – Or you will miss major options • But this is a common approach

Make the problem two-stage • Let us take a problem from network design that

Make the problem two-stage • Let us take a problem from network design that I will discuss later in the week • First-stage: Set fixed routes for vehicles – Conservation of flow on the variables • Second-stage: Use these routes to send uncertain amounts of goods. • Memory: At any point in time, the trucks may be fully or partly loaded.

The Circular Network 1 1 2 2 3 3

The Circular Network 1 1 2 2 3 3

Scenarios • A scenario is a demand realization for each commodity. • No information

Scenarios • A scenario is a demand realization for each commodity. • No information is revealed over time, except that routes must be set without knowing which demand will occur • The second-stage decisions are not potential dispatches. • But we do capture the options – which was the goal.

Part 2 A case study and a question on uncertainty

Part 2 A case study and a question on uncertainty

Supply base management • The role of a supply base is to organize the

Supply base management • The role of a supply base is to organize the supply of goods (and people) to one or more installations offshore. – Containers to and from platforms – Bulk (water, chemicals, …) to and from platforms – People (by helicopter)

A central theoretical question • What makes a supply base different from other logistics

A central theoretical question • What makes a supply base different from other logistics systems? It contains – Purchasing – Inventory – Distribution • Is this any different from a chain of food stores?

(Rigg) Norne Åsgard A, B, C (Rigg) Heidrun Kristin Sc 5, West Alpha Njord

(Rigg) Norne Åsgard A, B, C (Rigg) Heidrun Kristin Sc 5, West Alpha Njord Kristiansund Draugen Sandnessjøen

Viking Fighter Stein W. Wallace

Viking Fighter Stein W. Wallace

The Heidrun platform

The Heidrun platform

Trygve Moxness

Trygve Moxness

Unloading the vessel Stein W. Wallace

Unloading the vessel Stein W. Wallace

I asked before … • Is a supply base any different from a chain

I asked before … • Is a supply base any different from a chain of food stores? Can’t we simply use very standard theory? Is there anything special here?

Vehicle routing • How to do vehicle routing when both the vessel (standard) and

Vehicle routing • How to do vehicle routing when both the vessel (standard) and the customers (not standard) have limited capacity? • Can end up with loops in the optimal solutions. – Halskau, Gribkovskaia, Laporte

Costs • In inventory the optimal order quantity is normally a tradeoff between –

Costs • In inventory the optimal order quantity is normally a tradeoff between – Fixed order costs – Shortage costs – Inventory costs • and is affected by – Lead times – Uncertainty But one day of lost production costs USD 10 mill - as much as one year of logistics So the shortage cost is almost infinite

So theoretical (and practical) questions are: • What is the meaning of efficient logistics

So theoretical (and practical) questions are: • What is the meaning of efficient logistics when the shortage cost is infinite? • Can any waste be defended by saying that it reduces (a little bit) the chance of a shutdown?

Statistics • Can we get statistics for waves? • Are waves different at neighboring

Statistics • Can we get statistics for waves? • Are waves different at neighboring platforms? In what way? • Can we have conditional forecasts? – Forecasts for tomorrow Sure ! – Forecasts for the day after – Tomorrow’s possible forecasts for the following days? ?

A tree of conditional forecasts Left=low Right=high Low in 12 h: 0. 7*0. 8+0.

A tree of conditional forecasts Left=low Right=high Low in 12 h: 0. 7*0. 8+0. 3*0. 4=0. 68

So if there is chance of a storm… • Some containers are more critical

So if there is chance of a storm… • Some containers are more critical than others. • Delivering in criticality order will create very bad routes • The capacity of a vessel is tons/day, not tons. • And the weather forecast will change on route • Two-stage will not be good enough

… the uncertainty • We have two choices – Use data (which exist) to

… the uncertainty • We have two choices – Use data (which exist) to create stochastic processes – time series ? – to describe waves – Base the optimization model on wave forecasts from meteorologists • Which is easier / better ? • What would you prefer ?

Memory • The memory in wave heights is quite long – Is the wind

Memory • The memory in wave heights is quite long – Is the wind increasing or decreasing? – What is the direction? – How long before the sea calms after the wind is gone? – And more? • All this must (in principle) be inside the wave height model.

Forecasts • In a wave forecast, all this is hidden in the model itself,

Forecasts • In a wave forecast, all this is hidden in the model itself, and memory becomes irrelevant (for the model) • You simply get a tree, and that’s it! • This issue is far from straightforward, but now you know it is there.

Bon voyage!

Bon voyage!