440 likes | 459 Views
Explore complex logistics problems, discuss stochastic programming, stages, and decision-making, emphasizing inventory and vehicle routing models. Learn to handle uncertain conditions in network design and crew training.
E N D
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 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 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 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 • Lost sales • Backorder • Demand must be met
What if demand is random? • All demand must be met turns into a worst-case 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 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 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 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 • 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 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 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 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 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 • 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 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 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 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 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 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 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.
1 1 1 1 2 2 2 2 3 3 3 3 The Circular Network
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
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 systems? It contains • Purchasing • Inventory • Distribution • Is this any different from a chain of food stores?
(Rigg) Sandnessjøen Norne (Rigg) Heidrun Åsgard A, B, C (Rigg) Kristin Sc5, West Alpha Njord Draugen Kristiansund
Viking Fighter Stein W. Wallace
Statoil The Heidrun platform
Unloading the vessel SteinW. Wallace
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 the customers (not standard) have limited capacity? • Can end up with loops in the optimal solutions. • Halskau, Gribkovskaia, Laporte
Costs • In inventory theory 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 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 platforms? In what way? • Can we have conditional forecasts? • Forecasts for tomorrow • Forecasts for the day after • Tomorrow’s possible forecasts for the following days? Sure ! ?
A tree of conditional forecasts Left=low Right=high Low in 12h: 0.7*0.8+0.3*0.4=0.68
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 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 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, 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.