mreinfurt
5/18/2013 - 11:37 PM

gistfile1.txt

void Population::selection()
{
  std::vector<Conformation> old = m_Conformations;

	for (unsigned int i = 0;i < m_Conformations.size(); ++i)
	{
		int random = rand() % (int) m_CumulativeEnergy;
		int sumFitness = 0;

		for (unsigned int j = 0; j < m_Conformations.size(); ++j)
		{
			sumFitness += old.at(j).getEnergy();
			if(sumFitness > random)
			{
				m_Conformations[i] = old[j];
				break;
			}
		}
	}
}