Decision Optimization

Decision Optimization

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

 View Only
Expand all | Collapse all

Ilo{Var|Value}Selector vs IloInt{Var|Value}Chooser

  • 1.  Ilo{Var|Value}Selector vs IloInt{Var|Value}Chooser

    Posted Fri September 27, 2013 08:54 AM

    Originally posted by: NicolasBarnier


    Hi,

     

    I was wondering what are the differences between a "selector" and a "chooser" for

    variables or values, as the user's manual shows examples mainly with "selectors"

    which are directly passed as arguments to IloSearchPhase, whereas the constructors

    of IloSearchPhase in the reference manual expect objects of type IloIntVarChooser and

    IloIntValueChooser.

     

    Best regards,

     

    -- Nicolas Barnier

     


    #CPOptimizer
    #DecisionOptimization


  • 2.  Re: Ilo{Var|Value}Selector vs IloInt{Var|Value}Chooser

    Posted Mon September 30, 2013 04:00 AM

    Originally posted by: Philippe_Refalo


    A chooser chooses one among many, while a selector selects several among many. For instance the variable selector IloSelectSmallest(IloDomainSize(env)) selects the variables that have the smallest domain. There can be several variables as a result. For building a variable chooser you can use one or more variable selectors. Each one is applied to the result of the previous one and at the end only one variable will be choosen. This choice is abritrary if several candidates remains. 
     
    For instance, this code defines a chooser that seclect first the variabels having the smallest domains and, if several variables remains at this stage, it chooses one variable randomly.
     
         IloVarSelectorArray varSelArray(env);
         varSelArray.add(IloSelectSmallest(IloDomainSize(env)));
         varSelArray.add(IloSelectRandomVar(env));
         IloIntVarChooser varChooser(env, varSelArray);
     

    The same principles applies to value selection as well. 

    Regards,
     
    Philippe

    #CPOptimizer
    #DecisionOptimization