void update(Population& population) { std::cout << "W tym pokoleniu najlepszy wynik to "<<std::endl; population.getSubjects().at( population.getBestId() )->print(); population.getCurrentBestFF()->print(); std::cout << std::endl; }
void update(Population& population) { FunctionSubject *toCheck = EvolFunctions::ptr_cast<SubjectPtr,FunctionSubject>(population.getSubjects().at( population.getBestId() )); /* * sprawdzenie czy w danym kroku algorytmu (danej generacji) wynik posredni jest poprawny, tj. zgodny z reczna symulacja */ M("Sprawdzanie wynikow czastkowych dzialania algorytmu."); BOOST_CHECK(toCheck->getValue() == correctPartialResults[generations]); C(toCheck->getValue() == correctPartialResults[generations]); population.getCurrentBestFF()->print(); ++generations; std::vector< SubjectPtr >& populationSubjectsVector = population.getSubjects(); /* * testowanie czy na poczatku (przed kazdym obiegiem petli glownej) istnieje poprawna ilosc osobnikow (obiektow) */ M("Sprawdzanie ilosci osobnikow w populacji przed krokiem petli algorytmu."); BOOST_CHECK(populationSubjectsVector.size() == populationSize); C(populationSubjectsVector.size() == populationSize); }