Replies: 3 comments 10 replies
-
Hello there, First of all, have you tried the recently released Timefold Solver 1.1.0? We have changed a lot of the CS internals there to address a nasty bug and there is a decent chance that your problem is already solved. If the issue persists even in 1.1.0, let's keep looking further. |
Beta Was this translation helpful? Give feedback.
-
Just wanted to comment back here that it was indeed a subtle bug in a listener! We ended up migrating to a list variable listener and testing the bejeezus out of that which is where we saw the bug! Massive thank you to @triceo 🙏 |
Beta Was this translation helpful? Give feedback.
-
@Inlustra Happy to help. You're not the first who struggled with complex logic in variable listeners; we're investigating options of making that whole area simpler to work with, but it may be a while before something materializes; assuming we can even come up with something better that still works. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi guys,
Currently trying to solve an issue where, in FULL_ASSERT mode, we clearly have something going awry.
Brief description of the problem: VRPTW (Techincally it's moving vehicles, so in this model, our driver becomes the moving object or vehicle)
We have a score corruption for almost all of the constraint providers and I'm not sure why, it mostly looks like it's working ok in non-full-assert mode.
Definitely not looking for a handout here, despite the wall of code. Rather, trying to understand if PlanningListVariables support this use-case?
Some are in Excess and some are missing.
An example constraint:
I have the following DriverTripSchedule:
And the TripAssignment which is made up of many shadow variables:
Finally the listener itself, this is pretty large, as such I didn't want to provide the whole thing:
However, some small examples, we're definitely calling the variable changes using the following
with the all of the logic happening inside afterVariableChanged
Could anyone point me towards anything that I could be doing wrong here?
It mentions Shadow variable corruption in the working scoreDirector as none:
Beta Was this translation helpful? Give feedback.
All reactions