09. Initialize Priors Function
In this quiz we will create a function that initializes priors (initial belief state for each position on the map) given landmark positions, a position standard deviation (+/- 1.0), and the assumption that our car is parked next to a landmark.
Note that the control standard deviation represents the spread from movement (movement is the result of our control input in this case). We input a control of moving 1 step but our actual movement could be in the range of 1 +/- control standard deviation. The position standard deviation is the spread in our actual position. For example, we may believe start at a particular location, but we could be anywhere in that location +/- our position standard deviation.
Start Quiz:
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
//initialize priors assumimg vehicle at landmark +/- 1.0 meters position stdev
std::vector<float> initialize_priors(int map_size, std::vector<float> landmark_positions,
float position_stdev);
int main() {
//set standard deviation of position:
float position_stdev = 1.0f;
//set map horizon distance in meters
int map_size = 25;
//initialize landmarks
std::vector<float> landmark_positions {5, 10, 20};
// initialize priors
std::vector<float> priors = initialize_priors(map_size, landmark_positions,
position_stdev);
//print values to stdout
for (unsigned int p = 0; p < priors.size(); p++) {
std::cout << priors[p] << endl;
}
return 0;
};
//TODO: Complete the initialize_priors function
std::vector<float> initialize_priors(int map_size, std::vector<float> landmark_positions,
float position_stdev) {
//initialize priors assumimg vehicle at landmark +/- 1.0 meters position stdev
//set all priors to 0.0
std::vector<float> priors(map_size, 0.0);
//YOUR CODE HERE
return priors;
}