kangaroo  1.0
the cbls library
Private Member Functions | Private Attributes
SingleRangeVarDoubleObjectiveOptimalValueSelector< MaxiOrMini0, MaxiOrMini1, varType, objType0, objType1 > Class Template Reference

Selecting an optimal value for a range variable, optimising two objectives. More...

#include <singleRangeVarDoubleObjectiveOptimalValueSelector.hpp>

Inheritance diagram for SingleRangeVarDoubleObjectiveOptimalValueSelector< MaxiOrMini0, MaxiOrMini1, varType, objType0, objType1 >:
Inheritance graph
[legend]

Private Member Functions

 ~SingleRangeVarDoubleObjectiveOptimalValueSelector ()
 Destructor. More...
 
 SingleRangeVarDoubleObjectiveOptimalValueSelector (System *const pSystem, Expression *const *pParamExprs, DomainType const StaticOrDynamic)
 Param constructor. More...
 
 SingleRangeVarDoubleObjectiveOptimalValueSelector (SingleRangeVarDoubleObjectiveOptimalValueSelector< MaxiOrMini0, MaxiOrMini1, varType, objType0, objType1 > &&that) noexcept=delete
 Move constructor.
 
 SingleRangeVarDoubleObjectiveOptimalValueSelector (SingleRangeVarDoubleObjectiveOptimalValueSelector< MaxiOrMini0, MaxiOrMini1, varType, objType0, objType1 > const &that)=delete
 Copy constructor.
 
SingleRangeVarDoubleObjectiveOptimalValueSelector< MaxiOrMini0, MaxiOrMini1, varType, objType0, objType1 > & operator= (SingleRangeVarDoubleObjectiveOptimalValueSelector< MaxiOrMini0, MaxiOrMini1, varType, objType0, objType1 > &&that) noexcept=delete
 Move assignment.
 
SingleRangeVarDoubleObjectiveOptimalValueSelector< MaxiOrMini0, MaxiOrMini1, varType, objType0, objType1 > & operator= (SingleRangeVarDoubleObjectiveOptimalValueSelector< MaxiOrMini0, MaxiOrMini1, varType, objType0, objType1 > const &that)=delete
 Copy assignment.
 
virtual Bool selectAnew (Random &pRandom)
 Run the selector in the system. More...
 
virtual Bool selectIncr (Random &pRandom)
 Run the selector in the system. More...
 

Private Attributes

ValueRecord< objType0 > const * mObjValueRecord0
 Objective value.
 
ValueRecord< objType1 > const * mObjValueRecord1
 Objective value.
 
DomainType mDomainType
 Whether dynamic range.
 
Bool mIncludeCurr
 Include current value.
 
static SingleRangeVarDoubleObjectiveOptimalValueSelectordefine (System *const pSystem, Expression *const pObjectiveExpr0, Expression *const pObjectiveExpr1, DomainType const StaticOrDynamic=StaticDomain)
 < Define a selector that selects an optimal value for a range variable, optimising two objectives. More...
 
void setDynamicRange (Bool const SetNotUnset)
 Set dynamic range. More...
 
void includeCurrValue (Bool const SetNotUnset)
 Include current value in search. More...
 

Additional Inherited Members

- Public Member Functions inherited from Selector
Bool ActiveLazyHalf () const
 Get whether active. More...
 
void activateLazyHalf (Bool const SetNotUnset)
 Activate the selector. More...
 
void setSelectedVar (Variable *const pVariable)
 Set selected variable. More...
 
void setSelectedVars (Variable *const pVariable0, Variable *const pVariable1)
 Set selected variables. More...
 
void setSelectedVars (Dim const VarCount, Variable *const *pVariables)
 Set selected variables. More...
 
void setSelectedValue (Wrapper const &WrappedValue)
 Set selected value. More...
 
void setSelectedValues (Wrapper const &WrappedValue0, Wrapper const &WrappedValue1)
 Set selected values. More...
 
void setSelectedValues (Dim const ValueCount, Wrap const *WrappedValues)
 Set selected values. More...
 
void copySelectedVarsValues (Selector const *const Source)
 Copy selected variables and values from the source selector. More...
 
void copySelectedVars (Selector const *const Source)
 Copy selected variables from the source selector. More...
 
void copySelectedValues (Selector const *const Source)
 Copy selected values from the source selector. More...
 
xb< Variable * > const & SelectedVars () const
 The selected variables. More...
 
xb< Wrap > const & SelectedWrappedValues () const
 The selected values. More...
 
virtual Serial TypeSerial () const
 Data type serial number. More...
 
virtual ~Selector ()
 Destructor. More...
 
- Static Public Member Functions inherited from Selector
static Bool selectAndExecuteAnew (Selector *const pSelector, Random &pRandom)
 Select and execute in anew computation mode, and return whether successful. More...
 
static Bool selectAndExecuteAnew (Selector *const pSelector0, Selector *const pSelector1, Random &pRandom)
 Select and execute in anew computation mode, and return whether successful. More...
 
static Bool selectAndExecuteAnew (Dim const SelectorCount, Selector *const *pSelectors, Random &pRandom)
 Select and execute in anew computation mode, and return whether successful. More...
 
static Bool selectAndExecuteIncr (Selector *const pSelector, Random &pRandom)
 Select and execute in incremental computation mode, and return whether successful. More...
 
static Bool selectAndExecuteIncr (Selector *const pSelector0, Selector *const pSelector1, Random &pRandom)
 Select and execute in incremental computation mode, and return whether successful. More...
 
static Bool selectAndExecuteIncr (Dim const SelectorCount, Selector *const *pSelectors, Random &pRandom)
 Select and execute in incremental computation mode, and return whether successful. More...
 
static Bool performSelectionAnew (Selector *const pSelector, Random &pRandom)
 Perform selection in the anew computation mode. More...
 
static void executeSelectionAnew (Selector *const pSelector)
 Execute selection in the anew computation mode. More...
 
static Bool performSelectionIncr (Selector *const pSelector, Random &pRandom)
 Perform selection in the incremental computation mode. More...
 
static void executeSelectionIncr (Selector *const pSelector)
 Execute selection in the incremental computation mode. More...
 
- Data Fields inherited from Selector
Identifier const SelFormat
 Selector format.
 
Serial const SelSerial
 Selector Serial.
 
Bool const ExecReady
 Ready for execution?
 
Bool const HoldValue
 Contain values?
 
Bool const SwapMode
 Swapping mode?
 
Hash const SelHash
 Hash value of the selector.
 
System *const SysMaster
 Selector's system.
 
kb< Expression * > const ParamExprs
 The parameter expressions.
 
kb< ParamSpecType > const *const ParamSpecs
 The parameter specifications.
 
- Protected Member Functions inherited from Selector
void setSelFormat (Identifier const pFormat)
 Set selector format. More...
 
void setSelSerial (Serial const pSerial)
 Set selector serial. More...
 
void setSelHash (Hash const pHash)
 Set selector hash. More...
 
void setExecReady (Bool const SetNotUnset)
 Set ready for execution. More...
 
void setHoldValue (Bool const SetNotUnset)
 Set whether holds values. More...
 
void setSwapMode (Bool const SetNotUnset)
 Set swap computation mode. More...
 
void setParameters (Dim const ParamCount, Expression *const *const pParamExprs, ParamSpecType const *const pParamSpecs=nullptr)
 Set the parameters. More...
 
 Selector (System *const pSystem, Dim const ParamCount)
 Param constructor. More...
 
 Selector (Selector const &that)=delete
 Copy constructor.
 
 Selector (Selector &&that) noexcept=delete
 Move constructor.
 
Selectoroperator= (Selector &&that) noexcept=delete
 Move assignment.
 
Selectoroperator= (Selector const &that)=delete
 Copy assignment.
 
virtual Bool equate (Selector const &that) const
 Compare selctors for equality. More...
 
Hash calcSelHash () const
 Calculate hash value. More...
 
- Static Protected Member Functions inherited from Selector
static Serial defineWithinSystem (Selector *const pSelector)
 Define the selector. More...
 
- Protected Attributes inherited from Selector
xb< Variable * > mSelectedVars
 Selector variables.
 
xb< WrapmSelectedValues
 Selector values.
 

Detailed Description

template<Order MaxiOrMini0, Order MaxiOrMini1, typename varType, typename objType0, typename objType1>
class SingleRangeVarDoubleObjectiveOptimalValueSelector< MaxiOrMini0, MaxiOrMini1, varType, objType0, objType1 >

Selecting an optimal value for a range variable, optimising two objectives.

Constructor & Destructor Documentation

template<Order MaxiOrMini0, Order MaxiOrMini1, typename varType , typename objType0 , typename objType1 >
SingleRangeVarDoubleObjectiveOptimalValueSelector< MaxiOrMini0, MaxiOrMini1, varType, objType0, objType1 >::~SingleRangeVarDoubleObjectiveOptimalValueSelector ( )
inlineprivate

Destructor.

template<Order MaxiOrMini0, Order MaxiOrMini1, typename varType , typename objType0 , typename objType1 >
SingleRangeVarDoubleObjectiveOptimalValueSelector< MaxiOrMini0, MaxiOrMini1, varType, objType0, objType1 >::SingleRangeVarDoubleObjectiveOptimalValueSelector ( System *const  pSystem,
Expression *const *  pParamExprs,
DomainType const  StaticOrDynamic 
)
inlineprivate

Param constructor.

Member Function Documentation

template<Order MaxiOrMini0, Order MaxiOrMini1, typename varType , typename objType0 , typename objType1 >
Bool SingleRangeVarDoubleObjectiveOptimalValueSelector< MaxiOrMini0, MaxiOrMini1, varType, objType0, objType1 >::selectAnew ( Random &  pRandom)
inlineprivatevirtual

Perform selection anew, return whether successful.

Implements Selector.

template<Order MaxiOrMini0, Order MaxiOrMini1, typename varType , typename objType0 , typename objType1 >
Bool SingleRangeVarDoubleObjectiveOptimalValueSelector< MaxiOrMini0, MaxiOrMini1, varType, objType0, objType1 >::selectIncr ( Random &  pRandom)
inlineprivatevirtual

Perform selection incrementally, return whether successful.

Implements Selector.


The documentation for this class was generated from the following file: