Skip To Content

Choose Best Facilities

Note:

This functionality is currently only supported in Map Viewer Classic (formerly known as Map Viewer). It will be available in a future release of the new Map Viewer.

Choose Best Facilities The Choose Best Facilities tool finds the set of facilities that will best serve demand from surrounding areas.

Note:

If you do not see the Choose Best Facilities tool in Map Viewer Classic, contact your portal administrator. Your portal may not be configured for routing, or you may not have privileges to run the tool. Choose Best Facilities requires the following directions and routing services:

  • Location Allocation (Asynchronous)
  • Routing Utilities

For more information, see Configure utility services.

Workflow diagram

Choose Best Facilities workflow diagram

Terminology

TermDescriptionExample

Facility

Locations that offer some kind of service

Fire stations, schools, libraries, stores, and distribution centers

Demand Location

Locations that have a need for a service that a facility can meet

Street addresses of houses, students, customers, and businesses

Examples

  • A county library system is undertaking a community outreach program. They use Allocate to existing facilities to assign neighborhoods to their closest library branch and find out how many potential patrons each branch is serving.
  • A national grocery store chain has just taken over 18 stores in a county from another chain that went bankrupt last year, leaving the stores sitting empty. They want to set up two new distribution centers to service the stores and have identified 7 warehouses that, with some modification, will meet their needs. They want to choose the 2 stores that will minimize the total time the delivery trucks spend on the road each day. They use Minimize travel to find the best location for the distribution center to minimize the overall travel time (and hence cost) to deliver to the chain of grocery stores.
  • A city is planning to create a new park that will serve as a green space for several neighborhoods. They use Maximize coverage to ensure the greatest number of the city's residents live within a 5-minute walk of the park.
  • It is tornado season and the county emergency management agency has identified school auditoriums that have been used in the past as disaster relief centers. However, in recent years, the capacity of the centers has nearly been exceeded, so this year they think they will need three additional centers. They have identified a number of community centers and church halls that might be available. Based on square footage, they have estimated the number of beds each center would be able to provide. They want to assign residents to their nearest center, find out how much of the population is covered by the centers, and determine if there are parts of the mainly rural county where the number of beds is not adequate so they can add more centers. They use Maximize coverage with capacity to find the best locations for the disaster relief centers to ensure the greatest number of people are within a half-mile of a center.
  • A national pet store chain is moving into a new market—a large suburban county—and has identified a number of empty properties that could be used for the stores. Their goal is to locate the stores so that 40 percent of the county's pet owners are no more than a 10-minute drive from a store. They want to find out how many stores they'll need to open to meet their goal and where the stores should be located. They use Cover a percentage of demand to find the best locations for the pet stores.

Usage notes

The Choose Best Facilities tool requires input point features to represent demand locations and facilities. You must have at least one point layer on your map to open the tool.

The Choose Best Facilities tool allows you to specify a goal that describes the type of problem you are solving. The tool is optimized to provide a solution to that particular goal. Regardless of the goal, essentially the same underlying method is used to reach a solution: the demand amount from a given demand location is allocated to the nearest facility. The goals vary in how the interplay between distance (or time) and demand is handled. The tool considers travel distance or time, amount of demand, and, in some cases, the capacity of the facilities. For more information on selecting a goal, see the How Choose Best Facilities works section.

GoalDescription

Allocate to existing facilities Allocate to existing facilities

Assign demand to facilities based on the capacity at the facility and the amount of demand from the surrounding area

Minimize travel Minimize travel

Choose facilities so the overall travel time or distance from all demand locations to their assigned facility is minimized.

Maximize coverage Maximize coverage

Choose facilities so the maximum amount of demand is allocated, with all the demand from each demand location allocated to the single facility closest to it.

Maximize coverage with capacity Maximize coverage with capacity

Choose facilities so the maximum amount of demand is allocated without exceeding the capacity of any facility.

Cover a percentage of demand Cover a percentage of demand

Choose the minimum number of facilities needed to reach the specified percentage of demand.

The Measure for Choose Best Facilities is based on a travel mode. Some travel modes have an option for using traffic conditions. When traffic conditions are used, they can be based on live conditions or typical conditions for a specified day of the week and time. Live traffic conditions can be offset up to 12 hours from the current time. Times for typical conditions can be set by 15-minute intervals for the entire day and night.

Travel modes can be configured by the administrator of your organization. The administrator can also add new travel modes or remove travel modes that are not necessary for your organization. The default distance measure will be in Miles or Kilometers, depending on the Units setting in your profile.

Travel ModeDescriptionSpecifications

Walking Time Walking Time

Follows paths and roads that allow pedestrian traffic and finds solutions that optimize travel time. The walking speed is set to 5 kilometers per hour.

Walking speed is set at 5 kilometers (3.1 miles) per hour. The walking speed can be configured by the administrator of your organization.

Rural Driving Distance Rural Driving Distance

Models the movement of cars and other similar small automobiles, such as pickup trucks, and finds solutions that optimize travel distance. Travel obeys one-way roads, avoids illegal turns, and follows other rules that are specific to cars but does not discourage travel on unpaved roads.

None

Driving Time Driving Time

Models the movement of cars and other similar small automobiles, such as pickup trucks, and finds solutions that optimize travel time. Travel obeys one-way roads, avoids illegal turns, and follows other rules that are specific to cars. When you specify a start time, dynamic travel speeds based on traffic are used where it is available.

Use traffic is unchecked by default. The driving speed will be based on historical and live traffic data.

Traffic can be based on live conditions or typical conditions for a specified day of the week and time.

Verify whether traffic data is available in your region by clicking the See availability link in the tool pane.

Driving Distance Driving Distance

Models the movement of cars and other similar small automobiles, such as pickup trucks, and finds solutions that optimize travel distance. Travel obeys one-way roads, avoids illegal turns, and follows other rules that are specific to cars.

None

Walking Distance Walking Distance

Follows paths and roads that allow pedestrian traffic and finds solutions that optimize travel distance.

None

Rural Driving Time Rural Driving Time

Models the movement of cars and other similar small automobiles, such as pickup trucks, and finds solutions that optimize travel time. Travel obeys one-way roads, avoids illegal turns, and follows other rules that are specific to cars but does not discourage travel on unpaved roads. When you specify a start time, dynamic travel speeds based on traffic are used where it is available.

Use traffic is unchecked by default. The rural driving speed will be based on historical and live traffic data.

Traffic can be based on live conditions or typical conditions for a specified day of the week and time.

Verify whether traffic data is available in your region by clicking the See availability link in the tool pane.

Trucking Time Trucking Time

Models basic truck travel by preferring designated truck routes and finds solutions that optimize travel time. Routes must obey one-way roads, avoid illegal turns, and so on.

Follows rules applicable to heavy trucks.

The trucking speed will be based on either historical average speeds for automobiles or the posted speed limits for trucks, whichever is smaller.

Use traffic is unchecked by default. The trucking speed will be based on historical and live traffic data but will not exceed the posted trucking speed.

Traffic can be based on live conditions or typical conditions for a specified day of the week and time.

Trucking Distance Trucking Distance

Models basic truck travel by preferring designated truck routes and finds solutions that optimize travel distance. Routes must obey one-way roads, avoid illegal turns, and so on.

Follows rules applicable to heavy trucks.

None

A Travel Direction must also be specified. The two options are Facility to Demand Facility to Demand and Demand to Facility Demand to Facility. Choose Best Facility uses Travel Direction to account for street rules, such as one-way streets and no left turns at certain intersections.

Up to three input point layers can be used depending on your chosen goal and specifications of your scenario. A Demand Locations Layer is required for every goal. A Required Facilities Layer is an option for all goals but is only required for Allocate to existing facilities. A Candidate Facilities Layer is required for all goals except Allocate to existing facilities. For more information on facilities and demand locations, see the How Choose Best Facilities works section.

The following table summarizes the options that are available with each goal. The options for many parameters include Unlimited Unlimited, Constant Constant, and Field Field.

Goal Amount of demand at each location Maximum travel range Percent of Demand to cover Capacity (Required Facilities Layer) Capacity (Candidate Facilities Layer) Number of candidates to choose

Allocate to existing facilities Allocate to existing facilities

Constant Field

Unlimited Constant Field

Not applicable

Unlimited Constant Field

Not applicable

Not applicable

Minimize travel Minimize travel

Constant Field

Unlimited Constant Field

Not applicable

Not applicable

Not applicable

Up to 1,000

Maximize coverage Maximize coverage

Constant Field

Constant Field

Not applicable

Not applicable

Not applicable

Up to 1,000

Maximize coverage with capacity Maximize coverage with capacity

Constant Field

Unlimited Constant Field

Not applicable

Constant Field

Constant Field

Up to 1,000

Cover a percentage of demand Cover a percentage of demand

Constant Field

Unlimited Constant Field

0-100

Not applicable

Not applicable

Not applicable

The Select barrier layers parameter can be used to specify one or more features that act as temporary restrictions when traveling on the underlying streets.

The output includes three layers: facilities that have demand assigned to them, demand locations that are allocated to facilities, and allocation lines connecting the demand locations to the assigned facilities. The allocation lines are drawn as straight lines, regardless of the travel mode used to connect the facility and demand locations.

Limitations

  • There is a limit of 10,000 features in the demand locations layer.
  • There is a limit of 100 features in the facilities layer.
  • An error will occur if the tool takes more than 60 minutes to execute. If this error occurs, try rerunning the analysis with fewer input features.
  • You can specify up to 250 features to act as point barriers.
  • If the number of street features intersected by all the line barriers exceeds 500, the tool returns an error.
  • If the number of street features intersected by all the polygon barriers exceeds 2,000, the tool returns an error.

How Choose Best Facilities works

Select the appropriate goal

The Choose Best Facilities tool allows you to specify the type of problem you are solving, called the goal. The tool is optimized to provide a solution to that particular goal. Regardless of the goal, essentially the same underlying method is used to reach a solution: the demand amount from a given demand location is allocated to the nearest facility. The goals vary in how the interplay between distance (or time) and demand is handled; the tool considers both travel distance or time and amount of demand and, in some cases, the capacity of the facilities. If a goal favors minimizing travel time, for example, the tool will still secondarily try to maximize demand allocated. Similarly, if the goal is to maximize demand allocated, the tool will do so by minimizing travel time (by assigning demand locations to the closest facility rather than just any facility).

Depending on your data and the settings you use, different goals may produce the same or similar results. Regardless, you should specify the goal that is the most appropriate for your analysis. The following list gives an overview of the different goals you can specify. Details about each goal can be found in the sections below.

  • If you want an assignment of demand to facilities based on closest facility to demand, and the facilities have limited or unlimited capacity, use Allocate to existing facilities.
  • If you want to minimize the overall travel time or distance between the demand locations and the facilities, use Minimize travel.
  • If you want to choose facilities, and you know how many facilities are needed, the facilities have unlimited capacity, and you want to maximize the amount of demand covered with a specific time or distance of the facilities, use Maximize coverage.
  • If you want to choose facilities, and you know how many facilities are needed, and the facilities have limited capacity, use Maximize coverage with capacity.
  • If you want to find out how many facilities you need to cover a given amount of demand, and the facilities have unlimited capacity, use Cover a percentage of demand.

With each of the goals, the results will show you which demand locations are allocated to which facilities, the travel time and travel distance between a demand location and its assigned facility, the total amount of demand allocated to each facility, and the total weighted demand for each facility (such as the total distance or total travel time for all students to travel to their assigned school). If you are choosing locations from among candidates, you will also see which candidates provide the best solution (in terms of allocating demand in the most efficient way, given the goal you have selected).

Allocate to existing facilities

This goal assigns demand to facilities based on the capacity at the facility and the amount of demand from the surrounding area. Demand is allocated to the closest facility until the available capacity is met. If you specify a maximum travel range, any demand locations beyond the range will not be assigned to a facility, even if all the demand has not been completely allocated.

Since you are not choosing locations for a new facility, you do not specify a candidate facilities layer.

The capacity can be unlimited, be the same for all facilities, or can vary between facilities (in which case, you specify a field in the facilities layer table containing the capacity values).

If the capacity is unlimited, the goal assigns demand to facilities so the overall travel time or distance between the demand locations and the facilities is minimized. If a capacity is specified, the goal attempts to assign demand to facilities so the maximum amount of demand is allocated (even at the expense of increasing the overall travel time or distance).

Minimize travel

This goal chooses facilities so the overall travel time or distance from all demand locations to their assigned facility is minimized. This goal is often applicable when there is travel between the facility and all demand locations on a regular basis.

The goal tends to equalize the distance that people have to travel to a facility and is often used for locating public facilities, such as libraries or health care centers, to ensure equal access from all parts of the community.

Note:

Other goal types—such as those that maximize overall demand allocated—may result in some people having to travel much farther to one facility than other people do to another facility.

Maximize coverage

This goal chooses facilities so the maximum amount of demand is allocated, with all the demand from each demand location allocated to the single facility closest to it.

A finite maximum travel range is required for this goal; otherwise, all of the demand might be assigned to a single facility. Demand locations that are beyond the distance or time of any of the facilities will not be allocated (this will show you where demand is not being met and where additional facilities may be needed).

If you want to find out where to add facilities, include the existing facilities in the required facilities layer and the potential locations as the candidate facilities layer. If you are locating new facilities in an area where none exist, include a candidate facilities layer only, with no required facilities layer.

Maximize coverage with capacity

This goal chooses facilities so the maximum amount of demand is allocated without exceeding the capacity of any facility. All the demand from each demand location is allocated to the single facility closest to it that has available capacity (that is, if assigning a demand location to a facility would exceed the available capacity of the facility, the demand location will not be assigned, rather than assigning a portion of the demand).

A finite capacity for each facility is required for this goal. The capacity can be the same for all facilities or can vary between facilities (in which case, you specify a field in the facilities layer containing the capacity values).

If you specify a limited maximum travel range, only demand locations within the time or distance of a facility will be allocated to the facility. Demand locations that are beyond the distance or time of any of the facilities will not be allocated, even if available capacity has not been met.

If you want to find out where to add facilities, include the existing facilities in the required facilities layer and the potential locations as the candidate facilities layer. If you are locating new facilities in an area where none exist, include a candidate facilities layer only, with no required facilities layer.

Cover a percentage of demand

This goal chooses the minimum number of facilities needed to reach the specified percentage of demand. A demand location that is within the maximum travel range of two or more facilities will have its demand split proportionally between the facilities based on its distance from each. This goal is often used when there is a choice of which facility to visit and, it is assumed that, in general, the closest facility will be chosen (all other things being equal).

Unlike with the other goals that choose facilities where you specify how many facilities to choose, this goal chooses the number of facilities for you based on the percentage of demand you want to meet. It assumes the facilities do not have a limited capacity.

If you want to find out where to add facilities, include the existing facilities in the required facilities layer and the potential locations as the candidate facilities layer. If you are locating new facilities in an area where none exist, include a candidate facilities layer only, with no required facilities layer. You would also use a candidate layer alone if you have existing facilities and want to know if any of them could be closed without reducing the percentage of demand currently being met.

If you specify a limited maximum travel range, only demand locations within the time or distance of a facility will be allocated to the facility. Demand locations that are beyond the distance or time of any of the facilities will not be allocated, even if the specified percentage of demand has not been met.

About facilities

Facilities provide a service to the surrounding area in one form or another. They can be permanent structures, such as fire stations, schools, or health clinics, or they can be transitory, such as school bus stops or staging locations for emergency response crews.

The Choose Best Facilities tool allows you to specify both required facilities and candidate facilities. Required facilities are existing facility locations that must be used in the analysis, whereas candidate facilities represent locations where new facilities can be placed. If you are allocating demand to existing facilities (such as when allocating students to existing schools or allocating households to existing fire stations), specify a Required Facilities Layer so demand will be allocated among the existing facilities. If the facilities are yet to be built (such as elementary schools or bus stops in a new planned community), specify a Candidate Facilities Layer and indicate the number of candidates to choose from the set of candidates.

You can include a combination of required and candidate facilities in your analysis. For example, there may be several existing fire stations in a city, and the city needs to build two new ones at locations chosen from a set of candidate locations, with a goal of servicing the most households. In this case, you would include the existing fire stations as required facilities, the potential locations as candidates, and specify 2 as the number of candidates to choose. The Choose Best Facilities tool will identify the two new locations that, in conjunction with the existing stations, will cover the most households.

Facilities can have unlimited capacity, meaning they can meet all the demand assigned to them, or limited capacity. If all the facilities have the same limited capacity, such as the number of households that a fire station can serve, specify a constant value. If the capacity varies between facilities, such as the number of available slots for freshmen at each high school, specify a field containing the capacity value for each facility.

About demand locations

Demand represents the need for a service that the facilities can meet. The demand locations represent the locations of individual features from which there is either travel to or from a facility. For example, demand locations can be points such as the street addresses of houses, students, customers, or businesses. Students could be traveling from their house—a demand location—to a school—a facility. Alternatively, a fire truck could be traveling from the fire station—a facility—to a street address—a demand location.

Demand locations can also represent data aggregated by area, such as the number of households in each census block. Demographic data is often available only as aggregated data by census areas (blocks, tracts, or counties), so the demand location would be a point representing the entire area.

Note:

Keep in mind that, for aggregated data, the point location may not accurately reflect the location of most of the individuals in the area, especially if the area is relatively large. Where the point is located could determine whether the demand associated with the area gets allocated and which facility it gets allocated to.

Demand locations have an associated amount of demand. If the demand location represents a single occurrence, such as a customer or a student, the amount of demand is one for all demand locations. However, the amount of demand can be a quantity associated with the demand location. For example, if you are allocating workers to bus stops, each demand location represents an individual business and the amount of demand is the number of employees at each. For demand locations representing aggregated data, the amount of demand always represents a quantity associated with each location, such as the number of households in each census block or the population of each census tract.

The amount of demand can represent values other than the number of people or things. It can also represent amounts, such as the monetary value of structures, the total miles of streets to be covered by a fire station, or the amount spent annually by each customer.

Similar tools

Use Choose Best Facilities to find the set of facilities that will best serve demand from surrounding areas. Other tools may be useful in solving similar but slightly different problems.

Map Viewer Classic analysis tools

If you are trying to select existing features with a query, use the Find Existing Locations tool.

If you are trying to use a query to create new features, use the Derive New Locations tool.

ArcGIS Pro analysis tools

The Choose Best Facilities tool performs the functions of the Location-allocation solver in ArcGIS Network Analyst extension.