def test_get_next_generation_by_static_payout(self): organism_a = pd_org.PDOrg(pd_org.MemoryPDGenotype(0,[True], [])) organism_b = pd_org.PDOrg(pd_org.MemoryPDGenotype(0,[False], [])) organisms = [organism_a, organism_b] static_competitors = [organism_a, organism_b] contender_generator = pd_selection.get_contender_generator(organisms) pd_selection.get_next_generation_by_selection(organisms) results = pd_selection._get_next_generation(organisms, contender_generator) expected = [organism_a, organism_b] self.assertEqual(expected, expected)
def pd_evolve_population(): past_organisms = {} organisms = create_initial_population() output = [] headers = [] for i in range(pd_org.MAX_BITS_OF_MEMORY + 1): headers.append("Organisms With " + str(i) + " Bits of Memory") output.append(headers) for org in organisms: #adding into the dictionary if org in past_organisms: past_organisms[org].append(org) else: past_organisms[org] = [org] pd_make_detail_file.make_file_detail(organisms, past_organisms, 0) for i in range(NUMBER_OF_GENERATIONS): organisms = pd_selection.get_next_generation_by_selection(organisms) organisms = get_mutated_population(organisms) output.append(pd_analysis.get_tally_of_number_of_bits_of_memory(organisms)) for org in organisms: #adding into the dictionary if org in past_organisms: past_organisms[org].append(org) else: past_organisms[org] = [org] if ( (i + 1) % OUTPUT_FREQUENCY == 0): pd_make_detail_file.make_file_detail(organisms, past_organisms, i + 1) return output
def pd_evolve_population(): past_organisms = {} organisms = create_initial_population() output = [] headers = [] for i in range(pd_org.MAX_BITS_OF_MEMORY + 1): headers.append("Organisms With " + str(i) + " Bits of Memory") output.append(headers) for org in organisms: #adding into the dictionary if org in past_organisms: past_organisms[org].append(org) else: past_organisms[org] = [org] pd_make_detail_file.make_file_detail(organisms, past_organisms, 0) for i in range(NUMBER_OF_GENERATIONS): organisms = pd_selection.get_next_generation_by_selection(organisms) organisms = get_mutated_population(organisms) output.append( pd_analysis.get_tally_of_number_of_bits_of_memory(organisms)) for org in organisms: #adding into the dictionary if org in past_organisms: past_organisms[org].append(org) else: past_organisms[org] = [org] if ((i + 1) % OUTPUT_FREQUENCY == 0): pd_make_detail_file.make_file_detail(organisms, past_organisms, i + 1) return output
def test_get_next_generation_by_selection(self): result = pd_selection.get_next_generation_by_selection(self.organisms) self.assertEqual(len(self.organisms), len(result))
def test_get_next_generation_by_selection(self): result = pd_selection.get_next_generation_by_selection(self.organisms) self.assertEqual(len(self.organisms),len(result))