Trajectory planning for mobile robots
AssigneeX Development LLC
InventorDavid Millard
Life of this patent
Estimating the term…
Abstract
This specification describes trajectory planning for robotic devices. A robotic navigation system can obtain, for each of multiple time steps, data representing an environment of a robot at the time step. The system generates a series of occupancy maps for the multiple time steps, and uses the series of occupancy maps to determine occupancy predictions for one or more future time steps. Each occupancy prediction can identify predicted locations of obstacles in the environment of the robot at a different one of the future time steps. A planned trajectory can be determined for the robot using the occupancy predictions, and the robot initiates travel along the planned trajectory.
Claims19
A computer-implemented method, comprising:
- obtaining, for each of a plurality of time steps, data representing an environment of a robot at the time step;
- generating a series of occupancy maps that each identify locations of one or more obstacles in the environment of the robot at a different one of the plurality of time steps,
- wherein generating the occupancy map for a particular time step of the plurality of time steps comprises selectively adding to the occupancy map a representation of a first obstacle detected in the data representing the environment of the robot for the particular time step, but not adding to the occupancy map a representation of a second obstacle detected in the data representing the environment of the robot for the particular time step,
- wherein the representation of the first obstacle is selected to be added to the occupancy map based on the first obstacle being classified as capable of interfering with travel of the robot, and the representation of the second obstacle is selected not to be added to the occupancy map based on the second obstacle being classified as incapable of interfering with travel of the robot,
- wherein the first obstacle that is added to the occupancy map is a dynamic obstacle that moves around the environment concurrently with the robot;
- generating, using the series of occupancy maps, occupancy predictions for one or more future time steps that follow the plurality of time steps, each occupancy prediction identifying predicted locations of one or more obstacles in the environment of the robot at a different one of the future time steps, wherein the one or more obstacles for which occupancy predictions are generated includes the first obstacle;
- determining a planned trajectory for the robot using the occupancy predictions;
- and
- initiating travel of the robot along the planned trajectory.
One or more non-transitory computer-readable media having instructions stored thereon that, when executed by one or more processors, cause the one or more processors to perform operations comprising:
- obtaining, for each of a plurality of time steps, data representing an environment of a robot at the time step;
- generating a series of occupancy maps that each identify locations of one or more obstacles in the environment of the robot at a different one of the plurality of time steps,
- wherein generating the occupancy map for a particular time step of the plurality of time steps comprises selectively adding to the occupancy map a representation of a first obstacle detected in the data representing the environment of the robot for the particular time step, but not adding to the occupancy map a representation of a second obstacle detected in the data representing the environment of the robot for the particular time step,
- wherein the representation of the first obstacle is selected to be added to the occupancy map based on the first obstacle being classified as capable of interfering with travel of the robot, and the representation of the second obstacle is selected not to be added to the occupancy map based on the second obstacle being classified as incapable of interfering with travel of the robot,
- wherein the first obstacle that is added to the occupancy map is a dynamic obstacle that moves around the environment concurrently with the robot;
- generating, using the series of occupancy maps, occupancy predictions for one or more future time steps that follow the plurality of time steps, each occupancy prediction identifying predicted locations of one or more obstacles in the environment of the robot at a different one of the future time steps, wherein the one or more obstacles for which occupancy predictions are generated includes the first obstacle;
- determining a planned trajectory for the robot using the occupancy predictions;
- and
- initiating travel of the robot along the planned trajectory.
A system, comprising:
- one or more processors;
- and
- one or more computer-readable media having instructions stored thereon that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:
- obtaining, for each of a plurality of time steps, data representing an environment of a robot at the time step;
- generating a series of occupancy maps that each identify locations of one or more obstacles in the environment of the robot at a different one of the plurality of time steps,
- wherein generating the occupancy map for a particular time step of the plurality of time steps comprises selectively adding to the occupancy map a representation of a first obstacle detected in the data representing the environment of the robot for the particular time step, but not adding to the occupancy map a representation of a second obstacle detected in the data representing the environment of the robot for the particular time step,
- wherein the representation of the first obstacle is selected to be added to the occupancy map based on the first obstacle being classified as capable of interfering with travel of the robot, and the representation of the second obstacle is selected not to be added to the occupancy map based on the second obstacle being classified as incapable of interfering with travel of the robot,
- wherein the first obstacle that is added to the occupancy map is a dynamic obstacle that moves around the environment concurrently with the robot;
- generating, using the series of occupancy maps, occupancy predictions for one or more future time steps that follow the plurality of time steps, each occupancy prediction identifying predicted locations of one or more obstacles in the environment of the robot at a different one of the future time steps, wherein the one or more obstacles for which occupancy predictions are generated includes the first obstacle;
- determining a planned trajectory for the robot using the occupancy predictions;
- and
- initiating travel of the robot along the planned trajectory.
Dependencies are inferred from the claim text.