Location-allocation analysis
What is location-allocation?
Location is often considered the most important factor leading to the success of a private- or public-sector organization. Private-sector organizations can profit from a good location, whether a small coffee shop with a local clientele or a multinational network of factories with distribution centers and a worldwide chain of retail outlets. Location can help keep fixed and overhead costs low and accessibility high. Public-sector facilities, such as schools, hospitals, libraries, fire stations, and emergency response services (ERS) centers, can provide high-quality service to the community at a low cost when a good location is chosen.
Given facilities that provide goods and services and a set of demand points that consume them, the goal of location-allocation is to locate the facilities in a way that supplies the demand points most efficiently. As the name suggests, location-allocation is a twofold problem that simultaneously locates facilities and allocates demand points to the facilities.
Initially, it may appear that all location-allocation analyses solve the same problem, but the best location is not the same for all types of facilities. For instance, the best location for an ERS center is different than the best location for a manufacturing plant. The next two examples demonstrate how the goals of location-allocation problems vary according to the type of facility being located.
Example 1: Locating an ERS center
When someone calls for an ambulance, we trust it will come to their aid almost instantly; the emergency response time depends considerably on the distance between the ambulance and the patient. Typically, the goal for determining the best sites for ERS centers is to make it possible for ambulances to reach the most people within a defined time frame. The specific question may be: Where should three ERS facilities be placed so that the greatest number of people in the community can be reached within four minutes?
Example 2: Locating a manufacturing plant
Many retail outlets receive their goods from manufacturing plants. Whether producing automobiles, appliances, or packaged food, a manufacturing plant can spend a large percentage of its budget on transportation. Location-allocation can answer the following question: Where should the manufacturing plant be located to minimize overall transportation costs?
Location-allocation problem types
The ArcGIS Location-Allocation analysis layer offers seven different problem types to answer specific kinds of questions, including questions like those posed in the two examples above. The seven problem types are the following:
- Minimize impedance
- Maximize coverage
- Maximize capacitated coverage
- Minimize facilities
- Maximize attendance
- Maximize market share
- Target market share
Details and examples of the individual problem types are described in the Location-allocation analysis layer properties section of this document.
The workflow to perform a location-allocation analysis is similar to performing any other analysis in the ArcGIS Network Analyst extension.
Location-allocation analysis layer
The location-allocation analysis layer stores the inputs, parameters, and results for a given location-allocation problem.
Creating a location-allocation analysis layer
You can create a location-allocation analysis layer from the Network Analyst toolbar by clicking Network Analyst > New Location-Allocation.
When you create a location-allocation analysis layer, it shows up in the Network Analyst window along with its six network analysis classes—Facilities, Demand Points, Lines, Point Barriers, Line Barriers, and Polygon Barriers.
The location-allocation analysis layer also appears in the table of contents as a composite layer containing six corresponding feature layers: Facilities, Demand Points, Lines, Point Barriers, Line Barriers, and Polygon Barriers. Each of the six feature layers has default symbology that can be modified in its Layer Properties dialog box.
Location-allocation analysis classes
The location-allocation analysis layer is made up of six network analysis classes, which are feature layers stored within the analysis layer. They contain the network analysis objects used when performing a location-allocation analysis.
The network analysis classes have attributes that specify the inputs and outputs for a given location-allocation problem. The attributes can be examined and edited through a network analysis class attribute table, where all the objects and their attributes for that class are listed, or through an object's Properties window, where only one object and its attributes are listed at a time.
Learn more about viewing and editing properties of network analysis objects
Within a network analysis class, there may be a combination of input fields, output fields, and input/output fields. You enter data into input fields, which are then used by the location-allocation solver to set up the problem. In contrast, output fields store results from the solve process and give you information about the solution. Last, input/output fields are a combination of the two: you can set values for these fields before solving and let the solver assign output values.
Facilities class
A facility in a location-allocation analysis is a point feature that represents a candidate or required site, but in some cases, it represents a competing facility. The location-allocation solver chooses the best candidate facilities to allocate demand to in the most efficient way according to the problem type and criteria you specify.
A candidate facility should be a location that is suitable for the event or structure you are locating. For instance, if you are locating distribution centers, first, you might need to find parcels that are for sale, within your budget, properly zoned, and large enough to contain the distribution center you plan to build. You might also choose to include parcels that already have structures on them that are large enough to house your distribution center. There is no limit to the number of factors you might consider in determining suitability for your facilities.
Choosing the right factors and finding sites that meet those factors is all part of a suitability analysis, which should be performed prior to setting up a location-allocation problem. Suitability analyses can be as rudimentary or elaborate as you want to make them. If finding good candidate facilities is neglected, however, the location-allocation solver may choose a facility that won't ultimately be viable. Returning to the distribution center example, if candidate facilities are scattered randomly over the study area without a proper suitability analysis, the location-allocation solver might choose a candidate facility in an inappropriate location, such as a residential neighborhood. The point to remember is you provide the location-allocation solver with candidate facilities that would fit your needs, and the location-allocation solver will choose among the candidate facilities to find the one facility, or set of facilities, that would minimize cost and maximize demand allocation while respecting the constraints of a specific location-allocation problem type.
Another type of facility is the required facility, which must be included in the solution. If a city is growing to the point that new neighborhoods are not properly protected by the fire department, a goal could be to locate a new fire station without closing any existing stations. The potential sites for the new fire stations would be candidate facilities, and the current fire stations would be required facilities.
Competitor facilities are specific to the maximize market share and target market share problem types and typically represent facilities of rival businesses that compete for the same clientele as your business.
Each facility can have a weight that represents the importance or attractiveness of it. A facility weight value other than one can only be used with the maximize market share and target market share problem types—it is ignored by the other problem types. For example, it could be determined that a department store with a sales floor that is twice as large as a typical sales floor would be twice as attractive to customers. The larger store would have a weight of 2.0 and the normally sized stores would have a weight of 1.0. Determining what factors influence facility weight and quantifying them requires careful consideration.
Facility properties
Input field |
Description |
---|---|
ObjectID |
The system-managed ID field. |
Shape |
The geometry field indicating the geographic location of the network analysis object. |
Name |
The name of the network analysis object. |
FacilityType |
This property specifies whether the facility is a candidate, required, competitor, or chosen facility. It is constrained by a domain of values, which is referenced by the integer value in parentheses in the following list:
|
Weight |
The relative weighting of the facility, which is used to rate the attractiveness, desirability, or bias of one facility compared to another. For example, a value of 2.0 could capture the preference of customers who prefer, at a ratio of 2 to 1, shopping in one facility over another facility. Example factors that potentially affect facility weight include square footage, neighborhood, and age of the building. Weight values other than one are only honored by the maximize market share and target market share problem types. |
Capacity | The Capacity property is specific to the Maximize Capacitated Coverage problem type; the other problem types ignore Capacity. This property specifies how much weighted demand the facility is capable of supplying. Excess demand won't be allocated to a facility even if that demand is within the facility's impedance cutoff. Any value assigned to this facility property overrides the network analysis layer's default capacity; see default capacity value. |
Network location fields
|
Together, these four properties describe the point on the network where the object is located. |
CurbApproach |
The CurbApproach property specifies which direction of travel is possible when arriving at or departing from the facility. Because the shortest path between two points can change with the direction of travel that is permitted when arriving at the destination, this property is used when generating impedances between demand points and facilities. This field is constrained by a domain of values and is set by default to Either side of vehicle (0), indicating the facility can be visited from either the right or left side of the vehicle. Other options include Right side of vehicle (1) or Left side of vehicle (2) if the vehicle should arrive at or depart the facility from a specific direction. The last CurbApproach option, No U-Turns (3), functions the same as Either side of vehicle for location-allocation analyses. |
Input/output field |
Description |
---|---|
Status |
As an input field, indicates status information about the facility. This field is constrained by a domain of values, which are listed below (their coded values are shown in parentheses).
After a solve operation, the status can be modified using one of the following status values:
|
Output field |
Description |
---|---|
DemandCount: |
This field contains a count of demand points allocated to the facility. A nonzero value means the facility was chosen as part of the solution. |
DemandWeight: |
This field contains a sum of the effective weight from all demand points that were allocated to the facility. The value is a sum of all the Weight values from the demand points that were allocated to the facility. In the case of the maximize attendance and market share problem types, the value is an apportioned sum of the Weight field values, since these problem types allow demand to decay with distance or be split among many facilities. |
Total_[Impedance] (for instance, Total_Miles, where Miles is the impedance for the network) |
This field contains a sum of network costs between the facility and each of the demand points that were allocated to the facility. The [Impedance] portion of the field name is replaced with the network attribute name, for example, Total_Meters, where Meters is the name of the network attribute. |
TotalWeighted_[Impedance] (for instance, TotalWeighted_Miles, where Miles is the impedance for the network) |
This field stores the cumulative weighted cost for a facility. The weighted cost for a demand point is its weight multiplied by the least-cost path between the facility and the demand point. The weighted cost for a facility is the sum of all the weighted costs of demand points that are allocated to the facility. For example, if a demand point with a weight of two is allocated to a facility 10 miles away, the TotalWeighted_Miles value is 20 (2 x 10). If another demand point with a weight of three is allocated to the same facility and is five miles away, the TotalWeighted_Miles value increases to 35 (3 x 5 + 20). |
Demand Points class
This feature layer stores demand points that are part of a given location-allocation analysis layer. A demand point is typically a location that represents the people or things requiring the goods and services your facilities provide. A demand point could be a ZIP Code centroid weighted by the number of people residing within it or by the expected consumption generated by those people. Demand points could also represent business customers. If you supply businesses with a high turnover of inventory, they would be weighted more heavily than those with a low turnover rate.
Demand points can override the distance cutoff for the location-allocation problem type. This is useful if some demand points have different needs or behavior. For instance, when prepositioning ambulances, it may be acceptable to reach everyone within four minutes, except for areas with a high-density of elderly people, such as senior centers, which require a faster response time of two minutes.
Demand point properties
Input field |
Description | ||||
---|---|---|---|---|---|
ObjectID |
The system-managed ID field. |
||||
Shape |
The geometry field indicating the geographic location of the network analysis object. |
||||
Name |
The name of the network analysis object. |
||||
GroupName |
The name of the group the demand point is part of. This property is ignored for the maximize capacitated coverage, target market share, and maximize market share problem types. If demand points share a group name, the solver allocates all members of the group to the same facility. If constraints, such as a cutoff distance, prevent any of the demand points in the group from reaching the same facility, none of the demand points are allocated. |
||||
Weight |
The relative weighting of the demand point. A value of 2.0 means the demand point is twice as important as one with a weight of 1.0. |
||||
ImpedanceTransformation |
Any value assigned to this demand point property overrides the network analysis layer's impedance transformation value. |
||||
ImpedanceParameter |
Any value assigned to this demand point property overrides the network analysis layer's impedance parameter value. |
||||
Cutoff_[Impedance] (for instance, Cutoff_Miles, where Miles is the impedance for the network) |
Any value assigned to this demand point property overrides the network analysis layer's Cutoff [Impedance] value. |
||||
Network location fields
|
Together, these four properties describe the point on the network where the object is located. |
||||
CurbApproach |
The CurbApproach property specifies which direction of travel is possible when arriving at or departing from the demand point. Because the shortest path between two points can change with the direction of travel that is permitted when arriving at the destination, this property is used when generating impedances between demand points and facilities. This field is constrained by a domain of values and is set by default to Either side of vehicle (0), indicating the demand point can be visited from either the right or left side of the vehicle. Other options include Right side of vehicle (1) or Left side of vehicle (2) if the vehicle should arrive at or depart the demand point from a specific direction. The last CurbApproach option, No U-Turns (3), functions the same as Either side of vehicle for location-allocation analyses. |
Input/output field |
Description |
---|---|
Status |
As an input field, it indicates the status information about the demand point. This field is constrained by a domain of values, which are listed below (their coded values are shown in parentheses).
After a solve operation, the status can be modified using one of the following status values:
|
Output field |
Description |
---|---|
FacilityID |
The object ID of the facility the demand point was allocated to. If the value is null, the demand point was not allocated to a facility, or it was allocated to more than one facility; the latter is only possible in the market share problem types. |
AllocatedWeight |
This is the amount of demand allocated to chosen and required facilities. The value excludes demand allocated to competing facilities. The value can have three interpretations:
|
Lines class
The Lines class is an output-only network analysis class and therefore contains line features that are generated by the solver during the solve operation. It contains line features that connect demand points to the facilities they are allocated to. If a demand point is allocated to more than one facility, it has one line for each facility it is allocated to. If a demand point is not allocated to any facility, it won't have any corresponding lines. The output shape type can be either Straight Line or None; either way, a line feature always represents the shortest network path between the facility and the demand point; thus, the cost-related attributes reflect network costs, not straight-line distances. The reason the actual shape of the network paths are not output is that they are rarely needed in location-allocation, and generating the shape of the paths would require a substantial increase in the solve time and potentially exhaust your system's resources, especially for large problems.
Line properties
Output field |
Description |
---|---|
ObjectID |
The system-managed ID field. |
Shape |
The geometry field indicating the geographic location of the network analysis object. If the Output Shape Type property of the analysis layer is set to None, no shape is returned. Setting the Output Shape Type property to Straight Line returns straight lines that connect each demand-point/facility pair. |
Name |
The name of the line. Names are formatted so the facility name and the demand point name are listed in the order they are visited. When the Travel From property of the network analysis layer is set to Facility to Demand, the name format is [facility name] - [demand point name]; it is [demand point name] - [facility name] when the property is set to Demand to Facility. |
FacilityID |
The unique ID of the facility the line is associated with. A line is always associated with one facility and one demand point. |
DemandID |
The unique ID of the demand point the line is associated with. A line is always associated with one facility and one demand point. |
Weight |
The weight assigned from the connected demand point (DemandID) to the connect facility (FacilityID). |
TotalWeighted_[Impedance] (for instance, Total_Miles, where Miles is the impedance for the network) |
The weighted cost of traveling between the facility and the demand point. This is the Total_[Impedance] value multiplied by the weight of the demand point allocated to the facility. The active cost attribute will have an accompanying Total_[Impedance] field, but the accumulation cost attributes won't. If you need to calculate weighted impedance for accumulation attributes, you can multiply the values from the Weight and appropriate Total_[Impedance] fields. Note that though the lines have either straight or null geometries, the impedance always refers to network costs, not straight-line distances. |
Total_[Impedance] (for instance, Total_Miles, where Miles is the impedance for the network) |
The network cost of traveling between the facility and the demand point. All accumulation attributes, as well as the active cost attribute, will have an accompanying Total_[Impedance] attribute. Note that though the lines have either straight or null geometries, the impedance always refers to network costs, not straight-line distances. |
Point, line, and polygon barriers
Barriers serve to temporarily restrict, add impedance to, and scale impedance on parts of the network. When a new network analysis layer is created, the barrier classes are empty. They are populated only when you add objects into them—but adding barriers is not required.
Barriers are available in all network analysis layers; therefore, they are described in a separate topic.
Location-allocation analysis layer properties
Analysis parameters are set on the Layer Properties dialog box for the analysis layer. The dialog box can be accessed in different ways:
Learn more about opening the network analysis Layer Properties dialog box
The Analysis Settings tab
Impedance
This property specifies the network cost attribute used to define the traversal cost along the elements of the network.
Note that specifying a start time doesn't require a traffic-enabled cost attribute; yet, if the network dataset includes traffic data, a time-dependent location-allocation analysis is solved. This allows you to see how results change for different starting times.
Use Start Time
Use Start Time, in conjunction with the Time of Day and Day of Week or Specific Date properties, lets you specify what the start time from the facilities or demand points is.
Time of Day
The value you enter here represents the time of day for which you want the analysis to be solved. Specifically, the travel time is measured from either facilities or demand points for the time of day specified. The Travel From property determines whether the travel time is measured from facilities or origins.
The time you specify in Time of Day must be associated with a date. You can choose between entering a floating day (Day of Week) or a calendar day (Specific Date).
Specific Date
For a calendar day, you provide the day, month, and year that the Time of Day value is associated with.
Day of Week
For a floating date, you can choose Today or any day of the week (Sunday through Saturday) relative to the current date. Floating days enable you to configure an analysis layer that can be reused, without having to remember to change the date.
You can solve up to six days ahead relative to the current day when choosing Day of Week.
Using a start time with traffic data and time zones
If you use a time-based impedance attribute or accumulate attribute, the start time and date refers to the time zone of the edge or junction that the starting facility or demand point is located on.
Note that all origins must be in the same time zone when solving an analysis across multiple time zones using a time-based impedance attribute.
Two requirements to be aware of when solving a location-allocation analysis that spans across multiple time zones are listed below.
- All facilities must be in the same time zone when specifying a start time and travel is from facility to demand.
- All demand points must be in the same time zone when specifying a start time and travel is from demand to facility.
Travel From
When Network Analyst solves a location-allocation problem, it can calculate network costs from demand points to facilities or from facilities to demand points. Restrictions, such as one-way streets, and impedances, such as travel time, can be based on direction of travel, which can affect travel times. For instance, a facility may be a 15-minute drive from the demand point to the facility, but only a 10-minute trip when traveling from the facility to the demand point. The Travel From property can affect which facility the demand point is allocated to.
Fire departments commonly use the Facility to Demand setting, since they are concerned with the time it takes to travel from the fire station to the location of the emergency. A retail store is more concerned with the time it takes the shoppers to reach the store; therefore, stores commonly use the Demand to Facility option.
Travel From also determines the meaning of any start time that is provided. See Use Start Time above for more information.
U-turns at Junctions
Network Analyst can allow U-turns everywhere, nowhere, only at dead ends (or culs-de-sac), or only at intersections and dead ends. Allowing U-turns implies the vehicle can turn around at a junction and double back on the same street.
Output Shape Type
The results of the analysis can be represented without lines (None) or with straight lines:
- None—Lines representing the allocation of demand to facilities are not returned or displayed on the map. This is useful when you have a large number of demand points or facilities and are interested only in the tabular output.
- Straight Line—Lines that connect demand to facilities are returned and displayed on the map.
In both cases, the impedance-related costs in the solution are the same and based on shortest network paths (straight-line distance is not used).
Use Hierarchy
If the network dataset has a hierarchy attribute, you can use the hierarchy during the analysis. Using a hierarchy results in the solver preferring higher-order edges to lower-order edges. Hierarchical solves are faster, and they can be used to simulate the driver preference of traveling on freeways instead of local roads—even if that means a longer trip. Not using a hierarchy, however, yields an exact route for the network dataset.
Ignore Invalid Locations
This property allows you to ignore invalid network locations and solve the analysis layer from valid network locations only. If this option is not checked and you have unlocated network locations, the solve may fail. In either case, the invalid locations are ignored in the analysis.
Restrictions
You can choose which restriction attributes should be respected while solving the analysis. In most cases, restrictions cause roads to be prohibited, but they can also cause them to be avoided or preferred. A restriction attribute, such as Oneway, should be used when finding solutions for vehicles that must obey one-way streets (for instance, nonemergency vehicles). Other common restriction attributes include height or weight limits that prohibit some vehicles from traversing certain roads or bridges; hazardous materials restrictions that hazmat drivers need to completely bypass or at least try to avoid; and designated truck routes that truck drivers should try to follow. You can choose which restriction attributes should be respected while solving the analysis. (You can further specify whether the elements that use the restriction should be prohibited, avoided, or preferred in the Attribute Parameters tab.)
The Advanced Settings tab
The Advanced Settings tab of the Layer Properties dialog box is where you choose the problem type and set its properties. The problem type you should choose depends on the kind of facility you are locating, because different kinds of facilities have different priorities and constraints. For instance, a fire department may have a mandate that it locate facilities in such a way that it can reach everyone in the community within four minutes. A restaurant may try to maximize patronage by locating in such a way that as many people as possible are within a 10-minute drive and, furthermore, as many of those people are as close as possible to the restaurant. Both examples can be solved with a location-allocation analysis, but they require different problem types. (The minimize facilities problem type would best fit the fire department's objectives, while the maximize attendance problem type would work well for the restaurant.)
The settings you make on the Advanced Settings tab change constraints and influence the solver's priorities when locating facilities.
Problem Type
This Problem Type property allows you to choose the location-allocation problem type. The problem types are listed and described below.
Problem type |
Description | ||
---|---|---|---|
Minimize Impedance (P-Median) |
Facilities are located such that the sum of all weighted costs between demand points and solution facilities is minimized. The arrows in the graphic below highlight the fact that allocation is based on distance among all demand points. This problem type is traditionally used to locate warehouses, because it can reduce the overall transportation costs of delivering goods to outlets. Since Minimize Impedance reduces the overall distance the public needs to travel to reach the chosen facilities, the minimize impedance problem without an impedance cutoff is ordinarily regarded as more equitable than other problem types for locating some public-sector facilities such as libraries, regional airports, museums, department of motor vehicles offices, and health clinics. The following list describes how the minimize impedance problem type handles demand:
|
||
Maximize Coverage |
Facilities are located such that as many demand points as possible are allocated to solution facilities within the impedance cutoff. Maximize Coverage is frequently used to locate fire stations, police stations, and ERS centers, because emergency services are often required to arrive at all demand points within a specified response time. Note that it is important for all organizations, and critical for emergency services, to have accurate and precise data so that analysis results correctly model real-world results. Pizza delivery businesses, as opposed to eat-in pizzerias, try to locate stores where they can cover the most people within a certain drive time. People who order pizzas for delivery don't typically worry about how far away the pizzeria is; they are mainly concerned with the pizza arriving within an advertised time window. Therefore, a pizza-delivery business would subtract pizza-preparation time from their advertised delivery time and solve a maximize coverage problem to choose the candidate facility that would capture the most potential customers in the coverage area. (Potential customers of eat-in pizzerias are more affected by distance, since they need to travel to the restaurant; thus, the attendance maximizing or market share problem types would better suit eat-in restaurants.) The following list describes how the Maximize Coverage problem handles demand:
|
||
Maximize Capacitated Coverage | Facilities are located such that as many demand points as possible are allocated to solution facilities within the impedance cutoff; additionally, the weighted demand allocated to a facility can't exceed the facility's capacity. Maximize Capacitated Coverage behaves like either the Minimize Impedance or Maximize Coverage problem type but with the added constraint of capacity. (If Impedance Cutoff is set to <none>, it behaves like a capacitated version of Minimize Impedance.) You can specify a capacity for a facility by assigning a numeric value to its Capacity property. If the Capacity property is null, the facility is assigned a capacity from the Default Capacity property of the analysis layer. Use-cases for Maximize Capacitated Coverage include creating territories that encompass a given number of people or businesses, locating hospitals or other medical facilities with a limited number of beds or patients who can be treated, or locating warehouses whose inventory isn't assumed to be unlimited. The following list describes how the Maximize Capacitated Coverage problem handles demand:
| ||
Minimize Facilities |
Facilities are located such that as many demand points as possible are allocated to solution facilities within the impedance cutoff; additionally, the number of facilities required to cover demand points is minimized. Minimize Facilities is the same as Maximize Coverage but with the exception of the number of facilities to locate, which in this case is determined by the solver. When the cost of building facilities is not a limiting factor, the same kinds of organizations that use Maximize Coverage (emergency response, for instance) use Minimize Facilities so that all possible demand points will be covered. Minimize Facilities is also used to choose school bus stops when students are required to walk a certain distance before another school bus stop is provided closer to the student's residence. The following list describes how the Minimize Facilities problem handles demand:
|
||
Maximize Attendance |
Facilities are chosen such that as much demand weight as possible is allocated to facilities while assuming the demand weight decreases in relation to the distance between the facility and the demand point. Specialty stores that have little or no competition benefit from this problem type, but it may also be beneficial to general retailers and restaurants that don't have the data on competitors necessary to perform market share problem types. Some businesses that might benefit from this problem type include coffee shops, fitness centers, dental and medical offices, bowling alleys, and electronics stores. Public transit bus stops are often chosen with the help of Maximize Attendance. Maximize Attendance assumes that the farther people have to travel to reach your facility, the less likely they are to use it. This is reflected in how the amount of demand allocated to facilities diminishes with distance. You specify the distance decay with the impedance transformation. The following list describes how the Maximize Attendance problem handles demand:
|
||
Maximize Market Share |
A specific number of facilities are chosen such that the allocated demand is maximized in the presence of competitors. The goal is to capture as much of the total market share as possible with a given number of facilities, which you specify. The total market share is the sum of all demand weight for valid demand points. The market share problem types require the most data because, along with knowing your own facilities' weight, you also need to know that of your competitors' facilities. The same types of facilities that use the Maximize Attendance problem type can also use market share problem types given that they have comprehensive information that includes competitor data. Large discount stores typically use Maximize Market Share to locate a finite set of new stores. The market share problem types use a Huff model, which is also known as a gravity model or spatial interaction. The following list describes how the Maximize Market Share problem handles demand:
|
||
Target Market Share |
Target Market Share chooses the minimum number of facilities necessary to capture a specific percentage of the total market share in the presence of competitors. The total market share is the sum of all demand weight for valid demand points. You set the percent of the market share you want to reach and let the solver choose the fewest number of facilities necessary to meet that threshold. The market share problem types require the most data because, along with knowing your own facilities' weight, you also need to know that of your competitors' facilities. The same types of facilities that use the Maximize Attendance problem type can also use market share problem types given that they have comprehensive information that includes competitor data. Large discount stores typically use the Target Market Share problem type when they want to know how much expansion would be required to reach a certain level of the market share or see what strategy would be needed just to maintain their current market share given the introduction of new competing facilities. The results often represent what stores would like to do if budgets weren't a concern. In other cases where budget is a concern, stores revert to the Maximize Market Share problem and simply capture as much of the market share as possible with a limited number of facilities. The following list describes how the target market share problem handles demand:
|
Facilities To Choose
Use the Facilities To Choose property to specify the number of facilities the solver should locate.
The facilities with a FacilityType value of Required are always part of the solution when there are more facilities to find than required facilities; any excess facilities to choose are picked from candidate facilities.
Any facilities that have a FacilityType value of Chosen before solving are treated as candidate facilities at solve time.
The Facilities To Choose property is disabled for the Minimize Facilities problem type, since the solver determines the minimum number of facilities to maximize coverage.
The Facilities To Choose property is disabled in the Target Market Share problem, because the solver searches for the minimum number of facilities required to capture the specified market share.
Impedance Cutoff
Impedance Cutoff specifies the maximum impedance at which a demand point can be allocated to a facility. The maximum impedance is measured by the least-cost path along the network. If a demand point is outside the cutoff, it is left unallocated. This property might be used to model the maximum distance that people are willing to travel to visit your stores or the maximum time that is permitted for a fire department to reach anyone in the community.
Demand points have a Cutoff_[Impedance] property, which, if set, overrides the Impedance Cutoff property of the analysis layer. You might find that people in rural areas are willing to travel up to 10 miles to reach a facility while urbanites are only willing to travel up to two miles. You can model this behavior by setting the impedance cutoff value of the analysis layer to 10 and setting the Cutoff_Miles value of the demand points in urban areas to 2.
Impedance Transformation
This sets the equation for transforming the network cost between facilities and demand points. This property, coupled with the Impedance Parameter, specifies how severely the network impedance between facilities and demand points influences the solver's choice of facilities.
Applying a transformation can equalize the overall distances that demand points must travel to reach their nearest facility. Libraries and health clinics are concerned with equity of service, so they often locate facilities using a minimize impedance problem type with a power impedance transformation and an impedance parameter of 2.0. This way, a minority of faraway patrons or patients is not burdened with comparatively excessive travel distances.
Some stores gather data on where their customers live; as they collect data, the effect distance has on customer behavior is revealed. One benefit of the data is that stores can establish and calibrate impedance transformations, which can lead to better site selections in the future.
Accurately fitting an impedance transformation and parameter to describe your priorities and/or model the behavior of your demand points requires careful study, including research on topics like the Huff model and distance decay. The first step, however, is understanding how costs are transformed. In the following list of transformation options, d refers to demand points and f, facilities. So impedancedf is the shortest-path network impedance between demand point d and facility f, and costdf is the transformed network impedance between the facility and demand point. Lambda (λ) denotes the impedance parameter.
Impedance transformation |
Description |
---|---|
Linear |
costdf = λ * impedancedf Note: When you set the Impedance Transformation property to Linear, the impedance parameter is always internally set to one, since changing the value of a parameter on a linear transformation doesn't affect the solver's results. |
Power |
costdf = impedancedfλ |
Exponential |
costdf = e(λ * impedancedf) Exponential transformations are commonly used in conjunction with an impedance cutoff. |
The next set of graphics and tables use Minimize Impedance to demonstrate the potential effects of using different impedance transformations and parameters.
A linear transformation always uses a parameter value of one, so the cost is unchanged, and facility B minimizes that cost.
Facility |
Total cost (Linear) |
Solution facility |
---|---|---|
A |
3+3+5=11 |
|
B |
7+1+1=9 |
Facility B is chosen. |
A power transformation with a parameter of two amplifies longer distances enough that facility A minimizes cost instead.
Facility |
Total cost (Power transformation, λ = 2) |
Solution facility |
---|---|---|
A |
32+32+52=43 |
Facility A is chosen. |
B |
72+12+12=51 |
An exponential transformation with an impedance parameter of 0.02 will favor nearby demand points, so facility B is the solution facility in this case. (The graphic is omitted, since it would look the same as the linear transformation graphic.)
Facility |
Total cost (Exponential transformation, λ = 0.02) |
Solution facility |
---|---|---|
A |
e0.02*3+e0.02*3+e0.02*5=3.23 |
|
B |
e0.02*7+e0.02*1+e0.02*1=3.19 |
Facility B is chosen. |
Impedance Parameter
This property allows you to set a parameter, λ, for use with the Impedance Transformation property. However, when Impedance Transformation is set to Linear, the impedance parameter value is ignored, and a value of one is used instead. See the impedance transformation property (above) for more information.
Demand points have an ImpedanceParameter property, which, if set, overrides the Impedance Parameter property of the analysis layer. You might determine that the impedance parameter should be different for urban and rural residents. You can model this by setting the impedance transformation for the analysis layer to match that of rural residents and setting the impedance transformation for the demand points in urban areas to match that of urbanites.
Target Market Share
This property is specific to the Target Market Share problem type. It is the percentage of the total demand weight that you want your solution facilities to capture. The solver chooses the minimum number of facilities required to capture the target market share specified by this numeric value.
Default Capacity
This property is specific to the Maximize Capacitated Coverage problem type. It is the capacity assigned to all facilities in the analysis. You can override the default capacity for a facility by specifying a value in the facility's Capacity property.
The Accumulation tab
Under the Accumulation tab, you can choose cost attributes from the network dataset to be accumulated on the line objects, which represent least-cost routes along the network. These accumulation attributes are purely for reference; the solver only uses the cost attribute specified by the analysis layer's Impedance parameter to calculate the results.
For each cost attribute that is accumulated, a Total_[Impedance] property is added to the lines that are output by the solver, where [Impedance] is replaced with the name of the accumulated impedance attribute.
Assume you set the impedance attribute to Minutes because you want to base the analysis on routes that minimize travel time. Even though minimizing travel time is most important to you, you would also like to know the length of the quickest routes. Suppose you have another cost attribute, Miles, that you check on the Accumulation tab. After solving, the output line features have fields named Total_Minutes and Total_Miles, which provide the time to travel along the quickest route and the distance of that route, respectively.
Conversely, you can base the analysis on shortest routes and accumulate travel time to determine how long it takes to complete each trip between a facility and a demand point. If you have a traffic-enabled network dataset, you can even find this information for a specific time of day and account for variable traffic speeds. To do this, choose a distance-based cost attribute for the impedance of the analysis layer, use a start time, and accumulate time using a time-dependent cost attribute.
The Network Locations tab
The parameters on the Network Locations tab are used to find network locations and set values for their properties.
Solving and interpreting the results of a location-allocation analysis
After creating a location-allocation analysis layer, populating the required network analysis objects, and setting appropriate analysis properties, the solution for the location-allocation problem can be determined by clicking the Solve button on the Network Analyst toolbar.
After solving, if the Output Shape Type property is set to Straight Lines, the location-allocation solver draws lines between the solution facilities and their allocated demand points and sets the FacilityType property of a candidate facility to Chosen if it is part of the solution.
The Network Analyst window also updates the name of the Lines class to show the number of line objects it contains.
During the solve operation, the location-allocation solver creates an internally managed origin-destination (OD) cost matrix between the facilities and demand points using the active network cost attribute as impedance. The solver references the OD cost matrix when analyzing potential solutions to the problem.
Learn more about OD cost matrix analysis
The location-allocation problem is one of combinatorial optimization, which means the number of potential solutions can grow quickly:
Candidate facilities |
Facilities to find |
Number of potential solutions |
---|---|---|
10 |
5 |
252 |
30 |
15 |
155,177,520 |
50 |
25 |
126,410,606,437,752 |
100 |
50 |
1.009 x 1029 |
500 |
250 |
1.167 x 10149 |
Due to the combinatorial nature of the location-allocation problem, exhaustive search techniques are impractical for finding good solutions within reasonable search times (especially for large problem sets). Therefore, heuristics are employed to carry out faster searches. More information about the heuristic approach used by Network Analyst can be found in the following topic:
Learn more about algorithms used by Network Analyst
After successfully choosing facilities and allocating demand points, the location-allocation solver outputs results in the appropriate output fields of the network analysis objects.
Interpreting the results of a location-allocation analysis
After successfully solving a location-allocation problem, you can inspect the results by looking at the properties of the facilities, demand points, and lines. You may also want to make selections on the analysis classes to better understand the results. The following list shows a couple of common postanalysis selections:
- To select all demand points allocated to a particular solution facility for any problem type besides the market share problems, select the demand points with a FacilityID value equal to the ID of the facility you are interested in.
- To select all demand points allocated to a particular solution facility for the market share problems, join the Lines attribute table to the Demand Points table using the ObjectID from Demand Points and the DemandID from Lines as the join fields. Next, select the value of the FacilityID you want to inspect from the LALines.FacilityID field.