ArcGIS Blog

Analytics

ArcGIS Business Analyst

Solve territories using a genetic algorithm

By Daniel Lee

With the release of ArcGIS Business Analyst Pro 3.0, there is a new option for solving a territory solution. The option is based on a genetic algorithm that uses heuristics to solve your territories. As shown in the figure below, the new algorithm option is called Genetic. The other option, Classic, is the original algorithm that has been used in Territory Design since it was first introduced in ArcGIS Pro.

Territory Design solve tool methods
Territory Design solve tool methods

A heuristic technique is a problem-solving approach that is simplified rather than optimal or precise. For Territory Design, the new genetic algorithm creates many random solutions, and finds multiple solutions that meet your criteria by mixing several solutions from a random set, until the best outcome is found.

There are also two new parameters that impact quality and performance when using the new algorithm:

  • iteration limit
  • number of possible candidate solutions.

The larger the values, the larger the number of possible solutions and potentially more accurate territories.  The new genetic algorithm is well suited for complex solutions (e.g., a solution with attribute and distance constraints versus just balanced variables), providing more accurate results, but at the cost of performance.

On the other hand, the classic Territory Design algorithm only uses a single random solution, based on a set of random territory centers. The algorithm tries to improve the solution by reassigning territory features and moving the initial centers to a better location. The classic solution is well suited for simple solutions and performance is generally faster.

The examples below show a solution solved with the new genetic algorithm and the same solution solved with the classic algorithm. Notice that the territories on the left, solved using the genetic algorithm, are better balanced than the territories on the right, which used the classic algorithm. Furthermore, the genetic algorithm took approximately ten minutes to solve while the classic algorithm took approximately five minutes. The example below uses only a small sample with approximately 750 records and contained within a small geographic area. With larger datasets (for example, 100,000-1,000,000 records), the solution could take hours or days. As a result, in some cases, the classic algorithm may have huge performance benefits.

Balanced territory comparision
Balanced territories

Share this article

Subscribe
Notify of
0 Comments
Oldest
Newest
Inline Feedbacks
View all comments