LatNet Builder Manual  2.0.1-11
Software Package for Constructing Highly Uniform Point Sets
NetBuilder::Task::CBCSearch< NC, ET, EXPLORER, OBSERVER > Class Template Reference

Class for CBC Search tasks. More...

#include <CBCSearch.h>

Inherits NetBuilder::Task::Search< NC, ET, OBSERVER >.

Public Types

typedef EXPLORER< NC, ET > Explorer
 
- Public Types inherited from NetBuilder::Task::Search< NC, ET, OBSERVER >
typedef OBSERVER< NC > Observer
 Observer of the search.
 
typedef boost::signals2::signal< void(const Search< NC, ET, OBSERVER > &)> OnNetSelected
 Signal emitted when a net has been selected.
 
typedef boost::signals2::signal< void(const Search< NC, ET, OBSERVER > &)> OnFailedSearch
 Signal emitted when the search has failed.
 

Public Member Functions

 CBCSearch (Dimension dimension, typename NetConstructionTraits< NC >::SizeParameter sizeParameter, std::unique_ptr< FigureOfMerit::CBCFigureOfMerit > figure, std::unique_ptr< Explorer > explorer=std::make_unique< Explorer >(), int verbose=0, bool earlyAbortion=false)
 Constructor. More...
 
 CBCSearch (Dimension dimension, std::unique_ptr< DigitalNetConstruction< NC >> baseNet, std::unique_ptr< FigureOfMerit::CBCFigureOfMerit > figure, std::unique_ptr< Explorer > explorer=std::make_unique< Explorer >(), int verbose=0, bool earlyAbortion=false)
 Constructor. More...
 
 CBCSearch (CBCSearch &&)=default
 Default move constructor. More...
 
 ~CBCSearch ()=default
 Default destructor.
 
virtual std::string format () const override
 Returns information about the task.
 
virtual void execute () override
 Executes the search task. More...
 
virtual void reset () override
 Resets the search.
 
virtual const FigureOfMerit::CBCFigureOfMeritfigureOfMerit () const override
 Returns a const qualified reference to the figure of merit.
 
- Public Member Functions inherited from NetBuilder::Task::Search< NC, ET, OBSERVER >
virtual ~Search ()=default
 Virtual default destructor.
 
 Search (Dimension dimension, typename NetConstructionTraits< NC >::SizeParameter sizeParameter, int verbose=0, bool earlyAbortion=false)
 Constructor. More...
 
 Search (Dimension dimension, std::unique_ptr< DigitalNetConstruction< NC >> baseNet, int verbose=0, bool earlyAbortion=false)
 Constructor. More...
 
 Search (Search &&)=default
 Default move constructor. More...
 
Dimension dimension () const
 Returns the dimension of the searched net.
 
unsigned int nRows () const
 Returns the number of rows of the searched generating matrices.
 
unsigned int nCols () const
 Returns the number of columns of the searched generating matrices.
 
const DigitalNetConstruction< NC > & bestNet () const
 Returns the best net found by the search.
 
Real bestMeritValue () const
 Returns the best merit found by the search. More...
 
bool hasFoundNet () const
 
virtual std::string outputNet (OutputFormat outputFormat, unsigned int interlacingFactor) const override
 Returns the best net found by the search task.
 
virtual Real outputMeritValue () const override
 Returns the best merit value found by the search task.
 
Observerobserver ()
 Returns a reference to the minimum-element observer.
 
const Observerobserver () const
 Returns a const qualified reference the minimum-element observer.
 
OnNetSelectedonNetSelected ()
 Net-selected signal. More...
 
const OnNetSelectedonNetSelected () const
 Net-selected signal. More...
 
OnFailedSearchonFailedSearch ()
 Failed search signal. More...
 
const OnFailedSearchonFailedSearch () const
 Failed search signal. More...
 
const NetConstructionTraits< NC >::SizeParameter & sizeParameter () const
 Returns a const qualified reference to the size parameter of the search.
 

Additional Inherited Members

- Protected Member Functions inherited from NetBuilder::Task::Search< NC, ET, OBSERVER >
void selectBestNet (const DigitalNetConstruction< NC > &net, Real merit)
 Selects a new best net and emits an OnNetSelected signal.
 
- Protected Attributes inherited from NetBuilder::Task::Search< NC, ET, OBSERVER >
std::unique_ptr< OnNetSelectedm_onNetSelected
 
std::unique_ptr< OnFailedSearchm_onFailedSearch
 
Dimension m_dimension
 
NetConstructionTraits< NC >::SizeParameter m_sizeParameter
 
unsigned int m_nRows
 
unsigned int m_nCols
 
DigitalNetConstruction< NC > m_bestNet
 
Real m_bestMerit
 
std::unique_ptr< Observerm_observer
 
int m_verbose
 
bool m_earlyAbortion
 

Detailed Description

template<NetConstruction NC, EmbeddingType ET, template< NetConstruction, EmbeddingType > class EXPLORER, template< NetConstruction > class OBSERVER = MinimumObserver>
class NetBuilder::Task::CBCSearch< NC, ET, EXPLORER, OBSERVER >

Class for CBC Search tasks.

Template template parameter EXPLORER must implement the following member functions:

  • void setVerbose() : set the verbosity level of the explorer.
  • void reset() : reset to its initial state the explorer.
  • void switchToCoordinate(Dimension coord) : switch the explorer to coordinate coord.
  • typename NetConstructionTraits<NC>::GenValue nextGenValue() : return the next generating value.
  • bool isOver() : indicate whether the exploration of the current coordinate is over. where NC is the template parameter of EXPLORER.

Constructor & Destructor Documentation

◆ CBCSearch() [1/3]

template<NetConstruction NC, EmbeddingType ET, template< NetConstruction, EmbeddingType > class EXPLORER, template< NetConstruction > class OBSERVER = MinimumObserver>
NetBuilder::Task::CBCSearch< NC, ET, EXPLORER, OBSERVER >::CBCSearch ( Dimension  dimension,
typename NetConstructionTraits< NC >::SizeParameter  sizeParameter,
std::unique_ptr< FigureOfMerit::CBCFigureOfMerit figure,
std::unique_ptr< Explorer >  explorer = std::make_unique<Explorer>(),
int  verbose = 0,
bool  earlyAbortion = false 
)
inline

Constructor.

Parameters
dimensionDimension of the searched net.
sizeParameterSize parameter of the searched net.
figureFigure of merit used to compare nets.
explorerExplorer to search for nets.
verboseVerbosity level.
earlyAbortionEarly-abortion switch. If true, the computations will be stopped if the net is worse than the best one so far.

◆ CBCSearch() [2/3]

template<NetConstruction NC, EmbeddingType ET, template< NetConstruction, EmbeddingType > class EXPLORER, template< NetConstruction > class OBSERVER = MinimumObserver>
NetBuilder::Task::CBCSearch< NC, ET, EXPLORER, OBSERVER >::CBCSearch ( Dimension  dimension,
std::unique_ptr< DigitalNetConstruction< NC >>  baseNet,
std::unique_ptr< FigureOfMerit::CBCFigureOfMerit figure,
std::unique_ptr< Explorer >  explorer = std::make_unique<Explorer>(),
int  verbose = 0,
bool  earlyAbortion = false 
)
inline

Constructor.

Parameters
dimensionDimension of the searched net.
baseNetNet from which to start the search.
figureFigure of merit used to compare nets.
explorerExplorer to search for nets.
verboseVerbosity level.
earlyAbortionEarly-abortion switch. If true, the computations will be stopped if the net is worse than the best one so far.

◆ CBCSearch() [3/3]

template<NetConstruction NC, EmbeddingType ET, template< NetConstruction, EmbeddingType > class EXPLORER, template< NetConstruction > class OBSERVER = MinimumObserver>
NetBuilder::Task::CBCSearch< NC, ET, EXPLORER, OBSERVER >::CBCSearch ( CBCSearch< NC, ET, EXPLORER, OBSERVER > &&  )
default

Default move constructor.

Deletes the implicit copy constructor.

Member Function Documentation

◆ execute()

template<NetConstruction NC, EmbeddingType ET, template< NetConstruction, EmbeddingType > class EXPLORER, template< NetConstruction > class OBSERVER = MinimumObserver>
virtual void NetBuilder::Task::CBCSearch< NC, ET, EXPLORER, OBSERVER >::execute ( )
inlineoverridevirtual

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