How to derive the Time update equation for SLAM

98 Views Asked by At

I was going through the tutorial on SLAM by Hugh Durrant-Whyte and Tim Bailey and found this Time-Update equation (equation 4 in the paper):

$P(x_{k},m | Z_{0:k-1}, U_{0:k},x_{0}) = \int P(x_{k}|x_{k-1},u_{k}) P(x_{k-1},m|Z_{0:k-1},U_{0:k-1},x_{0})dx_{k-1}$

where $m$ is the position of landmarks or one can call it a map and other symbols have usually meanings like $x_{k}$ is robot location, $u_{k}$ is control inputs and $z_{k}$ world observations made by robot. Is the right hand side derived using the total probability concept. I am aware of the Markov facts that $x_{k}$ depends on $u_{k}$ and $x_{k-1}$ and $z_{k}$ depends on $x_{k}$ and $m$. Still I am not able to derive the right hand side from the left hand side specially the fact that $m$ was occurring with $x_{k}$ in the joint probability on left hand side but it gets attached with $x_{k-1}$ on the right hand side if I think we are using the fact

$P(a,b|c) = \int_{a'} P(a,b|a',c)P(a'|c) da'$

Simultaneous Localisation and Mapping (SLAM): Part I The Essential Algorithms

1

There are 1 best solutions below

1
On

Write the left side as $P(x_k,m|Z_{0:k-1},U_{0:k-1},u_k,x_0).$ Now apply your conditioning formula with $a'=x_{k-1}$. You get:

\begin{align*} P(x_k,m|Z_{0:k-1},U_{0:k-1},u_k,x_0)=\int & P(x_k,m|Z_{0:k-1},U_{0:k-1},u_k,x_{k-1},x_0)\\ &\times P(x_{k-1}|Z_{0:k-1},U_{0:k-1},u_k,x_0)dx_{k-1}. \end{align*}

Now, $x_k$ is assumed to be a Markov process, such that $P(x_k|x_{k-1},u_k)$ fully determines $x_k$, in that $x_k$ is independent of other observations and the map. So the first term in the integral collapses to $P(x_k|x_{k-1},u_k)$.

For the second term, that $x_{k-1}$ is independent from $u_k$ follows from the graphical model in figure 4:

enter image description here