Robots are systems that combine sensing, actuation, computation, and communication. Except for computation, all of its sub-systems are subject to a high degree of uncertainty. This can be observed in daily life: phone calls often are of poor quality, making it hard to understand the other party, characters are difficult to read from far away, the front wheels of your car slip when accelerating on a rainy road from a red light, or your wireless device has a hard time getting a connection. In robotics, measurements taken by on-board sensors are sensitive to changing environmental conditions and subject to electrical and mechanical limitations. Similarly, actuators are not accurate as joints and gears have backlash and wheels do slip. Finally, communication, in particular, wireless either via radio or infrared, is notoriously unreliable.

The goals of this lecture are to understand

- how to treat uncertainty mathematically using probability theory
- introduce how measurements with different uncertainty can be combined

## A brief review on probability theory

*probability density function*). These functions have been well studied and come with a broad set of tools for their analysis. Consequently, more often than not we use a well studied probability density function even if the underlying data doesn’t fully support its use for the simple reason that we can work its associated mathematical tools.

**Exercise: do this for the double dice experiment. Calculate the probability of each outcome from the table above, multiply it with its value and add them all up.**

*does not*follow a Normal distribution. We know this, because we actually enumerated all possible outcomes. For other experiments, such as grades in this class, we don’t know what the real distribution is.

## Error Propagation

*error propagation law.*

### Line Fitting

In the line fitting example would contain the partial derivatives of with respect to all (i-entries) followed by the partial derivates of with respect to all in the first row. In the second row, would hold the partial derivates of with respect to followed by the partial derivates of with respect to . As there are two output variables, and , and 2*I input variables (each measurement consists of an angle and distance), is a 2 x (2I) matrix.

The result is therefore a 2×2 covariance matrix that holds the variances of and on its diagonal.

### Odometry

We are now interested in applying error propagation to a robot’s odometry model. With that we cannot only express its position, but also the variance of this estimate. This becomes extremely useful when reasoning about the robot’s next action. What do we need?

- What are the input variables and what are the output variables
- What are the functions that calculate output from input
- What is the variance of the input variables

# Take-home lessons

- Uncertainty can be expressed by means of a probability density function
- More often than not, the Gaussian distribution is chosen as it allows treating error with powerful analytical tools
- In order to calculate the uncertainty of a variable that is derived from a series of measurements, we need to calculate a weighted sum in which each measurement’s variance is weighted by its impact on the output variable. This impact is expressed by the partial derivative of the function relating input to output.

This made sense up until the very end, with the rather complicated formula describing the total variance of the robot’s movement. I didn’t understand the connection between all the symbols and what they represented, and got lost in the terminology. Also, the formula itself was confusing, and would need to be broken down further for me to better understand it. Lastly, I think there was a rendering/html error somewhere near the end that rendered the explanation of a few of the variables nonsensical.

Thanks for pointing out the rendering error and problems with the flow of the lecture notes. The error propagation formula is developed in greater detail in the notes to the exercise that go with this lecture

http://correll.cs.colorado.edu/?p=1307

Hope this helps!

Nikolaus