MlpIndividual Class Reference

Concrete MLP individual for Pareto memetic optimization. More...

#include <MlpIndividual.hpp>

Inheritance diagram for MlpIndividual:
Individual

List of all members.

Public Member Functions

 MlpIndividual ()
 Construct uninitialized; only for reading values very soon.
 MlpIndividual (const MlpObjectives &mobj, unique_ptr< jymlp::Mlp > imlp, shared_ptr< Dataset > ids)
 Constructor by taking ownership of a jyu::Mlp instance and shared ownership of a dataset.
 MlpIndividual (const MlpIndividual &original)
virtual ~MlpIndividual ()
 Default destructor.
virtual void addUnaryOperator (unique_ptr< MlpBackpropUnaryOperator > uop)
virtual Individualclone ()
 Cloning can use the default copy constructor, but otherwise it is specific to the derived classes.
virtual void evaluate ()
 Evaluate objective functions.
virtual void mutate ()
 Apply evolutionary mutation operator(s).
virtual void improve (mt19937 *mt)
 Apply memetic improvement operator(s).
virtual vector< double > getTrace ()
 Get measures that are interesting in post-run tracing; subclasses would know which measures are of importance.
virtual pair< unique_ptr
< Individual >, unique_ptr
< Individual > > 
crossWith (Individual &other)

Protected Member Functions

void impl_from_stream (istream &repr)
 "Crowding" value/dist. (e.g. NSGA-II)
void impl_to_stream (ostream &repr)
 Write the actual (concrete) representation to a stream.
void crossWith (MlpIndividual &other)
 This is specific to MlpIndividual.

Friends

class MlpBackpropUnaryOperator

Detailed Description

Concrete MLP individual for Pareto memetic optimization.


Constructor & Destructor Documentation

MlpIndividual::MlpIndividual (  ) 

Construct uninitialized; only for reading values very soon.

MlpIndividual::MlpIndividual ( const MlpObjectives mobj,
unique_ptr< jymlp::Mlp imlp,
shared_ptr< Dataset ids 
)

Constructor by taking ownership of a jyu::Mlp instance and shared ownership of a dataset.

All of these are required for meaningful computations.


Member Function Documentation

void MlpIndividual::crossWith ( MlpIndividual other  )  [protected, virtual]

This is specific to MlpIndividual.

FIXME: Probably to go away.

Implements Individual.

void MlpIndividual::evaluate (  )  [virtual]

Evaluate objective functions.

Is to be called before getting values, if any operators have been applied. The concrete derived class must assign objective values when this is called.

Implements Individual.

vector< double > MlpIndividual::getTrace (  )  [virtual]

Get measures that are interesting in post-run tracing; subclasses would know which measures are of importance.

By default, the objectives are returned as a vector object.

Reimplemented from Individual.

void MlpIndividual::impl_from_stream ( istream &  repr  )  [protected, virtual]

"Crowding" value/dist. (e.g. NSGA-II)

Read the actual (concrete) representation from a stream.

Implements Individual.

void MlpIndividual::impl_to_stream ( ostream &  repr  )  [protected, virtual]

Write the actual (concrete) representation to a stream.

Implements Individual.

void MlpIndividual::improve ( mt19937 *  mt  )  [virtual]

Apply memetic improvement operator(s).

Up to the concrete class.

Implements Individual.

void MlpIndividual::mutate (  )  [virtual]

Apply evolutionary mutation operator(s).

Up to the concrete class.

Implements Individual.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Friends

Generated on 1 Sep 2016 for Momulper - Multiobjective MLP for Classification by  doxygen 1.6.1