git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@907 331e1502-861f-0410-8da2-ba01fb791d7f
This commit is contained in:
parent
b74a446baa
commit
9eaec1761a
1 changed files with 38 additions and 0 deletions
|
|
@ -55,6 +55,39 @@
|
||||||
* Besides, note that, contrary to the mono-objective case (and to EO) where the fitness value of a solution is confused with its objective value,
|
* Besides, note that, contrary to the mono-objective case (and to EO) where the fitness value of a solution is confused with its objective value,
|
||||||
* the fitness value differs of the objectives values in the multi-objective case.
|
* the fitness value differs of the objectives values in the multi-objective case.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/*
|
||||||
|
template < typename DataType, typename DataTypeEx > struct Wrapper {
|
||||||
|
|
||||||
|
Wrapper() {}
|
||||||
|
|
||||||
|
Wrapper( const DataType& data )
|
||||||
|
: embededData( data ) {}
|
||||||
|
|
||||||
|
Wrapper( const Wrapper& wrapper )
|
||||||
|
: embededData( wrapper.embededData ), embededDataEx( wrapper.embededDataEx ) {}
|
||||||
|
|
||||||
|
operator const DataType& () const { return embededData; }
|
||||||
|
|
||||||
|
Wrapper& operator= ( const Wrapper& wrapper ) {
|
||||||
|
|
||||||
|
embededData = wrapper.embededData;
|
||||||
|
embededDataEx = wrapper.embededDataEx;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
Wrapper& operator= ( const DataType& data ) {
|
||||||
|
|
||||||
|
embededData = data;
|
||||||
|
return *this;
|
||||||
|
}
|
||||||
|
|
||||||
|
DataType embededData;
|
||||||
|
DataTypeEx embededDataEx;
|
||||||
|
};
|
||||||
|
**/
|
||||||
|
|
||||||
|
|
||||||
template < class MOEOObjectiveVector, class MOEOFitness, class MOEODiversity >
|
template < class MOEOObjectiveVector, class MOEOFitness, class MOEODiversity >
|
||||||
class MOEO : public EO < MOEOObjectiveVector >
|
class MOEO : public EO < MOEOObjectiveVector >
|
||||||
{
|
{
|
||||||
|
|
@ -65,6 +98,7 @@ class MOEO : public EO < MOEOObjectiveVector >
|
||||||
|
|
||||||
/** the fitness type of a solution */
|
/** the fitness type of a solution */
|
||||||
typedef MOEOFitness Fitness;
|
typedef MOEOFitness Fitness;
|
||||||
|
// typedef Wrapper< MOEOFitness, MOEOObjectiveVector > Fitness;
|
||||||
|
|
||||||
/** the diversity type of a solution */
|
/** the diversity type of a solution */
|
||||||
typedef MOEODiversity Diversity;
|
typedef MOEODiversity Diversity;
|
||||||
|
|
@ -142,6 +176,8 @@ class MOEO : public EO < MOEOObjectiveVector >
|
||||||
{
|
{
|
||||||
throw std::runtime_error("invalid fitness in MOEO");
|
throw std::runtime_error("invalid fitness in MOEO");
|
||||||
}
|
}
|
||||||
|
// const_cast< Fitness& >( fitnessValue ).embededDataEx = objectiveVectorValue;
|
||||||
|
|
||||||
return fitnessValue;
|
return fitnessValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -314,4 +350,6 @@ class MOEO : public EO < MOEOObjectiveVector >
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#endif /*MOEO_H_*/
|
#endif /*MOEO_H_*/
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue