from pyrobot.brain.ga import *

class MaxBitsGA(GA):
   def fitnessFunction(self, i):
      return sum(self.pop.individuals[i].genotype)
   def isDone(self):
      return self.pop.bestMember.fitness == len(self.pop.bestMember.genotype)

ga = MaxBitsGA(Population(100, Gene, size=30, mode='bit',
                         verbose=1, elitePercent = 0.05),
              mutationRate=0.1, crossoverRate=0.6, verbose=1,
              maxGeneration=50)

ga.logAverageFitness()
ga.logBestFitness()
ga.evolve()
