LZ07_F4 Class Reference

multi-objective problem LZ07_F4 More...

#include <MultiObjectiveFunctions.h>

Inheritance diagram for LZ07_F4:

ObjectiveFunctionVS< double > ObjectiveFunctionT< T * > ObjectiveFunction

List of all members.

Public Member Functions

 LZ07_F4 (unsigned d=30)
 Constructor.
 ~LZ07_F4 ()
 Destructor.
unsigned int objectives () const
 return the number of objectives to optimize
void result (double *const &point, std::vector< double > &value)
bool ProposeStartingPoint (double *&point) const
bool utopianFitness (std::vector< double > &value) const
 If possible, this method returns (a bound on) the best possible fitness.
bool nadirFitness (std::vector< double > &value) const
 If possible, this method returns (a bound on) the worst possible fitness.


Detailed Description

multi-objective problem LZ07_F4

Multi objective problem with complicated Pareto Set shape. The LZ07_F4 problem is given by:

\[ f_1(x) = x_1 + \frac{2}{|J_1|} \sum_{j \in J_1} (x_j - 0.8 x_1 \cos(\frac{6 \pi x_1 + \frac{j \pi}{n}}{3}))^2 \]

\[ f_2(x) = 1 - \sqrt{x_1} + \frac{2}{|J_2|} \sum_{j \in J_2} (x_j - 0.8 x_1 \sin(6 \pi x_1 + \frac{j \pi}{n}))^2 \]

where

\[ x= (x_1, \ldots,x_n) \in [0,1]\times[-1,1]^{n-1} \]

\[ J_1=\{j|j \mbox{ is odd and } 2 \le j \le n\} \]

and

\[ J_2=\{j|j \mbox{ is even and } 2 \le j \le n\} \]

and usually $n = 30$

Definition at line 1285 of file MultiObjectiveFunctions.h.


Constructor & Destructor Documentation

LZ07_F4::LZ07_F4 ( unsigned  d = 30  ) 

Constructor.

Definition at line 2093 of file MultiObjectiveFunctions.cpp.

References ObjectiveFunction::m_name.

LZ07_F4::~LZ07_F4 (  ) 

Destructor.

Definition at line 2098 of file MultiObjectiveFunctions.cpp.

References ObjectiveFunctionT< T * >::constrainthandler.


Member Function Documentation

bool LZ07_F4::nadirFitness ( std::vector< double > &  value  )  const [virtual]

If possible, this method returns (a bound on) the worst possible fitness.

For single objective optimization this information is rarely of any use, while for multi objective optimization a so-called nadir point is important for the computation of standard quality indicators like the hypervolume.

Parameters:
fitness component wise worst fitness
Returns:
true if a nadir point is known, false otherwise

Reimplemented from ObjectiveFunctionVS< double >.

Definition at line 2149 of file MultiObjectiveFunctions.cpp.

unsigned int LZ07_F4::objectives (  )  const [virtual]

return the number of objectives to optimize

Implements ObjectiveFunction.

Definition at line 2105 of file MultiObjectiveFunctions.cpp.

bool LZ07_F4::ProposeStartingPoint ( double *&  point  )  const

void LZ07_F4::result ( double *const &  point,
std::vector< double > &  value 
)

bool LZ07_F4::utopianFitness ( std::vector< double > &  value  )  const [virtual]

If possible, this method returns (a bound on) the best possible fitness.

For the single objective case the function should return the fitness in the global optimum. For the multi objective case this function should return a utopian point.

Parameters:
fitness component wise utopian fitness
Returns:
true if an utopian point is known, false otherwise

Reimplemented from ObjectiveFunctionVS< double >.

Definition at line 2144 of file MultiObjectiveFunctions.cpp.


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