Clustering exactly 50 points using ArcGIS tools?

3965
23
05-15-2017 12:14 AM
SarahOvais
Deactivated User

I need to make clusters of exactly 50 points based on location to be used later as an input layer in VRP. No other attribute available on the basis of which they can be grouped. 
Grouping analysis doesn't give exactly the same no. Appreciate if someone can help. geonet geo-processing tools point statistics network geoprocessing vrp  networkanalyst

0 Kudos
23 Replies
shan_sarkar
Frequent Contributor

Sarah,

Are these 50 points randomly within a certain extent frame?

If it is the case you can use the Create Random Points tools available under ArcToolbox > Data Management Tools > Sampling Tools > Create Random Points.

Please see Create Random Points—Help | ArcGIS Desktop 


~Shan
0 Kudos
SarahOvais
Deactivated User

Random points, these are basically the location of outlets all across the country.

0 Kudos
shan_sarkar
Frequent Contributor

In that case you can set the extent for the country and use Create Random Points tool.


~Shan
0 Kudos
SarahOvais
Deactivated User

Hi, 
I have tried executing it, but I'm not sure how it works. Can I share the sample data?

0 Kudos
shan_sarkar
Frequent Contributor

Sure, I can work with that.


~Shan
0 Kudos
SarahOvais
Deactivated User

Hi I have attached the sample data. 
Kindly take a look.
Thanks

0 Kudos
shan_sarkar
Frequent Contributor

The sample data that you have shared already has points created and it seems like at the same location. I just want to confirm that your data extent is the country boundary and the points should be placed within that extent.

If this is the case please try out the following:

1) Open Create Random Points tool.

2) Provide the output location where the point feature class or the shapefile will be created.

3) Name of the feature class or the shapefile.

4) Constraining Feature Class should be the country boundary.

5) Specify the total number of point features you want to create.

Let the other settings be default.

~Shan


~Shan
0 Kudos
SarahOvais
Deactivated User

Hi, I have executed it using these steps that you have mentioned, but it doesn't make any sense to me.Output : Create Random Points

0 Kudos
HeatherMoe
Esri Contributor

Hi Sarah,

I'm not sure if this will work for you but you could try using location allocation solver with the maximize capacitated coverage problem type.  Load in your locations you are trying to block into 50 order groups as the demand points.  Since you know how many demand points you are adding you know how many chunks of 50 you want to make and can make that the Facilities count for the problem with a capacity of 50.  The one portion that you wouldn't have naturally is locations for those possible facilities.  The location allocation solver will accept more facilities then you are wanting to group too and will pick the best ones though so if you add in double or triple the number of facilities then what you are wanting in groupings (you would have to play with that a little to determine how many would be needed) and have them distributed throughout the region it should help group them into chunks of 50.  You could try creating a dense grid of the facility points or possibly scaling the density to the density of the demand points.  I did a quick test of this using the sample data you provided and it seemed to work okay for me but takes awhile.  One restriction though is the number of facilities to choose is maxed at 100 so you would need to scale the problem to fit that.  An idea for that is to start at the corners and section off groupings of 50 since in the sample you are only 5 or 6 over that limit.  Or you could split the problem in half along some boundary that makes since like maybe a major highway or river.

Out of curiosity, what is your use case that you need to break the VRP problems down to have exactly 50 orders for the solver?

0 Kudos