kangaroo  1.0
the cbls library
Private Member Functions | Private Attributes
CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu< MaxiOrMini, objType > Class Template Reference

Selecting compatible two variables for swapping optimising a single objective respecting double variable tabu. More...

#include <compatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu.hpp>

Inheritance diagram for CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu< MaxiOrMini, objType >:
Inheritance graph
[legend]

Static Public Member Functions

static CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabudefine (System *const pSystem, DvTabu *const pSvTabu, Expression *pObjectiveExpr)
 Define a selector that selects compatible two variables for swapping optimising a single objective respecting double variable tabu. 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...
 

Private Member Functions

 ~CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu ()
 Destructor. More...
 
 CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu (System *const pSystem, DvTabu *const pSvTabu, Expression *const pParamExpr)
 Param constructor. More...
 
 CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu (CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu< MaxiOrMini, objType > &&that) noexcept=delete
 Move constructor.
 
 CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu (CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu< MaxiOrMini, objType > const &that)=delete
 Copy constructor.
 
CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu< MaxiOrMini, objType > & operator= (CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu< MaxiOrMini, objType > &&that) noexcept=delete
 Move assignment.
 
CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu< MaxiOrMini, objType > & operator= (CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu< MaxiOrMini, objType > const &that)=delete
 Copy assignment.
 
virtual Bool selectAnew (Random &pRandom)
 Run the selector anew, return whether successful. More...
 
virtual Bool selectIncr (Random &pRandom)
 Run the selector incrementally, return whether successful. More...
 

Private Attributes

ValueRecord< objType > const * mObjValueRecord
 Objective value.
 
DvTabu const * mDvTabu
 Double variable tabu.
 

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...
 
- 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...
 
virtual Bool equate (Selector const &that) const
 Compare selctors for equality. More...
 
Hash calcSelHash () const
 Calculate hash value. 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.
 
- 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 MaxiOrMini, typename objType>
class CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu< MaxiOrMini, objType >

Selecting compatible two variables for swapping optimising a single objective respecting double variable tabu.

Constructor & Destructor Documentation

template<Order MaxiOrMini, typename objType >
CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu< MaxiOrMini, objType >::~CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu ( )
inlineprivate

Destructor.

template<Order MaxiOrMini, typename objType >
CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu< MaxiOrMini, objType >::CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu ( System *const  pSystem,
DvTabu *const  pDvTabu,
Expression *const  pParamExpr 
)
inlineprivate

Param constructor.

Member Function Documentation

template<Order MaxiOrMini, typename objType >
Bool CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu< MaxiOrMini, objType >::selectAnew ( Random &  pRandom)
inlineprivatevirtual

Perform selection anew, return whether successful.

Implements Selector.

template<Order MaxiOrMini, typename objType >
Bool CompatibleTwoVarsSingleObjectiveOptimalVarSwapSelectorDoubleVarTabu< MaxiOrMini, objType >::selectIncr ( Random &  pRandom)
inlineprivatevirtual

Perform selection incrementally, return whether successful.

Implements Selector.


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