引言
机器人学中,状态可观性和参数可辨识性分析是判断一个问题能否有稳定解的重要步骤。
状态可观性
问题描述
已知
y
k
y_k
yk测量模型和
x
k
x_k
xk预测模型,判断
x
k
x_k
xk能否被观测
x
k
=
f
(
x
k
−
1
,
ω
k
)
x_k=f(x_{k-1},\omega_k)
xk=f(xk−1,ωk)
y
k
=
h
(
x
k
,
μ
k
)
y_k=h(x_k,\mu_k)
yk=h(xk,μk)
分析方法
线性模型
在现代控制理论中,经典的线性模型为
x
˙
=
A
x
\dot{x}=Ax
x˙=Ax
y
=
C
x
y=Cx
y=Cx
其中
x
x
x可观的条件在于
[
C
C
A
−
1
⋮
C
A
n
−
1
]
\left[ \begin{matrix} C\\ CA^{-1}\\ \vdots\\ CA^{n-1} \end{matrix} \right]
⎣
⎡CCA−1⋮CAn−1⎦
⎤
满秩。其中
n
n
n为状态维度。
非线性模型
对于非线性模型
x
k
=
f
(
x
k
−
1
,
ω
k
)
x_k=f(x_{k-1},\omega_k)
xk=f(xk−1,ωk)
y
k
=
h
(
x
k
,
μ
k
)
y_k=h(x_k,\mu_k)
yk=h(xk,μk)
以上的方法就不适用了。那应该怎么做呢?
通常可以利用李导数,具体参考:
李导数判断可观性
当然,线性模型也可以利用李导数的方法,用李导数解算出来的观测矩阵也是
[
C
C
A
−
1
⋮
C
A
n
−
1
]
\left[ \begin{matrix} C\\ CA^{-1}\\ \vdots\\ CA^{n-1} \end{matrix} \right]
⎣
⎡CCA−1⋮CAn−1⎦
⎤
典型的例子如:
[1] Fallon, Maurice F., et al. “Cooperative AUV navigation using a single maneuvering surface craft.” The International Journal of Robotics Research 29.12 (2010): 1461-1474.
参数可辨识性
问题描述
x
k
=
f
(
x
k
−
1
,
θ
,
ω
k
)
x_k=f(x_{k-1},\theta,\omega_k)
xk=f(xk−1,θ,ωk)
y
k
=
h
(
x
k
,
η
,
μ
k
)
y_k=h(x_k,\eta,\mu_k)
yk=h(xk,η,μk)
提供多组
y
k
y_k
yk,
x
k
x_k
xk, 能否将
θ
\theta
θ和
μ
\mu
μ辨识出来呢?
更加详细的问题描述见
Grewal, M. S., and Keith Glover. “Identifiability of linear and nonlinear dynamical systems.” IEEE Transactions on automatic control 21.6 (1976): 833-837.
分析方法
对于典型的模型,参数可辨识性的分析同样可以通过扩展状态向量,并借助李导数的方法来实现。
即
χ
k
=
[
x
k
⊺
,
θ
⊺
,
η
⊺
]
⊺
\chi_k=[x_k^\intercal,\theta^\intercal,\eta^\intercal]^\intercal
χk=[xk⊺,θ⊺,η⊺]⊺
对于预测模型,参数
θ
,
η
\theta,\eta
θ,η关于时间的导数均为0。
典型的例子如:
[1] Kelly, Jonathan, and Gaurav S. Sukhatme. “Visual-inertial sensor fusion: Localization, mapping and sensor-to-sensor self-calibration.” The International Journal of Robotics Research 30.1 (2011): 56-79.
[2] Villaverde, Alejandro F. “Observability and structural identifiability of nonlinear biological systems.” Complexity 2019 (2019).
特殊例子:非时变系统
还有一种更加简单的模型
y
k
=
f
(
x
k
,
θ
)
y_k=f(x_k,\theta)
yk=f(xk,θ)
对此,试问提供多组
y
k
y_k
yk和
x
k
x_k
xk,
θ
\theta
θ能否被观测得到?
对于这种问题,我们回顾隐函数存在定理:
隐函数定理
将多个
x
k
,
y
k
x_k,y_k
xk,yk作为自变量,
θ
\theta
θ作为因变量,得到
Y
Y
Y矩阵。如果
Y
Y
Y可逆,则多组测量可以得到唯一的
θ
\theta
θ。