作业帮 > 数学 > 作业

粒子群优化算法如果粒子的位置分量超过限制的值应该怎么办.还有如果速度V超过最大限度怎么办?

来源:学生作业帮 编辑:作业帮 分类:数学作业 时间:2024/04/27 00:20:08
粒子群优化算法如果粒子的位置分量超过限制的值应该怎么办.还有如果速度V超过最大限度怎么办?
最小值为负数吗?如果有了解的请指导一下,
每次更新粒子位置后都要判断的限制位置分量是否超过预定范围,如果超过,则人为讲位置设置为边界值,速度也是有限定的,一般设置为[-a,+a],这个a值要根据你的问题范围确定,目的是限制粒子每次移动的最大步长.
再问: 每次更新速度的时候如果速度超过了限定范围,是不是也可以等于边界值?运行结果是固定的一个值还是由于每次随机产生的粒子的位置不同而不同呢?
再答: 位置和速度都要进行限制的,但是粒子位置对应可行解域,速度上限制的是搜索的细化程度,太大的话容易跳过最优解,太小则容易陷入局部最优(或者搜索会特别慢) 粒子每次更新是随机的,理论上全局最优解只有一个,但是像粒子群这种东西顶多就是局部最优,所以一般情况下得到的解是不一样的
再问: 即使不一样,但是相差会很大吗?我写的程序运行两次的结果会相差100多。
再答: 不会相差太大,但是速度v不要取太小,一般取对应维的幅度