I have a new problem wich I need a solution for.
This time it is the following:
I have some kind of border for distances for longer service times than one working day. If a particular condition is true, i want to change the distance and servicetime. For a 3 day service this means, that the servicetime would be the distance_to_prev_service + 2x distance_from_service_to_depot + 2x distance_from_depot_to_service. Also the drivingtime hat so be updated then.
This is not realy a constraint its a condition that has to be for every service. I have tried to implement a stateupdater for this problem. In the visit function of the stateupdater i am calculating the new distance and make it in the end like the following:
distance += addedDistance;
tourActivity.setArrTime(tourActivity.getArrTime() + addedArivaltime);
prevAct = tourActivity;
I have some problems and my stateupdater is not a solution for my problem. The problem is, that the visit function is not used for my longer services at all. I checked it with debugging and all services that are less then a day long are touched, but the longer not. Is this right can this be? Does a service can be planed in the solution but not be touched by the visit method?
Maybe I don´t understand exactly how the stateupdater and a constraints work. Am I on the right idea with making a Stateupdater? Or is my problem maybe not suitable with this or maybe not at all implementable.
I hope I told you everything so you could help me and understand me