Decision Optimization

Decision Optimization

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


#Analytics
#DecisionOptimization
#DecisionOptimization
 View Only
Expand all | Collapse all

Prune nodes within the propagation

  • 1.  Prune nodes within the propagation

    Posted 08/03/17 06:03 PM

    Originally posted by: stef44


    Hi all, 

     

    I am interested in pruning nodes of the search tree during my propagation (filtering rules) implemented in a global constraint. What is the most 'efficient' way to do that?

    E.q. Lets say I found a value/state which I know its infeasible and will be for the rest for that part of the tree. How do I 'prune' the node then? I would like in the next step of the constraint propagation, the search not to investigate that part of the tree.

     

    Any answer would be appreciated, thank you!


    #CPOptimizer
    #DecisionOptimization


  • 2.  Re: Prune nodes within the propagation

    Posted 08/07/17 05:32 AM

    Originally posted by: PhilippeLaborie


    Then you probably want to remove the infeasible value from the domain of the variable by doing something like IlcIntVar::removeValue(val). This will remove 'val' from the domain of the variable in a reversible way.

    If the propagation of the constraint detects that the current state/node is infeasible and thus that there is no feasible solution under this node, you can call IlcConstraintI::fail(), this will tell the search to backtrack.

    Philippe


    #CPOptimizer
    #DecisionOptimization