CN112014859A - 估计速率分布 - Google Patents
估计速率分布 Download PDFInfo
- Publication number
- CN112014859A CN112014859A CN202010476119.1A CN202010476119A CN112014859A CN 112014859 A CN112014859 A CN 112014859A CN 202010476119 A CN202010476119 A CN 202010476119A CN 112014859 A CN112014859 A CN 112014859A
- Authority
- CN
- China
- Prior art keywords
- trajectory
- planning
- data
- vehicle
- circuitry
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000009826 distribution Methods 0.000 claims abstract description 88
- 238000000034 method Methods 0.000 claims abstract description 53
- 230000004044 response Effects 0.000 claims abstract description 15
- 230000008447 perception Effects 0.000 claims description 8
- 238000000513 principal component analysis Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 39
- 238000010801 machine learning Methods 0.000 description 29
- 230000015654 memory Effects 0.000 description 27
- 238000012549 training Methods 0.000 description 21
- 230000006870 function Effects 0.000 description 16
- 238000012545 processing Methods 0.000 description 16
- 239000013598 vector Substances 0.000 description 16
- 230000001133 acceleration Effects 0.000 description 15
- 230000008569 process Effects 0.000 description 13
- 238000013528 artificial neural network Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 230000008859 change Effects 0.000 description 7
- 238000013500 data storage Methods 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 7
- 241000282412 Homo Species 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 6
- 230000036461 convulsion Effects 0.000 description 6
- 239000007787 solid Substances 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000033001 locomotion Effects 0.000 description 5
- 238000005259 measurement Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000004927 fusion Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 239000000446 fuel Substances 0.000 description 3
- 230000001953 sensory effect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 206010039203 Road traffic accident Diseases 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 239000012530 fluid Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 241000283070 Equus zebra Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000034994 death Effects 0.000 description 1
- 231100000517 death Toxicity 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 229910003460 diamond Inorganic materials 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000005290 field theory Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000001556 precipitation Methods 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 239000011435 rock Substances 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 238000001429 visible spectrum Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/93—Lidar systems specially adapted for specific applications for anti-collision purposes
- G01S17/931—Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
- B60W30/14—Adaptive cruise control
- B60W30/143—Speed control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
- B60W30/08—Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
- B60W30/095—Predicting travel path or likelihood of collision
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W30/00—Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
- B60W30/10—Path keeping
- B60W30/12—Lane keeping
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W40/00—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
- B60W40/10—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to vehicle motion
- B60W40/105—Speed
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W50/08—Interaction between the driver and the control system
- B60W50/082—Selecting or switching between different modes of propelling
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W50/08—Interaction between the driver and the control system
- B60W50/085—Changing the parameters of the control units, e.g. changing limit values, working points by control input
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0011—Planning or execution of driving tasks involving control alternatives for a single driving scenario, e.g. planning several paths to avoid obstacles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/10—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
- G01C21/12—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
- G01C21/16—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
- G01C21/165—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation combined with non-inertial navigation instruments
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3407—Route searching; Route guidance specially adapted for specific applications
- G01C21/3415—Dynamic re-routing, e.g. recalculating the route when the user deviates from calculated route or after detecting real-time traffic data or accidents
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3407—Route searching; Route guidance specially adapted for specific applications
- G01C21/3423—Multimodal routing, i.e. combining two or more modes of transportation, where the modes can be any of, e.g. driving, walking, cycling, public transport
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/3446—Details of route searching algorithms, e.g. Dijkstra, A*, arc-flags, using precalculated routes
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3605—Destination input or retrieval
- G01C21/3614—Destination input or retrieval through interaction with a road map, e.g. selecting a POI icon on a road map
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3626—Details of the output of route guidance instructions
- G01C21/3644—Landmark guidance, e.g. using POIs or conspicuous other objects
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3667—Display of a road map
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0223—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0002—Automatic control, details of type of controller or control system architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0019—Control system elements or transfer functions
- B60W2050/0028—Mathematical models, e.g. for simulation
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2520/00—Input parameters relating to overall vehicle dynamics
- B60W2520/10—Longitudinal speed
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2556/00—Input parameters relating to data
- B60W2556/20—Data confidence level
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2720/00—Output or target parameters relating to overall vehicle dynamics
- B60W2720/10—Longitudinal speed
- B60W2720/103—Speed profile
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2720/00—Output or target parameters relating to overall vehicle dynamics
- B60W2720/24—Direction of travel
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60Y—INDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
- B60Y2300/00—Purposes or special features of road vehicle drive control systems
- B60Y2300/10—Path keeping
- B60Y2300/12—Lane keeping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mechanical Engineering (AREA)
- Transportation (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Electromagnetism (AREA)
- Computer Networks & Wireless Communication (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明涉及估计速率分布。除其它事项之外,描述了用于估计针对运载工具的建议轨迹的速率分布、并且根据该速率分布来使运载工具沿着建议轨迹操作的技术,这些技术包括一种方法,用于:利用运载工具上的规划电路,响应于驾驶场景来获得针对所述运载工具的建议轨迹;利用所述规划电路来获得估计速率分布和置信度得分,其中所述置信度得分表示所述估计速率分布与由控制电路针对所述建议轨迹将生成的实际速率分布的相似度;确定所述置信度得分是否满足置信度阈值;以及根据确定为所述置信度得分超过所述置信度阈值,利用所述运载工具上的控制电路来使所述运载工具沿着所述建议轨迹操作。
Description
技术领域
本说明书涉及速率分布估计。
背景技术
自主运载工具例如通过减少道路交通事故死伤人数、交通拥堵、停车拥堵和提高燃料效率,与人类驾驶运载工具相比存在益处。自主运载工具的一个组件通过考虑障碍物、接近运载工具的环境或其它相关驾驶条件,可以做出决定并生成运载工具应采取的建议轨迹。运载工具的另一组件可以接收该建议轨迹,并使运载工具根据该建议轨迹操作。在使运载工具通过具有不同的驾驶条件的不同驾驶场景操作时,可以重复多次该处理。
附图说明
图1示出具有自主能力的自主运载工具的示例。
图2例示示例“云”计算环境。
图3例示计算机系统。
图4示出自主运载工具的示例架构。
图5示出感知模块可以使用的输入和输出的示例。
图6示出LiDAR系统的示例。
图7示出操作中的LiDAR系统。
图8示出LiDAR系统的操作的附加细节。
图9示出规划模块的输入和输出之间的关系的框图。
图10示出路径规划中所使用的有向图。
图11示出控制模块的输入和输出的框图。
图12示出控制器的输入、输出和组件的框图。
图13示出具有速率分布估计电路的控制器的输入、输出和组件的框图。
图14示出规划电路和控制电路各自的规划器感知管道和控制器感知管道的框图。
图15是表示用于使用估计速率分布使运载工具沿着轨迹操作的处理的流程图。
具体实施方式
在以下描述中,为了解释的目的,阐述了许多具体细节,以便提供对本发明的透彻理解。然而,显而易见的是,本发明可以在没有这些具体细节的情况下实施。在其它实例中,众所周知的构造和装置是以框图形式示出的,以避免不必要地使本发明模糊。
在附图中,为了便于描述,显示了示意要素的具体安排或次序,例如表示设备、模块、指令块和数据要素的那些要素。然而,本领域技术人员应当理解,附图中示意要素的具体排序或安排并不意味着要求特定的处理顺序或序列、或处理过程的分离。此外,在附图中包含示意性要素并不意味着在所有实施例中都需要这种要素,也不意味着由这种要素表示的特征不能包括在实施例中或不能在实施例中与其它要素结合。
此外,在附图中,连接要素、例如实线或虚线或箭头用于说明两个或两个以上其它示意要素之间的连接、关系或关联,没有任何此类连接要素并不意味着不能存在连接、关系或关联。换句话说,一些要素之间的连接、关系或关联未在附图中显示,以便不掩盖本发明。此外,为了便于说明,使用单个连接要素来表示要素之间的多个连接、关系或关联。例如,如果连接元件代表信号、数据或指令的通信,本领域技术人员应理解,该元件代表影响通信可能需要的一个或多个信号路径(例如,总线)。
现在将详细参考实施例,其示例在附图中示出。在下面的详细描述中,阐述了许多具体细节,以便提供对所描述的各种实施例的透彻理解。然而,对于本领域的普通技术人员来说明显的是,可以在没有这些具体细节的情况下实施所描述的各种实施例。在其它情况下,没有详细描述众所周知的方法、程序、组件、电路和网络,以便不会不必要地掩盖实施例的方面。
下面描述的若干特征可以彼此独立地使用,也可以与其它特征的任何组合一起使用。但是,任何个别特征可能不能解决上述任何问题,或者只能解决上述问题之一。上文讨论的一些问题可能不能通过本文所述的任何一个特征得到充分解决。虽然提供了标题,但在本说明的其它地方也可以找到与某一标题有关但在该标题部分未找到的信息。本文根据以下概要描述实施例:
1.总体概述
2.系统概述
3.自主运载工具架构
4.自主运载工具输入
5.自主运载工具规划
6.自主运载工具控制
7.速率分布估计
总体概述
如以下针对图13至图15更详细地所述,运载工具(诸如自主运载工具等)可以包括规划电路,该规划电路可以获得针对运载工具的建议轨迹的至少一部分的估计速率分布。运载工具的控制电路可以使用先前在针对不同驾驶场景的轨迹上已训练的机器学习模型来生成速率分布估计。机器学习模型可以输出针对输入建议轨迹的至少一个路段的估计速率分布,以及输出表示该估计速率分布和运载工具的控制电路将生成的实际速率分布之间的预期相似度水平的置信度得分。根据该置信度得分,规划电路可以将建议轨迹发送至控制电路,而这反过来使得控制电路使运载工具沿着该建议轨迹操作。控制电路可以执行用于路径规划的增量算法,并且还针对输入建议轨迹的某路段生成速率分布估计。
这些技术存在数个优势。例如,向规划电路提供估计速率分布和针对该速率分布的相应置信度得分,这允许基于取决于控制电路在接收到建议轨迹之后将生成的实际速率分布的不同标准(例如,可行性、安全性、规则遵从性和操纵舒适性)来将更好的建议轨迹传递至控制电路。估计速率分布与针对规划电路所生成的各建议轨迹生成速率分布相比从计算上更可行且更快。通过简单的启发式方法来使用机器学习模型估计速率分布,这也使得能够估计置信度得分,从而允许规划电路在决定将哪个建议轨迹发送至控制电路时考虑所测量到的置信度水平。可以对机器学习模型进行训练,以考虑环境因素(例如,遮挡)、以及系统属性(例如,不同传感器的性能)。速率分布的置信度得分也反映了从传感器接收到且通过感知管道处理后的数据的可靠度。
系统概述
图1示出具有自主能力的自主运载工具100的示例。
如本文所使用的,术语“自主能力”是指一种功能、特征或设施,该功能、特征或设施使运载工具能够部分地或完全地运行,而无需实时的人类干预,包括但不限于完全自主运载工具、高度自主运载工具、部分自主运载工具和有条件自主运载工具。
如本文所使用的,自主运载工具(AV)是一种具有自主能力的运载工具。
如本文所使用的,“运载工具”包括货物或人员的运输方式。例如,小汽车、公共汽车、火车、飞机、无人机、卡车、船只、舰艇、潜水器、飞船等。无人驾驶的小汽车是运载工具的示例。
如本文所使用的,“轨迹”是指从第一时空场所导航到第二时空场所的路径或路线。在实施例中,第一时空场所被称为初始场所或起始场所,第二时空场所被称为目的地、最终场所、目标、目标位置或目标场所。在一些示例中,轨迹由一个或多个路段(例如,道路的数段)组成,并且各路段由一个或多个块(例如,车道或交叉路口的一部分)组成。在实施例中,时空场所对应于真实世界场所。例如,时空场所是上车或下车场所,以使人员或货物上车或下车。
如本文所使用的,“驾驶场景”是指描述在特定时间接近运载工具的环境的一组条件。驾驶场景可以包括描述运载工具所处的道路的条件、以及在特定时间的天气或能见度条件。驾驶场景可以是指在运载工具在操作中时由传感器在运载工具的路径中检测到的对象(例如,行人或其它运载工具)。对于所检测到的各对象,驾驶场景也是指对象的一组分别从外部可观察到的参数值(例如,对象的速度和加速度)。在运载工具沿着轨迹行驶时,驾驶场景可以改变,从而可以提示运载工具的轨迹的变化。例如,运载工具可能沿着一个轨迹行驶,并且突然遇到阻挡运载工具沿着该轨迹继续的障碍物。该新障碍物可被表示为新驾驶场景,并且作为响应,可以通过本说明书所述的技术来使运载工具操作以沿着新轨迹行驶。
如本文所使用的,“(一个或多个)传感器”包括一个或多个硬件组件,用于检测与传感器周围环境有关的信息。一些硬件部件可包括感测部件(例如,图像传感器、生物测量传感器)、发送和/或接收部件(例如,激光或射频波发射器和接收器)、电子部件(例如,模数转换器)、数据存储装置(例如,RAM和/或非易失性存储器)、软件或固件部件和数据处理部件(例如,专用集成电路)、微处理器和/或微控制器。
如本文所使用的,“场景描述”是一种数据结构(例如,列表)或数据流,其包括由AV运载工具上的一个或多个传感器检测到的一个或多个分类或标记的对象,或由AV外部的源提供的一个或多个分类或标记的对象。
如本文所使用的,“道路”是一个可以被运载工具穿过的物理区域,并且可以对应于已命名的通道(例如,城市街道、州际高速公路等)或可对应于未命名的通道(例如,房屋或办公楼内的车道、停车场的一段、空置停车场的一段、乡村地区的污物通道等)。因为有些运载工具(如四轮驱动的小卡车、越野车(SUV)等)能够穿越各种不特别适合运载工具行驶的物理区域,因此“道路”可以是任何市政当局或其它政府或行政机构没有正式界定为一条通道的物理区域。
如本文所使用的,“车道”是道路的一部分,该部分可被运载工具穿过。有时基于车道标记来识别车道。例如,车道可对应于车道标记之间的大部分或全部空间,或仅对应于车道标记之间的部分空间(例如,小于50%)。例如,具有相距很远的车道标记的道路可能容纳两个或两个以上的运载工具,使得一个运载工具可以在不穿过车道标记的情况下超过另一个运载工具,因此可被解释为车道比车道标记之间的空间窄,或车道之间有两个车道。在没有车道标记的情况下,也可以对车道进行解释。例如,可以根据一个环境的物理特征(例如根据一个农村地区的一条大道上的岩石和树木,或者例如在欠发达地区应避免的自然障碍物)来定义一条车道。也可以独立于车道标记或物理特征来解释车道。例如,可以基于原本缺少将会被解释为车道边界的特征的、区域中无障碍物的任意路径来解释车道。在示例情境中,AV可以解释通过田野或空地的无障碍物部分的车道。在另一示例情境中,AV可以解释通过不具有车道标记的宽(例如,足够两个或更多个车道宽)道路的车道。在该情境中,AV可以将与车道有关的信息通信至其它AV,使得其它AV可以使用相同的车道信息来协调AV之间的路径规划。
术语“空中下载(OTA)客户端”包括任何AV,或者嵌入在AV中、耦接至AV或与AV进行通信的任何电子装置(例如,计算机、控制器、IoT装置、电子控制单元(ECU))。
术语“空中下载(OTA)更新”意味着使用专有和/或标准化的无线通信技术递送至OTA客户端的对软件、固件、数据或配置设置或者它们的任何组合的任何更新、改变、删除或添加,其中该专有和/或标准化的无线通信技术包括但不限于:蜂窝移动通信(例如,2G、3G、4G、5G)、无线电无线局域网络(例如,WiFi)和/或卫星因特网。
术语“边缘节点”是指耦接至网络的一个或多个边缘装置,该网络提供与AV进行通信所用的门户,并且可以与其它边缘节点和基于云的计算平台进行通信,以调度OTA更新并将OTA更新递送至OTA客户端。
术语“边缘装置”是指实现边缘节点并提供向企业或服务提供商(如VERIZON、AT&T)核心网的物理无线接入点(AP)的装置。边缘装置的示例包括但不限于:计算机、控制器、发送器、路由器、路由交换机、综合接入装置(IAD)、多路复用器、城域网(MAN)和广域网(WAN)接入装置。
“一个或多个”包括由一个要素执行的功能,由多个要素执行的功能、例如以分布式的方式,由一个要素执行的几个功能,由几个要素执行的几个功能,或上述的任意组合。
还将理解的是,尽管在某些情况下,术语“第一”、“第二”等是用来描述各种要素的,但这些要素不应受到这些术语的限制。这些术语仅用于区分一个要素与另一个要素。例如,在未背离各种所述实施例的范围的情况下,第一触点可被称为第二触点,并且同样,第二触点可被称为第一触点。第一触点和第二触点都是触点,但这两者不是相同触点。
此处描述的各种实施例的描述中使用的术语仅用于描述特定实施例,而不是意在限制。正如在所描述的各种实施例和所附权利要求书的描述中所使用的,单数形式“a”、“an”和“the”也意在包括复数形式,除非上下文另有明确说明。还应理解,本文所用的"和/或"一词是指并且包括一个或多个相关清单项目的任何和所有可能的组合。还应理解的是,在本说明中使用的术语“包括”、“包含”、“具备”和/或“具有”具体说明存在所述的特征、整数、步骤、操作、要素和/或组成部分,但并不排除存在或添加一个或多个其它特征、整数、步骤、操作、要素、组成部分、和/或上述的组。
如本文所使用的,“如果”一词可选择地理解为在该情况下、在当时、或者响应于检测到、或响应于确定为,视上下文而定。同样,“如果已确定”或“如果[所述条件或事件]已被检测到”这一短语,视情境而定,可以理解为“在确定时”或“响应于确定为“或”在检测到[所述条件或事件]时”或“响应于检测到[所述条件或事件]”。
如本文所使用的,AV系统是指AV以及实时生成的支持AV操作的硬件、软件、存储的数据和实时生成的支持AV运作的数据。在实施例中,AV系统并入在AV内。在实施例中,AV系统跨多个场所分布。例如,AV系统的一些软件是在类似于下面结合图3描述的云计算环境300的云计算环境中实现的。
一般而言,本文件描述了适用于任何具有一种或多种自主能力的运载工具的技术,包括完全自主运载工具、高度自主运载工具和有条件自主运载工具,如所谓的第5级、第4级和第3级运载工具(见SAE国际标准J3016:道路上机动车自动驾驶系统相关术语的分类和定义,通过引用将其全部内容纳入本说明,以了解运载工具自主权等级的更多详细信息)。本说明所述技术也适用于部分自主运载工具和驾驶员辅助运载工具,如所谓的2级和1级运载工具(见SAE国际标准J3016:道路上机动车自动驾驶系统相关术语的分类和定义)。在实施例中,一个或多个1级、2级、3级、4级和5级运载工具系统可根据对传感器输入的处理,在某些操作条件下自动执行某些运载工具操作(例如,转向、制动和使用地图)。本文件中所述的技术可以使从完全自主运载工具到人类操作的运载工具的各级运载工具受益。
自主运载工具与需要人类驾驶员的运载工具相比存在优势。一个优势是安全性。例如,在2016年,美国经历了600万起汽车事故、240万人受伤、40000人死亡和1300万辆运载工具碰撞事故,估计社会成本为9100亿美元。从1965年到2015年,每行驶1亿英里的美国交通事故死亡人数已从约6人减少到约1人,部分是由于运载工具中所部署的附加安全措施。例如,认为与将发生碰撞有关的额外半秒的警告减轻了60%的前后碰撞。然而,被动安全特征(例如,安全带、安全气囊)在改进该数字方面有可能已达到它们的极限。因而,诸如运载工具的自动控制等的主动安全措施是改进这些统计数据的可能的下一步。由于在95%的碰撞中认为人类驾驶员是造成严重碰撞前事件的原因,因此自动驾驶系统例如通过以下操作,有可能实现更好的安全结果:比人类更好地可靠地识别和避免紧急情况;做出比人类更好的决策,比人类更好地遵守交通法规,并且比人类更好地预测将来事件;并且比人类更好地可靠地控制运载工具。
参考图1,AV系统120使AV 100沿着轨迹198运行,穿过环境190至目的地199(有时称为最终场所),同时避开对象(例如,自然障碍物191、运载工具193、行人192、骑车者和其它障碍物)和遵守道路规则(例如,操作规则或驾驶偏好)。
在实施例中,AV系统120包括用于从计算机处理器146接收操作命令并对其进行操作的装置101。在实施例中,计算处理器146与下面参考图3描述的处理器304相似。装置101的示例包括转向控制器102、制动器103、挡位、加速踏板或其它加速控制机构、挡风玻璃雨刮器、侧门锁、窗控器和转向指示器。
在实施例中,AV系统120包括用于测量或推断AV 100的状态或条件的属性的传感器121,这些属性例如是AV的位置、线速度和加速度及角速度和加速度、以及航向(例如,AV100的前端的方向)。传感器121的示例包括GPS、以及测量运载工具线性加速度和角速率的惯性测量单元(IMU)、用于测量或估计车轮滑移率的车轮速率传感器、车轮制动压力或制动扭矩传感器、引擎扭矩或车轮扭矩传感器以及转向角度和角速率传感器。
在实施例中,传感器121还包括用于感测或测量AV的环境的属性的传感器。例如,可见光、红外或热(或两者兼有)光谱的单目或立体摄像机122、LiDAR 123、RADAR、超声波传感器、飞行时间(TOF)深度传感器、速率传感器、温度传感器、湿度传感器和降水传感器。
在实施例中,AV系统120包括数据存储单元142和存储器144,用于存储与计算机处理器146或由传感器121收集的数据相关的机器指令。在实施例中,数据存储单元142与以下结合图3描述的ROM 308或存储装置310类似。在实施例中,存储器144与下面描述的主存储器306类似。在实施例中,数据存储单元142和存储器144存储有关环境190的历史、实时和/或预测性信息。在实施例中,存储的信息包括地图、驾驶性能、交通拥堵更新或天气条件。在实施例中,与环境190有关的数据通过来自远程数据库134的通信通道传输到AV 100。
在实施例中,AV系统120包括通信装置140,用于将对其它运载工具的状态和条件(诸如位置、线性和角速度、线性和角加速度以及线性和角航向等)的测量到或推断的属性传送到AV 100。这些装置包括运载工具到运载工具(V2V)和运载工具到基础设施(V2I)通信装置以及用于通过点对点或自组织(ad hoc)网络或两者兼而有之进行无线通信的装置。在实施例中,通信装置140跨电磁频谱(包括无线电和光通信)或其它介质(例如,空气和声学介质)进行通信。运载工具对运载工具(V2V)、运载工具对基础设施(V2I)通信(以及在实施例中为一种或多种其它类型的通信)的组合有时被称为运载工具对所有事物(V2X)通信。V2X通信通常符合一个或多个通信标准,用于与自主运载工具进行的和在自主运载工具之间的通信。
在实施例中,通信装置140包括通信接口。例如,有线、无线、WiMAX、Wi-Fi、蓝牙、卫星、蜂窝、光、近场、红外或无线电接口。通信接口将数据从远程数据库134传输到AV系统120。在实施例中,远程数据库134嵌入云计算环境200中,如图2中所述。通信接口140将从传感器121收集的数据或与AV 100操作有关的其它数据传输到远程数据库134。在实施例中,通信接口140向AV 100传输与远程操作有关的信息。在实施例中,AV 100与其它远程(例如,“云”)服务器136通信。
在实施例中,远程数据库134还存储和传输数字数据(例如,存储道路和街道场所等的数据)。这些数据存储在AV 100上的存储器144中,或者通过通信通道从远程数据库134传输到AV 100。
在实施例中,远程数据库134存储和传输与以前在一天中类似时间沿着轨迹198行驶的运载工具的驾驶属性有关的历史信息(例如,速率和加速率分布)。在一个实现中,这种数据可以存储在AV 100上的存储器144中,或者通过通信通道从远程数据库134传输到AV100。
位于AV 100上的计算装置146基于实时传感器数据和先验信息以算法方式生成控制动作,使得AV系统120能够执行其自主驾驶能力。
在实施例中,AV系统120包括连接到计算装置146的计算机外围设备132,用于向AV100的用户(例如,乘员或远程用户)提供信息和提醒并接收来自该用户的输入。在实施例中,外围设备132类似于下面参考图3讨论的显示器312、输入装置314和光标控制器316。连接是无线的或有线的。任意两个或更多的接口设备可以集成到单个设备中。
图2例示示例“云”计算环境。云计算是一种服务交付模式,可以方便、按需地在网络上访问共享的可配置计算资源池(例如网络、网络带宽、服务器、处理、内存、存储、应用程序、虚拟机和服务)。在典型的云计算系统中,一个或多个大型云数据中心容纳用于递送云所提供的服务的机器。现在参考图2,云计算环境200包括通过云202互连的云数据中心204a、204b和204c。数据中心204a、204b和204c为连接到云202的计算机系统206a、206b、206c、206d、206e和206f提供云计算服务。
云计算环境200包括一个或多个云数据中心。通常,云数据中心(例如图2中所示的云数据中心204a)是指构成云(例如图2中所示的云202或云的特定部分)的服务器的物理排列。例如,服务器在云数据中心中物理排列成房间、组、行和机架。云数据中心有一个或多个区域,其中包括一个或多个服务器房间。每个房间有一行或多行服务器,每行都包括一个或多个机架。每个机架包括一个或多个单独的服务器节点。在一些实现中,区域、房间、机架和/或行中的服务器根据数据中心设施的物理基础设施要求(包括电力、能源、热力、热源和/或其它要求)分为若干组。在实施例中,服务器节点类似于图3中描述的计算机系统。数据中心204a具有许多分布在多个机架上的计算系统。
云202包括云数据中心204a、204b和204c以及用于连接云数据中心204a、204b和204c并有助于促进计算系统206a-f对云计算服务的访问的网络和网络资源(例如,网络设备、节点、路由器、交换机和网络电缆)。在实施例中,该网络表示一个或多个本地网络、广域网或通过使用地面或卫星连接部署的有线或无线链路连接的网际网络的任意组合。通过网络交换的数据采用多种网络层协议(如Internet协议(IP)、多协议标签交换(MPLS)、异步传输模式(ATM)、帧中继(FrameRelay)等)进行传输。此外,在网络代表多个子网络的组合的实施例中,在每个底层子网络上使用不同的网络层协议。在实施例中,网络代表一个或多个互连网际网络(例如公共互联网等)。
计算系统206a-f或云计算服务消费者通过网络链路和网络适配器连接到云202。在实施例中,计算系统206a-f被实现为各种计算装置,例如服务器、台式机、膝上型计算机、平板电脑、智能手机、物联网(IoT)设备、自主运载工具(包括小汽车、无人机、航天飞机、火车、公共汽车等)和消费电子产品。在实施例中,计算系统206a-f在其它系统中实现或作为其它系统的一部分实现。
图3例示计算机系统300。在实现中,计算机系统300是一种专用计算装置。专用计算装置被硬连线以执行这些技术,或包括诸如一个或多个专用集成电路(ASIC)或现场可编程门阵列(FPGA)等的被持久编程为进行上述技术的数字电子装置,或可包括一个或多个通用硬件处理器,这些硬件处理器经编程以根据固件、存储器、其它存储器、或者组合中的程序指令执行这些技术。这种专用的计算装置还可以将定制的硬线逻辑、ASIC或FPGA与定制的编程相结合来完成这些技术。在各种实施例中,专用计算装置是台式计算机系统、便携式计算机系统、手持设备、网络设备或包含硬线和/或程序逻辑以实现这些技术的任何其它设备。
在实施例中,计算机系统300包括总线302或用于通信信息的其它通信机制、以及与总线302连接以处理信息的硬件处理器304。硬件处理器304是例如通用微处理器。计算机系统300还包括主存储器306,例如随机存取存储器(RAM)或其它动态存储装置,连接到总线302以存储信息和指令,该信息和指令由处理器304执行。在一个实现中,主存储器306用于在执行要由处理器304执行的指令期间存储临时变量或其它中间信息。当这些指令存储在处理器304可访问的非暂时性存储介质中时,使计算机系统300变成一个专用机器,该机器被定制以执行指令中指定的操作。
在实施例中,计算机系统300还包括只读存储器(ROM)308或连接到总线302的其它静态存储装置,用于存储处理器304的静态信息和指令。提供诸如磁盘、光盘、固态驱动器或三维交叉点存储器等的存储装置310,并连接到总线302以存储信息和指令。
在实施例中,计算机系统300通过总线302连接到诸如阴极射线管(CRT)、液晶显示器(LCD)、等离子体显示器、发光二极管(LED)显示器或用于向计算机用户显示信息的有机发光二极管(OLED)显示器等的显示器312。包括字母数字键和其它键的输入装置314连接到总线302,用于向处理器304传送信息和命令选择。另一种类型的用户输入装置是光标控制器316,例如鼠标、轨迹球、触控显示器或光标方向键,用于将方向信息和命令选择传送到处理器304,并用于控制光标在显示器312上的移动。这种输入装置通常具有两个轴线上的两个自由度,第一轴线(例如,x轴)和第二轴线(例如,y轴),这两个轴线允许装置指定平面上的位置。
根据一个实施例,这里的技术由计算机系统300执行,以响应处理器304执行主存储器306中包含的一个或多个指令的一个或多个序列。这些指令从诸如存储装置310等的另一存储介质读入主存储器306。执行主存储器306中包含的指令序列使处理器304执行本文所述的处理步骤。在替代实施例中,使用硬连线电路代替或与软件指令结合使用。
此处使用的术语“存储介质”是指存储数据和/或指令的任何非暂时性介质,这些数据和/或指令使机器以特定方式运行。这种存储介质包括非易失性介质和/或易失性介质。非易失性介质例如包括诸如存储装置310等的光盘、磁盘、固态驱动器或三维交叉点存储器。易失性介质包括动态存储器,诸如主存储器306等。存储介质的常见形式包括例如软盘、软盘、硬盘、固态驱动器、磁带或任何其它磁数据存储介质、CD-ROM、任何其它光数据存储介质、任何具有孔型的物理介质、RAM、PROM和EPROM、FLASH-EPROM、NV-RAM、或任何其它存储芯片或存储盒。
存储介质有别于传输介质,但可以与传输介质相结合使用。传输介质参与存储介质之间的信息传输。例如,传输介质包括同轴电缆、铜线和光纤,其包括具备总线302的电线。传输介质也可以采取声波或光波的形式,如在无线电波和红外数据通信过程中产生的声波或光波。
在实施例中,各种形式的介质涉及向处理器304携带一个或多个指令序列以供执行。例如,这些指令最初是在远程计算机的磁盘或固态驱动器上执行的。远程计算机将指令加载到其动态存储器中,并使用调制解调器通过电话线路发送指令。计算机系统300的本地调制解调器接收电话线路上的数据,并使用红外发射机将数据转换为红外信号。红外探测器接收红外信号中携带的数据,并且适当的电路将数据放置在总线302上。总线302将数据承载到主存储器306,处理器304从主存储器306检索并执行指令。主存储器306接收的指令可以任选地在处理器304执行之前或之后存储在存储装置310上。
计算机系统300还包括连接到总线302的通信接口318。通信接口318提供耦合到连接至本地网络322的网络链路320多双向数据通信。例如,通信接口318是综合业务数字网(ISDN)卡、电缆调制解调器、卫星调制解调器或用以提供与相应类型电话线路的数据通信连接的调制解调器。作为另一示例,通信接口318是局域网(LAN)卡,用于提供与兼容LAN的数据通信连接。在一些实现中,无线链路也被实现。在任何这种实现中,通信接口318发送和接收承载代表各种信息的数字数据流的电、电磁或光信号。
网络链路320通常通过一个或多个网络向其它数据装置提供数据通信。例如,网络链路320通过本地网络322提供与主计算机324或与由因特网服务提供商(ISP)326运营的云数据中心或设备的连接。ISP 326又通过现在通常称为“因特网”的世界范围分组数据通信网络来提供数据通信服务。本地网络322和因特网328都使用携带数字数据流的电、电磁或光信号。通过各种网络的信号以及网络链路320上并通过通信接口318的信号是传输介质的示例形式,其中通信接口318承载了进出计算机系统300的数字数据。在实施例中,网络320包含上述云202或云202的一部分。
计算机系统300通过(一个或多个)网络、网络链路320和通信接口318发送消息和接收包括程序代码的数据。在实施例中,计算机系统300接收用于处理的代码。接收到的代码在接收到时由处理器304执行,和/或存储在存储装置310中,或存储在其它非易失性存储装置中以便以后执行。
自主运载工具架构
图4示出用于自主运载工具(例如,图1所示的AV 100)的示例架构400。架构400包括感知模块402(有时称为感知电路)、规划模块404(有时称为规划电路)、控制模块406(有时称为控制电路)、定位模块408(有时称为定位电路)和数据库模块410(有时称为数据库电路)。各模块在AV 100的操作中发挥作用。共同地,模块402、404、406、408和410可以是图1所示的AV系统120的一部分。在实施例中,模块402、404、406、408和410中的任何模块是计算机软件(例如,计算机可读介质上所存储的可执行代码)和计算机硬件(例如,一个或多个微处理器、微控制器、专用集成电路[ASIC]、硬件存储器装置、其它类型的集成电路、其它类型的计算机硬件、或者这些硬件中的任何或所有的组合)的组合。模块402、404、406、408和410各自有时被称为处理电路(例如,计算机硬件、计算机软件或这两者的组合)。模块402、404、406、408和410中的任何或所有的组合也是处理电路的示例。
在使用中,规划模块404接收表示目的地412的数据,并且确定表示AV 100为了到达(例如,抵达)目的地412而可以行驶的轨迹414(有时称为路线)的数据。为了使规划模块404确定表示轨迹414的数据,规划模块404从感知模块402、定位模块408和数据库模块410接收数据。
感知模块402使用例如也如图1所示的一个或多个传感器121来识别附近的物理对象。将对象分类(例如,分组成诸如行人、自行车、汽车、交通标志等的类型),并且将包括经分类的对象416的场景描述提供至规划模块404。
规划模块404还从定位模块408接收表示AV位置418的数据。定位模块408通过使用来自传感器121的数据和来自数据库模块410的数据(例如,地理数据)以计算位置来确定AV位置。例如,定位模块408使用来自GNSS(全球导航卫星系统)传感器的数据和地理数据来计算AV的经度和纬度。在实施例中,定位模块408所使用的数据包括具有行车道几何属性的高精度地图、描述道路网络连接属性的地图、描述行车道物理属性(诸如交通速率、交通量、运载工具和自行车车道的数量、车道宽度、车道交通方向、或车道标记类型和场所,或者它们的组合)的地图、以及描述道路特征(诸如十字路口、交通标志或各种类型的其它行驶信号等)的空间场所的地图。在实施例中,高精度地图是通过将数据经由自动或手动注释添加到低精度地图来构造的。
控制模块406接收表示轨迹414的数据和表示AV位置418的数据,并且以将使得AV100行驶轨迹414到达目的地412的方式来操作AV的控制功能420a~420c(例如,转向、油门、制动、点火)。例如,如果轨迹414包括左转,则控制模块406将以如下方式操作控制功能420a~420c:转向功能的转向角度将使得AV 100左转,并且油门和制动将使得AV 100在进行转弯之前暂停并等待经过的行人或运载工具。
自主运载工具输入
图5示出感知模块402(图4)所使用的输入502a-502d(例如,图1中所示的传感器121)和输出504a-504d(例如,传感器数据)的示例。一个输入502a是LiDAR(光检测和测距)系统(例如,图1所示的LiDAR 123)。LiDAR是使用光(例如,诸如红外光等的一道光)来获得与其视线中的物理对象有关的数据的技术。LiDAR系统产生LiDAR数据作为输出504a。例如,LiDAR数据是用于构造环境190的表现的3D或2D点(也称为点云)的集合。
另一输入502b是RADAR(雷达)系统。RADAR是使用无线电波来获得与附近的物理对象有关的数据的技术。RADAR可以获得与不在LiDAR系统的视线内的对象有关的数据。RADAR系统502b产生RADAR数据作为输出504b。例如,RADAR数据是用于构造环境190的表现的一个或多个射频电磁信号。
另一输入502c是照相机系统。照相机系统使用一个或多个照相机(例如,使用诸如电荷耦合器件[CCD]等的光传感器的数字照相机)来获取与附近的物理对象有关的信息。照相机系统产生照相机数据作为输出504c。照相机数据通常采用图像数据的形式(例如,诸如RAW、JPEG、PNG等的图像数据格式的数据)。在一些示例中,照相机系统具有例如为了立体影像(立体视觉)的目的的多个独立照相机,这使得照相机系统能够感知深度。尽管照相机系统所感知的对象在这里被描述为“附近”,但这是相对于AV而言的。在使用中,照相机系统可被配置为“看见”远处的(例如,AV前方的远至1公里以上的)对象。因此,照相机系统可以具有为了感知遥远的对象而优化的诸如传感器和透镜等的特征。
另一输入502d是交通灯检测(TLD)系统。TLD系统使用一个或多个照相机来获得与交通灯、街道标志和提供视觉导航信息的其它物理对象有关的信息。TLD系统产生TLD数据作为输出504d。TLD数据经常采用图像数据的形式(例如,诸如RAW、JPEG、PNG等的图像数据格式的数据)。TLD系统与包含照相机的系统的不同之处在于:TLD系统使用具有宽视场(例如,使用广角镜头或鱼眼镜头)的照相机,以获得与尽可能多的提供视觉导航信息的物理对象有关的信息,使得AV 100有权访问这些对象所提供的所有相关导航信息。例如,TLD系统的视角可以为约120度以上。
在实施例中,使用传感器融合技术来组合输出504a-504d。因而,将个体输出504a-504d提供至AV 100的其它系统(例如,提供至如图4所示的规划模块404),或者采用相同类型(例如,使用相同组合技术或组合相同输出或者这两者)或不同类型(例如,使用不同的各个组合技术或组合不同的各个输出或者这两者)的单个组合输出或多个组合输出的形式,可以将组合输出提供至其它系统。在实施例中,使用早期融合技术。早期融合技术的特征在于:将输出组合,之后将一个或多个数据处理步骤应用到组合输出。在实施例中,使用后期融合技术。后期融合技术的特征在于:在将一个或多个数据处理步骤应用到个体输出之后,将输出组合。
图6示出LiDAR系统602的示例(例如,图5所示的输入502a)。LiDAR系统602从发光器606(例如,激光发射器)发射光604a-604c。LiDAR系统所发射的光通常不在可见光谱中;例如,经常使用红外光。所发射的光604b中的一些光遇到物理对象608(例如,运载工具)并且反射回到LiDAR系统602。(从LiDAR系统发射的光通常不会穿透物理对象,例如,实心形式的物理对象。)LiDAR系统602还具有用于检测反射光的一个或多个光检测器610。在实施例中,与LiDAR系统相关联的一个或多个数据处理系统生成表示LiDAR系统的视场614的图像612。图像612包括表示物理对象608的边界616的信息。这样,图像612用于确定AV附近的一个或多个物理对象的边界616。
图7示出操作中的LiDAR系统602。在该图所示的情境中,AV 100接收采用图像702的形式的照相机系统输出504c和采用LiDAR数据点704的形式的LiDAR系统输出504a。在使用中,AV 100的数据处理系统将图像702与数据点704进行比较。特别地,在数据点704中也识别出在图像702中识别出的物理对象706。这样,AV 100基于数据点704的轮廓和密度来感知物理对象的边界。
图8示出LiDAR系统602的操作的附加细节。如上所述,AV 100基于LiDAR系统602所检测到的数据点的特性来检测物理对象的边界。如图8所示,诸如地面802等的平坦对象将以一致的方式反射从LiDAR系统602发射的光804a-804d。换句话说,由于LiDAR系统602使用一致的间隔发射光,因此地面802将以相同的一致间隔将光反射回到LiDAR系统602。在AV100在地面802上行驶时,在没有东西阻挡道路的情况下,LiDAR系统602将继续检测到由下一个有效地面点806反射的光。然而,如果对象808阻挡道路,则LiDAR系统602所发射的光804e-804f将以不符合预期一致方式的方式从点810a-810b反射。根据该信息,AV 100可以确定为存在对象808。
路径规划
图9示出(例如,如图4所示的)规划模块404的输入和输出之间的关系的框图900。通常,规划模块404的输出是从起点904(例如,源场所或初始场所)到终点906(例如,目的地或最终场所)的路线902。路线902通常由一个或多个路段定义。例如,路段是指要行驶经过街道、道路、公路、驾驶道或适合汽车行驶的其它物理区域的至少一部分的距离。在一些示例中,例如,如果AV 100是诸如四轮驱动(4WD)或全轮驱动(AWD)小汽车、SUV或小型卡车等的越野运载工具,则路线902包括诸如未铺面道路或开阔田野等的“越野”路段。
除路线902之外,规划模块还输出车道级路线规划数据908。车道级路线规划数据908用于在特定时间基于路线902的路段的条件来驶过这些路段。例如,如果路线902包括多车道公路,则车道级路线规划数据908包括轨迹规划数据910,其中AV 100可以使用该轨迹规划数据910以例如基于出口是否临近、多个车道中的一个以上的车道是否存在其它运载工具、或者在几分钟或更少时间的过程中变化的其它因素,来从这多个车道中选择某车道。同样地,在一些实现中,车道级路线规划数据908包括路线902的某路段特有的速率约束912。例如,如果该路段包括行人或非预期交通,则速率约束912可以将AV 100限制到比预期速率慢的行驶速率,例如基于该路段的限速数据的速率。
在实施例中,向规划模块404的输入包括(例如,来自图4所示的数据库模块410的)数据库数据914、当前场所数据916(例如,图4所示的AV位置418)、(例如,用于图4所示的目的地412的)目的地数据918和对象数据920(例如,如图4所示的感知模块402所感知的经分类的对象416)。在实施例中,数据库数据914包括规划时所使用的规则。规则是使用形式语言(例如,使用布尔逻辑)指定的。在AV 100所遇到的任何给定情形中,这些规则中的至少一些规则将适用于该情形。如果规则具有基于AV 100可用的信息(例如,与周围环境有关的信息)所满足的条件,则该规则适用于给定情形。规则可以具有优先级。例如,“如果公路是高速公路,则移动到最左侧车道”这一规则与“如果出口在一英里内临近,则移动到最右侧车道”相比可以具有更低的优先级。
图10示出在路径规划中(例如,由规划模块404(图4))使用的有向图1000。通常,如图10所示的有向图那样的有向图1000用于确定任何起点1002和终点1004之间的路径。在现实世界中,分隔起点1002和终点1004的距离可能相对较大(例如,在两个不同的都市区域中),或者可能相对较小(例如,毗邻城市街区的两个十字路口或多车道道路的两条车道)。
在实施例中,有向图1000具有表示起点1002和终点1004之间的AV 100可能占用的不同场所的节点1006a-1006d。在一些示例中,例如,在起点1002和终点1004表示不同的都市区域时,节点1006a-1006d表示道路的路段。在一些示例中,例如,在起点1002和终点1004表示相同道路上的不同场所时,节点1006a-1006d表示该道路上的不同位置。这样,有向图1000包括不同粒度级别的信息。在实施例中,具有高粒度的有向图也是具有更大规模的另一有向图的子图。例如,起点1002和终点1004相距远(例如,相距许多英里)的有向图的大部分信息处于低粒度,并且该有向图是基于所存储的数据,但该有向图还包括供该有向图中的表示AV 100的视场中的物理场所的一部分用的一些高粒度信息。
节点1006a-1006d不同于无法与节点重叠的对象1008a-1008b。在实施例中,在粒度低时,对象1008a-1008b表示汽车不能驶过的地区,例如无街道或道路的区域。在粒度高时,对象1008a-1008b表示AV 100的视场中的物理对象,例如其它汽车、行人、或AV 100不能与之共用物理空间的其它实体。在实施例中,对象1008a-1008b的一部分或全部是静态对象(例如,不改变位置的对象,诸如街灯或电线杆等)或动态对象(例如,能够改变位置的对象,诸如行人或其它小汽车等)。
节点1006a-1006d通过边缘1010a-1010c连接。如果两个节点1006a-1006b通过边缘1010a连接,则AV 100可以在一个节点1006a和另一节点1006b之间行驶,例如,而不必在到达另一节点1006b之前行驶到中间节点。(当提到AV 100在节点之间行驶时,意味着AV100在由相应节点表示的两个物理位置之间行驶。)边缘1010a-1010c通常是双向的,从某种意义上,AV 100从第一节点行驶到第二节点,或者从第二节点行驶到第一节点。在实施例中,边缘1010a-1010c是单向的,从某种意义上,AV 100可以从第一节点行驶到第二节点,然而AV 100不能从第二节点行驶到第一节点。在边缘1010a-1010c表示例如单向街道、街道、道路或公路的单独车道、或者由于法律或物理约束因而仅能沿一个方向驶过的其它特征的情况下,边缘1010a-1010c是单向的。
在实施例中,规划模块404使用有向图1000来识别由起点1002和终点1004之间的节点和边缘组成的路径1012。
边缘1010a-1010c具有关联成本1014a-1014b。成本1014a-1014b是表示在AV 100选择该边缘的情况下将花费的资源的值。典型的资源是时间。例如,如果一个边缘1010a所表示的物理距离是另一边缘1010b所表示的物理距离的两倍,则第一边缘1010a的关联成本1014a可以是第二边缘1010b的关联成本1014b的两倍。影响时间的其它因素包括预期交通、十字路口的数量、限速等。另一典型的资源是燃料经济性。两个边缘1010a-1010b可以表示相同的物理距离,但例如由于道路条件、预期天气等,因此一个边缘1010a与另一边缘1010b相比需要更多的燃料。
在规划模块404识别起点1002和终点1004之间的路径1012时,规划模块404通常选择针对成本优化的路径,例如,在将边缘的各个成本相加到一起时具有最小总成本的路径。
自主运载工具控制
图11示出(例如,如图4所示的)控制模块406的输入和输出的框图1100。控制模块根据控制器1102而工作,该控制器1102例如包括:与处理器304类似的一个或多个处理器(例如,诸如微处理器或微控制器或这两者等的一个或多个计算机处理器);与主存储器306、ROM 308和存储装置310类似的短期和/或长期数据存储装置(例如,存储器随机存取存储器或闪速存储器或这两者);以及存储器中所存储的指令,这些指令在(例如,由一个或多个处理器)执行时执行控制器1102的操作。
在实施例中,控制器1102接收表示期望输出1104的数据。期望输出1104通常包括速度,例如速率和航向。期望输出1104例如可以基于从(例如,如图4所示的)规划模块404接收到的数据。根据期望输出1104,控制器1102产生可用作油门输入1106和转向输入1108的数据。油门输入1106表示例如通过接合转向踏板或接合另一油门控件来接合AV 100的油门(例如,加速控制)以实现期望输出1104的大小。在一些示例中,油门输入1106还包括可用于接合AV 100的制动器(例如,减速控制)的数据。转向输入1108表示转向角度,例如AV的转向控制(例如,方向盘、转向角致动器或用于控制转向角度的其它功能)应被定位成实现期望输出1104的角度。
在实施例中,控制器1102接收在调整提供至油门和转向的输入时使用的反馈。例如,如果AV 100遇到诸如山丘等的干扰1110,则AV 100的测量速率1112降至低于期望输出速率。在实施例中,任何测量输出1114均被提供至控制器1102,使得例如基于测量速率和期望输出之间的差分1113来进行所需的调整。测量输出1114包括测量位置1116、测量速度1118(包括速率和航向)、测量加速度1120和AV 100的传感器可测量的其它输出。
在实施例中,例如通过诸如照相机或LiDAR传感器等的传感器预先检测与干扰1110有关的信息,并且该信息被提供至预测性反馈模块1122。然后,预测性反馈模块1122将控制器1102可用于相应地调整的信息提供至控制器1102。例如,如果AV 100的传感器检测到(“看见”)山丘,则控制器1102可以使用该信息来准备在适当时间接合油门,以避免显著减速。
图12示出控制器1102的输入、输出和组件的框图1200。控制器1102具有影响油门/制动器控制器1204的操作的速率分析器1202。例如,速率分析器1202根据例如由控制器1102接收到并由速率分析器1202处理后的反馈,来指示油门/制动器控制器1204使用油门/制动器1206进行加速或进行减速。
如本文所使用的,“速率分布”是指定义从速率分析器向油门/制动器控制器的指示的特性的数据。例如,如果规划电路404向控制电路406发送轨迹以使AV 100沿着该轨迹操作,则速率分析器1202针对该轨迹生成相应的速率分布。控制电路406使用由速率分布定义的指示的特性或者通过使用在由速率分布定义的特性的预定阈值内的指示的特性来使AV 100操作。
在实施例中,轨迹的速率分布表征控制电路406将使得AV 100沿着轨迹的一个或多个路段操作的速度。例如,使AV 100根据由速率分析器1202针对轨迹所生成的速率分布而操作的控制电路406使AV 100在未铺面道路或开阔田野的“越野”路段上更缓慢地操作,然后在到达铺面道路的路段时使AV 100加速。在实施例中,控制电路406将使得AV 100沿着轨迹的一个或多个路段操作的速度取决于环境条件(例如,天气、道路的条件、以及行人、其它运载工具和通常对象的可观察到的特性)。在实施例中,可观察到的特性包括所感知到的对象的存在、场所和运动。
在实施例中,轨迹的速率分布表征控制电路406将使得AV 100沿着轨迹的一个或多个路段操作的加速度。与对AV 100沿着轨迹的速度的表征相似,控制电路406可以操作AV100以不同的加速度水平沿着轨迹通过不同路段。在实施例中,轨迹的速率分布表征控制电路406将使得AV 100沿着轨迹的一个或多个路段操作的速度和加速度这两者。
在实施例中,轨迹的速率分布表征控制电路406将使得AV 100沿着轨迹的一个或多个路段操作的加加速度(jerk)。与对AV 100沿着轨迹的加速度和速度的表征相似,控制电路406可以使AV 100以不同的加加速度水平沿着轨迹通过不同路段操作。控制电路406将使得AV 100沿着轨迹的一个或多个路段操作的加加速度可以部分取决于AV 100的乘员的舒适度指标。根据基于舒适度指标的对乘员的感知舒适度水平,在AV 100沿着轨迹操作时,控制电路406减小加加速度。
通常,速率分析器可以根据AV 100处于的驾驶场景来针对给定轨迹生成速率分布,并且可以对速率分析器1202施加条件。影响针对轨迹所生成的速率分布的条件单独地或组合地包括:
1.速率分布的可行性,例如,使AV 100以所选择的速率分布沿着轨迹操作,这对于AV 100而言在自然法则的范围内或者在AV 100的物理或施加限制的范围内从物理上是否是可能的。
2.使AV 100根据速率分布沿着轨迹操作的安全性,例如,使AV 100根据所生成的速率分布沿着轨迹操作,这对于AV 100的乘员或者在AV 100沿着轨迹行驶时接近AV 100的其它人而言是否是安全的。
3.在使AV 100根据速率分布沿着轨迹操作时遵从交通规则和法律,例如,使AV100根据相应的速率分布沿着轨迹操作是否遵守标示限速。
4.在AV100根据速率分布沿着轨迹行驶时的乘员的舒适度,例如,使AV 100根据所选择的速率分布沿着轨迹操作,这是否包括有可能使乘员不舒适的加加速度/减减速度。
5.在使AV 100沿着一个或多个道路操作时的与道路要素的接近和互动。道路要素包括交通标志,这些交通标志包括接近道路的标示交通标志或在道路本身上表示的标志(例如,斑马线)。道路要素可以表示可见度受到限制的十字路口或即将到来的转弯,这会影响速率分析器1202如何针对驾驶场景生成相应的速率分布。
在实施例中,这些条件和其它条件是根据经验(例如,作为所收集的与针对各种轨迹生成的速率分布有关的先前数据的结果)、手动地(例如,作为基于专家意见或个人经验)、或者遵循基于规则的方法来建立的。
通常,在规划电路402生成轨迹并将该轨迹发送至控制电路406之后,速率分析器1202针对该轨迹生成速率分布。结果,规划电路404不可用针对轨迹所生成的速率分布,因为速率分布是在规划电路404已将轨迹发送至控制电路406之后生成的。因此,规划电路404不能响应于所生成的速率分布来更新轨迹,并且传统上也不能准确地估计沿着轨迹的一个或多个路段行驶所需的时间。这至少是因为,作为在AV 100的操作期间规划电路404和控制电路406有权访问传感器数据的不同子集的结果,规划电路404与控制电路406相比可以接收的与AV 100有关的信息更加有限。
理想地,规划电路404考虑到建议轨迹的相应速率分布,而是向控制电路406提出新的轨迹,例如,因为所生成的速率分布很难满足或不满足如上所述的一个或多个施加条件。
如本文所使用的,“建议轨迹”是指AV 100可以行驶、但未被发送至控制电路406以操作AV 100来沿着轨迹行驶的轨迹。规划电路404可以选择建议轨迹以发送至控制电路406。
规划电路404在向控制电路406发送轨迹之前生成许多不同的建议轨迹。在实施例中,如上所述,由于AV 100在不同的驾驶场景中操作,因此规划电路404根据需要生成许多不同的建议轨迹。响应于AV 100在新的驾驶场景中操作,规划电路404每秒多次向控制电路406发送轨迹。在实施例中,规划电路404基于一些预定的适应度函数或通过任何适当的一组准则来选择建议轨迹以发送至控制电路406。
规划电路404首先从可能无限的一组路径和AV 100可以沿着这些路径行驶的轨迹中获得一组可用轨迹。在实施例中,规划电路404通过动态编程中的任何适当技术获得该组可用轨迹,以即使在规划电路404单独检查每个可能的轨迹从计算上不可行的情况下,也获得该组可用轨迹。
然后,规划电路404将一组可用轨迹表示为图。图的各顶点表示地图上的物理场所,并且图的各边缘表示通过该边缘连接的节点所位于的物理场所之间的路径。在实施例中,图附加地包括各顶点处的AV 100的速率分量。规划电路404通过任何适当的图构造算法来构造图。在实施例中,规划电路404通过随机采样方法(例如,RRT或RRT*)来构造图。在实施例中,规划电路404将图形构造为网格。
规划电路404使用任何适当的寻径算法来从可用轨迹的图中寻找最优轨迹。寻径算法包括Dijkstra算法、A*、D*、LPA*以及上述示例中的任何适当的变体。在实施例中,规划电路404选择最优轨迹作为得到AV 100所行驶的最短距离的轨迹。在另一实施例中,规划电路404选择最优轨迹作为得到AV 100行驶所花费的最短时间的轨迹。在实施例中,规划电路404使用任何适当的寻径算法来递增地(即,以路段为单位)寻找最优轨迹。
在实施例中,如果可用轨迹的数量在预定限度内,则规划电路404单独评价各轨迹以寻找最优轨迹。在实施例中,规划电路404将AV 100建模为有限状态机,并且通过评价AV100必须从一个模式切换到另一模式的可能性来从可用轨迹中选择最优轨迹。例如,一个模式可以是“车道跟随”、“车道改变”或“运载工具超车”。规划电路404基于例如由于AV 100正在走走停停的交通中或在其它拥挤道路上操作因此AV 100必须改变模式的可能性来评价各轨迹。
因此,由于规划电路404在最终向控制电路发送轨迹之前生成建议轨迹的许多迭代、并且考虑到轨迹是在AV 100在操作中时生成并被每秒多次发送至控制电路的,因此规划电路404针对各建议轨迹生成相应的速率分布可能从计算上是不可行的。此外,由于在驾驶场景针对AV 100改变时必须向控制电路406提供最新轨迹,因此规划电路404针对规划电路所生成的各建议轨迹从控制电路406接收所生成的速率分布从计算上是不可行的。
另外,控制电路406传统上不能估计速率分布的鲁棒性。具体地,控制电路406不能确定规划电路404响应于接近AV 100的环境的变化(即,在AV 100沿着轨迹行驶时)将调整速率分布的程度。
除了使规划电路404针对各建议轨迹生成相应速率分布的计算不可行性之外,规划电路404也没有接收到足够的数据来生成控制电路406否则有权访问的速率分布。控制电路406接收与AV 100的动力学(例如,AV 100的运动特性)以及AV 100的乘员的舒适度指标有关的信息。在实施例中,不同于规划电路404,控制电路406从AV的各种传感器接收感官信息,这些信息与AV的物理条件(例如,制动)有关。为了处理许多建议轨迹,规划电路可访问较少的数据,因为更多的数据会抑制控制电路依赖于的规划电路连续更新轨迹。
至少由于上述原因,规划电路通常不能在将建议轨迹发送至控制电路之前了解该轨迹的相应速率分布。在实施例中,规划电路通过使用一个或多个启发式以估计速率分析器针对各轨迹将生成的相应速率分布来生成轨迹。
在实施例中,规划电路404在假设速率分析器1202将生成的相应速率分布的“乐观”启发式下生成轨迹。在乐观方法中,规划电路404假定速率分析器1202将针对具有速率分布的最高允许特性(例如,AV 100可以操作所根据的最高速度和最高加速度)的轨迹生成速率分布。由于该估计本身是非常不准确的,因此通过经验导出因素来校正AV 100的估计时间。乐观模型也可能导致规划电路404生成AV 100可能无法执行的、或者对于AV 100中的乘员可能是不安全的轨迹。
在实施例中,规划电路404在“悲观”启发式下生成轨迹,并且假定速率分析器1202将针对具有速率分布的最低允许特性(例如,AV 100可以操作所根据的最低速度和最低加速度)的轨迹生成速率分布。悲观估计可能导致AV 100过于“谨慎地”行动,因此不能沿着某些轨迹行驶,例如,因为该轨迹要求使AV 100操作以通过在迎面而来的车道上短暂加速来超车另一运载工具,这需要最小加速度来安全地进行。
控制器1102还具有影响方向盘控制器1210的操作的横向跟踪控制器1208。例如,横向跟踪控制器1208根据例如由控制器1102接收到并由横向跟踪控制器1208处理后的反馈,来指示方向盘控制器1210调整转向角致动器1212的位置。在实施例中,横向跟踪控制器1208和方向盘控制器1210被实现为组合模块。
控制器1102接收用于确定如何控制油门/制动器1206和转向角致动器1212的多个输入。规划模块404提供控制器1102例如选择AV 100开始操作时的航向并确定在AV 100到达十字路口时驶过哪个道路路段所使用的信息。定位模块408例如将描述AV 100的当前场所的信息提供至控制器1102,使得控制器1102可以确定AV 100是否处于基于正控制油门/制动器1206和转向角致动器1212的方式而预期所处的场所。在实施例中,控制器1102接收来自其它输入1214的信息,例如从数据库、计算机网络等接收到的信息。
速率分布估计
图13示出具有速率分布估计电路1302的控制器1300的输入、输出和组件的框图。在实施例中,控制器1300具有与图12所示的控制器1102相似的组件。具体地,在实施例中,控制器1300的速率分析器、油门/制动器控制器、横向跟踪控制器和方向盘控制器与图12所示的控制器1102的速率分析器1202、油门/制动器控制器1204、横向轨迹控制器1208和方向盘控制器1210相同。控制器1300的结构和各个组件在其它实施例中可以以与上述实施例一致和适当的任何方式不同。
速率分布估计电路1302接收规划电路404所生成的建议轨迹1304a作为输入,并且生成针对建议轨迹1304a的估计速率分布1304b以及针对估计速率分布1304b的置信度得分作为向规划电路404的输出。估计速率分布1304b是在速率分析器1202接收到了建议轨迹1304a作为输入的情况下、速率分析器1202针对建议轨迹1304a将会生成的实际速率分布的估计。
利用速率分布估计电路1302估计速率分布,这允许规划电路404在将建议轨迹发送至控制电路406之前,调整或拒绝建议轨迹。在实施例中,如果估计速率分布1304a表示针对建议轨迹1304a的速率分布将导致AV 100以将会对乘员造成不舒适的方式加速或制动,则规划电路404避免将该建议轨迹发送至控制电路1306。如果规划电路404在将建议轨迹发送至控制电路406之前未接收到估计速率分布1304b,则根据上述的一个或多个条件,规划电路404可能错过了生成更好的轨迹并将该更好的轨迹发送至控制电路406的机会。
速率分布估计电路1302实现机器学习模型1306,并使用该模型来估计输入轨迹的速率分布。速率分布估计电路1302接收到建议轨迹1304a作为输入,并且使用机器学习模型1306的经学习的参数值来生成速率分布估计1304b以及相应的置信度得分作为输出。在实施例中,机器学习模型1306由速率分布估计电路实现,并且通过任何适当的监督学习技术(例如,通过人工神经网络、强化学习、支持矢量机、回归模型或随机森林模型)来训练。
一般而言,通过减少损失函数来在经标记的训练数据上训练机器学习模型,以学习由机器学习模型定义的一个或多个参数的参数值。机器学习模型由速率分布电路1302实现,以使用经学习的参数值来对新输入进行预测。如本文所使用的,“经标记的训练数据”是指数据元素的个体矢量,其中各个体矢量与表示该个体矢量表示什么的各个“标签”相关联。经标记的训练数据可以是手动地(例如,由用户)或者自动地(例如,通过在接收到轨迹之后利用控制电路406的地面实况输出标记定义轨迹的数据)标记的。
例如,神经网络是用于学习机器学习模型1306的参数值的特定机器学习技术的实现。神经网络可以具有由经训练的权重的矩阵表示的多个网络层。如本文所使用的,“网络层”是指互连的处理单元的组,这些处理单元接收输入、根据激活函数处理输入、并产生输出。“输入层”是从神经网络外部的源(例如,用户)接收输入(例如,矢量)的网络层。“输出层”是从神经网络的输入层或隐藏层接收一个或多个输入、并针对神经网络生成最终输出的网络层。神经网络可以具有一个或多个“隐藏层”,这些“隐藏层”是指从神经网络的输入层或另一隐藏层接收输入、并针对神经网络的输出层或另一隐藏层生成输出的网络层。
如本文所使用的,“经训练的权重”是指各网络层处的经学习的参数值,这些经学习的参数值调整网络层处的输入以减少或增加网络层处的输入的重要度。在实施例中,通过使用一个或多个经标记的训练示例进行神经网络的前向传播、然后在各层处通过损失函数计算损失(例如,通过使用随机或批量梯度下降的反向传播),来针对机器学习模型训练权重。更新了权重,以减少表示针对经标记的训练示例(即,标签本身)的预测值和地面实况值之间的差的损失。
作为一个示例,针对所设置的数量的迭代训练机器学习模型1306的权重。作为另一示例,训练机器学习模型1306的权重,直到针对各层所计算出的损失在预定阈值内为止。在训练完成时,权重被称为神经网络的“经训练的权重”。
在实施例中,使用表示规划电路404所生成的轨迹的训练矢量来训练机器学习模型1306的权重。各训练矢量是利用由速率分析器1202针对由训练矢量表示的轨迹所生成的相应速率分布来标记的。使用训练矢量来训练机器学习模型1306的权重,以学习用于针对表示新轨迹的先前未遇到的矢量估计速率分布的参数。通过机器学习1306所生成的输出速率分布被称为针对新轨迹的估计速率分布。
在实施例中,在由被配置为与规划电路404相同或基本上相同的规划电路生成的轨迹的经标记的训练矢量的集合上离线训练机器学习模型1306的权重。经标记的训练数据是在AV 100或其它相似配置的自主运载工具在不同的驾驶场景中操作时、从该AV 100或这些其它相似配置的自主运载工具收集的。例如,在自主运载工具在不同的驾驶场景中操作时,自主运载工具的AV系统生成多个轨迹和针对各轨迹的相应速率分布。在实施例中,自主运载工具的AV系统存储并发送定义成对的轨迹和速率分布的数据。
也可以在规划电路404不可用的经标记的训练数据(例如,如上所述的AV 100的运动特性和AV 100的乘员的舒适度指标)上训练机器学习模型的权重。在实施例中,训练数据定义规划电路404所生成的轨迹、与接近AV 100的经分类的对象有关的信息(即,如以下所述的通过感知管道处理的传感器数据)、以及控制电路406而不是规划电路404可用的运动特性、舒适度指标或其它信息。
在实施例中,利用建议轨迹和AV 100上的速率分析器1202所生成的相应速率分布的对来在线训练机器学习模型1306的权重。例如,在速率分析器1202生成轨迹的速率分布时,速率分布估计电路1302使用所生成的速率分布和相应的轨迹(例如,使用在损失函数上使用具有反向传播的随机梯度下降)来更新机器学习模型1306的权重。在实施例中,速率分布估计电路1302对所生成的对进行分批处理,并且在各批上重新训练机器学习模型1306。
估计速率分布1304b是速率分析器1202针对建议轨迹1304a将生成的实际速率分布的近似。因此,在实施例中,速率分布估计电路1302附加地生成置信度得分作为估计速率分布1304b的一部分。规划电路404使用针对估计速率分布1304b的置信度得分来确定在决定将建议轨迹1304a发送至控制电路406时是否依赖于估计速率分布1304b。
在实施例中,如果置信度得分低(例如,低于预定阈值),则规划电路404被配置为(例如,通过上述的乐观或悲观方法)“回退”到生成轨迹的另一模型。在另一实施例中,规划电路404被配置为生成新建议轨迹并将该新建议轨迹发送至速率分布估计电路1302。作为响应,速率分布估计电路1302生成并发送具有新置信度得分的新速率分布估计。在另一实施例中,规划电路404被配置为基于相应置信度得分来评价新速率分布估计,以确定是否将新建议轨迹发送至控制电路406。
在实施例中,即使具有低置信度得分的建议轨迹在其它方面是安全的、对于乘员而言是舒适的且是合法的,规划电路404也拒绝该建议轨迹。这是因为,低置信度是不确定估计的标志,这通常对AV 100的环境的变化不太稳健。因此,在实施例中,规划电路404选择与一个轨迹相比具有更高的置信度得分的另一轨迹,即使该一个轨迹在上述的条件方面更为有利。
在实施例中,速率分布估计电路1302通过估计建议轨迹1304a与在速率分布器1202接收到建议轨迹1304a作为输入的情况下速率分布器1202将生成的实际速率分布之间的方差,来针对建议轨迹1304a生成置信度得分。例如,估计高方差表示建议轨迹1304a不是可靠的估计,因此速率分布估计电路1302将向速率分布估计1304b指派低置信度得分。
相反,由于建议轨迹1304a与针对相同或相似驾驶场景的其它速率分布估计相比相差不大,因此估计低方差表示建议轨迹1304a是可靠的估计。因此,速率分布估计电路1302可以向速率分布估计1304b指派高置信度得分。
在实施例中,在表示规划电路404不可用的数据的训练矢量上训练机器学习模型1306的权重。更多的由训练矢量表示的特征(例如,表示AV 100的物理特性的特征)可用于训练更准确的参数。
在实施例中,这些附加特征表示速率分析器1202通过(以下所述的)感知-控制器管道1404所接收到的数据,并且用于响应于接收到轨迹来生成速率分布。因此,尽管这些附加特征表示在AV 100的操作期间未提供至规划电路404的数据,但在包括这些附加特征的矢量上训练机器学习模型1306的权重对于学习机器学习模型1306的准确参数值是有用的。
图14示出用于规划电路404和控制电路406的规划器-控制器管道1404的框图。如本文所使用的,“规划器-控制器管道1404”是指从传感器121发送至规划电路404和控制电路406的所接收到的数据。规划器-控制器管道1404还包括在规划电路404接收到数据之前对来自传感器121的数据进行的任何处理。在实施例中,规划器-控制器管道1404还包括由控制电路406而不是规划电路404处理的附加信息1406。
在实施例中,经由规划器-控制器管道1404、替代感知管道1408和规划器管道1410的任意组合来处理来自传感器121的数据。如以上以及以下进一步详细地所述,在实施例中,规划电路404从控制电路406不可用的规划器管道1410接收信息。同样,在实施例中,控制电路406从规划电路404不可用的替代感知管道1408接收信息。
如针对图4所示,该数据包括传感器121所收集到的数据以及数据库模块410中所存储的数据。在实施例中,感知-控制器管道1404、替代感知管道1408和规划器管道1410包括如图4所示的模块的任何组合中的相应处理电路,以通过相应管道处理数据。
在实施例中,规划器-控制器管道1404绕过规划电路404,这由虚线1406示出。在实施例中,由于规划电路404不需要同样多的信息来生成控制电路406的轨迹,因此绕过了规划电路404。由于规划电路404在向控制电路406发送轨迹之前生成许多轨迹,因此向规划电路404发送较少的数据,以促进许多不同轨迹的快速处理。
在实施例中,规划器-控制器管道1404包括感知电路402,该感知电路402可以使用一个或多个传感器121来对物理对象进行分类。经分类的对象416可被提供至规划电路404,但可能无法提供至控制电路406,因为控制电路406不需要表示经分类的对象416的数据来使AV 100沿着轨迹操作。在实施例中,规划器管道1410包括感知电路402,并且处理仅由规划电路404接收到的来自传感器121的数据(例如,与经分类的对象有关的信息)。
在实施例中,替代感知管道1408处理仅由控制电路406而不是规划电路404接收到的来自传感器121的数据。例如,控制电路406接收定义接近AV 100的环境的表示的数据,该数据促进控制电路406在AV 100沿着轨迹行驶时对AV 100的操作进行快速且准确的调整。在实施例中,一个表示是通过动态占用网格(“DOG”),其中,与在基于场论的流体动力学中如何对流体建模相似,将接近AV 100的对象建模为颗粒的集合。在通过引用而被全部包含于此的2019年4月24日提交的标题为“FIELD THEORY BASED PERCEPTION FOR AUTONOMOUSVEHICLES”的美国临时专利申请62/837,902中提供了DOG的详细论述。在这些实施例中,由于规划电路404不能处理或不能高效地处理来自管道1408的数据,因此通过替代感知管道1408处理的数据未被传递通过规划电路404。
在实施例中,规划器-控制器管道1406包括定位模块408。定位模块408将AV 100的位置提供至电路404和406中的一个或这两者。在实施例中,规划器-控制器管道1406包括例如如以上针对图4所述的来自数据库电路410的数据。在本实施例中,规划电路404和控制电路406这两者可能都需要与AV 100的位置有关的信息来进行各自的功能。
通过规划器-控制器管道1406处理后的数据可用于创建训练矢量以训练机器学习模型1306。这些训练矢量可以表示轨迹、以及基于由控制电路406而不是规划电路404接收到的信息的附加特征,即,由于这些附加特征由通过绕过规划电路404的旁路管道1406的数据来表示。在操作中,在规划电路将建议轨迹1304a发送至控制电路406时,规划电路404将生成无旁路管道1406中的数据的建议轨迹。然而,即使在具有附加特征的训练矢量上训练机器学习模型1306,速率分布估计电路1302也返回估计速率分布1304b。
在实施例中,速率分布估计电路1302存储并使用先前遇到的驾驶场景和在训练期间测量到的速率分布之间的关联,以针对AV 100的当前驾驶场景的建议轨迹提供速率分布估计。例如,AV 100的乘员可以每天使用AV 100,例如,用于上下班通勤。上下班通勤可以涉及常规性地(例如,每天)沿着相同的一个或多个道路行驶到达目的地。在实施例中,规划电路404生成与在AV100的这些常规操作期间生成的其它轨迹相同或相似的轨迹。
在实施例中,速率分布估计电路1302考虑与具有低置信度得分的速率分布估计相对应的AV 100的场所。较低的置信度得分例如可以对应于环境的条件(例如,一般为低能见度或遮挡),或者对应于AV 100本身的条件(例如,传感器在某些环境中与在其它环境中相比生成误报的倾向更高)。
在实施例中,速率分布估计电路1302被配置为跟踪速率分布估计电路1302接收到特定建议轨迹的频率。在识别为在一定时间段内接收到了一定次数的特定建议轨迹时,速率分布估计电路1302存储AV 100正在驾驶的驾驶场景与估计速率分布之间的关联。
速率分布估计电路1302可以存储速率分布和驾驶场景之间的关联,作为快速查找所用的任何适当数据结构的一部分。在实施例中,该数据结构是哈希表。在实施例中,数据结构是关联数组。
在实施例中,在存储所遇到的速率分布和相应的驾驶场景之后,速率分布估计电路1302接收到规划电路404响应于当前驾驶场景而生成的新建议轨迹。速率分布估计电路1302将当前驾驶场景与各自同相应的速率分布估计相关联的所存储的驾驶场景进行比较。在将当前驾驶场景与所存储的驾驶场景进行比较时,速率分布估计电路1302识别在相似度阈值内与该驾驶场景相似的所存储的驾驶场景。
例如并且在实施例中,速率分布估计电路1302通过比较当前驾驶场景和另一驾驶场景的各单独条件,来确定当前驾驶场景是否在与另一驾驶场景的相似度阈值内。两个驾驶场景是相似的,因为这两者都表示能见度高且接近AV 100的物理障碍物少的环境。在实施例中,相似度阈值是根据经验确定的。
在实施例中,如果速率分布估计电路1302识别出所存储的驾驶场景,则针对建议轨迹的速率分布估计是与所存储的驾驶场景相关联的速率分布估计。通过存储并检索针对常见驾驶场景的速率分布估计,速率分布估计电路1302与生成新估计相比针对规划电路404更快地获得速率分布估计。
图15是表示用于使用估计速率分布来使运载工具沿着轨迹操作的处理1500的流程图。在实施例中,运载工具是图1所示的自主运载工具100,并且处理1500由规划电路和控制电路(诸如图4所示的规划电路404和控制电路406等)执行。
规划电路获得建议轨迹并将该建议轨迹发送至控制电路(步骤1502)。
规划电路获得估计速率分布和针对速率分布估计的置信度得分(步骤1504)。如以上参考图13所述,控制电路的速率分布估计电路使用机器学习模型的经学习的参数值来处理建议轨迹,以获得速率分布估计。此外,控制电路通过速率分布估计电路可以基于估计速率分布与速率分布器所生成的其它速率分布之间的方差来生成置信度得分。在实施例中,速率分布估计电路针对具有与建议轨迹相似的参数值的轨迹生成多个速率分布。这多个速率分布中的各速率分布之间的方差是针对估计速率分布的置信度得分。在实施例中,速率分布估计电路通过使如在轨迹中表示的AV 100的位置或运动特性递增或递减来改变建议轨迹,然后计算该轨迹的相应速率分布估计。通常,方差越小,针对估计速率分布的置信度得分越高。
例如,控制电路可以进行主成分分析以确定方差,然后确定针对估计速率分布的置信度得分。主成分分析是指通过将各数据元素转换成表示该数据元素的主成分的相应一组值而对一组数据进行的统计技术。将各数据元素的主成分与其它数据元素的主成分进行比较,以确定各数据元素之间的方差。
规划电路确定针对速率分布估计的置信度得分是否满足预定的置信度得分阈值(决定菱形1506)。如以上参考图13所述,置信度得分可以是根据经验确定的。
根据确定为置信度得分的确满足预定阈值,规划电路向控制电路发送建议轨迹,并且控制电路反过来使运载工具根据该建议轨迹操作(步骤1508)。
根据确定为置信度得分不满足预定阈值,在实施例中,规划电路使用启发式来获得新建议轨迹(步骤1510)。例如,如上所述,启发式可以是悲观或乐观的启发式。在进行步骤1510之后,规划电路向控制电路发送新建议轨迹,并且控制电路使运载工具根据该新建议轨迹操作(步骤1508)。
根据确定为置信度得分不满足预定阈值,在实施例中,规划电路获得新建议轨迹(步骤1512)。规划电路可以重复步骤1504,以获得针对新建议轨迹的估计速率分布和置信度得分(步骤1504)。
在先前描述中,已经参考许多具体细节描述了本发明的实施例,这些具体细节可因实现而不同。因此,说明书和附图应被视为说明性的,而非限制性意义的。本发明范围的唯一且排他的指示符、以及申请人期望是本发明范围的内容是以发布此类权利要求的具体形式从本申请发布的权利要求书的字面和等效范围,包括任何后续校正。本文中明确阐述的用于被包括在此类权利要求中的术语的任何定义应当以此类术语如在权利要求书中所使用的意义为准。另外,当我们在先前的说明书或所附权利要求书使用术语“还包括”时,该短语的下文可以是附加的步骤或实体、或先前所述的步骤或实体的子步骤/子实体。
Claims (12)
1.一种计算机实现的方法,包括:
利用运载工具上的规划电路,响应于驾驶场景来获得针对所述运载工具的建议轨迹;
利用所述规划电路来获得估计速率分布和置信度得分,其中所述置信度得分表示所述估计速率分布与由控制电路针对所述建议轨迹将生成的实际速率分布的相似度;
确定所述置信度得分是否满足置信度阈值;以及
根据确定为所述置信度得分超过所述置信度阈值,利用所述运载工具上的控制电路来使所述运载工具沿着所述建议轨迹操作。
2.根据权利要求1所述的计算机实现的方法,还包括:
根据确定为所述置信度得分不满足所述置信度阈值:
利用所述规划电路来基于预定速率分布启发式获得第二轨迹,以及
利用所述控制电路来使所述运载工具沿着所述第二轨迹操作。
3.根据权利要求2所述的计算机实现的方法,其中,所述预定速率分布启发式是乐观启发式。
4.根据权利要求2所述的计算机实现的方法,其中,所述预定速率分布启发式是悲观速率分布启发式。
5.根据权利要求1至4中任一项所述的计算机实现的方法,其中,利用所述规划电路获得估计速率分布和置信度得分包括:
利用所述控制电路来接收对所述估计速率分布的查询,包括定义所述驾驶场景的数据和所述建议轨迹;
利用所述控制电路,使用所述建议轨迹和定义所述驾驶场景的数据来生成所述估计速率分布;以及
利用所述控制电路来生成所述置信度得分。
6.根据权利要求5所述的计算机实现的方法,其中,利用所述控制电路使用所述建议轨迹和定义所述驾驶场景的数据来生成所述估计速率分布包括:
使用经训练的模型来生成所述估计速率分布,其中所述经训练的模型表示多个轨迹和多个速率分布之间的多个关联,以及其中所述多个速率分布中的各速率分布是由所述控制电路根据所述多个轨迹中的相应轨迹生成的。
7.根据权利要求6所述的计算机实现的方法,其中,
所述经训练的模型是在由被配置为接收来自第一感知管道的数据的控制电路生成的第二多个速率分布上训练的,以及
利用所述规划电路接收所述建议轨迹包括:使用所述第一感知管道中的数据来接收所述建议轨迹。
8.根据权利要求7所述的计算机实现的方法,其中,
所述控制电路进一步被配置用于接收所述第一感知管道不可用的来自第二感知管道的数据。
9.根据权利要求1至8中任一项所述的计算机实现的方法,其中,利用所述控制电路生成所述置信度得分包括:
从多个速率分布的主成分分析获得一组主成分;以及
生成所述置信度得分作为所述一组主成分和所述估计速率分布之间的方差。
10.一种系统,包括:
控制电路,其被配置用于:
获得轨迹,
使运载工具沿着所述轨迹操作,以及
生成速率分布,所述速率分布表示在所述控制电路使所述运载工具沿着所述轨迹操作时、所述运载工具将具有的速度;以及
规划电路,其被配置用于:
响应于驾驶场景来获得针对所述运载工具的建议轨迹,
获得估计速率分布和置信度得分,其中所述置信度得分表示所述估计速率分布与由所述控制电路针对所述建议轨迹将生成的实际速率分布的相似度,以及
确定所述置信度得分是否满足置信度阈值;
其中,所述控制电路进一步被配置用于根据确定为所述置信度得分满足所述置信度阈值,使所述运载工具沿着所述建议轨迹操作。
11.根据权利要求10所述的系统,其中,所述规划电路和所述控制电路进一步被配置用于进行根据权利要求2至9中的任一项所述的方法。
12.一种存储有一个或多个程序的计算机可读存储介质,所述一个或多个程序供第一装置的一个或多个处理器执行,所述一个或多个程序包括指令,所述指令在由所述一个或多个处理器执行时,使得所述第一装置进行根据权利要求1至9中的任一项所述的方法。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962854284P | 2019-05-29 | 2019-05-29 | |
US62/854,284 | 2019-05-29 | ||
US201962906691P | 2019-09-26 | 2019-09-26 | |
US62/906,691 | 2019-09-26 | ||
US16/880,967 US11814046B2 (en) | 2019-05-29 | 2020-05-21 | Estimating speed profiles |
US16/880,967 | 2020-05-21 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112014859A true CN112014859A (zh) | 2020-12-01 |
Family
ID=71526205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010476119.1A Pending CN112014859A (zh) | 2019-05-29 | 2020-05-29 | 估计速率分布 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20240075927A1 (zh) |
KR (3) | KR102358923B1 (zh) |
CN (1) | CN112014859A (zh) |
DE (1) | DE102020114306A1 (zh) |
GB (3) | GB2587454B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11694304B2 (en) * | 2019-11-26 | 2023-07-04 | Samsung Electronics Co., Ltd. | Jointly learning visual motion and confidence from local patches in event cameras |
US20220396289A1 (en) * | 2021-06-15 | 2022-12-15 | Nvidia Corporation | Neural network path planning |
DE102021134155B3 (de) * | 2021-12-21 | 2023-02-09 | Cariad Se | Verfahren und Prozessorschaltung zur Verbrauchsoptimierung von vollautomatisierten oder teilautomatisierten Fahrmanövern eines Kraftfahrzeugs sowie entsprechend ausgestattetes Kraftfahrzeug und System |
KR102445049B1 (ko) * | 2022-04-15 | 2022-09-21 | 국방과학연구소 | 단일 신경망 추정 자율주행 차량의 모델 예측 제어 방법 및 모델 예측 제어 시스템 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140277835A1 (en) * | 2013-03-13 | 2014-09-18 | Ford Global Technologies, Llc | Route navigation with optimal speed profile |
US20180292222A1 (en) * | 2017-04-07 | 2018-10-11 | TuSimple | System and method for path planning of autonomous vehicles based on gradient |
US20180364725A1 (en) * | 2017-06-19 | 2018-12-20 | Hitachi, Ltd. | Real-time vehicle state trajectory prediction for vehicle energy management and autonomous drive |
US20190034794A1 (en) * | 2017-07-27 | 2019-01-31 | Waymo Llc | Neural Networks for Vehicle Trajectory Planning |
CN109410586A (zh) * | 2018-12-13 | 2019-03-01 | 中南大学 | 一种基于多元数据融合的交通状态检测方法 |
US20190072966A1 (en) * | 2017-09-07 | 2019-03-07 | TuSimple | Prediction-based system and method for trajectory planning of autonomous vehicles |
US20190129436A1 (en) * | 2017-10-28 | 2019-05-02 | TuSimple | System and method for real world autonomous vehicle trajectory simulation |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4525670B2 (ja) * | 2006-11-20 | 2010-08-18 | トヨタ自動車株式会社 | 走行制御計画生成システム |
EP2537727B1 (en) * | 2011-06-22 | 2015-03-11 | Volvo Car Corporation | Method for estimating a speed profile for a vehicle |
KR102050957B1 (ko) * | 2013-11-29 | 2019-12-02 | 현대엠엔소프트 주식회사 | 휴리스틱을 이용한 주행 경로 탐색 장치 및 방법 |
US9663111B2 (en) * | 2014-05-30 | 2017-05-30 | Ford Global Technologies, Llc | Vehicle speed profile prediction using neural networks |
US9915948B2 (en) | 2016-07-14 | 2018-03-13 | Mitsubishi Electric Research Laboratories, Inc. | System and method for controlling motion of vehicle |
US10661805B2 (en) * | 2016-11-22 | 2020-05-26 | Samsung Electronics Co., Ltd. | Vehicle control unit (VCU) and operating method thereof |
US10579063B2 (en) * | 2017-07-21 | 2020-03-03 | Uatc, Llc | Machine learning for predicting locations of objects perceived by autonomous vehicles |
US10562538B2 (en) * | 2017-11-22 | 2020-02-18 | Uatc, Llc | Object interaction prediction systems and methods for autonomous vehicles |
-
2020
- 2020-05-28 KR KR1020200064549A patent/KR102358923B1/ko active IP Right Grant
- 2020-05-28 GB GB2008016.4A patent/GB2587454B/en active Active
- 2020-05-28 GB GB2218647.2A patent/GB2611225B/en active Active
- 2020-05-28 DE DE102020114306.0A patent/DE102020114306A1/de active Pending
- 2020-05-28 GB GB2116006.4A patent/GB2601060B/en active Active
- 2020-05-29 CN CN202010476119.1A patent/CN112014859A/zh active Pending
-
2022
- 2022-01-28 KR KR1020220012918A patent/KR102453672B1/ko active IP Right Grant
- 2022-10-06 KR KR1020220127673A patent/KR102518680B1/ko active IP Right Grant
-
2023
- 2023-11-13 US US18/388,878 patent/US20240075927A1/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140277835A1 (en) * | 2013-03-13 | 2014-09-18 | Ford Global Technologies, Llc | Route navigation with optimal speed profile |
US20180292222A1 (en) * | 2017-04-07 | 2018-10-11 | TuSimple | System and method for path planning of autonomous vehicles based on gradient |
US20180364725A1 (en) * | 2017-06-19 | 2018-12-20 | Hitachi, Ltd. | Real-time vehicle state trajectory prediction for vehicle energy management and autonomous drive |
US20190034794A1 (en) * | 2017-07-27 | 2019-01-31 | Waymo Llc | Neural Networks for Vehicle Trajectory Planning |
US20190072966A1 (en) * | 2017-09-07 | 2019-03-07 | TuSimple | Prediction-based system and method for trajectory planning of autonomous vehicles |
US20190129436A1 (en) * | 2017-10-28 | 2019-05-02 | TuSimple | System and method for real world autonomous vehicle trajectory simulation |
CN109410586A (zh) * | 2018-12-13 | 2019-03-01 | 中南大学 | 一种基于多元数据融合的交通状态检测方法 |
Non-Patent Citations (1)
Title |
---|
ALEKSANDER SADIKOV, ET AL: "Pessimistic Heuristics Beat Optimistic Ones in Real-Time Search", PROCEEDINGS, vol. 141, pages 148 - 152 * |
Also Published As
Publication number | Publication date |
---|---|
GB202008016D0 (en) | 2020-07-15 |
KR20220139850A (ko) | 2022-10-17 |
GB2611225B (en) | 2023-10-18 |
GB2601060B (en) | 2023-02-01 |
KR20220038301A (ko) | 2022-03-28 |
US20240075927A1 (en) | 2024-03-07 |
GB2587454A (en) | 2021-03-31 |
KR102518680B1 (ko) | 2023-04-05 |
KR102453672B1 (ko) | 2022-10-11 |
GB202218647D0 (en) | 2023-01-25 |
GB2601060A (en) | 2022-05-18 |
GB2587454B (en) | 2021-12-29 |
KR20200138673A (ko) | 2020-12-10 |
GB2611225A (en) | 2023-03-29 |
DE102020114306A1 (de) | 2020-12-03 |
KR102358923B1 (ko) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111915917B (zh) | 计算机实现的方法、存储介质和运载工具 | |
KR102532546B1 (ko) | 미리 계산되거나 동적으로 생성된 궤적 뱅크로부터의 궤적 예측 | |
US11814046B2 (en) | Estimating speed profiles | |
CN113165668A (zh) | 利用机器学习使用运动规划来操作运载工具 | |
US11325592B2 (en) | Operation of a vehicle using multiple motion constraints | |
CN113196291A (zh) | 自动选择用于注释的数据样本 | |
CN112417636A (zh) | 计算机实现的方法和用于运载工具自行操作的系统 | |
KR102518680B1 (ko) | 속력 프로파일 추정 | |
US11731653B2 (en) | Conditional motion predictions | |
CN113044025A (zh) | 用于运载工具的安全系统 | |
CN115328110A (zh) | 用于自主运载工具的系统和方法以及存储介质 | |
CN114812589A (zh) | 用于运载工具的方法、自主运载工具和存储介质 | |
CN114510020A (zh) | 用于运载工具的方法、自主运载工具和存储介质 | |
CN112394384A (zh) | 基于环境的预定义特征的定位 | |
KR20220042038A (ko) | 교정 정보를 사용한 av 경로 계획 | |
CN114812586A (zh) | 用于运载工具的系统、方法和存储介质 | |
CN117083575A (zh) | 轨迹检查器 | |
CN115079687A (zh) | 用于自主运载工具的系统、方法和存储介质 | |
CN113196356A (zh) | 交通灯估计 | |
CN115220439A (zh) | 用于运载工具的系统和方法以及存储介质 | |
CN115077543A (zh) | 运载工具及其方法和存储介质 | |
CN114938674A (zh) | 基于活动来对感知对象进行分类 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20201211 Address after: Massachusetts, USA Applicant after: Dynamic ad Co., Ltd Address before: Babado J San Michaele Applicant before: Delphi Technologies, Inc. |
|
TA01 | Transfer of patent application right |