Assignment 2 Information

Sumbission Instructions

See Kris' submission instructions for details. Since he's grading the assignment, you should make his life easier by following his instructions.

Examples

These are (I believe) using the same commands and world as in the support code.

Questions & Answers

>When measuring the distance to an obstacle to the robot, are we
>measuring to the center of the robot or to the edge of the robot?

from the reference point of the robot

>what is the invers of a 1x1 matrix?  it doesnt seem possible to do...

Rather than just tell you an answer, I'd rather tell you some general rules 
that you can use in any algebra, even though it may seem a little cryptic. 
(After all, I'm supposed to make you think!)

When you multiply an element by its inverse, you should get the multiplicative 
identity.  The multiplicative inverse is the element such that when you 
multiply it by any other element (say "x") the product is the same (i.e. "x").

In linear algebra, the multiplicative identity for a (square) matrix is a 
matrix that has 1s on the diagonal and 0s elsewhere.

>> The H function is the measurement model.  Note that you do not have to write
>> down the function for H; I have implemented it in the support code for you.
>
> where is it implemented, i do not see it... at any point do we need to
> linearize something?

SimRobot::predictRange() and SimRobot::getRange()

>> see Equation 5.22
> 
> what is P in this equation?  in the kalman filter P is covariance
> matrix, and in 5.22 C is a covariance matrix...

Good question; this is not stated in the notes.  Here, P is the confidence 
level, in this case, 0.954.

> what excatly do you mean in the first note?  what are those ratios
> used for, and where do we end up getting our uncertaintyHigh and Low
> from?

I think the top part of page 3 of the assignment handout answers your question.

> Where does Pu come from in equation (7)?  do we have to create it or
> is it implemented somewhere?

see equation 1 in the assignment handout and read the top of page 3 of the 
assignment handout.

> the v(k) in equation (8) comes from us using the noise ratios on the
> dist and angle going into the H[] function? 

equation 8 in the assignment handout is the sensing model.  this is used to 
get equation 9.  you will not use equation 8 directly.

>also, it says we calculate the error using z(k) and the predicted
>measurement, but in the equation (9) z(k+1) is being used...

This is another typo.  Equation (9) is correct; the text should say z(k+1).

>since we are implementing the extended kalman filter, i will assume we
>are using the linearizing step...
>
>so, for equation (5) i have constructed Jx and Ju based on xhat(k). so
>for the (x-xhat(k)) and (u-uhat(k)) parts, what is x and u, and uhat(k)?
>are x and u the actual position and command, and uhat(k) is the command
>with noise?

Just as you do not use equation (8) directly --- it is used to get
equation (9) --- you do not use equation (5) directly.  It is used
to get equation (7).