使用后ExtendedKalmanFilter.
那undentedkalmanfilter
要么粒子滤片
在线状态估计非线性系统的指令,在部署应用程序中部署代码之前验证估计。如果验证表明对估计的低信心,那么请参阅排除在线状态估计对于下一步。验证了在线估计结果后,您可以使用C / C ++代码或独立应用程序使用马铃薯®编码器™要么Matlab Compiler™软件。
为了验证滤镜的性能,使用来自不同方案的测量或模拟输出数据执行状态估计。
在不同的操作条件和输入值下从系统获取输出数据 - 以确保在所有感兴趣的操作条件下估算运行。例如,假设您要追踪使用噪声位置测量的车辆的位置和速度。测量不同车辆速度和慢速和急剧的操纵数据。
对于每个感兴趣的操作条件,获取具有不同噪声实现的多组实验或模拟数据 - 以确保不同的噪声值不会降低估计性能。
对于每个方案,通过检查输出估计误差和状态估计误差来测试滤波器性能。有关执行和验证在线状态估计的示例,请参阅非线性状态估计使用Unscented Kalman滤波器和粒子滤波器。
输出估计误差是测量输出之间的差异,y
和估计的输出,yestimated
。您可以使用系统的测量功能在每个时间步骤获得估计的输出。例如,如果vdpmeasurementfcn.m.
是非线性系统的测量功能,您正在使用扩展的卡尔曼筛选对象执行状态估计,obj.
,您可以使用当前状态估计计算估计的输出:
yestimated = vdpmeasurementfcn(obj.state);估计误差= y- yestimated;
这里obj.state.
是国家价值
使用中估计各国后预测
命令。
是预测的状态估计时间K.
,估计使用测量的输出直到上一次K-1
。
如果您正在使用ExtendedKalmanFilter.
要么undentedkalmanfilter
,你也可以使用剩余的
要获取估计错误:
[残余,残留转移性] =残差(OBJ,Y);
估计误差(残差)必须具有以下特征:
小幅度 - 相对于输出尺寸的小误差增加了对估计值的置信度。
零意思
低自制,除零时滞后 - 要计算自相关,可以使用MATLABXCorr.
命令。
当您模拟非线性系统的输出数据并使用该数据进行状态估计时,您知道真实状态值。您可以计算估计和真实状态值之间的错误并分析错误。随时步骤的估计状态值是存储在中的值obj.state.
使用中估计各国后预测
要么正确
命令。状态估计误差必须满足以下特征:
小幅度
零意思
低自相关,除零时间滞后
您还可以计算状态估计错误的协方差,并将其与存储在存储器中的状态估计错误协方差进行比较StateCovariance.
过滤器的属性。类似的值增加对滤波器性能的置信度。
ExtendedKalmanFilter.
|粒子滤片
|剩余的
|undentedkalmanfilter