dignea  1.0.0
Diverse Instance Generator with Novelty Search and Evolutionary Algorithms
NSPerformance< S > Class Template Reference

Class to represent the Novelty Search Algorithm This specialization is exclusively for EIG because it uses the vector of performance of each algorithm over the generated instance to compute novelty. More...

#include <NSPerformance.h>

Inheritance diagram for NSPerformance< S >:
NoveltySearch< S > Search< S >

Public Member Functions

 NSPerformance (unique_ptr< Distance< float >> dist, const float &threshold=2000, const float &finalThresh=2000, const int &k=15)
 Creates a new Novelty Search instance. More...
 
virtual json to_json () override
 Generates a json object with the relevant information of the class. More...
 
- Public Member Functions inherited from NoveltySearch< S >
 NoveltySearch (unique_ptr< Distance< float >> dist, const float &threshold=2000, const float &finalThresh=0.0001, const int &k=15)
 Creates a new Novelty Search instance. More...
 
Front< S > getResults () override
 Returns the results obtained by the Novelty Search in a Front object. More...
 
vector< S > run (vector< S > &population, const Problem< S > *problem) override
 Novelty Search Algorithm It looks for novelty using the genotypes of the individuals in the population. Computes the sparseness of each individual in the noveltyArchive and population. More...
 
virtual void cmpFinals (vector< S > &population, const Problem< S > *problem=nullptr)
 Compares the individuals in the population against the neighbors inside the archive of final Ss. If the score is good enough the individual will be included inside the archive of final solutions. More...
 
virtual void insertIntoArchive (const S &solution)
 Method to insert a new individual into the noveltyArchive of novelty solutions. More...
 
const vector< S > & getArchive () const
 
float getThreshold () const
 
float getK () const
 
float getFinalThresh () const
 
- Public Member Functions inherited from Search< S >
 Search ()=default
 Constructs a default Search.
 

Protected Member Functions

virtual vector< Descriptor > beforeRun (const vector< S > &population) override
 PerforS computational work necessary for running the NS This method creats a combined population using the individuals from the NS archive and the population. The resulting vector contains the average performance of each algorithm for each individual. More...
 
virtual vector< Descriptor > beforeCmpFinals (const vector< S > &population) override
 
virtual void insertFinal (const S &solution)
 Method to insert a new individual into the noveltyArchive of novelty Ss. More...
 

Additional Inherited Members

- Protected Attributes inherited from NoveltySearch< S >
unique_ptr< Distance< float > > distance
 
vector< S > noveltyArchive
 
vector< S > finalSs
 
vector< Descriptor > finalSsDesc
 
float threshold
 
float finalSThreshold
 
int k
 

Detailed Description

template<typename S>
class NSPerformance< S >

Class to represent the Novelty Search Algorithm This specialization is exclusively for EIG because it uses the vector of performance of each algorithm over the generated instance to compute novelty.

Template Parameters

Constructor & Destructor Documentation

◆ NSPerformance()

template<typename S >
NSPerformance< S >::NSPerformance ( unique_ptr< Distance< float >>  dist,
const float &  threshold = 2000,
const float &  finalThresh = 2000,
const int &  k = 15 
)
explicit

Creates a new Novelty Search instance.

Template Parameters
P
S
Parameters
threshold
dist
k

Member Function Documentation

◆ beforeRun()

template<typename S >
vector< Descriptor > NSPerformance< S >::beforeRun ( const vector< S > &  population)
overrideprotectedvirtual

PerforS computational work necessary for running the NS This method creats a combined population using the individuals from the NS archive and the population. The resulting vector contains the average performance of each algorithm for each individual.

Template Parameters
S
Parameters
population

Reimplemented from NoveltySearch< S >.

◆ insertFinal()

template<typename S >
void NSPerformance< S >::insertFinal ( const S &  solution)
protectedvirtual

Method to insert a new individual into the noveltyArchive of novelty Ss.

Template Parameters
Problem
S
Parameters
S

Reimplemented from NoveltySearch< S >.

◆ to_json()

template<typename S >
json NSPerformance< S >::to_json
overridevirtual

Generates a json object with the relevant information of the class.

Template Parameters
S
Returns
json

Reimplemented from NoveltySearch< S >.


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