25 #ifndef PAGMO_PROBLEM_CEC2013_H
26 #define PAGMO_PROBLEM_CEC2013_H
30 #include "../serialization.h"
34 namespace pagmo{
namespace problem {
59 std::string get_name()
const;
73 void sphere_func (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
74 void ellips_func(
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
75 void bent_cigar_func(
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
76 void discus_func(
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
77 void dif_powers_func(
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
78 void rosenbrock_func (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
79 void schaffer_F7_func (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
80 void ackley_func (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
81 void rastrigin_func (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
82 void weierstrass_func (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
83 void griewank_func (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
84 void schwefel_func (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
85 void katsuura_func (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
86 void bi_rastrigin_func (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
87 void grie_rosen_func (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
88 void escaffer6_func (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
89 void step_rastrigin_func (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
90 void cf01 (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
91 void cf02 (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
92 void cf03 (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
93 void cf04 (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
94 void cf05 (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
95 void cf06 (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
96 void cf07 (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
97 void cf08 (
const double *,
double *,
int ,
const double *,
const double *,
int)
const;
98 void shiftfunc (
const double*,
double*,
int,
const double*)
const;
99 void rotatefunc (
const double *,
double*,
int,
const double *)
const;
100 void asyfunc (
const double *,
double *,
int,
double)
const;
101 void oszfunc (
const double *,
double *,
int)
const;
102 void cf_cal(
const double *,
double *,
int,
const double *,
double *,
double *,
double *,
int)
const;
104 friend class boost::serialization::access;
105 template <
class Archive>
106 void serialize(Archive &ar,
const unsigned int)
108 ar & boost::serialization::base_object<base>(*this);
109 ar &
const_cast<unsigned int&
>(m_problem_number);
110 ar & m_rotation_matrix;
113 const unsigned int m_problem_number;
114 std::vector<double> m_rotation_matrix;
115 std::vector<double> m_origin_shift;
118 mutable std::vector<double> m_y;
119 mutable std::vector<double> m_z;
boost::shared_ptr< base > base_ptr
Alias for shared pointer to base problem.
std::vector< double > decision_vector
Decision vector type.
std::vector< double > origin_shift() const
Returns the origin shift used by the problem.
The CEC 2013 problems: Real-Parameter Single Objective Optimization Competition.
std::vector< double > fitness_vector
Fitness vector type.
decision_vector::size_type size_type
Problem's size type: the same as pagmo::decision_vector's size type.