Incomplete Distance Matrix

2147
3
02-27-2016 02:06 PM
EmreKirac
New Contributor

Hello,

I have approximately 6000 locations in Port-Au-Price, Haiti with their coordinates. I need to calculate the distance matrix (real driving distances) for these location. I have street data from this link. I created a network dataset using this shape file. Before loading all locations to the OD Cost Matrix, I just selected 10 locations to verify to distances, initially. When I run the OD Cost Matrix, it doesn't give the full distance matrix. But I need to get the distances from all origins to all destinations. I think the primary problem is the quality of the road map I am using. I make the search tolerance 500 meters. You can see the attribute table and the lines below that I am getting. Could you please help me to create a full distance matrix for 6000 locations? I really appreciate any help you can provide on this. I have attached my data. Thank you.

Screen Shot 2016-02-27 at 2.28.58 PM.pngScreen Shot 2016-02-27 at 2.30.05 PM.png

0 Kudos
3 Replies
DanPatterson_Retired
MVP Emeritus

You have some strange entries, for example, the first two, they start and end at the same spot? do they do anywhere in between? or is this an artifact of how the OD matrix was constructed?

You might want to do a query (python syntax)   !OriginID!  !=  !DestinationID! and see how many you have and run the analysis on only those OD entries

PS moved this to the Network Analyst​ Place to facilitate better exposure.

0 Kudos
EmreKirac
New Contributor

Thank you. I am not sure which the first two you are talking about. But the table was constructed by the OD Matrix. It is possible that some locations are very close to each other. In this case, the OD Matrix should give me approximately 0 km distance.

0 Kudos
DanPatterson_Retired
MVP Emeritus

that is what I am talking about, the first two rows with a distance of zero... there is little point in doing OD calculations for locations that are on the same street.  In cases like that, you could aggregate the locations on a block by block basis, produce a representative location, then perform the OD calculations using those.

You could use

  • Aggregate Points to produce polygons around close points
  • produce a centroid for those polygons
  • perform the OD matrix calculations using those

This will potentially produce a much smaller and more realistic matrix.  There is little to be gained to running any type of network calculation when the distance between objects is small, within eyesight or just around the corner.

Just some thoughts

0 Kudos