CPC B60W 60/001 (2020.02) [G01C 21/3819 (2020.08); B60W 2552/05 (2020.02)] | 20 Claims |
1. An autonomous vehicle comprising:
one or more processors; and one or more non-transitory computer-readable media storing instructions executable by the one or more processors, wherein the instructions, when executed, cause the autonomous vehicle to perform operations comprising:
determining, in relation to map data representing an environment, a location and an orientation associated with the autonomous vehicle, wherein the map data includes spatially indexed tiles representing:
a plurality of different types of drivable surfaces associated with the environment, and
a drivable-surface boundary separating the plurality of different types of drivable surfaces from a non-drivable surface;
determining, among the spatially indexed tiles and based at least in part on the location, a first tile associated with a first branch of a spatial index and corresponding with a first type of drivable surface associated with the environment;
determining, as the autonomous vehicle is traversing the environment, link data stored in association with the first tile, the link data providing an address to an adjacent tile in the environment such that a search proceeds from the first tile to the adjacent tile without having to proceed through a hierarchical structure associated with the adjacent tile;
determining a second tile adjacent the first tile based at least in part on the link data associating the first tile with the second tile, the second tile being associated with a second branch of the spatial index and with a second type of drivable surface associated with the environment that is different from the first type of drivable surface;
casting, from the first tile and based at least in part on the orientation, a ray across the second tile;
determining, based at least in part on the ray and the drivable-surface boundary, a trajectory; and
controlling the autonomous vehicle based at least in part on the trajectory.
|