# Learn a random walk process with RTS smoother

I'm trying to learn a random walk process as described at section 7 of http://www.cs.cmu.edu/~epxing/papers/SDM08_Ahmed.pdf

I have a set of points over N epochs.

Given a set of clusters $K$, every point is generated as follow

• pick $k \in K$ following a Chinese restaurant process
• sample $x \sim N(\theta_{k,t} , \Sigma)$, where $\theta_{k,t}$ is the mean of the cluster $k$ at time $t$

The mean of the clusters evolves like a markov chain: more specifically it's a random walk.

$\theta_{k,0} \sim N(0, \sigma)$

$\theta_{k,t+1} \sim N(\theta_{k,t}, \rho)$

$\sigma, \rho, \Sigma,$ N are known parameters.

Here is an example of generated points (N=2)

Since I generated the points, for every point I know which cluster generated it.

Given this information, the number of clusters and all the points coordinates, the paper specifies I can use a RTS Smoother to learn the $\theta_k$ chain.

I found this example of Rauch Tung Striebel Smoother, but it doesn't look to me like I can apply it to this problem ( as the link I found has the points with a random noise added to them, while I have points generated from a distribution of which I need to find the parameters).

Can you please explain how I can apply a smoother algorithm to discover the parameters of the distribution which generated the points?