Select to view content in your preferred language

Waste Collector - CreateCollectionEdge error?

344
10
a month ago
GISManager5
Emerging Contributor

Hello

I am trying the new Waste Collection Layer, which looks like a useful tool. I followed these documentation  and tutorial links to set up and run:

https://pro.arcgis.com/en/pro-app/latest/help/analysis/networks/waste-collection-analysis-layer.htm

https://pro.arcgis.com/en/pro-app/latest/help/analysis/networks/waste-collection.htm

However, when running with 'Any Vertex' mode in the Network Dataset, I get the following error:

ERROR 030024: Solve returned a failure.
Internal error in CreateCollectionEdge: overlapping edge ranges. (code 6121).

Cannot find the above error online - is it new to ArcGIS Pro?

 I have tried fixing the network using the 'Pairwise Integration' tool, but still getting the same error. If I use the 'Endpoint' setting in the Network Dataset, the solver can't reach more than 30% of the Stops. There may be other connectivity issues in the Network Dataset, but I don't know where they are or how to fix them.

Any suggestions on how to fix the above error or network errors, please post replies.

Thank you

0 Kudos
10 Replies
RachelApplebaum
Esri Contributor

Hullo!
I'm happy to take a look as this for you, as something unexpected is definitely happening. Would you be able to provide a layer package with your waste collection layer (which should bring the ND along with it)?

-Rachel

0 Kudos
IanPackham1
New Contributor

Thanks Rachel

See attached for Layer package file.

As an update, I have managed to successfully run a Route Solver using a network based on the same source file. So there doesn't seem to be a problem with the network itself.

Regards

Ian

0 Kudos
RachelApplebaum
Esri Contributor

Hi Ian,

Thanks for the data! After a quick look at the data, I don't see anything wrong with the connectivity or streets, though a thorough look might find something. I do think this is specific to Waste Collection, as that is a very specialized solver with specialized needs. Your update about successfully running a Route solve corroborates that. 

We'll take a further look at the data and let you know 🙂

-Rachel

0 Kudos
RachelApplebaum
Esri Contributor

Hi Ian,

I wanted to let you know that I haven't forgotten about this! We've been investigating this on our end and I think we've found the issue, now it's a question of what we can do about it for you. I should hopefully have an update on that within a couple days. I'll keep you posted on it!

-Rachel

0 Kudos
GISManager5
Emerging Contributor

Hi Rachel

I have raised this as an Esri issue, you may have been talking to Iskren about it. Understand it could be a bug or connected to issues with the Network. Their recommendation was:

"Network Analyst in general doesn't like lollipop or other self-intersecting edges. We'd recommend that you modify the geometry of loops and lollipops so that they become multiple features."

I ran the Multipart to Singlepart tool on the source dataset, then rebuilt it and reran the Waste Collection solver, but got the same error. Can you recommend other tools to identify or fix the issues described above?

Thank you

Ian

0 Kudos
RachelApplebaum
Esri Contributor

Hi Ian,

I apologize for the delay. The support analyst who has your case reached out to me and I've been communicating with them. 

The issue with the data is not that there are multipart features, it's that single part features intersect themselves. I've been working on finding a way for you to identify the different types of this in your data, but I don't have a good way yet. I've found a few things that can find loops that end on themselves, but the methods don't find lollipops (where one endpoint of the feature touches the interior). Like this:

RachelApplebaum_0-1763478572480.png

An example of this type of geometry is OID 631 in the streets.

I've reached out to some contacts and hopeful to have something for you. 

-Rachel

 

0 Kudos
RachelApplebaum
Esri Contributor

Hi @GISManager5 ,
I just heard back from my contact and was able to generate a feature class of all the lollipop roads in the dataset. Fix these and you should not get that error anymore (though I only looked for lollipop roads, so I can't guarantee something else won't pop up).

 

-Rachel

0 Kudos
GISManager5
Emerging Contributor

Hi Rachel

Thanks for sending the attachment. I removed the roads identified from the network and successfully ran the Waste Collection analysis tool. It even included bin points that are now over 80m from the network, because those roads were removed.

Could you confirm how to identify these type of Lollipop roads on a general dataset? We will need to run the tool on other road networks, so likely to find the same error on those.

Also, do we understand why the Route analysis solver didn't have a problem with these roads, but the Waste Collection solver does?

Thanks

Ian

0 Kudos
RachelApplebaum
Esri Contributor

Hi Ian,

Glad that you were able to get Waste Collection working after removing those lollipop roads! Let me start with answering why WC had a problem and Route didn't, since that's a shorter answer.

The WC algorithm internally batches all stops on a street into a single stop that represents all the batched stops and then creates collection edges from the streets. You can read more about collection edges here. Collection edges are unique to WC. Since the problem you were encountering was with the generation of collection edges, it is a problem unique to WC.

Finding those lollipop roads is a multistep process. These steps require the Data Reviewer license. 

1. Use Dissolve (Data Management) with ObjectID as the dissolve field and choose to make single part (not multipart features) 

  • This will create a feature class where those lollipop roads are split into 2 different features, one being the loop/candy and the other being the stick

2. On the dissolved lines, set up a validation attribute rule for Polyline or Path Closes on Self. You can use the Error Inspector to find the features that violate this rule

  • This is a preset rule that is available with the Data Reviewer license. It will identify all the self-intersecting loops in your dissolved lines.
  • Attribute rules require a globalID on the feature class, so you'll need to set that up using Add Global IDs
  • Not all of the loops will be from lollipop features, but it gives us a place to start

3. For each feature identified by the Polyline or Patch Closes on Self rule, select the corresponding features in the original streets feature class.

  • Some will be lollipops, other will just be regular loops. But this should find all the lollipops that need to be fixed.
  • Do whatever geometry fixes you need to on the lollipop roads

 

If you have someone savvy with python in your office, they could write a python tool that checks geometries of road lines to see if the first and last vertex of a road have the same coordinates. That would remove the need for the Polyline or Path Closes on Self rule (and thus the need for the Data Reviewer license).

Hopefully that helps and makes sense!

-Rachel

0 Kudos