Originally posted by: AndyHam
It is awesome. The model is much faster. The solution 31 711 is very close to the known optimal value of 31 600 (I just realized this optimal value from the following article. The one I wrote earlier was from the earlier article). The test instance is DD50 from the following article:
Ropke, S., & Cordeau, J. F. (2009). Branch and cut and price for the pickup and delivery problem with time windows. Transportation Science, 43(3), 267-286.
Now, I am trying to meditate your work as usual.
(1) before(seqVeh[v],itvJ2V[j][v],itvJ2V[jh][v]);
This is valid inequality, right?
Let me study DARP MIP model to see if we can add more valid inequalities into CP.
Also, let me do more experimentation to see if how much this constraint helps.
(2) additional intervals representing the trip that contribute with a "pulse" on the vehicle load cumul function
I am a little confused about this change, although it improved the performance a lot ^^
Instead of adding new, we could have modified the original as follows:
cumulFunction Loading[v in Vehicles] = sum(j in Jobs: j.de>0) pulse(itvJ2V[j][v], j.de);
However, it generated the obj value of 31 338, which is lower than the proven optimal value of 31 600, indicating this change is not valid.
I will validate the model with smaller instances.
Regards,
Andy
#DecisionOptimization#OPLusingCPOptimizer