310 likes | 324 Views
This article explores location allocation problems and presents mathematical models to minimize the sum or maximum of rectilinear distances for facility location. It discusses the intuition behind facility location and provides solver models for solving these problems.
E N D
Location Problems John H. Vande Vate Fall, 2002 1
Rectilinear Location Problems Euclidean Location Problems Location - Allocation Problems Where to Locate Facilities 2
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 Basic Intuition 1 4 0 3
Travel on the streets and avenues Distance = number of blocks East-West + number of blocks North-South Manhattan Metric Rectilinear Distance 4
Rectilinear Distance 9 5 4 5
To minimize the sum of rectilinear distances Intuition Where? Why? Locate a facility... 6
Locate a facility... • To minimize the max of rectilinear distances • Intuition • Where? • Why? 8
Set Customers; Param X{Customer}; Param Y{Customer}; var Xloc >= 0; var Yloc >= 0; var Xdist{Customer}; var Ydist{Customer}; Models 9
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 10
Total Distance: sum{c in Customer}(Xdist[c]+Ydist[c]); Maximum Distance? Objective 11
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? 12
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! 13
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]; 14
Solver Model 15
Locate a facility... • To minimize the max of rectilinear distances • Intuition • Where? • Why? 16
NIMBY…. Maximize the Minimum Distance Can’t say Xdist[c] <= X[c] - Xloc; Come up with a good formulation Assignment #1 18
Rectilinear Location Problems Euclidean Location Problems Location - Allocation Problems Outline 19
Distance is not linear Distance is a convex function Local Minimum is a global Minimum Locating a single facility 20
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 21
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 22
Solver Model 23
Call on Convex Minimization Tool Minos, Interior Point Methods, … Typically don’t support discrete variables too… Convex Minimization 24
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 25
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 26
Uncapacitated (facilities can be any size) “Greedy”: Assign each customer to closest facility Capacitated Use Optimization Assign Customers to Facilities 27
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 28
WesternAir 30
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 31