Decision Optimization

Decision Optimization

Delivers prescriptive analytics capabilities and decision intelligence to improve decision-making.

 View Only
Expand all | Collapse all

CP Optimizer can't compute a lower bound and I don't know why.

  • 1.  CP Optimizer can't compute a lower bound and I don't know why.

    Posted Thu June 29, 2023 12:03 PM

    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
    ------------------------------


  • 2.  RE: CP Optimizer can't compute a lower bound and I don't know why.

    Posted Fri June 30, 2023 08:47 AM

    Dear Damien,

    This is probably a bug in search. We need to have the complete model and the data to be able to reproduce and inverstigate. You can try to make the model shorter, that would help us to investigate. If you don't want to divulgate the data here, you can contact me directly to send them to me. 


    Thanks

    Philippe



    ------------------------------
    Philippe Refalo
    IBM ILOG CP Optimizer
    ------------------------------