1 / 38

1-to-Many Distribution with Transshipments

This paper discusses the reasons for transshipping in the distribution of Ford and WebVan vehicles, as well as the cost considerations and economic models involved. The analytical approach for determining the number and locations of terminals is explored, along with location-allocation and routing procedures.

mlemley
Download Presentation

1-to-Many Distribution with Transshipments

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 1-to-Many Distribution with Transshipments John H. Vande Vate Spring, 2001 1

  2. Why Does Ford Transship? 2

  3. WebVan 9 stations serving Metro Atlanta • Alpharetta • Atlanta (Airport) • Atlanta (Downtown) • Marietta • Norcross • Roswell • Suwanee (also DC) • Tucker • Woodstock 3

  4. Why Does WebVan Transship? 4

  5. Consolidation of shipments Reduces staging area at plants Speeds delivery Cuts pipeline inventory Ford New Vehicle Distribution 5

  6. Intel Into Europe 6

  7. Transship for Taxes 7

  8. Freight Consolidation Vehicle Capabilities Transshipment for 8

  9. Ford & WebVan Customers Single sourcing at Customers Terminals Single Route to Terminals The Depot 9

  10. Transportation Costs Total = fixed + variable*volume Variable Total Cost Concave! 10 Volume Shipped

  11. Areas of Influence 11

  12. Non-overlapping 12

  13. How Many Terminals? Where? Whom to serve? Minimize Inventory and Transportation Costs Questions 13

  14. How large should influence areas be? “Analytic Approach” “Distant” Terminal 14

  15. Where Should Terminals Go? • In the Center? Influence Area Why “Distant”? “Distant” Terminal 15

  16. Distribution Cost/Item at a terminal location as a function of the size of the influence area The Economics I 16

  17. Inbound Transportation Costs 17

  18. Load Driven: Depart when vehicle is full Ford’s new vehicle distribution Schedule Driven: Depart to meet service reqs. WebVan Two Cases 18

  19. Capacity of vehicle: Cap Somewhat different for Schedule-Driven Loads depend on frequency of schedule Customers per route depends on time Load-Driven 19

  20. Customers = Terminals Density  = 1/I Total transport cost/headway 2E(r)N/C + NkE(1/) Number N  R/I R is the total area we serve Route headway t Volume to each customer  ltI Customers per route C  Cap/(ltI) 2E(r)Rlt/Cap + Rk/I Estimating The Cost 20

  21. Total Transport Cost 2E(r)Rlt/Cap+ Rk/I Total Items Rlt Cost Per Item  2E(r)/Cap+ k/(ltI) Cost Per Item economies from less peddling 21

  22. Inbound Cost/Item 22

  23. Customers are original customers in an Influence area I. Customer density: d Number of customers:Id Shipment size: v Vehicle capacity: cap Customers per route C = cap/v 2E(r)N/C + Nk1/d 2E(r’)Idv/cap + Ikd per terminal Outbound Transportation 23

  24. 2E(r’)Idv/cap + Ikd per terminal E(r’) depends on I probably proportional to I  k’I 2k’I3/2dv/cap + Ikd R/I terminals 2k’RIdv/cap + Rkd over all routes 2k’Idv/(ltcap) + kd/(lt) per item Outbound Transportation Increasing outbound linehaul 24

  25. Outbound Cost per Item 25

  26. “Fixed” Cost per terminal: f (per headway t) Independent of volume, e.g. “rent” Unit costs per terminal: u Depend on volume, e.g., unit handling cost Total Cost across all terminals fR/I + ultR Terminal Costs per item f/(ltI) + u Terminal Cost 26 Economies of scale for fixed investment

  27. Terminal Cost/Item 27

  28. Total Avg. $/item Inbound 2E(r)/Cap+ k/(ltI) Outbound 2k’Idv/(ltcap) + kd/(lt) Terminal f/(ltI) + u Total Cost 28

  29. Total Cost per Item I* 29

  30. Replace E(r) with r How large should influence areas be by location Different customer densities, etc. Find I(r) or I(x,y) at several points Partition region into Influence areas with these properties Dependence on Location 30

  31. Analytical Model suggests number of terminals and initial locations Location-Allocation model positions terminals assigns customers Routing Procedures Evaluate Results Crude Sensitivity Analysis Detailed Models 31

  32. Project consists of Model and parameter declarations in .mod file Commands in .run file Location Allocation in AMPL 32

  33. set Customers; param X{Customers}; param Y{Customers}; param NFacs; set Facs := 1..NFacs; param FacX{Facs}; param FacY{Facs}; param Distance{Customers, Facs}; param sqrtN; param MaxOuterIters; param MaxInnerIters; param MinX default 1e6; param MaxX default -1e6; param MinY default 1e6; param MaxY default -1e6; Parameters 33

  34. var Assign{Customers, Facs} binary; minimize TotalDistance: sum{cust in Customers, fac in Facs} Distance[cust, fac]*Assign[cust,fac]; s.t. OneFacPerCustomer{cust in Customers}: sum{fac in Facs} Assign[cust, fac] = 1; Model 34

  35. /* -------------------------------------- Intial Locations --------------------------------------*/ for {cust in Customers} {let MinX := min(MinX, X[cust]); let MaxX := max(MaxX, X[cust]); let MinY := min(MinY, Y[cust]); let MaxY := max(MaxY, Y[cust]); }; let sqrtN := max(1, round(sqrt(NFacs),0)); let {fac in Facs} FacX[fac] := MinX + ((fac mod sqrtN)+1)*(MaxX-MinX)/(sqrtN+1); let {fac in Facs} FacY[fac] := MinY + ((fac mod sqrtN)+1)*(MaxY-MinY)/(sqrtN+1); Commands 35

  36. let {cust in Customers, fac in Facs} Distance[cust, fac] := sqrt((X[cust] - FacX[fac])*(X[cust] - FacX[fac]) + (Y[cust] - FacY[fac])*(Y[cust] - FacY[fac])); for {outeriter in 1..MaxOuterIters} { solve; /* Assign Customers */ for {inneriter in 1..MaxInnerIters} /* Locate Facilities */ {for {fac in Facs: sum{cust in Customers} Assign[cust,fac] > 0} {let FacX[fac] := (sum{cust in Customers: Assign[cust, fac] > .5} X[cust]/Distance[cust, fac] )/ (sum{cust in Customers: Assign[cust, fac] > .5} 1/Distance[cust, fac]); let FacY[fac] := (sum{cust in Customers: Assign[cust, fac] > .5} Y[cust]/Distance[cust, fac])/ (sum{cust in Customers: Assign[cust, fac] > .5} 1/Distance[cust, fac]); }; /* end for fac in Facs loop */ 36

  37. /* --------------------------------------- Re-Calculate distances ---------------------------------------*/ let {cust in Customers, fac in Facs} Distance[cust, fac] := sqrt((X[cust] - FacX[fac])*(X[cust] - FacX[fac]) + (Y[cust] - FacY[fac])*(Y[cust] - FacY[fac])); /* --------------------------------------- Check stopping criteria for location loop: ---------------------------------------*/ }; /* end of the for inneriter loop */ /* --------------------------------------- Check stopping criteria for outer loop: ---------------------------------------*/ }; /* end of the for outeriter loop */ 37

  38. 38

More Related