我正在使用 pyevolve 使用多处理运行 GA。代码运行良好,但每一代 GA 都会使用更多内存。该代码正在为每一代创建新作业,而之前的作业在保留 RAM 时处于空闲状态。它最终在大约 10 代后崩溃。我该如何纠正这个问题?[Ram 使用][1][1]:https ://i.stack.imgur.com/knCC0.jpg
def main_run():
flowargs, rhoargs, zindex=get_params()
genome = G1DList.G1DList(18)
genome.initializator.set(myGA.myInitializator)
genome.crossover.set(myGA.mycrossover)
genome.mutator.set(pl.Mutators.G1DListMutatorSwap)
genome.setParams(z=zindex,f=flowargs,r=rhoargs)
genome.evaluator.set(get_rho)
ga = GSimpleGA.GSimpleGA(genome)
ga.minimax = Consts.minimaxType["minimize"]
ga.setGenerations(100)
ga.selector.set(Selectors.GRouletteWheel)
ga.setInteractiveMode(False)
ga.setMultiProcessing(True)
ga.evolve(freq_stats=1)
best = ga.bestIndividual()
print(best)
if __name__ == "__main__":
main_run()