SMA Facility Location - MIT OpenCourseWare · Optimization ApplicationsOptimization Applications...
Transcript of SMA Facility Location - MIT OpenCourseWare · Optimization ApplicationsOptimization Applications...
Facility LocationFacility LocationFacility Locationand Distributionand Distributionand Distribution System PlanningSystem PlanningSystem Planning
Thomas L. MagnantiThomas L. Magnanti
Today’s AgendaToday’s Agenda
� Why study facility location? � Issues to be modeled � Basic models
� Fixed charge problems � Core uncapacitated and capacitated
facility location models � Large-scale application (Hunt-
Wesson Foods)
� Why study facility location?� Issues to be modeled� Basic models
� Fixed charge problems� Core uncapacitated and capacitated
facility location models� Large-scale application (Hunt-
Wesson Foods)
Logistics IndustryLogistics Industry� U.S. logistics industry: $900 billion - almost
double the size of the high-tech industry: > 10percent of the U.S. gross domestic product
� 11 per cent of Singapore's GDP with a growth of9 per cent in year 2000
� Singapore Logistics Enhancement &Applications Programme (LEAP) 2001
� Global logistics: $3.43 trillion � 1998, U.S. trucking industry revenues just
under $200 billion � 7.7 million trucks carried over 1 trillion ton
miles of freight
� U.S. logistics industry: $900 billion - almost double the size of the high-tech industry: > 10percent of the U.S. gross domestic product
� 11 per cent of Singapore's GDP with a growth of9 per cent in year 2000
� Singapore Logistics Enhancement &Applications Programme (LEAP) 2001
� Global logistics: $3.43 trillion � 1998, U.S. trucking industry revenues just
under $200 billion� 7.7 million trucks carried over 1 trillion ton
miles of freight
Basic IssueBasic Issue
� Where to locate and how to size facilities?
� How to meet customer demands from the facilities? � Which facility (facilities) serve each
customer? � How much customer demand is met by
each facility?
� Where to locate and how to size facilities?
� How to meet customer demands from the facilities?� Which facility (facilities) serve each
customer?� How much customer demand is met by
each facility?Facilities might be warehouses, retail outlets,
wireless bay stations, communication concentrators
Some Elements of Cost & ServiceSome Elements of Cost & Service
� Transportation Costs � Vehicles, Drivers, Fuel
� Warehousing � Facility Construction/Rental, Handling
Costs, Inventory � Customer Service
� Service Time, Single Sourcing
� Transportation Costs� Vehicles, Drivers, Fuel
� Warehousing � Facility Construction/Rental, Handling
Costs, Inventory� Customer Service
� Service Time, Single Sourcing
Effect of More FacilitiesEffect of More FacilitiesEffect of More Facilities
+++---
Fixed Costs FixedFixed CostsCosts
TransportationCostsTransportationTransportationCostsCosts
System Trade-offsSystem Trade-offs
Effect of “Individualized” Service (e.g., Direct Shipments) Effect of “Individualized”Effect of “Individualized” Service (e.g., Direct Shipments)Service (e.g., Direct Shipments)
+++---
ServiceServiceServiceCostsCostsCosts
System Trade-offsSystem Trade-offs
Nature of CostsNature of Costs
� Fixed Costs � Facility construction/rental � Vehicle purchases & rentals � Personnel (drivers, managers) � Fixed overhead
� Variable Costs � Inventory, handling, fuel
� Fixed Costs� Facility construction/rental� Vehicle purchases & rentals� Personnel (drivers, managers)� Fixed overhead
� Variable Costs� Inventory, handling, fuel
Optimization ApplicationsOptimization Applications
� Hunt-Wesson Foods saves over $1 million per year
� Restructuring North America operations, Proctor and Gamble reduces plants by 20%, saving $200 million/year
� Many, many others (e.g., supplying parts to plants)
� Hunt-Wesson Foods saves over $1 million per year
� Restructuring North America operations, Proctor and Gamble reduces plants by 20%, saving $200 million/year
� Many, many others (e.g., supplying parts to plants)
Modeling IssueModeling Issue
� How do we model “lumpiness” of the costs (e.g., fixed costs)?
� How do we model logical conditions (e.g., choice of warehouse locations)?
� How do we model “lumpiness” of the costs (e.g., fixed costs)?
� How do we model logical conditions (e.g., choice of warehouse locations)?
Modeling Fixed CostsModeling Fixed Costs
� Incur fixed cost F if either x > 0 or z > 0 � Suppose x + z < 3/2 (demand limitation) � Incur fixed cost F if either x > 0 or z > 0� Suppose x + z < 3/2 (demand limitation)
Flow x > 0 Flow z > 0
Minimize Fy + other terms subject to y = 1 if either x > 0 or z > 0
Model
Three Models (LP Relaxations)Three Models (LP Relaxations)
Forcing Constraints
Weak Strong
x + z < 3/2 x < 1, z < 1 x + z < 2y x > 0, z > 0 0 < y < 1
Model 1 x + z < 3/2 x < 1, z < 1 x < y, z < y x > 0, z > 0 0 < y < 1
Model 2
x + z < 3y/2 x < 1, z < 1 x < y, z < y x > 0, z > 0 0 < y < 1
Model 3
Geometry (Weak Model)Geometry (Weak Model)
x + z < 2y intersects at y = 3/4
Feasible region with x<1, y<1, z<1, x + z< 3/2
Feasible region with x<1, y<1, z<1, x + z< 3/2
x + z < 3/2 y
x
z
x
y
z
Feasible points
y
x
z
Geometry (Improved Model)Geometry (Improved Model)
x < y, z < y intersects at
x = z = y = 3/4 & at y = 1 w/ x or z =1
x < y, z < yintersects at
x = z = y = 3/4 & at y = 1 w/ x or z =1
x + z < 3/2 y
x
z
y
x
z
Geometry (Strong Model)Geometry (Strong Model)
x + z < 3y/2, x < y, z < y intersects at y = 1
x + z < 3y/2,x < y, z < yintersects at y = 1
Exact representation!Exact representation!
y
x
z
Minimize Fixed + Routing CostsMinimize Fixed + Routing CostsMinimize Fixed + Routing CostsSubject toSubject toSubject to
� Meet customer demand from facilities
� Assign customer only to open facility
�� Meet customerMeet customer demand from facilitiesdemand from facilities
�� Assign customer only toAssign customer only to open facilityopen facility
Core (Uncapacitated) Facility LocationCore (Uncapacitated) Facility Location
Parameters:
Core Facility Location Model
Parameters:
Core Facility Location Model
� Demand di for each customer i � Fixed cost Fj for each facility location j � Cost cij of routing all customer i
demand to facility j = per unit cost times demand di
� Demand di for each customer i� Fixed cost Fj for each facility location j� Cost cij of routing all customer i
demand to facility j = per unit cost times demand di
Decisions: Core Facility Location Model
Decisions: Core Facility Location Model
� Where do we locate facilities? � yj = 1 if we locate facility at location j
� Fraction of service that customer i receives from facility j (xij )
� Where do we locate facilities?� yj = 1 if we locate facility at location j
� Fraction of service that customer i receives from facility j (xij )
CustomersCustomersCustomers FacilitiesFacilitiesFacilities
xijxxijijyjyyjj
Network Representation 3 Customers, 4 Facilities Network Representation 3 Customers, 4 Facilities
d1dd11
d2dd22
d3dd33
111
222
333 444
111
222
333
Facility Location CostsFacility Location Costs
c11x11 + c12x12 + c13x13 + c14x14 + . . . + c31x31 + c32x32 + c33x33 + c34x34
+ F1y1 + F2y2 + F3y3 + F4y4
cc1111xx1111 + c+ c1212xx1212 + c+ c1313xx1313 + c+ c1414xx1414 + . . .+ . . .+ c+ c3131xx3131 + c+ c3232xx3232 + c+ c3333xx3333 + c+ c3434xx3434
+ F+ F11yy11 + F+ F22yy22 + F+ F33yy33 + F+ F44yy44
Routing Costs Routing Costs
Fixed Costs Fixed Costs
x11 x12 x13 x14 = 1 x21 x22 x23 x24 = 1 x31 x32 x33 x34 = 1
x11 ≤ y1, x12 ≤ y2, x13 ≤ y3, x14 ≤ y4 x21 ≤ y1, x22 ≤ y2, x23 ≤ y3, x24 ≤ y4 x31 ≤ y1, x32 ≤ y2, x33 ≤ y3, x34 ≤ y4
xx1111 xx1212 xx1313 xx1414 = 1= 1xx2121 xx2222 xx2323 xx2424 = 1= 1xx3131 xx3232 xx3333 xx3434 = 1= 1
xx1111 ≤ yy1,1, xx1212 ≤ yy2,2, xx1313 ≤ yy3,3, xx1414 ≤ yy44xx2121 ≤ yy1,1, xx2222 ≤ yy2,2, xx2323 ≤ yy3,3, xx2424 ≤ yy44xx3131 ≤ yy1,1, xx3232 ≤ yy2,2, xx3333 ≤ yy3,3, xx3434 ≤ yy44
Facilities (Locations)Facilities (Locations)Facilities (Locations)C u s t o m e r s
CCuussttoommeerrss
Constraints: Tabular RepresentationConstraints: Tabular Representation
Σj xij = 1 for all customers i xij ≤ yj for all customers i xij ≥ 0 and facilities j yj = 0 or 1 for all facilities j
ΣΣjj xxijij = 1= 1 for all customers ifor all customers ixxijij ≤ yyjj for all customers ifor all customers ixxijij ≥ 00 and facilities jand facilities jyyjj = 0 or 1= 0 or 1 for all facilities jfor all facilities j
Minimize ΣiΣj cijxij + Σj FjyjMinimizeMinimize ΣΣiiΣΣjj ccijijxxijij ++ ΣΣjj FFjjyyjj
Subject toSubject toSubject to
Model (Uncapacitated Facilities)
Model (Uncapacitated Facilities)
}}
Modeling VariationsModeling Variations
� Open at most three of facilities 1, 6 and 8-11 � y1 + y6 + y8 + y9 + y10 + y11 ≤ 3
� Assign each customer to a single facility � x11 integer, x12 integer, etc.
� Open at most three of facilities 1, 6 and 8-11� y1 + y6 + y8 + y9 + y10 + y11 ≤ 3
� Assign each customer to a single facility� x11 integer, x12 integer, etc.
Modeling VariationsModeling Variations
� Open a facility at location 3 only if we open one at location 7 � y3 ≤ y7
� Open a facility at location 3 only if we open one at location 7� y3 ≤ y7
Note: Power of using integer variables to model logical restrictions
Note: Power of using integer variables to model logical restrictions
Modeling EnhancementsModeling Enhancements
� Multiple products � Facility capacities and operating
ranges (min and max throughput ifopen)
� Multi-layered distribution networks � Service restrictions
� Single sourcing � Timing of deliveries
� Inventory positioning and control
� Multiple products� Facility capacities and operating
ranges (min and max throughput ifopen)
� Multi-layered distribution networks� Service restrictions
� Single sourcing� Timing of deliveries
� Inventory positioning and control
Σj xij = 1 for all customers i Σi xij ≤ nyj for all facilities j
xij ≥ 0 for all pairs i,j yj = 0 or 1 for all facilities j
ΣΣjj xxijij = 1= 1 for all customers ifor all customers iΣΣii xxijij ≤ nynyjj for all facilities jfor all facilities j
xxijij ≥ 00 for all pairs i,jfor all pairs i,jyyjj = 0 or 1= 0 or 1 for all facilities jfor all facilities j
Minimize ΣiΣj cijxij + Σj FjyjMinimizeMinimize ΣΣiiΣΣjj ccijijxxijij ++ ΣΣjj FFjjyyjj
Subject toSubject toSubject to
Alternate Model (Uncapacitated Facilities)Alternate Model (Uncapacitated Facilities)
Σj xij = di for all customers i Σi xij ≤ (Σi di)yj for all facilities j
xij ≥ 0 for all pairs i,j yj = 0 or 1 for all facilities j
ΣΣjj xxijij = d= dii for all customers ifor all customers iΣΣii xxijij ≤ ((ΣΣii ddii)y)yjj for all facilities jfor all facilities j
xxijij ≥ 00 for all pairs i,jfor all pairs i,jyyjj = 0 or 1= 0 or 1 for all facilities jfor all facilities j
Minimize ΣiΣj cijxij + Σj FjyjMinimizeMinimize ΣΣiiΣΣjj ccijijxxijij ++ ΣΣjj FFjjyyjj
Subject toSubject toSubject to
Alternate Model (Uncapacitated Facilities)Alternate Model (Uncapacitated Facilities)
Σj xij = di for all customers i xij ≤ diyj for all i, j pairs
Σi xij ≤ CAPj yj for all facilities j xij ≥ 0 for all i, j pairs yj = 0 or 1 for all facilities j
ΣΣjj xxijij = d= dii for all customers ifor all customers ixxijij ≤ ddiiyyjj for all i, j pairsfor all i, j pairs
ΣΣii xxijij ≤ CAPCAPjj yyjj for all facilities jfor all facilities jxxijij ≥ 00 for all i, j pairsfor all i, j pairsyyjj = 0 or 1= 0 or 1 for all facilities jfor all facilities j
Minimize ΣiΣj cijxij + Σj FjyjMinimizeMinimize ΣΣiiΣΣjj ccijijxxijij ++ ΣΣjj FFjjyyjj
Subject toSubject toSubject to
Model (Capacitated Facilities)Model (Capacitated Facilities)
KKjj
x11 x12 x13 x14 = d1 x21 x22 x23 x24 = d2 x31 x32 x33 x34 = d3 ≤ ≤ ≤ ≤
K1y1 K2y2 K3y3 K4y4
xx1111 xx1212 xx1313 xx1414 = d= d11xx2121 xx2222 xx2323 xx2424 = d= d22xx3131 xx3232 xx3333 xx3434 = d= d33≤ ≤ ≤ ≤KK11yy11 KK22yy22 KK33yy33 KK44yy44
LocationsLocationsLocationsC u s t o m e r s
CCuussttoommeerrss
Tabular RepresentationTabular Representation
plus cell constraints xij ≤ diyjplus cell constraints xxijij ≤ ddiiyyjj
d1dd11
d2dd22
d3dd33
111
222
333 444 444
K1KK11
K2KK22
K3KK33
K4KK44CustomersCustomersCustomers FacilitiesFacilitiesFacilities
xijxxijij yjyyjj
Network RepresentationNetwork Representation
111
222
333
111
222
333
Solution ApproachesSolution Approaches
� Heuristics � Add, drop, and/or exchange � Linear programming relaxation � Bounding (Lagrangian relaxation)
� Optimization methods � Large-scale mixed integer programming � Benders decomposition � Lagrangian relaxation (e.g., dualize capacity
constraints to give uncapacitated facilitylocation subproblem
� Heuristics� Add, drop, and/or exchange� Linear programming relaxation� Bounding (Lagrangian relaxation)
� Optimization methods� Large-scale mixed integer programming� Benders decomposition� Lagrangian relaxation (e.g., dualize capacity
constraints to give uncapacitated facilitylocation subproblem
IngredientsIngredients
� Multiple products � Multiple plants � Many DCs, many customers � Site selection and sizing � Customer service levels � Complex costs
� Multiple products� Multiple plants� Many DCs, many customers� Site selection and sizing� Customer service levels� Complex costs
14 plants14 plants14 plants45 DC Choices45 DC Choices45 DC Choices
121 Customer Zones121 Customer Zones121 Customer Zones
FlowsFlowsFlows
17 Product Groups p17 Product Groups17 Product Groups pp
���
���
���
���
���
���
���
���
���
���
iiijjj���
kkk
���
Data PreprocessingData Preprocessing
� 49 product-plant combinations � (from 14x17 = 238)
� 682 DC-customer zone combinations � (from 45x121 = 5,445 possibilities)
� 49 product-plant combinations� (from 14x17 = 238)
� 682 DC-customer zone combinations� (from 45x121 = 5,445 possibilities)
Data PreprocessingData Preprocessing
� 23,513 product-plant-DC-customer combinations � (from 49x682 = 33,418 possibilities)
� 23,513 product-plant-DC-customer combinations� (from 49x682 = 33,418 possibilities)
System RequirementsSystem Requirements
� Data easy to acquire � Inexpensive/quick to run � Easily updated � User-oriented � Flexible (what if capabilities) � Measurable benefits
� Data easy to acquire� Inexpensive/quick to run� Easily updated� User-oriented� Flexible (what if capabilities)� Measurable benefits
IndicesIndices
� p = products � i = plants � j = distribution centers � k = customer zones
� p = products� i = plants� j = distribution centers� k = customer zones
PlantPlant DCDC Customer ZoneCustomer Zone
Decision VariablesDecision Variables
� xpijk = amount of product p shipped from plant i to customer zone k through DC j
� zj = 1 if DC j open � yjk = 1 if DC is sole source of customer
zone k
� xpijk = amount of product p shipped from plant i to customer zone k through DC j
� zj = 1 if DC j open� yjk = 1 if DC is sole source of customer
zone k
Σjk xpijk ≤ SpiΣi xpijk = DpkyjkΣj yjk = 1
Vjzj ≤ ΣpkDpkyjk ≤ Vjzj xpijk ≥ 0 zj,yjk = 0 or 1
ΣΣjkjk xxpijkpijk ≤ SSpipiΣΣii xxpijkpijk = D= DpkpkyyjkjkΣΣjj yyjkjk = 1= 1
VVjjzzjj ≤ ΣΣpkpkDDpkpkyyjkjk ≤ VVjjzzjjxxpijkpijk ≥ 00zzjj,y,yjkjk = 0 or 1= 0 or 1
+ Configuration Constraints on y,z+ Configuration Constraints on y,z+ Configuration Constraints on y,z
ConstraintsConstraintsConstraints
Σpijk cpijkxpijk
+ Σj fjzj
+ Σj vjΣpk Dpkyjk
ΣΣpijkpijk ccpijkpijkxxpijkpijk
++ ΣΣjj ffjjzzjj
++ ΣΣjj vvjjΣΣpkpk DDpkpkyyjkjk
Transportation CostTransportation CostTransportation Cost
Fixed DC CostFixed DC CostFixed DC Cost
Variable DC CostVariable DC CostVariable DC Cost
ObjectiveObjective
Model DevelopmentModel Development
� Aggregation of Data � Preselection of Certain Decisions in
Large Applications
� Aggregation of Data� Preselection of Certain Decisions in
Large Applications
Power of Integer ProgrammingPower of Integer Programming
� Fixed costs � Bounding # of facilities � Precedence constraints � Mandatory service constraints
� Sole sourcing � Service timing
� Fixed costs� Bounding # of facilities� Precedence constraints� Mandatory service constraints
� Sole sourcing� Service timing
Stages in Model DevelopmentStages in Model Development
� Probationary analysis � Analyzing results
� Sensitivity analysis � What if analysis � Priority analysis
� Probationary analysis� Analyzing results
� Sensitivity analysis� What if analysis� Priority analysis
Today’s LessonsToday’s Lessons
� Facility location and distributionimportant in practice
� Geometry of fixed cost modeling � Model choice is important in problem
solving � Strong vs. weak forcing constraints
� Optimization models are able tosolve large-scale practical problems
� Facility location and distributionimportant in practice
� Geometry of fixed cost modeling� Model choice is important in problem
solving� Strong vs. weak forcing constraints
� Optimization models are able tosolve large-scale practical problems