420 likes | 450 Views
Location Problems. John H. Vande Vate Spring, 2001. Review the Terminal Problem discussed in Daganzo (page 68-71) An MIP approach Rectilinear Location Problems Euclidean Location Problems Location - Allocation Problems. Outline. Locating Freight Terminals. Examples:
E N D
Location Problems John H. Vande Vate Spring, 2001 1
Review the Terminal Problem discussed in Daganzo (page 68-71) An MIP approach Rectilinear Location Problems Euclidean Location Problems Location - Allocation Problems Outline 2
Locating Freight Terminals • Examples: • LTL freight terminals • Public transportation • Local transport to consolidation points • Local collection to freight terminals • Walk to bus stop • Trade-off cost of local transport vs impact on “line haul” • More stops = less local transport • More stops = slower line haul 3
Don’t forget service segmentation! Express Bus vs Local Aside 4
LTL depot shipments consolidated for cross-country transport Freight terminals Local shipments are consolidated for delivery to depot Daily delivery Single line-haul vehicle Two-Tier System 5
Along a major highway Along a bus route ... On a Line 6
How many freight terminals should we have and where should we put them? Costs? Capital and operating costs of terminals Local transport cost Stop Cost ... Question: Freight Terminals? 7
Terminals The System Cumulative demand The depot 8 location
Local Travel Cumulative demand The depot 9 location
Local Transport Item-miles of local transport Item-miles of local transport 10
Walking to the bus stop Local delivery to freight terminal? Other suggestions? Weighted distance Total distance Maximum Distance …. When is this appropriate? 11
Another Paradigm local demand d(i) The depot 12 location
1 if we collect demand at i at a freight terminal at t 0 otherwise 1 if we open a freight terminal at t 0 otherwise Basic constraints: ServeEachArea{i in Areas}: Sum{t in Areas}Send[i,t] = 1; IsTerminalOpen{i in Areas, t in Areas}: Send[i,t] <= Open[t]; Optimization Models ={ Send[i,t] ={ Open[t] 13
Item-miles + Stops sum{a in Areas, t in Areas} d[a]*abs(t-a)*Send[a,t] + sum{t in Areas} stopcost*Open[t]; Total Distance + Stops sum{a in Areas, t in Areas} abs(t-a)*Send[a,t] + sum{t in Areas} stopcost*Open[t]; Objectives 14
New Variable: MaxTravel{t in Areas} >= 0 New Constraints: SetMaxTravel{a in Areas, t in Areas}: abs(t-a)*Send[a,t] <= MaxTravel[t]; Objective: sum{t in Areas}(MaxTravel[t]+stopcost*Open[t]) Maximum Distance 15
var MaxTravelL{Areas} >= 0; var MaxTravelR{Areas} >= 0; s.t. SetMaxTravelL{a in Areas, t in Areas: a < t}: (t-a)*Send[a,t] <= MaxTravelL[t]; s.t. SetMaxTravelR{a in Areas, t in Areas: a > t}: (a-t)*Send[a,t] <= MaxTravelR[t]; Really Travel Left and Right 16
What role does considering the problem on the line play? E.g., Along a major highway Along a bus route Can we extend model to 2-dimensions? Role of the Line? 17
Review the Terminal Problem discussed in Daganzo (page 68-71) An MIP approach Rectilinear Location Problems Euclidean Location Problems Location - Allocation Problems Outline 18
On the line, if the objective is to min … The maximum distance traveled The maximum distance left + right The distance traveled there and back to each customer The item-miles traveled Before Moving On... 1 4 0 19
Travel on the streets and avenues Distance = number of blocks East-West + number of blocks North-South Manhattan Metric Rectilinear Distance 20
Rectilinear Distance 9 5 4 21
To minimize the sum of rectilinear distances Intuition Where? Why? Locate a facility... 22
Locate a facility... • To minimize the max of rectilinear distances • Intuition • Where? • Why? 23
Set Customers; Param X{Customer}; Param Y{Customer}; var Xloc >= 0; var Yloc >= 0; var Xdist{Customer}; var Ydist{Customer}; Models 24
DefineXdist1{c in Customer}: Xdist[c] >= X[c]-Xloc; DefineXdist2{c in Customer}: Xdist[c] >= Xloc-X[c]; DefineYdist1{c in Customer}: Ydist[c] >= Y[c]-Yloc; DefineYdist2{c in Customer}: Ydist[c] >= Yloc-Y[c]; Constraints 25
Total Distance: sum{c in Customer}(Xdist[c]+Ydist[c]); Maximum Distance? Objective 26
Var Xloc; Var Yloc; Var Xmax >= 0; var Ymax >= 0; min objective: Xmax + Ymax; s.t. DefineXdist1{c in Customer}: Xmax >= X[c]-Xloc; DefineXdist2{c in Customer}: Xmax >= Xloc-X[c]; DefineYdist1{c in Customer}: Ymax >= Y[c]-Yloc; DefineYdist2{c in Customer}: Ymax >= Yloc-Y[c]; Minimize The Max? 27
Var Xloc; var Yloc; var Xdist{Customer}>= 0; var Ydist{Customer}>= 0; var dmax; min objective: dmax; s.t. DefineMaxDist{c in Custs}: dmax >= Xdist[c] + Ydist[c]; Min the Max! 28
Min the Max Cont’d • DefineXdist1{c in Customer}: Xdist[c] >= X[c]-Xloc; • DefineXdist2{c in Customer}: Xdist[c] >= Xloc-X[c]; • DefineYdist1{c in Customer}: Ydist[c] >= Y[c]-Yloc; • DefineYdist2{c in Customer}: Ydist[c] >= Yloc-Y[c]; 29
Locate a facility... • To minimize the max of rectilinear distances • Intuition • Where? • Why? 30
NIMBY…. Maximize the Minimum Distance Can’t say Xdist[c] <= X[c] - Xloc; Come up with a good formulation FOR DISCUSSION IN CLASS NEXT TIME Assignment #1 32
Review the Terminal Problem discussed in Daganzo (page 68-71) An MIP approach Rectilinear Location Problems Euclidean Location Problems Location - Allocation Problems Outline 33
Distance is not linear Distance is a convex function Local Minimum is a global Minimum Locating a single facility 34
Total Cost = S ckdk(x,y) = S ck(xk- x)2 + (yk- y)2 Total Cost/x = S ck (xk - x)/dk(x,y) Total Cost/x = 0 when x = [Sckxk/dk(x,y)]/[Sck/dk(x,y)] y = [Sckyk/dk(x,y)]/[Sck/dk(x,y)] But dk(x,y) changes with location... Where to Put the Facility 35
Start somewhere, e.g., x = [Sckxk]/[Sck] y = [Sckyk]/[Sck] as though dk= 1. Step 1: Calculate values of dk Step 2: Refine values of x and y x = [Sckxk/dk]/[Sck/dk] y = [Sckyk/dk]/[Sck/dk] Repeat Steps 1 and 2. ... Iterative Strategy 36
Call on Convex Minimization Tool Minos, Interior Point Methods, … Typically don’t support discrete variables too… Convex Minimization 37
Fixed Number of Facilities to Consider Single Sourcing Two Questions: Location: Where Allocation: Whom to serve Each is simple Together they are “harder” Locating Several Facilities 38
Put the facilities somewhere Step 1: Assign the Customers to the Facilities Step 2: Find the best location for each facility given the assignments (see previous method) Repeat Step 1 and Step 2 …. Iterative Approach 39
Uncapacitated (facilities can be any size) “Greedy”: Assign each customer to closest facility Capacitated Use Optimization Assign Customers to Facilities 40
Var x{Custs, Facs} binary; minimize AllocationCost: sum{c in Custs, f in Facs} C[c,f]*x[c,f]; s.t. AssignEachCust{c in Custs}: sum{f in Facs} x[c,f] = 1; s.t. FacilityCapacity{f in Facs}:sum{c in Custs}D[c]*c[c,f] <= Cap[f]; Allocation Model 41
If there is Value Added: E.g., BMW Assembly Plant High Value items: E.g., Intel EU distribution center If there is labor content… Competition… Service vs Cost... The Rest of the Story 42