PRO算法粒子群优化增强版
全局优化里的老熟人,PRO 算法算是升级版的粒子群优化(PSO),比起基础版,多了点灵性,调参也更有弹性。嗯,核心还是那套思路:一群“粒子”像找食吃的鸟一样,在解空间里乱飞,谁找到的好吃的(也就是最优解)就给做参考。
位置、速度、经验和适应度是它的四大基本属性,听着像游戏角色设定对吧?其实好理解:位置
是当前解,经验
是历史最优,速度
控制下一步走哪,适应度
就是评分高不高。
它用一组公式动态调整粒子的速度和位置,像下面这两行:
vi+1 = w * vi + c1 * rand1 * (pbesti - xi) + c2 * rand2 * (gbesti - xi)
xi = xi + vi+1
听着复杂?其实就是“我自己觉得哪好”和“觉得哪好”的折中方案。还挺聪明的。
你可以直接拿来跑函数优化,比如它用来搞一个三维函数f(x, y)
的全局最优值,还带了matplotlib
画图,运行完直接看结果。可视化直观,调参也方便。
如果你在做算法类项目,尤其是全局搜索或工程设计优化的那种,PRO 算法蛮适合拿来试试。别忘了根据你问题的特点调一下惯性因子w
和学习因子c1
/c2
,效果会差不少哦。
想进一步研究的,可以看看这些相关文档:
如果你手上有优化需求、又不想调太多复杂参数,PRO 算法可以让你少踩不少坑。
下载地址
用户评论