# Bayesian filter for 2-D grid localizaton

I have some data obtained from an experiment in terms of movements and observations with odometry and sensor data. My task is to find the probability mass on each of the grid cells after each set of motion and observation. I'm a bit lost in figuring out how to compute probability mass for each of the grid cell. My odometry information is in terms of rotation, translation and rotation and my sensor information is in terms of range and bearing angle. How do I calculate the probability of robot present in each of the grid cell?

I have the formula for belief after motion as summation(P(x|u, x')xBel(x')) How do I compute the motion model with noise?

I can give you some leads and you can probably take it from there. Since you mention calculating "the probability of the robot present in each of the grid cell", what you want to do is essentially a histogram filter, i.e a discrete bayes filter applied to a continuous state space. If you have the Probabilistic Robotics book by Thrun, you will find the algorithm you are looking for in chapter 8 as "Grid Localization": which is a variant of Markov localization: The Grid Localization algorithm precisely calculates at each time step the probability of each cell to correspond to the actual robot's state. If you only care about estimating the position (x,y), your grid is in 2D. If you also want to estimate the orientation (x,y,theta), your grid is in 3D, and each plane of the grid corresponds to an orientation:

As for the motion/measurement models, you can find them in chapter 5 and 6 of the same book. If you don't have the book, you can find some excerpts here for motion models and here for sensor models

As for your second question, P(x|u,x') in your example should be your motion model, so any model of odometry noise should be included inside, but the exact form will depend on the motion model that you choose, cf the links above.

1- to calculate the probability of the pose of the robot you can use a particle filter, it is easy and efficient

2- the motion model depends on your vehicle/robot, is it a differential drive, an ackerman etc.