定义
[o(t)=C_1*o(t-1)+c_2*o(t-2)+...+c_f(t-f) ag{1}
]
事件t的位置点和之前f个位置点具有线性组合的关系,f成为回顾系数。
定义
[s_0(t) = {o(t),o(t-1),...,o(t-f+1)} ag{2}
]
因此
[s_0(t)=K_0*s_0(t-1) ag{3}
]
K_0是维度为((d*f)*(d*f))维度的矩阵。d是数据点的维度,对于二维路径点d = 2。
对于d=2,f=2,写出式(3)的展开形式:
[left[
egin{matrix}
o(t).x_1 \
o(t).x_2 \
o(t-1).x_1 \
o(t-1).x_2
end{matrix}
ight]
=
left[
egin{matrix}
k_{11} & k_{12} & k_{13} & k_{14} \
k_{21} & k_{22} & k_{23} & k_{24} \
1 & 0 & 0 & 0 \
0 & 1 & 0 & 0 \
end{matrix}
ight]
*
left[
egin{matrix}
o(t-1).x_1 \
o(t-1).x_2 \
o(t-2).x_1 \
o(t-2).x_2
end{matrix}
ight]
]
我们可以进一步认识到,对于(K_0)矩阵只有前面d行是未知,未知数个数为(d*(d*f))。
对于其余行的每个元素,满足:
[egin{cases}
k_{ij} = 0 space ext{for i>=d+1 and i!=j+d} \ ag{4}
k_{ij} = 1 space ext{for i>=d+1 and i=j+d}
end{cases}
]
抽取式(3)的(K_0)矩阵的前d行的某一行的乘法过程,可以写出
[s_0(t-1)^T*K_{i*} = o(t).x_i ag{5}
]
其中(d>=i>=1),(K_{i*})是K矩阵的第i行向量。
我们需要得到能够最好的描述历史数据的(K_0)矩阵,并以此预测将来的路径。
参数估计
设l_0(t)是实际的路径点数据。({l_o(T_c-h+1),l_0(T_c-h+2),...,l_0(T_c)})是距离当前时刻最近的h个路点数据。
h需要大于f。
根据式(5)我们可以写出:
[left[
egin{matrix}
s(T_c-1)^T \
s(T_c-2)^T \
... \
s(T_c-h+f)^T
end{matrix}
ight]
*
k_{i*}
=
left[
egin{matrix}
l(T_c).x_i \
l(T_c-1).x_i \
... \
l(T_c-h+f+1).x_i
end{matrix}
ight] ag{6}
]
令
[S = left[
egin{matrix}
s(T_c-1)^T \
s(T_c-2)^T \
... \
s(T_c-h+f)^T
end{matrix}
ight]
space
l = left[
egin{matrix}
l(T_c).x_i \
l(T_c-1).x_i \
... \
l(T_c-h+f+1).x_i
end{matrix}
ight]
]
式6可以简写为(S*k_{i*}=l)
接下来的任务是求解行向量(k_{i*}),求解从1到d行的每个行向量可以得到完整的K矩阵。
论文中简单介绍来了将S进行奇异值分解的求解方法。
式(6)中共有h-f个方程,而行向量(k_{i*})中共有d*f个未知数,todo...