UnassignedJobReasonTracker improvement#364
UnassignedJobReasonTracker improvement#364toni-rajkovski wants to merge 7 commits intographhopper:masterfrom
Conversation
The iteration number and the insertion data are sent to UnassignedJobReasonTracker when informing about unassigned job. With those information we can have better understanding when and why the job was rejected.
…Tests for new methods
…failed constraint FailedConstraintInfo contains the info which constraint has failed for which job and which vehicle route. This info is reported to UnassignedJobResonTracker.
Due to performance degradation saving of the activities in the route is removed from FailedConstraintInfo
|
Nice, thanks, I ll have a look at this asap. In the meantime, would you mind to send us email for a CLA (https://www.graphhopper.com/contact-form/). Thanks. |
|
Hi @toni-rajkovski, Thanks for your contrib. Would you mind to describe me how you use it? For debugging I guess? I only want to make sure that you do not draw wrong conclusions from the information you have now about failed constraints. For example, if you look at insertion positions, some contraints should fail fast, i.e. if they fail at the very beginning of a route, no other positions will be evaluated anymore. |
|
Hi @oblonski, |
This PR extends the UnassignedJobReasonTracker.
It is connected to #180 and provides more info about not successful insertions which failed because some hard constraint was not fulfilled.
Additional info about why some constraint has failed for certain insertion:
The change is backward compatible, no breaking changes are introduced to UnassignedJobReasonTracker.
The PR also contains an example about how to use the UnassignedJobReasonTracker and how the results can be displayed.
Example how the additional data looks like:
Edit
Due to performance degradation the only the vehicle will be tracked and not the activities on the route of that vehicle.
The additional data after removing the activities looks like: