# Transportation Problems

## Presentation on theme: "Transportation Problems"— Presentation transcript:

Transportation Problems
Chapter 3 Transportation Problems

Design of Transport Networks
Transportation Problem: Model & LP Situation: Location of warehouses and customers are given Supply and demand given Example: 3 warehouses and 4 customers Transportation cost per unit from i to j Total demand must be = total supply Factory or customer warehouse V1 V2 V3 V4 Production F1 10 5 6 11 25 F2 2 7 4 F3 9 1 8 50 Demand 15 20 30 35 100 (c) Prof. Richard F. Hartl QEM - Chapter 3

Solution in the Uncapacitated case
No capacity constraint  solution using column minimum procedure customer Factory V1 V2 V3 V4 Capacity used F1 10 5 6 11 F2 1 2 7 4 F3 9 8 Demand 15 20 30 35 15 35 = 50 20 30 = 50 Total cost = 15 * * * * 4 = 295 (c) Prof. Richard F. Hartl QEM - Chapter 3

(c) Prof. Richard F. Hartl
Capacity constraints Not all customers will be delivered from their closest factory! Solution as a special LP problem - starting (basic feasible) solution - iteration (modi, stepping stone) (c) Prof. Richard F. Hartl QEM - Chapter 3

(c) Prof. Richard F. Hartl
Capacity constraints Total capacity = total demand Customer Factory V1 V2 V3 V4 capacity F1 10 5 6 11 25 F2 1 2 7 4 F3 9 8 50 Demand 15 20 30 35 100 100 100 (c) Prof. Richard F. Hartl QEM - Chapter 3

Constructive Heuristics (Basic Feasible Solution)
Simple to apply, Simple to understand „Reasonably“ good solutions Optimality not guaranteed Examples: Column minimum („Greedy“) Vogel approximation („Regret“) (c) Prof. Richard F. Hartl QEM - Chapter 3

Column Minimum Algorithm
0. Initialization: empty transport tableau. No rows or columns are deleted 1. Proceed with the first (not yet deleted) column (from left to right) 2. In choose the cell with the smallest unit cost cij and choose transportation quantity xij maximal. 3. If column resource depleted  delete column j, OR if row resource depleted  delete row i. Just one row or columd not deleted  all cells in this row or colum get maximal transportation quantity Otherwise continue with 1. EXAMPLE (c) Prof. Richard F. Hartl QEM - Chapter 3

Column Minimum Algorithm
i / j 1 2 3 4 Capacity 10 5 6 11 25 7 9 8 50 Demand 15 20 30 35 100 Just one colums not deleted 25 10 15 10 30 20 30 Total cost = = 470 15 * * * * * * 8 ALGORITHM (c) Prof. Richard F. Hartl QEM - Chapter 3

Vogel Approximation 0. Initialization: empty transport tableau. No rows or columns are deleted In each row and column (not yet deleted) compute opportunity cost = difference between the smallest and the second smallest cij (not yet deleted). Where this opportunity cost is largest choose smallest cij and make xij maximal. If column resource depleted  delete column j, OR if row resource depleted  delete row i. Just one row or columd not deleted  all cells in this row or colum get maximal transportation quantity Otherwise continue with 1. SS 2011 EK Produktion & Logistik

EK Produktion & Logistik
Vogel Approximation i / j 1 2 3 4 capacity 10 5 6 11 25 7 9 8 50 Nachfrage 15 20 30 35 100 Column deleted  recompute row differences 25 1 5 15 10 10 1 2 20 5 25 30 3 4 5 25 8 1 4 2 4 3 Row deleted  recompute column differences Jut one row not deleted Total cost = 15 * * * * * * 8 = 445 (besser als 470 zuvor) SS 2011 EK Produktion & Logistik

General formulation: LP-Formulation:
m supplyers with supply si, i = 1, …, m n customers with demand dj, j = 1, …, n Transportation cost cij per unit from i to j, i = 1, …, m; j = 1, …, n LP-Formulation: variable: Transportation quantity xij from i to j Transportation cost i = 1, …, m Supply j = 1, …, n Demand Non negativity i = 1, …, m; j = 1, …, n Data must satisfy Total demand = Total supply (c) Prof. Richard F. Hartl QEM - Chapter 3

In example: K = (10x11+5x12+6x13+11x14) + (x21+2x22+7x23+4x24) + (9x31+x32+4x33+8x34)  min Supply: x11 + x12 + x13 + x = 25 (i=1) x21 + x22 + x23 + x24 = 25 (i=2) x31 + x3 2+ x33 + x34 = 50 (i=3) : Damand: x x x = 15 (j=1) x x x = 20 (j=2) x x x = 30 (j=3) x x x34 = 35 (j=4) Non negativity: xij  0 für i = 1, … , 3; j = 1, … , 4 (c) Prof. Richard F. Hartl QEM - Chapter 3

Solution: As LP (o.k. but less efficient) 1 . . . 1 . . .
Make use of special structure: . . . 1 . In each column exactly 2 of the m + n elements are ≠ 0 Transportation simplex or network simplex Starting solution Iteration (stepping stone) (c) Prof. Richard F. Hartl QEM - Chapter 3

Exakt Algorithm: MODI, Stepping Stone
Equivalent to simplex method Start with basic feasible solution (m+n-1 basic variables) Iteration step: Initalize the tableau i\j 1 2 n si ui c11 c12 c1n s1 u1 c21 c22 c2n s2 u2 m cm1 cm2 cmn sm um dj d1 d2 dn vj v1 v2 vn (c) Prof. Richard F. Hartl QEM - Chapter 3

cij = ui + vj if xij is basic variable
Compute dual varables ui und vj [MODI] cij = ui + vj if xij is basic variable Since ui and vj are not unique, normalize one of these dual varables = 0. (Choose row or colums with most basic varaibles  easier computation of ui and vj) For all non basic variables compute cij – ui – vj (reduced cost coefficient in objective function). New (entering) BV where this coefficient is most negative. If all coefficients non-negative  optimal solution. Increase new BV and perform chain reaction (donor cell, recipient cell). Transportation quantities in each row and column must remain same. The BV, which first becomes zero, leaves the basis. [stepping stone] Compute new basic solution (perform chain reaction). (c) Prof. Richard F. Hartl QEM - Chapter 3

Example For didactical raesons we choose poor starting solution, because after Vogel only few steps (if any) can be demonstrated i\j 1 2 3 4 si ui 10 5 6 11 25 7 9 8 50 dj 15 20 30 35 vj -3 -4 15 10 35 -7 -6 -3 2 5 -6 10 5 10 14 (c) Prof. Richard F. Hartl QEM - Chapter 3

Total cost = 10*15 + 5*10 + 2*10 + 7*15 + 4*15 + 8*35 = 665.
Check equality of primal and dual objective (optional): K = 25*0 + 25*(-3) + 50*(-6) + 15* *5 + 30* *14 = 665 The most negative cost ceofficient cij – ui – vj of a NBV is -7 for x24  new basic variable x24. Chain rection: increase new BV (starting from 0) by  investigate consequences for other BV (in some row and some column  must be subtracted) The BV, that constrains  most is the leaving BV. (c) Prof. Richard F. Hartl QEM - Chapter 3

New BV x24 increases from 0 to . Add +  odor -  for some other BV.
Chain reaction: New BV x24 increases from 0 to . Add +  odor -  for some other BV. If x24 increases by , x23 and x34 will decrease by , and x33 increases by . For  = 15 BV x23 becomes 0 → BV x23 leaves. i\j 1 2 3 4 si ui 10 5 6 11 25 7 9 8 50 dj 15 20 30 35 vj K = 665 – 7 *  = 665 – 7*15 = 560 -3 -4 -7 -6 2 5 10 14 15 10 15- +  15+  35-  (c) Prof. Richard F. Hartl QEM - Chapter 3

-3  1 New BV x24 gets value  = 15 → chain reaction x34 = 35-15 = 20
x23 is no BV anymore, all other BV remain same Next iteration: i\j 1 2 3 4 si ui 10 5 6 11 25 7 9 8 50 dj 15 20 30 35 vj K = 560 – 6 *  = 560 – 6*10 = 500 4 3 7 -6 -5 -2 15-  10-  10+  -3 30 20 15 1 10 5 3 7 (c) Prof. Richard F. Hartl QEM - Chapter 3

Next iteration: 5-   -9 10+  -5 i\j 1 2 3 4 si ui 10 5 6 11 25 7 9
8 50 dj 15 20 30 35 vj K = 500 – 3 *  = 500 – 3*5 = 485 -2 -3 7 6 1 4 5-  30-  20 -9 20+  10+  15-  -5 10 5 9 13 (c) Prof. Richard F. Hartl QEM - Chapter 3

Next iteration: -6 15 -2  i\j 1 2 3 4 si ui 10 5 6 11 25 7 9 8 50 dj
20 30 35 vj K = 485 – 2 *  = 485 – 2*20 = 445 -2 1 3 7 4 20- 5+  -6 15 10 -2 25-  25 7 5 6 10 (c) Prof. Richard F. Hartl QEM - Chapter 3

All coefficients non-negative → optimal solution found.
Next iteration: i\j 1 2 3 4 si ui 10 5 6 11 25 7 9 8 50 dj 15 20 30 35 vj All coefficients non-negative → optimal solution found. 2 1 3 7 5 4 2 25 Basic variables: x13 = 25 x21 = 15 x24 = 10 x32 = 20 x33 = 5 x34 = 25 -4 15 10 20 5 25 5 1 4 8 Total cost: K = 445 (c) Prof. Richard F. Hartl QEM - Chapter 3

si  si +  for some i and dj  dj +  for some j
Sensitivity analysis TP is a LP-Problem with equality constraints  dual variables ui azw. vj can also be negative (free variables). From duality theory follows si  si +  for some i and dj  dj +  for some j If  small enough, then the dual variables ui and vj do not change  cost change by (ui + vj): K  K + (ui + vj) Clearly some si AND soem dj must change at the same time; Otherwise total demand ≠ total capacity (c) Prof. Richard F. Hartl QEM - Chapter 3

Example: Change of data? s1  s1 +  and d2  d2 + 
i\j 1 2 3 4 si ui 5 22 6 24 7 16 dj 10 13 17 vj 22 +  13 +  Change of data? s1  s1 +  and d2  d2 +  10 12 2 13 11 1 10 6 1 -1 2 4 Optimal cost change to K = (u1 + v2) = ; i.e. cost decrease! (this paradoxon can occur if some ui and/or vj are negative. In most cases cost will increase.) (c) Prof. Richard F. Hartl QEM - Chapter 3

How large can  be before basis changes: similar to stepping stone
i\j 1 2 3 4 si ui 5 22 +  6 24 7 16 dj 10 13 +  17 vj K =  Check: K = 1*10+2*(12+ ) + 1*(13+ ) +6*(11- ) +3*(10- ) +5*(6 + ) =  10 12+ 13+ 2 10- 11- 1 6+ 1 -1 2 4 Clearly x33 first becomes 0, if  increases. Hence upper bound  10. Similar for negative . Here x34 first becomes 0, if  decreases. Hence lower bound  -6. (c) Prof. Richard F. Hartl QEM - Chapter 3

Similar presentations