OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
FixedPisaNsga2< CrossoverOperator, MutationOperator > Class Template Reference

#include <FixedPisaNsga2.h>

Inheritance diagram for FixedPisaNsga2< CrossoverOperator, MutationOperator >:
Collaboration diagram for FixedPisaNsga2< CrossoverOperator, MutationOperator >:

Public Types

typedef std::vector< IndividualSolutionState_t
 type used in solution state exchange with other optimizers
typedef Individual Individual_t
 type of our variator
typedef Variator< Individual_t, CrossoverOperator, MutationOperator > Variator_t
typedef Population< Individual_tPopulation_t
using individual = std::shared_ptr<typename FixedPisaNsga2::Individual_t>
 alias for usage in template
typedef std::vector< std::pair< double, double > > bounds_t
 type of bounds for design variables

Public Member Functions

 FixedPisaNsga2 (Expressions::Named_t objectives, Expressions::Named_t constraints, DVarContainer_t dvars, size_t dim, Comm::Bundle_t comms, CmdArguments_t args, std::vector< double > hypervolRef, int nrWorkerGroups)
 ~FixedPisaNsga2 ()
virtual void initialize ()
 Starting selection algorithm and variator PISA state machine.

Protected Member Functions

void writeVariatorCfg ()
 Write the variator config file.
void dispatch_forward_solves ()
virtual void run ()
virtual bool onMessage (MPI_Status status, size_t length)
 implementing poller hooks
virtual void postPoll ()
 executed after handling (if any) new request
virtual void setupPoll ()
 executed before starting polling loop
virtual void prePoll ()
 executed before checking for new request
virtual void onStop ()
 enable implementation to react to STOP tag

Protected Attributes

MPI_Comm comm_m
 communicator the poller listens to requests
bool is_running_
double last_polled_
 time of last MPI_Test
double poll_delay_
 delay in seconds between polls

Private Types

enum  PisaState_t {
  Initialize = 0 , InitializeSelector = 1 , Variate = 2 , Select = 3 ,
  Stop = 4 , VariatorStopped = 5 , VariatorTerminate = 6
}
 all PISA states More...

Private Member Functions

std::string getStateString (PisaState_t) const
void startSelector (std::string filename_base)
void runStateMachine ()
 executes one loop of the PISA state machine
void toSelectorAndCommit ()
 passes finished individuals to the selector
void exchangeSolutionStates ()
 if necessary exchange solution state with other optimizers
void selection ()
void mergeOffspring ()
void calcFitnesses ()
void calcDistances ()
void environmentalSelection ()
void matingSelection ()
int dominates (individual ind_a, individual ind_b)
bool checkParetoFront (unsigned int id)
 check if individual in pareto front and add if not
void dumpPopulation (std::shared_ptr< Population_t >)
void dumpPopulationToFile (std::shared_ptr< Population_t >, std::ostringstream &filename, bool dump_offspring)
void dumpPopulationToJSON (std::shared_ptr< Population_t >, std::ostringstream &filename, bool dump_offspring)
void dumpIndividualToFile (int id, individual &ind, std::ofstream &file, const size_t numDigits)
void dumpIndividualToJSON (int id, individual &ind, boost::property_tree::ptree &tree)
int irand (int range)

Private Attributes

int seed
const int tournament_m = 1
PisaState_t curState_m
 the current state of the state machine
const std::unique_ptr< Statistics< size_t > > statistics_
 collect some statistics of rejected and accepted individuals
std::unique_ptr< Variator_tvariator_m
std::vector< unsigned int > pp_all
 IDs of population.
std::vector< unsigned int > parent_queue_
 IDs that will make new offspring.
std::set< unsigned int > to_selector_
 Successfully run IDs to go into population.
std::vector< int > copies
 number of individuals in the n-th front
std::vector< double > dist
std::vector< std::vector< int > > front
 individuals in each front
std::map< size_t, double > fitness_
 map between id and fitness (sum of front number and dist)
Comm::Bundle_t comms_
 communicator bundle for the optimizer
std::deque< unsigned int > finishedBuffer_m
 buffer holding all finished job id's
std::map< size_t, individualjobmapping_m
 mapping from unique job ID to individual
std::shared_ptr< Population_tparetoFront_m
 population of pareto-front (for final output)
bool initialized_m
 indicating if initial population has been created
bounds_t dVarBounds_m
 bounds on each specified gene
Expressions::Named_t objectives_m
 objectives
Expressions::Named_t constraints_m
 constraints
DVarContainer_t dvars_m
 design variables
CmdArguments_t args_m
 command line arguments specified by the user
size_t alpha_m
 size of initial population
bool initialOptimization_m
 initial population optimization flag (increases initial population)
bool birthControl_m
 enforce strict population size
std::string file_start_m
 population file to be started from
size_t lambda_m
 number of parents the selector chooses
size_t dim_m
 number of objectives
size_t act_gen = 1
 current generation
size_t maxGenerations_m
 maximal generation (stopping criterion)
int num_workergroups_m
 number of individuals running
std::string resultFile_m
 result file name
std::string resultDir_m
int dump_freq_m
bool dump_offspring_m
 dump offspring / parents flag
bool dump_dat_m
 dump old data format
double hvol_eps_
 convergence accuracy if maxGenerations not set
double expected_hvol_
double current_hvol_
double conv_hvol_progress_
double hvol_progress_
std::vector< double > hvol_ref_m
 hypervolume reference point
std::string file_param_descr_
 file header for result files contains this parameter description
std::chrono::system_clock::time_point run_clock_start_
std::chrono::system_clock::time_point last_clock_
std::unique_ptr< Tracejob_trace_
std::unique_ptr< Traceprogress_
size_t exchangeSolStateFreq_m
 how often do we exchange solutions with other optimizers

Detailed Description

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
class FixedPisaNsga2< CrossoverOperator, MutationOperator >

Definition at line 67 of file FixedPisaNsga2.h.

Member Typedef Documentation

◆ bounds_t

typedef std::vector< std::pair<double, double> > Optimizer::bounds_t
inherited

type of bounds for design variables

Definition at line 39 of file Optimizer.h.

◆ individual

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
using FixedPisaNsga2< CrossoverOperator, MutationOperator >::individual = std::shared_ptr<typename FixedPisaNsga2::Individual_t>

alias for usage in template

Definition at line 104 of file FixedPisaNsga2.h.

◆ Individual_t

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
typedef Individual FixedPisaNsga2< CrossoverOperator, MutationOperator >::Individual_t

type of our variator

Definition at line 99 of file FixedPisaNsga2.h.

◆ Population_t

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
typedef Population< Individual_t > FixedPisaNsga2< CrossoverOperator, MutationOperator >::Population_t

Definition at line 102 of file FixedPisaNsga2.h.

◆ SolutionState_t

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
typedef std::vector< Individual > FixedPisaNsga2< CrossoverOperator, MutationOperator >::SolutionState_t

type used in solution state exchange with other optimizers

Definition at line 97 of file FixedPisaNsga2.h.

◆ Variator_t

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
typedef Variator< Individual_t, CrossoverOperator, MutationOperator > FixedPisaNsga2< CrossoverOperator, MutationOperator >::Variator_t

Definition at line 101 of file FixedPisaNsga2.h.

Member Enumeration Documentation

◆ PisaState_t

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
enum FixedPisaNsga2::PisaState_t
private

all PISA states

Enumerator
Initialize 
InitializeSelector 
Variate 
Select 
Stop 
VariatorStopped 
VariatorTerminate 

Definition at line 131 of file FixedPisaNsga2.h.

Constructor & Destructor Documentation

◆ FixedPisaNsga2()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
FixedPisaNsga2< CrossoverOperator, MutationOperator >::FixedPisaNsga2 ( Expressions::Named_t objectives,
Expressions::Named_t constraints,
DVarContainer_t dvars,
size_t dim,
Comm::Bundle_t comms,
CmdArguments_t args,
std::vector< double > hypervolRef,
int nrWorkerGroups )

Retrieves all (for the optimizer) relevant arguments specified on the command line, initializes the variator and sets up statistics and debug traces.

Parameters
[in]objectivesof optimization problem
[in]constraintsof optimization problem
[in]dvarsof optimization problem
[in]dimnumber of objectives
[in]commsavailable to the optimizer
[in]argsthe user passed on the command line
[in]hypervolRefhypervolume reference point

◆ ~FixedPisaNsga2()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
FixedPisaNsga2< CrossoverOperator, MutationOperator >::~FixedPisaNsga2 ( )

Member Function Documentation

◆ calcDistances()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::calcDistances ( )
private

◆ calcFitnesses()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::calcFitnesses ( )
private

◆ checkParetoFront()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
bool FixedPisaNsga2< CrossoverOperator, MutationOperator >::checkParetoFront ( unsigned int id)
private

check if individual in pareto front and add if not

◆ dispatch_forward_solves()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::dispatch_forward_solves ( )
protected

helper sending evaluation requests to the pilot

◆ dominates()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
int FixedPisaNsga2< CrossoverOperator, MutationOperator >::dominates ( individual ind_a,
individual ind_b )
private

◆ dumpIndividualToFile()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::dumpIndividualToFile ( int id,
individual & ind,
std::ofstream & file,
const size_t numDigits )
private

◆ dumpIndividualToJSON()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::dumpIndividualToJSON ( int id,
individual & ind,
boost::property_tree::ptree & tree )
private

◆ dumpPopulation()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::dumpPopulation ( std::shared_ptr< Population_t > )
private

Dumps index, objective values and bit string of all individuals in global_population.

◆ dumpPopulationToFile()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::dumpPopulationToFile ( std::shared_ptr< Population_t > ,
std::ostringstream & filename,
bool dump_offspring )
private

◆ dumpPopulationToJSON()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::dumpPopulationToJSON ( std::shared_ptr< Population_t > ,
std::ostringstream & filename,
bool dump_offspring )
private

◆ environmentalSelection()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::environmentalSelection ( )
private

◆ exchangeSolutionStates()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::exchangeSolutionStates ( )
private

if necessary exchange solution state with other optimizers

◆ getStateString()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::string FixedPisaNsga2< CrossoverOperator, MutationOperator >::getStateString ( PisaState_t ) const
private

◆ initialize()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
virtual void FixedPisaNsga2< CrossoverOperator, MutationOperator >::initialize ( )
virtual

Starting selection algorithm and variator PISA state machine.

Implements Optimizer.

◆ irand()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
int FixedPisaNsga2< CrossoverOperator, MutationOperator >::irand ( int range)
inlineprivate

Get a random integer between [0, range]

Parameters
[in]rangeof random number
Returns
random integer value between [0, range]

Definition at line 296 of file FixedPisaNsga2.h.

◆ matingSelection()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::matingSelection ( )
private

◆ mergeOffspring()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::mergeOffspring ( )
private

◆ onMessage()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
virtual bool FixedPisaNsga2< CrossoverOperator, MutationOperator >::onMessage ( MPI_Status status,
size_t length )
protectedvirtual

implementing poller hooks

Implements Optimizer.

◆ onStop()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
virtual void FixedPisaNsga2< CrossoverOperator, MutationOperator >::onStop ( )
inlineprotectedvirtual

enable implementation to react to STOP tag

Implements Optimizer.

Definition at line 122 of file FixedPisaNsga2.h.

◆ postPoll()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
virtual void FixedPisaNsga2< CrossoverOperator, MutationOperator >::postPoll ( )
protectedvirtual

executed after handling (if any) new request

Implements Optimizer.

◆ prePoll()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
virtual void FixedPisaNsga2< CrossoverOperator, MutationOperator >::prePoll ( )
inlineprotectedvirtual

executed before checking for new request

Implements Optimizer.

Definition at line 116 of file FixedPisaNsga2.h.

◆ run()

virtual void Poller::run ( )
inlineprotectedvirtualinherited

The poll loop stops when receiving a 'MPI_STOP_TAG' otherwise passes message to user.

Reimplemented in Pilot< Opt_t, Sim_t, SolPropagationGraph_t, Comm_t >.

Definition at line 79 of file Poller.h.

References comm_m, is_running_, last_polled_, MPI_STOP_TAG, onMessage(), onStop(), poll_delay_, postPoll(), prePoll(), and setupPoll().

Referenced by Sampler::initialize(), SampleWorker< Sim_t >::SampleWorker(), and Worker< Sim_t >::Worker().

Here is the call graph for this function:

◆ runStateMachine()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::runStateMachine ( )
private

executes one loop of the PISA state machine

◆ selection()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::selection ( )
private

◆ setupPoll()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
virtual void FixedPisaNsga2< CrossoverOperator, MutationOperator >::setupPoll ( )
inlineprotectedvirtual

executed before starting polling loop

Implements Optimizer.

Definition at line 115 of file FixedPisaNsga2.h.

◆ startSelector()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::startSelector ( std::string filename_base)
private

◆ toSelectorAndCommit()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::toSelectorAndCommit ( )
private

passes finished individuals to the selector

◆ writeVariatorCfg()

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
void FixedPisaNsga2< CrossoverOperator, MutationOperator >::writeVariatorCfg ( )
protected

Write the variator config file.

Member Data Documentation

◆ act_gen

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
size_t FixedPisaNsga2< CrossoverOperator, MutationOperator >::act_gen = 1
private

current generation

Definition at line 214 of file FixedPisaNsga2.h.

◆ alpha_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
size_t FixedPisaNsga2< CrossoverOperator, MutationOperator >::alpha_m
private

size of initial population

Definition at line 199 of file FixedPisaNsga2.h.

◆ args_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
CmdArguments_t FixedPisaNsga2< CrossoverOperator, MutationOperator >::args_m
private

command line arguments specified by the user

Definition at line 196 of file FixedPisaNsga2.h.

◆ birthControl_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
bool FixedPisaNsga2< CrossoverOperator, MutationOperator >::birthControl_m
private

enforce strict population size

Definition at line 203 of file FixedPisaNsga2.h.

◆ comm_m

MPI_Comm Poller::comm_m
protectedinherited

◆ comms_

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
Comm::Bundle_t FixedPisaNsga2< CrossoverOperator, MutationOperator >::comms_
private

communicator bundle for the optimizer

Definition at line 172 of file FixedPisaNsga2.h.

◆ constraints_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
Expressions::Named_t FixedPisaNsga2< CrossoverOperator, MutationOperator >::constraints_m
private

constraints

Definition at line 191 of file FixedPisaNsga2.h.

◆ conv_hvol_progress_

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
double FixedPisaNsga2< CrossoverOperator, MutationOperator >::conv_hvol_progress_
private

Definition at line 235 of file FixedPisaNsga2.h.

◆ copies

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::vector<int> FixedPisaNsga2< CrossoverOperator, MutationOperator >::copies
private

number of individuals in the n-th front

Definition at line 166 of file FixedPisaNsga2.h.

◆ current_hvol_

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
double FixedPisaNsga2< CrossoverOperator, MutationOperator >::current_hvol_
private

Definition at line 234 of file FixedPisaNsga2.h.

◆ curState_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
PisaState_t FixedPisaNsga2< CrossoverOperator, MutationOperator >::curState_m
private

the current state of the state machine

Definition at line 153 of file FixedPisaNsga2.h.

◆ dim_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
size_t FixedPisaNsga2< CrossoverOperator, MutationOperator >::dim_m
private

number of objectives

Definition at line 212 of file FixedPisaNsga2.h.

◆ dist

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::vector<double> FixedPisaNsga2< CrossoverOperator, MutationOperator >::dist
private

Definition at line 167 of file FixedPisaNsga2.h.

◆ dump_dat_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
bool FixedPisaNsga2< CrossoverOperator, MutationOperator >::dump_dat_m
private

dump old data format

Definition at line 230 of file FixedPisaNsga2.h.

◆ dump_freq_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
int FixedPisaNsga2< CrossoverOperator, MutationOperator >::dump_freq_m
private

Definition at line 226 of file FixedPisaNsga2.h.

◆ dump_offspring_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
bool FixedPisaNsga2< CrossoverOperator, MutationOperator >::dump_offspring_m
private

dump offspring / parents flag

Definition at line 228 of file FixedPisaNsga2.h.

◆ dVarBounds_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
bounds_t FixedPisaNsga2< CrossoverOperator, MutationOperator >::dVarBounds_m
private

bounds on each specified gene

Definition at line 187 of file FixedPisaNsga2.h.

◆ dvars_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
DVarContainer_t FixedPisaNsga2< CrossoverOperator, MutationOperator >::dvars_m
private

design variables

Definition at line 193 of file FixedPisaNsga2.h.

◆ exchangeSolStateFreq_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
size_t FixedPisaNsga2< CrossoverOperator, MutationOperator >::exchangeSolStateFreq_m
private

how often do we exchange solutions with other optimizers

Definition at line 262 of file FixedPisaNsga2.h.

◆ expected_hvol_

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
double FixedPisaNsga2< CrossoverOperator, MutationOperator >::expected_hvol_
private

Definition at line 233 of file FixedPisaNsga2.h.

◆ file_param_descr_

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::string FixedPisaNsga2< CrossoverOperator, MutationOperator >::file_param_descr_
private

file header for result files contains this parameter description

Definition at line 242 of file FixedPisaNsga2.h.

◆ file_start_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::string FixedPisaNsga2< CrossoverOperator, MutationOperator >::file_start_m
private

population file to be started from

Definition at line 205 of file FixedPisaNsga2.h.

◆ finishedBuffer_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::deque<unsigned int> FixedPisaNsga2< CrossoverOperator, MutationOperator >::finishedBuffer_m
private

buffer holding all finished job id's

Definition at line 175 of file FixedPisaNsga2.h.

◆ fitness_

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::map<size_t, double> FixedPisaNsga2< CrossoverOperator, MutationOperator >::fitness_
private

map between id and fitness (sum of front number and dist)

Definition at line 169 of file FixedPisaNsga2.h.

◆ front

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::vector< std::vector<int> > FixedPisaNsga2< CrossoverOperator, MutationOperator >::front
private

individuals in each front

Definition at line 168 of file FixedPisaNsga2.h.

◆ hvol_eps_

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
double FixedPisaNsga2< CrossoverOperator, MutationOperator >::hvol_eps_
private

convergence accuracy if maxGenerations not set

Definition at line 232 of file FixedPisaNsga2.h.

◆ hvol_progress_

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
double FixedPisaNsga2< CrossoverOperator, MutationOperator >::hvol_progress_
private

Definition at line 236 of file FixedPisaNsga2.h.

◆ hvol_ref_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::vector<double> FixedPisaNsga2< CrossoverOperator, MutationOperator >::hvol_ref_m
private

hypervolume reference point

Definition at line 239 of file FixedPisaNsga2.h.

◆ initialized_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
bool FixedPisaNsga2< CrossoverOperator, MutationOperator >::initialized_m
private

indicating if initial population has been created

Definition at line 184 of file FixedPisaNsga2.h.

◆ initialOptimization_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
bool FixedPisaNsga2< CrossoverOperator, MutationOperator >::initialOptimization_m
private

initial population optimization flag (increases initial population)

Definition at line 201 of file FixedPisaNsga2.h.

◆ is_running_

bool Poller::is_running_
protectedinherited

◆ job_trace_

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::unique_ptr<Trace> FixedPisaNsga2< CrossoverOperator, MutationOperator >::job_trace_
private

Definition at line 248 of file FixedPisaNsga2.h.

◆ jobmapping_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::map<size_t, individual > FixedPisaNsga2< CrossoverOperator, MutationOperator >::jobmapping_m
private

mapping from unique job ID to individual

Definition at line 178 of file FixedPisaNsga2.h.

◆ lambda_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
size_t FixedPisaNsga2< CrossoverOperator, MutationOperator >::lambda_m
private

number of parents the selector chooses

number of children the variator produces

Definition at line 210 of file FixedPisaNsga2.h.

◆ last_clock_

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::chrono::system_clock::time_point FixedPisaNsga2< CrossoverOperator, MutationOperator >::last_clock_
private

Definition at line 245 of file FixedPisaNsga2.h.

◆ last_polled_

double Poller::last_polled_
protectedinherited

time of last MPI_Test

Definition at line 57 of file Poller.h.

Referenced by Poller(), and run().

◆ maxGenerations_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
size_t FixedPisaNsga2< CrossoverOperator, MutationOperator >::maxGenerations_m
private

maximal generation (stopping criterion)

Definition at line 216 of file FixedPisaNsga2.h.

◆ num_workergroups_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
int FixedPisaNsga2< CrossoverOperator, MutationOperator >::num_workergroups_m
private

number of individuals running

Definition at line 218 of file FixedPisaNsga2.h.

◆ objectives_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
Expressions::Named_t FixedPisaNsga2< CrossoverOperator, MutationOperator >::objectives_m
private

objectives

Definition at line 189 of file FixedPisaNsga2.h.

◆ parent_queue_

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::vector<unsigned int> FixedPisaNsga2< CrossoverOperator, MutationOperator >::parent_queue_
private

IDs that will make new offspring.

Definition at line 161 of file FixedPisaNsga2.h.

◆ paretoFront_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::shared_ptr<Population_t> FixedPisaNsga2< CrossoverOperator, MutationOperator >::paretoFront_m
private

population of pareto-front (for final output)

Definition at line 181 of file FixedPisaNsga2.h.

◆ poll_delay_

double Poller::poll_delay_
protectedinherited

delay in seconds between polls

Definition at line 59 of file Poller.h.

Referenced by Poller(), and run().

◆ pp_all

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::vector<unsigned int> FixedPisaNsga2< CrossoverOperator, MutationOperator >::pp_all
private

IDs of population.

Definition at line 160 of file FixedPisaNsga2.h.

◆ progress_

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::unique_ptr<Trace> FixedPisaNsga2< CrossoverOperator, MutationOperator >::progress_
private

Definition at line 249 of file FixedPisaNsga2.h.

◆ resultDir_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::string FixedPisaNsga2< CrossoverOperator, MutationOperator >::resultDir_m
private

Definition at line 222 of file FixedPisaNsga2.h.

◆ resultFile_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::string FixedPisaNsga2< CrossoverOperator, MutationOperator >::resultFile_m
private

result file name

Definition at line 221 of file FixedPisaNsga2.h.

◆ run_clock_start_

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::chrono::system_clock::time_point FixedPisaNsga2< CrossoverOperator, MutationOperator >::run_clock_start_
private

Definition at line 244 of file FixedPisaNsga2.h.

◆ seed

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
int FixedPisaNsga2< CrossoverOperator, MutationOperator >::seed
private

Definition at line 149 of file FixedPisaNsga2.h.

◆ statistics_

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
const std::unique_ptr<Statistics<size_t> > FixedPisaNsga2< CrossoverOperator, MutationOperator >::statistics_
private

collect some statistics of rejected and accepted individuals

Definition at line 156 of file FixedPisaNsga2.h.

◆ to_selector_

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::set<unsigned int> FixedPisaNsga2< CrossoverOperator, MutationOperator >::to_selector_
private

Successfully run IDs to go into population.

Definition at line 163 of file FixedPisaNsga2.h.

◆ tournament_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
const int FixedPisaNsga2< CrossoverOperator, MutationOperator >::tournament_m = 1
private

Definition at line 150 of file FixedPisaNsga2.h.

◆ variator_m

template<template< class > class CrossoverOperator, template< class > class MutationOperator>
std::unique_ptr<Variator_t> FixedPisaNsga2< CrossoverOperator, MutationOperator >::variator_m
private

Definition at line 158 of file FixedPisaNsga2.h.


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