使用遗传算法将下水道从最差到最佳状态排序?

计算科学 算法 遗传算法
2021-12-25 03:30:25

问题

我在一个市政当局工作,我们正试图找出首先更换下水道的哪些部分,或者至少确定应该检查的区域。有人建议我使用这样的快速混乱遗传算法

我们有下水道的记录,如安装日期、管道类型(粘土、塑料等)、管道类型的预期寿命、树木覆盖(根部穿透管道导致破裂和堵塞)、地下水位(如果有破裂)该区域的水进入管道,然后进行了不必要的处理),并对 3,500 根管道中的 45 根进行了目视检查(管道破裂的次数和断裂程度)。

这些因素之间存在一些相互作用,例如粘土管更容易被根部破坏。

我在哪里很烂

我不确定如何制作健身功能。我在想我会将诸如树木覆盖的管道百分比,管道吹地下水的百分比,管道年龄除以其预期寿命之类的值相加。但是,我不确定如何解释粘土管道与树木覆盖率的相互作用(可能将树木覆盖率相乘以获得每种管道类型的某些权重)。

如何为上述参数设置适应度函数?

2个回答

scikit-learn您可以使用 python 的库创建支持向量机 (SVM) 。具体来说,如果您将所有非数值都分配给一个数值,支持向量回归 (SVR) 可能会很好地工作。

然后,您可以使用 45 个检查结果“训练”模型。然后,对于 3500 根管道的其余部分,您可以预测它们的状况。一旦您对它们的状况进行了预测,那么您可以使用遗传算法或其他一些全局优化技术(我喜欢使用 python 的scipy.optimize库对这些类型的事物进行差分进化)来找到最佳替换策略。

我没有通读你的整篇论文,但看起来你只需要一个目标函数来应用该方法。SVR 技术非常适合创建目标函数。

我不确定你为什么会在这里使用遗传算法。在我看来,您想通过基于对 45 根管道的检查来训练模型来预测哪些管道会破裂。

如果你刚刚开始做这类事情,随机森林可能是一个不错的选择。它们背后的理论很容易理解,并且与其他模型相比,它们相对容易解释。

您可以在此处找到介绍,以及将随机森林逐步应用于泰坦尼克号的某些数据

在许多方面,当没有好的理论可以用来获得更好/更快收敛的东西时,遗传算法是解决优化问题的最后手段。如果你直接跳到 GA,你可能对你的问题思考得不够仔细。