智能优化算法的适用范围

本文探讨了智能优化算法的适用范围,包括遗传算法、蚁群算法、模拟退火算法以及群体类算法如粒子群、人工蜂群等。遗传算法因其编码自由,能解决各类优化问题。蚁群算法主要应用于旅行商问题,需要定义启发函数。模拟退火算法与遗传算法类似。群体类算法擅长连续函数优化,解决离散问题需转换编码,效果通常不如遗传算法。
摘要由CSDN通过智能技术生成

先再啰嗦一句:智能优化算法解决NP问题,程序的每次运行结果基本都不一样。如果你不能理解这句话,先看我的02号置顶日志。

1. 遗传算法

遗传算法基本可以解决任何优化问题。这是因为遗传算法的编码很自由,而其他智能优化算法在解决具体问题的时候存在一定的局限性(下面介绍)。

遗传算法的编码有多种形式,根据具体问题选择一种合适的编码方式,问题便可迎刃而解。

遗传算法的编码形式有

01编码:如,选址问题,0表示不选,1表示选择;

1~N自然数排列编码:这个编码的特点就是,优化节点访问顺序,要求每个节点都要访问且只能访问一次,如TSP、VRP问题、航班排序问题等等,

自然数编码:一般用于分配问题中,如有N个任务分配给M个工人,那么任务n的对应编码m就表示,任务n分配给工人m

实数编码:求解连续函数时用到,如同后面介绍的群体类算法。

遗传算法的上述四种编码方式,基本可解决任何问题。具体在使用时就要根据问题(主要是约束条件)来选择编码,也会出现一些编码的等效变化,即可能编码是其他样子,但本质用的时候还是上述四种编码。当然也会有复合编码,就是上述四种编码方式的组合。

不同的编码对应的交叉和变异是不一样的,这个就需要根据具体的编码来进行操作。

2. 蚁群算法

说实话蚁群算法的应用范围很窄。

蚁群算法的提出是基于解决旅行商问题(路径最短问题)的,在这个问题中,蚁群算法的信息素的定义以及启发函数的定义都是根据距离进行的

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值