Consolidation
Download
1 / 85

Consolidation - PowerPoint PPT Presentation


  • 97 Views
  • Uploaded on

Consolidation. John H. Vande Vate Spring, 2007. Combining LTL into TL shipments Motivation Models Issues Multi-Stop TL shipments Column Generation Approach. Agenda. Speed LTL shipments are consolidated, routed to intermediate terminals, sorted, … TL shipments can be faster Cost

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Consolidation' - dyan


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Consolidation

Consolidation

John H. Vande Vate

Spring, 2007

1


Agenda

Combining LTL into TL shipments

Motivation

Models

Issues

Multi-Stop TL shipments

Column Generation Approach

Agenda

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

Motivations

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?

Context

4


Interrelated questions

Where do we consolidate (what terminals)?

Which customers (orders) do we serve through each terminal?

Interrelated Questions

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

Assumptions

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.

A Model

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

Objective: Transportation Cost

8


Elaborations
Elaborations

  • Consider inventory costs

  • Handling charges at consol pts

  • Amortized capital charge or rent for consol pts

  • Time to customer

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)

Transport Requirements

10


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)

Trucks*Load Factor  Sum over customers Assign*Requirement/Capacity

Constraints

e.g.,Weight of customer’s orders

Demand varies. Trucks won’t be full

e.g.,Weight 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.

ServiceLevelConstraint:

For each consol pt

Trucks  Minimum Service level*Open

Frequency

e.g.,156 = 52*3

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

Logic

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

Peculiarities

14


Odd assignments
Odd Assignments

  • Reasonable to use recommended consol pts?

  • Reasonable to use recommended assignments?

Plant in FL!?*

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

Translation to Implementation

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

Next Step: Multi-Stop Routes

17


Typical multi stop rt
Typical Multi-Stop Rt cost across several consol pts

Clustered destinations

18


Model key decisions

ServeDirect cost across several consol pts: 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

One for each candidate route and stop on the route

Model: Key Decisions

19


Assumptions1

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.

Assumptions

20


Objective

Transportation Costs (potentially several) multi-stop routes

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

Objective

21


Constraints1

Every Customer is Served (potentially several) multi-stop routes

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

Constraints

22


Problems

How do we know all the (interesting) routes? (potentially several) multi-stop 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!

Problems

23


Good news

We can find good routes as we solve the problem (potentially several) multi-stop routes

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)

Good News!

24


Column generation

Turns out this is a bit more complicated (potentially several) multi-stop routes

Illustrate the basic concept first

Apply to our Multi-Stop problem

Column Generation

25


Column generation1

Illustrate with a “pure” Multi-Commodity Flows problem (potentially several) multi-stop routes

Multi-Commodity Network Flows

Network flows with several products (commodities)

Joint capacity constraints

Total volume of all commodities moving on a link

Column Generation

26


Example mcnf problem

2 “commodities” (potentially several) multi-stop routes

Example MCNF Problem

2 to 4 has lots of capacity

Prod 1 from 1 to 5

But it is expensive

Prod 1 from 2 to 4

27


Understand problem

Capacity Constraints: (potentially several) multi-stop routes

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?

Understand Problem?

28


A flows on paths model

Variables: (potentially several) multi-stop routes

For Product 1: Each path from node 1 to node 5

For Product 2: Each path from node 2 to node 4

A “Flows on Paths” Model

2

3

1

4

5

29


Constraints2

Product 1 Demand: (potentially several) multi-stop routes

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?

Constraints

30


Capacity constraints

One for each edge in the network (in this case 20) (potentially several) multi-stop routes

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

Capacity Constraints

31


Column generation approach

Start with a small initial set of paths (potentially several) multi-stop routes

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.

The art & science

Column Generation Approach

32


The dual prices

One for each constraint (potentially several) multi-stop routes

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?

The Dual Prices

33


Try it
Try It (potentially several) multi-stop routes

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?

Finding Attractive Paths

35


Reduced cost

Sending flow on a new path has two impacts: new paths will improve the solution.

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.

Reduced Cost

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

Use the Shadow Prices

37


Is path 1 3 5 attractive

Is Reduced Cost of Path 1-3-5 < 0? to 5 has 4 effects:

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

< 0?

Reduced Cost of Path:

Sum over the edges of

Cost of edge – Shadow Price for capacity on edge

< Shadow Price for Demand

Is Path 1-3-5 Attractive?

The net cost (including the value of the consumed capacities) to send a unit of flow

The net value

38


Finding attractive paths1

Reduced Cost of Path: to 5 has 4 effects:

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

Finding Attractive Paths

39


Try it1

Shadow Price for Demand for Product 1 is 60 (Explain) to 5 has 4 effects:

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.

Try It

40


Shortest path

For Product 1 to 5 has 4 effects:

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.

Shortest Path

41


Repeat

The Master Problem now has 4 paths to 5 has 4 effects:

For Product 1:

1-5 with cost 60 and capacity 10

1-3-5 with cost 5 and capacity ?

Repeat

1

  • For Product 2:

    • 2-4 with cost 70 and capacity 20

    • 2-1-4 with cost 8 and capacity ?

1

42


Solve the master

Uses the new paths to capacity to 5 has 4 effects:

Objective value drops to 1883

Edge 3-5 at capacity.

Shadow Price – 55

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

Solve the Master

Since these edges are at capacity, using them in a new path would force us to give up some of the gains

43


Next iteration

A Most attractive path for Product 1 to 5 has 4 effects:

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

Next Iteration

Competing for capacity

44


Consolidation

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.

Etc.

45


Questions

Everyone understand the basics of column generation Problem has fallen to 1721

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.

Questions?

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

Back to Multi-Stop Routes

47


Objective1

Transportation Costs Consolidation Problem

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

Objective

48


Constraints3

Every Customer is Served Consolidation Problem

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  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

Two aspects of a route: Trucks & Volume

Constraints

49


Two issues

Issue #1: What columns do we generate? Consolidation Problem

MultiStop Trucks?

Route Volume?

Both?

Two Issues

50


Issue 2

Trucks required to each consol pt Consolidation Problem

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

Multi-Stop Trucks

For each multi-stop route

MultiStopTrucks*Load Factor - Sum over stops on the route Route Volume 0

We won’t write this till we have generated the route! But won’t we need the Shadow Price on this to generate the route?

Issue #2

51


A resolution

Two Cases: Consolidation Problem

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?

A Resolution

0!

52


Case 1 issue 2

Trucks required to each consol pt Consolidation Problem

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

Multi-Stop Trucks

For each multi-stop route

MultiStopTrucks*Load Factor - Sum over stops on the route Route Volume 0

Case 1: Issue #2

If it’s not “tight” dropping it has no effect.

53


Case 1 relevant constraints

Trucks required to each consol pt Consolidation Problem

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

We want both the Route Volumes

& the MultiStopTrucks to price out

Case 1: Relevant Constraints

54


Is a routevolume attractive

What are the effects (direct and indirect) of increasing a Consolidation ProblemRouteVolume variable?

For clarity we should write that as

RouteVolume[route, consol]: the volume for the consolidation point that is delivered on this route.

Is there a direct cost for the RouteVolume[route, consol] variable?

Is a RouteVolume Attractive?

No. We pay for trucks and LTL. We will handle the cost of the multi-stop route when we ensure Multi-Stop Trucks prices out

55


Pricing out routevolume route consol

So there is no direct cost Consolidation Problem

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?

Pricing Out RouteVolume[route, consol]

56


Routevolume route consol which shadow prices

Trucks required to each consol pt Consolidation Problem

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

RouteVolume[route, consol] Which Shadow Prices?

Just the one for the trucks required at the consol point

57


The shadow price

Trucks required to each consol pt Consolidation Problem

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

The Shadow Price

What happens to cost if we increase this?

58


Routevolume route consol reduced cost

The Shadow Price for trucks required at Consolidation Problemconsol 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?

RouteVolume[route, consol]Reduced Cost

0 minus the Shadow Price for trucks required at consol point

As long as service isn’t the driver there!

59


Is multistop trucks attractive

What are the effects (direct and indirect) of increasing a Consolidation ProblemMultiStop Trucks variable?

For clarity we should write that as

MultiStop Trucks[route]

Is there a direct cost for the

MultiStop Trucks[route] variable?

Is MultiStop Trucks Attractive?

Yes. The cost of a truck on that route

60


Pricing out multistop trucks route

So the direct cost is Route Cost Consolidation Problem

What indirect costs?

What Shadow Prices do we need to look at?

Pricing Out MultiStop Trucks[route]

61


Multistop trucks route which shadow prices

Trucks required to each consol pt Consolidation Problem

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 ptMultiStopTrucks

- Minimum Service level*Open  0

MultiStop Trucks[route] Which Shadow Prices?

The route provides service to each consol point it visits!

62


The shadow price1

Service Level Constraint Consolidation Problem

For each consol pt.

Trucks +

Sum over routes that stop at the consol ptMultiStopTrucks

- Minimum Service level*Open  0

The Shadow Price

What happens to cost if we increase this?

63


Reduced cost of multistop trucks route

Direct Cost – Indirect Costs < 0 Consolidation Problem

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!

Reduced Cost of MultiStop Trucks[route]

64


Is the route attractive

For each Consolidation Problemconsol 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

Is the Route Attractive?

65


A resolution1

Two Cases: Consolidation Problem

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

A Resolution

66


Case 2

MultiStopTrucks Consolidation Problem = (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.

Case 2

67


Case 21

Trucks required to each consol pt Consolidation Problem

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

Multi-Stop Trucks

For each multi-stop route

MultiStopTrucks*Load Factor - Sum over stops on the route Route Volume 0

Case 2

Sum over stops on the route Route Volume /Load Factor

68


Relevant constraints

Trucks required to each consol pt Consolidation Problem

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 (Sum over stops on the route Route Volume /Load Factor)

- Minimum Service level*Open  0

Route Volume is specific to the Route AND the Consol Pt

Relevant Constraints

But this is the sum over all the stops on the route

So, to determine if one Route volume is attractive…

69


Route volume attractive

We must consider Consolidation Problem

What we pay for the Route Volume (later)

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)

It’s influence on the Frequency constraint for every consol pt on the route (Shadow Prices of these constraints/Load Factor)

Route Volume Attractive

This is where we replaced

Multi-Stop Trucks with the sum

70


What we pay for route volume

In the objective, we also replaced Consolidation Problem

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

What we pay for Route Volume

71


Route volume attractive1

Three Factors: Consolidation Problem

What we pay for the Route Volume?

Cost per Multi-Stop Truck/Load Factor

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

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

Route Volume Attractive

72


Route volume attractive2

Is Consolidation Problem

Route Cost/Load Factor

Weight Price at Consol Pt

Sum of Frequency Prices/Load Factor

< 0?

Is

Route Cost

Load Factor*Weight Price at Consol Pt

Sum of Frequency Prices

< 0?

Route Volume Attractive

The only thing that changes from consol pt to consol pt

73


Is the route attractive1

Is Consolidation Problem

Route Cost

Load Factor*Weight Price at Consol Pt

Sum of Frequency Prices

< 0

For every Consol Pt on the route?

Get this from sensitivity info

Get these from sensitivity info

Is the Route Attractive?

74


How to generate routes

Have to decide which consol pts are on the route Consolidation Problem

Decision Variables

Is Consol pt first on a multi-stop route?

Does consol pt A follow consol pt B on a multi-stop route?

How to generate routes?

75


Constraints4

Limit number of stops (practical) Consolidation Problem

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

Constraints

76


Price constraints

For each consol pt on the route Consolidation Problem

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

Price Constraints

77


Price constraints1

For each consol pt on the route Consolidation Problem

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)

Price Constraints

78


Try it2
Try It Consolidation Problem

79


New problem

Sub-Tours: Consolidation Problem

New Problem

1

6

5

80


Resolutions

Practical: Consolidation Problem

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)

Resolutions

81


Try it3
Try It Consolidation Problem

82


Summary

Solve the Master LP (relax integrality) without routes Consolidation Problem

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

Summary

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.

Issues

84


Next time

Change in Emphasis: consider the integer decisions about what consol pts to use.

This time

Service level was fixed

Reduce transport cost

Next time

Transport cost “fixed” – Load Driven

Increase service

Next Time

85