Docstoc

Executive Masters in International Logistics (PowerPoint)

Document Sample
Executive Masters in International Logistics (PowerPoint) Powered By Docstoc
					Consolidation


John H. Vande Vate
   Spring, 2007

                     1
                         1
            Agenda

• Combining LTL into TL shipments
  – Motivation
  – Models
  – Issues
• Multi-Stop TL shipments
  – Column Generation Approach


                                    2
                                        2
           Motivations
• Speed
  – LTL shipments are consolidated, routed to
    intermediate terminals, sorted, …
  – TL shipments can be faster
• Cost
  – Remember concave cost structure
  – Typically TL is less expensive per unit



                                                3
                                                    3
                Context
• Manufacturer/Distributor shipping to regular
  customers
• Default Option: LTL shipment to each customer
• Consolidation:
  – TL several order to LTL terminal near customers
  – LTL from terminal to customers
  – Typically not dynamic:
     • Where is the customer?
     • How large is the order?


                                                  4
                                                      4
  Interrelated Questions
• Where do we consolidate (what
  terminals)?
• Which customers (orders) do we serve
  through each terminal?




                                         5
                                             5
         Assumptions

• Single Plant or origin for supplies
  – We are not allocating customers to
    production plants. That’s already been done
• We know our customers
  – Not always the case
  – Can use geographic regions in place of
    actual customer locations
• We have adjusted last year’s orders to
  reflect next year’s projections
                                             6
                                                  6
                        A Model
• Identify a candidate set of consolidation points (terminals)
   – More choices allows exploring more options
   – More choices slows computation
   – On the order of 30 say
• Key Decisions
   – Open: Do we use a candidate consol pt or not?
       • One for each candidate consol pt
   – Assign: Does a consol pt serve a customer or not?
       • One for each candidate consol pt and (reasonably close) customer
   – ServeDirect: Do we serve the customer directly via LTL or not?
       • One for each
   – Trucks: Annual (say) number of TL shipments to a candidate consol
     pt.
       • One for each candidate consol pt.                           7
                                                                            7
   Objective: Transportation Cost
• LTL shipments direct to customers
   –   Easy to rate these, we’ve been shipping this way
   –   Recommend using rating engine to rate them anyways
   –   Compute discount rate: DR = (Rated Cost -Actual Cost)/Rated Cost
   –   Cost to serve * Serve Direct
• Truck load shipments to consolidation points
   – Might use $/mile and get distances from PC Miler or CzarLite
   – Might distinguish by region of country
   – Cost per truck * Trucks to Consol Pt.
• LTL shipments from consol pts to customers
   – These are painful to get
   – Use rating engine to rate historical shipments apply discount rate DR
   – Cost to Serve from Consol pt * Assign to Consol pt

                                                                 8
                                                                        8
               Elaborations
•   Consider inventory costs
•   Handling charges at consol pts
•   Amortized capital charge or rent for consol pts
•   Time to customer
• …




                                                      9
                                                          9
 Transport Requirements
• TL shipments cost depends on capacity
• How many trucks
• Homogeneous commodity
   – Either weight or cube or floor space drives
     capacity
   – Translate each customers annual demand into a
     demand for this unit of capacity, e.g., weight
• Heterogeneous commodities
   – Treat like homogeneous commodity based on
     basket of products or
   – Translate each customers annual demand into
     weight and cube (or floor space)

                                                      10
                                                           10
                    Constraints
        • Every Customer is Served
          –
 Demand For each customer:  e.g.,Weight of
                              customer’s
  varies. ServeDirect + Sum over consol pts Assign = 1
       •                         orders
  TrucksTrucks required to each consol pt
won’t be full each consol pt (and type of capacity,
          – For
             e.g., weight, cube, floor space)
           Trucks*Load Factor  Sum over customers
             Assign*Requirement/Capacity
                                      e.g.,Weight
                                                     11
                                    limit of Truck        11
           Frequency
• Time matters
• Minimum level of service to consol pt
  – E.g., once per week or thrice per week…
  – Amounts to a fixed (operating cost) for
    opening a consol pt.
                            e.g.,156 = 52*3
• ServiceLevelConstraint:
  – For each consol pt
  Trucks  Minimum Service level*Open

                                              12
                                                   12
              Logic

• Can’t assign a customer to a consol pt
  unless it is open
  – For each customer and consol pt (within
    reason)
   Assign ≤ Open




                                              13
                                                   13
               Peculiarities
• Typical of integer optimization
  – Does strange things to ensure we get the most
    out of the fixed operating cost associated with
    opening a consol pt.
  – See assignments bypassing consol pts
  – Adding a nearby customer may force us to use
    another truck, but adding a smaller one farther
    away may not


                                               14
                                                      14
              Odd Assignments




                                              Plant in
                                               FL!?*

• Reasonable to use recommended consol pts?
• Reasonable to use recommended
  assignments?                                  15
                                                     15
    Translation to Implementation
•   Suggests the value of dynamic
    assignments that change from week to
    week
•   Reasonable to drop integrality of Assign
•   One Project: Implement and evaluate the
    impact of dynamic assignments


                                        16
                                               16
  Next Step: Multi-Stop Routes
• Can we improve performance by sharing
  the fixed operating cost across several
  consol pts
• Advantage: Allows smaller consol pts
• Disadvantage: Lower “efficiency” in TL
  shipments
  – Do you really want to run trucks half empty
    half way across the country?
  – Stop charges: e.g., $50 per stop

                                             17
                                                  17
Typical Multi-Stop Rt




                  Clustered
                 destinations


                                18
                                     18
     Model: Key Decisions
• ServeDirect: Do we serve customer via direct LTL
  shipments
• Open: Do we open a candidate consol pt.
   – One for each candidate consol pt.
• Assign: Do we assign customer to consol pt.
   – One for each customer and (reasonable) consol pt.
• Trucks: Annual trucks running to consol pt
   – One for each candidate consol pot
• RouteTrucks: Annual trucks running on multi-stop
  route
   – One for each candidate multi-stop route
• RouteVolume: Annual volume at each consol pt that
  is picked up by each multi-stop route
                                                          19
   – One for each candidate route and stop on the route        19
          Assumptions
• Volume to a consol pt can be split among
  direct trucks and (potentially several) multi-
  stop routes
• The operating fixed cost imposed by the
  frequency requirement can be shared
  among these, i.e., there’s a lower bound on
  the number of times we “stop” at the consol
  pt each year.

                                          20
                                               20
            Objective

• Transportation Costs
  – TL to Consol Pts
  – Multi-stop TL to Consol Pts LTL to Consol
    Pts
  – LTL Direct to Customer
• Multi-Stop TL costs include
  – Mileage charge
  – Stop charges

                                           21
                                                21
                   Constraints
•   Every Customer is Served
     – For each customer:
     ServeDirect + Sum over consol pts Assign = 1
•   Trucks required to each consol pt
     – For each consol pt (and type of capacity, e.g., weight, cube, floor space)
     Sum over routes that stop at the consol pt Route Volume + Trucks*Load Factor
      Sum over customers Assign*Requirement/Capacity
•   Service Level Constraint
     – For each consol pt.
     Trucks +
     Sum over routes that stop at the consol pt MultiStopTrucks
      Minimum Service level*Open
•   Logic:
     – For each customer and consol pt (within reason)
  Assign ≤ Open
• Multi-Stop Trucks
     – For each multi-stop route
     MultiStopTrucks*Load Factor  Sum over stops on the route Route Volume

                                                                            22
                                                                                    22
                 Problems
• How do we know all the (interesting) routes?
• How many are there?
• If we have ~ 50 consol pts and limit routes to say
  4 stops, we get 5.5 million potential routes!




                                               23
                                                       23
          Good News!
• We can find good routes as we solve the
  problem
• Use technique called Column Generation
• Big Idea:
  – Use Shadow Price information from current
    solution to identify attractive routes
  – When no new routes are attractive, we’ve found
    all the interesting ones (well sort of)

                                            24
                                                 24
     Column Generation

• Turns out this is a bit more complicated
• Illustrate the basic concept first
• Apply to our Multi-Stop problem




                                        25
                                             25
     Column Generation

• Illustrate with a “pure” Multi-Commodity
  Flows problem
• Multi-Commodity Network Flows
  – Network flows with several products
    (commodities)
  – Joint capacity constraints
     • Total volume of all commodities moving on a link


                                                   26
                                                          26
2 “commodities”
            Example MCNF Problem
                                                                  2 to 4 has
                                                                    lots of
            Costs                                                 capacity
From\To                     1          2        3          4        5

            1               0          9        4          8       60

            2               0          0        9          70       3

            3               0          6        0          4        1

            4               7          7        2          0        7

            5               3          6
                                            Prod 1 from 71 to 5
                                               5                    0

Product 1                  10          0        0          0       -10

Product 2                   0         20        0      -20          0

                          But it is
            Capacities   expensive    Prod 1 from 2 to 4
From\To                     1          2        3          4        5

            1               0          1        2          1       10

            2               1          0        1          20       1

            3               1          1        0          2        1

            4               2          2        1          0        1

            5               1          1        1          2        0
                                                                         27
                                                                               27
    Understand Problem?
• Capacity Constraints:
   – Capacity on 1-3 is 1
   – Either 1 unit of Product 1 or 1 unit of Product 2, not
     both
   – Can send 0.5 units of Product 1 & 0.5 units of Product
     2.


• How to solve this if there are no capacity
  constraints?


                                                     28
                                                              28
A “Flows on Paths” Model
• Variables:
  – For Product 1: Each path from node 1 to node 5
  – For Product 2: Each path from node 2 to node 4
                2
                                 3

    1



                             4
            5
                                                     29
                                                          29
         Constraints

• Product 1 Demand:
  – Total Flow of Product 1 on paths from 1
    to 5 is 10
• Product 2 Demand:
  – Total Flow of Product 2 on paths from 2
    to 4 is 20
• And?


                                              30
                                                   30
   Capacity Constraints

• One for each edge in the network (in
  this case 20)
• Example: Capacity on 2-3 is 1:
Total Flow of Product 1 on paths that use
  edge from 2 to 3 +
Total Flow of Product 2 on paths that use
  edge from 2 to 3 ≤ 1

                                       31
                                            31
Column Generation Approach
                                       The art &
• Start with a small initial set of paths
                                        science
   – E.g., just the single-edge path from 1 to 5 for
     Product 1 and from 2 to 4 for Product 2
• Solve the Flows on Paths Model with these
  paths
• Use the Dual Prices or Shadow Prices from
  this solution to determine if any new paths
  will improve the solution.
• If there are no better paths, you’re done.
  Otherwise add the paths to the formulation
  and repeat.
                                                       32
                                                            32
         The Dual Prices
• One for each constraint
• Tell us the change in the objective per unit
  increase in the right-hand-side of the
  constraint (it’s a rate, i.e., $/unit)
• Examples:
   – Product 1 Demand Constraint: The dual price
     tells us how much more it would cost if we
     insisted on sending 10 +  units of Product 1
     from 1 to 5
   – Capacity Constraint on Edge 2-3: The dual
     prices tells us how much more (less) it would
     cost if we increase the capacity on this edge by
     
   – What does intuition suggest about the signs?
                                                        33
                                                             33
Try It




         34
              34
 Finding Attractive Paths
• Use the Dual Prices from this solution to
  determine if any new paths will improve
  the solution.
• If the Reduced Cost of a path is
  negative, it is attractive, i.e., adding it
  (can) improve the solution.
• Reduced Cost of a Path?


                                          35
                                                35
          Reduced Cost
• Sending flow on a new path has two impacts:
   – We have to pay to send the flow
   – We reduce flows on the current paths
• Computing the cost of sending the flow is
  easy: Cost of the path * Units sent
   – Cost of the path is?
• Computing the cost of the corresponding
  changes in the flows on the current paths
  turns out to be “easy” too.

                                              36
                                                   36
   Use the Shadow Prices
• Sending flow of Product 1 on the path from 1 to 3 and
  then 3 to 5 has 4 effects:
   – It incurs the cost to send flow on this path
   – It reduces the requirements for sending flow of Product 1
     from node 1 to node 5 on the current paths: What’s the value
     of this?
   – It reduces the capacity on the edge 1-3 available to the
     current paths: What’s the value of this?
   – It reduces the capacity on the edge 3-5 available to the
     current paths: What’s the value of this?
• Reduced Cost of Path 1-3-5:
   Cost of using edge 1-3 + Cost of using edge 3-5
   Minus Shadow Price for demand of Product 1
   Minus Shadow Price for capacity on edge 1-3
   Minus Shadow Price for capacity on edge 3-5

                                                             37
                                                                    37
        Is Path 1-3-5 Attractive?
     • Is Reduced Cost of Path 1-3-5 < 0?
                                          The net cost
       Cost of using edge 1-3 + Cost of using edge 3-5
                                    (including 1
       Minus Shadow Price for demand of Product the value
The netMinus Shadow Price for capacity on edge 1-3
                                       of the consumed
 value Minus Shadow Price for capacity on edge 3-5
                                     capacities) to send
       < 0?
     • Reduced Cost of Path:
                                        a unit of flow
        Sum over the edges of
           Cost of edge – Shadow Price for capacity on edge
        < Shadow Price for Demand

                                                         38
                                                              38
 Finding Attractive Paths
• Reduced Cost of Path:
   Sum over the edges of
      Cost of edge – Shadow Price for capacity on edge
   < Shadow Price for Demand
• If we fix the commodity, the right-hand-side is a
  constant
• Find a shortest path for this commodity using the
  modified costs for the edges
• If the length of this path is
   – less than the Shadow Price for Demand, we have a candidate
   – Greater than the Shadow Price for Demand, there is no
     candidate path for this commodity

                                                           39
                                                                  39
              Try It

• Shadow Price for Demand for Product 1
  is 60 (Explain)
• No edge is at capacity so all shadow
  prices for capacities are 0
• Find a shortest path from 1 to 5, if it is
  less than 60, it is better than sending
  flows direct.


                                         40
                                               40
         Shortest Path
• For Product 1
  – 1-3-5 has cost 5 < 60 so it’s reduced cost is
    -55. It is attractive, add it.
• For Product 2
  – 2-1-4 has cost 8 < 70 so it’s reduced cost is
    -62. It is attractive, add it.




                                               41
                                                    41
               Repeat
• The Master Problem now has 4 paths
  – For Product 1:
     • 1-5 with cost 60 and capacity 10   1
     • 1-3-5 with cost 5 and capacity ?
  – For Product 2:
     • 2-4 with cost 70 and capacity 20   1
     • 2-1-4 with cost 8 and capacity ?




                                              42
                                                   42
                      Solve the Master
                  • Uses the new paths to capacity
Since these edges
 are at capacity, • Objective value drops to 1883
 using them in a
 new path would• Edge 3-5 at capacity.
force us to give
up some of the
                   – Shadow Price – 55
     gains         – Modified cost for 3-5 is 1 – (-55) = 56
               • Edge 2-1 at capacity
                   – Shadow Price – 62
                   – Modified cost for 2-1 is 0 – (-62) = 62
                                                               43
                                                                    43
Competing
for capacity
                         Next Iteration
         • A Most attractive path for Product 1
               – 1-2-5 with cost 12
         • A Most attractive path for Product 2
               – 2-5-4 with cost 10
         • Master Problem objective drops to 1823
         • Shadow Price for capacity on 2-5 is -60



                                                  44
                                                       44
                     Etc.
• After 4 iterations, the Objective value in the
  Master Problem has fallen to 1721
• The Shadow Prices for demand are still
   – Product 1: 60
   – Product 2: 70
• The lengths of the Shortest Paths using
  modified costs are
   – Product 1: 60
   – Product 2: 70
• We have an optimal answer.

                                               45
                                                    45
              Questions?
• Everyone understand the basics of
  column generation
• Comment: Computationally this is only
  different from basic LP in so far as we
  used the Shortest Path Problem to find
  an attractive path rather than simply
  work through a list of variables, “pricing
  them out” one by one.

                                         46
                                               46
Back to Multi-Stop Routes
• Let’s apply Column Generation to solve our
  Multi-Stop Consolidation Problem
• Recall
   – Shipping to customers from a single plant
   – Consolidating LTL shipments through
     consolidation points
   – Serving the consolidation points via TL and/or
     Multi-Stop TL
   – Modeled as though we knew all the Multi-Stop
     Routes
• Use Column Generation to produce the
  Routes
                                                      47
                                                           47
            Objective

• Transportation Costs
  – TL to Consol Pts
  – Multi-stop TL to Consol Pts LTL to Consol
    Pts
  – LTL Direct to Customer
• Multi-Stop TL costs include
  – Mileage charge
  – Stop charges

                                           48
                                                48
Two aspects
 of a route:            Constraints
 Trucks & For each customer:
        • Every Customer is Served
           –
  VolumeServeDirect + Sum over consol ptsptAssign = 1
        • Trucks required to each consol
                 – For each consol pt (and type of capacity, e.g., weight, cube, floor space)
                 Sum over routes that stop at the consol pt Route Volume + Trucks*Load Factor
                 - Sum over customers Assign*Requirement/Capacity  0
            •   Service Level Constraint
                 – For each consol pt.
                 Trucks +
                 Sum over routes that stop at the consol pt MultiStopTrucks
                 - Minimum Service level*Open  0
            •   Logic:
                 – For each customer and consol pt (within reason)
              Open - Assign  0
            • Multi-Stop Trucks
                 – For each multi-stop route
                 MultiStopTrucks*Load Factor - Sum over stops on the route Route Volume  0

                                                                                        49
                                                                                                49
          Two Issues
• Issue #1: What columns do we generate?
  – MultiStop Trucks?
  – Route Volume?
  – Both?
• …




                                     50
                                           50
                    Issue #2
                           We pt
• Trucks required to each consolwon’t              write this till
     – For each consol pt (and type of capacity, e.g., weight, cube, floor
        space)                     we have generated the
     Sum over routes that stop at theroute! But won’t+we
                                      consol pt Route Volume
        Trucks*Load Factor
                                   need the Shadow
     - Sum over customers Assign*Requirement/Capacity  0 Price
•   Service Level Constraint on this to generate the
     – For each consol pt.
     Trucks +
                                                route?
     Sum over routes that stop at the consol pt MultiStopTrucks
     - Minimum Service level*Open  0
• Multi-Stop Trucks
     – For each multi-stop route
     MultiStopTrucks*Load Factor - Sum over stops on the route Route
       Volume  0                                             51
                                                                         51
         A Resolution
• Two Cases:
  – Case 1: MultiStopTrucks*Load Factor - Sum
    over stops on the route Route Volume > 0
  – Case 2: MultiStopTrucks*Load Factor - Sum
    over stops on the route Route Volume = 0


  What’s the shadow price for this constraint in
   this case?
                                0!
                                          52
                                                52
         Case 1: Issue #2
• Trucks required to each consol pt
   – For each consol pt (and type of capacity, e.g., weight, cube, floor
      space)
   Sum over routes that stop at the consol pt Route Volume +
      Trucks*Load Factor
   - Sum over customers Assign*Requirement/Capacity  0
• Service Level Constraint                      If it’s not
   – For each consol pt.                          “tight”
   Trucks +                                    dropping it
                                              has no effect.
   Sum over routes that stop at the consol pt MultiStopTrucks
   - Minimum Service level*Open  0
• Multi-Stop Trucks
   – For each multi-stop route
   MultiStopTrucks*Load Factor - Sum over stops on the route Route
     Volume  0                                             53
                                                                       53
We want both the Route Volumes
       Case 1: Relevant
& the MultiStopTrucks to price out     Constraints
          • Trucks required to each consol pt
             – For each consol pt (and type of capacity, e.g., weight,
                cube, floor space)
             Sum over routes that stop at the consol pt Route Volume
                + Trucks*Load Factor
             - Sum over customers Assign*Requirement/Capacity  0
          • Service Level Constraint
             – For each consol pt.
             Trucks +
             Sum over routes that stop at the consol pt
               MultiStopTrucks
             - Minimum Service level*Open  0                 54
                                                                    54
Is a RouteVolume Attractive?

• What are the effects (direct and indirect)
                   No. We pay for trucks
                     and LTL. We variable?
  of increasing a RouteVolumewill
• For clarity we should write that the
                   handle the cost of as
                   multi-stop route when
                   we consol]: the volume
RouteVolume[route, ensure Multi-Stop
  for the consolidation point that is
                     Trucks prices out
  delivered on this route.
• Is there a direct cost for the
  RouteVolume[route, consol] variable?
                                         55
                                               55
       Pricing Out
RouteVolume[route, consol]
• So there is no direct cost
• Just indirect costs, (like consuming
  capacity on an edge or satisfying
  demand in the multi-commodity flow
  problem)
• What Shadow Prices do we need to
  look at?


                                         56
                                              56
               RouteVolume[route, consol]
                 Which Shadow Prices?
          • Trucks required to each consol pt
             – For each consol pt (and type of capacity, e.g., weight,
                cube, floor space)
             Sum over routes that stop at the consol pt Route Volume
                + Trucks*Load Factor
             - Sum over customers Assign*Requirement/Capacity  0
            • Service Level Constraint
Just the one for the trucks required
                 consol point
         at the – For each consol pt.
             Trucks +
             Sum over routes that stop at the consol pt
               MultiStopTrucks
             - Minimum Service level*Open  0                 57
                                                                    57
       The Shadow Price
• Trucks required to each consol pt
   – For each consol pt (and type of capacity,
     e.g., weight, cube, floor space)
   Sum over routes that stop at the consol pt
     Route Volume + Trucks*Load Factor
   - Sum over customers
     Assign*Requirement/Capacity  0

What happens to cost if
  we increase this?                              58
                                                      58
 0 minus the Shadow Price
RouteVolume[route, consol] for
 trucks required at consol point
      Reduced Cost
   As long Price for trucks required
• The Shadowas service isn’t the at
   driver there!
  consol point is the cost of satisfying
  another truck load of demand there
  – 0 if the service constraint is the driver
  – Something positive otherwise
• What’s the reduced cost of
        RouteVolume[route, consol]?
• When is RouteVolume[route, consol]
  attractive?                                   59
                                                     59
Is MultiStop Trucks Attractive?
• What are the effects (direct and indirect)
  of increasing a MultiStop Trucks
  variable?
• For clarity we should write that as
      MultiStop Trucks[route]
• Is there a direct cost for the
  MultiStop Trucks[route] variable?
     Yes. The cost of a
     truck on that route                 60
                                               60
       Pricing Out
  MultiStop Trucks[route]
• So the direct cost is Route Cost
• What indirect costs?
• What Shadow Prices do we need to
  look at?




                                     61
                                          61
                    MultiStop Trucks[route]
                    Which Shadow Prices?
          • Trucks required each
The route provides service to to each consol pt
      consol – For each consol pt (and type of capacity, e.g., weight,
             point it visits!
                  cube, floor space)
               Sum over routes that stop at the consol pt Route Volume
                  + Trucks*Load Factor
               - Sum over customers Assign*Requirement/Capacity  0
           • Service Level Constraint
               – For each consol pt.
               Trucks +
               Sum over routes that stop at the consol pt
                 MultiStopTrucks
               - Minimum Service level*Open  0                 62
                                                                     62
       The Shadow Price
• Service Level Constraint
   – For each consol pt.
   Trucks +
   Sum over routes that stop at the consol pt
     MultiStopTrucks
   - Minimum Service level*Open  0


What happens to cost if
  we increase this?                             63
                                                     63
       Reduced Cost of
    MultiStop Trucks[route]
• Direct Cost – Indirect Costs < 0
• Route Cost – Sum of Shadow Prices for
  Service on the route < 0
• Route Cost < Sum of Shadow Prices for
  Service on the route
• The value of the services exceeds the
  cost of the route!

                                     64
                                          64
 Is the Route Attractive?
• For each consol pt on the route
     RouteVolume[route, consol]
  prices out
• 0 < Shadow Price for trucks at consol pt (i.e.,
  service isn’t the driver, the trucks are full)
• Does
          MultiStop Trucks[route]
   price out?
• Route Cost < Sum over stops on the route of
  Frequency Shadow Prices

                                              65
                                                    65
        A Resolution
• Two Cases:
  – Case 1: MultiStopTrucks*Load Factor - Sum
    over stops on the route Route Volume > 0
  – Case 2: MultiStopTrucks*Load Factor - Sum
    over stops on the route Route Volume = 0




                                         66
                                                66
             Case 2
• MultiStopTrucks = (Sum over stops on
  the route Route Volume)/ Load Factor
• Eliminate MultiStopTrucks
• Insist each Route Volume be attractive
  (price out) – Otherwise, we would short-
  cut the route and not stop at that Consol
  pt.


                                        67
                                              67
                    Case 2
• Trucks required to each consol pt
   – For each consol pt (and type of capacity, e.g., weight, cube, floor
      space)
   Sum over routes that stop at the consol pt Route Volume +
      Trucks*Load Factor
   - Sum over customers Assign*Requirement/Capacity  0
                                 Sum over stops on the route
• Service Level Constraint
   – For each consol pt.         Route Volume /Load Factor
   Trucks +
   Sum over routes that stop at the consol pt MultiStopTrucks
   - Minimum Service level*Open  0
• Multi-Stop Trucks
   – For each multi-stop route
   MultiStopTrucks*Load Factor - Sum over stops on the route Route
     Volume  0                                             68
                                                                       68
Route Volume is specific to the
       Relevant Constraints
  Route AND the Consol Pt
       • Trucks required to each consol pt
          – For each consol pt (and type of capacity, e.g., weight,
But   this is the sum over all the
             cube, floor space)
          Sum over the route
        stops onroutes that stop at the consol pt Route Volume
             + Trucks*Load Factor
          - Sum over customers Assign*Requirement/Capacity  0
       • Service Level Constraint
       – For each consol
  So, to determine if pt.
       Trucks volume
  one Route +
       Sum over routes that stop at the consol pt (Sum over
    is attractive… Route Volume /Load Factor)
         stops on the route
          - Minimum Service level*Open  0                  69
                                                                 69
          Route Volume Attractive
         • We must consider
            – What we pay for the Route Volume (later)
   This is
            – It’s influence on the Trucks required at the
 where we
              Consol Pt (Shadow Price of the Trucks
 replaced
              required to carry the weight at the consol
Multi-Stop
              pt)
Trucks with
  the sum – It’s influence on the Frequency constraint
              for every consol pt on the route (Shadow
              Prices of these constraints/Load Factor)

                                                        70
                                                             70
What we pay for Route Volume
• In the objective, we also replaced
  Cost per Multi-Stop Truck * Multi-Stop
   Trucks
  With
  Cost per Multi-Stop Truck * (Sum over stops
   on the route Route Volume /Load Factor)
• So, each Route Volume bears the full
  cost of the Multi-Stop Route/Load
  Factor

                                          71
                                                71
Route Volume Attractive
Three Factors:
1. What we pay for the Route Volume?
   Cost per Multi-Stop Truck/Load Factor
2. It’s influence on the Trucks required at the
   Consol Pt?
   Shadow Price of the Trucks required to carry
   the weight at the consol pt
3. It’s influence on the Frequency constraint for
   every consol pt on the route
   Sum over all the stops on the route of the
   Shadow Prices of the Frequency
   constraint/Load Factor
                                           72
                                                72
 Route Volume Attractive
Is                            The only thing
  Route Cost/Load Factor
- Weight Price at Consol Pt that changes from
                               consol
- Sum of Frequency Prices/Load Factor pt to
< 0?                             consol pt
Is
  Route Cost
- Load Factor*Weight Price at Consol Pt
- Sum of Frequency Prices
< 0?

                                          73
                                               73
     Is the Route Attractive?
Is
  Route Cost
- Load Factor*Weight Price at Consol Pt
- Sum of Frequency Prices
<0
For every Consol Pt on the route?

                            Get this from
                           Get thesefrom
                           sensitivity info
                                      74
                                           74
  How to generate routes?

• Have to decide which consol pts are on
  the route
• Decision Variables
  – Is Consol pt first on a multi-stop route?
  – Does consol pt A follow consol pt B on a
    multi-stop route?




                                            75
                                                 75
             Constraints
• Limit number of stops (practical)
   – At least 2 (so it’s multi-stop)
   – At most 4 (say)
   Bounds on the total number of legs
• Find 1 Route –
   One leg out of the origin
• Can’t go from consol pt B to consol pt C
  unless some leg takes you to B
   Number of legs out of B ≤ Number of legs into B

                                                     76
                                                          76
       Price Constraints
• For each consol pt on the route
Route Cost < Load Factor * Weight Shadow
  Price for consol pt + Sum of Frequency
  Shadow Prices on route
• But we don’t know what’s on the route!
• Define
OnRoute = sum of legs into consol pt (0 or 1)
• Disjunctive Constraint
                                        77
                                                77
       Price Constraints
• For each consol pt on the route
Route Cost < Load Factor * Weight Shadow
  Price for consol pt + Sum of Frequency
  Shadow Prices on route + M*(1-OnRoute)
• Define
OnRoute = sum of legs into consol pt (0 or 1)



                                        78
                                                78
Try It




         79
              79
          New Problem
• Sub-Tours:
                    1
      6



               5



                        80
                             80
            Resolutions
• Practical:
   – Each subsequent stop must be farther from the
     plant.
• Subtour Elimination (Less Practical)
   – For each three consol pts, we can choose at most
     two legs
   – For each two consol pts, we can choose at most
     one leg
   – Generally, for each N consol pts, we can choose at
     most N-1 legs (but we limited routes to 4 legs)
• Dynamic Programming type algorithm or
  iterative heuristic (software)

                                                     81
                                                          81
Try It




         82
              82
            Summary
• Solve the Master LP (relax integrality)
  without routes
• Get Shadow Prices
• Generate Routes (Case 1 & Case 2)
• If there are attractive routes, add them
  and solve the Master LP again
• If there are no attractive routes, solve to
  an Integer Optimum
                                           83
                                                83
              Issues
• Our procedure for generating multi-stop
  routes does not consider the integer
  decisions about what consol pts to use.
• Heuristic resolution: At the end, repeat
  the column generation procedure with
  the consol pt decisions fixed.



                                        84
                                             84
           Next Time
• Change in Emphasis:
• This time
  – Service level was fixed
  – Reduce transport cost
• Next time
  – Transport cost “fixed” – Load Driven
  – Increase service


                                           85
                                                85

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:7
posted:5/19/2012
language:
pages:85