32 #ifndef SHARK_ALGORITHMS_DIRECT_SEARCH_MOEAD 33 #define SHARK_ALGORITHMS_DIRECT_SEARCH_MOEAD 63 return m_crossoverProbability;
67 return m_crossoverProbability;
71 return m_mutation.
m_nm;
75 return m_mutation.
m_nm;
79 return m_crossover.
m_nc;
83 return m_crossover.
m_nc;
86 std::size_t
mu()
const{
100 return m_neighbourhoodSize;
104 return m_neighbourhoodSize;
107 template <
typename Archive>
110 archive & BOOST_SERIALIZATION_NVP(m_crossoverProbability);
111 archive & BOOST_SERIALIZATION_NVP(m_mu);
112 archive & BOOST_SERIALIZATION_NVP(
m_parents);
113 archive & BOOST_SERIALIZATION_NVP(
m_best);
114 archive & BOOST_SERIALIZATION_NVP(m_weights);
115 archive & BOOST_SERIALIZATION_NVP(m_neighbourhoods);
116 archive & BOOST_SERIALIZATION_NVP(m_neighbourhoodSize);
117 archive & BOOST_SERIALIZATION_NVP(m_bestDecomposedValues);
118 archive & BOOST_SERIALIZATION_NVP(m_crossover);
119 archive & BOOST_SERIALIZATION_NVP(m_mutation);
120 archive & BOOST_SERIALIZATION_NVP(m_curParentIndex);
126 std::vector<SearchPointType>
const & initialSearchPoints
132 std::vector<SearchPointType>
const & initialSearchPoints,
133 std::vector<ResultType>
const & functionValues,
134 RealVector
const & lowerBounds,
135 RealVector
const & upperBounds,
136 std::size_t
const mu,
139 double const crossover_prob,
141 std::vector<Preference>
const & weightVectorPreferences = std::vector<Preference>()
150 random::rng_type * mpe_rng;
151 double m_crossoverProbability;
154 std::size_t m_curParentIndex;
159 std::size_t m_neighbourhoodSize;
160 RealMatrix m_weights;
165 UIntMatrix m_neighbourhoods;
166 RealVector m_bestDecomposedValues;
175 #endif // SHARK_ALGORITHMS_DIRECT_SEARCH_MOEAD