matlab对rbf-arx模型参数辨识
时间: 2023-11-03 11:07:40 浏览: 195
基于rbf模式识别(MATLAB部分程序代码)
在 MATLAB 中,可以使用 System Identification Toolbox 中的函数来对 RBF-ARX 模型参数进行辨识。以下是一个简单的示例:
首先,生成一些模拟数据:
```matlab
t = 0:0.1:10;
y = sin(t) + 0.1*randn(size(t));
u = cos(t);
data = iddata(y', u', 0.1);
```
然后,使用 `rbarx` 函数来建立一个 RBF-ARX 模型,并使用 `arxstruc` 函数来选择最佳的模型阶数:
```matlab
model = rbarx(data, 5, 'gaussmf');
struc = arxstruc(data, [], [1:10], 'ff', model);
```
最后,使用 `armax` 函数来对 RBF-ARX 模型参数进行辨识:
```matlab
sys = armax(data, struc.best);
```
在上面的代码中,`5` 是隐藏节点数,`'gaussmf'` 是径向基函数类型。`arxstruc` 函数中的 `[1:10]` 是指模型阶数的范围,`'ff'` 表示使用前馈结构。`struc.best` 是选择出的最佳模型阶数。
辨识完成后,可以使用 `compare` 函数来比较辨识出的模型和原始数据:
```matlab
compare(data, sys);
```
阅读全文