0

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

与速度相同,它由一个速度向量(v)表示

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

...粒子 i 具有位置x(i),它是具有 nvars 元素的行向量。

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

如果我们说xv一维数组(一行 N 列)对吗?

4

1 回答 1

1

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

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

同样对于速度矢量,您在每个维度上都有速度。

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

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

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

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

原则上是这样。只要确保不要将实现与抽象算法混为一谈。向量很可能用数组表示,作为底层数据结构。但是,如果它是一行有 N 列(其中 N 将是您的群体所在空间的维度),或者如果它是单列中的 N 行,则取决于人们如何解释它。正如您所引用的,在 Mathworks 中,它说“粒子 i 的位置为 x(i),它是带有 nvars 元素的行向量。”,所以我认为对于该实现,您是正确的,正确的解释是带有 nvars 的一行列。

于 2016-02-10T10:01:30.947 回答