One thing that I noticed in my algorithm is that whenever I call cp.solve(), the number of constraint grows. For example if have 1000 constraint the second time I call cp.solve(), the number of constraints is 2000, the third time 3000, and so on.
It does not matter where I call cp.solve()! Even if I call them back to back in the same iteration of the algorithm like in the following this happens:
I think this shouldn't happen! And I don't know what to do about it to make it stop duplication the the same constraints at every iteration.
The other thing is that in every iteration of my algorithm (where I call cp once to solve a sub-problem), it increasingly takes more time for cp to solve the sub-problem! However, I don't know if the reason is behind the fact that in every iteration the current solution is one step closer to optimal solution and it would be harder for cp to improve the current solution, or it's because of the fact that the number of constraints are really increasing?!?
Any idea is appreciated,