问题标签 [deap]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
226 浏览

genetic-programming - 在遗传编程 DEAP 中,评估停留在局部最优。如何防止 GP 收敛到局部最优?

我正在尝试对几何模型进行符号回归。而且它在大多数情况下都会卡在健身分数不接近 0 的情况下。所以我做了一些研究,发现这是局部最小值的问题。有些人试图将人口多样性置于健康之上。但这不是我想要的。

所以我所做的是重新配置algorithms.eaSimple并在其中添加了一个块。因此,当最后n=50一代具有相同的适应度时,它会重置种群。除此之外,我没有任何想法,因为我对它很陌生。 有没有更好的方法来做到这一点?

我正在使用最小健身。creator.create("FitnessMin", base.Fitness, weights=(-1.0,))

输出

在第 59 代获得 54.4395 最低适应度 50 次后,人口将重置。

0 投票
1 回答
852 浏览

python-3.x - 具有多个权重的 DEAP 算法

我对 DEAP 很陌生,查看了几个地方和示例,我看到它使用这种方法为遗传算法创建类:

我不明白的是权重参数。假设 DEAP 可用于解决多目标问题(最大化和最小化),这就是为什么权重可以是正数或负数的原因。

但它是如何与适应度/目标函数相关联的呢?适应度函数是否必须返回多个值,每个权重一个?

0 投票
1 回答
68 浏览

python - DEAP 中的 PyGame/PyMunk 评估问题

这似乎是最奇怪的事情,但是我在这里束手无策。我有一个 PyGame/PyMunk 模拟(计划运行 2 秒的简单 BouncyBall 演示)。我将它连接到 DEAP 以尝试优化线路布局,以最大限度地增加屏幕上最后的球数。

第一代似乎运行良好(并且在预期的时间内),但是任何剩余的代都只是飞过。

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

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

这是我的DEAP 代码

这是我的BouncyBall 代码

它们在第 1 代中很好地连接在一起,但除此之外的任何东西都会过去。

0 投票
1 回答
291 浏览

python - DEAP:针对机票问题实施 NSGA-ii

我有一个列表,其中包含 2 个属性,即costrating。我需要找到成本更低、评级更高的可能最佳航班。这是一个具有最小化和最大化目标的多对象优化问题。如何在 DEAP 中实现这一点?

我正在努力实施个人,因为我对 DEAP 很陌生。

0 投票
0 回答
289 浏览

python - 我可以在 conda 列表中找到 deap,但无法在 python 2.7 中导入名称库

我尝试将 DEAP 用于多目标 PSO。因此,我使用 pip install 在我的 anaconda 环境中安装了 deap。我在 conda 列表中找到了 deap。但我不能在python中导入deap。你能帮我解决这个问题吗?我在安装软件包之前激活了 conda 环境。

我的默认 python 路径和 deap 库路径如下。

当我执行我的文件 deap.py 时,我收到以下错误。

Traceback(最近一次调用最后一次):文件“deap.py”,第 5 行,来自 deap 导入库、创建者、工具、算法

ImportError:无法导入名称库

0 投票
1 回答
50 浏览

python - 如何在 Colab 中将长 DEAP 日志(10 MM)转换为数据帧时修复 RAM 限制?

在将包含大约 10 MM 条目的 DEAP 日志(本质上是字典列表)转换为 Dataframe 以进行进一步处理时,我收到了一条关于 Google Colab 中 RAM 溢出的消息。

我正在使用 DEAP 包进行一些实验,因为我的机器又慢又旧,我一直在帮助自己使用 Google 的 Colab 服务。模拟的结果是一个 DEAP 的日志,这是一个字典列表。每个字典都是对模拟屏幕截图的重要值的汇总。我一直在将这个字典列表转换为 Dataframes 进行分析,但是对于最大的模拟,由于它超过了分配的 RAM,进程崩溃了。

字典存储这种值:

我有兴趣存储为 pandas 数据帧的日志在 10MM 到 12MM 之间。稍后,我会将这个数字减少到五分之一左右。

在对日志进行腌制和解封后,我发现我使用了分配的 12.7GB 中的大约 7.7GB。

我试过了:

没有成功。

我得到的错误是:

我希望有一个包含 DEAP 日志中所有数据的数据框。

0 投票
0 回答
114 浏览

python - 使用 EAsimple 和 Deap 进行检查点

我的问题涉及检查点。我的遗传算法代码使用 eaSimple 运行良好,但我需要对具有多代 (50+) 的大量人口 (1000+) 运行测试和评估。因为我在远程工作,所以我与主机的连接将在 12 小时后超时。这些更大的测试可以运行比这个时间更长的时间,我最终会失去我在算法中的位置。我试图创建一个检查点,但它只会在所有代都运行后创建一个检查点。有没有办法使用 EaSimple 进行检查点,还是我必须编写自己的遗传算法来包含手动检查点系统?

根据deap手册,我无法使用包含的算法检查点,有没有办法解决这个问题? https://deap.readthedocs.io/en/master/tutorials/advanced/checkpoint.html

谢谢

0 投票
0 回答
295 浏览

python - 在 Jupyter 笔记本中使用 SCOOP

我学得很深,我想用勺子。是否可以在笔记本中测试我的程序?

我从 scoop 文档中了解到 $ python -m scoop your_program.py 是正确的运行方式。有什么方法可以将“-m scoop”作为参数传递给笔记本?

谢谢。

0 投票
1 回答
34 浏览

deap - 我可以在 GP 中使用多个突变函数吗?

我想在 GP 中使用不止一种变异方法,例如 mutUniform 和 mutEmphemeral。但是所有的算法都只能接收一个参数。有没有办法可以解决这个问题?

0 投票
1 回答
281 浏览

python - 使用 DEAP 在遗传编程(最大化问题)中种群的平均适应度下降是否正常?

我在 python 中使用 DEAP 库来解决遗传编程最大化问题。

我曾经用eaSimple algorithm60% 的交叉概率和 30% 的突变概率创建种群。

种群中最佳个体的适应度正在增加,但种群的平均适应度有时会下降(例如,第一个种群的平均适应度大于最后一个种群的平均适应度)。

这是正常的还是设置有问题?

另一件要提的是,我将最差适应度设置为零,并且人口确实包括适应度值为零的个人(人口规模为 1000)。