1

我最近实现了 PSO 的基本算法,当提供 2 个变量(x,y)的函数时,它将返回函数在一个范围内的最小值。

现在的问题是 - 功能未知。我的 PS 将被提供数据集(数据集可能来自不同的领域——比如移动计算)。例如,让它成为以下形式的元组:(x,y,f(x,y))。[在学习阶段也提供了最佳值。] 在大约 1000 个样本数据之后,将使用另一组数据对 PS 进行测试。PS 应该返回最佳值,即给定 (x,y) 返回 f(x,y)。

在我看来,这些问题与 ANN 非常相似。我不知道该怎么做——我的 PS 应该尝试生成一个多边形吗?

4

1 回答 1

0

根据您的描述,我了解到您打算使用 PSO 进行函数逼近。因此,对于包含多行值 x、y、z 的数据集;您想使用 PSO 来找到一个近似于 z 的函数 f(x, y)(即误差 |z - f(x,y)| 很小)。不过,我认为您可能有一些术语是错误的;特别是,我想象多边形,你的意思是“多项式”。是的,您可以使用多项式进行函数逼近。例如,如果一开始想保持简单,可以从线性多项式 f(x,y) = ax + by + c 开始。然后 PSO 将尝试为 a、b 和 c 生成值。然后,为每个值粒子最小化的成本函数将是数据集中每个粒子的平方误差 (f(x,y) - z)^2 的总和。

最终,您可能还希望将数据拆分为训练和验证集,以避免过度拟合......

于 2012-04-03T14:52:48.560 回答