Active risk mitigation with generic virtual vehicles

By identifying and predicting the trajectory of virtual vehicles and autonomously controlling their trajectory, the problem of autonomous vehicles being unable to avoid dangers from external objects in traffic networks is solved, thus achieving safe and comfortable driving.

CN121752482APending Publication Date: 2026-03-27NISSAN NORTH AMERICA INC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-06-20
Publication Date
2026-03-27

AI Technical Summary

Technical Problem

When autonomous vehicles traverse traffic networks, potential hazards posed by external objects are difficult to identify and avoid effectively. Existing technologies may lead to unnecessary maneuvers or an inability to avoid dangerous objects.

Method used

By identifying the location of virtual vehicles, predicting their trajectories, and autonomously controlling the trajectories of vehicles based on map data and sensor-perceptible areas, lateral and speed constraints can be achieved, reducing speed and lateral changes in response to potential hazards.

Benefits of technology

It effectively reduces the risks to vehicles when traversing traffic networks, provides a comfortable and safe response, simulates human driver precautions, and is suitable for autonomous or semi-autonomous vehicles.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121752482A_ABST
    Figure CN121752482A_ABST
Patent Text Reader

Abstract

Active mitigation of risk of a vehicle crossing a vehicle transportation network includes identifying a location of a virtual vehicle. The virtual vehicle is added to a world object model maintained relative to the vehicle. A trajectory of the virtual vehicle is predicted. The vehicle is autonomously controlled according to the adjusted trajectory based on the trajectory of the virtual vehicle. The adjusted trajectory includes at least one of a lateral constraint and a velocity constraint. A location of the virtual vehicle is identified based on lanes in the map data, a trajectory of the vehicle, and a perceptible area of a sensor of the vehicle. The virtual vehicle is a hypothetical vehicle that is not observed by a sensor of the vehicle.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] This application relates to risk mitigation for autonomous vehicles, including proactive risk mitigation in trajectory planning for autonomous vehicles. BACKGROUND

[0002] Increased use of autonomous vehicles creates potential for passengers and cargo to move more efficiently through a transportation network. In addition, use of autonomous vehicles can result in improved vehicle safety and more efficient communication between vehicles. However, external objects make traversal of a transportation network difficult. SUMMARY

[0003] Aspects, features, elements, and implementations for proactive risk mitigation are disclosed herein.

[0004] A first aspect is a method comprising: identifying a location of a virtual vehicle; adding the virtual vehicle to a world object model maintained with respect to a vehicle; predicting a trajectory of the virtual vehicle; and autonomously controlling the vehicle according to an adjusted trajectory based on the trajectory of the virtual vehicle, wherein the adjusted trajectory includes at least one of a lateral constraint and a speed constraint. The location of the virtual vehicle is identified based on a lane in map data, a trajectory of the vehicle, and a perceptible area of a sensor of the vehicle. The virtual vehicle is a hypothetical vehicle that is not observed by the sensor of the vehicle.

[0005] A second aspect is an apparatus for proactive mitigation of risk of a vehicle traversing a vehicle transportation network. The apparatus comprises a processor configured to identify a location of a virtual vehicle that is not observable by a sensor of the vehicle; predict a trajectory of the virtual vehicle; and send a signal to control the vehicle according to a proactive trajectory based on the trajectory of the virtual vehicle, wherein the proactive trajectory includes at least one of a lateral constraint and a speed constraint. The location of the virtual vehicle is identified based on a lane in map data, a trajectory of the vehicle, and a perceptible area of the sensor of the vehicle.

[0006] A third aspect is a vehicle comprising a processor configured to proactively mitigate risk of the vehicle when traversing a vehicle transportation network by: identifying a location of a virtual vehicle that is not observable by a sensor of the vehicle; predicting a trajectory of the virtual vehicle; and autonomously controlling the vehicle according to a proactive trajectory based on the trajectory of the virtual vehicle, wherein the proactive trajectory includes at least one of a lateral constraint and a speed constraint. The location is identified based on a lane in map data, a trajectory of the vehicle, and a perceptible area of the sensor of the vehicle.

[0007] These and other aspects of this disclosure are disclosed in the following detailed description of the embodiments, the appended claims and the accompanying drawings. Attached Figure Description

[0008] The disclosed technology can be best understood from the following detailed description when read in conjunction with the accompanying drawings. It is emphasized that, by convention, the various features in the drawings may not be drawn to scale. On the other hand, for clarity, the dimensions of various features may be arbitrarily enlarged or reduced. Furthermore, unless otherwise stated, the same reference numerals refer to the same elements throughout the drawings.

[0009] Figure 1 This is a diagram illustrating an example of a vehicle that can realize a portion of the aspects, features, and elements disclosed herein.

[0010] Figure 2 The diagram is an example of a vehicle transportation and communication system that can realize the aspects, features and elements disclosed herein.

[0011] Figure 3 This is a diagram of a system for vehicle control using proactive risk mitigation, implemented according to this disclosure.

[0012] Figure 4 It is based on Figure 3 A diagram of the layers of an active trajectory planner.

[0013] Figure 5 This is a flowchart of a method for proactive risk mitigation implemented according to this disclosure.

[0014] Figure 6 This is a diagram illustrating an example of determining a hazardous area for a static hazardous object according to an implementation of this disclosure.

[0015] Figure 7 It is a graph of a single trajectory for a dynamically hazardous object.

[0016] Figure 8 It is a graph of a single trajectory for another dynamic hazardous object.

[0017] Figure 9 This is a diagram illustrating an example of determining a danger zone based on an implementation of this disclosure.

[0018] Figure 10 It is a trajectory planning diagram based on the implementation of this disclosure.

[0019] Figure 11 This is a flowchart of a method for proactive risk mitigation, which takes into account the predicted trajectory range for dynamic objects.

[0020] Figure 12 It is used for explanation Figure 11 A diagram illustrating the method.

[0021] Figure 13A and Figure 13B This is a graph showing the predicted trajectory range for parallel dynamic hazardous objects.

[0022] Figure 14 This is another diagram showing the predicted trajectory range for parallel, dynamically hazardous objects.

[0023] Figures 15-20 This is a diagram used to explain the allocation of a double-sided buffer according to the implementation of this disclosure.

[0024] Figure 21 This is a diagram illustrating an example of application-side buffer allocation based on an implementation of this disclosure.

[0025] Figure 22 This is a diagram illustrating another example of application-side buffer allocation based on the implementation of this disclosure.

[0026] Figure 23 It is a block diagram of a system for using virtual vehicles.

[0027] Figure 24 An example of identifying the location of a virtual vehicle is shown.

[0028] Figure 25A It is a visualization of the world model of the vehicle.

[0029] Figure 25B It is another visualization of the world model of vehicles.

[0030] Figure 26 It is a block diagram of a system for using virtual, opposing vehicles in dangerous situations.

[0031] Figure 27 An example is given of a scenario where a reciprocating virtual vehicle is used as a hazardous object.

[0032] Figure 28 An example is given of a scenario where a reciprocating virtual vehicle is used as a hazardous object.

[0033] Figure 29A This is an example illustrating the use of opposing virtual vehicles around sharp corners with obstructions.

[0034] Figure 29B This is an example Figure 29A Examples of the same situation, but captured earlier in time.

[0035] Figure 30 An example is given of a scenario for creating a virtual vehicle based on maximum sensing and tracking range.

[0036] Figure 31An example of using a peer-to-peer virtual vehicle is given.

[0037] Figure 32 This is a flowchart of a method for proactive risk mitigation using virtual vehicles. Detailed Implementation

[0038] A vehicle may traverse a portion of a vehicle traffic network. A vehicle traffic network may include: one or more unnavigable areas, such as buildings; one or more partially navigable areas, such as parking areas (e.g., parking lots, parking spaces, etc.); one or more navigable areas, such as roads (including lanes, medians, intersections, etc.); or combinations thereof.

[0039] Vehicles may include one or more sensors. Traffic through vehicle networks may include sensors generating or capturing sensor data, such as data corresponding to the operating environment of the vehicle or a portion thereof. For example, sensor data may include information corresponding to one or more potential hazards embodied in or identified as (e.g., resolved to) a corresponding external object. Such objects may also be referred to herein as hazardous objects.

[0040] Dangerous objects can be static objects. Static objects are objects that are stationary and not expected to move in the next few seconds. Examples of static objects include bicycles without riders, refrigerated vehicles, air vehicles, road signs, walls, buildings, potholes, etc.

[0041] A dangerous object can be a stopped object. A stopped object is a stationary object, but it may move at any time. Examples of stopped objects include vehicles stopped at traffic lights and vehicles with occupants (e.g., drivers) on the side of the road. In some implementations, a stopped object can be considered a static object.

[0042] Dangerous objects can be dynamic (i.e., moving) objects, such as pedestrians, long-distance vehicles, motorcycles, bicycles, etc. Dynamic objects can be facing (towards the vehicle) or moving in the same direction as the vehicle. Dynamic objects can move longitudinally or laterally relative to the vehicle. A stationary object can become a dynamic object, and vice versa.

[0043] There are two common action procedures in response to the detection of a potential hazard. The vehicle may ignore a potential hazard until it is confirmed as a dangerous object that could interfere with the vehicle's path or is confirmed as a false alarm (e.g., a sensor malfunction). Alternatively, the vehicle may treat each potential hazard as a dangerous object that could interfere with its path. Either action procedure may be undesirable. Waiting may result in the inability to avoid the dangerous object, or in unnatural or uncomfortable maneuvers used to avoid the dangerous object. Treating a potential hazard as a dangerous object may cause the vehicle to perform unnecessary maneuvers (such as deceleration or lateral movement) without addressing the potential hazard.

[0044] As an alternative, and based on the teachings of this paper, proactive risk mitigation can be used, which takes into account the responsiveness of a vehicle when planning its proactive trajectory, which minimizes the speed and / or lateral changes in response to movement of potential hazards, while still allowing for a comfortable and safe response (i.e., a response trajectory) even if a hazardous object interferes with the vehicle's path.

[0045] This solution leverages the fact that vehicle responses to road conditions (i.e., driven by humans, remotely operated, etc.) can be predicted / anticipated even when the driving environment is dynamic. The behavior of hazardous objects can be similarly predicted because crossing the vehicle traffic network is governed by road rules (e.g., vehicles turning left yield to oncoming traffic, vehicles driving between lane markings, etc.), social conventions (e.g., one or more drivers yielding to drivers on the right at stop signs), and physical constraints (e.g., stationary objects do not instantly move laterally into the vehicle's path).

[0046] This predictability can be used to predict the behavior of hazardous objects to control the response of vehicles (such as autonomous vehicles, semi-autonomous vehicles, or any other vehicle including advanced driver assistance systems (ADAS)) as they traverse a vehicle traffic network. For example, if a vehicle is traveling in its lane on a two-lane road and an oncoming vehicle is passing a parked vehicle, the oncoming vehicle may move closer to the lane and the parked vehicle, making the oncoming vehicle a hazardous object. Similarly, if another vehicle pulls over to the side of the road in front of the vehicle, the driver's side door may open, making that other vehicle a hazardous object. In various scenarios, if the hazardous object materializes as predicted, an active trajectory for the vehicle can be determined, proactively adjusting its planned path and speed to avoid a collision.

[0047] However, when the hazardous object is dynamic, predictive behavior based on anticipated constraints may fail to accurately capture the full range of possible behaviors. A dynamic object may fail to yield or abruptly veer off its intended path. A dynamic object may accelerate or decelerate, either alone or in combination with another unlikely behavior (e.g., failure to yield or abrupt veer). In such cases, interactions between the vehicle and the dynamic object can occur at uncertain times and locations. The active trajectory described in this paper addresses this unpredictability.

[0048] Furthermore, when multiple hazards are identified, each hazard can be considered individually, regardless of whether it includes dynamic objects. However, considering each hazard individually may not yield the optimal trajectory, as different hazards may represent different levels of risk for the vehicle. It is desirable to consider hazards holistically to define the active trajectory, especially when the vehicle is traveling along narrow lanes or residential streets, where multiple hazards on either side of the vehicle can create a cluttered driving environment.

[0049] In addition to actual (e.g., sensed or observed) hazards as described above, this disclosure also relates to (e.g., applies to) virtual hazards. Besides reacting to observed objects (e.g., adjusting driving behavior in response to observed objects), human drivers tend to drive slower and take other precautions when driving around sharp corners and / or in environments with limited visibility (e.g., on foggy days or when lanes are not fully visible) or when anticipating the unexpected appearance of a vehicle. Human drivers will anticipate the possibility that another road user (e.g., a vehicle) may be appearing just beyond their perceptual limits and take proactive action in such cases. For example, a human driver may slow down or give way depending on the range of visibility. To mimic human driver behavior while providing comfort for vehicle occupants, the proactive risk mitigation described herein can also be applied to virtual hazards (or virtual vehicles).

[0050] A virtual vehicle is an instantiated vehicle added to a world model. When a virtual vehicle is added to the world model, it does not correspond to an actual vehicle sensed by the vehicle's sensors. The processing of a virtual vehicle can be performed at least to a large extent as if it were actually a sensed vehicle. That is, proactive risk mitigation can be based on (e.g., taking into account) the virtual vehicle to plan a trajectory. Proactive risk mitigation using a generic virtual vehicle creates (e.g., instantiates) a virtual vehicle in an obscured area of ​​a road (e.g., a lane thereon) or at the maximum sensing range. The virtual vehicle can then be used as a hazard within the framework described herein (such as in proactive risk mitigation and trajectory planning), allowing constraints to be generated. As described herein, constraints can be or include reduced speeds and / or pre-allocated space for passage. Note that unless explicitly stated otherwise or clearly indicated by the context, the reference to "hazard" encompasses both actual and virtual hazards.

[0051] To describe in more detail some implementations of the proactive risk mitigation taught in this paper, we first refer to the environment in which this disclosure can be implemented.

[0052] Figure 1 This figure is an example of a vehicle 100 that can implement a portion of the aspects, features, and elements disclosed herein. The vehicle 100 includes a chassis 102, a powertrain 104, a controller 114, wheels 132 / 134 / 136 / 138, and may include any other elements or combinations of elements of the vehicle. Although for simplicity, the vehicle 100 is shown as including four wheels 132 / 134 / 136 / 138, one or more other propulsion devices (such as pushers or step plates) may be used. Figure 1 In this configuration, the lines that interconnect components such as powertrain 104, controller 114, and wheels 132 / 134 / 136 / 138 indicate information such as data or control signals, power such as electricity or torque, or both information and power that can communicate between the components. For example, controller 114 may receive power from powertrain 104 and communicate with powertrain 104, wheels 132 / 134 / 136 / 138, or both, to control vehicle 100, which may include accelerating, decelerating, steering, or otherwise controlling vehicle 100.

[0053] The powertrain 104 includes a power source 106, a transmission 108, a steering unit 110, a vehicle actuator 112, and may include any other components of the powertrain (such as suspension, drive shaft, wheel axle, or exhaust system) or combinations of components. Although shown separately, wheels 132 / 134 / 136 / 138 may be included in the powertrain 104.

[0054] Power source 106 can be any device or combination of devices operable to provide energy (such as electrical, thermal, or kinetic energy). For example, power source 106 includes an engine (such as an internal combustion engine, an electric motor, or a combination of an internal combustion engine and an electric motor) and is operable to provide kinetic energy as a prime mover to one or more of the wheels 132 / 134 / 136 / 138. In some embodiments, power source 106 includes a potential energy unit, such as one or more dry cell batteries (such as nickel-cadmium (NiCd) batteries, nickel-zinc (NiZn) batteries, nickel-metal hydride (NiMH) batteries, lithium-ion (Li-ion) batteries, etc.), solar cells, fuel cells, or any other device capable of providing energy.

[0055] The transmission 108 receives energy (such as kinetic energy) from the power source 106 and transmits that energy to the wheels 132 / 134 / 136 / 138 to provide prime mover power. The transmission 108 may be controlled by a controller 114, a vehicle actuator 112, or both. The steering unit 110 may be controlled by the controller 114, the vehicle actuator 112, or both, and the steering unit 110 controls the wheels 132 / 134 / 136 / 138 to steer the vehicle. The vehicle actuator 112 may receive signals from the controller 114 and may actuate or control the power source 106, the transmission 108, the steering unit 110, or any combination thereof to operate the vehicle 100.

[0056] In the illustrated embodiment, controller 114 includes a positioning unit 116, an electronic communication unit 118, a processor 120, a memory 122, a user interface 124, a sensor 126, and an electronic communication interface 128. Although shown as a single unit, any one or more elements of controller 114 can be integrated into any number of separate physical units. For example, user interface 124 and processor 120 can be integrated into a first physical unit, and memory 122 can be integrated into a second physical unit. Although in Figure 1 Although not shown, controller 114 may include a power source such as a battery. Although shown as separate elements, positioning unit 116, electronic communication unit 118, processor 120, memory 122, user interface 124, sensor 126, electronic communication interface 128, or any combination thereof may be integrated into one or more electronic units, circuits, or chips.

[0057] In some embodiments, processor 120 includes any existing or subsequently developed means or combination of means capable of manipulating or processing signals or other information, such as optical processors, quantum processors, molecular processors, or combinations thereof. For example, processor 120 may include one or more dedicated processors, one or more digital signal processors, one or more microprocessors, one or more controllers, one or more microcontrollers, one or more integrated circuits, one or more application-specific integrated circuits, one or more field-programmable gate arrays, one or more programmable logic arrays, one or more programmable logic controllers, one or more state machines, or any combination thereof. Processor 120 may be operatively coupled to positioning unit 116, memory 122, electronic communication interface 128, electronic communication unit 118, user interface 124, sensor 126, powertrain 104, and any combination thereof. For example, processor may be operatively coupled to memory 122 via communication bus 130.

[0058] Processor 120 can be configured to execute instructions. Such instructions may include instructions for remote operation, which can be used to operate vehicle 100 from a remote location (including an operations center). Instructions for remote operation may be stored in vehicle 100 or received from external sources (such as traffic management centers) or server computing devices (which may include cloud-based server computing devices). Processor 120 may also implement some or all of the proactive risk mitigation described herein.

[0059] Memory 122 may include any tangible, non-transitory computer-usable or computer-readable medium capable of, for example, containing, storing, communicating, or transmitting machine-readable instructions or any information associated therewith, for use by or in connection with processor 120. Memory 122 may include, for example, one or more solid-state drives, one or more memory cards, one or more removable media, one or more read-only memory (ROM), one or more random access memory (RAM), one or more registers, one or more low-power double data rate (LPDDR) memory, one or more cache memories, one or more disks (including hard disks, floppy disks, or optical disks), magnetic cards or optical cards, or any type of non-transitory medium suitable for storing electronic information, or any combination thereof.

[0060] The electronic communication interface 128 may be a wireless antenna, a wired communication port, an optical communication port, or any other wired or wireless unit that can be coupled to the wired or wireless electronic communication medium 140, as shown in the figure.

[0061] The electronic communication unit 118 can be configured to transmit or receive signals via a wired or wireless electronic communication medium 140 (such as via an electronic communication interface 128). Although in Figure 1 Although not explicitly shown, electronic communication unit 118 is configured to transmit, receive, or both via any wired or wireless communication medium (such as radio frequency (RF), ultraviolet (UV), visible light, optical fiber, wired lines, or combinations thereof). Figure 1 A single electronic communication unit 118 and a single electronic communication interface 128 are shown, but any number of communication units and any number of communication interfaces can be used. In some embodiments, the electronic communication unit 118 may include a dedicated short-range communication (DSRC) unit, a wireless security unit (WSU), IEEE 802.11p (WiFi-P), or a combination thereof.

[0062] Positioning unit 116 can determine geographic location information, including but not limited to the longitude, latitude, altitude, direction of travel, or speed of vehicle 100. For example, positioning units include Global Positioning System (GPS) units, such as National Marine Electronics Association (NMEA) units with Wide Area Augmentation System (WAAS) enabled, radio triangulation units, or combinations thereof. Positioning unit 116 can be used to obtain information, for example, representing the current heading of vehicle 100, the current position of vehicle 100 in two or three dimensions, the current angular orientation of vehicle 100, or combinations thereof.

[0063] User interface 124 may include any unit capable of serving as a human interface, including any of a virtual keyboard, physical keyboard, touchpad, display, touchscreen, speaker, microphone, camera, sensor, and printer. User interface 124 may be operatively coupled to processor 120 as shown, or operatively coupled to any other element of controller 114. Although shown as a single unit, user interface 124 may include one or more physical units. For example, user interface 124 may include an audio interface for audio communication with a person and a touchscreen display for vision- and touch-based communication with a person.

[0064] Sensor 126 may include one or more sensors (such as a sensor array) operable to provide information that can be used to control the vehicle. Sensor 126 may provide information relating to the current operating characteristics of the vehicle or its surrounding environment. Sensor 126 may include, for example, a speed sensor, an acceleration sensor, a steering angle sensor, a traction-related sensor, a braking-related sensor, or any sensor or combination of sensors operable to report information relating to some aspect of the current dynamic condition of the vehicle 100.

[0065] In some embodiments, sensor 126 includes sensors operable to obtain information relating to the physical environment surrounding vehicle 100. For example, one or more sensors detect road geometry and obstacles (such as stationary obstacles, vehicles, cyclists, and pedestrians). Sensor 126 may be or may include one or more cameras, laser sensing systems, infrared sensing systems, acoustic sensing systems, or any other suitable type of vehicle-mounted environmental sensing device, or a combination of such devices, now known or subsequently developed. Sensor 126 and positioning unit 116 may be combined.

[0066] Although not shown separately, vehicle 100 may include a trajectory controller. For example, controller 114 may include a trajectory controller. The trajectory controller is operable to obtain information describing the current state of vehicle 100 and a planned route for vehicle 100, and to determine and optimize the trajectory of vehicle 100 based on that information. In some embodiments, the trajectory controller outputs a signal operable to control vehicle 100 such that vehicle 100 follows the trajectory determined by the trajectory controller. For example, the output of the trajectory controller may be an optimized trajectory that can be supplied to powertrain 104, wheels 132 / 134 / 136 / 138, or both. The optimized trajectory may be a control input such as a set of steering angles, where each steering angle corresponds to a point in time or position. The optimized trajectory may be one or more paths, lines, curves, or combinations thereof.

[0067] One or more of wheels 132 / 134 / 136 / 138 may be: a steering wheel that pivots to a steering angle under the control of steering unit 110; a drive wheel that twists to propel vehicle 100 under the control of transmission 108; or a steering drive wheel that steers and propels vehicle 100.

[0068] The vehicle may include those not in Figure 1 The units or components shown include housings, Bluetooth® modules, FM radio units, near field communication (NFC) modules, liquid crystal display (LCD) units, organic light-emitting diode (OLED) display units, speakers, or any combination thereof.

[0069] Vehicles (such as vehicle 100, etc.) can be autonomous or semi-autonomous. For example, as used herein, an autonomous vehicle should be understood to include vehicles that include advanced driver assistance systems (ADAS). ADAS can automate, adapt, and / or enhance vehicle systems to achieve safety and better driving, such as by avoiding or otherwise correcting driver errors.

[0070] Figure 2 This is a diagram illustrating an example of a vehicle transportation and communication system 200 that can implement the aspects, features, and elements disclosed herein. The vehicle transportation and communication system 200 includes a vehicle 202 (such as...) Figure 1 The vehicle 100 shown (e.g.) and one or more external objects (e.g., external object 206), the external objects may include any form of transportation (e.g., Figure 1 The vehicle 202 can travel via one or more parts of the traffic network 208 and can communicate with external objects 206 via one or more of the electronic communication networks 212. Although in Figure 2 Not explicitly shown, but vehicles may traverse areas not explicitly or fully included in the traffic network (such as off-road areas). In some embodiments, the traffic network 208 may include one or more of vehicle detection sensors 210 (such as inductive loop sensors) that can be used to detect movement of vehicles on the traffic network 208.

[0071] Electronic communication network 212 may be a multiple access system that provides communication (such as voice communication, data communication, video communication, message transmission communication or a combination thereof) between vehicle 202, external object 206 and operation center 230. For example, vehicle 202 or external object 206 may receive information (such as information representing traffic network 208) from operation center 230 via electronic communication network 212.

[0072] Operation center 230 includes controller device 232, which includes Figure 1 Some or all of the features of the controller 114 shown are described. The controller device 232 can monitor and coordinate the movement of vehicles (including autonomous vehicles). The controller device 232 can monitor the status or conditions of vehicles (such as vehicle 202) and external objects (such as external object 206). The controller device 232 can receive vehicle data and infrastructure data, including any of the following: vehicle speed; vehicle location; vehicle operating status; vehicle destination; vehicle route; vehicle sensor data; external object speed; external object location; external object operating status; external object destination; external object route; and external object sensor data.

[0073] Furthermore, controller device 232 can establish remote control over one or more vehicles (such as vehicle 202) or external objects (such as external object 206). In this way, controller device 232 can remotely operate vehicles or external objects from a remote location. Controller device 232 can exchange (send or receive) status data with vehicles, external objects, or computing devices (such as vehicle 202, external object 206, or server computing device 234) via wireless communication links (such as wireless communication link 226) or wired communication links (such as wired communication link 228).

[0074] Server computing device 234 may include one or more server computing devices that can exchange (send or receive) status signal data with one or more vehicles or computing devices (including vehicles 202, external objects 206, or operation centers 230) via electronic communication network 212.

[0075] In some embodiments, the vehicle 202 or external object 206 communicates via wired communication link 228, wireless communication links 214 / 216 / 224, or any combination of wired or wireless communication links of any number or type. For example, as shown, the vehicle 202 or external object 206 communicates via terrestrial wireless communication link 214, via non-terrestrial wireless communication link 216, or via a combination thereof. In some implementations, terrestrial wireless communication link 214 includes an Ethernet link, a serial link, a Bluetooth link, an infrared (IR) link, an ultraviolet (UV) link, or any link capable of electronic communication.

[0076] Vehicles (such as vehicle 202) or external objects (such as external object 206) can communicate with another vehicle, external object, or operations center 230. For example, the primary vehicle or main vehicle 202 can receive one or more inter-vehicle messages, such as basic safety messages (BSMs), from operations center 230 via direct communication link 224 or via electronic communication network 212. For example, operations center 230 can broadcast messages to the primary vehicle within a defined broadcast range (such as 300 meters) or to a defined geographical area. In some embodiments, vehicle 202 receives messages via a third party (such as a signal repeater (not shown) or another remote vehicle (not shown)). In some embodiments, vehicle 202 or external object 206 periodically transmits one or more inter-vehicle messages based on defined intervals (such as 100 milliseconds).

[0077] Vehicle 202 can communicate with electronic communication network 212 via access point 218. Access point 218, which may include a computing device, is configured to communicate with vehicle 202, electronic communication network 212, operations center 230, or a combination thereof via wired or wireless communication links 214 / 220. For example, access point 218 is a base station, base transceiver station (BTS), node B, enhanced node B (eNode-B), home node B (HNode-B), wireless router, wired router, hub, repeater, switch, or any similar wired or wireless device. Although shown as a single unit, an access point may include any number of interconnecting elements.

[0078] The vehicle 202 can communicate with the electronic communication network 212 via satellite 222 or other non-terrestrial communication devices. The satellite 222, which may include a computing device, can be configured to communicate with the vehicle 202, the electronic communication network 212, the operations center 230, or a combination thereof via one or more communication links 216 / 236. Although shown as a single unit, the satellite may include any number of interconnecting elements.

[0079] Electronic communication network 212 can be any type of network configured to provide voice, data, or any other type of electronic communication. For example, electronic communication network 212 includes a local area network (LAN), a wide area network (WAN), a virtual private network (VPN), a mobile or cellular telephone network, the Internet, or any other electronic communication system. Electronic communication network 212 can use communication protocols such as Transmission Control Protocol (TCP), User Datagram Protocol (UDP), Internet Protocol (IP), Real-Time Transfer Protocol (RTP), Hypertext Transfer Protocol (HTTP), or combinations thereof. Although shown as a single unit, electronic communication network can include any number of interconnecting elements.

[0080] In some embodiments, vehicle 202 communicates with operations center 230 via electronic communication network 212, access point 218, or satellite 222. Operations center 230 may include one or more computing devices capable of exchanging (sending or receiving) data from: vehicles (such as vehicle 202); data from external objects (including external object 206); or data from computing devices (such as server computing device 234).

[0081] In some embodiments, the vehicle 202 identifies a portion of the traffic network 208 or its conditions. For example, the vehicle 202 may include one or more on-vehicle sensors 204 (such as… Figure 1The sensors shown (such as 126) include speed sensors, wheel speed sensors, cameras, gyroscopes, optical sensors, laser sensors, radar sensors, acoustic sensors, or any other sensor or device or combination thereof capable of determining or identifying a part or condition of the traffic network 208.

[0082] Vehicle 202 may traverse one or more portions of traffic network 208 using information communicated via electronic communication network 212 (such as information representing traffic network 208, information identified by sensors 204 on one or more vehicles, or combinations thereof). External object 206 is capable of all or some of the communication and actions described above with respect to vehicle 202.

[0083] For the sake of simplicity, Figure 2 The diagram shows a vehicle 202 as the main transport vehicle, an external object 206, a transportation network 208, an electronic communication network 212, and an operations center 230. However, any number of vehicles, networks, or computing devices can be used. In some embodiments, the vehicle transport and communication system 200 includes... Figure 2 Devices, units, or elements not shown in the diagram.

[0084] Although vehicle 202 is shown communicating with operations center 230 via electronic communication network 212, vehicle 202 (and external object 206) can communicate with operations center 230 via any number of direct or indirect communication links. For example, vehicle 202 or external object 206 can communicate with operations center 230 via a direct communication link such as a Bluetooth communication link. Although for simplicity... Figure 2 One of the traffic networks 208 and one of the electronic communication networks 212 are shown, but any number of networks or communication devices may be used.

[0085] External object 206 Figure 2 The external object is exemplified as a second remote vehicle. The external object is not limited to another vehicle. It can be any infrastructure element capable of transmitting data to the operations center 230, such as a fence, sign, building, etc. The data can be, for example, sensor data from the infrastructure element.

[0086] Figure 3 This is a diagram of a system 300 for vehicle control using proactive risk mitigation, implemented according to this disclosure. Although a vehicle is depicted traveling through a vehicle traffic network such as vehicle traffic network 208, the teachings herein can be applied to any area navigable by the vehicle. System 300 may represent a vehicle (such as...) Figure 1The system 300 is a software pipeline (such as a vehicle 100). The system 300 includes a world model 302, a route planner 304, a decision module 306, an active trajectory planner 308, and a reactive trajectory control 310. Other examples of the system 300 may include more, fewer, or other components. In some examples, components may be combined; in other examples, components may be divided into more than one component.

[0087] World Model 302, such as from Figure 1 Sensors such as sensor 126 receive sensor data and determine (e.g., convert, detect, etc.) objects based on the sensor data. That is, world model 302 determines hazardous objects (e.g., road users) based on the received sensor data. For example, world model 302 can convert point clouds received from a Light Detection and Ranging (LiDAR) sensor (i.e., the sensor of sensor 126) into objects, such as hazardous objects. Sensor data from several sensors can be fused together to identify objects. Examples of objects include non-motorized vehicles (e.g., bicycles), pedestrians or animals, motorized vehicles, etc.

[0088] World model 302 can receive sensor information that allows it to calculate and maintain additional information about at least some detected objects. For example, world model 302 can maintain the states of at least some defined objects. The states of an object can include zero or more than zero of the following: velocity, pose, geometry (such as width, height, and depth), classification (e.g., bicycle, large truck, pedestrian, road sign, etc.), and location. Therefore, the states of an object include discrete state information (e.g., classification) and continuous state information (e.g., pose and velocity).

[0089] World model 302 fuses sensor information, tracks objects, maintains a list of hypotheses for at least some of the dynamic objects (e.g., object A may be going straight, turning right, or turning left), creates and maintains predicted trajectories for each hypothesis, and maintains a likelihood estimate for each hypothesis (e.g., considering object attitude / velocity and trajectory attitude / velocity, the probability that object A is going straight is 90%). In the example, world model 302 uses an instance of a trajectory planner to generate predicted trajectories for each object hypothesis for at least some of the dynamic objects. For example, an instance of a trajectory planner can be used to generate predicted trajectories for vehicles, bicycles, and pedestrians. In another example, an instance of a trajectory planner (such as the trajectory planner described below) can be used to generate predicted trajectories for vehicles and bicycles, and different methods can be used to generate predicted trajectories for pedestrians.

[0090] Objects maintained by world model 302 may include dangerous objects, which may include static objects, dynamic objects, or both.

[0091] Route planner 304 determines road-level planning. For example, given a starting point and a destination, route planner 304 determines the route from the starting point to the destination. Route planner 304 can determine a list of roads that a vehicle should follow to navigate from the starting point to the destination (i.e., road-level planning).

[0092] The road-level plan determined by the route planner 304 and the objects (and corresponding state information) maintained by the world model 302 can be used by the decision module 306 to determine discrete-level decisions along the road-level plan. Examples of decisions included in the discrete-level decisions may include: stopping at the next intersection, moving slowly forward, accelerating to a certain speed limit, merging into the next lane, etc.

[0093] The active trajectory planner 308 can receive discrete-level decisions, objects (and corresponding state information) maintained by the world model 302, and predicted trajectories and likelihoods of external objects from the world model 302. The active trajectory planner 308 can use at least some of the received information to determine a detailed planned trajectory for the vehicle, referred to herein as an active trajectory.

[0094] For example, the active trajectory planner 308 determines the trajectory for the next few seconds. Therefore, and in an example where the next few seconds is the next 6 seconds (i.e., a 6-second look-ahead time), the active trajectory planner 308 determines the vehicle's trajectory and location for the next 6 seconds. For example, the active trajectory planner 308 can determine (e.g., predict, calculate, etc.) the vehicle's expected location at several time intervals (e.g., every quarter second or some other time interval). The active trajectory planner 308 is described in more detail below.

[0095] Reactive trajectory control 310 can handle situations that a vehicle may encounter but may not be handled by the active trajectory planner 308. Such situations include instances where the active trajectory planner 308 misclassifies objects and / or rarely occurring unintended situations. For example, reactive trajectory control 310 may modify the active trajectory in response to a misclassification of a static object determined to be to the left of the vehicle. The object may have been classified as a large truck; however, the new classification determines it to be a static road barrier. In another example, reactive trajectory control 310 may modify the active trajectory in response to a sudden tire blowout of the vehicle. Other examples of unintended situations include another vehicle (e.g., due to a delayed decision to enter a highway exit ramp or a tire blowout) suddenly veering into the vehicle's lane and pedestrians or other objects suddenly appearing from behind obstructions.

[0096] In some implementations, the prediction algorithm of the active trajectory planner 308 can be configured to generate a plan at 10 Hz; on the other hand, the reactive trajectory control 310 can be configured to generate a plan at 100 Hz.

[0097] Figure 4 It shows how it can be achieved according to Figure 3 A diagram illustrating an example of an active trajectory planner 308. The active trajectory planner 308 may receive a driving objective 401. The active trajectory planner 308 may receive the driving objective 401 as a series of lane choices and speed limits connecting a first location to a second location. For example, the driving objective in driving objective 401 could be "starting at location x, driving in a lane with a certain identifier (e.g., a lane with an identifier equal to A123), while adhering to speed limit y". The active trajectory planner 308 can be used to generate a trajectory that achieves the driving objective 401.

[0098] In this example, the active trajectory planner 308 includes a driving line data layer 402, a reference trajectory generation layer 404, an object avoidance layer 406, and an active trajectory optimization layer 408. The active trajectory planner 308 generates an active trajectory. Other examples of the active trajectory planner 308 may include more, fewer, or other layers. In some examples, layers may be combined; in other examples, layers may be divided into one or more other layers. These layers may be implemented by software or by one or more modules including hardware modules such as, for example, application-specific integrated circuits (ASICs).

[0099] Driving line data layer 402 includes input data that can be used by the active trajectory planner 308. The driving line data can be used (e.g., by the reference trajectory generation layer 404) to determine (i.e., generate, calculate, or select) a coarse driving line from a first location to a second location. A driving line can be considered as a line in a road on which the longitudinal axis of the vehicle coincides as the vehicle moves along the road. Therefore, driving line data is data that can be used to determine the driving line. At this point, the driving line is coarse and may contain lateral discontinuities, such as when lateral changes are involved between adjacent lanes. As further described below, the driving line at this point has not yet been adjusted for objects encountered by the vehicle.

[0100] In the example, the driving line data layer 402 may include one or more of the following: high-definition (HD) map data 410, teleoperated map data 412, recorded path data 414, preceding vehicle data 416, parking lot data 418, and perceived path data 420.

[0101] HD map data 410 can be data from a high-definition (i.e., high-precision) map that can be used by autonomous vehicles. HD map data 410 can include information related to vehicle traffic networks accurate to within centimeters. For example, HD map data 410 can include details related to road lanes, road dividers, traffic signals, traffic signs, and speed limits. In some implementations, map data can be obtained from maps of lower quality than HD maps.

[0102] The teleoperation map data 412 may include relatively short driving line data. For example, the teleoperation map data 412 may be driving line data of 100 to 200 meters in length. However, the teleoperation map data 412 is not necessarily limited to this. The teleoperation map data 412 (when it exists) may be manually generated by the teleoperator in response to or anticipation of abnormal situations in which the vehicle cannot handle automatically.

[0103] The recorded route data 414 may include data related to routes previously followed by the vehicle. In the example, the vehicle operator (e.g., driver or remote operator) may have recorded the route from the street to the garage at home.

[0104] The preceding vehicle data 416 can be data received from one or more vehicles traveling along a roughly the same trajectory as the preceding vehicle. In the example, such as regarding Figure 2 The vehicle and the preceding vehicle can communicate via a wireless communication link. Therefore, the vehicle can receive trajectory and / or other information from the preceding vehicle via the wireless communication link. The preceding vehicle data 416 can also be sensed (e.g., followed) in the absence of an explicit communication link. For example, the vehicle can track the preceding vehicle and can estimate the preceding vehicle's driving line based on the tracking results. As described below, the preceding vehicle (where present) can also be considered a dynamic object.

[0105] Parking data 418 includes data relating to the location of parking lots and / or parking spaces. Parking data 418 can be used to predict the trajectories of other vehicles. For example, if the parking lot entrance is near another vehicle, one of the predicted trajectories of that other vehicle could be that it will enter the parking lot.

[0106] In some situations, map (e.g., HD map) information may not be available for parts of the vehicle's traffic network. Therefore, the perceived path data 420 may represent driving lines for which previously mapped information is unavailable. Alternatively, the vehicle can use fewer, more, or different lane markings, curbs, and road boundaries to detect driving lines in real time. In the example, road boundaries can be detected based on a transition from one terrain type (e.g., pavement) to another (e.g., gravel or grass). Other methods can be used to detect driving lines in real time.

[0107] The reference trajectory generation layer 404 may include a driving line cascade module 422, a strategy speed planning module 424, and a driving line synthesis module 426. The reference trajectory generation layer 404 provides a coarse driving line (i.e., a reference driving line) to the discrete-time speed planning module 428.

[0108] Note that the route planner 304 can generate a sequence of lane IDs for driving from a first location to a second location, corresponding to (e.g., providing) driving targets 401. For this purpose, driving targets 401 can be spaced 100 meters apart, depending on the length of the lanes. In the case of HD map data 410, for example, the reference trajectory generation layer 404 can use a combination of locations (e.g., GPS locations, 3D Cartesian coordinates, etc.) and lanes (e.g., lane identifiers) from the sequence of driving targets 401 to (e.g., from HD map data 410) generate a high-resolution driving line representing a series of attitudes of the vehicle. Each attitude can be at a predetermined distance. For example, attitudes can be spaced one to two meters apart. Attitudes can be defined by variables such as coordinates (x, y, z), roll angle, pitch angle, and / or yaw angle.

[0109] As described above, driving line data can be used to determine (e.g., generate, calculate, etc.) a coarse driving line. Driving line cascading module 422 stitches (e.g., links, merges, combines, connects, integrates, or otherwise stitches) the input data of driving line data layer 402 to determine a coarse driving line along the longitudinal direction (e.g., along the path of a vehicle). For example, to determine a coarse driving line from location A (e.g., workplace) to location D (e.g., home), driving line cascading module 422 can use input data from parking data 418 to determine the exit point from the workplace parking lot to the main road, can use data from HD map data 410 to determine the path from the main road to home, and can use data from recorded path data 414 to navigate to the driveway at home.

[0110] The coarse driving line does not include speed information. However, in some implementations, the coarse driving line may include speed limit information that can be used (e.g., extracted) from the HD map data 410. The strategy speed planning module 424 determines (one or more) specific speeds along different sections of the coarse driving line. For example, the strategy speed planning module 424 may determine that on a first straight segment of the coarse driving line, the vehicle's speed can be set to the speed limit of that first straight segment; and on a subsequent second curved segment of the coarse driving line, the vehicle's speed should be set to a slower speed.

[0111] More specifically, the inputs used by the strategy speed planning module 424 may include one or more speed limits, one or more acceleration limits, or both. Speed ​​limits may include one or more of the following: road speed limits (such as marked speed limits), curvature speed limits (and / or road curvature information, such as turning radii, from which speed limits can be calculated), and Seamless Autonomous Mobility (SAM) data (i.e., data collected from vehicles (such as in cloud-based systems) that provide information related to road and / or traffic conditions that can be used to determine speed). For example, vibration data collected from vehicles traveling along a portion of a road, relating vibration levels and speed at different sections of the road, can be used to determine unacceptable vibration levels when the vehicle is traveling above a certain speed. This can provide another speed limit to be considered when determining strategy speed planning.

[0112] In this example, SAM data can be received by the vehicle from a central server (such as operations center 230, server computing device 234, or some other network device). In this example, the SAM data can be data accumulated from other vehicles over a certain period of time (e.g., 1 minute, 10 minutes, 20 minutes, etc.) after the vehicle arrives at its destination. In some implementations, the vehicle can either pull the SAM data itself or push the SAM data to the server providing the SAM data based on the vehicle reporting its location.

[0113] Road speed limits, curvature speed limits, and SAM data can be combined to provide raw speed limits. For example, the minimum speed limit at a location along a coarse driving line (e.g., every 5 meters, 10 meters, etc.) can be used as the raw speed limit at that location. The raw speed limit can be modified by acceleration limits, such as vehicle acceleration limits (e.g., based on the vehicle's torque and power) and acceleration-related human comfort limits (which can be less than the vehicle acceleration limits). For example, acceleration limits can be combined by finding the minimum of two maximum curves (comfort, speed). In some implementations, strategic speed programming can be generated by solving for the fastest speed distribution along a coarse driving line that satisfies constraints on speed (speed limits at any given location along the driving line) and constraints on acceleration (acceleration limits at any given speed).

[0114] In this way, the strategy speed planning module 424 can take into account the current state of the vehicle (e.g., speed and acceleration) but not other road users or static objects, and calculate a speed plan that is law-abiding (e.g., complying with speed limits and stop lines), comfortable (e.g., physical and emotional) and physically feasible (e.g., speed and distance along the driving line) for a coarse driving line.

[0115] Once the strategic speed plan (also known as the strategic speed distribution) is determined by the strategic speed planning module 424, the driving line synthesis module 426 can laterally adjust the coarse driving line. Taking into account the strategic speed plan and the coarse driving line with lateral discontinuities, the driving line synthesis module 426 determines the start and end points of lane changes and synthesizes the driving line connecting the two points.

[0116] The driving line synthesis module 426 can synthesize driving lines that connect lateral discontinuities in a thick driving line. For example, suppose HD map data 410 includes a first segment of a thick driving line in the first lane of a road, but a second segment of the thick driving line is in the second lane of the same road. Therefore, there is a lateral discontinuity in the thick driving line. The driving line synthesis module 426 first determines the turning distance (or equivalently, the start and end points) at which the vehicle should change from the first lane to the second lane. That is, the start position is the road position when the vehicle begins to move from the first lane to the second lane. The end position is the road position when the vehicle completes the lane change. Then, the driving line synthesis module 426 generates new driving line data that connects the start position in the first lane to the end position in the second lane.

[0117] The transition (e.g., the length of a lane change) determined by the driving line synthesis module 426 can be speed-dependent. For example, when a vehicle is moving at a lower speed, it may require a shorter transition distance to change from one lane to another compared to when the vehicle is moving at a higher speed. For instance, in busy traffic conditions where the vehicle is traveling at a slower speed (e.g., 15 MPH), the transition may require 20 yards; however, if the vehicle is traveling at a higher speed (e.g., 65 MPH), the transition distance may be 100 yards. Therefore, the driving line synthesis module 426 can determine the transition position based on the vehicle's speed.

[0118] The output of the driving line synthesis module 426 is provided to the object avoidance layer 406. The output of the driving line synthesis module 426 includes a coarse driving line and a strategy velocity plan. The object avoidance layer 406 generates an intermediate discrete-time velocity plan and lateral constraints for the coarse driving line. For future discrete time points (or equivalently, at discrete locations along the vehicle's path), the discrete-time velocity planning module 428 determines (i.e., calculates) the corresponding desired or target velocity, acceleration / deceleration, or both for the vehicle.

[0119] At object avoidance layer 406, and as further described below, using a coarse driving line, nearby hazardous objects (e.g., static objects, dynamic objects, or both), and the predicted trajectory of any dynamic hazardous objects, object avoidance layer 406 determines the drivable area where the vehicle can operate safely, along with a modified driving line, discrete-time speed planning, or both. In short, for hazardous objects (such as those related to...), Figure 3 The world model 302 describes hazardous objects (e.g., those in the world model) and evaluates and / or adjusts the coarse driving line. Given the vehicle's current speed, the object avoidance layer 406 generates a discrete-time (e.g., real-time) speed plan at the discrete-time speed planning module 428. Using the speed plan, the object avoidance layer 406 can estimate the vehicle's future location at discrete future time points. The future location can be evaluated against the locations of hazardous objects (i.e., objects in the world model) and the constraints they impose on the vehicle's trajectory at the static object constraint module 430 and the dynamic object constraint module 432 to optimize the active trajectory at the active trajectory optimization layer 408. The active trajectory is determined to provide (e.g., generate) smooth driving for the vehicle. Determining a smooth active trajectory can be an iterative process.

[0120] about Figure 5 Further details are described regarding the determination of the drivable zone and discrete-time velocity planning at object avoidance layer 406, and the optimization of the active trajectory at active trajectory optimization layer 408. Figure 5 This is a flowchart of a method 500 for proactive risk mitigation implemented according to this disclosure. Method 500 can be stored as executable instructions in a storage container such as...Figure 1 The executable instructions can be generated by a processor (such as memory 122, etc.) in memory. Figure 1 The method 500 can be executed, in whole or in part, by a processor 120, etc. The method 500 can be executed by a hardware component associated with the computer. Figure 1 100 vehicles Figure 2 The vehicle 202 shown is operated by remote assistance as previously described, or by a combination thereof. For example, method 500 may be wholly or partially implemented in a manner including... Figure 2 The controller device 232 shown is executed in a computing device. In implementation, some or all aspects of method 500 can be implemented in a system combining some or all of the features described in this disclosure. For example, method 500 can be utilized by object avoidance layer 406, active trajectory optimization layer 408, or both.

[0121] Although this document sometimes refers to autonomous vehicles, the methods and apparatus described herein can be implemented in any vehicle capable of autonomous or semi-autonomous operation, such as vehicles including ADAS. Although described with reference to vehicle traffic networks, the methods and apparatus described herein can include vehicles operating in any area navigable by the vehicle.

[0122] In short, a method 500 for proactively mitigating the risks of vehicles traversing a vehicle traffic network may include determining corresponding hazard zones for detected hazardous objects, such hazard zones being defined accordingly based on the state of the hazardous object as a static hazard (also known as a static object) or as a dynamic hazard (also known as a dynamic object), thereby defining target lateral constraints associated with the hazardous object. The target lateral constraints may be constraints that allow the vehicle to avoid the hazardous object without speed constraints (e.g., without modifying the current time-speed plan). When hazard zones exist at the same discretized time and location (e.g., they overlap in the longitudinal direction), a lateral buffer algorithm can be used to determine the final size of the lateral buffer. The allocation can be determined based on a cost function, optimized for the risk posed by the hazardous object (including the target lateral constraints), as described in more detail below. The longitudinal constraints for each hazard zone can be calculated based on the corresponding time the vehicle arrives at the hazard zone. The active constraints are then processed together to determine an active trajectory as a modification of the previous trajectory. For example, the most restrictive longitudinal (speed) constraint might require the vehicle to follow a road user (e.g., a bicycle or vehicle) ahead of it, accelerating and / or decelerating according to longitudinal contingency measures. Lateral constraints may require the vehicle to move laterally in accordance with lateral emergency measures. Further details are described below.

[0123] More specifically, at 502, a first hazardous object can be detected. When hazardous objects are described herein and in the claims, the terms “first,” “second,” etc., may be used without limiting the order in which objects are detected, unless otherwise stated or clearly indicated by the context. Instead, these terms are used only to distinguish one object from another. The first hazardous object is ahead of the vehicle in its direction of travel. For example, the direction of travel of the vehicle may be indicated by a coarse driving line and a policy speed plan output from the reference trajectory generation layer 404, or it may be indicated by an active trajectory generated by the active trajectory planner 308 (e.g., by the active trajectory optimization layer 408) during a previous iteration of method 500. In some implementations, the vehicle is traversing lanes within a vehicle traffic network, where lanes are defined by left and right lane boundaries extending longitudinally relative to the direction of travel. One or more of the detected hazardous objects may be virtual vehicles, which can be detected as described herein. Detecting virtual vehicles includes identifying the location of the virtual vehicle and adding the virtual vehicle to the world model.

[0124] Objects can be at least some of the external objects (e.g., real or virtual objects) maintained by world model 302. For example, nearby objects can be objects within a predetermined distance of the vehicle, objects within the predicted arrival time of the vehicle, or objects that meet other criteria used to identify objects. This is also referred to herein as look-ahead time or look-ahead distance, or both. Hazardous objects are detected at 502 until no more hazardous objects are detected at 504 in response to a query.

[0125] Once a hazardous object is detected, the corresponding danger zone for that object is determined at point 506. For example, a first danger zone can be determined for a first hazardous object located in front of the vehicle in the direction of travel of the vehicle. First, refer to... Figure 6 Describe the danger zone for stationary or static objects. Figure 6 This is a diagram illustrating an example of determining a hazardous area for a static hazardous object according to an implementation of this disclosure.

[0126] Generally speaking, Figure 6 Examples of drivable regions and discrete-time speed planning are illustrated. A drivable region is, for example, an area in a vehicle traffic network where a vehicle can be safely driven. Initially, a drivable region may include the area where a vehicle can travel, corresponding to a reference trajectory (e.g., a coarse driving line and policy speed planning) from reference trajectory generation layer 404, i.e., an area without considering detected objects. For example, a drivable region may be a predefined distance from the vehicle along a coarse driving line (e.g., in the longitudinal direction). A drivable region may also be an area where a vehicle can be (e.g., legally and / or physically) driven.

[0127] In the example, a drivable area can be extracted from an HD map based on the vehicle's current location. The drivable area can be defined by the left and right boundaries of the lane (or road or some other area) where the vehicle is located. The lane does not necessarily correspond to a marked lane. For example, the default drivable area of ​​a lane can be defined by a default width (such as 8 meters or some other value). In the example, the drivable area can cross the centerline of the road. That is, oncoming traffic lanes can be included in the drivable area. In the example, the drivable area can be defined by a median strip, a shoulder, or both (i.e., defined in the lateral direction). In some implementations, the drivable area may be limited by barriers (e.g., concrete barriers) that may be located in the median strip or elsewhere. As described below, such barriers can be considered static hazards.

[0128] Subsequently, areas where it is unpredictable that the vehicle will be safely driven can be removed (e.g., cut out) from the drivable area to obtain an adjusted drivable area for later use in determining the active trajectory to avoid objects. These areas correspond to the danger zones of hazardous objects. If there are no static and / or dynamic objects interfering with the vehicle's current trajectory, the adjusted drivable area is the same as the drivable area.

[0129] refer to Figure 6 The thick driving line 603 is the thick driving line for the vehicle 602. The default drivable area of ​​the vehicle 602 is defined by the left boundary 604 and the right boundary 606, which can define the maximum width of the drivable area (i.e., the drivable area boundaries). However, since it may be preferable to keep the vehicle 602 within its lane, the left lane boundary 608 and the right lane boundary 610 are also considered in the analysis of the danger zone. In some implementations, the lane boundaries may coincide with the drivable area boundaries.

[0130] In this example, the right lane boundary 610 includes a portion 612. Portion 612 is shown as a dashed line because this portion of the drivable area is to be adjusted as described further below. As shown, the drivable area of ​​the vehicle 602 can be divided into compartments (boxes). Each compartment can have a center point, which can be equidistantly spaced. For example, the center points can be approximately two meters apart, or they can be spaced closer or further apart depending on the speed of the vehicle 602. Boundary points 613 corresponding to detected objects are assigned to the corresponding compartments, such as compartments 616, 618, etc. For example, boundary points can be obtained from LiDAR sensors, laser pointers, Radar, or any other sensor (such as...). Figure 1Data can be exported from sensors 126, etc. Boundary points can represent (x,y) coordinates where AV access is blocked or otherwise prohibited. Since the boundary point 613 of boxes 616 and 618 appears to correspond to a large rectangular object, the object can be (e.g., via...) Figure 3 The world model 302) is classified as "truck". Boundary point 613 can correspond to one or more objects.

[0131] A boundary corresponding to an object (i.e., based on the object's definition) can be called a hard boundary. A hard boundary means that if a vehicle's planned trajectory crosses a hard boundary, a collision with the object is possible. On the other hand, lanes and / or road markings can be called soft boundaries and represent legal or logical boundaries. Soft boundaries mean that if a planned trajectory crosses a soft boundary (which is not a hard boundary), the vehicle's movement may be illegal and / or socially unacceptable, but the vehicle may be safely protected from collisions with objects. Figure 6 As shown, for example, left boundary 604 (i.e., left drivable area boundary) defines a left hard boundary, and left lane boundary 608 defines a left soft boundary. The right hard boundary includes right boundary 606 (i.e., right drivable area boundary) and boundary 614; the right soft boundary is defined by right lane boundary 610 and boundary 614. As described above, a left lane boundary (such as left lane boundary 608, etc.) can coincide with the left boundary of the drivable area; therefore, left lane boundary 608 can define a left hard boundary. Similarly, a right lane boundary (such as right lane boundary 610, etc.) can coincide with the right boundary of the drivable area; therefore, right lane boundary 610, together with boundary 614, can define a right hard boundary.

[0132] The notch defined (i.e., demarcated) by boxes 616, 618 and boundary 614 may be referred to herein as the danger zone. Although not explicitly described, there may be margins around the group of measured points such that the danger zone extends beyond these points. For example, such gap regions allow for uncertainties in sensor measurements.

[0133] The danger zone includes (e.g., defined) a target lateral constraint extending beyond the right lane boundary 610 and into the lane. The target lateral constraint (sometimes more simply referred to herein as a lateral constraint) is a restriction on the longitudinal extension of a portion of the vehicle traffic network through which a vehicle (such as vehicle 602, etc.) will pass, such that if the vehicle travels laterally outside the boundary of the constraint, the vehicle may avoid hazardous objects associated with the danger zone.

[0134] For the detected hazardous object (here, the first hazardous object), the first longitudinal constraint can also be determined based on the first time the vehicle arrives at (e.g., the first) hazard zone. That is, given the vehicle's current speed plan (e.g., the policy speed plan from the reference trajectory generation layer 404 or the current discrete-time speed plan from the discrete-time speed planning module 428), the time when the vehicle will arrive at the hazard zone can be determined. Arriving at the hazard zone may mean arriving at the first longitudinal position in the vehicle's direction of travel where the hazard zone is identified, regardless of whether the hazard zone interferes with the current trajectory. For example, and referencing... Figure 6 The arrival time can be the time it takes for the vehicle 602 to arrive at a point in the roadway represented by box 616. The longitudinal constraint can be equal to the arrival time (which indicates how much time the vehicle has to respond to the object), or it can be the arrival time minus a defined amount of time to reflect uncertainty in the sensed information. Lateral and longitudinal constraints are static object constraints used within the static object constraint module 430.

[0135] In some implementations, lateral constraints, longitudinal constraints, or both allow the vehicle to avoid hazard zones and thus hazardous objects without altering its nominal trajectory. In other implementations, the vehicle may use lateral contingency measures, longitudinal contingency measures, or both to modify its nominal trajectory to avoid hazard zones using the static object constraint module 430. Lateral contingency measures may be one or more variations in lateral position relative to the nominal trajectory. Longitudinal contingency measures may be one or more variations in speed relative to the nominal trajectory. These contingency measures are described in more detail below with reference to determining the active trajectory.

[0136] Refer again Figure 6Given the distance between the right and left hard boundaries of bins 616 and 618, it can be determined whether vehicle 602 can traverse the danger zone. This distance should be greater than a threshold distance that vehicle 602 must traverse, where the threshold distance may be related to the width of vehicle 602 (e.g., at least 1.2, 1.5 times, etc., the width of vehicle 602). In the example, the distance 620 between the boundary 614 of the danger zone (e.g., a target lateral constraint) and the left lane boundary 608 may be too narrow for vehicle 602 to drive (i.e., accommodate) through. If the left lane boundary 608 is the limit of the drivable area (e.g., because it is a physical, legal, or otherwise hard boundary), then the location 622 corresponding to bin 616 is a static blockage. That is, vehicle 602 cannot traverse the object (one or more) represented by the boundary points of bins 616 and 618. Therefore, object avoidance layer 406 can adjust discrete-time velocity planning to make the vehicle stop before or at the time of reaching location 622. In other words, a longitudinal emergency measure is determined to reduce the speed of vehicle 602 to a stop at location 622 in a manner that is comfortable and legal for passengers.

[0137] In another example, where the drivable area extends from the left lane boundary 608 to the left boundary 604, the gap 624 from the left boundary 604 to the danger zone boundary 614 is wide enough for the vehicle to avoid the danger zone and thus avoid the hazardous object. Instead of stopping, lateral emergency measures sufficient to allow the vehicle to pass through the gap 624 can be determined. In this case, the vehicle can avoid the hazardous object without speed constraints (e.g., longitudinal emergency measures).

[0138] exist Figure 6 In Example 600, objects are identified by points (i.e., boundary points) and / or groups of points representing the objects, such as by detection using LiDAR as described above with respect to world model 302. However, other implementations may use image recognition to identify images captured by one or more cameras mounted on a vehicle (such as vehicle 100 or 202) or within a vehicle traffic network (such as traffic network 208).

[0139] although Figure 6 Example 600 shows a first hazardous object located on the right side of vehicle 602 along driving line 603 of vehicle 602, but the hazardous object can be detected anywhere along the driving line, including entirely within the left lane boundary 608 and right lane boundary 610, or on the left side of vehicle 602 along driving line 603 of vehicle 602, such that the hazardous area extends beyond the left lane boundary 608 and into the lane.

[0140] DespiteFigure 6 Not shown, but may be present when vehicle 602 traverses a vehicle traffic network (e.g., in...). Figure 5 At location 502, one or more additional hazardous objects were detected. For example, a second hazard zone could be identified at location 506 for the second hazardous object. The second hazard zone would include elements related to... Figure 6 The second objective lateral constraint is determined in a similar manner to the first objective lateral constraint described.

[0141] Figure 6 The hazard zone associated with the static hazardous object detected at point 502 is described. The hazardous object detected at point 502 can alternatively be a dynamic hazardous object. Determining the hazard zone for the dynamic hazardous object at point 506 can depend on the trajectory of the dynamic hazardous object. Therefore, firstly regarding... Figure 7 and Figure 8 Describe the trajectory of a dangerous object.

[0142] exist Figure 7 In scenario 700, vehicle 702 is moving along the thick driving line 703. No static objects are detected. Left boundary 717 and right boundary 718 define the drivable area. Dynamic hazards, in the form of vehicle 704, are predicted to move along path or trajectory 720 from the right shoulder of the road (or from the lane to the right of the lane that includes vehicle 702) into the path of vehicle 702. Therefore, vehicle 704 is initially associated with a hazard zone that includes lateral constraints of a target extending beyond the right lane boundary (i.e., right boundary 718) and delaying into the lane. Subsequently, as discussed in more detail below, the hazard zone associated with vehicle 704 changes over time as vehicle 704 moves along its trajectory.

[0143] The dynamic object constraint module 432 can determine (e.g., predict) the location of vehicle 702 at different discrete points in time. For example, at time t (e.g., one second later), it is predicted that vehicle 702 will be at location 706; at time t+1 (e.g., two seconds later), it is predicted that vehicle 702 will be at location 708; and at time t+2 (e.g., three seconds later), it is predicted that vehicle 702 will be at location 710. Although locations within a future 3-second window (i.e., a 3-second time window) are shown relative to scenario 700 (and later scenario 800 described below), more or fewer locations can be determined, predicted, calculated, etc. Other time windows are possible, and the frequency of predicted locations within a window can also vary. In the example, the time window is six seconds, and locations can be determined every half second.

[0144] A second instance of a trajectory planner (such as an active trajectory planner 308, etc.) may be tracking vehicle 704 (e.g., predicting the trajectory of vehicle 704). The dynamic object constraint module of the second trajectory planner (such as dynamic object constraint module 432, etc.) can predict the future location of vehicle 704 (e.g., based on vehicle 704's current heading and speed and expected behavior). For example, at time t, it is determined that vehicle 704 will be at location 712; at time t+1, it is determined that vehicle 704 will be at location 714; and at time t+2, it is determined that vehicle 704 will be at location 716. In this example, the same time window and frequency of prediction can be the same for all instantiated trajectory planners for vehicle 702. However, this is not required. The time window and frequency can depend on the type of dynamic object (e.g., bicycle, pedestrian, sports car, sedan, large truck, etc.).

[0145] It can be related to Figure 6 The drivable area of ​​vehicle 702 is adjusted in a similar manner to avoid the danger zone corresponding to the corresponding location of vehicle 704. In scenario 700, vehicles 702 and 704 are presumably identified as being in the same location at the same time. Therefore, for each appropriate container, the right hard boundary of the lane can be set to line 722. Given the distance between the right and left hard boundaries of the containers, it can be determined whether vehicle 702 can traverse the danger zone. It can be determined whether vehicle 702 must modify its speed based on the danger zone. More generally, the danger zone along trajectory 720 can be used to determine lateral and longitudinal (i.e., speed) constraints, which can then be used to determine the active trajectory of vehicle 702, as described in more detail below.

[0146] Compared to scene 700, Figure 8 Scenario 800 illustrates an opposing dynamic hazard, in this case, vehicle 804. More specifically, vehicle 802 is moving eastward along thick driving line 803, and vehicle 804 is moving westward. Vehicle 804 is predicted to follow trajectory 809 to avoid a static hazard, namely the parked vehicle 806. The locations of vehicle 802 along thick driving line 803 at times t, t+1, and t+2 are predicted to be locations 810, 812, and 814, respectively. The locations of vehicle 804 along trajectory 809 at times t, t+1, and t+2 are predicted to be locations 816, 818, and 820, respectively.

[0147] Vehicles 802 and 804 are predicted to be at approximately the same location (i.e., the intersection corresponding to locations 812 and 818) at the same time (i.e., at time t+1). If vehicle 802 continues along the thick driving line 803, it may collide with vehicle 804. Despite... Figure 8 Not explicitly shown, but as described above, the drivable area of ​​scene 800 is adjusted (i.e., cut out). That is, the drivable area is adjusted to remove those areas that correspond to the corresponding danger zones of vehicle 804 over time, such as by setting the boundary of the box corresponding to (i.e., overlapping with) trajectory 809 (the left boundary in this example).

[0148] At the intersection (i.e., locations 812, 818), the width of the drivable area between the danger zone (i.e., the left hard boundary) and the right boundary at the intersection can be determined. The width or distance 822 generated by the target lateral constraint of the danger zone can be used to determine whether there is sufficient clearance for the vehicle 802 to pass. As described in more detail below, the response to this query can optionally be used in conjunction with the longitudinal (i.e., speed) constraints determined using the danger zone to determine the active trajectory of the vehicle 802.

[0149] Scenario 700 and 800 describe how danger zones can be located along the trajectory of dynamic hazardous objects, but they do not describe how to determine the danger zones. Regarding... Figure 9 The danger zone for identifying dynamically hazardous objects is described.

[0150] Figure 9 Example 900 presents a general approach to defining danger zones. Generally, a danger zone can be defined by an intrusion determined using the maximum intrusion and intrusion (intrusion) rate. Other definitions are possible. Once a danger zone is defined, a particular hazardous object (or type of hazardous object) may become independent of the active trajectory of the vehicle, calculated (e.g., determined, selected, calculated, etc.).

[0151] Example 900 illustrates a vehicle 902 traveling on a road (e.g., within lane 904). A hazard 906 is identified on one side of lane 904, but the principle applies to hazard objects detected elsewhere. Hazard 906 can be, for example, a parked vehicle, a pedestrian, or some other object at least partially capable of lateral movement. Therefore, hazard 906 can be considered a dynamic hazard. Vehicle 902 is moving toward hazard 906 according to its nominal trajectory 907.

[0152] Since uncertainty may be associated with sensor data and / or perceived world objects, a bounding box 905 that extends the actual / true size of the hazard object 906 can be associated with the hazard object 906. The shape representing the uncertainty can be any shape and is not limited to a rectangular box. Lateral attitude uncertainty 908 (denoted as Δy) p Defines the lateral size of the initial determination (e.g., perception, recognition, setting, etc.) of object 906. Time t indicates the time it takes for vehicle 902 to reach the danger zone (e.g., the nearest lateral extension edge of bounding box 905). The size of the uncertainty bounding box can be a function of one or more of the range uncertainty result, the angle (i.e., attitude, orientation, etc.) uncertainty result, and the rate uncertainty result. For example, regarding range uncertainty (i.e., uncertainty about how far the danger object 906 is from vehicle 902), vehicle 902 (more specifically, world model 302) can assign a longer uncertainty bounding box to an object perceived as farther away compared to a closer object. For example, regarding angle uncertainty (i.e., uncertainty about the orientation / attitude of danger object 906), different widths can be assigned to the uncertainty bounding box.

[0153] Maximum lateral intrusion 912 (denoted as Δy) v,max The maximum lateral intrusion into lane 904 is indicated by the potential lateral movement of hazardous object 906. Potential movement of hazardous object 906 can mean that object 906 itself is moving or a portion of object 906 is moving. In this example, hazardous object 906 is classified as a parked vehicle. The door of the parked vehicle can be opened. Since the maximum size of the door is approximately 1 meter, the maximum lateral intrusion 912 can be set as Δy. v,max =1 meter. In some implementations, the maximum lateral intrusion of a mobile vehicle can be the distance in the lateral direction from one end of the vehicle to the other and any bounding box, such as regarding Figure 9 The bounding box 905, etc., is described.

[0154] Rate 914 (represented as V) y This indicates the rate at which a hazardous object 906 enters lane 904. For example, if the hazardous object is identified as a parked vehicle, the rate 914 can be set to the nominal speed at which the vehicle door can open. If the hazardous object 906 is classified as a pedestrian along track 907 in front of vehicle 902, the pedestrian may be crossing lane 904 with a maximum intrusion of 1 meter per second. Therefore, the rate 914 can be set to V. y =1 m / s. In the case of a moving vehicle, the predicted lateral velocity of its movement based on its current trajectory can be determined as rate 914, as follows regarding... Figure 11 To describe in more detail.

[0155] Given the above, the potential intrusion 910 (denoted as Δy(t)) can be calculated using equation (1):

[0156] (1)

[0157] In other words, the possible intrusion 910 of object 906 entering lane 904 is determined by Δy. p (That is, the current width of the bounding box determined when calculating the potential intrusion into 910) plus (That is, given the speed at which the object moves / may move into lane 904, the extent to which the object or a part thereof can move into lane 904 between now and the time when the vehicle 902 arrives at the danger zone) and Δy v,max The minimum value in (i.e., the maximum lateral intrusion 912) is given.

[0158] Initial intrusion Δy p It can change over time. For example, when the vehicle 902 approaches the object 906, the sensor uncertainty decreases, and the size of the uncertainty bounding box can also be reduced.

[0159] As vehicle 902 approaches a hazardous object, the potential intrusion 910 changes over time. When vehicle 902 approaches the object, the time t at which vehicle 902 reaches hazardous object 906 approaches 0 (i.e., t→0); and the hazardous area folds down (i.e., decreases) to the bounding box of attitude or uncertainty associated with the hazardous object. In other words, as vehicle 902 approaches hazardous object 906, the size of the bounding box decreases as uncertainty decreases. Additionally, the amount (e.g., distance) of lateral movement from hazardous object 905 into lane 904 decreases.

[0160] Another example can be described where object 906 is classified as positive with V. y A pedestrian is moving across lane 904 at a speed of 1 m / s. Given the current speed of vehicle 902, it can be determined that vehicle 902 will reach hazard 906 in five seconds. As a result, when vehicle 902 reaches the pedestrian, the pedestrian is estimated to be able to travel up to 5 meters into lane 904. The pedestrian may essentially or substantially cross the entire lane 904. However, as vehicle 902 gets closer to hazard 906 (i.e., the pedestrian), the situation may evolve. For example, the pedestrian may not actually cross lane 904 that far.

[0161] Figure 9 The curve 920 illustrates the possible intrusion into 910 (Δy). vThe value of (t) can evolve over time. At the initial time, the potential intrusion 910 is equal to the lateral attitude uncertainty 908 (as indicated by the initial value 922). As the time to reach the hazard decreases, the hazard can move further into the lane (as indicated by the slope 924), until the maximum lateral intrusion 912 (as indicated by the maximum increase 926).

[0162] Refer again Figure 5 If the look-ahead distance has been fully checked for the hazardous object, method 500 proceeds to 508. Otherwise, method 500 returns to 502 to check for additional hazardous objects.

[0163] Look-ahead distance can vary with the speed of the vehicle. For example, depending on the vehicle's speed, the look-ahead distance can be adjusted to reduce calculation time while still ensuring sufficient time for the vehicle to stop or turn comfortably (e.g., safely) if a hazardous object will interfere with the vehicle's current trajectory. For instance, if a four-second look-ahead time is required, the appropriate look-ahead distance would be 48 meters if the vehicle is traveling at 12 meters per second. If the vehicle is traveling at 30 meters per second (e.g., when traveling on a highway), the appropriate look-ahead distance would be 120 meters.

[0164] At 508, method 500 determines whether any hazard zones on opposite sides of the vehicle overlap. Such hazard zones may overlap if they overlap in the longitudinal direction. That is, in the direction of travel of the vehicle, the hazard zones at least partially overlap in length along the direction of travel of the opposite sides of the vehicle. This is explained below from Figure 15 Let's begin further discussion.

[0165] If the hazard zone at point 508 does not overlap with another hazard zone on the opposite side of the vehicle, object avoidance layer 406 systematically processes detected objects starting at point 510 from any detected static hazard object. The drivable area is adjusted for static hazard objects. For example, and referring to... Figure 6 The drivable area of ​​the lane can be adjusted in the areas of boxes 616 and 618, so that the right hard boundary is boundary 614. The longitudinal constraints associated with each static hazardous object can be determined based on the time it takes for the vehicle to arrive at the danger zone. For example, and as mentioned above regarding... Figure 6 As described, the arrival time of vehicle 602 at container 616 is based on discrete-time velocity planning of the current trajectory. In implementation, the current trajectory may correspond to the coarse driving line 603 of vehicle 602.

[0166] Object avoidance layer 406 can adjust the current discrete-time velocity planning for static hazardous objects based on the corresponding constraints of the static hazardous objects. For example, and again refer to Figure 6In this implementation, the object avoidance layer 406 can use the discrete-time velocity planning module 428 to adjust the discrete-time velocity planning so that the vehicle 602 stops before or when it reaches the location 622 identified by the lateral constraints of the static hazard object. More specifically, the longitudinal constraints of the static hazard object at boxes 616, 618 (i.e., based on the arrival time of the current trajectory of the vehicle 602) can be used to determine longitudinal contingency measures that reduce the speed of the vehicle 602 in a comfortable and legal manner (e.g., target deceleration) to stop at location 622 (e.g., for passengers).

[0167] exist Figure 6 In another implementation, the gap 624 from the left boundary 604 to the danger zone boundary 614 is wide enough for the vehicle 602 to avoid the danger zone and thus avoid the static hazard. The object avoidance layer 406 can adjust the driving line, the current discrete-time speed plan, or both to allow the vehicle 602 to pass through the gap 624. For example, the longitudinal constraint of the static hazard can be used to determine a lateral emergency measure that comfortably and legally changes the position of the vehicle 602 to the left to pass through the static hazard via the gap 624. In this example, the longitudinal constraint can identify changes in the attitude (e.g., orientation) of the vehicle 602 at points leading to and passing the static hazard that do not require the application of a longitudinal emergency measure (e.g., a change in the speed of the vehicle 602) to the current trajectory. This represents the updated driving line. In other implementations described below, the longitudinal constraint can be used to determine a longitudinal emergency measure that modifies the speed of the vehicle 602.

[0168] Static hazards can be considered sequentially (e.g., from closest to farthest from vehicle 602). If a static hazard does not require a change in discrete-time velocity planning, the current discrete-time velocity planning (e.g., the original strategy velocity distribution or discrete-time velocity planning from previous iterations) remains unchanged. In some implementations, static hazards may generate more than one gap. In such implementations, each gap can be considered separately at object avoidance layer 406 along with other hazards to determine alternative driving lines and / or discrete-time velocity plans that can be considered at active trajectory optimization layer 408. Throughout this document, unless the context clearly indicates otherwise, references to discrete-time velocity planning can refer to a target driving line, one or more target velocities along the driving line, target acceleration, target deceleration, or any combination thereof.

[0169] Once the discrete-time velocity planning module 428 has adjusted the discrete-time velocity planning at 510 to account for static hazards, any dynamic hazards can then be considered at 510. The object avoidance layer 406 can adjust the current discrete-time velocity planning for dynamic hazards based on their corresponding constraints. If a dynamic hazard is not a constraint (e.g., its constraints do not interfere with the vehicle's current discrete-time velocity planning), it can be ignored by the object avoidance layer 406. Ideally, dynamic hazards should be considered sequentially, from the most recent to the furthest future times at which the controlled vehicle and the dynamic hazard can meet according to the current driving line and discrete-time velocity planning. This facilitates iterative processing, allowing changes made to address dynamic hazards at earlier locations to be considered, depending on whether changes are needed to address dynamic hazards at subsequent locations along the controlled vehicle's path.

[0170] For example, and as about Figure 7 and Figure 8 The description describes the prediction of the future locations of vehicles 702 and 802, respectively. Similarly, the prediction of the future locations of vehicles 704 and 804, respectively. In scenario 700, there are no static hazards requiring modification of the drivable area. In scenario 800, there is a static hazard, namely, a parked vehicle 806. However, in scenario 800, it is assumed that the presence of the parked vehicle 806 itself does not cause a change in the drivable area requiring a change in the trajectory of vehicle 802. Instead, the hazard zone of the parked vehicle 806 is considered to be related to the predicted trajectory of the dynamic hazard (i.e., vehicle 804).

[0171] The danger zone for each dynamic hazard (i.e., vehicles 704, 804) can be determined over time (e.g., at t, t+1, and t+2) using the maximum lateral intrusion of the dynamic hazard and the predicted rate of lateral movement of the dynamic hazard or a portion thereof within the lane. For example, the danger zone may include the dynamic hazard and any bounding box located at the position corresponding to the calculated intrusion, such as... Figure 9 The bounding box 905, etc. The intrusion of any one of the vehicles 704 and 804 at one or more future points in time can be calculated according to equation (1).

[0172] Similar to the static hazards described earlier, longitudinal constraints associated with each dynamic hazard can be determined at point 510 based on the time the vehicle arrives at the hazard area. For example, in Figure 7 In this context, the arrival time typically corresponds to the expected time when vehicle 702 arrives at location 706. Figure 8In this context, the arrival time is the expected time to reach the intersection between locations 812 and 818 along the corresponding trajectories of vehicles 802 and 804.

[0173] For static hazards (where the hazard zone remains constant over time), the hazard zone can be determined once over the entire look-ahead distance or time at 506 unless additional sensor information reveals a different size, or reveals that the static hazard is not an object at all, but rather identified as a detection error. In contrast, the hazard zone of a dynamic hazard can change over the entire look-ahead distance or time. The time to reach a dynamic hazard can depend on the size and shape of its hazard zone. Therefore, although in Figure 7 and Figure 8 The example is not explicitly described, but a hazard zone can be identified at point 506 at various time points predicting the future location of dynamically hazardous objects. See again... Figure 7 and Figure 8 As an example, the danger zone of a dynamic hazardous object, including (for example, defining) the target lateral constraint, could be in Figure 7 712 locations identified as danger zones and in Figure 8 The hazardous areas are identified at location 818. In some implementations, lateral constraints can be determined by combining lateral constraints from adjacent hazardous areas (e.g., averaging, weighted averaging, etc.).

[0174] Horizontal and vertical constraints are dynamic object constraints used within the dynamic object constraint module 432. The object avoidance layer 406 can adjust the current discrete-time velocity planning for dynamically hazardous objects based on the corresponding constraints of those objects. (Reference) Figure 10 This explains more clearly how to use dynamic object constraints to adjust the current discrete-time velocity programming. Figure 10 It is a trajectory planning diagram of a vehicle that is being controlled.

[0175] As previously mentioned, a vehicle may ignore potential hazards until they are identified as hazardous objects that could interfere with the vehicle's path or as false alarms (e.g., a sensor malfunction). Alternatively, the vehicle may treat each potential hazard as a hazardous object that could interfere with its path. In proactive risk mitigation, the vehicle's responsiveness is considered when planning an proactive trajectory that minimizes speed and / or lateral changes in response to potential hazards, while still allowing for a comfortable and safe response even if hazardous objects interfere with the vehicle's path (i.e., a response trajectory).

[0176] exist Figure 10 In scenario 1000, vehicle 1002 is in lane 1004. Object 1005 is on one side of lane 1004. (As per...)Figure 9 As described, the bounding box 1006 of the actual / real size of the extended object 1005 can be associated with object 1005. Although an indeterminate box (i.e., bounding box) is described herein, the shape of the indeterminate box can be any other shape. In this example, the hazardous object includes a vehicle on the side of a road with a door that can be opened.

[0177] In scenario 1000, the initial or nominal trajectory or path 1008 of the vehicle 1002 is determined as described above. In the absence of contextual information relating to the object (e.g., a door may be open), the nominal trajectory 1008 will be a natural way to pass over the hazardous object 1005 in many cases. For example, a driver would typically pass close to other similar constraints, such as bushes and barriers.

[0178] The nominal path 1008 does not consider potential hazards. In this example, the door 1010 of object 1005 could open at any point in time. Door 1010 is illustrated as a dashed line to indicate that door 1010 is not yet open but may be. Door 1010 may also open at a point in time when vehicle 1002 is too close to the hazardous object 1005. In this case, vehicle 1002 is too close and cannot be controlled to stop before colliding with door 1010; or vehicle 1002 may need to perform a violent emergency maneuver to avoid door 1010. A violent emergency maneuver could be a hard braking maneuver, a sharp turn away from door 1010, or a combination thereof. Such a violent (one or more) emergency maneuver may be at least undesirable (even if anticipated) by the occupants of vehicle 1002.

[0179] A naive path or trajectory 1012 can be planned for the vehicle 1002 to avoid emergency maneuvers. The naive trajectory 1012 will cause the vehicle 1002 to move significantly laterally to avoid the door 1010, regardless of whether the door 1010 is open. Controlling the vehicle 1002 according to the naive trajectory 1012 may also be undesirable to the occupants of the vehicle 1002.

[0180] Instead of the nominal trajectory 1008 or the naive trajectory 1012, an active trajectory 1014 can be planned (e.g., by the object avoidance layer 406 and the active trajectory optimization layer 408 of the active trajectory planner 308). This active trajectory 1014 includes lateral contingency measures in the form of slight lateral deviations from the nominal trajectory 1008, which are not as drastic as the deviations from the naive trajectory 1012. However, the active trajectory 1014 allows the vehicle 1002 to be controlled to perform reasonable emergency maneuvers if the door 1010 does indeed open. For example, if the door 1010 is open (or detected as open) when the vehicle 1002 arrives at location 1016, the vehicle 1002 can be controlled to perform reasonable emergency maneuvers to follow path 1018 (e.g., using reactive trajectory control 310).

[0181] Example 1050 illustrates how an active trajectory can be combined with longitudinal (e.g., speed) contingency measures in addition to or instead of lateral contingency measures. Example 1050 assumes a vehicle may be driving according to a nominal trajectory including a nominal speed plan 1052. The vehicle may be driving on a curved road where an obscured object 1054 exists. The vehicle can proceed according to the nominal speed plan 1052, ignoring the possibility of the object 1054's presence. If the vehicle proceeds in this way, the perception of the object 1054 may be too late to stop the vehicle. That is, the vehicle's speed 1056 reaching the object 1054 is not zero. To account for the possibility of the object's presence, a naive trajectory including a naive speed plan 1058 can be determined (e.g., planned, calculated, etc.) for the vehicle. However, regardless of whether the object 1054 is present or not, the naive trajectory significantly reduces the vehicle's speed.

[0182] An active trajectory, including longitudinal emergency measures, is represented by active speed planning 1060, enabling the vehicle to stop if object 1054 is detected. If the vehicle is controlled according to the active trajectory (e.g., active speed planning 1060), object 1054 can be sensed when the vehicle reaches the location represented by point 1062. An emergency trajectory (e.g., one or more emergency maneuvers) represented by emergency speed planning 1064 can be executed to reduce the vehicle's speed to zero (or follow speed) before the vehicle reaches the location of object 1054.

[0183] Return to reference Figure 5At 512, constraints are used to determine the active trajectory. Initially, the discrete-time velocity planning module 428 of the object avoidance layer 406 can iteratively calculate the target velocity and acceleration / deceleration of the vehicle based on constraints imposed by the static object constraint module 430 and the dynamic object constraint module 432. Planning can be performed for look-ahead time. In some implementations, the discrete-time velocity planning module 428 can select (i.e., select, determine, or otherwise set) a tracking mode for at least some settings in the static and / or dynamic objects. For example, the tracking mode can be one of “narrowing the gap,” “maintaining the gap,” “widening the gap,” “braking,” or “following.” Available tracking modes can include fewer, more, or other tracking modes. The tracking mode can be used to select the set of tuning parameters used by the discrete-time velocity planning module 428. Tuning parameters can include target acceleration, hysteresis parameters, and other tuning parameters.

[0184] An example is now provided to illustrate the operation of the discrete-time velocity planning module 428. If no longitudinal constraint associated with a hazardous object requires a change in trajectory, the discrete-time velocity planning module 428 determines that the vehicle can be operated based on a strategy velocity plan (as determined by the reference trajectory generation layer 404). In contrast, if the longitudinal constraint of a hazardous object requires a change in trajectory, longitudinal contingency measures can be included for an active trajectory. For example, if the longitudinal constraint indicates the tracking mode is "braking," the discrete-time velocity planning module 428 calculates the velocity distribution used to stop the vehicle. That is, for example, the current speed of the vehicle and the distance to the hazardous object are used to calculate the deceleration velocity distribution used to stop the vehicle.

[0185] In the example, the maneuverability parameters of the controlled vehicle can be used to determine any lateral emergency measures. Maneuverability parameters may include the vehicle's mass, load, or both. Additional parameters such as road topology and road conditions can be used to determine lateral or longitudinal emergency measures. Maneuverability parameters related to emergency maneuvers that the vehicle may have to perform can also be used as constraints when generating the active trajectory.

[0186] Active trajectory optimization layer 408 performs one or more optimization operations, such as constraint operations, to determine the optimal active trajectory of the controlled vehicle. Inputs may include possible time-velocity plans for calculating (e.g., determining, generating, etc.) the active trajectory of the vehicle, the vehicle's motion model (e.g., kinematic motion model), the coarse driving line and / or the center point of the box along the coarse driving line, and the adjusted drivable area (e.g., the left and right boundaries of the adjusted drivable area). Active trajectory planner 308 (e.g., active trajectory optimization module 408) can generate the active trajectory using, for example, constraint optimization operations. Optimization operations may be based on or may include a quadratic penalty function. Optimization operations may be based on or may include a logarithmic barrier function. For example, a quadratic penalty function may be used with soft constraints, while a logarithmic barrier function may be used with hard constraints.

[0187] Mobility parameters (related to the emergency maneuvers that the AV may have to perform in the event of a specific hazard) can be used as constraints when generating emergency response trajectories.

[0188] At point 514, method 500 controls the vehicle based on the active trajectory. In the event that a (e.g., dynamically) hazardous object actually intrudes into the path of the vehicle along the active trajectory, the reactive trajectory control module (such as...) Figure 3 The reaction trajectory control (310, etc.) can calculate the safety deviation relative to the active trajectory in response to the detection that causes the vehicle to perform a maneuver.

[0189] At point 514, method 500 controls the vehicle according to the active trajectory. Method 500 repeats and continues to do this unless the active trajectory needs to be changed.

[0190] exist Figure 7 and Figure 8 In the example, individual paths / trajectories of each dynamic hazard are used to determine the hazard zone for a forward-looking period. That is, the trajectory is predicted based on what the vehicle is expected to do. Figure 7 In the middle, the normal behavior instruction for vehicle 704 is to merge into the lane to the trajectory that overlaps with trajectory 703. Figure 8 In the context of normal behavior, vehicle 804 will decelerate and move closer to the lane to pass vehicle 806 before returning to the right edge from which it initially moved. However, due to human (e.g., driver) error, the appearance of previously undetected objects, etc., a dynamic hazard may travel along different paths at any given point in the look-ahead period. That is, multiple trajectories are possible for a given object with the same initial attitude, position, velocity, etc. Therefore, it may be desirable to predict the trajectory range of the dynamic hazard to determine its lateral and longitudinal constraints. This is about Figure 11 Method 1100 is described.

[0191] Method 1100 may be used with some or all of the dynamic hazardous objects detected at 502 of method 500, or may not be used with the dynamic hazardous objects detected at 502 of method 500.

[0192] At 1102, the dynamic properties of the dynamically hazardous object are determined. As previously described, these properties may include the attitude (e.g., heading) and velocity (i.e., rate) of the dynamically hazardous object. However, they may also include other dynamic properties detected while the object is moving, such as acceleration or deceleration.

[0193] At 1104, a dynamic model of a dynamic hazard is determined based on its classification. The classification of a dynamic hazard can be one of motorized vehicles, non-motorized vehicles, and pedestrians. In some implementations, the classification of a dynamic hazard includes the brand and model of the motorized vehicle. To determine the dynamic model, multiple dynamic models can be stored in memory, such as in world model 302, where each dynamic model is associated with a corresponding classification. The classification can then be used to select a dynamic model from the multiple dynamic models. Method 1100 may also include classifying the dynamic hazard into one or more available classifications.

[0194] A dynamic model can represent at least one of the following: maximum acceleration, minimum turning radius, maximum turning radius, maximum speed, and maximum deceleration of a dynamic hazardous object. When the dynamic hazardous object is identified as the brand and model of a motorized vehicle, the dynamic model can be brand and model specific.

[0195] At point 1106, a dynamic model and dynamic attributes are used to predict the trajectory range of a dynamically hazardous object. For example, the predicted trajectory range for a first hazardous object may include the predicted trajectory and its deviation relative to the predicted trajectory. For instance, the predicted trajectory may be the most likely trajectory given current dynamic attributes, while the range is determined by possible changes in the trajectory due to changes in the current dynamic attributes based on the dynamic model. The predicted trajectory range may vary over time.

[0196] The hazard zone identified at point 506, along with its associated lateral and longitudinal constraints, is associated with a trajectory within the predicted trajectory range. More specifically, at point 1108, a hazard zone for a dynamic hazard object can be determined by selecting a hazard zone from the trajectory range. In some implementations, a trajectory from the trajectory range is selected based on, for example, the presence of other hazard objects, conditions under which the dynamic hazard object is traveling (e.g., weather, road type, etc.), or other conditions that make one trajectory more likely than another. A hazard zone over time can then be determined from the trajectory and selected for use in method 500. In some implementations, multiple hazard zones can be identified, each associated with a corresponding trajectory within the predicted trajectory range. A hazard zone can then be selected from the multiple hazard zones. For example, a hazard zone could be any hazard zone representing the largest lateral intrusion into the direction of travel of the vehicle.

[0197] You can refer to this. Figure 12 To demonstrate method 1100. Figure 12 In this scenario, the vehicle 1202 to be controlled is traveling along a lane, and the dynamic hazard is an oncoming vehicle 1204. Based on driving conventions, it is predicted that vehicle 1204 will travel along trajectory 1214 during the look-ahead period. The dynamic model specifies that, given the conditions of vehicle 1204 at t=0, vehicle 1204 can begin to accelerate and suddenly turn into the lane of vehicle 1202 after t=t1, resulting in trajectory 1224. According to equation (1) and the dynamic model of vehicle 1204, the lateral intrusion into the lane at t=t3 is represented by a cut 1230 (e.g., lateral and longitudinal constraints of the hazard zone). In this implementation, the hard left boundary of the drivable area is represented by the line location at t=0 (also called the road divider). The active trajectory 1212 of vehicle 1202 is determined taking into account the hazard zone to perform the minimum active lateral maneuvering action required to maintain the responsiveness of vehicle 1202. In other words, the active trajectory 1212 is defined to include lateral emergency measures, such that if vehicle 1204 begins to accelerate after t=t1 and suddenly turns into the lane of vehicle 1202, vehicle 1202 can perform emergency maneuvers (and follow the reaction trajectory 1222).

[0198] As mentioned above Figure 9 As described, the danger zone (e.g., longitudinal and lateral constraints) of a dynamically hazardous object typically decreases over time as the danger location becomes more defined at the intersection (here, t=t3). This can be achieved through... Figure 12is seen in the middle, which shows the cut 1262 determined using Equation (1) at t = t3, assuming that the vehicle 1204 maintains its trajectory 1214 parallel to the lane. However, if the vehicle 1204 deviates from its nominal behavior (e.g., the vehicle 1204 accelerates longitudinally and laterally), the danger zone may increase over time. For example, at t < t3, the cut 1264 is determined, where the vehicle 1204 follows the trajectory 1224.

[0199] The consideration of different trajectories of the vehicle 1204 can modify the active trajectory of the vehicle 1202 over time. For example, as Figure 12 shown at the bottom, the minimum active lateral maneuver to maintain the responsiveness of the vehicle 1202 (e.g., the lateral distance from the road median) is plotted over time. The curve 1250 represents the case where the vehicle 1204 follows the trajectory 1214. The cut 1260 corresponds to the lateral distance D1. The curve 1254 represents the case where the vehicle 1204 follows the trajectory 1224. The cut 1264 requires a larger value for the minimum active lateral maneuver to maintain the responsiveness of the vehicle 1202. In addition, the longitudinal intersection shifts closer (t < t3), as indicated by the arrow. The curve 1252 represents the trajectory of the vehicle 1204 that starts accelerating and suddenly turns into the lane after t = t1 but stops accelerating and suddenly turning after t = t2. The longitudinal intersection shifts similarly to the curve 1254, but the minimum active lateral maneuver to maintain the responsiveness of the vehicle 1202 is a smaller value than the value associated with the curve 1254.

[0200] Figure 13A and Figure 13B are diagrams showing the predicted trajectory ranges for parallel dynamic hazard objects. Parallel dynamic hazard objects are objects that typically travel in the same direction as the vehicle being controlled, rather than oncoming dynamic hazard objects. These diagrams illustrate how a vehicle can anticipate and prepare for potential lane merges based on the predicted ranges of adjacent vehicles. In scenario 1500, the vehicle 1502 being controlled is traveling in a lane of a two-lane road. According to Figure 13A the active trajectory, the vehicle 1502 is implementing a longitudinal contingency measure to follow the vehicle 1504. Based on the posture of the adjacent vehicle 1506, the predicted trajectory range 1508A can be considered to determine the danger zone, as described with respect to Figure 12 above. The opportunity for a lane merge is relatively low. In Figure 13B scenario 1510, the posture of the adjacent vehicle 1506 has changed, and the predicted trajectory range has also changed. The opportunity for a lane merge has increased, and the active trajectory includes a longitudinal contingency measure that gradually increases the deceleration of the vehicle 1502 as the likelihood of a lane merge increases.

[0201] Figure 14 This is another diagram illustrating the predicted trajectory range for a parallel dynamic hazard. This scenario 1600 shows that the predicted trajectory range of a hazard can be used to consider the visibility of the controlled vehicle 1602 from the perspective of other road users (i.e., the hazard). In this scenario 1600, vehicle 1602 is traveling in the right lane of a two-lane road. The dynamic hazard is an adjacent vehicle 1604 traveling in the left lane. Given the same attitude of the adjacent vehicle 1604, a first trajectory range 1608A of the adjacent vehicle 1604 can be considered when determining the active trajectory of vehicle 1602. However, when vehicle 1602 is traveling in the blind spot 1606 of the adjacent vehicle 1604, a second trajectory range further including trajectory 1608B may be considered when determining the active trajectory of vehicle 1602. That is, the possible trajectory range of the adjacent vehicle 1604 increases as vehicle 1602 is in the driver's blind spot 1606. Based on... Figure 12 The classification of adjacent vehicles 1604 describes the location of blind spots. The range of the trajectory is increased to consider visibility confirmation from the perspective of a dynamically hazardous object, allowing the dynamically hazardous object to take different actions when it is aware of the presence of a controlled vehicle, compared to when it is unaware of the vehicle's existence.

[0202] The above discussion explicitly addresses situations where hazardous objects appear sequentially in the path of a controlled vehicle, or where one or more hazardous objects are predicted to exist simultaneously on the left or right side of the vehicle's path. However, for at least a portion of the driving line of a controlled vehicle, hazardous objects can be predicted to exist on both sides of the vehicle simultaneously. That is, the danger zones of hazardous objects can overlap in the longitudinal direction. The aforementioned techniques can be used in this case. However, in many situations, the aforementioned techniques will prevent the vehicle from moving forward at all. Therefore, and referring back to the reference... Figure 5 Method 500 can also consider overlapping danger zones separately at 508.

[0203] In other words, there may be situations where: (e.g., for a first hazardous object) a first hazard zone includes a first target lateral constraint that extends beyond the left lane boundary and into the lane, allowing the vehicle to avoid the first hazardous object without speed constraints; and (e.g., for a second hazardous object) a second hazard zone includes a second target lateral constraint that extends beyond the right lane boundary and into the lane, allowing the vehicle to avoid the second hazardous object without speed constraints. In some such cases, the previously described analysis will show that if these two hazard zones are cut off from the drivable area, the vehicle cannot pass at all. Examples include narrow streets (e.g., residential streets), streets with multiple hazardous objects arranged parallel to one or both sides of the vehicle that narrow an otherwise wide street (e.g., urban streets), etc. To address these and other situations with overlapping hazard zones, a double-sided buffer zone allocation can be used.

[0204] That is, if there are overlapping danger zones at 508, method 500 assigns a lateral buffer to the corresponding lateral constraint of the danger zone at 516. Specifically, for each discretized time and location where the first and second danger zones overlap in the longitudinal direction, the lateral buffer is assigned to a first assigned lateral constraint for the first danger zone and a second assigned lateral constraint for the second danger zone. The lateral buffer is assigned using the first and second target lateral constraints as input. This assignment maximizes the assigned (e.g., assigned) lateral constraints while maintaining at least a minimum passage gap. Desiredly, the assignment minimizes the difference in the ratio of lateral constraints between the two sides. Regarding... Figures 17-23 A technique for allocating horizontal buffers is described.

[0205] Figure 15 The assumptions made in the allocation at 516 are shown. Figure 15 In this context, vehicle 1700 is traveling within a lane defined by left lane boundary 1702 and right lane boundary 1703. As initially described, lane boundaries may not be marked boundaries. Instead, they may be virtual boundaries based on the defined width of the lane. Left drivable area boundary 1712 and right drivable area boundary 1714 generally correspond to those defined by... Figure 6 The default drivable area is defined by the left boundary 604 and the right boundary 606 in the description. For hazardous object A, the hazardous area 1722 defined at 506 has a target lateral constraint. For hazardous object B, the hazardous area 1724 defined at 506 also has a target lateral constraint. Figure 15As can be seen, there are one or more hazardous objects overlapping in the direction of travel of the vehicle 1700 on the opposite side of the vehicle 1700. The target lateral constraint for hazardous object A in hazardous area 1722 extends in the lane beyond both the left lane boundary 1702 and the left drivable area boundary 1712. The target lateral constraint for hazardous object B in hazardous area 1724 extends in the lane beyond both the right lane boundary 1704 and the right drivable area boundary 1714.

[0206] The bilateral buffer allocation described herein uses this information to allocate lateral buffers to a first allocated lateral constraint for a first hazardous object A and a second allocated lateral constraint for a second hazardous object B (e.g., to the area between them). Figure 16 In this context, the first assigned lateral constraint is associated with the updated first danger zone 1732, and the second assigned lateral constraint is associated with the updated second danger zone 1734.

[0207] Figure 16 Examples of variables used in a double-sided buffer allocation are shown. Figure 16 middle, It is the rightmost boundary of dangerous object A. It is the boundary of the left-hand driving area. It is the left lane boundary. It is a lateral constraint on the objective (e.g., expectation, maximum) of the hazardous object A, and This refers to the lateral constraints on the allocation (e.g., optimal, assignment) of the hazardous object A. Although for clarity... Figure 16 Not shown in the diagram, but a similar variable is associated with hazardous object B. That is, It is the leftmost boundary of dangerous object B. It is the right-hand drive zone boundary. It is the right lane boundary. It is a lateral constraint on the objective (e.g., expectation, maximum) of the hazardous object B, and It is a lateral constraint on the allocation (e.g., optimal, assignment) of dangerous object B.

[0208] In this example, the variables are measured on a descending scale from left to right. That is, the lowest value is the rightmost boundary of hazard B, and the highest value is the leftmost boundary of hazard A. Other arrangements are possible, such as defining variables as ascending from left to right. Variables can be defined in feet, meters, etc. Assuming the scale descends from left to right, the following equation (e.g., formula ) applies:

[0209] (2)

[0210] in It is the width of the lane. (Variable) It is the minimum clearance.

[0211] The following differences can be determined:

[0212] (3)

[0213] (4)

[0214] (5)

[0215] (6)

[0216] (7)

[0217] (8)

[0218] in:

[0219] It is the difference between the rightmost boundary of hazardous object A and the left lateral constraint of the target. It is the difference between the rightmost boundary of hazardous object A and the boundary of the left lane. It is the difference between the left lane boundary and the assigned left (or first) lateral constraint. It is the difference between the leftmost boundary of the hazardous object B and the right lateral constraint of the target. It is the difference between the leftmost boundary of hazardous object B and the right lane boundary. It is the difference between the right lane boundary and the assigned right lateral constraint.

[0220] Although the left lane boundary 1702 and the left driving area boundary 1712, and the right lane boundary 1704 and the right driving area boundary 1714 are in Figure 17 and Figure 18 The meaning is the same, but it is not necessary, as mentioned above. Figure 6 They are shown separately for easier identification. Figure 16 The variables used for allocation are shown in the diagram. For similar reasons, the first and second allocated lateral constraints are shown as being spaced apart from the first lateral constraint, the left lane boundary 1702, and the left drivable area boundary 1712, respectively, and from the right lateral constraint, the right lane boundary 1704, and the right drivable area boundary 1714. However, the first and second allocated lateral constraints have a range of possible values. For example, assume:

[0221] (9)

[0222] (10)

[0223] , and (11)

[0224] (12)

[0225] Then the left lane boundary 1702 and the first allocated lateral constraint ( The difference between them is within the following range:

[0226] (13)

[0227] Furthermore, the right lane boundary 1704 and the second allocated lateral constraint ( The difference between them is within the following range:

[0228] (14)

[0229] As initially mentioned, the goal is to maximize the allocation of lateral buffers to each hazardous object while maintaining minimal passage gaps. The inequality constraint can be expressed as:

[0230] (15)

[0231] Using this constraint, the minimum clearance can be selected. The available lateral buffer is partitioned using the value of the assigned lateral constraint and one of the assigned lateral constraints, and the other assigned lateral constraint is solved. For example, the minimum passage gap could be the width of vehicle 1700 plus the bounding box. In some implementations, the assigned lateral constraint can be selected based on the status of the hazardous object. For example, the assigned lateral constraint can be set to not exceed the target lateral constraint (where the hazardous object is the most recently parked vehicle), can be set to be less than the target lateral constraint (where the hazardous object is a static vehicle that has been observed over multiple periods), or can be set to be greater than the target lateral constraint (where the hazardous object is a dynamic hazardous object). Solving the bilateral buffer allocation can be an iterative process.

[0232] According to another implementation described in this paper, the partitioning of available lateral space (e.g., allocation, assignment, etc.) can be achieved by minimizing the difference between the ratios of the allocated lateral constraints on both sides. To simplify the equations, several ratios are first defined as follows:

[0233] (16)

[0234] (17)

[0235] , and (18)

[0236] (19)

[0237] in:

[0238] And (20)

[0239] .(twenty one)

[0240] Therefore, the problem is to maximize the sum of the ratios of the differences between the innermost boundary of the hazardous object and the lane boundary, and the differences between the innermost boundary of the hazardous object and the target lateral constraint, and the ratios of the differences between the lane boundary and the assigned lateral constraint, and the differences between the innermost boundary of the hazardous object and the target lateral constraint, while satisfying the inequality constraints of equation (15). More specifically, the problem can be defined as follows:

[0241] (twenty two)

[0242] This satisfies equation (15), where

[0243] (twenty three)

[0244] right and The solution for the optimal value is provided by assigning the first lateral constraint as follows:

[0245] (twenty four)

[0246] And the assigned second lateral constraint is provided as follows:

[0247] (25)

[0248] Figures 17-20 These are diagrams illustrating four different scenarios for obtaining different optimal solutions to the two-sided buffer allocation. The left side of each diagram shows some inputs to the allocation equations (15), (22), and (23), including the first objective lateral constraint 1742 and the second objective lateral constraint 1744 (shown by dashed lines). The right side of each diagram shows the use of... and The outputs of the obtained solution are the distribution equations (24) and (25), namely the first lateral constraint 1752 and the second lateral constraint 1754 after distribution.

[0249] Figure 17 The diagram illustrates the following scenario, where the maximum range of each target lateral constraint in the first target lateral constraint 1742 and the second target lateral constraint 1744 can be satisfied while maintaining the minimum clearance. ,Right now In this case, for example from equations (18) and (19) and The solution is:

[0250] And (26)

[0251] (27)

[0252] Therefore, the drivable area of ​​the lane can be reduced as shown by the arrow, such that the assigned first lateral constraint 1752 can be equal to the first target lateral constraint 1742 (i.e., And the second lateral constraint 1754, after being assigned, can be equal to the second target lateral constraint 1744 (i.e., The controlled vehicle 1700 can easily pass over these two dangerous objects.

[0253] for Figures 18-20 The difference between the first target lateral constraint 1742 and the second target lateral constraint 1744 in the other three cases shown (i.e., ).in other words:

[0254] (28)

[0255] exist Figure 18 In the middle, danger zone A is further away from the lane than danger zone B. Figure 19 In the middle, danger zone A is closer to the lane than danger zone B. Finally, in... Figure 20 In the middle, danger zone A and danger zone B are each compared to Figure 17 The situation shown is closer to the lane.

[0256] Defining new variables is useful in these situations.

[0257] (29)

[0258] As mentioned above, and Each has a value that is at least equal to 0 and less than 1. Each represents the difference between the innermost boundary of the hazardous object and the lane boundary (i.e., The difference between the innermost boundary of the hazardous object and the lateral constraint of the target (i.e., The ratio of ) to. Therefore, The values ​​have the same range .

[0259] exist Figure 18 In the scenario shown (e.g., where the right target lateral constraint 1744 extends further into the lane than the left target lateral constraint 1742), the combined equations (28) and (29) produce The updated relationships are as follows, where :

[0260] (30)

[0261] For example, from equations (18) and (19) and The solution is:

[0262] And (31)

[0263] (32)

[0264] Therefore, the drivable area of ​​the lane can be reduced as indicated by the arrow, resulting in a smaller lateral buffer zone allocated to the first lateral constraint 1752 compared to the lateral buffer zone allocated to the second lateral constraint 1754. Although the controlled vehicle 1700 can pass two hazardous objects (e.g., because of the minimum clearance), However, longitudinal emergency measures can be used to slow down vehicle 1700 because the target lateral constraints 1742 and 1744 are not met.

[0265] Figure 19 The situation in the middle is similar to Figure 18 The situation shown is different except that the left target lateral constraint 1742 extends further into the lane than the right target lateral constraint 1744. Combining equations (28) and (29) produces the result represented by equation (30). The updated relationship, in which .

[0266] For example, from equations (18) and (19) and The solution is:

[0267] And (33)

[0268] (34)

[0269] Therefore, the drivable area of ​​the lane can be reduced as indicated by the arrow, resulting in a smaller lateral buffer zone allocated to the second lateral constraint 1754 compared to the lateral buffer zone allocated to the first lateral constraint 1752. Although the controlled vehicle 1700 can pass over two hazardous objects (e.g., because of the minimum clearance), However, longitudinal emergency measures can be used to slow down vehicle 1700 because the target lateral constraints 1742 and 1744 are not met.

[0270] exist Figure 20 middle, It can be expressed by an inequality equation different from equation (30), as follows:

[0271] (35)

[0272] Parity can be implemented between two ratios as follows, so that... .therefore, The solution is:

[0273] (36)

[0274] In order to solve Substituting equation (36) into the inequality constraints of equation (15):

[0275] (37)

[0276] (38)

[0277] (39)

[0278] (40)

[0279] (41)

[0280] According to equations (36) and (41), the drivable area of ​​the lane can be reduced as indicated by the arrows, such that equal portions of the lateral buffer zone are allocated to the second lateral constraint 1754 and the first lateral constraint 1752. Although the controlled vehicle 1700 can pass over two hazardous objects (e.g., because of the minimum clearance), However, longitudinal emergency measures can be used to slow down vehicle 1700 because the target lateral constraints 1742 and 1744 are not met.

[0281] In other words, and again refer to Figure 5 In method 500, after allocating the lateral buffer at 516, the corresponding longitudinal constraint can be determined at 518 in a manner similar to that described with respect to 510. Thereafter, as previously described, the allocated lateral constraint and the corresponding longitudinal constraint can be used in the process of determining the active trajectory at 512.

[0282] Figure 21This is a diagram illustrating an example of a bilateral buffer allocation application according to an implementation of this disclosure. In this example, a controlled vehicle 2102 is traveling in a lane, where hazardous objects are in the form of a parked vehicle 2104 on the left side of the lane and a parked vehicle 2106 on the right side of the lane. There are also hazardous objects in the form of an opposing vehicle 2108. The parked vehicle 2104 does not affect the trajectory of vehicle 2102. At time t1, the lateral constraint imposed by one of the parked vehicles 2106 causes the passage gap to be at least equal to... For example, lateral constraints can be determined to prevent vehicle 2102 from contacting a door (if open). Vehicle 2102 can proceed without longitudinal emergency measures. In contrast, at time t2, opposing vehicles 2108 and 2102 intersect paths. Target lateral constraints 2112 for hazardous objects (where A and B represent the two parked vehicles 2106, and C represents the opposing vehicle 2108) can be used as input to the allocation of bilateral buffer zones to determine the allocated lateral constraints 2114. The active trajectory of vehicle 2102 includes lateral emergency measures that move vehicle 2102 closer to the parked vehicles 2106, because specific hazards (i.e., opposing vehicles 2108) can take precedence over less likely or nonspecific hazards (i.e., the door of the parked vehicle). Figure 21 In the middle, the gap is at least equal to However, longitudinal contingency measures (i.e., a reduction in speed) are desirable because the target lateral constraint 2112 is not satisfied (e.g., insufficient lateral buffer).

[0283] Figure 22This is a diagram illustrating another example of bilateral buffer allocation applied according to an implementation of this disclosure. A controlled vehicle 2202 is traveling in a lane, where the hazardous object is a parked vehicle 2204 on the left side of the lane. There is also a parallel dynamic hazardous object in the form of a cyclist 2206 (e.g., a dynamic hazardous object traveling in the same direction as vehicle 2202). At time t1, lateral constraints are imposed by the parked vehicle 2204 and the cyclist 2206. For example, a target lateral constraint 2212 can be determined for the parked vehicle 2204 to prevent the vehicle 2202 from contacting a door (if open). A target lateral constraint 2214 for the cyclist 2206 can be determined as previously described with respect to dynamic hazardous objects. Target lateral constraints 2212 (where B and C represent parked vehicle 2206) and 2214 (where A represents cyclist 2206) can be used as inputs to the allocation of bilateral buffer zones to determine the allocated lateral constraints (as shown by solid lines). The active trajectory of vehicle 2202 may include lateral emergency measures that move vehicle 2202 closer to parked vehicle 2204, also because specific hazards (i.e., cyclist 2206) may take precedence over less likely or nonspecific hazards (i.e., parked doors). Longitudinal emergency measures are also desirable because target lateral constraints 2212, 2214 are not satisfied (e.g., insufficient lateral buffer). However, in this example, the classification of dynamic hazardous objects (i.e., bicycles) may be used to include longitudinal emergency measures that follow cyclist 2206, rather than reducing their speed to pass through at least equal to The cyclist 2206 slowly passes through the gap. Thereafter, at time t2, the target lateral constraint 2214 can be cut out from the drivable area, and the gap remains at least equal to... Therefore, the vehicle 2202 can follow an active trajectory that includes lateral emergency measures to move further away from the cyclist 2206 and longitudinal emergency measures to accelerate the vehicle 2202 past the cyclist 2206.

[0284] Figure 23 This is a block diagram of a system 2300 for using a virtual vehicle. System 2300 includes a sensor module 2302, a virtual vehicle generation module 2304, a prediction module 2308, and one or more other modules 2318 that can use the generated virtual vehicle. The modules of system 2300 can be stored as executable instructions in a storage container such as... Figure 1 The executable instructions can be generated by a processor (such as memory 122, etc.) in memory. Figure 1 The processor 120, etc., executes the instructions. At least some of the executable instructions can be executed, wholly or partially, by hardware components associated with the computer. System 2300 may be included in...Figure 1 100 vehicles Figure 2 The vehicle 202 shown is included by means of the previously described remote assistance support, or by a combination thereof.

[0285] Sensor module 2302 may include or perform instructions for identifying a visible area at 2308 and identifying the maximum sensing range at 2310. Virtual vehicle generation module 2304 may include or perform instructions for searching for virtual vehicle locations along the vehicle's path at 2312, (optionally) adjusting the position of one or more virtual vehicle locations at 2314, and generating the adjusted virtual vehicle as a world model object at 2316. The position of one or more virtual vehicle locations may be adjusted due to factors such as sensing, tracking, and / or prediction delays. Generating the adjusted virtual vehicle as a world model object includes adding representative objects of the virtual vehicle. Figure 3 World Model 302. Metadata can be associated with virtual vehicles, indicating that they are virtual rather than actual (e.g., sensed) vehicles. Metadata can be used to set lateral and / or velocity constraints for virtual vehicles, which are at least slightly different from the lateral and / or velocity constraints of actual sensed vehicles.

[0286] When a virtual vehicle is added to world model 302, the virtual vehicle can undergo any of the object descriptions described above regarding world model 302. Therefore, prediction module 2308 (which may be world model 302) can generate predictions (e.g., assumptions) for the virtual vehicle. In the example, the prediction associated with the virtual vehicle could simply be a prediction that obstructs (e.g., intersects with) the vehicle's path. Additionally, any other module 2306 can also use the virtual vehicle. Other modules 2306 may include an active risk mitigation module 2320 and an optimized velocity planner 2322, which may be, include, or implement object avoidance layer 406, active trajectory optimization layer 408, or a combination thereof.

[0287] Figure 24 Example 2400 illustrates the identification of virtual vehicle locations. Different types of virtual vehicles can be searched, including leading virtual vehicles, virtual opposing vehicles, and virtual cross-vehicle vehicles. The type of virtual vehicle to be searched (e.g., identified) can depend on road geometry (e.g., road structure), which can be obtained from map data (such as...) Figure 4 The HD map data (e.g., 410) was obtained.

[0288] Scenario 2410 illustrates the identification of a virtual vehicle acting as a leading vehicle. Scenario 2410 includes a vehicle 2412 traversing a road comprising a first lane 2414 and an oncoming lane 2416. Vehicle 2412 is traveling along a planned trajectory 2418. Therefore, vehicle 2412 is planned to turn left at an intersection (unmarked). The search for the leading virtual vehicle can begin at discrete identification locations along the trajectory of vehicle 2412. Thus, the search begins at locations 2420, 2422, etc., until the last location observable by the sensors of vehicle 2412 along trajectory 2418. The left boundary 2426 depicts (e.g., indicates) the area observable (e.g., visible) by the sensors of vehicle 2412 along trajectory 2418. Therefore, location 2424 is the last observable location by the sensors of vehicle 2412.

[0289] It can be assumed that the leading virtual vehicle 2428 exists at a location immediately outside the visible area. In the example, the location of the leading virtual vehicle 2428 could be the next discrete location identified (e.g., calculated) after location 2424 by vehicle 2412. It can be assumed that the leading virtual vehicle 2428 is static. That is, a worst-case scenario (i.e., the leading virtual vehicle 2428 is stationary) can be assumed relative to the leading virtual vehicle 2428. The location of the leading virtual vehicle 2428 does not need to be adjusted. The location of the leading virtual vehicle 2428 (immediately outside the observable area) can be considered the most conservative estimate of its location.

[0290] Scenario 2430 illustrates the identification of a virtual vehicle as a reciprocating vehicle. In scenario 2430, vehicle 2412 is still traveling along the planned trajectory 2418. Figure 23 System 2300 can identify, based on map data, that a vehicle may be entering oncoming lane 2416 from west-east lane 2432 and east-west lane 2434. System 2300 can search backward along discrete points of the potential path of the oncoming vehicle and along oncoming lane 2416. System 2300 can identify a first potential trajectory 2433 and a second potential trajectory 2435.

[0291] System 2300 can search backwards from locations 2436 and 2438 until the rightmost boundary 2467 is identified as the leftmost observable location along the east-west lane 2434. System 2300 can identify the location of the first opposing virtual vehicle 2440, which is exactly outside the observable area. Similarly, system 2300 can search backwards from locations 2436 and 2438 until the left boundary 2426 is identified as the rightmost observable location along the west-east lane 2432. System 2300 can identify the location of the second opposing virtual vehicle 2442, which is exactly outside the observable area.

[0292] The location of the identified oncoming vehicle can be adjusted to account for processing latency. Processing latency can be associated with perception, tracking, and / or prediction latency. Just as humans may need some time (e.g., a very short interval) to process a vehicle that has just suddenly appeared in their field of vision, automated systems may also need time to process newly sensed data. For example, and as described above, sensor (e.g., LiDAR) data can be converted into a point cloud, which is further processed to identify (e.g., classify) objects (such as identifying them as cars, trucks, walls, etc.), and then further processing time is required regarding the objects (e.g., to identify the object's velocity or attitude, the object's predicted trajectory, etc.). By the time this processing is performed, the location of the initially observed world object may have changed. Therefore, a small latency may occur before the object (e.g., the actually detected object) is incorporated into the world model. Thus, adjustments to the location of the identified oncoming virtual vehicle can be based on nominal (e.g., empirically derived) processing time.

[0293] Therefore, the location of the opposing virtual vehicle can be pushed a little further along its possible path to account for processing delays. Thus, system 2300 operates under the assumption that opposing vehicles may exist just outside the visible range, but the predicted virtual vehicles are slightly advanced to account for potential delays. Therefore, a first adjusted opposing virtual vehicle 2444 and a second adjusted opposing virtual vehicle 2446, corresponding to the first opposing virtual vehicle 2440 and the second opposing virtual vehicle 2442 respectively, are added to the world model.

[0294] Scenario 2460 illustrates the identification of a virtual vehicle as intersecting with another vehicle. In scenario 2460, vehicle 2412 is still traveling along the planned trajectory 2418. Figure 23System 2300 can identify, based on map data, that a vehicle may be intersecting lanes at locations such as intersections or T-junctions. In scenario 2460, two west-east lanes (i.e., west-east lanes 2432 and 2462) and two east-west lanes (i.e., east-west lanes 2434 and 2464) are identified. System 2300 can search for the location of intersecting virtual vehicles from each lane in the intersecting lanes. That is, the search can begin along each intersecting lane from a point directly in front of vehicle 2412. An intersecting vehicle is a vehicle whose path may intersect with the path of vehicle 2412. Therefore, the possibility that an intersecting virtual vehicle may unexpectedly materialize (e.g., become observable) is anticipated.

[0295] Therefore, as shown in the figure, system 2300 can identify the corresponding locations of the cross-virtual vehicles 2466, 2468, 2470, and 2472. As mentioned above, the locations of the cross-virtual vehicles 2466, 2468, 2470, and 2472 can be exactly outside the observable area (i.e., outside the left boundary 2426 and outside the rightmost boundary 2467). Also as mentioned above, in this example, the locations of the cross-virtual vehicles 2466, 2468, 2470, and 2472 can be adjusted to account for processing latency. Therefore, and for illustration, cross-virtual vehicles 2466 and 2472 can be adjusted to the locations of the adjusted cross-virtual vehicles 2467 and 2476, respectively.

[0296] To reiterate, a virtual vehicle can be instantiated (e.g., identified) at a virtual vehicle location within an occluded area; and the adjusted virtual vehicle can be further fed "along the road" to the sensor fusion module at the adjusted virtual vehicle location to account for processing delays (e.g., perception, tracking, and / or prediction delays).

[0297] Figure 25A This is a visualization of the world model of vehicle 2502, 2500. Vehicle 2502 is traveling along planned trajectory 2504, which can be... Figure 24 The planned trajectory 2418. Visualization 2500 illustrates the range 2506 of the area observable (e.g., visible) by the sensors of vehicle 2502. The world model of vehicle 2502 includes: a virtual lead vehicle 2508, which can be... Figure 24 The preceding virtual vehicle 2428; and the adjusted opposing virtual vehicle 2510, which may be... Figure 24The second adjusted opposing virtual vehicle 2446. Predicted trajectory 2512 indicates the predicted trajectory of the adjusted opposing virtual vehicle 2510. Visualization 2500 also illustrates other actual detected objects (such as objects 2514, 2516, etc.) included in the world model of vehicle 2502. The planned trajectory 2504 is planned by taking at least virtual leading vehicle 2508 and opposing virtual vehicle 2510 into account.

[0298] Figure 25B This is another visualization 2550 of the world model of vehicle 2552. Visualization 2550 illustrates the range 2554 of the area observable (e.g., visible) by the sensors of vehicle 2552. The road geometry corresponding to visualization 2550 results in two west-east intersecting lanes and one east-west intersecting lane (in... Figure 25B (Not specifically marked in the text). Therefore... Figure 23 System 2300 has generated correspondingly modified cross-virtual vehicles 2556, 2558, and 2460. Visualization 2550 also illustrates that other actual detected objects (such as object 2462) are also included in the world model of vehicle 2552.

[0299] Figure 26 This is a block diagram of a system 2600 for using virtual oncoming vehicle hazards. System 2600 can optimize path planning around narrow corners. If occlusion is identified in the oncoming lane and / or based on the maximum perception range, system 2600 can create a virtual vehicle. As described above, system 2600 can be used to estimate passing points relative to the oncoming virtual vehicle. As described above, the trajectory of the vehicle can be replanned with new constraints in response to the oncoming (in this case, virtual) vehicle. As described herein, the oncoming vehicle hazard is a detected vehicle traveling in the oncoming lane. The predicted trajectory of the oncoming vehicle can be used to modify the minimum risk maneuver zone. Lateral and / or speed constraints can be calculated to minimize the risk when passing the oncoming vehicle.

[0300] System 2600 includes world model module 2602 (which can be Figure 3 The world model 302), active risk mitigation module 2604, and trajectory planner 2606 perform the functions described above. The modules of system 2600 can be stored as executable instructions in, for example... Figure 1 The executable instructions can be generated by a processor (such as memory 122, etc.) in memory. Figure 1 The processor 120, etc., executes the instructions. At least some of the executable instructions can be executed, wholly or partially, by hardware components associated with the computer. System 2600 may be included in... Figure 1 100 vehiclesFigure 2 The vehicle 202 shown is included by means of the previously described remote assistance support, or by a combination thereof.

[0301] As described above, at 2608, the adjusted virtual opposing vehicle can be added to the world model (e.g., maintained by or against the vehicle). At 2610, the adjusted opposing virtual vehicle can be classified (e.g., identified) as a hazard. At 2612, the passing points of the vehicle are estimated. The passing points can be estimated based on the prediction of the trajectory of the adjusted opposing virtual vehicle. At 2614, constraints are determined. As described above, constraints can include lateral constraints, velocity constraints, or both. At 2616, a new trajectory for the vehicle is planned based on the constraints.

[0302] Figure 27 Scenario 2700 illustrates the use of a opposing virtual vehicle as a hazardous object. Scenario 2700 includes a vehicle 2702. Scenario 2700 illustrates improvements in path planning during autonomous driving around narrow corners, allowing path planning to be more "human-like." Scenario 2700 describes mitigation measures for the unexpected appearance of vehicles, such as around sharp corners or turns.

[0303] Vehicle 2702 is crossing the oncoming lane (in Figure 27 (Not specifically marked in the text) Scene 2700 illustrates occlusion 2704 caused by an obstruction (e.g., a stopped vehicle 2706). The obstruction limits the visible area of ​​the vehicle 2702's sensors. Therefore, and as regarding Figure 24 As described in scenario 2430, the location of the opposing virtual vehicle 2708 is identified. Additionally, an adjusted opposing virtual vehicle 2710 is added to the world model of vehicle 2702. The location of the adjusted opposing virtual vehicle 2710 is identified and associated with it, as per [the relevant information]. Figure 24 As stated above.

[0304] Identify the predicted path 2712 of the adjusted opposing virtual vehicle 2710. In this example, the path prediction variance can also be identified. The variance includes the left variance 2716 and the right variance 2714 at each predicted location in future timestamps. Since accurately predicting the trajectories of other road users (e.g., human drivers) can be difficult, variance can be used to account for the varying movement behavior of the adjusted opposing virtual vehicle 2710. The predicted trajectory variance can be used to capture uncertainties in the predicted path 2712. Variance (i.e., deviation from the predicted path 2712) can increase with lane curvature. Variance can be used to increase lateral and speed constraints around (sharp) turns.

[0305] In response to the predicted path 2712 (and variance), a trajectory 2718 is identified for the vehicle 2702. The vehicle 2702 is controlled to pass through the trajectory 2718 in a manner that decelerates and remains slightly to the right (e.g., away from the predicted path 2712 plus the left variance 2716). If the gap is too narrow for the vehicle 2702 to pass through, the vehicle 2702 may decelerate further; but not come to a complete stop.

[0306] Vehicle 2702 can be controlled to complete only a portion of the risk mitigation plan (i.e., trajectory 2718) because as vehicle 2702 moves forward and any obstructed areas gradually become visible, the adjusted opposing virtual vehicle 2710 retreats. Trajectory 2718 can be considered or similar to... Figure 12 The active trajectory 1212. Therefore, trajectory 2718 is determined taking into account the danger zone to perform the minimum active lateral maneuvering to maintain the responsiveness of vehicle 2702. That is, trajectory 2718 is determined to include lateral emergency measures and / or speed emergency measures, such that vehicle 2702 can perform emergency maneuvers if an oncoming vehicle is specified. The lateral emergency measures and / or speed emergency measures may be a portion (e.g., 80%) of the lateral emergency measures and speed emergency measures used relative to the observed oncoming vehicle.

[0307] Without the mitigation strategies described herein that take into account the opposing virtual vehicle, the trajectory planner of vehicle 2702 could allow vehicle 2702 to make wider turns. However, due to the presence of the virtual vehicle and thus the consideration of prediction, the trajectory of vehicle 2702 is adjusted so that vehicle 2702 stays to the right and / or slows down, as a skilled human driver would do.

[0308] Figure 28 Scenario 2800 illustrates the use of a reciprocating virtual vehicle as a hazardous object. Scenario 2800 includes vehicle 2802. Scenario 2800 illustrates an improvement in path planning in autonomous driving under conditions of limited sensor perception and tracking range, enabling path planning to be more "human-like".

[0309] Vehicle 2802 is crossing the oncoming lane (in Figure 28 (The road is not specifically marked in the text). Scenario 2800 illustrates a region 2804 that the sensors of vehicle 2802 cannot perceive, either outside or inside. For example, visibility may be poor due to weather conditions or limitations of the sensors themselves (e.g., the sensors may not have a limited range, such as 200 meters). Therefore, and as regarding... Figure 24As described in scenario 2430, the location of the opposing virtual vehicle 2806 is identified. Additionally, an adjusted opposing virtual vehicle 2808 is added to the world model of vehicle 2802. The location of the adjusted opposing virtual vehicle 2808 is identified and associated with it, as per [the relevant information]. Figure 24 As stated above.

[0310] Identify the predicted path 2810 of the adjusted opposing virtual vehicle 2808. In this example, the path prediction variance can also be identified. The variance can include the left variance 2812 and the right variance 2814 at each predicted location in future timestamps, which can be as described above regarding… Figure 27 Use it as described.

[0311] In response to the predicted path 2810 (and variance), a trajectory 2816 is identified for the vehicle 2802. The vehicle 2802 is controlled to pass through at least a portion of the trajectory 2816 in a manner that decelerates and remains slightly to the right (e.g., away from the predicted path 2810 plus the left variance 2812). If the gap is too narrow for the vehicle 2802 to pass through, the vehicle 2802 may decelerate further; but not come to a complete stop.

[0312] Controlling vehicle 2802 only completes a portion of the risk mitigation planning (i.e., trajectory 2816) because as vehicle 2802 moves forward and any obstructed areas gradually become visible, the adjusted opposing virtual vehicle 2808 retreats. Trajectory 2816 can be considered as or similar to... Figure 12 The active trajectory 1212. Therefore, trajectory 2718 is determined taking into account the danger zone to perform the minimum active lateral maneuvering to maintain the responsiveness of vehicle 2802. That is, trajectory 2816 is determined to include lateral emergency measures and / or speed emergency measures, such that vehicle 2802 can perform emergency maneuvers if an oncoming vehicle is specified. The lateral emergency measures and / or speed emergency measures may be a portion (e.g., 80%) of the lateral emergency measures and speed emergency measures used relative to the observed oncoming vehicle.

[0313] Figure 29A Example 2900 illustrates the use of opposing virtual vehicles around sharp corners with obstructions. View 2902 illustrates a view captured by a forward-facing camera of vehicle 2906; and visualization 2904 is a visualization of a world model corresponding to view 2902 maintained by vehicle 2906. Example 2900 illustrates the use of opposing virtual vehicles around sharp corners with obstructions. Figure 27The scenario described is similar to that described in the world model. The world model includes the actually observed object 2908. Since the sensors of vehicle 2906 cannot perceive the area around the curve (not specifically marked), an adjusted opposing virtual vehicle 2910 has been added to the world model with a predicted trajectory 2912 and variances 2914 and 2916.

[0314] therefore, Figure 23 System 2300 or Figure 26 System 2600 calculates the adjusted trajectory 2818 of vehicle 2906, taking into account the observed object 2908 and the adjusted opposing virtual vehicle 2910. Bars filled with a first pattern (such as bar 2820, etc.) illustrate that lateral constraints (and their ranges) have been applied to the adjusted trajectory 2818 at the indicated locations; and bars filled with a second pattern (such as bar 2822, etc.) illustrate that both lateral and velocity constraints (and their ranges) have been applied to the adjusted trajectory 2818 at the indicated locations. The constraints increase with the variance of the predicted trajectory 2912.

[0315] Figure 29B This is an example Figure 29A An example of the same situation, but captured earlier in time. Visualization 2952 is a visualization of the world model maintained by vehicle 2906. The world model includes the actually observed objects 2908. Since the sensors of vehicle 2906 cannot perceive the area around the curve (not specifically marked), an adjusted opposing virtual vehicle 2956 has been added to the world model with predicted trajectory 2958 and variances 2960 and 2962. Note that the location, trajectory, and variance identified (e.g., calculated or determined) relative to the adjusted opposing virtual vehicle 2956 may differ from those relative to... Figure 29A The adjusted opposing virtual vehicle 2910 describes those, because different obscured areas can be identified at different locations of the vehicle 2906.

[0316] therefore, Figure 23 System 2300 or Figure 26 System 2600 calculates the adjusted trajectory 2964 of vehicle 2906, taking into account the observed object 2908 and the adjusted opposing virtual vehicle 2956. Bars filled with a first pattern (such as bar 2966, etc.) illustrate that lateral constraints (and their extent) have been applied to the adjusted trajectory 2964 at the indicated locations. In this case, no velocity constraints are added to the adjusted trajectory 2964.

[0317] Figure 30A scenario 3000 is illustrated for creating a virtual vehicle based on maximum sensing and tracking range. Scenario 3000 illustrates the creation of an adjusted virtual opposing vehicle 3002 at the maximum sensing and tracking range of the sensors of vehicle 3004. Bars filled with a second pattern (such as bar 3006, etc.) illustrate an adjusted trajectory 3008 calculated for vehicle 3004, including lateral and velocity constraints, such that vehicle 3004 is controlled to remain to the right and decelerate.

[0318] Figure 31 Scenario 3100 is illustrated using a reciprocating virtual vehicle. Scenario 3100 illustrates a first scenario 3102 corresponding to a first time step and a first location of the vehicle 3104 relative to a curve; and a second scenario 3106 corresponding to a second time step and a second location of the vehicle 3104 relative to a curve.

[0319] In the first scenario 3102, since the sensors cannot perceive the area around the curve, an adjusted opposing virtual vehicle 3108 is added to the world model of vehicle 3104, and an adjusted trajectory is planned accordingly. The adjusted opposing virtual vehicle 3108 is classified as a hazard caused by occlusion around the curve (corner). As illustrated in clause 3110, the adjusted trajectory includes speed and lateral constraints, causing vehicle 3104 to be controlled to stay on the right and decelerate.

[0320] In the second scenario 3106, a real (i.e., perceived) oncoming vehicle hazard 3112 is detected that exceeds that of the adjusted oncoming virtual vehicle 3108, and a new trajectory is calculated that includes new constraints (as illustrated in clause 3114). Compared to the lateral and velocity constraints of the first scenario 3102, the new lateral and velocity constraints increase, causing vehicle 3104 to be controlled to move further to the right and decelerate more. Note that since at least part of the active risk mitigation maneuver was already performed as part of the first scenario 3102, the transition to stricter constraints is smoother (e.g., less abrupt) and more comfortable for the occupants of vehicle 3104.

[0321] Figure 32 This is a flowchart of a proactive risk mitigation method 3200 using a virtual vehicle. Method 3200 can be performed wholly or partially by computer-associated hardware components. Method 3200 can be performed by a vehicle (such as...) Figure 1 100 vehicles Figure 2 The vehicle 202 shown (e.g.) is executed by remote assistance or a combination thereof, as previously described. For example, method 3200 may be wholly or partially implemented in the manner of including... Figure 2The controller device 232 shown is executed in a computing device. In implementation, some or all aspects of method 3200 can be implemented in a system combining some or all of the features described in this disclosure. For example, method 3200 can be utilized by object avoidance layer 406, active trajectory optimization layer 408, one or more modules of system 2300, one or more modules of system 2600, or a combination thereof.

[0322] At point 3202, the location of the virtual vehicle is identified. This identification can be based on lanes in map data, the vehicle's trajectory, and the perceptible area of ​​the vehicle's sensors. The virtual vehicle is a hypothetical vehicle that is not observed by the vehicle's sensors. That is, the virtual vehicle is not observable by the vehicle's sensors. This can be done as described above (e.g., regarding...). Figures 24-31 (One or more of the above) identifies the location of the virtual vehicle.

[0323] In the example, the vehicle may be traveling in a lane, and the virtual vehicle may be a leading virtual vehicle. The location of the virtual vehicle can be set to a location immediately outside the perceptible area along the vehicle's trajectory. In the example, the location of the virtual vehicle can be configured to be static in the world model. That is, for example, the trajectory may not be predicted relative to the leading virtual vehicle.

[0324] In the example, the lane can be an oncoming lane, and the virtual vehicle can be classified as an oncoming virtual vehicle. Therefore, and as described above, identifying the location of the virtual vehicle can include: starting at a location along the oncoming lane corresponding to the vehicle's current location, searching backward along the determined trajectory of the oncoming virtual vehicle until a location where the vehicle's sensors are not visible is identified. The location of the oncoming virtual vehicle can be set based on the location where the vehicle's sensors are not visible. In the example, the location of the oncoming virtual vehicle can be set as an adjusted location along the determined trajectory of the oncoming virtual vehicle and within the perceptible area. The adjusted location can be based on the processing delay of sensor data received by the vehicle's sensors or some other nominal delay value. In the example, the search may not be based on the predicted trajectory of the virtual vehicle. Instead, it can be based on discrete locations along the lane.

[0325] In the example, lanes can be intersecting lanes, and virtual vehicles can be classified as intersecting virtual vehicles. Therefore, and as described above, identifying the location of a virtual vehicle can include: starting at a location immediately in front of the vehicle along an intersecting lane, searching backward along the determined trajectory of the traversing virtual vehicle until a location where the vehicle's sensors are not visible is identified. The location of the intersecting virtual vehicle can be set based on the location where the vehicle's sensors are not visible. The adjusted location can be based on the processing latency of sensor data received by the vehicle's sensors. In the example, the search can be performed without basing it on the predicted trajectory of the virtual vehicle. Instead, it can be based on discrete locations along the lanes.

[0326] At 3204, a virtual vehicle is added to the world object model maintained relative to the vehicle. At 3206, a trajectory is predicted for the virtual vehicle. At 3208, the vehicle is controlled based on an adjusted trajectory based on the virtual vehicle's trajectory. As mentioned above, the adjusted trajectory may include lateral constraints, velocity constraints, or both. As described herein, the adjusted trajectory may also be referred to as an active trajectory. Therefore, controlling the vehicle based on the adjusted trajectory may mean or include sending signals to control the vehicle according to the active trajectory.

[0327] In this document, the terms “passenger,” “driver,” or “operator” are used interchangeably. Similarly, the terms “braking” or “deceleration” are used interchangeably. As used herein, the terms “processor,” “computer,” or “computing device” include any unit or combination of units capable of performing any of the methods disclosed herein or any one or more of them.

[0328] As used herein, the term "instructions" can include indications or expressions for performing any of the methods disclosed herein or any one or more of them, and can be implemented in hardware, software, or any combination thereof. For example, instructions can be implemented as information stored in memory (such as a computer program), and instructions can be executed by a processor to perform any of the methods, algorithms, aspects, or combinations thereof described herein. In some implementations, instructions, or a portion thereof, can be implemented as a dedicated processor or circuit, which can include dedicated hardware for performing any of the methods, algorithms, aspects, or combinations thereof described herein. In some implementations, a portion of instructions can span multiple processors on a single device or be distributed across multiple devices that can communicate directly or across networks (such as local area networks, wide area networks, the Internet, or combinations thereof).

[0329] As used herein, the terms “example,” “implementation,” “aspect,” “feature,” or “element” indicate that they are used as examples, instances, or illustrations. Unless otherwise expressly indicated, any example, embodiment, implementation, aspect, feature, or element is independent of each other and may be used in combination with any other example, embodiment, implementation, aspect, feature, or element.

[0330] As used herein, the terms “determine” and “identify” or any variation thereof include using one or more of the devices shown and described herein to select, identify, calculate, locate, receive, determine, establish, obtain or otherwise identify or determine in any way.

[0331] As used herein, the term “or” is intended to mean an inclusive “or” rather than an exclusive “or.” That is, unless otherwise specified or expressly indicated by the context, “X includes A or B” is intended to indicate any natural inclusion. “X includes A or B” is satisfied in any of the foregoing instances if X includes A; X includes B; or X includes both A and B. Additionally, unless otherwise specified or expressly indicated from the context, the articles “a” and “an” as used in this application and the appended claims should generally be understood to mean “one or more.”

[0332] Furthermore, for the sake of simplicity, although the accompanying drawings and descriptions may include sequences or series of operations or stages, the elements of the methods disclosed herein may occur in various orders or in parallel. Additionally, the elements of the methods disclosed herein may occur together with other elements not explicitly presented and described herein. Moreover, it is not necessary to require all elements of the methods described herein to implement the method according to the invention. Although aspects, features, and elements are described herein in specific combinations, each aspect, feature, or element may be used independently, or in various combinations with other aspects, features, and / or elements, or in various combinations without other aspects, features, and / or elements.

[0333] While the disclosed technology has been described in conjunction with certain embodiments, it should be understood that the disclosed technology is not limited to the disclosed embodiments, but is intended to cover various modifications and equivalent arrangements included within the scope of the appended claims, which shall be given the broadest interpretation permitted by law to cover all such modifications and equivalent arrangements.

Claims

1. A method comprising: Identify the location of the virtual vehicle. The location is identified based on lanes, vehicle trajectories, and the sensor-detectable area of ​​the vehicle in map data. The virtual vehicle is a hypothetical vehicle that is not observed by the sensors of the vehicle. Add the virtual vehicle to the world object model maintained relative to the vehicle; Predict the trajectory of the virtual vehicle; and The vehicle is autonomously controlled based on an adjusted trajectory derived from the trajectory of the virtual vehicle, wherein the adjusted trajectory includes at least one of lateral constraints and velocity constraints.

2. The method according to claim 1, wherein, The vehicle is traveling in the lane, the virtual vehicle is a leading virtual vehicle, and the location of the virtual vehicle is set to be a location adjacent to the outside of the perceptible area along the trajectory of the vehicle.

3. The method according to claim 2, wherein, The location of the virtual vehicle is configured to be static.

4. The method according to claim 1, wherein, The lane is an oncoming lane, the virtual vehicle is an oncoming virtual vehicle, and the location for identifying the virtual vehicle includes: Starting at a location along the opposite lane corresponding to the current location of the vehicle, a backward search is performed along the determined trajectory of the virtual vehicle until a location where the vehicle's sensors are not visible is identified; and The location of the opposing virtual vehicle is set based on the location that is not visible to the sensors of the vehicle.

5. The method according to claim 4, wherein, Setting the location of the opposing virtual vehicle based on the location that is not visible to the vehicle's sensors includes: The location of the opposing virtual vehicle is set as an adjusted location along the determined trajectory of the opposing virtual vehicle and within the perceptible area.

6. The method according to claim 5, wherein, The adjusted location is based on the processing delay of sensor data received by the sensors of the vehicle.

7. The method according to claim 1, wherein, The lanes are intersecting lanes, the virtual vehicle is an intersecting virtual vehicle, and the location for identifying the virtual vehicle includes: Starting at a location immediately in front of the vehicle along the intersecting lanes, the search proceeds backward along the determined trajectory of the intersecting virtual vehicle until a location is identified where the vehicle's sensors are no longer visible; and The location of the cross-virtual vehicle is set based on the location that is not visible to the sensors of the vehicle.

8. The method according to claim 7, wherein, Setting the location of the cross-virtual vehicle based on the location invisible to the vehicle's sensors includes: The location of the cross-virtual vehicle is set to an adjusted location within the perceptible area, wherein the adjustment of the location is based on processing latency.

9. An apparatus for proactively mitigating the risks of vehicles traversing a vehicle traffic network, the apparatus comprising: The processor is configured as follows: Identifying the location of a virtual vehicle, wherein the location is identified based on lanes in map data, the trajectory of the vehicle, and the perceptible area of ​​the vehicle's sensors, and wherein the virtual vehicle is not observable by the vehicle's sensors; Predict the trajectory of the virtual vehicle; and Signals are sent to control the vehicle based on an active trajectory of the virtual vehicle's trajectory, wherein the active trajectory includes at least one of lateral constraints and velocity constraints.

10. The device according to claim 9, wherein, The vehicle is traveling in the lane, the virtual vehicle is a leading virtual vehicle, and the location of the virtual vehicle is set to be a location adjacent to the outside of the perceptible area along the trajectory of the vehicle.

11. The device according to claim 10, wherein, The location of the virtual vehicle is configured to be static.

12. The device according to claim 9, wherein, The lane is an oncoming lane, the virtual vehicle is an oncoming virtual vehicle, and the location for identifying the virtual vehicle includes: Starting at a location along the opposite lane corresponding to the current location of the vehicle, a backward search is performed along the determined trajectory of the virtual vehicle until a location where the vehicle's sensors are not visible is identified; and The location of the opposing virtual vehicle is set based on the location that is not visible to the sensors of the vehicle.

13. The device according to claim 12, wherein, Setting the location of the opposing virtual vehicle based on the location that is not visible to the vehicle's sensors includes: The location of the opposing virtual vehicle is set to an adjusted location within the perceptible area.

14. The device according to claim 13, wherein, The adjusted location is based on the nominal processing delay.

15. The device according to claim 9, wherein, The lanes are intersecting lanes, the virtual vehicle is an intersecting virtual vehicle, and the location for identifying the virtual vehicle includes: Starting at a location immediately in front of the vehicle along the crossing lanes, the search proceeds backwards along the intersecting lanes until a location is identified where the vehicle's sensors are no longer visible; and The location of the cross-virtual vehicle is set based on the location that is not visible to the sensors of the vehicle.

16. A vehicle comprising: A processor is configured to proactively mitigate the risks posed by the vehicle as it traverses a vehicle traffic network by: Identifying the location of a virtual vehicle, wherein the location is identified based on lanes in map data, the trajectory of the vehicle, and the perceptible area of ​​the vehicle's sensors, and wherein the virtual vehicle is not observable by the vehicle's sensors; Predict the trajectory of the virtual vehicle; and The vehicle is autonomously controlled based on an active trajectory derived from the trajectory of the virtual vehicle, wherein the active trajectory includes at least one of lateral constraints and velocity constraints.

17. The vehicle according to claim 16, wherein, The vehicle is traveling on the lane, the virtual vehicle is a leading virtual vehicle, and the location of the virtual vehicle is set to a static location adjacent to the outside of the perceptible area along the trajectory of the vehicle.

18. The vehicle according to claim 16, wherein, The lane is an oncoming lane, the virtual vehicle is an oncoming virtual vehicle, and the location for identifying the virtual vehicle includes: Starting at a location along the opposite lane corresponding to the vehicle's current location, the search proceeds backward along the opposite lane until a location where the vehicle's sensors are not visible is identified; and The location of the opposing virtual vehicle is set based on the location that is not visible to the sensors of the vehicle.

19. The vehicle according to claim 18, wherein, Setting the location of the opposing virtual vehicle based on the location that is not visible to the vehicle's sensors includes: The location of the opposing virtual vehicle is set to an adjusted location within the perceptible area, wherein the adjusted location is based on a nominal processing delay associated with sensor data.

20. The vehicle according to claim 16, wherein, The lanes are intersecting lanes, the virtual vehicle is an intersecting virtual vehicle, and the location for identifying the virtual vehicle includes: Starting at a location immediately in front of the vehicle along the crossing lanes, the search proceeds backwards along the intersecting lanes until a location is identified where the vehicle's sensors are no longer visible; and The location of the cross-virtual vehicle is set based on the location that is not visible to the sensors of the vehicle.