神经网络和遗传算法

neural network and genetic algorithm

我正在处理一个复杂的系统,该系统有五个变量 - 根据这五个变量的值,可以测量系统的响应。为了完全定义响应,测量了七个输出变量。

我一直在使用人工神经网络来模拟五个变量和七个输出参数之间的关系。到目前为止,这是成功的。人工神经网络可以很好地预测输出(我也在一组验证测试用例上测试了经过训练的网络)。我使用了 python Keras/tensor 流程。 顺便说一句,我也尝试过将线性回归作为函数逼近器,但它会产生很大的误差。考虑到系统是高度非线性的并且可能不是处处连续,这些误差是预料之中的。

现在,我想从七个输出参数的向量(目标向量)中预测五个变量的值。尝试使用相同的遗传算法。在设计 GA 方面付出了很多努力之后,我仍然发现目标向量和 GA 预测之间存在很大差异。我只是尝试最小化 ANN 预测(函数逼近器)和目标向量之间的均方误差。

这是使用 ANN 作为函数逼近器并使用 GA 进行设计 space 探索的正确方法吗?

是的,这是使用 GA 进行搜索 space 探索的好方法。但是设计交叉、变异、世代进化逻辑等对遗传算法的性能起着决定性作用。

如果您的搜索 space 有限,您可以使用精确方法(求解最优)。

python-scipy本身很少有实现

如果您更喜欢元启发式算法,

除了遗传算法之外还有很多选择

模因算法 禁忌搜索 模拟退火 粒子群优化 蚁群优化