1. A robot comprising: one or more sensors configured to collect data about an environment including detected points on one or more objects in the environment; and a controller configured to: create a map of the environment based at least in part on the collected data; determine a route in the map in which the robot will travel; generate one or more route poses on the route, wherein each route pose comprises a footprint indicative of poses of the robot along the route and each route pose has a plurality of points disposed therein; determine forces on each of the plurality of points of each route pose, the forces comprising repulsive forces from one or more of the detected points on the one or more objects and attractive forces from one or more of the plurality of points on others of the one or more route poses; reposition one or more route poses in response to the forces on each point of the one or more route poses; and perform interpolation between one or more route poses to generate a collision-free path between the one or more route poses for the robot to travel.