demand point aggregation for location models chapter 7 – facility location text
DESCRIPTION
Demand Point Aggregation for Location Models Chapter 7 – Facility Location Text. Adam Bilger 7/15/09. Demand Point Aggregation for Location Models. Covering chapter 7 sections 1-5 7.1 Introduction 7.2 The Aggregation Problem 7.3 Aggregation Error 7.4 Guidelines for Aggregation - PowerPoint PPT PresentationTRANSCRIPT
Demand Point Aggregation Demand Point Aggregation for Location Modelsfor Location Models
Chapter 7 – Facility Location TextChapter 7 – Facility Location Text
Adam BilgerAdam Bilger
7/15/097/15/09
22
Demand Point Aggregation for Demand Point Aggregation for Location ModelsLocation Models
Covering chapter 7 sections 1-5Covering chapter 7 sections 1-5
7.1 Introduction7.1 Introduction 7.2 The Aggregation Problem7.2 The Aggregation Problem 7.3 Aggregation Error7.3 Aggregation Error 7.4 Guidelines for Aggregation7.4 Guidelines for Aggregation 7.5 An Aggregation Algorithm 7.5 An Aggregation Algorithm
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
33
Demand Point Aggregation for Demand Point Aggregation for Location ModelsLocation Models
IntroductionIntroduction Location Problem – Review P-medianLocation Problem – Review P-median Potential for millions of demand pointsPotential for millions of demand points Centroids and central locationsCentroids and central locations IRS exampleIRS example Inducing errorInducing error
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
44
Demand Point Aggregation for Demand Point Aggregation for Location ModelsLocation Models
Location Problem – Review P-medianLocation Problem – Review P-median Objective – Locate p facilities to Objective – Locate p facilities to
minimize the demand weighted total minimize the demand weighted total distance between demand nodes and distance between demand nodes and facilitiesfacilities
ConstraintsConstraints Max of p facilitiesMax of p facilities Must cover all demandMust cover all demand Can’t assign demand i if facility j not placedCan’t assign demand i if facility j not placed
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
55
Aggregation ProblemAggregation Problem NotationNotation
PPmm = (a = (amm, b, bmm), m=1, . . . . , M (demand pts)), m=1, . . . . , M (demand pts) P = (PP = (P11, . . . , P, . . . , Pmm) a demand pt vector) a demand pt vector P’P’mm : the aggregate demand pt replacing Pm, m=1,…,M : the aggregate demand pt replacing Pm, m=1,…,M P’ = (P’P’ = (P’11, . . . , P’, . . . , P’MM) an aggregate demand point vector) an aggregate demand point vector X = (XX = (X11, . . . , X, . . . , XNN) an N-median or N-center) an N-median or N-center XXnn = (x = (xnn, y, ynn), n=1, . . . ., N (new facilities)), n=1, . . . ., N (new facilities) d(U, V) = distance between any 2 pts U and Vd(U, V) = distance between any 2 pts U and V ddmm(X(Xnn) = distance between demand pt m and new facility n) = distance between demand pt m and new facility n DDmm(X) = distance between demand pt m and closest new (X) = distance between demand pt m and closest new
facility in Xfacility in X f(X : P) : the original location modelf(X : P) : the original location model f(X : P’) = the approximating location modelf(X : P’) = the approximating location model
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
66
Aggregation ProblemAggregation Problem
Three decisions must be made:Three decisions must be made:
q, the number of aggregate demand pointsq, the number of aggregate demand points
The locations of the aggregate demand The locations of the aggregate demand pointspoints
The replacement ruleThe replacement rule
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
77
Aggregation ProblemAggregation Problem
Weighting aggregated demand points Weighting aggregated demand points for p-median problemfor p-median problem
f(X : P) = wf(X : P) = w11d(X, Pd(X, P11) + . . . +w) + . . . +w44d(X, Pd(X, P44))
f(X : P’) = f(X : P’) = ww11d(X,Zd(X,Z11)+w)+w22d(X,Zd(X,Z11)+w)+w33d(X,Zd(X,Z22)+w)+w44d(X,Zd(X,Z22))
f(X : P’) = (wf(X : P’) = (w1 1 + w+ w22)d(X, Z)d(X, Z11)+(w)+(w3 3 + w+ w44)d(X, Z)d(X, Z22))
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
88
Aggregation ErrorAggregation Error
Location choices result in an errorLocation choices result in an error e(X) = f(X : P) – f(X : P’)e(X) = f(X : P) – f(X : P’)
Error Types:Error Types: Demand point m error for N-median Demand point m error for N-median
modelmodel Total errorTotal error Absolute errorAbsolute error Relative errorRelative error Maximum absolute errorMaximum absolute error
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
99
Aggregation ErrorAggregation Error
Statistical SamplingStatistical Sampling Generally start with a large number of Generally start with a large number of
demand nodesdemand nodes Reduce those to a smaller aggregate setReduce those to a smaller aggregate set It’s unrealistic to calculate error for the It’s unrealistic to calculate error for the
entire modelentire model Goal is to statistically sample the Goal is to statistically sample the
aggregate set of demand nodes and aggregate set of demand nodes and calculate a representative error for the calculate a representative error for the entire modelentire model
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
1010
Aggregation ErrorAggregation Error
Demand point m error for N-median Demand point m error for N-median modelmodel eemm(X) = w(X) = wmmD(X,PD(X,Pmm) - w) - wmmD(X,P’D(X,P’mm) )
= w= wmm(D(X,P(D(X,Pmm) - D(X,P’) - D(X,P’mm))))
Total error for N-median model, given Total error for N-median model, given any Xany X e(X) = ee(X) = e11(X) + . . . + e(X) + . . . + emm(X)(X)
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
1111
Aggregation ErrorAggregation Error
Absolute error for N-median modelAbsolute error for N-median model ae(X)= |e(X)| = |f(X : P) - f(X : P’)|ae(X)= |e(X)| = |f(X : P) - f(X : P’)|
Relative error for N-median model, given Relative error for N-median model, given any Xany X rel(X) = 100 * (ae(X) / f(X : P)) rel(X) = 100 * (ae(X) / f(X : P))
Maximum absolute errorMaximum absolute error mae = mae {ae(X) : X}mae = mae {ae(X) : X}
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
1212
Aggregation Error ExampleAggregation Error Example1.1. Solve the problem as a one dimensional Solve the problem as a one dimensional
weighted p-median problem. Set p=1.weighted p-median problem. Set p=1.2.2. Solve the problem again aggregating demand Solve the problem again aggregating demand
onto the new set of aggregate points. Relocate onto the new set of aggregate points. Relocate demand points to the closest aggregate point.demand points to the closest aggregate point.
3.3. Calculate the relative error.Calculate the relative error.
2 3 4 1312 14 15 20 2221 23 241 1110 25
Demand 6 2 1 6 4 2 8 19
Aggregate Demand Pts 1 2 3
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
1313
Aggregation Error ExampleAggregation Error Example
1.1. p-median point is simply 13 for this p-median point is simply 13 for this problem, where we’re only locating a problem, where we’re only locating a single facility (p=1) in one dimension.single facility (p=1) in one dimension.
f(X:P) = f(X:P) = ΣΣ w wmmD(X,PD(X,Pmm) )
= 6*7+2*10+1*9+6*3+9*0+4*2+2*5+8*10+1*12= 6*7+2*10+1*9+6*3+9*0+4*2+2*5+8*10+1*12
=199=199
m=1
M
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
1414
Aggregation Error ExampleAggregation Error Example2.2. New p-median location is at node 15. New p-median location is at node 15.
New aggregated demand points need New aggregated demand points need recalculated for weight.recalculated for weight.
f(X:P’) = f(X:P’) = ΣΣ w wmmD(X,P’D(X,P’mm))
f(X:P’) = (wf(X:P’) = (w1 1 + w+ w22)d(X, P’)d(X, P’11)+(w)+(w3 3 + w+ w44)d(X, P’)d(X, P’22))
= (6+2+1)d(X, P’= (6+2+1)d(X, P’11)+(6+9+4)d(X, P’)+(6+9+4)d(X, P’22)+(2+8+1)d(X, )+(2+8+1)d(X, P’P’33))
= 9*11+19*0+11*7= 9*11+19*0+11*7=176=176
m=1
M
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
1515
Aggregation Error ExampleAggregation Error Example
3.3. ae(X) = |eae(X) = |emm(X)| =|f(X:P) - f(X:P’)|(X)| =|f(X:P) - f(X:P’)|
=|199 - 176| =|199 - 176|
= 23= 23
rel(X) = 100 * (ae(X) / f(X:P))rel(X) = 100 * (ae(X) / f(X:P))
= 100 * (23/199)= 100 * (23/199)
= 11.6%= 11.6%
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
1616
Guidelines for AggregationGuidelines for Aggregation
Aspects of a location process Aspects of a location process effected by aggregationeffected by aggregation (EC1): aggregation error(EC1): aggregation error (EC2): computational cost to (EC2): computational cost to
a) get demand point dataa) get demand point data b) implement and run aggregation algorithmb) implement and run aggregation algorithm c) solve the approximating location modelc) solve the approximating location model
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
1717
Guidelines for AggregationGuidelines for Aggregation
Aspects of a location process Aspects of a location process effected by aggregation (cont.)effected by aggregation (cont.) (EC3): ease of explanation(EC3): ease of explanation (EC4): problem structure exploitation(EC4): problem structure exploitation (EC5): robustness (works for many (EC5): robustness (works for many
different problems)different problems) (EC6): GIS implementable(EC6): GIS implementable
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
1818
Guidelines for AggregationGuidelines for Aggregation
Interactions and tradeoffsInteractions and tradeoffs As (EC1) or aggregation error is allowed As (EC1) or aggregation error is allowed
to increase computational costs (EC2) to increase computational costs (EC2) are reducedare reduced
EC1 and ease of explanation (EC3)EC1 and ease of explanation (EC3) Problem structure exploitation (EC4) & Problem structure exploitation (EC4) &
robustness (EC5)robustness (EC5) Most important – error vs. costsMost important – error vs. costs
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
1919
An Aggregation Algorithm An Aggregation Algorithm (MRC – Francis, Lowe and Rayco (MRC – Francis, Lowe and Rayco
1996)1996) N- Median Problem – planar rectilinear version of p N- Median Problem – planar rectilinear version of p
center modelcenter model Motivation – seek an aggregation with a small errorMotivation – seek an aggregation with a small error This algorithm find an rc median that minimizes This algorithm find an rc median that minimizes
the objective function value of the q-median the objective function value of the q-median problem with rectilinear distances over all possible problem with rectilinear distances over all possible rc-mediansrc-medians
MRC is a method for making the three decisions:MRC is a method for making the three decisions: q, the number of aggregate demand pointsq, the number of aggregate demand points
The locations of the aggregate demand pointsThe locations of the aggregate demand points
The replacement ruleThe replacement rule
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
2020
An Aggregation AlgorithmAn Aggregation Algorithm
q, the number of aggregate demand pointsq, the number of aggregate demand points q = r * cq = r * c
The locations of the aggregate demand The locations of the aggregate demand pointspoints Create a grid of r rows and c columns over the Create a grid of r rows and c columns over the
existing demand nodesexisting demand nodes Equally divide the data as opposed to the spaceEqually divide the data as opposed to the space
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
2121
20151050
18
16
14
12
10
8
6
4
2
0
X
Y
Demand Nodes
An Aggregation AlgorithmAn Aggregation Algorithm
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
2222
20151050
18
16
14
12
10
8
6
4
2
0
X
Y15105
12
6
Creating Aggregate Demand Points (q=6) Using r=2, c=3
32
54 6
1
Row / Column intersection points become the coordinates for the new aggregate demand points.
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
2323
An Aggregation AlgorithmAn Aggregation Algorithm
We now have six new aggregate We now have six new aggregate points points
The replacement ruleThe replacement rule How do we assign demand points and How do we assign demand points and
their weighting to the aggregate points?their weighting to the aggregate points? The MRC dictates that the next step is to The MRC dictates that the next step is to
partition the grid by creating lines to partition the grid by creating lines to split the existing rows and columnssplit the existing rows and columns
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
2424
An Aggregation AlgorithmAn Aggregation Algorithm
20151050
18
16
14
12
10
8
6
4
2
0
X
Y
12.57.5
9
654
321*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
***
*
*
*
*
*
*
*
*
**
*
*
*
*
*
*
Partitioned Space for Assigning Nodes and Demand
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
2525
An Aggregation AlgorithmAn Aggregation Algorithm
Last assign points and weightingLast assign points and weighting
Partition used to assign demand pointsPartition used to assign demand points
Additive method most common for assigning Additive method most common for assigning weighting to the new aggregate pointsweighting to the new aggregate points
Algorithm would utilize this aggregation Algorithm would utilize this aggregation technique to optimize the objective functiontechnique to optimize the objective function
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
2626
SummarySummary
Three decisions to be made when Three decisions to be made when aggregating demandaggregating demand
Estimate error to evaluate the Estimate error to evaluate the aggregation implementationaggregation implementation
Existing algorithms existExisting algorithms exist
Demand Point Aggregation for LoDemand Point Aggregation for Location Modelscation Models
2727
Questions?Questions?