CoLo Robot Simulation

CoLo is a portable simulation environment for cooperative localization that allows users to create and test estimation algorithms to compare how accurate the estimated robot locations are compared with the locations supplied by the real world data set.

Over the last weeks, I worked on simulating robot paths using Python and matplotlib to provide a comprehensive visualization. In this visualization, there are five different colors, each denoting a robot. For each color, there is a dotted line that represents the location calculated by an estimated algorithm while the solid line represents the location obtained from the UTIAS real world dataset, which is also called the groundtruth. In the particular robot animation simulation, the EKF LS-CI algorithm, or the Extended Kalman Filter local state covariance intersection, is analyzed. This visualization tells the user how well this particular estimated algorithm performs against the real world locations at a given time. Currently, CoLo has 5 different algorithms the user can input, but the user can create new algorithms and plug them in to the Python script to observe the performance of the custom algorithm under consideration. These 5 algorithms include the LS-CI, LS-BDA, LS-Cen, GS-SCI, and GS-CI.

The visualization has animation, defined with matplotlib's FuncAnimation, in order to observe both the estimated location and groundtruth location at a given timestamp as well as the explicit path the robot took in the previous timestamps. The user can observe the robot's path movements over time through this animation. The frames and intervals can be tweaked within the Python script as part of the parameters of the FuncAnimation method.

Downloadable Video of Simulation

Next Post Previous Post