Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: THEend8_
Overview: In this assignment you will implement a particle filter for Monte Carlo localization.
1 Monte Carlo Localization (10 pts)
In this exercise you are going to implement Monte Carlo Localization (i.e. localization in a known occupancy
grid map, using particle filters), as discussed in class. Your robot is going to start by being completely lost
in the environment, so particles are going to be spread out uniformly at random in the known world. After
many LiDAR measurements, the robot’s pose is going to be constrained and the particles are going to
converge to a small cluster. The main mechanism for survival of the fittest among particles will be: which
particles are more likely to have generated the laser scans that the robot is observing?
Figure 1: Uniform initialization of particles in Monte Carlo Localization, within the boundaries of a
workspace. Your task is to make the particles cluster around the robot, as it makes LiDAR measure-
ments of the environment. The environment consists of the black square and circular-shaped obstacles,
shown above.
Starter code
Do git pull under your CSC477 repository to get the starter code. The functionality that you need
to implement is marked using comments in the file estimation_and_vision_
carlo_localization_v2.py. To run your code, cd
assignment/ and execute the following commands on three different terminals:
rosbag play laser_controls_and_odometry.bag
roslaunch estimation_and_vision_assignment monte_carlo_localization_v2.launch
page 1 of 2
CSC477: Introduction to Mobile Robotics - Assignment 4
rosrun rviz rviz
When rviz initializes, go to File > OpenConfig and then load the configuration file in estimation_and_
vision_assignment/resources/comp417.rviz which is going to start the visualization of laser scan mes-
sages, frames of reference, and particles. Save this configuration file as the default in your /home/username/
.rviz/default.rviz, so you won’t have to do this every time you restart rviz. What you will see initially,
before the robot makes any measurements is Fig. 1: What you need to submit: in addition to your code,
a video recording of the rviz visualization demonstrating your particles converging from beginning to end.
Your video should be named mcl_firstname_lastname.mp4/avi/ogg.
2 How to submit
Submit all your work in a file called estimation_and_vision_assignment.zip that contains your exten-
sions to the provided starter code, as well as the required files, as explained above. Submissions will be done