NOMAD Source  Version 4.0.0 Beta
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
NMAllReflective Class Reference

#include <NMAllReflective.hpp>

Inheritance diagram for NMAllReflective:
Collaboration diagram for NMAllReflective:

Public Member Functions

 NMAllReflective (const Step *parentStep, const std::shared_ptr< EvalPoint > &frameCenter)
 Constructor. More...
 
void start () override
 
bool run () override
 
- Public Member Functions inherited from NMIteration
 NMIteration (const Step *parentStep, const std::shared_ptr< EvalPoint > &frameCenter, const size_t k)
 Constructor. More...
 
virtual ~NMIteration ()
 Destructor. More...
 
const std::shared_ptr< EvalPointgetFrameCenter () const override
 
const std::shared_ptr< MeshBasegetMesh () const override
 
const std::shared_ptr
< NMSimplexEvalPointSet
getY (void) const
 
- Public Member Functions inherited from Iteration
 Iteration (const Step *parentStep, const size_t k)
 Constructor. More...
 
virtual ~Iteration ()
 Destructor. More...
 
virtual void end () override
 
size_t getK () const
 Get iteration number. More...
 
void incK ()
 
- Public Member Functions inherited from Step
 Step ()
 Constructor #1 for MainStep (no parent) More...
 
 Step (const Step *parentStep, const std::shared_ptr< RunParameters > &runParams=nullptr, const std::shared_ptr< PbParameters > &pbParams=nullptr)
 Constructor #2 for child step of a parent sharing the same stopReason. More...
 
 Step (const Step *parentStep, std::shared_ptr< AllStopReasons > stopReasons, const std::shared_ptr< RunParameters > &runParams=nullptr, const std::shared_ptr< PbParameters > &pbParams=nullptr)
 Constructor #3: for a child Step with a provided stopReason (such as an algorithm) More...
 
virtual ~Step ()
 Destructor. More...
 
const StepgetParentStep () const
 Get the parent step. More...
 
virtual const std::string getName () const
 Get the name of this step. More...
 
void setName (const std::string &name)
 Set the name of this step. More...
 
std::shared_ptr< AllStopReasonsgetAllStopReasons () const
 
void addCallback (const NOMAD::CallbackType &callbackType, const NOMAD::StepEndCbFunc &stepEndCbFunc)
 Set user callback. More...
 
void addCallback (const NOMAD::CallbackType &callbackType, const NOMAD::HotRestartCbFunc &hotRestartCbFunc)
 
void AddOutputInfo (const std::string &s, bool isBlockStart, bool isBlockEnd) const
 display output More...
 
void AddOutputInfo (const std::string &s, OutputLevel outputLevel=OutputLevel::LEVEL_INFO) const
 
void AddOutputError (const std::string &s) const
 
void AddOutputWarning (const std::string &s) const
 
void AddOutputVeryHigh (const std::string &s) const
 
void AddOutputHigh (const std::string &s) const
 
void AddOutputDebug (const std::string &s) const
 
void AddOutputInfo (OutputInfo outputInfo) const
 
template<typename T >
const StepgetParentOfType (const bool stopAtAlgo=true) const
 Template function to get the parent of given type. More...
 
bool isAnAlgorithm () const
 
const std::shared_ptr< MeshBasegetIterationMesh () const
 
const std::shared_ptr< EvalPointgetIterationFrameCenter () const
 
const std::shared_ptr< BarriergetMegaIterationBarrier () const
 
Point getSubFixedVariable () const
 
virtual void hotRestartOnUserInterrupt ()
 Helper for hot restart functionalities. More...
 
- Public Member Functions inherited from NMIterationUtils
 NMIterationUtils (const Step *parentStep)
 Constructor. More...
 
- Public Member Functions inherited from IterationUtils
 IterationUtils (const Step *parentStep)
 Constructor. More...
 
 ~IterationUtils ()
 Destructor. More...
 
const SuccessTypegetSuccessType () const
 
void setSuccessType (const SuccessType &success)
 
size_t getTrialPointsCount () const
 
EvalPointSetgetTrialPoints ()
 
bool insertTrialPoint (const EvalPoint &evalPoint)
 Insert a trial point. More...
 
void clearTrialPoints (void)
 Clear trial points. More...
 
virtual void postProcessing ()
 Helper for end() More...
 
virtual void verifyPointsAreOnMesh ()
 Helper for start() More...
 
bool evalTrialPoints (Step *step)
 Start evaluation of the trial points. More...
 
size_t getNbEvalPointsThatNeededEval () const
 Get the number of evaluation points in the queue for evaluation. More...
 
virtual void updatePointsWithFrameCenter ()
 Add current frame center as originator of each point in trialPoints. More...
 

Private Member Functions

void generateTrialPoints () override
 Generate the trial points of an algorithm iteration before evaluation. The method depends on the implementation of this pure virtual function. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from Step
static bool getUserTerminate ()
 Interruption call by user. More...
 
static void setUserTerminate ()
 Interruption requested. More...
 
static void userInterrupt (int signalValue)
 Interruption call by user with a signal value. More...
 
static bool getUserInterrupt ()
 
static void runCallback (NOMAD::CallbackType callbackType, const NOMAD::Step &step, bool &stop)
 Run user callback. More...
 
static void runCallback (NOMAD::CallbackType callbackType, std::vector< std::string > &paramLines)
 
- Static Public Member Functions inherited from IterationUtils
static void snapPointToBoundsAndProjectOnMesh (Point &xt, const ArrayOfDouble &lb, const ArrayOfDouble &ub, const std::shared_ptr< Point > frameCenter, const std::shared_ptr< MeshBase > mesh=nullptr)
 Helper for start() More...
 
- Protected Member Functions inherited from Iteration
void init ()
 Utility for constructor. More...
 
- Protected Member Functions inherited from Step
void verifyParentNotNull ()
 Helper for constructors. More...
 
void verifyGenerateAllPointsBeforeEval (const std::string &method, const bool expected) const
 Helper for validating steps depending on parameter GENERATE_ALL_POINTS_BEFORE_EVAL. More...
 
void init ()
 Helper for constructors. More...
 
void defaultStart ()
 
bool defaultRun ()
 
void defaultEnd ()
 
void hotRestartBeginHelper ()
 Helpers for hot restart, to be called at the start and end of any override. More...
 
void hotRestartEndHelper ()
 Helpers for hot restart, to be called at the start and end of any override. More...
 
- Protected Member Functions inherited from NMIterationUtils
void updateYCharacteristics (void)
 
void displayYInfo (void) const
 
int getRankDZ () const
 
void setStopReason () const
 
- Protected Attributes inherited from Iteration
size_t _k
 Iteration number. More...
 
- Protected Attributes inherited from Step
const Step_parentStep
 The parent of this step. More...
 
std::string _name
 The name of this step. More...
 
std::shared_ptr< AllStopReasons_stopReasons
 The stop reasons of an algorithm. More...
 
std::shared_ptr< RunParameters_runParams
 The run parameters that control a step. More...
 
std::shared_ptr< PbParameters_pbParams
 The problem parameters that control a step. More...
 
- Protected Attributes inherited from NMIterationUtils
Double _rankEps
 
NMStepType _currentStepType
 
std::shared_ptr
< NMSimplexEvalPointSet
_nmY
 
- Protected Attributes inherited from IterationUtils
const Step_parentStep
 
SuccessType _success
 Success type of this step. More...
 
Iteration_iterAncestor
 
MegaIteration_megaIterAncestor
 
- Static Protected Attributes inherited from Step
static bool _userInterrupt
 Interrupt NOMAD if Ctrl-C is pressed. More...
 
static bool _userTerminate
 Terminate NOMAD if Ctrl-C is pressed again. More...
 
static NOMAD::StepEndCbFunc _cbIterationEnd
 
static NOMAD::StepEndCbFunc _cbMegaIterationEnd
 
static NOMAD::HotRestartCbFunc _cbHotRestart
 

Detailed Description

Class to generate points for single pass NM on all reflective steps (REFLECT, EXPAND, INSIDE_CONTRACTION and OUTSIDE_CONTRACTION). The ::start funcion manages the creation process. The initial simplex is created by calling NMIteration::start(). The points are projected on mesh and updated with the information of the creating frame center.

Definition at line 14 of file NMAllReflective.hpp.

Constructor & Destructor Documentation

NMAllReflective::NMAllReflective ( const Step parentStep,
const std::shared_ptr< EvalPoint > &  frameCenter 
)
inlineexplicit

Constructor.

Parameters
parentStepThe parent step of this step – IN.
frameCenterThe MADS frame center is used as simplex "center" – IN.

Definition at line 22 of file NMAllReflective.hpp.

24  : NMIteration(parentStep, frameCenter , 0 ),
25  NMIterationUtils ( parentStep )
26  {
27  _stopReasons = std::make_shared<AlgoStopReasons<NMStopType>>();
28  }
NMIterationUtils(const Step *parentStep)
Constructor.
NMIteration(const Step *parentStep, const std::shared_ptr< EvalPoint > &frameCenter, const size_t k)
Constructor.
Definition: NMIteration.hpp:48
std::shared_ptr< AllStopReasons > _stopReasons
The stop reasons of an algorithm.
Definition: Step.hpp:34

Member Function Documentation

void NMAllReflective::generateTrialPoints ( )
overrideprivatevirtual

Generate the trial points of an algorithm iteration before evaluation. The method depends on the implementation of this pure virtual function.

Implements IterationUtils.

bool NMAllReflective::run ( )
inlineoverridevirtual

Sequential run of NM steps among INITIAL, ( REFLECT, EXPANSION, INSIDE_CONTRACTION, OUTSIDE_CONTRACTION ), SHRINK Set the stop reason and also updates the NM mega iteration success.

Reimplemented from NMIteration.

Definition at line 33 of file NMAllReflective.hpp.

33 { return false;}
void NMAllReflective::start ( )
overridevirtual

Update the barrier and create the initial simplex if it is empty.

Reimplemented from NMIteration.


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