# exampletree = gp.exampletree() # exampletree.display() # random1 = gp.makerandomtree(2) # random1.display() # print random1.evaluate([7, 1]) # print random1.evaluate([2, 4]) # random2 = gp.makerandomtree(2) # print random2.evaluate([5, 3]) # print random2.evaluate([5, 20]) # hiddenset = gp.buildhiddenest() # print hiddenset # print gp.scorefunction(random2, hiddenset) # print gp.scorefunction(random1, hiddenset) # random2.display() # print "---------------------------" # muttree = gp.mutate(random2, 2) # muttree.display() # print gp.scorefunction(random2, hiddenset) # print gp.scorefunction(muttree, hiddenset) # cross = gp.crossover(random1, random2) # cross.display() # rf = gp.getrankfunction(gp.buildhiddenest()) # gp.evolve(2, 500, rf, mutationrate=0.2, breedinggrate=0.1, pexp=0.7, pnew=0.1) # ---------------------------------------------------------- # p1 = gp.makerandomtree(5) # p2 = gp.makerandomtree(5) # print gp.gridgame([p1, p2]) winner = gp.evolve(5, 100, gp.tournament, maxgen=50) # print winner print gp.gridgame([winner, gp.humanplayer()])
# if money["player2"] < 0: # return 1 # elif money["player1"] < 0: # return 2 # prev_S = board.index(1) # board[prev_S] = 0 # if player1_bid==player2_bid: # board[prev_S + tiebreak] = 1 # tiebreak *= -1 # elif player1_bid > player2_bid: # board[prev_S-1] = 1 # else: # board[prev_S+1] = 1 # moves += 1 # return has_winner(board) # # player1 = Player(-1) # # player2 = Player(1) # # player1 = gp.makerandomtree(4) # # player2 = gp.makerandomtree(4) # # tourney_champ = gp.tournament([player1, player2], bidgame) champ = gp.evolve(10, 50, gp.tournament, maxgen=50, treedepth=10) print "WINNER IS:" print champ
inverse_novelty[s] += 1. individual.fitness *= 1. / len(history_state) return individual pop = gp.BinaryPopulation(pop_params['n_parents'], pop_params['n_offsprings'], pop_params['n_breeding'], pop_params['tournament_size'], pop_params['mutation_rate'], pop_params['seed'], genome_params) def record_history(pop, history): history.setdefault('fitness', []) history['fitness'].append(pop.champion.fitness) history.setdefault('dna', []) history['dna'].append(pop.champion.genome.dna) history = gp.evolve(pop, objective, pop_params['max_generations'], pop_params['min_fitness'], record_history=record_history) history['params'] = params fn = f'results-{params["level"]}.pkl' print(f'saving to {fn}') with open(fn, 'wb') as f: pickle.dump(history, f)
def aRoundRobinTournament(): print 'A Round-Robin Tournament 循环赛' reload(gp) winner=gp.evolve(5,100,gp.tournament,maxgen=50)
def alayingAgainstRealPeople(): print 'Playing Against Real People' reload(gp) winner=gp.evolve(5,100,gp.tournament,maxgen=50) gp.gridgame([winner,gp.humanplayer()])
def buildingTheEnvironment(): print 'Building the Environment' reload(gp) rf=gp.getrankfunction(gp.buildhiddenset( )) gp.evolve(2,500,rf,mutationrate=0.2,breedingrate=0.1,pexp=0.7,pnew=0.1)
class Main: def __init__(self): print "this is genom program." if __name__ == "__main__": main = Main() ''' rf = gp.getrankfunction(gp.buildhiddenset()) gp.evolve(2, 500, rf, mutationrate = 0.2, breedingrate = 0.1, elite = 20, pnew = 0.1) ''' t_winner = gp.evolve(5, 100, gridwar.tournament, maxgen=100, mutationrate=0.1, breedingrate=0.3, elite=10, pnew=0.05) winner = gridwar.gridgame([t_winner, gridwar.humanplayer()]) if winner == 0: print 'You lose.' elif winner == 1: print 'You win!' elif winner == 2: print 'KO! You lose.' elif winner == 3: print 'KO! You win!' else: print 'Draw'
#! /usr/bin/python2 import gp import gridwar class Main: def __init__(self): print "this is genom program." if __name__ == "__main__": main = Main() ''' rf = gp.getrankfunction(gp.buildhiddenset()) gp.evolve(2, 500, rf, mutationrate = 0.2, breedingrate = 0.1, elite = 20, pnew = 0.1) ''' t_winner = gp.evolve(5, 100, gridwar.tournament, maxgen = 100, mutationrate = 0.1, breedingrate = 0.3, elite = 10, pnew = 0.05) winner = gridwar.gridgame([t_winner, gridwar.humanplayer()]) if winner == 0: print 'You lose.' elif winner == 1: print 'You win!' elif winner == 2: print 'KO! You lose.' elif winner == 3: print 'KO! You win!' else: print 'Draw'
#!/usr/bin/python # coding: utf-8 """ Author: YuJun Email: [email protected] Date created: 2017/1/13 """ from gp import example_tree, build_hidden_set, get_rank_func, evolve from gp import tournament, grid_game, HumanPlayer # node = example_tree() # print node.evaluate([1, 3]) # # rank_fun = get_rank_func(build_hidden_set()) # evolve(2, 500, rank_fun, mutation_rate=0.2, breeding_rate=0.1, prob_exp=0.7, prob_new=0.1) winner = evolve(5, 100, tournament, 50) grid_game([winner, HumanPlayer()])