0

我正在寻找一个可用于以最少编码进行随机动态系统仿真的软件包(免费更好)。例如,它应该允许我通过指定来对系统建模:

Xn = AXn−1 + Vn, 
Yn = BXn + α Wn

其中X是状态、Y观察值、A,B矩阵,VnWn是具有不同 pdf 的噪声源,例如正常、T 等。

我已经尝试过scilabR。尽管它们看起来非常强大,但似乎并没有直接支持通过指定上述方程来创建模型。

4

2 回答 2

1

如果噪声是高斯的,那么你所拥有的是一个随机微分方程 (SDE),它被写为递归关系。如果您正在寻找具有“直接支持”此类系统的东西,您应该指定它们在物理上代表什么——经济模型、神经模型、卡尔曼滤波等——而不仅仅是抽象方程,因为这些包通常是用应用程序编写的头脑。

Matlab 确实有计量经济学工具箱,它通常不包含在大多数安装中,但也可以解决金融以外的一般 SDE 问题。对于免费选项,您还可以查看我的SDETools,这是一个用于 SDE 数值解的 Matlab 工具箱,其工作方式与 Matlab 自己的 ODE 求解器非常相似,例如ode45. 您需要将递归关系转换为微分方程。当然,如果您想要尽可能快的代码(随机模拟可能很),最好为您的特定问题编写Euler-Maruyama方法。

如果您正在寻找可以做您想做的事情而无需了解很多基础数学的东西,那么您很可能会不走运。此外,如果您的噪声不是高斯噪声,那么规则会有所不同,您可能需要了解跳跃过程alpha 稳定分布族。

于 2014-01-14T16:55:50.230 回答
0

“Open modellica” ( https://www.openmodelica.org ) 可能是您正在寻找的。

于 2014-01-14T15:08:18.847 回答