Trajectory generation using motion primitives
First Claim
1. A system comprising:
- one or more processors; and
one or more computer-readable media storing instructions executable by the one or more processors, wherein the instructions program the one or more processors to;
determine a reference trajectory for an autonomous vehicle to follow in an environment, the reference trajectory based at least in part on a centerline associated with a portion of a road in the environment;
determine one or more segments of the reference trajectory, a segment of the one or more segments having a plurality of points, wherein each point of the plurality of points is associated with a same sign of a curvature value, and wherein the curvature value of the segment varies linearly with respect to an arc length along the reference trajectory;
determine an acceleration value of the autonomous vehicle, wherein the each point of the plurality of points is associated with the acceleration value;
determine a lateral offset of the autonomous vehicle relative to the reference trajectory;
determine, based at least in part on the lateral offset, an upper bound for an arc length associated with the segment;
determine, based at least in part on the lateral offset, a lower bound for the arc length associated with the segment;
define an approximate motion primitive associated with the segment; and
control the autonomous vehicle based, at least in part, on the approximate motion primitive.
1 Assignment
0 Petitions
Accused Products
Abstract
In autonomous driving, it is often useful to plan trajectories in a curvilinear coordinate frame with respect to some reference trajectory, like a path produced by a hi-level route planner. This disclosure includes techniques for developing efficient approximate path coordinate motion primitives appropriate for fast planning in autonomous driving scenarios. These primitives are approximate in that particular quantities, like the path length, acceleration, and track offset trajectory, are known with some degree of certainty, and values that depend on the curvature of the reference path can be bound. Such approximate motion primitives can be used to control the autonomous vehicle to follow the trajectory in an environment.
36 Citations
20 Claims
-
1. A system comprising:
-
one or more processors; and one or more computer-readable media storing instructions executable by the one or more processors, wherein the instructions program the one or more processors to; determine a reference trajectory for an autonomous vehicle to follow in an environment, the reference trajectory based at least in part on a centerline associated with a portion of a road in the environment; determine one or more segments of the reference trajectory, a segment of the one or more segments having a plurality of points, wherein each point of the plurality of points is associated with a same sign of a curvature value, and wherein the curvature value of the segment varies linearly with respect to an arc length along the reference trajectory; determine an acceleration value of the autonomous vehicle, wherein the each point of the plurality of points is associated with the acceleration value; determine a lateral offset of the autonomous vehicle relative to the reference trajectory; determine, based at least in part on the lateral offset, an upper bound for an arc length associated with the segment; determine, based at least in part on the lateral offset, a lower bound for the arc length associated with the segment; define an approximate motion primitive associated with the segment; and control the autonomous vehicle based, at least in part, on the approximate motion primitive. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method comprising:
-
determining a reference trajectory for an autonomous vehicle to follow in an environment; determining a segment of the reference trajectory, the segment having a plurality of points, wherein each point of the plurality of points is associated with a same sign of a curvature value; determining an acceleration value of the autonomous vehicle; determining a lateral offset of the autonomous vehicle relative to the reference trajectory; determining, based at least in part on the lateral offset, an upper bound for an arc length associated with the segment; determining, based at least in part on the lateral offset, a lower bound for the arc length associated with the segment; defining an approximate motion primitive associated with the segment; and controlling the autonomous vehicle based, at least in part, on the approximate motion primitive. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A non-transitory computer-readable medium storing instructions that, when executed, cause one or more processors to perform operations comprising:
-
determining a reference trajectory for an autonomous vehicle to follow in an environment; determining a segment of the reference trajectory, the segment having a plurality of points, wherein each point of the plurality of points is associated with a same sign of a curvature; determining an acceleration of the autonomous vehicle; determining a lateral offset of the autonomous vehicle relative to the reference trajectory; determining, based at least in part on the lateral offset, an upper bound for an arc length associated with the segment; determining, based at least in part on the lateral offset, a lower bound for the arc length associated with the segment; defining an approximate motion primitive associated with the segment; and controlling the autonomous vehicle based, at least in part, on the approximate motion primitive. - View Dependent Claims (17, 18, 19, 20)
-
Specification