def calculate(chromosome, opponent): score = 0 for _ in range(1000): b = Board([GaHousePlayer(chromosome), GaHousePlayer(opponent)]) if b.start_game(250): if b.players[1].is_bankrupt: score += 1 return score, chromosome
def calculate(chromosome, opponents): results = [] for opponent in opponents: if chromosome != opponent: scores = [0, 0] while True: b = Board([GaHousePlayer(chromosome), GaHousePlayer(opponent)]) if b.start_game(250): if b.players[0].is_bankrupt: scores[1] += 1 if scores[1] > 4: break else: scores[0] += 1 if scores[0] > 4: break if scores[0] > scores[1]: results.append((chromosome, opponent)) else: results.append((opponent, chromosome)) return results