DEAP中的PyGame / PyMunk评估问题

时间:2019-05-18 03:54:08

标签: python pygame deap pymunk

这似乎是最奇怪的事情,但是我到此为止。我有一个PyGame / PyMunk模拟(计划运行2秒的简单BouncyBall演示)。我将它挂接到DEAP,以尝试优化线条的位置,以最大程度地增加屏幕上的球数。

第一代似乎运行良好(并持续了预期的时间),但是其他任何几代都只是飞过。

我正在打印invalid_ind列表,那里有内容,但是pygame似乎只是不想在第一代之后重新运行。

这里是否正在发生某种底层优化?我不希望DEAP运行10代* 50个人* 2秒评估会立即运行,所以我很困惑。

这是我的DEAP code

这是我的BouncyBall code

它们在第一代中很好地连接在一起,但除此之外的任何事物都会飞逝。

1 个答案:

答案 0 :(得分:0)

我不知道这是否对任何人都有帮助,但是问题似乎与我如何处理PyMunk代码的评估有关。无论我运行DEAP还是手工GA,实例化每个个体的效果都相同。

但是,通过BouncyBall调用subprocess代码可以正常工作。