You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I've run this PR against the usual benchmarks across various exploration levels.
Solution obtained
All solutions are strictly identical with current master and this PR so it looks like I did not break anything with all the adjustments to switch from Cost/Gain to the new Eval struct.
Timing
Computing time increase is in the +15 to 20% ballpark for CVRP and VRPTW instances and around +5 to +10% for PDPTW instances. So this will somehow eat a bit of the performance boost that was introduced in the latest release, but there is not really any other way around that I'm afraid.
Possible improvement
The new Eval struct holds both cost and duration metrics and all the math operations are overloaded to operate on both members. So the computing overhead is due to switching from doing cost/gain math with basic types (uint32_t and int64_t) and a single value to doing it with this struct. I've implemented the various operators in a straightforward way but maybe it's possible to do a bit of compile-time magic to improve the efficiency here. Any input on that is welcome!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Issue
Fixes #738
Tasks
CostandGainvaluesCHANGELOG.md