粒子群优化(PSO)算法中位置向量和速度向量的内容(元素)是什么?

时间:2016-02-10 09:42:24

标签: algorithm particle-swarm

在粒子群优化(PSO)算法中,每个粒子的位置由行向量 (x) 表示。

与速度相同,它由速度矢量 (v)

表示

我在Mathworks网站上找到了这个:

  

...粒子i的位置 x(i) ,这是一个带有nvars的行向量   元件。

位置矢量和速度矢量的内容(元素)是什么?为什么它们不是单一价值?

如果我们说 x 并且 v 一维数组是正确的(一行和N列)?

1 个答案:

答案 0 :(得分:1)

  

位置矢量和速度的内容(元素)是什么   矢量?

位置的元素是坐标(参见:https://en.wikipedia.org/wiki/Coordinate_system),用于参数化空间。

对于速度矢量,您可以在每个维度中获得速度。

因此,例如,如果你有一个3D空间,那么位置元素可能是(x,y,z),而速度元素则可以是(vx,vy,vz)

  

为什么它不是一个单一的值?

通常,它可以是任意数量的值 - 即它可以是单个值。但这意味着你的群体生活在一维空间中,因此它们也只能沿着那个维度来回移动。

  

如果我们说x和v是一维数组(一行),那是不对的   和N列)?

原则上是。只是确保不要将实现与抽象算法混合使用。最有可能的是,向量用数组表示为底层数据结构。但是,如果它是一行有N列(其中N将是您的swarm所居住的空间的维度),或者如果它是单列中的N行,则问题是如何解释它。在Mathworks中,正如你所引用的那样,它表示“粒子i的位置为x(i),这是一个带有nvars元素的行向量。”所以我会说这个实现你是正确的,正确解释是nvars列的一行。