CLUSTERING Add-In (beta)

The Clustering Wizard provides you with an automated method of grouping a set of points or areas into compact clusters, while placing optional constraints on the clusters such as maximum size or a balanced total field, such as Sales or Population. To use the tool, you will need a map containing a point or area layer that you would like to group into clusters.

The goal of clustering is to produce groupings that are as compact as possible, where there may also be limits on the size of each cluster. For example:

  • You want to assign customers to salespeople. Since each salesperson has to travel frequently from one customer site to another, you want each group of customers to be compact. There are also limits on the number of customers each salesperson can handle.
  • You want to create groups of users of a telecommunications service, with the long-term goal of finding good transmitter locations.
  • You manage a fleet of moving vans that pick up and deliver household goods. You want to cluster the households to reduce the distance traveled by each van. The vans are limited in the quantity of goods that they can carry.

You can cluster point or area features.

Specifying a Cluster Capacity

The clustering procedure lets you specify a maximum cluster size or cluster capacity, which limits the number of features assigned to each cluster. When you specify a capacity, Maptitude adds together the sizes of all the features that are assigned to a cluster, and stops adding features when the capacity limit is reached.

The size of a feature and the capacity of a cluster can be expressed in many different ways. For example:

  • When creating service territories from ZIP Codes, the size for each ZIP Code could be the number of service calls that are made in that ZIP Code. The clusters would have a maximum number of service calls.
  • When creating delivery zones, the size for each customer could be the volume of product to be delivered. The clusters would have a maximum volume.

When there are limits on cluster capacity, it is possible for the clustering procedure to produce clusters that overlap. This could occur in the following situations:

  • The features nearest to a cluster are too large in size to be assigned to the cluster, and are therefore assigned to a different cluster
  • Some feature or features located further away from the cluster in question are smaller in size, and can therefore be assigned to the cluster without exceeding the capacity

In particular, if there is a very tight capacity constraint, it is likely that features from one cluster may be located in the midst of features that are assigned to other clusters.

Balancing Clusters

You can leave the clusters unbalanced, or you can balance clusters based on:

  • The number of features
  • The cluster size, computed using the cluster capacity field
  • The average cost of travel, which can be based on travel distance, travel time, or straight-line distance

You control how well the districts are balanced by specifying the maximum acceptable percentage difference for the number of features in each cluster, the size of each cluster, or the cost of servicing each cluster. This value is known as the tolerance, and can be set to any number between 0 and 100 percent.

Clustering Results

When you run the clustering procedure, Maptitude will display the resulting clusters on the map with a color theme based on the ID of the most centrally located feature in each cluster, known as the seed. It will also display a point layer that indicates the geographically weighted center of each cluster and a joined view of the clustered layer with fields indicating the seed to which each feature is assigned and the distance or time cost of travel between that feature and its seed.

To install:*

  1. Download the file clustering-addin.exe.
  2. Double-click the executable to launch the installation.
  3. Confirm that you’d like to allow the installer to make changes to your PC and follow the instructions in the installation wizard.
  4. Once installed, the add-in can be launched by opening a Maptitude map and choosing Tools>GIS Developer's Kit>Add-Ins>Clustering.

*NOTE: The Clustering add-in works only with Maptitude 2023 or later.

To Create Clusters

  1. Open or create a map containing the point/area layer which you would like to group into clusters. If necessary, create a selection set on this layer if you only wish to make clusters out of part of the layer.
  2. Choose Tools>GIS Developer's Kit>Add-Ins>Clustering to open the Clustering Wizard.
  3. Make changes to the map settings as follows:
    To do this... Do this...
    Choose the layer to split into clustersChoose a layer from the Layer drop-down list
    Choose the records to include in the clustersChoose All Features or a selection set from the Selection Set drop-down list
  4. Click Next>. When making clusters, the Clustering Wizard will try to group points that are close together. Choose how this distance between points is calculated:
    To do this... Do this...
    Use the Drive Time between pointsCheck Route and choose Fastest from the Route Type drop-down menu
    Use the Driving Distance between pointsCheck Route and choose Shortest from the Route Type drop-down menu
    Use the Straight Line Distance between pointsCheck Straight Lines
    Skip routes longer than a certain Drive Time or Driving Distance Check Skip routes longer than and enter a value
  5. Click Next> and make changes as follows:
    To do this... Do this...
    Set the number of Clusters to make Enter a value for Number of Clusters
    Restrict the clusters to be under a given value for a total field Check Restrict, pick a field from the drop-down list and enter a value to restrict the clusters to
    Compute statistics for the resulting clusters Check Compute Statistics
    Make the clusters as compact as possible Choose None under Cluster Balancing
    Balance the clusters to have similar number of points Choose Number of Points under Cluster Balancing
    Balance the clusters to have similar totals for a given field Choose Total of under Cluster Balancing and pick a field from the drop-down list
    Balance the clusters to have similar average time/distance to the center of the cluster Choose Average Cost under Cluster Balancing
    Set an acceptable tolerance for the balancing of the clusters Enter a value or use the spinners to set the acceptable percent tolerance
  6. Click Finish.

Maptitude groups the target layer into clusters based on the chosen settings, with the following outputs:

  • Maptitude creates a table called Assignment Table with the IDs of the target layer and the IDs of the “seeds” of each cluster, as well as showing the distance/time to the seed of the cluster
  • If Compute Statistics was checked, Maptitude opens the Cluster Aggregation table which contains information on the clusters, including the number of records in each cluster, as well as High, Low and Total values for each numeric field in the target layer
  • Maptitude joins the Assignment Table to the target layer and puts a color theme on the Seed ID, color coding the target layer into each assigned cluster
  • Maptitude creates a new point layer called Cluster Centroids that contains a point at the geographically weighted center of each cluster, with some general information about the clusters
Client point layer