class Controller(): def __init__(self, n, population, nrOfIterations, pM): self.__Repository = Repository(n, population, nrOfIterations, pM) def reinitializeController(self, n, population, nrOfIterations, pM): self.__Repository = Repository(n, population, nrOfIterations, pM) def NextIteration(self): self.__Repository.NextIteration() def getNumberOfIterations(self): return self.__Repository.getNumberOfIterations() def getMinFitness(self): return self.__Repository.getFitnessMinimForEachState() def getLastFitness(self): allFitnesses = self.__Repository.getFitnessMinimForEachState() if allFitnesses[len(allFitnesses) - 1] >= allFitnesses[len(allFitnesses) - 2]: return allFitnesses[len(allFitnesses) - 2] return allFitnesses[len(allFitnesses) - 1] def NextClimb(self): return self.__Repository.NextClimb()