Skip to content
UoL CS Notes

Sensor Beam Model

COMP329 Lectures

The aim of the sensor model is to determine:

\[P(z\mid x)\]

what is the probability of a measurement $z$, given that the robot is in state $x$.

Beam-Based Sensor Model

Consider each beam from the robot’s sensors independently. A scan $z$ is made up of $K$ measurements:

\[z=\{z_1, \ldots,z_K\}\]

Individual measurements are independent given the robot position:

\[P(z\mid x, m)=\prod^k_{k=1}P(z_k\mid x, m)\]

This assumes that we already have a map.

We may get the following types of erroneous readings:

  • Measurement Noise
  • Unexpected Obstacles
  • Random Measurements
  • Max Range

We can then combine these to form a combined distribution such that we can determine:

\[P(z\mid x,m)\]

This will be different depending on the type of erroneous reading.

Measurement Noise

We can calculate this as:

\[P_\text{hit}=\eta\frac1{\sqrt{2\pi b}}e^{-\frac12\frac{(z-z_\text{exp})^2}{b}}\]

Consider we calculate an expected sensor value $z_\text{exp}$. We can calculate:

\[p(z\mid z_\text{exp})\]

as the distribution is limited to $[0,z_\max]$, we normalise with:

\[\eta=\left(\int^{z_\max}_0\frac1{\sqrt{2\pi b}}e^{-\frac12\frac{(z-z_\text{exp})^2}{b}}dz^k_t\right)^{-1}\]

Unexpected Obstacles

We can model this with the following distribution:

\[P_\text{unexp}=\begin{cases}\eta\lambda e^{-\lambda z}&z<z_\text{exp}\\0&\text{otherwise}\end{cases}\]

where $\lambda>0$ is the rate paramter and $z$ is the query point.

As the exponential range is limited to $[0,z]$, we normalise with:

\[\eta=\frac1{1-e^{\lambda z}}\]

Max Range

We can model this with the following distribution:

\[P_\text{max}=\begin{cases}1&z=z_\max\\0&\text{otherwise}\end{cases}\]

Resulting Mixture Density

We can combine this by calculating the weighted sum of all the distributions:

\[P(z\mid x, m)=\begin{pmatrix} \alpha_\text{hit}\\ \alpha_\text{unexp}\\ \alpha_\max\\ \alpha_\text{rand} \end{pmatrix}^T\cdot \begin{pmatrix} P_\text{hit}(z\mid x, m)\\ P_\text{unexp}(z\mid x, m)\\ P_\text{max}(z\mid x, m)\\ P_\text{rand}(z\mid x, m)\\ \end{pmatrix}\]

Determining Intrinsic Values

The sensor model is tuned through a set of intrinsic values:

\[\Theta=\langle\alpha_\text{hit}, \alpha_\text{unexp}, \alpha_\max, \alpha_\text{rand}, \sigma, \lambda\rangle\]

This consists of the weights where:

\[\alpha_\text{hit}+ \alpha_\text{unexp}+ \alpha_\max+ \alpha_\text{rand}=1\]

and the distribution parameters:

  • $\lambda$ for the exponential distribution
    • The probability when $z=0$.
  • $\sigma$ for the normal distribution
    • The width of the Gaussian.

Beam Based Range Finder Algorithm

See slide 74 for this algorithm.