US-12617400-B2 - System and method for determining a target vehicle speed
Abstract
A machine-learned model is trained using human driving data to determine a desired vehicle speed based from a set of driving-environment characteristics. An autonomous-vehicle control system obtains, from cameras, sensors, services, and data sources, a variety of sensor data. The sensor data is used to determine a set of characteristics for the driving-environment for the autonomous vehicle. Using the machine-learned model, the autonomous-vehicle control system determines a human-like desired speed for the autonomous vehicle based at least in part on the determined characteristics of the driving-environment.
Inventors
- Abishek Krishna Akella
Assignees
- Zoox, Inc.
Dates
- Publication Date
- 20260505
- Application Date
- 20190628
Claims (18)
- 1 . A method, comprising: receiving, from a sensor on an autonomous vehicle, sensor data relating to a driving environment of the autonomous vehicle; determining, based at least in part on the sensor data, driving-environment characteristics of the driving environment, wherein the driving-environment characteristics comprise: a first number of additional vehicles in proximity to the autonomous vehicle and travelling in a same direction as the autonomous vehicle; a second number of additional vehicles in proximity to the autonomous vehicle and travelling in an opposite direction relative to the autonomous vehicle; and environmental conditions comprising one or more of a physical road condition, weather of the driving environment, or visibility; inputting the first number of additional vehicles in the same direction, the second number of additional vehicles in the opposite direction, and the environmental conditions into a machine-learned model trained to determine a speed using training data collected from vehicles driven by human drivers; receiving, from the machine-learned model, a target speed for the autonomous vehicle; determining, based at least in part on the sensor data and the target speed, a trajectory for the autonomous vehicle; determining whether the target speed is within a threshold amount of a previous target speed; and controlling the autonomous vehicle in accordance with the trajectory and based at least in part on determining that the target speed is within the threshold amount of the previous target speed.
- 2 . The method of claim 1 , wherein the driving-environment characteristics further comprise one or more of: a volumetric boundary defining occupied space associated with the additional vehicles, a presence of roadway construction or a roadway obstruction, or a statutory speed limit associated with the driving environment determined based at least in part on map data associated with the driving environment.
- 3 . The method of claim 1 , further comprising: determining, from the sensor data, that an emergency vehicle is present, wherein the driving-environment characteristics further comprise a presence of the emergency vehicle.
- 4 . The method of claim 1 , further comprising: determining, from the sensor data, a measure of wheel slip, wherein the driving-environment characteristics further comprise a measure of vehicle traction.
- 5 . A system, comprising: a sensor; one or more processors; and physical memory storing computer-executable instructions that, as a result of being executed by the one or more processors, cause the system to: receive sensor data from the sensor; determine, based at least in part on the sensor data, a plurality of conditions associated with a driving environment of a vehicle, wherein the plurality of conditions comprise: a first number of additional vehicles in proximity to the vehicle and travelling in a same direction as the vehicle; a second number of additional vehicles in proximity to the vehicle and travelling in an opposite direction relative to the vehicle; and environmental conditions comprising one or more of a physical road condition, weather of the driving environment, or visibility; provide the first number of additional vehicles in the same direction, the second number of additional vehicles in the opposite direction, and the environmental conditions to a machine-learned model to produce a target speed, the machine-learned model trained using training data generated from vehicles driven by human drivers; determine, based at least in part on the sensor data and the target speed, a trajectory for the vehicle; determine whether the target speed is within a threshold amount of a previous target speed; and control the vehicle based at least in part on the trajectory and based at least in part on determining that the target speed is within the threshold amount of the previous target speed.
- 6 . The system of claim 5 , wherein the plurality of conditions further comprise one or more of: a volumetric boundary defining occupied space associated with one of the first number of additional vehicles or the second number of additional vehicles, a presence of roadway construction or a roadway obstruction, or a statutory speed limit associated with the driving environment determined based at least in part on map data associated with the driving environment.
- 7 . The system of claim 5 , wherein the computer-executable instructions further include instructions that, if executed, cause the one or more processors to: determine, from the sensor data, whether an emergency vehicle is present; and wherein the plurality of conditions includes a presence of the emergency vehicle.
- 8 . The system of claim 5 , wherein the computer-executable instructions further include instructions that, if executed, cause the one or more processors to: determine, from the sensor data, a measure of wheel slip; and wherein the plurality of conditions includes a measure of vehicle traction.
- 9 . The system of claim 5 , wherein the computer- executable instructions further include instructions that, if executed, cause the one or more processors to: determine, from the sensor data, whether a pedestrian is present by determining that the pedestrian is within a threshold distance of a path of the vehicle; and wherein the plurality of conditions includes a presence of the pedestrian.
- 10 . The system of claim 5 , wherein the plurality of conditions further comprises an occlusion grid that identifies areas around the vehicle that are not sensed by the vehicle.
- 11 . The system of claim 5 , wherein the training data includes a plurality of data samples, each sample in the plurality of data samples including a value for each condition in the plurality of conditions and an associated speed driven by a human driver.
- 12 . A non-transitory computer-readable storage medium having stored thereon executable instructions that, as a result of being executed by one or more processors of a computer system, cause the computer system to perform operations comprising: obtaining sensor data from one or more sensors on a vehicle; determining, based at least in part on the sensor data, one or more parameters representative of characteristics of an environment through which the vehicle travels, wherein the one or more parameters represent characteristics comprising: a first number of additional vehicles in proximity to the vehicle and travelling in a same direction as the vehicle; a second number of additional vehicles in proximity to the vehicle and travelling in an opposite direction relative to the vehicle; and environmental conditions comprising one or more of a physical road condition, weather of the environment, or visibility; determining, based at least in part on the sensor data and the one or more parameters, a target speed provided by a machine-learned model, the machine-learned model trained by: receiving a sample of driving data of an individual vehicle driven by a human driver; determining a set of the one or more parameters associated with the sample and an associated speed driven by the human driver; and inputting the associated speed, the first number of additional vehicles in the same direction, the second number of additional vehicles in the opposite direction, and the environmental conditions into the machine-learned model; determining, based at least in part on the sensor data and the target speed, a trajectory for the vehicle; and controlling the vehicle based at least in part on the trajectory; wherein the driving data includes a plurality of data samples, each sample in the plurality of data samples including a value for each parameter in the one or more parameters and an associated speed driven by a human driver.
- 13 . The non-transitory computer-readable storage medium of claim 12 , wherein the one or more parameters represent characteristics further comprising one or more of: a volumetric boundary defining occupied space associated with the additional vehicles, a presence of roadway construction or a roadway obstruction, or a statutory speed limit associated with the environment determined based at least in part on map data associated with the environment.
- 14 . The non-transitory computer-readable storage medium of claim 12 , wherein the operations further comprise determining, from the sensor data, whether an emergency vehicle is present; and wherein the one or more parameters represent characteristics further comprising a presence of the emergency vehicle.
- 15 . The non-transitory computer-readable storage medium of claim 12 , wherein the operations further comprise determining, from the sensor data, a measure of wheel slip; and wherein the one or more parameters represent characteristics further comprising a measure of vehicle traction.
- 16 . The non-transitory computer-readable storage medium of claim 12 , wherein the operations further comprise determining, from the sensor data, whether a pedestrian is present by determining that the pedestrian is within a threshold distance of a path of the vehicle; and wherein the one or more parameters represent characteristics further comprising a presence of the pedestrian.
- 17 . The non-transitory computer-readable storage medium of claim 12 , wherein the one or more parameters represent characteristics further comprising an occlusion grid that identifies areas around the vehicle that are not sensed by the vehicle.
- 18 . The non-transitory computer-readable storage medium of claim 12 , wherein the operations further comprise: determining whether the target speed is within a threshold amount of a previous target speed; and controlling the vehicle based at least in part on determining that the target speed is within the threshold amount of the previous target speed.
Description
BACKGROUND The development of autonomous vehicles has great potential to improve people's lives. Early examples provided speed control that maintained vehicle speed at a set velocity. Later implementations added visual, laser, or radar sensors that allowed cruise control systems to maintain distance from traffic ahead of the vehicle being controlled. Still later implementations added lane departure alert systems and even lane keeping systems to aid in steering the vehicle. Many companies and individuals are working on fully autonomous systems in the hope that vehicles can be operated with minimal and perhaps no human intervention. Although the economic benefits of such a system are enticing, no major manufacturer has successfully deployed a fully autonomous vehicle to the mass market. The autonomous driving problem has proven itself to be far more complex and nuanced than a simple problem of applied physics. For example, any autonomous vehicle must interact with many other vehicles being operated by human operators making human decisions. Therefore, it is important that any autonomous driving system operate in a way that appropriately interacts with the occupants of the vehicle and with the operators of other vehicles. BRIEF DESCRIPTION OF THE DRAWINGS Various techniques will be described with reference to the drawings, in which: FIG. 1 illustrates an example of an autonomous vehicle operating in a driving environment; FIG. 2 illustrates an example of a system that generates a machine-learned model for determining a desired speed based on human driving data; FIG. 3 illustrates an example of a process to generate a machine-learned model that outputs a desired vehicle speed given a set of driving-environment characteristics; FIG. 4 illustrates an example of a vehicle control system that uses a machine-learned model to determine a desired vehicle speed; FIG. 5 illustrates an example of a process that, as a result of being performed by an autonomous-vehicle control system, controls a vehicle speed in accordance with a desired speed produced by a machine-learned model; FIG. 6 illustrates an example of a process that, as a result of being performed by an autonomous-vehicle control system, determines a preferred vehicle speed produced based at least in part on a speed produced by a machine-learned model; and FIG. 7 illustrates a system in which various techniques described herein can be implemented. DETAILED DESCRIPTION The present document describes a system that determines a desired speed for an autonomous vehicle using a machine-learned model trained using human driving examples. In various examples, the machine-learned model is a neural network. The human driving examples are used to train the neural network by identifying various characteristics of the driving environment and then providing those characteristics along with the speed driven by the human operator to the neural network. In one example, the characteristics include lane width, posted speed limit, oncoming traffic speed, vertical and horizontal curvature of the road, the speed of other nearby vehicles, and visibility. After training, in some examples, the trained state of the neural network is a machine-learned model that can be used to determine an appropriate speed for the autonomous vehicle that is similar to the speed a human operator would select under similar conditions. In one example, an autonomous vehicle includes a vehicle-control system. The vehicle-control system is a computer system that includes one or more processors and memory that stores executable instructions that, as a result of being executed by the one or more processors, causes the system to control the vehicle. The vehicle-control system includes various servos that allow control of the steering, throttle, and other vehicle systems as well as a set of sensors such as cameras, radar, a global positioning receiver and navigational database, attitude sensors, and accelerometers that collect sensor data. In one example, sensor data collected by the vehicle-control system is used to estimate a set of characteristics that match the characteristics represented in the training data. The estimated set of characteristics is provided to the machine-learned model, and the machine-learned model produces a desired speed based on the characteristics. In some examples, the machine-learned model is trained from sensor data, and the resulting machine-learned model produces a desired speed from sensor data acquired by the vehicle-control system. In various examples, additional characteristics represented in the training data may be provided to the vehicle-control system by other services. For example, map data, weather information, temperature information, time of day, and date of year may be present in the training data and used by the vehicle-control system to produce the desired speed. In another example, vehicle characteristics such as vehicle type, vehicle weight, vehicle payload, towing