11 std::vector <IndividualP> *parentPop;
12 boost::shared_ptr<std::vector <std::vector <IndividualP> > > fronts;
13 SelectionOperatorP selRandomOp, selWorstOp;
24 void quickSort(std::vector <IndividualP> *group,
int left,
int right, std::string prop,
int objective);
27 void sortBasedOnProperty(std::vector <IndividualP>* deme,
double* fMin,
double* fMax, std::string prop,
int objective);
34 int checkDominance(MOFitnessP fitness1, MOFitnessP fitness2);
37 void nonDomSorting(boost::shared_ptr<std::vector <IndividualP> > pool,
int N, boost::shared_ptr<std::vector <std::vector <IndividualP> > > fronts);
40 void crowdedDistanceEst(StateP state, std::vector <IndividualP> *deme);
42 void makeNewPop(StateP state, DemeP deme);
45typedef boost::shared_ptr<AlgNSGA2> AlgNSGA2P;
bool advanceGeneration(StateP state, DemeP deme)
Perform a single generation on a single deme.
bool initialize(StateP state)
Initialize the algorithm, read parameters from the system, do a sanity check.