Exemplo n.º 1
0
# 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()])
Exemplo n.º 2
0
# 			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
Exemplo n.º 3
0
                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)
Exemplo n.º 4
0
Arquivo: run.py Projeto: wz125/courses
def aRoundRobinTournament(): 
  print 'A Round-Robin Tournament 循环赛'
  reload(gp)
  winner=gp.evolve(5,100,gp.tournament,maxgen=50)
Exemplo n.º 5
0
Arquivo: run.py Projeto: wz125/courses
def alayingAgainstRealPeople():
  print 'Playing Against Real People'
  reload(gp)
  winner=gp.evolve(5,100,gp.tournament,maxgen=50)
  gp.gridgame([winner,gp.humanplayer()])
Exemplo n.º 6
0
Arquivo: run.py Projeto: wz125/courses
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)
Exemplo n.º 7
0
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'
Exemplo n.º 8
0
# 			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
Exemplo n.º 9
0
#! /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'
Exemplo n.º 10
0
#!/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()])