Hello everyone !
I am actually working on a problem recquiring to configure a manufacturing line by affecting machines to workstations, tasks to these workstations and select a configuration for every machine under the problem constraints (cadency, tasks' precedencies, limitations on machines selection). My current objective is to minimize the total machine cost and number of workstations exploited. This represents a Reconfigurable Manufacturing System design problem.
To do so, I decided to adopt a scheduling approach by using interval variables from CP Optimizer, and when I try to solve the problem by using the IterativeDiving search procedure, the output is "model has no solution". This output is the same for eveyr search procedure except the MultiPoint one where the calculated bound is "0; 1" (machine cost; nb of workstations) and the solver finds and reaches the expected solution (solution from litterature where we got the instance from).
Since the MultiPoint was able to find a feasible solution, I tried (by using the script) to search a first solution with MultiPoint and by using a warmstart procedure, switch to IterativeDiving after a solution is found to see how the lower bound is calculated. But by doing so, the lower bound calculated is every time equal to the actual solution (or higher than my solution), thus resulting in the search stop even if the solution isn't the optimal one.
I've tried to search more information about the bound calculation, but didn't find any clue yet. I expect my model to be unperfect and causing this bad bound calculation, but can't figure out why. This resulted in two questions :
- Why some search procedures can't find a feasible solution ?
- Even when a feasible solution is given, why does the lower bound is instantly equal to the actual solution and not a lower bound expected to be lower than/equal to the optimal solution ?
So if anyone has any clue on this issue, I have uploaded a text file with my model / outputs when using Restart and multipoint procedures. Hope i'll help.
Thank you for reading :)
------------------------------
Damien Lovato
------------------------------