Discrete Decision Architecture for Motion Planning System of an Autonomous Vehicle
The present disclosure provides autonomous vehicle systems and methods that include or otherwise leverage a motion planning system that generates constraints as part of determining a motion plan for an autonomous vehicle (AV). In particular, a constraint solver determines a multi-dimensional space for each phase of a plurality of different phases of a lane change maneuver. For each different phase, objects of interest interacting with first and second lanes of the nominal path can be determined and constraints can be respectively generated. A portion of the multi-dimensional space including corresponding constraints that applies to a respective timeframe associated with each phase can be determined. The respective portions of the multi-dimensional space including corresponding constraints for each phase of the plurality of different phases of the lane change maneuver can be combined to generate a multiplexed space through which a low-cost trajectory path can be determined.
1 . A computing system that controls an autonomous vehicle, the computing system comprising:
one or more processors; and
one or more non-transitory computer-readable media that collectively store instructions that, when executed by the one or more processors, cause the computing system to perform operations, the operations comprising:
determining a multi-dimensional space for each phase of a plurality of different phases of a lane change maneuver associated with at least first and second lanes of a nominal path for an autonomous vehicle;
for each different phase of the lane change maneuver: determining one or more objects of interest having a predetermined manner of interaction with the at least first and second lanes of the nominal path during the phase; generating a constraint for each of the one or more objects of interest, each constraint identifying a constraint area along the nominal path that the autonomous vehicle cannot occupy during the phase; and
determining a portion of the multi-dimensional space including corresponding constraints that applies to a respective timeframe associated with the phase;
combining the respective portions of the multi-dimensional space including corresponding constraints for each phase of the plurality of different phases of the lane change maneuver to generate a multiplexed space; and
determining a set of navigation decisions relative to the one or more objects of interest across the different phases and corresponding timeframes of the multiplexed space.
2 . The computing system of claim 1 , wherein the plurality of different phases of the lane change maneuver comprise a first phase when the autonomous vehicle operates within boundaries of the first lane, a second phase when the autonomous vehicle has partially crossed a lane boundary between the first lane and the second lane and is in transition from the first lane into the second lane, and a third phase when the autonomous vehicle has completely moved into the second lane and operates within boundaries of the second lane.
3 . The computing system of claim 2 , wherein the multi-dimensional space for each phase of the plurality of different phases of the lane change maneuver comprises at least a time dimension and a distance dimension relative to travel along the nominal path.
4 . The computing system of claim 3 , wherein combining the respective portions of the multi-dimensional space including corresponding constraints for each phase of the plurality of different phases of the lane change maneuver generates a temporally multiplexed space having a first portion corresponding to the first phase, a second portion corresponding to the second phase, and a third portion corresponding to the third phase.
5 . The computing system of claim 4 , wherein determining the set of navigation decisions relative to the one or more objects of interest comprises determining a low-cost trajectory path through a portion of the multiplexed space that minimizes exposure to the constraint areas.
6 . The computing system of claim 5 , wherein determining the set of navigation decisions relative to the one or more objects of interest further comprises translating the low-cost trajectory path into the set of navigation decisions based at least in part on whether the low-cost trajectory path passes above or below each constraint area associated with an object of interest within the multiplexed space.
7 . The computing system of claim 5 , wherein determining the low-cost trajectory path through the portion of the multiplexed space that minimizes exposure to the constraint areas comprises:
determining a set of candidate trajectory paths through the multiplexed space;
generating a score for each candidate trajectory path in the set of candidate trajectory paths; and
determining the low-cost selected trajectory path based at least in part on the scores for each candidate trajectory path in the set of candidate trajectory paths.
8 . The computing system of claim 1 , wherein each constraint area is defined by a constraint sequence of linear constraints that are successively sampled over a duration in time and sequentially combined to generate the constraint sequence.
9 . The computing system of claim 1 , wherein determining the one or more objects of interest having the predetermined manner of interaction with the at least first and second lanes of the nominal path during the phase comprises determining one or more blocking objects based at least in part on a manner of interaction that an object of interest has with one or more of the at least first and second lanes.
10 . The computing system of claim 9 , wherein determining the one or more blocking objects comprises:
obtaining feature data descriptive of a first object perceived by the autonomous vehicle;
inputting the feature data into a machine-learned blocking classifier model; and
receiving a blocking decision as an output of the machine-learned blocking classifier model, wherein the blocking decision describes the first object as a blocking object or a non-blocking object.
11 . The computing system of claim 10 , wherein the operations further comprise determining a side of the nominal path for the autonomous vehicle associated with each of the objects of interest determined to be non-blocking objects.
12 . The computing system of claim 11 , wherein determining the one or more objects of interest that are interacting with a lane sequence associated with the nominal path for the autonomous vehicle comprises determining one or more yield zones that are associated with one or more fixed locations along the at least first and second lanes.
13 . The computing system of claim 11 , the operations further comprising:
determining a motion plan based at least in part on the set of navigation decisions; and
controlling motion of the autonomous vehicle based at least in part on the motion plan.
14 . An autonomous vehicle, comprising:
one or more processors; and
one or more non-transitory computer-readable media that collectively store instructions that when executed by the one or more processors, cause the one or more processors to perform operations, the operations comprising:
determining a multi-dimensional space for each phase of a plurality of different phases of a lane change maneuver associated with at least first and second lanes of a nominal path for an autonomous vehicle;
for each different phase of the lane change maneuver: determining one or more objects of interest having a predetermined manner of interaction with the at least first and second lanes of the nominal path during the phase; generating a constraint for each of the one or more objects of interest, each constraint identifying a constraint area along the nominal path that the autonomous vehicle cannot occupy during the phase; and
determining a portion of the multi-dimensional space including corresponding constraints that applies to a respective timeframe associated with the phase;
combining the respective portions of the multi-dimensional space including corresponding constraints for each phase of the plurality of different phases of the lane change maneuver to generate a multiplexed space; and
determining a trajectory path through a portion of the multiplexed space that minimizes exposure to the constraint areas; and
determining, based at least in part on the trajectory path, a set of navigation decisions relative to the one or more objects of interest across the different phases and corresponding timeframes of the multiplexed space.
15 . The autonomous vehicle of claim 14 , wherein the plurality of different phases of the lane change maneuver comprise a first phase when the autonomous vehicle operates within boundaries of the first lane, a second phase when the autonomous vehicle has partially crossed a lane boundary between the first lane and the second lane and is in transition from the first lane into the second lane, and a third phase when the autonomous vehicle has completely moved into the second lane and operates within boundaries of the second lane.
16 . The autonomous vehicle of claim 15 , wherein the muti-dimensional space for each phase of the plurality of different phases of the lane change maneuver comprises at least a time dimension and a distance dimension relative to travel along the nominal path.
17 . The autonomous vehicle of claim 16 , wherein combining the respective portions of the multi-dimensional space including corresponding constraints for each phase of the plurality of different phases of the lane change maneuver generates a temporally multiplexed space having a first portion corresponding to the first phase, a second portion corresponding to the second phase, and a third portion corresponding to the third phase.
18 . The autonomous vehicle of claim 14 , wherein determining the one or more objects of interest having a predetermined manner of interaction with the at least first and second lanes of the nominal path comprises determining one or more blocking objects based at least in part on a manner of interaction that an object of interest has with a given lane.
19 . A computer-implemented method, comprising:
determining, by a computing system that comprises one or more computing devices, a multi-dimensional space for each phase of a plurality of different phases of a lane change maneuver associated with at least first and second lanes of a nominal path for an autonomous vehicle;
for each different phase of the lane change maneuver: determining, by the computing system, one or more objects of interest having a predetermined manner of interaction with the at least first and second lanes of the nominal path during the phase; generating, by the computing system, a constraint for each of the one or more objects of interest, each constraint identifying a constraint area along the nominal path that the autonomous vehicle cannot occupy during the phase; and determining, by the computing system, a portion of the multi-dimensional space including corresponding constraints that applies to a respective timeframe associated with the phase;
combining, by the computing system, the respective portions of the multi-dimensional space including corresponding constraints for each phase of the plurality of different phases of the lane change maneuver to generate a multiplexed space; and
determining, by the computing system, a set of navigation decisions relative to the one or more objects of interest across the different phases and corresponding timeframes of the multiplexed space.
20 . The computer-implemented method of claim 19 , further comprising:
determining, by the computing system, a motion plan based at least in part on the set of navigation decisions; and
controlling, by the computing system, motion of the autonomous vehicle based at least in part on the motion plan.