遗传算法经典实例 遗传算法的编码方法有几种?
遗传算法的编码方法有几种?
遗传算法用于约束优化,一般有以下几种方法。方法1首先设计编码规则,使解编码只能在可行域内。一个典型的例子是用遗传算法对实数函数进行优化,它会给出上界和下界,然后不管对什么样的染色体进行解码,它都会在这两个界之间。方法2设计合理的交叉算子和变异算子,使得在满足这些算子特征的前提下,算子操作后的染色体也在可行域内。这种方法需要一定的智能思考,需要注意算子本身的特点。如果不小心,算法的搜索区域就会被错误地缩小,导致效果不佳。一个典型的例子是TSP问题的经典解,见Goldberg和lingel,等位基因,位点和旅行商问题,1985。方法3罚函数法。万能的方法。但罚函数过多或过严会导致效果不佳。方法4在变异/交叉后增加判断语句,判断是否满足约束条件。如果没有,有两种策略:超出边界的策略放在边界上。(粒子群优化经常这样做)或超出边界,重新初始化。这通常是在差分进化算法中完成的https://github.com/guofei9987/scikit-opt
有蚁群算法和遗传算法,用哪种方法更能通俗易懂,容易让人明白?
说实话,这两种方法都是智能仿生算法,比普通算法稍微复杂一些。
我不知道您想解决什么优化问题,但我建议您使用遗传算法。
遗传算法比蚁群算法应用更广泛,也有更多的人知道它。
蚁群算法更适合于求解路由问题、旅行商问题等。
遗传算法经典实例 遗传算法java代码 java递归算法经典实例
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。