def _oneGeneration(self):
     Coevolution._oneGeneration(self)
     # change roles between parasites and hosts
     tmp = self.pop
     self.pop = self.parasitePop
     self.parasitePop = tmp
 def __str__(self):
     return 'Competitive' + Coevolution.__str__(self)
 def _oneGeneration(self):
     Coevolution._oneGeneration(self)
     # change the main pop
     self.pops[self.mainpop] = self.pop
     self.mainpop = self.generation % self.numPops
     self.pop = self.pops[self.mainpop]
 def _stepsPerGeneration(self):
     if self.tournamentSize == None:
         return 2 * self.populationSize ** 2
     else:
         return Coevolution._stepsPerGeneration(self)
 def __str__(self):
     return "MultiPop" + str(self.numPops) + Coevolution.__str__(self)