CN112417636A - 计算机实现的方法和用于运载工具自行操作的系统 - Google Patents

计算机实现的方法和用于运载工具自行操作的系统 Download PDF

Info

Publication number
CN112417636A
CN112417636A CN202010858470.7A CN202010858470A CN112417636A CN 112417636 A CN112417636 A CN 112417636A CN 202010858470 A CN202010858470 A CN 202010858470A CN 112417636 A CN112417636 A CN 112417636A
Authority
CN
China
Prior art keywords
vehicle
autonomous vehicle
data
driving
computer system
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
Application number
CN202010858470.7A
Other languages
English (en)
Inventor
A·森西
K·斯卢茨基
A·阿莎·德维
宣蔡哲
陈志良
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Motional AD LLC
Original Assignee
Motional AD LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Motional AD LLC filed Critical Motional AD LLC
Publication of CN112417636A publication Critical patent/CN112417636A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0011Planning or execution of driving tasks involving control alternatives for a single driving scenario, e.g. planning several paths to avoid obstacles
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0125Traffic data processing
    • G08G1/0133Traffic data processing for classifying traffic situation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Purposes 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/18Propelling the vehicle
    • B60W30/18009Propelling the vehicle related to particular drive situations
    • B60W30/18163Lane change; Overtaking manoeuvres
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K35/00Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K35/00Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
    • B60K35/20Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor
    • B60K35/21Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor using visual output, e.g. blinking lights or matrix displays
    • B60K35/22Display screens
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60KARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
    • B60K35/00Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
    • B60K35/20Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor
    • B60K35/28Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor characterised by the type of the output information, e.g. video entertainment or vehicle dynamics information; characterised by the purpose of the output information, e.g. for attracting the attention of the driver
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Purposes 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/10Path keeping
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Purposes 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/18Propelling the vehicle
    • B60W30/18009Propelling the vehicle related to particular drive situations
    • B60W30/18154Approaching an intersection
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Purposes 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/18Propelling the vehicle
    • B60W30/18009Propelling the vehicle related to particular drive situations
    • B60W30/18159Traversing an intersection
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Estimation 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/02Estimation 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 ambient conditions
    • B60W40/04Traffic conditions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Estimation 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/08Estimation 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 drivers or passengers
    • B60W40/09Driving style or behaviour
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Details 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/08Interaction between the driver and the control system
    • B60W50/14Means for informing the driver, warning the driver or prompting a driver intervention
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0013Planning or execution of driving tasks specially adapted for occupant comfort
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • B60W60/0015Planning or execution of driving tasks specially adapted for safety
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/005Handover processes
    • B60W60/0051Handover processes from occupants to vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/60Intended control result
    • G05D1/617Safety or protection, e.g. defining protection zones around obstacles or avoiding hazards
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/80Arrangements for reacting to or preventing system or operator failure
    • G05D1/81Handing over between on-board automatic and on-board manual control
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0108Measuring and analyzing of parameters relative to traffic conditions based on the source of data
    • G08G1/0112Measuring and analyzing of parameters relative to traffic conditions based on the source of data from the vehicle, e.g. floating car data [FCD]
    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/01Detecting movement of traffic to be counted or controlled
    • G08G1/0104Measuring and analyzing of parameters relative to traffic conditions
    • G08G1/0137Measuring and analyzing of parameters relative to traffic conditions for specific applications
    • G08G1/0145Measuring and analyzing of parameters relative to traffic conditions for specific applications for active traffic flow control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Details 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/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • B60W2050/0005Processor details or data handling, e.g. memory registers or chip architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Details 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/0062Adapting control system settings
    • B60W2050/0063Manual parameter input, manual setting means, manual initialising or calibrating means
    • B60W2050/0064Manual parameter input, manual setting means, manual initialising or calibrating means using a remote, e.g. cordless, transmitter or receiver unit, e.g. remote keypad or mobile phone
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Details 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/0062Adapting control system settings
    • B60W2050/0075Automatic parameter input, automatic initialising or calibrating means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Details 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/08Interaction between the driver and the control system
    • B60W50/14Means for informing the driver, warning the driver or prompting a driver intervention
    • B60W2050/146Display means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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
    • B60W2400/00Indexing codes relating to detected, measured or calculated conditions or factors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Input parameters relating to overall vehicle dynamics
    • B60W2520/06Direction of travel
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Input parameters relating to overall vehicle dynamics
    • B60W2520/10Longitudinal speed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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
    • B60W2540/00Input parameters relating to occupants
    • B60W2540/30Driving style
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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
    • B60W2554/00Input parameters relating to objects
    • B60W2554/40Dynamic objects, e.g. animals, windblown objects
    • B60W2554/404Characteristics
    • B60W2554/4042Longitudinal speed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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
    • B60W2554/00Input parameters relating to objects
    • B60W2554/80Spatial relation or speed relative to objects
    • B60W2554/802Longitudinal distance
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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
    • B60W2555/00Input parameters relating to exterior conditions, not covered by groups B60W2552/00, B60W2554/00
    • B60W2555/60Traffic rules, e.g. speed limits or right of way
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Input parameters relating to data
    • B60W2556/05Big data
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT 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/00Input parameters relating to data
    • B60W2556/10Historical data
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60YINDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
    • B60Y2300/00Purposes or special features of road vehicle drive control systems
    • B60Y2300/10Path keeping
    • B60Y2300/12Lane keeping
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60YINDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
    • B60Y2300/00Purposes or special features of road vehicle drive control systems
    • B60Y2300/18Propelling the vehicle
    • B60Y2300/18008Propelling the vehicle related to particular drive situations
    • B60Y2300/18158Approaching intersection
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60YINDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
    • B60Y2300/00Purposes or special features of road vehicle drive control systems
    • B60Y2300/18Propelling the vehicle
    • B60Y2300/18008Propelling the vehicle related to particular drive situations
    • B60Y2300/18166Overtaking, changing lanes

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Analytical Chemistry (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Combustion & Propulsion (AREA)
  • Game Theory and Decision Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Business, Economics & Management (AREA)
  • Medical Informatics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Hardware Design (AREA)
  • Traffic Control Systems (AREA)

Abstract

本发明涉及计算机实现的方法和用于运载工具自行操作的系统,提供用于当自主运载工具在道路上遇到各种场景时、使用人类驾驶行为来辅助自主运载工具的决策的技术。针对各场景,可以基于控制自主运载工具在该场景中如何进行机动动作的人类驾驶行为来生成模型。作为使用这些模型的结果,可以提高自主运载工具的可靠性和安全性。另外,由于模型被编程到自主运载工具中,因此在许多情况下,自主运载工具无需消耗资源来实现复杂的计算以实时地确定驾驶行为。

Description

计算机实现的方法和用于运载工具自行操作的系统
技术领域
本说明书涉及数据驱动的规则手册。
背景技术
自主运载工具与人类驾驶运载工具相比存在益处,例如减少道路交通事故死伤人数、交通拥堵、停车拥堵和考虑燃料效率。在作出驾驶决定时,典型的自主运载工具系统考虑到自主运载工具系统通过利用传感器数据而知晓处于运载工具的环境中的、周围环境的对象(诸如其它运载工具和障碍物等)。然而,自主运载工具系统可以受益于使用与人类驾驶行为有关的数据。
发明内容
通常,本发明提供用于使用人类驾驶行为、在自主运载工具在道路上遇到各种场景时辅助自主运载工具的决策的技术。更具体地,本发明论述了用于对驾驶通过非受控交通枢纽时、在驾驶超越停放的运载工具时、以及在存在乱穿马路的人的情况下驾驶时的人类行为进行建模的实施例等。
这些和其它方面、特征和实施例可被表示为方法、设备、系统、组件、程序产品、用于进行功能的部件或步骤以及其它方式,并且从以下的包括权利要求书的说明书将变得明显。
附图说明
图1示出具有自主能力的自主运载工具的示例。
图2例示示例“云”计算环境。
图3例示计算机系统。
图4示出自主运载工具的示例架构。
图5示出感知模块可以使用的输入和输出的示例。
图6示出LiDAR系统的示例。
图7示出操作中的LiDAR系统。
图8示出LiDAR系统的操作的附加细节。
图9示出规划模块的输入和输出之间的关系的框图。
图10示出路径规划中所使用的有向图。
图11示出控制模块的输入和输出的框图。
图12示出控制器的输入、输出和组件的框图。
图13示出自主运载工具试图在非受控交通交叉路口处合并(merge)的示例。
图14示出计算机系统为了生成用以驾驶通过非受控交通交叉路口的自主运载工具驾驶模型而可以采取的动作。
图15示出自主运载工具试图经过相同车道中的静止运载工具的示例。
图16示出计算机系统为了生成用以驾驶通过相同车道中的静止运载工具的自主运载工具驾驶模型而可以采取的动作。
图17示出用于当自主运载工具正在包括两个车道(其中相邻车道具有相同方向上的交通)的道路上驾驶时避开乱穿马路的人的场景。
图18示出用于当自主运载工具正在包括两个车道(其中相邻车道具有相反方向上的交通)的道路上驾驶时避开乱穿马路的人的场景。
图19示出用于当自主运载工具正在具有单个车道的道路上驾驶时避开乱穿马路的人的场景。
图20示出计算机系统为了生成用以避开实体(例如,避开乱穿马路的人、动物、骑车者或另一合适的实体)的自主运载工具驾驶模型而可以采取的动作。
图21示出自主运载工具为了使用用以驾驶通过非受控交通交叉路口的自主运载工具驾驶模型而可以进行的动作。
图22示出自主运载工具为了使用用以驾驶超越相同车道中的静止运载工具的自主运载工具驾驶模型而可以进行的动作。
图23示出自主运载工具为了使用用以避开相同车道中的实体(例如,行人)的自主运载工具驾驶模型而可以进行的动作。
图24示出计算机系统为了生成针对特定交通机动动作的人类驾驶行为的模型而可以进行的动作。
图25示出描述多个手动操作运载工具的驾驶行为的一个可能数据集。
具体实施方式
在以下描述中,为了解释的目的,阐述了许多具体细节,以便提供对本发明的透彻理解。然而,显而易见的是,本发明可以在没有这些具体细节的情况下实施。在其它实例中,众所周知的构造和装置是以框图形式示出的,以避免不必要地使本发明模糊。
在附图中,为了便于描述,显示了示意要素的具体安排或次序,例如表示设备、模块、指令块和数据要素的那些要素。然而,本领域技术人员应当理解,附图中示意要素的具体排序或安排并不意味着要求特定的处理顺序或序列、或处理过程的分离。此外,在附图中包含示意性要素并不意味着在所有实施例中都需要这种要素,也不意味着由这种要素表示的特征不能包括在一些实施例中或不能在一些实施例中与其它要素结合。
此外,在附图中,连接要素、例如实线或虚线或箭头用于说明两个或两个以上其它示意要素之间的连接、关系或关联,没有任何此类连接要素并不意味着不能存在连接、关系或关联。换句话说,一些要素之间的连接、关系或关联未在附图中显示,以便不掩盖本发明。此外,为了便于说明,使用单个连接要素来表示要素之间的多个连接、关系或关联。例如,如果连接元件代表信号、数据或指令的通信,本领域技术人员应理解,该元件代表影响通信可能需要的一个或多个信号路径(例如,总线)。
现在将详细参考实施例,其示例在附图中示出。在下面的详细描述中,阐述了许多具体细节,以便提供对所描述的各种实施例的透彻理解。然而,对于本领域的普通技术人员来说明显的是,可以在没有这些具体细节的情况下实施所描述的各种实施例。在其它情况下,没有详细描述众所周知的方法、程序、组件、电路和网络,以便不会不必要地掩盖实施例的方面。
下面描述的若干特征可以彼此独立地使用,也可以与其它特征的任何组合一起使用。但是,任何个别特征可能不能解决上述任何问题,或者只能解决上述问题之一。上文讨论的一些问题可能不能通过本文所述的任何一个特征得到充分解决。虽然提供了标题,但在本说明的其它地方也可以找到与某一标题有关但在该标题部分未找到的信息。本文根据以下概要描述实施例:
1.总体概述
2.系统概述
3.自主运载工具架构
4.自主运载工具输入
5.自主运载工具规划
6.自主运载工具控制
7.对通过非受控交通交叉路口的人类驾驶行为进行建模
8.对用以驾驶超越静止运载工具的人类驾驶行为进行建模
9.对用以避开乱穿马路的人的人类驾驶行为进行建模
10.将人类驾驶行为的模型用在自主运载工具中
11.使用神经网络来生成人类驾驶行为的模型
总体概述
大体上,本发明提供用于使用人类驾驶行为来在自主运载工具在道路上遇到各种场景时辅助自主运载工具的决策的技术。针对各场景,可以基于控制自主运载工具在该场景中如何进行机动动作的人类驾驶行为来生成模型。作为使用这些模型的结果,可以提高自主运载工具的可靠性和安全性。另外,由于模型被编程到自主运载工具中,因此在许多情况下,自主运载工具无需消耗资源来实现复杂的计算以实时地确定驾驶行为。
系统概述
图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的通信通道传输到AV100。
在实施例中,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。连接是无线的或有线的。任意两个或更多的接口设备可以集成到单个设备中。
在实施例中,AV系统120接收并强制执行例如由乘员指定的或者存储在与乘员相关联的简档中的乘员的隐私级别。乘员的隐私级别确定如何许可使用存储在乘员简档中的、以及/或者存储在云服务器136上且与乘员简档相关联的、与乘员相关联的特定信息(例如,乘员舒适度数据、生物测量数据等)。在实施例中,隐私级别指定了一旦乘车完成则被删除的与乘员相关联的特定信息。在实施例中,隐私级别指定与乘员相关联的特定信息,并且标识被授权访问该信息的一个或多个实体。被授权访问信息的所指定的实体的示例可以包括其它AV、第三方AV系统、或者可以潜在地访问该信息的任何实体。
可以在一个或多个粒度级别指定乘员的隐私级别。在实施例中,隐私级别标识要存储或共享的特定信息。在实施例中,隐私级别适用于与乘员相关联的所有信息,使得乘员可以指定不存储或共享她的个人信息。被许可访问特定信息的实体的指定也可以在各种粒度级别指定。被许可访问特定信息的各种实体集例如可以包括其它AV、云服务器136、特定第三方AV系统等。
在实施例中,AV系统120或云服务器136确定AV 100或另一实体是否可访问与乘员相关联的某些信息。例如,试图访问与特定时空地点有关的乘员输入的第三方AV系统必须例如从AV系统120或云服务器136获得授权,以访问与乘员相关联的信息。例如,AV系统120使用乘员的指定隐私级别来确定是否可以将与时空地点有关的乘员输入呈现给第三方AV系统、AV 100或另一AV。这使得乘员的隐私级别能够指定允许哪些其它实体接收与乘员的动作有关的数据或与乘员相关联的其它数据。
图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的数据,并且确定表示AV100为了到达(例如,抵达)目的地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的数据。控制模块406以将使得AV 100行驶轨迹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的视场中的物理地点的一部分用的一些高粒度信息。
在实施例中,在粒度低时,对象1008a-1008b表示汽车不能驶过的地区,例如无街道或道路的区域。在粒度高时,对象1008a-1008b表示AV 100的视场中的物理对象,例如其它汽车、行人、或AV 100不能与之共用物理空间的其它实体。在实施例中,对象1008a-1008b的一部分或全部是静态对象(例如,不改变位置的对象,诸如街灯或电线杆等)或动态对象(例如,能够改变位置的对象,诸如行人或其它小汽车等)。
节点1006a-1006d通过边缘1010a-1010c连接。如果两个节点1006a-1006b通过边缘1010a连接,则AV 100可以在一个节点1006a和另一节点1006b之间行驶,例如,而不必在到达另一节点1006b之前行驶到中间节点。(当提到AV100在节点之间行驶时,意味着AV 100在由相应节点表示的两个物理位置之间行驶。)边缘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还包括可用于接合AV100的制动器(例如,减速控制)的数据。转向输入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进行加速或进行减速。
控制器1102还具有影响方向盘控制器1210的操作的横向跟踪控制器1208。例如,横向跟踪控制器1208根据例如由控制器1102接收到并由横向跟踪控制器1208处理后的反馈,来指示方向盘控制器1210调整转向角致动器1212的位置。
控制器1102接收用于确定如何控制油门/制动器1206和转向角致动器1212的多个输入。规划模块404提供控制器1102例如选择AV 100开始操作时的航向并确定在AV 100到达交叉路口时驶过哪个道路路段所使用的信息。定位模块408例如将描述AV 100的当前地点的信息提供至控制器1102,使得控制器1102可以确定AV 100是否处于基于正控制油门/制动器1206和转向角致动器1212的方式而预期所处的地点。在实施例中,控制器1102接收来自其它输入1214的信息,例如从数据库、计算机网络等接收到的信息。
对通过非受控交通交叉路口的人类驾驶行为进行建模
对于自主运载工具,由于各种原因,驾驶通过非受控交通交叉路口是具有挑战性的。例如,自主运载工具除了实时地计算正横穿的运载工具的速率以外,还必须确定是否有足够的时间合并以避免碰撞。这些计算必须实时地进行,这需要自主运载工具中的大量处理电力、或者在服务器处进行处理时需要快速连接至服务器。因此,生成用于驾驶通过非受控交通交叉路口的模型(例如,一组规则)使得自主运载工具能够使用较少的处理电力和/或网络连接。
图13示出自主运载工具试图在非受控交通交叉路口处合并的示例。自主运载工具1302被例示为等待并入交叉路口1300。此时,自主运载工具1302必须进行计算以确定是否并入交叉路口。具体地,自主运载工具1302必须确定并入交叉路口1300是否会导致自主运载工具1302与接近交叉路口1300的其它运载工具1304和1306中的一个或多个相撞。另外,自主运载工具1302可以确定并入交叉路口1300是否会导致其它运载工具(例如,运载工具1034和1306)中的一个或多个减速和/或突然停止。自主运载工具1302必须使这两个确定与过于保守因而在各交叉路口等待过长时间保持平衡。运载工具必须考虑到乘员舒适度和最大化交通吞吐量来进行这些确定(例如,确定人类驾驶员在特定一组情形中是否将进行机动动作)。在一个实现中,当进行确定时,自主运载工具1302使用对通过非受控交通交叉路口的人类行为进行建模的自主运载工具驾驶模型。
图14的处理1400示出计算机系统为了生成用以驾驶通过非受控交通交叉路口的自主运载工具驾驶模型而可以采取的动作。图14和本发明中的其它附图是参考进行这些动作的计算机系统来描述的。然而,本领域技术人员将理解,图14和其它附图的动作可以由所公开的组件(例如,诸如处理器146、感知模块402、规划模块404、控制模块406或另一合适的组件等的自主运载工具本地的组件)来进行。可选地,计算机系统的一些模块可以位于远离自主运载工具的位置,并且一些动作可以远程地进行并被发送至自主运载工具,而其它动作可以在自主运载工具处进行。
在块1405中,计算机系统确定多个手动操作运载工具(例如,人类操作者所驾驶的并且其驾驶行为受人类操作者的驾驶技能影响的运载工具)的驾驶行为,各手动操作运载工具在相应的非受控交通交叉路口(例如,来自第二车道的交通在无诸如交通灯或交通警察等的交通控制方的指导下并入的第一交通车道的一部分)处进行了交通合并行为。驾驶行为表示打算并入非受控交通交叉路口或观察到另一运载工具并入非受控交通交叉路口的人类操作者的驾驶反应。图13示出运载工具1302正试图在非受控交通交叉路口处合并的非受控交通交叉路口的一个示例。
在实施例中,计算机系统在确定自主运载工具驾驶模型时,被配置为确定手动操作运载工具是试图与交叉路口处的交通合并、还是未试图与交叉路口处的交通合并。例如,计算机系统可以通过交通合并行为的各数据集迭代,并且确定手动操作运载工具是试图合并还是未试图合并。计算机系统可以将与试图合并相关联的数据和与未试图合并相关联的数据分开。如以下所论述的,计算机系统可以使用这些数据集中的一个或两个来生成模型。
在实施例中,当确定驾驶行为时,计算机系统识别并入了相应的非受控交通交叉路口(例如,“前进(go)”决定)的运载工具,并且确定:(1)正朝向相应的非受控交通交叉路口驾驶的多个其它运载工具的各自速率、(2)多个其它运载工具中的各其它运载工具离合并了的运载工具的距离、以及(3)其它运载工具中的各运载工具的车道。例如,计算机系统可以接收从一个或多个非受控交通交叉路口收集到的数据,并且根据所收集到的数据来生成数据集,该数据集对应于进行合并(例如,“前进决定)的运载工具。在实施例中,可以在交叉路口级别训练模型。也就是说,该模型是针对特定交叉路口保存的,并且当运载工具接近该特定交叉路口时,检测到该交叉路口,并且将该模型取出并用于该交叉路口。在实施例中,可以在城市级别训练模型。也就是说,该模型是针对特定城市保存,并且当检测到自主运载工具在该城市中时,将该模型取出并用在该城市内。在实施例中,可以在法域级别或国家级别使用模型。也就是说,当自主运载工具在法域范围内或在特定国家中时,取出并使用该模型。本领域技术人员将理解,该模型的使用或使用级别可以取决于区域内的驾驶法律和/或驾驶行为的同质性。
在块1410中,计算机系统基于驾驶行为来确定自主运载工具驾驶模型,该自主运载工具驾驶模型描述通过自主运载工具驾驶以与非受控交通交叉路口处的交通合并所要实现的自主运载工具驾驶行为(例如,合并还是不合并)。例如,对于自主运载工具的给定速度和航向,该模型指示自主运载工具前进(即,并入交通交叉路口)或者不前进(即,等待)。
在实施例中,计算机系统分析与驾驶行为相关联的数据,并且识别手动操作运载工具并入交叉路口的不同场景。也就是说,计算机系统可以分析接近交叉路口的各其它运载工具离交叉路口的距离以及各运载工具的速率。基于该信息,计算机系统可以建立用于并入交叉路口的模型(例如,一个或多个规则)。规则可以表示,当朝向交叉路口行驶的各其它运载工具为至少一定距离远并且行驶速率不快于一定速率时,自主运载工具应继续并入非受控交通交叉路口。在实施例中,计算机系统基于接近交叉路口的其它运载工具的速率和距离来生成一个或多个规则。
在实施例中,计算机系统可以考虑与未并入交叉路口的手动操作运载工具有关的数据。具体地,计算机系统识别未并入相应的非受控交通交叉路口(例如,“不前进(no go)”决定)的运载工具。对于未并入相应的非受控交通交叉路口的运载工具中的各运载工具,确定该各运载工具附近的正朝向相应的非受控交通交叉路口驾驶的其它运载工具的各自速率、这些其它运载工具中的各其它运载工具离未进行合并的各运载工具的距离、以及各其它运载工具的车道。例如,计算机系统可以对手动操作运载工具未并入交叉路口的实例的数据进行过滤。计算机系统可以分析朝向交叉路口行驶的各其它运载工具的速率和距离。基于该分析,计算机系统可以生成模型(或者将一个或多个规则添加到考虑到并入交叉路口的手动操作运载工具的数据而生成的模型)。例如,规则可以表示:如果一个或多个运载工具正以大于一定速率的速率朝向交叉路口行驶并且比一定距离离交叉路口更近,则自主运载工具不应并入交叉路口。在实施例中,计算机系统生成多个规则(例如,用于速率的规则和用于距离的规则)。
在实施例中,计算机系统在生成模型或向模型添加时,考虑到各正接近的运载工具所位于的车道。例如,计算机系统可以生成如下的规则,该规则表示正接近的运载工具的速率、正接近运载工具离交叉路口的距离和正接近运载工具的车道(例如,正接近运载工具是否位于手动操作运载工具正试图并入的车道中)的组合。
在实施例中,计算机系统考虑到朝向交叉路口驾驶的其它运载工具的速率、这些其它运载工具离交叉路口的距离以及与这些其它运载工具中的各其它运载工具相关联的车道,基于与并入非受控交通交叉路口和未并入非受控交通交叉路口的手动操作运载工具有关的数据这两者来生成模型。例如,计算机系统可以计算当手动操作运载工具并入交叉路口时的各其它运载工具的最大速率和最大距离,并且使模型的规则基于该最大速率和/或最大距离。该规则可以表示,如果各运载工具离交叉路口的距离低于正接近运载工具离交叉路口的最大距离、以及/或者各个正接近运载工具的速率低于最大速率,则自主运载工具应并入交叉路口。在实施例中,该模型的规则可以包括基于所收集到的数据的如下规则:如果正接近的运载工具不在自主运载工具正试图并入的车道中,则速率和距离规则可能被覆盖。
在实施例中,计算机系统使用与手动操作运载工具有关的所收集到的数据作为向神经网络的输入,以针对何时并入非受控交叉路口对神经网络进行训练。该输入可以包括各正接近运载工具的速率数据、距离数据和车道数据。
在实施例中,自主运载工具驾驶模型针对正朝向非受控交通交叉路口驾驶的特定运载工具,将正朝向交叉路口驾驶的其它运载工具的速率、各其它运载工具离该特定运载工具的距离和各其它运载工具的车道绘制成图(map)。例如,计算机系统可以迭代通过数据,并将正接近运载工具的速率、距离和车道存储在单独的数据结构中。可以将绘制成图的数据可以添加到模型,使得在自主运载工具正试图并入非受控交叉路口时,可以处理该数据。在实施例中,可以将数据绘制成图以准备将要输入到神经网络中的数据作为训练数据。
在一个实施例中,跟踪系统(例如,包括多个传感器并且感测运载工具的驾驶的传感器系统)位于非受控交通交叉路口处(或多个交通交叉路口的多个跟踪系统)。计算机系统从各跟踪系统接收到跟踪驾驶行为的感测结果。计算机系统可以基于所接收到的数据或者在接收到数据时更新自主运载工具驾驶模型。
在实施例中,计算机系统针对自主运载工具驾驶模型生成基线模型。具体地,计算机系统收集数据(例如,与手动操作运载工具的合并行为相关联的所接收到的数据),从所收集到的数据中识别数据集,并且使该数据集适合基线模型。在实施例中,计算机系统使用似然比其中之一(Cox and Snell、Nagelkerke、McFadden或Tjur)来生成基线模型。
在图14的处理1400继续时,在块1415中,计算机系统使用控制电路来根据自主运载工具驾驶模型操作自主运载工具。在实施例中,计算机系统位于自主运载工具中,并且根据自主运载工具驾驶模型生成驾驶指令。具体地,计算机系统(例如,基于传感器输入)确定从自主运载工具到朝向非受控交通交叉路口驾驶的另一运载工具的距离以及该另一运载工具的速率。计算机系统根据自主运载工具驾驶模型来处理距离和速率,并且基于处理距离和速率的结果来将用以与非受控交通交叉路口处的交通合并或不与非受控交通交叉路口处的交通合并的指令提供至控制电路。例如,自主运载工具可以将速率、距离作为输入,并且基于该信息来输出与自主运载工具是应继续并入交叉路口还是不应合并有关的确定。如果输出表示自主运载工具应合并,则计算机系统对自主运载工具生成一个或多个驾驶命令以并入交叉路口。如果输出表示自主运载工具不应并入交叉路口,则当该另一运载工具通过交叉路口时,计算机系统再次开始确定处理。
在实施例中,提供一种非暂时性计算机可读存储介质。该非暂时性计算机可读存储介质存储供装置的一个或多个处理器执行的一个或多个程序,该一个或多个程序包括指令,这些指令在由该一个或多个处理器执行时,使得该装置进行上述动作。
在实施例中,计算机系统是与自动运载工具分开的,并且可以位于远离自主运载工具的位置或者位于自主运载工具上。计算机系统被配置为确定多个手动操作运载工具的驾驶行为,各手动操作运载工具在相应的非受控交通交叉路口处进行了交通合并行为。自主运载工具包括存储有计算机可执行指令的一个或多个计算机可读介质以及一个或多个处理器,该一个或多个处理器以通信方式耦接至计算机系统,并且被配置为执行这些计算机可执行指令。
在实施例中,自主运载工具从计算机系统接收驾驶行为,并且基于该驾驶行为来确定自主运载工具驾驶模型,该自主运载工具驾驶模型描述通过自主运载工具在非受控交通交叉路口处进行交通合并行为所要实现的自主运载工具驾驶行为。自主运载工具可以基于上述任何方法来确定自主运载工具驾驶模型。自主运载工具然后根据自主运载工具驾驶模型而自行操作。在实施例中,计算机系统是与运载工具分开的,并且可以将驾驶行为提供至运载工具。在实施例中,计算机系统搭载在运载工具上。
在实施例中,计算机系统预测人类操作者在特定一组情形中将进行什么操作。例如,如果自主运载工具正在驾驶并且检测到另一运载工具(例如,人类操作的运载工具)试图并入交叉路口,则计算机系统可以使用相同的模型来确定人类操作者是将尝试合并还是等待。计算机系统可以根据该确定来驾驶运载工具。因而,如果计算机系统基于该模型确定为运载工具将继续合并,则计算机系统可以使运载工具略微减速以避免碰撞。在实施例中,如果计算机系统确定为预测到另一运载工具等待直到自主运载工具通过交叉路口为止,则计算机系统使该运载工具加速。在实施例中,计算机系统可以生成具有不同规则的不同模型,但基于相同的数据来进行确定。
对用以驾驶超越静止运载工具的人类驾驶行为进行建模
对于自主运载工具,由于各种原因,试图驾驶超越相同车道中的静止运载工具是具有挑战性的。例如,自主运载工具除了确定自身的速率和到静止运载工具的距离以外,还必须考虑到(一个或多个)相邻车道中的任何运载工具来确定是否存在足够的距离和/或时间以经过静止运载工具。这些计算必须实时地进行,这需要自主运载工具中的大量处理电力、或者当在服务器处进行处理时快速连接至服务器。因此,生成用于驾驶超越静止运载工具的模型(例如,一组规则)使得自主运载工具能够使用较少的处理电力和/或网络连接。
图15示出自主运载工具试图经过相同车道中的静止运载工具的示例。自主运载工具1502被例示为确定为用于经过相同车道中的静止运载工具的条件是合适的。在超越机动动作之前,自主运载工具1502必须进行计算,以确定在何处经过静止运载工具1504是最佳的或安全的。具体地,自主运载工具1502必须确定超越相邻车道中的运载工具是否会导致自主运载工具1502撞上可能在相邻车道中的另一运载工具、以及是否存在可用于进行该超越的足够的纵向和横向距离。在实施例中,自主运载工具1502必须使该确定与过于保守因而在停止的运载工具的后方停止过多次保持平衡。运载工具必须考虑到乘员舒适度和最大化驾驶时间来进行这些确定(例如,确定人类驾驶员在一组特定情形中是否将进行机动动作)。在一个实现中,在进行确定时,自主运载工具1502使用对试图超越相同车道中的静止运载工具时的人类行为进行建模的自主运载工具驾驶模型。
图16的处理1600示出计算机系统为了生成用以驾驶超越相同车道中的静止运载工具的自主运载工具驾驶模型而可以采取的动作。图16和本发明中的其它附图是参考进行这些动作的计算机系统来描述的。然而,本领域技术人员将理解,图16和其它附图的动作可以由所公开的组件(例如,诸如处理器146、感知模块402、规划模块404、控制模块406或另一合适的组件等的自主运载工具本地的组件)来进行。可选地,计算机系统的一些模块可以位于远离自主运载工具的位置,并且一些动作可以远程地进行并被发送至自主运载工具,而其它动作可以在自主运载工具处进行。
在块1605中,计算机系统确定多个手动操作运载工具(例如,人类操作者所驾驶的并且其驾驶行为受人类操作者的驾驶技能影响的运载工具)的驾驶行为,各手动操作运载工具已被驾驶超越了相同车道中的静止运载工具(例如,静止运载工具可以停放或已暂停在与手动操作运载工具相同的车道上,并且相邻车道中的交通可以朝向与自主运载工具正前往的方向相同或相反的方向上前进)。驾驶行为表示打算驾驶超越如下的运载工具的人类操作者的驾驶反应,该运载工具(i)在人类操作者的运载工具的前方、(ii)在与人类操作者的运载工具相同的车道中、以及(iii)是静止的。
在实施例中,计算机系统接收描述手动操作运载工具的驾驶行为的数据。这些数据可以包括手动操作运载工具的速度、手动操作运载工具的航向、各手动操作运载工具与相应的静止运载工具之间的纵向距离、各手动操作运载工具正在驾驶超越静止运载工具时的横向距离、相邻车道的方向、以及其它合适的数据中的一个或多个。在实施例中,可以在道路级别训练模型。也就是说,该模型是针对特定道路保存的,并且当自主运载工具在该特定道路上时,检测到该道路,并且将该模型取出并用于该道路。在实施例中,可以在城市级别训练模型。也就是说,该模型是针对特定城市保存的,并且当检测到自主运载工具在该城市中时,将该模型取出并用在该城市内。在实施例中,可以在法域级别或国家级别使用模型。也就是说,当自主运载工具在特定法域内或在特定国家中时,取出并使用该模型。本领域技术人员将理解,该模型的使用或使用级别可以取决于区域内的驾驶法律和/或驾驶行为的同质性。
在实施例中,确定驾驶行为包括:确定为各手动操作运载工具改变了车道以驾驶超越相应的静止运载工具。例如,计算机系统可以分析与手动操作运载工具相关联的所接收到的数据,并且确定手动操作运载工具改变了车道以驾驶超越静止运载工具(例如,而不是停在静止运载工具的后方)的数据的子集。在实施例中,滤除与手动操作运载工具没有改变车道以驾驶超越静止运载工具的场景相关联的数据,因为该数据在某些场景中可能无用。然而,在不同的实施例中,与没有改变车道(例如,停在静止运载工具的后方)的运载工具有关的数据对于确定自主运载工具应停在何处(例如,以何速率和距离)而不是试图驾驶超越静止运载工具是有用的。
在实施例中,确定驾驶行为包括:当各手动操作运载工具发起了向相邻车道的车道改变时,确定各手动操作运载工具和相应的静止运载工具之间的纵向距离。例如,图15示出纵向距离的一个示例。确定各手动操作运载工具的纵向距离使得系统能够评价人类驾驶员在何距离处开始了车道改变,并且经由自主驾驶运载工具模型模仿该行为。例如,计算机系统可以分析各手动操作运载工具的纵向距离,并且基于离静止运载工具的距离来生成用于改变车道的模型(例如,一个或多个规则)。计算机系统可以基于该距离来计算平均值、中值和众值距离中的一个或多个,并且使一个或多个规则基于这些距离。例如,规则可以表示:自主运载工具应在离静止运载工具的特定距离处开始车道改变,其中该特定距离可以是根据与驾驶行为相关联的数据所计算出的平均值、众值或中值距离。
在实施例中,确定驾驶行为包括:确定各手动操作运载工具在发起车道改变时的速率。例如,计算机系统可以分析与各手动操作运载工具相对应的速率,并且确定手动操作运载工具开始了车道改变以驾驶超越静止运载工具时的平均值、众值和中值速率中的一个或多个。计算机系统可以基于速率生成规则或者基于速率向模型添加规则。例如,规则可以表示:如果自主运载工具的速率大于众值、平均值或中值速率其中之一,则控制电路应将自主运载工具减速至更低的速率。
在实施例中,确定驾驶行为包括:当各手动运载工具驾驶超越静止运载工具时,确定各静止运载工具与相邻车道中的相应手动运载工具之间的横向距离。例如,计算机系统可以分析各手动操作运载工具在经过静止运载工具时离相应的静止运载工具有多近。计算机系统可以针对手动操作运载工具经过相应的静止运载工具的各实例确定平均值、中值和众值横向距离中的一个或多个。计算机系统可以基于该信息来生成和/或更新自主运载工具驾驶模型。也就是说,计算机系统可以创建如下的规则,该规则表示自主运载工具应以使得自主运载工具能够以不小于所确定的距离其中之一的横向距离经过静止运载工具的方式进行机动动作。
在实施例中,确定驾驶行为包括:确定与各手动操作运载工具的车道相邻的车道中的交通的方向。与相邻车道中的交通的方向有关的数据可以表示:人类驾驶员在进行特定机动动作时是否考虑到交通方向。例如,如果在存在具有相同方向上的交通的相邻车道的地方以及在存在具有不同方向上的交通的相邻车道的其它地方中进行机动动作时、各特定机动动作的变化特性(例如,速率、开始距离、是进行机动动作还是停止运载工具、以及/或者其它合适的特性)在阈值内,则计算机系统确定为车道方向不影响机动动作。然而,如果变化特性达到阈值或高于阈值,则计算机系统确定为车道方向影响机动动作。例如,计算机系统可以分析手动操作运载工具在驾驶超越静止运载工具时的各车道改变机动动作,并且确定各手动操作运载工具是否改变了车道而进入相同方向的车道或不同方向的车道。例如,如果计算机系统确定为在许多或大多数情况下、手动操作运载工具改变了车道而进入相同方向的车道,则计算机系统生成或更新用以将车道改变为相同方向的车道的模型。然而,如果相邻车道不是在与手动运载工具的车道相同的方向上,则计算机系统可以分析手动操作运载工具的驾驶员采取了什么动作,并将这些动作添加到模型(例如,驾驶员停止并等待)。
为了继续图16的处理1600,在块1610中,计算机系统基于驾驶行为来确定自主运载工具驾驶模型,该自主运载工具驾驶模型描述通过自主运载工具试图驾驶超越相同车道中的静止运载工具所要实现的自主运载工具驾驶行为。例如,计算机系统可以分析手动操作运载工具的各实例,并且确定手动操作运载工具开始了超越机动动作时的手动操作运载工具与静止运载工具之间的最小距离(纵向距离)。计算机系统可以基于该信息来生成模型的一部分(例如,规则)。该规则可以表示:如果自主运载工具离静止运载工具至少最小纵向距离远,则自主运载工具可以开始超越机动动作。
在另一示例中,计算机系统可以分析手动操作运载工具的各实例,并且在手动操作运载工具正经过静止运载工具时,确定手动操作运载工具与静止运载工具之间的最小距离(横向距离)。基于该距离,计算机系统可以生成规则(例如,以包括在自主运载工具驾驶模型中)。例如,该规则可以表示:自主运载工具必须继续改变到另一车道,直到达到最小横向距离为止。当(基于转弯的程度)将达到最小横向距离时,自主运载工具应调整其航向以完成车道改变。
在实施例中,自主运载工具驾驶模型被配置为基于驾驶行为来确定自主运载工具何时应发起车道改变以经过静止运载工具。例如,基于驾驶行为,计算机系统可以生成用于经过相同车道中的静止运载工具的模型(例如,包括一个或多个规则)。如以上所论述的,计算机系统可以根据驾驶行为数据来确定手动操作运载工具开始了超越机动动作以经过静止运载工具时的平均值、众值、中值、最大值和最小值纵向距离中的一个或多个。计算机系统可以基于该信息来生成一个或多个规则。例如,规则可以表示:当自主运载工具离静止运载工具至少一定纵向距离远时,自主运载工具可以开始超越机动动作。该纵向距离可以是平均值、众值、中值、最大值、最小值、或另一合适的纵向距离。
在实施例中,计算机系统在生成自主运载工具驾驶模型时,考虑到各手动操作运载工具的速率。例如,计算机系统可以基于驾驶行为来确定平均值、众值(例如,当对速率进行四舍五入时)、中值、最大值和最小值中的一个或多个。基于这些值中的一个或多个,计算机系统可以生成如下的规则,该规则表示自主运载工具在经过静止运载工具之前应加速/减速以实现所确定的速率。在实施例中,计算机系统基于速率和纵向距离的组合来生成规则。例如,计算机系统可以分析手动操作运载工具的驾驶行为,并且针对各手动操作运载工具确定手动操作运载工具正移动的速率和开始超越机动动作时的纵向距离。因而,根据速率和纵向距离的对,计算机系统可以生成如下的规则,该规则表示:如果自主运载工具正以一定速率移动,则应在特定距离处(或在到达特定距离之前)开始超越机动动作。
附加地或可选地,计算机系统可以生成(针对自主运载工具驾驶模型的)规则,该规则表示:如果自主运载工具离静止运载工具过近、使得基于自主运载工具的速率而需要更多的距离来进行超越机动动作,则自主运载工具应减速,使得超越机动动作可以在驾驶行为的参数内发生。
在实施例中,计算机系统考虑到手动操作运载工具已将车道改变到的车道(例如,相邻车道)的方向来生成/更新自主运载工具驾驶模型。例如,计算机系统可以针对该模型生成如下的规则,该规则表示:如果相邻车道在与自主运载工具的车道不同的方向上,则自主运载工具应以最小纵向距离(在某些情况下,以提高的速率从而在相邻车道中花费尽可能少的时间)改变车道(开始超越机动动作),然后在自主运载工具经过了静止运载工具时,自主运载工具应及时变回车道。在另一示例中,如果相邻车道在与自主运载工具正驾驶于的车道相同的方向上,则计算机系统可以生成如下的规则,该规则表示:自主运载工具应在到达最小距离之前的一些时间/距离改变车道。
为了继续图16的处理1600,在块1615中,计算机系统使用控制电路来根据自主运载工具驾驶模型操作自主运载工具。如以上所论述的,计算机系统可以位于自主运载工具处或者位于远离自主运载工具的位置。在计算机系统位于自主运载工具处的情况下,计算机系统可以根据自主运载工具驾驶模型来指导其它运载工具系统驾驶。例如,在计算机系统位于远离自主运载工具的位置的情况下,计算机系统可以(例如,经由无线网络)向运载工具发送命令。
在实施例中,计算机系统预测人类操作者在特定的一组情形中将进行什么操作。例如,如果(例如,由于乘员需要离开运载工具)自主运载工具必须停在车道中,则系统可以使用相同的模型来确定在后方驾驶的运载工具(例如,考虑到该运载工具相对于停止运载工具的速率和距离)是否具有足够的距离来驾驶超越或停止。在实施例中,计算机系统可以生成经由不同规则的不同模型,但基于相同的数据来进行确定。
在实施例中,计算机系统通过进行以下动作来根据自主运载工具驾驶模型操作自主运载工具。计算机系统确定自主运载工具的速率、自主运载工具的航向和相邻车道中的交通的方向。例如,计算机系统可以从位于运载工具的(如上所述的)一个或多个传感器(例如,照相机、RADAR、LiDAR和/或其它合适的传感器)接收该信息。使用自主运载工具驾驶模型,计算机系统确定用于经过相同车道中的静止运载工具的纵向距离和横向距离。例如,计算机系统可以访问自主运载工具驾驶模型并取出与该模型相关联的一个或多个规则。这些规则可以包括纵向距离、横向距离和车道方向中的一个或多个的阈值。计算机系统可以将传感器数据应用于规则,并且基于该应用,至少在自主运载工具与静止运载工具之间的距离大于纵向距离时向自主运载工具提供用以发起车道改变的指示,并且至少以横向距离经过静止运载工具。
在实施例中,自主运载工具将模型应用于自主运载工具试图经过前方的移动运载工具的情形,其中在该情形中,相邻车道具有在相反方向上移动的交通(例如,在包含具有相反方向上的交通的两个车道的两车道道路上)。在该情形中,自主运载工具必须确定是继续进行超越机动动作、还是(例如,在前方的运载工具的后方驾驶时)等待更好的机会。在本实施例和其它实施例中,自主运载工具使用表示人类操作者决定的数据来确定是否继续并入具有在不同方向上流动的交通的相邻车道。该确定例如基于前方的运载工具的速率、相邻车道中的任何迎面而来的运载工具的速率和/或距离、以及交通法规(例如,是否允许超越、限速、和/或另一适当的交通法规)。
在实施例中,计算机系统从位于静止运载工具处或其附近的跟踪系统(例如,用于感测手动操作运载工具的驾驶行为并将该驾驶行为发送至可能在或可能不在与跟踪系统相同的地点的计算机系统的传感器系统)接收数据,以跟踪驾驶行为。例如,静止运载工具可以包括如下的传感器,这些传感器跟踪正试图驾驶超越的各运载工具,并且记录其它运载工具的速率、该运载工具开始超越机动动作时的纵向距离、执行机动动作时的横向距离、以及其它合适的数据。
在实施例中,用于收集并处理驾驶行为数据的计算机系统可以是与运载工具分开的。例如,计算机系统可以是能被添加至运载工具的模块,或者计算机系统可以位于远离运载工具的位置。计算机系统被配置为确定多个手动操作运载工具(例如,手动操作运载工具是人类操作者所驾驶的且其驾驶行为受人类操作者的驾驶技能影响的运载工具)的驾驶行为(例如,驾驶行为表示打算驾驶超越如下的运载工具的人类操作者的驾驶反应,该运载工具(i)在人类操作者的运载工具的前方、(ii)在与人类操作者的运载工具相同的车道中、以及(iii)是静止的),各手动操作运载工具已被驾驶超越了相同车道中的静止运载工具(例如,静止运载工具可以停放或已暂停在与手动操作运载工具相同的车道中;相邻车道中的交通可以朝向与AV相同或不同的方向前进)。
在这种情况下,自主运载工具包括存储有计算机可执行指令的一个或多个计算机可读介质(例如,包括一个或多个硬盘驱动器、闪存驱动器的存储装置)以及一个或多个处理器,该一个或多个处理器以通信方式耦接至计算机系统,并且被配置为执行这些计算机可执行指令;该执行进行包括以下的操作。自主运载工具利用运载工具从计算机系统接收驾驶行为。例如,自主运载工具可以接收基于所收集到的驾驶行为的处理后的数据。自主运载工具可以接收纵向距离、速率、横向距离、车道方向和其它合适的信息。
自主运载工具基于所跟踪的驾驶行为来确定/生成自主运载工具驾驶模型(例如,针对自主运载工具的给定速度和航向,该模型指示自主运载工具驾驶超越静止运载工具),该自主运载工具驾驶模型描述通过自主运载工具驾驶以驾驶超越该自主运载工具正驾驶的相同车道中的静止运载工具所要实现的自主运载工具驾驶行为(例如,自主运载工具的速度和航向)。在这种情况下,自主运载工具可以使用上述动作来生成模型(例如,生成使用所接收到的数据的规则)。然后,自主运载工具根据自主运载工具驾驶模型而自行操作。
如以上所论述的,计算机系统可以位于自主运载工具处,或者可以是与自主运载工具分开的(例如,位于远离自主运载工具的位置)。计算机系统与运载工具分开。在这些情况下,计算机系统可以分析所收集到的数据,并将驾驶行为提供至自主运载工具,而自主运载工具可相应生成自主运载工具驾驶模型。在实施例中,自主运载工具考虑到特定自主运载工具的如下的机动动作/驾驶限制/特性来生成自主运载工具驾驶模型。例如,在应用制动时运载工具减速所需的时间量、自主运载工具的重量、传感器的灵敏度(例如,可以在何距离处检测到静止运载工具)、以及自主运载工具的其它合适的限制/特性。
在实施例中,提供一种非暂时性计算机可读存储介质。该非暂时性计算机可读存储介质存储供装置的一个或多个处理器执行的一个或多个程序,该一个或多个程序包括指令,这些指令在由该一个或多个处理器执行时,使得该装置进行上述的动作。
对用以避开乱穿马路的人的人类驾驶行为进行建模
对于自主运载工具,由于各种原因,试图避开道路中的乱穿马路的人(不论是在相同车道中还是在自主运载工具附近的车道其中之一中)是具有挑战性的。例如,自主运载工具除了确定自身的速率和地点之外,还必须在乱穿马路的人处在自主运载工具的车道中之前或之后(考虑到自主运载工具的速率)确定是否存在足够的距离和/或时间来避开乱穿马路的人、或者自主运载工具是否应改变到相邻车道中(在相邻车道可用的情况下)。自主运载工具还必须考虑到(一个或多个)相邻车道中的任何运载工具。这些计算必须实时地进行,这需要自主运载工具中的大量处理电力、或者在服务器处进行处理时必须快速连接至服务器。另外,自主运载工具必须确定并入交叉路口1300是否将导致相邻车道中的运载工具减速和/或突然停止。自主运载工具必须使这些确定与过于保守因而等待过长时间以供乱穿马路的人离开车道保持平衡。运载工具必须考虑到乘员舒适度和最大化交通吞吐量来进行这些确定(例如,确定人类驾驶员在特定的一组情形中是否将进行机动动作)。因此,生成用于在存在乱穿马路的人的情况下驾驶的模型(例如,一组规则)使得自主运载工具能够使用较少的处理电力和/或网络连接。
图17-图19示出与避开乱穿马路的人有关的各种场景的示例。图17示出用于当自主运载工具正在具有两个车道的道路(其中相邻车道具有相同方向上的交通)上驾驶时避开乱穿马路的人的场景。与相邻车道中的交通的方向有关的数据可以表示,人类驾驶员在进行特定机动时是否考虑到交通方向。例如,如果在存在具有相同方向上的交通的相邻车道的地方以及在存在具有不同方向上的交通的相邻车道的其它地方中进行机动动作时、各特定机动动作的变化特性(例如,速率、开始距离、是进行机动动作还是停止运载工具、以及/或者另一合适的特性)在阈值内,则计算机系统确定为车道方向不影响机动动作。然而,如果变化特性达到阈值或高于阈值,则计算机系统确定为车道方向影响机动动作。具体地,图17示出具有允许相同方向上的交通的两个车道(车道1702和车道1704)的道路。自主运载工具1706正在车道1704中行驶。在与该运载工具相同的车道(车道1704)中还存在乱穿马路的人1708。在该场景中,自主运载工具必须确定如何避开乱穿马路的人。例如,自主运载工具必须确定是改变车道、减速、停止、什么都不做、进行不同的机动动作、还是进行机动动作的组合。在进行确定时,自主运载工具可能必须考虑例如自身速率、相邻车道中的交通、乱穿马路的人的速度(速率和方向这两者)、以及其它合适的因素等的因素。
图18示出用于当自主运载工具正在具有两个车道的道路(其中相邻车道具有相反方向上的交通)上驾驶时避开乱穿马路的人的场景。具体地,图18示出具有允许不同方向上的交通的两个车道(车道1802和车道1804)的道路。自主运载工具1806正在车道1804中行驶。在与该运载工具相同的车道(车道1804)中还存在乱穿马路的人1808。在该场景中,自主运载工具必须确定如何避开乱穿马路的人(1808)。例如,自主运载工具必须确定是改变车道(其在该地点可能是违法的)、减速、停止、什么都不做、进行不同的机动动作、还是进行机动动作的组合。在进行确定时,自主运载工具可能必须考虑例如自身速率、相邻车道中的交通、乱穿马路的人的速度(速率和方向这两者)、交通规则、以及其它合适的因素等的因素。在实施例中,可以在道路级别训练模型。也就是说,该模型是针对特定道路保存的,并且当自主运载工具接近该特定道路时,检测到该道路,并且将该模型取出并用于该道路。在实施例中,可以在城市级别训练模型。也就是说,该模型是针对特定城市保存的,并且当检测到自主运载工具在该城市中时,将该模型取出并将用在该城市内。在实施例中,可以在法域级别或国家级别使用模型。也就是说,当自主运载工具在特定法域内或在特定国家中时,取出并使用该模型。本领域技术人员将理解,该模型的使用或使用级别可以取决于区域内的驾驶法律和/或驾驶行为的同质性。
图19示出用于当自主运载工具正在具有单个车道的道路上驾驶时避开乱穿马路的人的场景。具体地,图19示出具有自主运载工具1906正在行驶的一个车道(车道1902)的道路。在与该运载工具相同的车道(车道1902)中还存在乱穿马路的人1908。在该场景中,自主运载工具必须确定如何避开乱穿马路的人(1908)。例如,自主运载工具必须确定是靠边停车(在存在路肩的情况下)、减速、停止、什么都不做、进行不同的机动动作、或者进行机动动作的组合。在进行确定时,自主运载工具可能必须考虑例如自身速率、路肩的存在、乱穿马路的人的速度(速率和方向这两者)、交通规则、以及其它合适的因素等的因素。如本文所提到的,术语“路肩”是指路边的、小汽车在它们需要的情况下可以停留的地面区域。
图20的处理2000示出计算机系统为了生成用以避开实体(例如,乱穿马路的人、动物、骑车者或另一合适的实体)的自主运载工具驾驶模型而可以采取的动作。图20和本发明中的其它附图是参考进行这些动作的计算机系统来描述的。然而,本领域技术人员将理解,图20和其它附图的动作可以由所公开的组件(例如,诸如处理器146、感知模块402、规划模块404、控制模块406或另一合适的组件等的自主运载工具本地的组件)来进行。可选地,计算机系统的一些模块可以位于远离自主运载工具的位置,并且一些动作可以远程地进行并被发送至自主运载工具,而其它动作可以在自主运载工具处进行。
在块2005中,计算机系统确定多个手动操作运载工具(例如,手动操作运载工具是人类操作者所驾驶的并且其驾驶行为受人类操作者的驾驶技能影响的运载工具)的驾驶行为,各手动操作运载工具已被在相应实体进入的车道中驾驶。例如,驾驶行为表示观察到乱穿马路的人进入人类操作者的运载工具的驾驶车道的人类操作者的驾驶反应。乱穿马路的人可以是人、动物、骑车者或另一合适的实体。
在实施例中,确定驾驶行为包括:确定组成各手动操作运载工具已被驾驶于的车道的车道数量。例如,计算机系统可以针对各手动操作运载工具确定该手动操作运载工具正驾驶于的道路中的车道数量。图17-图19示出具有一个车道和两个车道的道路的示例,然而,本领域技术人员将理解,本发明设想了具有更多车道的其它场景。该信息很重要,因为该信息可以经由自主运载工具驾驶模型向运载工具通知可以尝试哪些机动动作以及不能尝试哪些机动动作(例如,在相邻车道可用的情况下,改变到相邻车道)。
在实施例中,计算机系统确定各手动操作运载工具被驾驶于的道路的各车道中的交通的方向。例如,图17示出具有相同方向上的交通的两个车道,这潜在地使得运载工具能够改变到相邻车道。图18示出具有不同方向上的交通的两个车道,这潜在地将车道改变的机动动作从自主运载工具可以具有的选项中去除。
在实施例中,计算机系统在确定驾驶行为时,确定相应实体在进入各手动操作运载工具被驾驶于的车道之前所横穿的车道数量。例如,如果实体沿特定方向横穿了一个或两个车道,则该实体可能已向人类驾驶员提供了该实体将不会回到这些车道中的线索。该场景可能导致手动操作运载工具的操作者并入该实体已横穿的相邻车道。计算机系统可以基于该信息来生成/更新自主运载工具驾驶模型。例如,计算机系统可以基于该信息来将如下的规则添加到模型,该规则表示:如果实体在进入自主运载工具正驾驶于的车道之前横穿了一定车道,则自主运载工具应并入该实体已横穿的该车道。
在实施例中,计算机系统在确定驾驶行为时,确定相应实体在进入各手动操作运载工具被驾驶于的车道之前横穿了这多个车道的角度。例如,与横穿的角度有关的信息可能已向人类驾驶员通知了实体的轨迹,由此使得能够用避开实体的轨迹的机动动作来避开实体。基于该信息,计算机系统可以针对模型生成规则。该规则可能需要基于角度(和实体的速率)计算实体的轨迹。该规则可以表示:基于实体的轨迹,自主运载工具应尽可能将车道改变到位于实体的轨道的相反方向的车道中。
在实施例中,计算机系统在确定驾驶行为时,确定为相应实体在指定横穿地点横穿了车道(例如,指定横穿地点是人行横道或斑马线或施工区)。例如,如果实体的横穿地点是设计的横穿地点,则计算机系统可以针对模型生成用以停止的规则。该规则可以考虑到该地点的交通规则(例如,允许人随时在指定横穿地点横穿)。
在实施例中,计算机系统在确定驾驶行为时,确定相应实体正跟随如下的轨迹,该轨迹包括指定横穿地点和各手动操作运载工具被驾驶于的车道的一部分,并且排除了指定横穿地点。例如,如果行人正在指定横穿地点横穿,则行人可能不是乱穿马路的人,因而该场景不适用。因此,计算机系统可以将该数据从模型建立处理中删除。在实施例中,计算机系统扩展指定横穿地点所占用的区域。也就是说,计算机系统可以针对与确定为行人不是乱穿马路的人有关的数据生成缓冲区。例如,当该区域是施工区时,向乱穿马路的人提供围绕施工区行走的缓冲区。
在实施例中,计算机系统在确定驾驶行为时,确定相应实体与各手动操作运载工具之间的距离、各手动操作运载工具的速率、相应实体的速率和相应实体的航向至少之一。例如,计算机系统可以分析手动操作运载工具的速率、实体的速率和方向,并且确定人类驾驶员为了避开实体进行了哪个(哪些)机动动作。例如,基于驾驶行为,计算机系统可以生成如下的规则,该规则表示:如果自主运载工具正以一定速率行驶并且位于离实体的一定距离处,则自主运载工具应将车道改变到相邻车道中或减速(例如,足够慢以便乱穿马路的人离开车道)、停止、或者进行机动动作的组合。
为了继续图20,在块2010中,计算机系统基于驾驶行为来确定自主运载工具驾驶模型,该自主运载工具驾驶模型描述通过自主运载工具试图驾驶以避开实体所要实现的自主运载工具驾驶行为(例如,自主运载工具的速度和航向)。例如,该模型可以包括如下的规则,该规则针对自主运载工具相对于实体的给定速度和航向,表示自主运载工具为了避开实体所要进行的机动动作。
在实施例中,计算机系统在确定自主运载工具驾驶模型时,针对所确定的各手动操作运载工具的各速率和航向,在无需修改运载工具行为的情况下确定各手动操作运载工具与相应实体之间的最小距离,以允许相应实体横穿车道。例如,该模型可以包括如下的规则:如果自主运载工具(基于驾驶行为)为至少一定距离远、并且(基于驾驶行为)移动速率不快于一定速率,则(例如,由于运载工具正在实体当前时刻存在于的地点驾驶时、实体将在运载工具的车道外)自主运载工具不应采取任何动作。
在实施例中,计算机系统在生成自主运载工具驾驶模型时,被配置为基于自主运载工具驾驶行为来确定自主运载工具何时应发起车道改变以避开实体。例如,计算机系统可以生成如下的规则,该规则表示:如果当自主运载工具与实体齐平时、相邻车道可用并且基于实体的轨迹预计实体不会在相邻车道中,则自主运载工具应将车道改变到相邻车道。
为了继续图20的处理2000,在块2015中,计算机系统使用控制电路来根据自主运载工具驾驶模型操作自主运载工具。如以上所论述的,计算机系统可以位于自主运载工具处或者位于远离自主运载工具的位置。在计算机系统位于自主运载工具处的情况下,计算机系统可以根据自主运载工具驾驶模型来指导其它运载工具系统驾驶。例如,在计算机系统位于远离自主运载工具的位置的情况下,计算机系统可以(例如,经由无线网络)向运载工具发送命令。
在实施例中,计算机系统通过采取以下动作来根据自主运载工具驾驶模型操作自主运载工具。计算机系统确定自主运载工具的速率和航向以及实体的速率和航向。使用自主运载工具驾驶模型,计算机系统针对自主运载工具的速率和航向以及实体的速率和航向确定自主运载工具和实体之间的最小距离。计算机系统向自主运载工具提供指令以修改自主运载工具的驾驶行为(例如,减速或发起向实体已横穿的车道的改变以避开实体)。
在实施例中,计算机系统和运载工具可以是自主驾驶系统的一部分。计算机系统可以是可内置在运载工具中或者可以位于远离运载工具的位置的单独系统(例如,模块)。在这两个情况下,计算机系统被配置为跟踪多个手动操作运载工具(例如,手动操作运载工具是人类操作者所驾驶的且其驾驶行为受人类操作者的驾驶技能影响的运载工具)的驾驶行为(例如,驾驶行为表示打算避开相同车道中的行人的人类操作者的驾驶反应)。具体地,各手动操作运载工具已被在相应实体(例如,实体可以是行人或动物)进入的车道中驾驶。
运载工具(例如,以配置在运载工具上的方式(on-board))包括存储有计算机可执行指令的一个或多个计算机可读介质、以及一个或多个处理器,该一个或多个处理器以通信方式耦接至计算机系统,并且被配置为执行这些计算机可执行指令,其中该执行进行以下操作。利用运载工具从计算机系统接收驾驶行为,并且利用计算机系统基于驾驶行为来确定自主运载工具驾驶模型(例如,针对自主运载工具的给定速度和航向,是改变车道还是停止)。如上所述,自主运载工具驾驶模型描述通过自主运载工具驾驶以避开实体所要实现的自主运载工具驾驶行为(例如,自主运载工具的速度和航向)。然后,自主运载工具可以根据自主运载工具驾驶模型而自行操作。
在一个示例中,计算机系统驻留在远程地点(例如,在从运载工具移开的数据中心中),并且收集并处理从手动操作运载工具收集到的驾驶行为数据。驾驶行为数据可以包括描述各手动操作运载工具如何避开实体(例如,行人)的各种值。计算机系统将驾驶行为发送至自动运载工具,该自动运载工具相应确定/生成用于避开实体的自主运载工具驾驶模型。然后,当在道路上发生实体避开情形时,运载工具根据该模型而自行操作。
在实施例中,系统包括跟踪系统(例如,用于感测运载工具的驾驶行为并将该驾驶行为发送至计算机系统的传感器系统)。该跟踪系统可以包括一个或多个手动操作运载工具中所安装的用以跟踪驾驶行为的组件、以及道路附近所安装的用以检测驾驶行为的组件。
将人类驾驶行为的模型用在自主运载工具中
在本文详述了用于建立/生成自主运载工具驾驶模型的各种场景。然而,适当地使用这些模型对于自主运载工具的安全而言至关重要。图21-图23示出处理电路(例如,自主运载工具的处理电路)当在所描述的驾驶场景中使用模型时进行的动作。
图21的处理2100示出自主运载工具为了使用用以驾驶通过非受控交通交叉路口的自主运载工具驾驶模型而可以进行的动作。图21和本发明中的其它附图是参考进行这些动作的处理电路来描述的。然而,本领域技术人员将理解,图21和其它附图的动作可以由其它组件(例如,处理器146、感知模块402、规划模块404、控制模块406或另一合适的组件)来进行。在块2105中,处理电路(例如,处理器146)接收与自主运载工具的环境相关联的传感器数据。例如,处理电路可以接收LiDAR数据、RADAR数据、照相机数据和其它合适的数据。在块2110中,处理电路(例如,处理器146)基于传感器数据确定为自主运载工具已到达非受控交通交叉路口。例如,处理电路可以结合LiDAR数据来分析照相机数据,以确定为自主运载工具在非受控交叉路口(例如,不存在交通灯)处。
在块2115中,处理电路取出自主运载工具驾驶模型,该自主运载工具驾驶模型对进行了与非受控交通交叉路口处的交通的交通合并行为的运载工具的驾驶行为进行建模。该自主运载工具驾驶模型基于与多个手动操作运载工具的驾驶行为相关联的数据,其中各手动操作运载工具在相应的非受控交通交叉路口处进行了交通合并行为。例如,处理电路可以从存储器144(图1)取出驾驶模型。在实施例中,处理电路可以从数据库410取出自主运载工具驾驶模型。在实施例中,可以在交叉路口级别训练该模型。也就是说,该模型是针对特定交叉路口保存的,并且当自主运载工具接近该特定交叉路口时,检测到该交叉路口,并且将该模型取出并用于该交叉路口。在实施例中,可以在城市级别训练该模型。也就是说,该模型是针对特定城市保存的,并且当检测到自主运载工具在该城市中时,将该模型取出并将用在该城市内。在实施例中,可以在法域级别或国家级别使用模型。也就是说,当自主运载工具在特定法域内或在特定国家中时,取出并使用该模型。本领域技术人员将理解,该模型的使用或使用级别可以取决于区域内的驾驶法律和/或驾驶行为的同质性。
在块2120中,处理电路将自主运载工具驾驶模型应用于传感器数据。自主运载工具驾驶模型可以包括(例如,基于驾驶行为的)一个或多个规则并且接受运载工具的环境的输入。自主驾驶模型内的指令可以指示处理电路将规则应用于输入,以输出自主运载工具的指令。具体地,在块2125中,处理电路基于将传感器数据应用于自主运载工具驾驶模型来确定是否与非受控交通交叉路口处的交通合并。例如,作为将模型的规则应用于传感器数据的结果,处理电路可以接收继续合并或等待(例如,等待另一合并机会)的输出。在块2130中,处理电路使用控制电路来根据自主运载工具驾驶模型操作自主运载工具。例如,如果自主运载工具驾驶模型输出用以继续的指令,则处理电路指示控制电路继续并入交叉路口。然而,如果自主运载工具驾驶模型输出用以等待的指令,则处理电路指示控制电路等待(例如,避免并入交叉路口)。
在实施例中,处理电路从一个或多个传感器接收表示从自主运载工具到朝向非受控交通交叉路口驾驶的正接近的运载工具的距离的数据、以及表示该正接近运载工具的速率的数据。例如,自主运载工具可以配备有RADAR/LiDAR或这些仪器的组合。这些仪器可以检测正在接近自主运载工具的任何运载工具,并且确定到自主运载工具的速率和距离。在实施例中,这些仪器可用于确定朝向交叉路口移动的各其它运载工具离交叉路口处的自主运载工具将合并的地点的距离。例如,这些仪器可以确定自主运载工具与交叉路口处的自主运载工具将合并的点之间的距离,并且基于该距离和到各其它运载工具的距离,处理电路可以确定到交叉路口处的该点之间的距离。
在实施例中,处理电路在将自主运载工具驾驶模型应用于传感器时,进行以下动作。处理电路从自主运载工具驾驶模型取出包括用于并入非受控交通交叉路口的距离阈值和速率阈值的规则。例如,自主运载工具驾驶模型可被存储为包括规则(例如,实例化对象)的数据结构。各规则都接受输入并且包括该输入的条件。基于是否满足条件,规则输出不同的值。例如,一个规则可以包括距离阈值和速率阈值的条件。在另一示例中,这些条件可以分为两个规则。规则中的阈值距离是在创建模型时添加到模型的值。该值基于上述计算机系统所处理的驾驶行为。
处理电路将距离阈值与从一个或多个传感器接收到的距离进行比较并将速率阈值与从一个或多个传感器接收到的速率进行比较,并且基于该比较来确定从一个或多个传感器接收到的距离是否满足距离阈值、以及从一个或多个传感器接收到的速率与速率阈值是否匹配。通过该确定,处理电路确定朝向交叉路口驾驶的一个或多个其它运载工具是否足够远且足够慢、使得自主运载工具有时间并入交叉路口。基于该确定,规则输出具有与是否要与交通合并有关的指令的结果。
在实施例中,处理电路基于对距离和速率进行处理的结果,来向自主运载工具提供用以与非受控交通交叉路口处的交通合并或等待与非受控交通交叉路口处的交通合并的命令。
图22的处理2200示出自主运载工具为了使用用以驾驶超越相同车道中的静止运载工具的自主运载工具驾驶模型而可以进行的动作。图22和本发明中的其它附图是参考进行这些动作的处理电路来描述的。然而,本领域技术人员将理解,图22和其它附图的动作可以由其它组件(例如,处理器146、感知模块402、规划模块404、控制模块406或另一合适的组件)来进行。在块2205中,处理电路(例如,处理器146)接收与自主运载工具的环境相关联的传感器数据。例如,处理电路可以接收LiDAR数据、RADAR数据、照相机数据和其它合适的数据。在块2210中,处理电路(例如,处理器146)基于传感器数据来确定为静止运载工具位于与自主运载工具正驾驶于的相同车道中。例如,处理电路可以结合LiDAR数据和RADAR数据来分析照相机数据,以确定为静止运载工具在与自主运载工具的相同车道中。至少基于LiDAR数据和RADAR数据,处理电路可以确定到运载工具的距离并且确定为运载工具是静止的(即,不移动)。
在块2215中,处理电路取出对驾驶超越静止运载工具的运载工具的驾驶行为进行建模的自主运载工具驾驶模型。自主运载工具驾驶模型基于与多个手动操作运载工具的驾驶行为相关联的数据,其中各手动操作运载工具被驾驶超越了相同车道中的相应静止运载工具。例如,处理电路可以从存储器144(图1)取出驾驶模型。在实施例中,处理电路可以从数据库410取出自主运载工具驾驶模型。
在块2220中,处理电路将自主运载工具驾驶模型应用于传感器数据。自主运载工具驾驶模型可以包括(例如,基于驾驶行为的)一个或多个规则并且接受运载工具的环境的输入。自主驾驶模型内的指令可以指示处理电路将规则应用于输入,以输出自主运载工具的指令。具体地,在块2225中,处理电路基于将传感器数据应用于自主运载工具驾驶模型来确定用于驾驶超越自主运载工具正驾驶于的相同车道中的静止运载工具的一个或多个驾驶指令。例如,作为将模型的规则应用于传感器数据的结果,处理电路可以接收一个或多个指令的输出。例如,这些指令可以包括减速和将车道改变到相邻车道中的一个或多个。在某些条件下,处理电路指示自主运载工具停止。在块2230中,处理电路使用控制电路来根据自主运载工具驾驶模型操作自主运载工具。例如,如果自主运载工具驾驶模型输出用以改变车道的指令,则处理电路指示控制电路进行改变车道。
在实施例中,处理电路从一个或多个传感器接收到静止运载工具的距离、自主运载工具的速率、静止运载工具与位于静止运载工具的相邻车道中的另一运载工具之间的距离、相邻车道中的交通的方向、以及其它合适的数据中的一个或多个。例如,处理电路可以根据模型来向各可用传感器指示处理电路为了操作需要什么数据。当处理电路接收到数据时,处理电路将该数据应用于自主运载工具驾驶模型。
在实施例中,处理电路在将自主运载工具驾驶模型应用于传感器数据时进行以下动作。处理电路将所接收到的传感器数据输入到自主运载工具驾驶模型中。该数据包括到静止运载工具的距离、自主运载工具的速率、静止运载工具与位于静止运载工具的相邻车道中的另一运载工具之间的距离、以及相邻车道中的交通的方向中的一个或多个。例如,处理电路可以将自主驾驶模型加载到随机存取存储器中,并且运行执行与自主驾驶模型相关联的指令的处理。这些指令可以包括用于接受以上指示的数据的输入的例程。当自主运载工具驾驶模型接收到输入时,模型的例程对数据执行该模型(例如,一个或多个规则)。例如,自主运载工具驾驶模型可被存储为包括规则(例如,实例化对象)的数据结构。各规则都接受输入并且包括该输入的条件。基于是否满足条件,规则输出不同的值。例如,一个规则可以包括距离阈值和速率阈值的条件。在另一示例中,这些条件可以分为两个规则。规则中的阈值距离是在创建模型时添加到模型的值。该值基于计算机系统如上述所处理的驾驶行为。处理电路从自主运载工具驾驶模型接收包括用于驾驶超越静止运载工具的一个或多个命令的输出。例如,当将速率和距离输入到规则中时,输出可以是一个或多个指令(例如,将车道改变到相邻车道、加速、减速、停止、或另一合适的指令)。
图23的处理2300示出自主运载工具为了使用用以避开相同车道中的实体(例如,行人)的自主运载工具驾驶模型而可以进行的动作。图23和本发明中的其它附图是参考进行这些动作的处理电路来描述的。然而,本领域技术人员将理解,图23和其它附图的动作可以由其它组件(例如,处理器146、感知模块402、规划模块404、控制模块406或另一合适的组件)来进行。在块2305中,处理电路(例如,处理器146)接收与自主运载工具的环境相关联的传感器数据。例如,处理电路可以接收LiDAR数据、RADAR数据、照相机数据和其它合适的数据。在块2310中,处理电路(例如,处理器146)基于传感器数据确定为实体进入了自主运载工具正驾驶于的车道中。例如,处理电路可以结合LiDAR数据和RADAR数据来分析照相机数据,以确定为行人在与自主运载工具的相同车道中。至少基于LiDAR数据和RADAR数据,处理电路可以确定到行人的距离、行人的速度(速率和方向这两者)以及其它合适的信息。
在块2315中,处理电路取出对用以避开相同车道中(即,运载工具的轨迹中)的实体的驾驶行为进行建模的自主运载工具驾驶模型。自主运载工具驾驶模型基于与多个手动操作运载工具的驾驶行为相关联的数据,其中驾驶各手动操作运载工具以避开相同车道中的实体(例如,行人、动物或另一合适的实体)。例如,处理电路可以从存储器144(图1)取出驾驶模型。在实施例中,处理电路可以从数据库410取出自主运载工具驾驶模型。
在块2320中,处理电路将自主运载工具驾驶模型应用于传感器数据。自主运载工具驾驶模型可以包括(例如,基于驾驶行为的)一个或多个规则,并且接受运载工具的环境的输入(例如,运载工具的速率、到实体的距离、实体的速度(速率和方向这两者)、以及其它合适的信息)。自主驾驶模型内的指令可以指示处理电路将规则应用于输入,以输出自主运载工具的指令。具体地,在块2325中,处理电路基于将传感器数据应用于自主运载工具驾驶模型,来确定用以避开在自主运载工具正驾驶于的相同车道中的实体的一个或多个驾驶指令。例如,作为将模型的规则应用于传感器数据的结果,处理电路可以接收一个或多个指令的输出。例如,这些指令可以包括减速和将车道改变到相邻车道中的一个或多个。在某些条件下,处理电路指示自主运载工具停车。在块2330中,处理电路使用控制电路来根据自主运载工具驾驶模型操作自主运载工具。例如,如果自主运载工具驾驶模型输出改变车道的指令,则处理电路指示控制电路进行改变车道。
在实施例中,与自主运载工具的环境相关联的传感器数据包括:自主运载工具的速率、从自主运载工具到实体的距离、自主运载工具的可用车道的数量、这些可用车道中的各可用车道中的交通的方向、实体在进入自主运载工具正驾驶于的车道之前横穿的车道的数量、实体是否正在指定横穿地点横穿车道、实体的速度、实体在进入自主运载工具正驾驶于的车道之前横穿这多个车道的角度、以及其它合适的传感器数据中的一个或多个。
在实施例中,处理电路在将自主运载工具驾驶模型应用于传感器数据时进行以下动作。处理电路将以下中的一个或多个输入到自主运载工具驾驶模型中:自主运载工具的速率、从自主运载工具到实体的距离、自主运载工具的可用车道的数量、这些可用车道中的各可用车道中的交通的方向、实体在进入自主运载工具正驾驶于的车道之前横穿的车道的数量、实体是否正在指定横穿地点横穿车道、实体的速度、以及实体在进入自主运载工具正驾驶于的车道之前横穿多个车道的角度。处理电路从自主运载工具驾驶模型接收包括用于避开实体的一个或多个命令的输出。
例如,自主运载工具可能正在三车道公路的中间车道中驾驶,其中所有的三个车道都具有相同方向上的交通。如果处理电路在相同(中间)车道上检测到行人,则可以使用自主运载工具驾驶模型来获得用于避开行人的指令。处理电路接收与行人的速率和方向(例如,从左向右移动)以及自主运载工具的速率和到行人的距离有关的数据。处理电路将该数据输入到模型中。该模型可以具有(例如,基于手动控制运载工具的驾驶行为所生成的)规则,该规则表示:如果自主运载工具离行人至少一定距离远、并且在行人正从左向右移动时自主运载工具的行驶速率慢于一定速率,则自主运载工具应将车道改变到左车道以避开行人。该模型输出这些指令并且处理电路将指令发送至运载工具的控制电路以供执行。
在实施例中,自主运载工具驾驶模型是由配置在运载工具上的处理电路生成的。配置在自主运载工具上的处理电路收集多个手动操作运载工具的驾驶行为。数据收集可以包括从中央源或手动操作运载工具自身接收数据。在实施例中,自主运载工具使用其传感器来收集其在与手动运载工具相同的道路上驾驶时的数据。所收集到的数据可以包括一个或多个场景的数据。例如,所收集到的数据可以包括多个手动操作运载工具在相应的非受控交叉路口处进行了交通合并行为的驾驶行为。数据还可以包括多个手动操作运载工具驾驶超越了相同车道中的静止运载工具的驾驶行为和/或多个手动操作运载工具已被驾驶以避开相同车道中的实体的驾驶行为。
当接收到数据时,处理电路生成相应的自主运载工具驾驶模型。控制电路可以基于所接收到的补充数据来更新模型。如以上所论述的,自主运载工具驾驶模型可被存储为一组指令和一组数据。该数据和指令可以是在自主运载工具自身上或者在远离自主运载工具的地点生成的。
使用神经网络来生成人类驾驶行为的模型
如本文中前面所述,针对特定情形(例如,并入非受控交叉路口、驾驶超越相同车道中的静止运载工具、以及绕开相同车道中的行人驾驶),人类驾驶行为可被用作自主运载工具驾驶行为的模型。然而,人类驾驶行为可被用作针对自主运载工具在道路上可能遇到的其它情形的模型。神经网络可以是针对人类驾驶行为数据可供使用的许多情形而配置并训练的。可以使用神经网络在道路上的许多情形中作为针对自主运载工具的模型。
图24的处理2400示出计算机系统为了针对特定交通机动动作生成人类驾驶行为的模型而可以进行的动作。在块2405中,计算机系统接收到描述多个手动操作运载工具的驾驶行为的数据集,各手动操作运载工具试图进行交通机动动作,其中该数据集包括多个条目和人类驾驶员在进行相应交通机动动作时作出的多个决定,以及其中各条目包括与相应交通机动动作相关联的多个因素的多个字段。例如,字段可以是存储诸如运载工具的速率、到对象的距离和另一合适的值等的机动动作的方面的数据值的表列。因素可以是针对机动动作而特定的,从而当人类决定并入或者不并入交叉路口时,因素可以是一个或多个其它小汽车到该交叉路口的一个或多个距离。在对避开行人进行建模的模型中,到行人的距离可能是因素。
图25示出描述多个手动操作运载工具的驾驶行为的一个可能数据集。数据集2502包括具有相应数据值的多个列(例如,字段)。例如,列2504表示正接近交叉路口的运载工具其中之一的速度,并且列2506表示考虑到数据、人类驾驶员是合并还是避免合并(例如,前进/不前进决定)。另外,图25示出并入非受控交叉路口的场景。运载工具2508是试图并入非受控交叉路口的运载工具。运载工具2510、2512和2514是接近非受控交叉路口的其它运载工具。这些运载工具的速度和这些运载工具的距离由数据集2502中的数据表示。
在块2410中,计算机系统从数据集取出多个字段。例如,图25所示的各列(例如,列2504、2506和其它列)可以是计算机系统所取出的字段。在实施例中,计算机系统解析数据集以取出字段。在另一实施例中,计算机系统进行API调用以取出字段。数据集可以存储在存储器(例如,随机存取存储器)或数据存储单元(例如,图1的数据存储单元142或图4的数据库410)中。在实施例中,处理电路(例如,处理器)从数据存储单元取出所接收的数据集并将该数据集复制到存储器中以供访问和处理。
在实施例中,计算机系统在从数据集取出多个字段时,可以进行以下动作。计算机系统使用与数据集相关联的应用编程接口(API)来执行请求多个字段的命令,并且响应于该命令来接收与多个字段相关联的多个标识符。例如,数据集可以由一套API访问,其中这些API可用于从数据集提取各种信息。计算机系统可以使用这些API来提取多个标识符。
在块2415中,计算机系统识别与多个字段相关联的多个数据类型。例如,如图25所示,数据集可以包括不同的字段。这些字段中的一些字段可以是数字类型(即,包括数值)。一些字段可以是布尔(Boolean)类型(即,包括布尔数据)。其它字段可以是包括有限集合的类型。例如,字段可以具有四个值其中之一(例如,字符串、字母数字字符和其它合适的值)。计算机系统可以通过访问数据集并确定哪个种类的值在各列(即,字段)中来识别数据类型。在实施例中,计算机系统可以生成并执行API调用以获得各字段的类型。
在实施例中,计算机系统通过进行以下动作来识别与多个字段相关联的多个数据类型。计算机系统针对多个字段中的各字段,选择与相应字段相关联的标识符。例如,各字段可以包括标识符。标识符可以是字段名称(例如,车速)。在各种实施例中,标识符可以是字母数字字符串、十六进制数字或其它合适的标识符。计算机系统将所选择的各标识符与同已知数据类型相关联的多个标识符进行比较。例如,计算机系统可以访问标识符连同相应类型一起存储(例如,在表中)的存储地点。计算机系统可以迭代通过各标识符并将该标识符与所存储的标识符进行比较,并且当找到匹配时,计算机系统基于该比较来识别多个字段中的各字段的相应数据类型。
在块2420中,计算机系统基于多个字段来确定与交通机动动作相关联的多个特性。在实施例中,各字段都是交通机动动作的特性。例如,图25示出诸如转弯类型、正进入的运载工具、到这些运载工具的距离、这些运载工具的速率或速度、以及其它特性等的特性。图25还示出机动动作的结果(例如,人类驾驶员是否并入交叉路口)。
在块2425中,计算机系统使用多个特性和多个数据类型来配置神经网络。例如,计算机系统可以配置神经网络的输入层、隐藏层和输出层。隐藏层根据针对特定机动动作的输出需求,可以具有数个层。例如,如果是/否决定是预期输出(例如,是否继续通过非受控交叉路口),则可能需要仅一个隐藏层来处理输入。然而,如果需要更复杂的输出(例如,绕开相同车道中的静止运载工具或相同车道中的行人的驾驶指令),则计算机系统可以配置多于一个的隐藏层。另外,计算机系统还将输入层配置到神经网络。计算机系统可以利用多个输入参数和输入参数的类型来配置输入层。例如,当配置神经网络的输入层时,计算机系统可以使用从数据集取出的多个特性和多个数据类型。计算机系统可以使用诸如自主运载工具的速率、到特定实体(例如,静止运载工具或行人)的距离、实体的速率、实体的行驶方向以及其它合适的特性等的特性。计算机系统也可以使用特性的类型来配置神经网络。
在实施例中,计算机系统基于与交通机动动作相关联的多个特性中的数个特性来配置数个输入,并且针对这多个特性中的各特性选择多个起始权重。例如,对于与是否并入交叉路口有关的决定,各其它运载工具到交叉路口的各距离的权重按0到1的比例可以为.6。在训练神经网络时,这些权重基于训练集而改变。然后,计算机系统例如使用应用程序接口(API)函数来生成神经网络。API函数以多个特性、与这多个特性中的各特性相关联的字段的类型、以及神经网络的类型作为输入。
在块2430中,计算机系统根据多个特性中的各特性将与数据集相关联的数据输入到神经网络中。当创建神经网络时,使用数据集来训练神经网络。因而,将数据集的数据输入到神经网络中,使得神经网络的各特性均对应于数据集中的字段。例如,当将数据输入到神经网络中时,神经网络中的车速的特性与数据集中的车速的字段匹配。
在块2435中,计算机系统利用输入数据和与交通机动动作相关联的多个特性来执行用于神经网络的训练例程。例如,计算机系统可以执行与训练例程相对应的函数。可以利用数据集作为输入来执行该函数。在实施例中,函数可以使得能够将路径输入到如下的数据集,其中该函数能够从该数据集读取训练数据。
在实施例中,在远离任何自主运载工具的位置(例如,在中心地点、工厂或另一合适的地点)训练神经网络。在自主运载工具外部训练神经网络可以具有各种优点。例如,在自主运载工具的处理电力有限的场景中,能够对神经网络进行更快的训练。另外,在运载工具外部(例如,在数据中心处)训练神经网络使得能够快速分发经训练的网络(即,不要求各运载工具训练各神经网络)。因而,在自主运载工具外部训练神经网络的实施例中,根据需要将神经网络发送至一个或多个自主运载工具。
在实施例中,在生成并训练神经网络时,自主运载工具可以在针对这些自主运载工具设计的驾驶场景中使用这些神经网络。具体地,计算机系统(例如,在自主运载工具处)从自主运载工具的一个或多个传感器接收传感器数据。在实施例中,计算机系统可以位于自主运载工具上。例如,计算机系统可以是配置在自主运载工具上的模块,并且可以与自主运载工具的其它组件(例如,与图1相关联的组件142、144、146和其它组件)连接。计算机系统可以具有图3的一部分或全部组件。在实施例中,计算机系统可以与图4的组件连接。在实施例中,可以在交叉路口/道路级别训练模型。也就是说,该模型是针对特定交叉路口/道路所保存的,并且当运载工具接近该特定交叉路口/道路时,检测到该交叉路口/道路,并且将该模型取出并用于该交叉路口/道路。在实施例中,可以在城市级别训练模型。也就是说,该模型是针对特定城市保存的,并且当检测到自主运载工具在该城市中时,将该模型取出并用在该城市内。在实施例中,可以在法域级别或国家级别使用该模型。也就是说,当自主运载工具在特定法域内或在特定国家中时,取出并使用该模型。本领域技术人员将理解,该模型的使用或使用级别可以取决于区域内的驾驶法律和/或驾驶行为的同质性。
在实施例中,计算机系统可以位于自主运载工具的外部,并且可以经由无线网络发送运载工具与承载模型的计算机系统之间的信息。例如,自主运载工具可以在其正驾驶时收集传感器数据,并且可以将该数据发送至中心地点。在中心地点,计算机系统可以处理数据并将驾驶指令发送至自主运载工具。
在实施例中,计算机系统基于传感器数据来选择用以导航通过轨迹的一部分的交通机动动作。例如,计算机系统可以(例如,在自主运载工具上远程地)接收传感器数据,并且确定为需要进行特定机动动作以继续在通向期望目的地的路径上行驶。计算机系统可以确定是否存在与所选择的机动动作相关联的可用的神经网络。计算机系统从传感器数据中提取与多个特性相对应的一个或多个值,并且利用这多个特性中的一个或多个作为输入数据来执行神经网络。例如,如果所需的机动动作正并入非受控交叉路口,则计算机系统从传感器数据提取诸如自主运载工具的速率、接近非受控交叉路口的各其它运载工具的移动的速率和方向、各其它运载工具到非受控交叉路口的距离、各其它运载工具的车道以及各车道的方向等的特性。在实施例中,可以从传感器数据提取其它特性。然后,利用输入数据执行神经网络。
计算机系统从神经网络接收输出,并且使用控制电路根据神经网络的输出来操作自主运载工具。例如,在必须决定是继续进入非受控交叉路口还是等待其它运载工具或实体通过的场景中,计算机系统可以输出表示自主运载工具是继续前进还是等待的布尔值。在实施例中,输出可以是用以继续前进的一个或多个命令。例如,该命令可以包括自主运载工具应继续前进以及沿什么方向(例如,是否需要调整车轮的位置)所用的速率。
在实施例中,计算机系统使用神经网络自身来确定需要从传感器数据提取什么数据。具体地,计算机系统从神经网络取出与多个特性相关联的多个标识符。例如,神经网络可以包括应用编程接口,该应用编程接口使得能够请求神经网络将接受作为输入的交通机动行为的特性。各神经网络(即,用于不同的机动动作)可以接受不同的特性作为输入。计算机系统可以响应于该请求而接收神经网络可以接受的特性的标识符。标识符可以简单地是特性的名称。在实施例中,各标识符可以是表示特定特性的字母数字字符串。自主运载工具可以包括包含标识符和相应特性的列表(例如,表)。
计算机系统将多个标识符中的各标识符与传感器数据中的数据值的标识符进行比较,并且基于该比较来取出与多个特性相对应的一个或多个值。例如,对于涉及并入非受控交通交叉路口的机动动作,特性可以包括朝向交叉路口驾驶的一个或多个其它运载工具的一个或多个标识符、朝向交叉路口驾驶的一个或多个其它运载工具中的各其它运载工具的速率、一个或多个其它运载工具中的各其它运载工具离向着交叉路口的特定运载工具的距离、朝向交叉路口驾驶的一个或多个其它运载工具中的各其它运载工具的车道、自主运载工具的速率、自主运载工具到交叉路口的距离、以及其它合适的特性。
在包括并入非受控交通交叉路口的场景的实施例中,计算机系统可以接收神经网络的输出作为与自主运载工具应并入交叉路口还是避免并入交叉路口的指示。该指示可以是布尔值输出(例如,是/否、1/0或另一合适的指示)。在实施例中,响应于接收到用以并入交叉路口的指示,计算机系统生成一个或多个驾驶命令以操作自主运载工具并入交叉路口。在其它实施例中,代替该指示或除了该指示之外,神经网络可以输出驾驶指令。例如,神经网络可以输出继续前进的航向和速率。如果神经网络的输出是避免合并,则速率的输出可以为零。
在实施例中,响应于接收到用以避免并入交叉路口的指示,在经过了阈值时间段之后,计算机系统可以利用更新后的传感器数据执行神经网络。例如,除了表示自主运载工具应避免并入非受控交通交叉路口的输出之外,神经网络还可以输出与用以等待直到再次执行神经网络为止的时间有关的数据。该时间可以基于条件被消除(例如,接近非受控交叉路口的另一运载工具对于合并机动动作而言过近)所需的时间。
如以上所论述的,一些神经网络可被配置为输出一个或多个驾驶命令,并且这些驾驶命令(例如,通过指示控制电路根据一个或多个驾驶命令操作自主运载工具)可以由自主运载工具用于自行操作。例如,计算机系统可以接收到这些驾驶命令作为神经网络的输出,并且将这些命令发送至运载工具的控制电路。驾驶指令可以包括用以进行特定机动动作的指令。运载工具的控制电路可以基于运载工具的取向和位置来调整指令(例如,修改指令以适应场景)。
以上论述的动作可以在自主运载工具处进行,该自主运载工具可以包括一个或多个计算机处理器以及存储有指令的一个或多个非暂时性存储介质,这些指令在由一个或多个计算机处理器执行时,使得进行本文中所述的动作。附加地或可选地,可以将用于进行本文所述的动作的命令存储在一个或多个非暂时性存储介质上,该命令在由一个或多个计算装置执行时,使得进行这些命令。
在先前描述中,已经参考许多具体细节描述了本发明的实施例,这些具体细节可因实现而不同。因此,说明书和附图应被视为说明性的,而非限制性意义的。本发明范围的唯一且排他的指示、以及申请人期望是本发明范围的内容是以授权权利要求的具体形式从本申请授权的权利要求书的字面和等同范围,包括任何后续修正。本文中明确阐述的用于被包括在此类权利要求中的术语的任何定义应当以此类术语如在权利要求书中所使用的意义为准。另外,当在先前的说明书或所附权利要求书使用术语“还包括”时,该短语的下文可以是附加的步骤或实体、或先前所述的步骤或实体的子步骤/子实体。

Claims (20)

1.一种计算机实现的方法,包括:
利用计算机系统来确定多个手动操作运载工具的驾驶行为,各手动操作运载工具在相应的非受控交通交叉路口处进行了交通合并行为;
利用所述计算机系统基于所述驾驶行为来确定自主运载工具驾驶模型,所述自主运载工具驾驶模型描述通过自主运载工具驾驶以与非受控交通交叉路口处的交通合并所要实现的自主运载工具驾驶行为;以及
使用控制电路根据所述自主运载工具驾驶模型来操作所述自主运载工具。
2.根据权利要求1所述的方法,还包括:将跟踪系统放置在一个或多个非受控交通交叉路口处或附近,以跟踪所述驾驶行为。
3.根据权利要求1所述的方法,其中,确定所述驾驶行为包括:
识别并入相应的非受控交通交叉路口的运载工具;以及
确定以下内容:(1)正向着相应的非受控交通交叉路口驾驶的多个其它运载工具的各自速率;(2)所述多个其它运载工具中的各其它运载工具离进行合并的运载工具的距离;以及(3)所述其它运载工具中的各其它运载工具的车道。
4.根据权利要求1所述的方法,其中,确定所述驾驶行为包括:
识别未并入相应的非受控交通交叉路口的运载工具;以及
针对未并入相应的非受控交通交叉路口的运载工具中的各运载工具,确定该各运载工具附近的正向着相应的非受控交通交叉路口驾驶的其它运载工具的各自速率、所述其它运载工具中的各其它运载工具离未进行合并的各运载工具的距离、以及各其它运载工具的车道。
5.根据权利要求1所述的方法,其中,确定所述驾驶行为包括:
收集数据;
从所收集到的数据中识别数据集;以及
使所述数据集适合基线模型。
6.根据权利要求1至5中任一项所述的方法,其中,所述驾驶行为包括各手动操作运载工具的速度和航向。
7.根据权利要求1至5中任一项所述的方法,其中,所述自主运载工具驾驶模型针对正朝向所述非受控交通交叉路口驾驶的特定运载工具,将正朝向所述非受控交通交叉路口驾驶的其它运载工具的速率、各其它运载工具离所述特定运载工具的距离、以及各其它运载工具的车道绘制成图。
8.根据权利要求1至5中任一项所述的方法,其中,所述计算机系统在确定所述自主运载工具驾驶模型时,被配置为确定所述手动操作运载工具是试图与所述非受控交通交叉路口处的交通合并、还是未试图与所述非受控交通交叉路口处的交通进行合并。
9.根据权利要求1至5中任一项所述的方法,其中,根据所述自主运载工具驾驶模型来操作所述自主运载工具包括:
确定从所述自主运载工具到朝向所述非受控交通交叉路口驾驶的另一运载工具的距离;
确定所述另一运载工具的速率;
使用所述计算机系统,根据所述自主运载工具驾驶模型来对所述距离和所述速率进行处理;以及
基于对所述距离和所述速率进行处理的结果,来向所述控制电路提供用以与所述非受控交通交叉路口处的交通合并或者不与所述非受控交通交叉路口处的交通合并的指令。
10.一种用于运载工具自行操作的系统,包括:
计算机系统,其被配置为确定多个手动操作运载工具的驾驶行为,各手动操作运载工具在相应的非受控交通交叉路口处进行了交通合并行为;以及
运载工具,包括:
存储有计算机可执行指令的一个或多个计算机可读介质;
一个或多个处理器,其以通信方式耦接至所述计算机系统,并且被配置为执行所述计算机可执行指令,该执行进行包括以下的操作:
利用所述运载工具从所述计算机系统接收所述驾驶行为;
利用所述运载工具基于所述驾驶行为来确定自主运载工具驾驶模型,所述自主运载工具驾驶模型描述通过自主运载工具在非受控交通交叉路口处进行交通合并行为所要实现的自主运载工具驾驶行为;以及
利用所述运载工具根据所述自主运载工具驾驶模型而自行操作。
11.根据权利要求10所述的系统,其中,所述计算机系统是与所述运载工具分开的。
12.根据权利要求11所述的系统,其中,所述计算机系统被配置为将所述驾驶行为提供至所述运载工具。
13.根据权利要求10所述的系统,其中,所述计算机系统配置在所述运载工具上。
14.一种计算机实现的方法,包括:
接收描述多个手动操作运载工具的驾驶行为的数据集,各手动操作运载工具试图进行了交通机动动作,其中所述数据集包括多个条目和人类驾驶员在进行相应的交通机动动作时采取的多个决定,以及其中各条目包括用于与相应的交通机动动作相关联的多个因素的多个字段;
从所述数据集取出所述多个字段;
识别与所述多个字段相关联的多个数据类型;
基于所述多个字段来确定与所述交通机动动作相关联的多个特性;
使用所述多个特性和所述多个数据类型来配置神经网络;
根据所述多个特性中的各特性来将与所述数据集相关联的数据输入到所述神经网络中;以及
利用所输入的数据和与所述交通机动动作相关联的所述多个特性来执行用于所述神经网络的训练例程。
15.根据权利要求14所述的方法,还包括:
从自主运载工具的一个或多个传感器接收传感器数据;
基于所述传感器数据来选择所述交通机动动作,以导航通过轨迹的一部分;
从所述传感器数据提取与所述多个特性相对应的一个或多个值;
以所述多个特性中的一个以上的特性作为输入数据来执行所述神经网络;
接收来自所述神经网络的输出;以及
使用控制电路基于所述神经网络的输出来操作所述自主运载工具。
16.根据权利要求15所述的方法,其中,从所述传感器数据提取与所述多个特性相对应的所述一个或多个值包括:
从所述神经网络取出与所述多个特性相关联的多个标识符;
将所述多个标识符中的各标识符与所述传感器数据中的数据值的标识符进行比较;
基于该比较来取出与所述多个特性相对应的所述一个或多个值。
17.根据权利要求15所述的方法,其中,所述多个特性包括:
朝向交叉路口驾驶的一个或多个其它运载工具的一个或多个标识符;
朝向所述交叉路口驾驶的所述一个或多个其它运载工具中的各其它运载工具的速率;
所述一个或多个其它运载工具中的各其它运载工具离向着所述交叉路口的特定运载工具的距离;
朝向所述交叉路口的所述一个或多个其它运载工具中的各其它运载工具的车道;
所述自主运载工具的速率;以及
所述自主运载工具离所述交叉路口的距离。
18.根据权利要求14至17中任一项所述的方法,其中,接收来自所述神经网络的输出包括:接收一个或多个驾驶命令,以及其中,基于所述神经网络的输出来操作所述运载工具包括:指示控制电路基于所述一个或多个驾驶命令来操作所述运载工具。
19.根据权利要求14至17中任一项所述的方法,其中,从所述数据集取出所述多个字段包括:
使用与所述数据集相关联的API来执行请求所述多个字段的命令,API即应用编程接口;以及
响应于所述命令来接收与所述多个字段相关联的多个标识符。
20.根据权利要求14至17中任一项所述的方法,其中,识别与所述多个字段相关联的所述多个数据类型包括:
针对所述多个字段中的各字段选择与相应字段相关联的标识符;
将所选择的各标识符与同已知的数据类型相关联的多个标识符进行比较;以及
基于该比较来识别所述多个字段中的各字段的相应数据类型。
CN202010858470.7A 2019-08-23 2020-08-24 计算机实现的方法和用于运载工具自行操作的系统 Pending CN112417636A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962891002P 2019-08-23 2019-08-23
US62/891,002 2019-08-23

Publications (1)

Publication Number Publication Date
CN112417636A true CN112417636A (zh) 2021-02-26

Family

ID=72660823

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010858470.7A Pending CN112417636A (zh) 2019-08-23 2020-08-24 计算机实现的方法和用于运载工具自行操作的系统

Country Status (5)

Country Link
US (1) US11945440B2 (zh)
KR (3) KR102431324B1 (zh)
CN (1) CN112417636A (zh)
DE (1) DE102020210499A1 (zh)
GB (4) GB202311621D0 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114655213A (zh) * 2022-04-18 2022-06-24 重庆长安汽车股份有限公司 一种基于自学习的红绿灯路口驾驶控制系统及方法
CN117580747A (zh) * 2021-04-30 2024-02-20 北美日产公司 主动车道辅助的系统和方法

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11273836B2 (en) * 2017-12-18 2022-03-15 Plusai, Inc. Method and system for human-like driving lane planning in autonomous driving vehicles
DE102018109883A1 (de) * 2018-04-24 2018-12-20 Continental Teves Ag & Co. Ohg Verfahren und Vorrichtung zum kooperativen Abstimmen von zukünftigen Fahrmanövern eines Fahrzeugs mit Fremdmanövern zumindest eines Fremdfahrzeugs
US11834045B2 (en) 2019-10-08 2023-12-05 Motional Ad Llc Navigating multi-way stop intersections with an autonomous vehicle
US11531865B2 (en) * 2020-02-28 2022-12-20 Toyota Research Institute, Inc. Systems and methods for parallel autonomy of a vehicle
US20210341926A1 (en) * 2020-04-29 2021-11-04 Gm Cruise Holdings Llc Dynamic tire rotation during collision
US20220032949A1 (en) * 2020-07-29 2022-02-03 Uber Technologies, Inc. Routing feature flags
KR20220026656A (ko) * 2020-08-25 2022-03-07 현대모비스 주식회사 차량의 주행 제어 시스템 및 방법
CN113525400A (zh) * 2021-06-21 2021-10-22 上汽通用五菱汽车股份有限公司 变道提醒方法、装置、车辆及可读存储介质
US11400958B1 (en) * 2021-09-20 2022-08-02 Motional Ad Llc Learning to identify safety-critical scenarios for an autonomous vehicle
DE102022001728B4 (de) 2022-05-17 2024-01-04 Mercedes-Benz Group AG Verfahren zur Entwicklung eines autonomen Fahrsystems eines Fahrzeugs
US20230399014A1 (en) * 2022-06-14 2023-12-14 Motional Ad Llc Autonomous vehicle yielding
US11798407B1 (en) * 2022-08-03 2023-10-24 Soochow University Method and system for identifying lane changing intention of manually driven vehicle

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109426696A (zh) * 2017-08-29 2019-03-05 丰田自动车株式会社 自动驾驶评价装置以及自动驾驶评价方法
CN109491375A (zh) * 2017-09-13 2019-03-19 百度(美国)有限责任公司 用于自动驾驶车辆的基于驾驶场景的路径规划
US20190088148A1 (en) * 2018-07-20 2019-03-21 Cybernet Systems Corp. Autonomous transportation system and methods
US20190220028A1 (en) * 2019-03-26 2019-07-18 Intel Corporation Computer-assisted (ca)/autonomous driving (ad) vehicle inference model creation

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US254759A (en) * 1882-03-07 John nelles young
RU2389625C2 (ru) 2004-08-06 2010-05-20 Хонда Мотор Ко., Лтд. Устройство управления для транспортного средства
JP5125400B2 (ja) 2007-10-19 2013-01-23 トヨタ自動車株式会社 車両走行制御装置
US7639159B2 (en) 2007-10-29 2009-12-29 Kapsch Trafficcom Ag System and method for determining intersection right-of-way for vehicles
KR20090054417A (ko) 2009-04-30 2009-05-29 한국전자통신연구원 차량 및 운전자 정보 관리 시스템 및 그 방법
DE102012021282A1 (de) 2012-10-29 2014-04-30 Audi Ag Verfahren zur Koordination des Betriebs von vollautomatisiert fahrenden Kraftfahrzeugen
KR20150066303A (ko) 2013-12-06 2015-06-16 한국전자통신연구원 운전자의 주행 패턴을 반영하는 자율 주행 장치 및 그 방법
JP2018510373A (ja) 2015-02-10 2018-04-12 モービルアイ ビジョン テクノロジーズ リミテッド 自律車両ナビゲーションのための疎な地図
EP3272610B1 (en) 2015-04-21 2019-07-17 Panasonic Intellectual Property Management Co., Ltd. Information processing system, information processing method, and program
US9645577B1 (en) 2016-03-23 2017-05-09 nuTonomy Inc. Facilitating vehicle driving and self-driving
US10081357B2 (en) 2016-06-23 2018-09-25 Honda Motor Co., Ltd. Vehicular communications network and methods of use and manufacture thereof
KR20180086632A (ko) 2017-01-23 2018-08-01 한국전자통신연구원 자율주행 차량의 행동 결정 장치 및 방법
US10254121B2 (en) 2017-01-23 2019-04-09 Uber Technologies, Inc. Dynamic routing for self-driving vehicles
US11567509B2 (en) 2017-01-30 2023-01-31 Nec Corporation Control system, control method, and non-transitory storage medium
EP3631365A2 (en) 2017-05-30 2020-04-08 Nauto Global Limited Systems and methods for safe route determination
EP3410414A1 (en) 2017-05-31 2018-12-05 Panasonic Intellectual Property Corporation of America Information processing method, information processing apparatus, system, and storage medium
US11008000B2 (en) 2017-06-20 2021-05-18 Motional Ad Llc Risk processing for vehicles having autonomous driving capabilities
JP6938244B2 (ja) 2017-06-26 2021-09-22 本田技研工業株式会社 車両制御システム、車両制御方法、および車両制御プログラム
US10431081B2 (en) 2017-07-10 2019-10-01 Toyota Research Institute, Inc. Providing user assistance in a vehicle based on traffic behavior models
US10429842B2 (en) 2017-07-10 2019-10-01 Toyota Research Institute, Inc. Providing user assistance in a vehicle based on traffic behavior models
CA3027627C (en) 2017-07-13 2021-08-10 Beijing Didi Infinity Technology And Development Co., Ltd. Systems and methods for trajectory determination
US11378955B2 (en) 2017-09-08 2022-07-05 Motional Ad Llc Planning autonomous motion
US10254759B1 (en) 2017-09-14 2019-04-09 Waymo Llc Interactive autonomous vehicle agent
KR20190054374A (ko) 2017-11-13 2019-05-22 한국전자통신연구원 주행 경험 정보를 이용한 자율주행 학습 장치 및 방법
KR102056377B1 (ko) 2017-12-15 2019-12-16 엘지전자 주식회사 차량에 구비된 차량 제어 장치 및 차량의 제어방법
DE102018215949A1 (de) 2018-09-19 2020-03-19 Robert Bosch Gmbh Verfahren zur Trajektorienplanung eines beweglichen Objektes
DE112019006282T5 (de) 2018-12-18 2021-10-14 Motional Ad Llc Betrieb eines Fahrzeugs unter Verwendung mehrerer Bewegungsbeschränkungen
GB2592293B (en) 2018-12-18 2022-11-30 Motional Ad Llc Operation of a vehicle using motion planning with machine learning
US20200211394A1 (en) 2018-12-26 2020-07-02 Zoox, Inc. Collision avoidance system
EP3722908B1 (en) 2019-04-09 2022-11-30 Bayerische Motoren Werke Aktiengesellschaft Learning a scenario-based distribution of human driving behavior for realistic simulation model
KR102310491B1 (ko) 2019-11-27 2021-10-08 한국과학기술원 자율주행 자동차의 충돌 회피 경로 생성 방법 및 장치
US20220080962A1 (en) 2020-09-14 2022-03-17 Motional Ad Llc Vehicle operation using a behavioral rule model
US20220126876A1 (en) 2020-10-23 2022-04-28 Motional Ad Llc Vehicle operation using behavioral rule checks
US20230221128A1 (en) 2022-01-11 2023-07-13 Motional Ad Llc Graph Exploration for Rulebook Trajectory Generation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109426696A (zh) * 2017-08-29 2019-03-05 丰田自动车株式会社 自动驾驶评价装置以及自动驾驶评价方法
CN109491375A (zh) * 2017-09-13 2019-03-19 百度(美国)有限责任公司 用于自动驾驶车辆的基于驾驶场景的路径规划
US20190088148A1 (en) * 2018-07-20 2019-03-21 Cybernet Systems Corp. Autonomous transportation system and methods
US20190220028A1 (en) * 2019-03-26 2019-07-18 Intel Corporation Computer-assisted (ca)/autonomous driving (ad) vehicle inference model creation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
薛建儒;李庚欣;: "无人车的场景理解与自主运动", 无人系统技术, no. 02 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117580747A (zh) * 2021-04-30 2024-02-20 北美日产公司 主动车道辅助的系统和方法
CN114655213A (zh) * 2022-04-18 2022-06-24 重庆长安汽车股份有限公司 一种基于自学习的红绿灯路口驾驶控制系统及方法
CN114655213B (zh) * 2022-04-18 2024-05-24 重庆长安汽车股份有限公司 一种基于自学习的红绿灯路口驾驶控制系统及方法

Also Published As

Publication number Publication date
KR20220112742A (ko) 2022-08-11
GB2594900B (en) 2022-09-21
US11945440B2 (en) 2024-04-02
GB2589687B (en) 2022-03-02
GB2609759A (en) 2023-02-15
US20210053569A1 (en) 2021-02-25
GB202211535D0 (en) 2022-09-21
GB2594900A (en) 2021-11-10
GB202112060D0 (en) 2021-10-06
GB2609759B (en) 2023-09-27
KR20210023765A (ko) 2021-03-04
GB2589687A (en) 2021-06-09
GB202013093D0 (en) 2020-10-07
KR102431324B1 (ko) 2022-08-10
KR20230085127A (ko) 2023-06-13
DE102020210499A1 (de) 2021-02-25
KR102542970B1 (ko) 2023-06-14
GB202311621D0 (en) 2023-09-13

Similar Documents

Publication Publication Date Title
CN111915917B (zh) 计算机实现的方法、存储介质和运载工具
KR102542970B1 (ko) 데이터 기반 규칙 북
KR102532546B1 (ko) 미리 계산되거나 동적으로 생성된 궤적 뱅크로부터의 궤적 예측
CN113165668A (zh) 利用机器学习使用运动规划来操作运载工具
CN112634633B (zh) 利用自主运载工具对多路停车交叉口进行导航
CN112996703A (zh) 使用多个运动约束的运载工具的操作
CN115328110A (zh) 用于自主运载工具的系统和方法以及存储介质
KR102555318B1 (ko) 조건부 움직임 예측
CN113195333A (zh) 使用线性时间逻辑的自主运载工具操作
CN117083575A (zh) 轨迹检查器
CN115079687A (zh) 用于自主运载工具的系统、方法和存储介质
CN112014859A (zh) 估计速率分布
CN114625118A (zh) 运载工具、用于运载工具的方法以及存储介质
CN114252066A (zh) 运载工具、用于运载工具的方法以及存储介质
CN114812586A (zh) 用于运载工具的系统、方法和存储介质
KR20230156768A (ko) 브레이크 중재
CN112166068B (zh) 电动助力转向扭矩补偿
CN113196356A (zh) 交通灯估计
CN115220439A (zh) 用于运载工具的系统和方法以及存储介质
CN115077543A (zh) 运载工具及其方法和存储介质
CN114623840A (zh) 用于运载工具的方法、运载工具和存储介质
CN114938674A (zh) 基于活动来对感知对象进行分类
CN115729229A (zh) 用于运载工具的方法和运载工具系统
CN115016452A (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