CN109753047B - 用于自主车辆行为控制的系统和方法以及高级控制器 - Google Patents

用于自主车辆行为控制的系统和方法以及高级控制器 Download PDF

Info

Publication number
CN109753047B
CN109753047B CN201811294235.0A CN201811294235A CN109753047B CN 109753047 B CN109753047 B CN 109753047B CN 201811294235 A CN201811294235 A CN 201811294235A CN 109753047 B CN109753047 B CN 109753047B
Authority
CN
China
Prior art keywords
module
symbol
memory
sub
input
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.)
Active
Application number
CN201811294235.0A
Other languages
English (en)
Other versions
CN109753047A (zh
Inventor
P·帕拉尼萨梅
M·J·休伯
U·P·穆达里格
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.)
GM Global Technology Operations LLC
Original Assignee
GM Global Technology Operations 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 GM Global Technology Operations LLC filed Critical GM Global Technology Operations LLC
Publication of CN109753047A publication Critical patent/CN109753047A/zh
Application granted granted Critical
Publication of CN109753047B publication Critical patent/CN109753047B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/045Explanation of inference; Explainable artificial intelligence [XAI]; Interpretable artificial intelligence

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Automation & Control Theory (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Business, Economics & Management (AREA)
  • Game Theory and Decision Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Image Analysis (AREA)
  • Feedback Control In General (AREA)
  • Stored Programmes (AREA)

Abstract

提供了用于控制车辆的系统和方法。基于一个或多个输入数据源在高级控制器处生成控制信号,数据源包含以下中的至少一个:提供传感器输出信息、地图数据和目标的传感器。高级控制器包含第一控制器模块,第一控制器模块包含:输入处理模块、投影模块、存储器模块、世界模型模块以及包含控制模型执行器模块的决策处理模块。在低级控制器处理控制信号以生成命令,命令根据控制信号控制车辆的多个车辆致动器,以执行要执行的一个或多个调度动作以使驾驶任务自主化。

Description

用于自主车辆行为控制的系统和方法以及高级控制器
技术领域
引言
本公开一般涉及自主车辆,并且更具体地涉及用于自主车辆行为控制的系统和方法。
背景技术
自主车辆是能够感测其环境并且在很少或没有用户输入的情况下导航的车辆。自主车辆使用诸如雷达、激光雷达、图像传感器等的传感装置来感测其环境。自主车辆系统进一步使用来自全球定位系统(GPS)技术、导航系统、车辆对车辆通信、车辆对基础设施技术和/或线控驱动系统的信息来导航车辆。
车辆自主化被分类为范围从对应于具有全人为控制的无自主化的零到对应于无人为控制的全自主化的五的数值等级。各种自主驾驶员辅助系统(例如巡航控制、自适应巡航控制和停车辅助系统)对应于较低的自主化等级,而真正的“无人驾驶”车辆对应于较高的自主化等级。
目前,有许多不同的自主车辆控制的方法,但都存在缺点。现有方法的缺点包括但不限于,它们:无法形成记忆,无法使用过去的经验来告知当前的决策,缺乏世界的内部表征(例如,车道标记、交通标志等表征等是预编程的),和/或具有有限的情景/工作记忆。
例如,自主车辆控制的模型驱动方法依赖于程序员对驾驶行为和限制功能的理解。另一方面,自主车辆控制的数据驱动方法受其一般化能力的限制,其与数据量成比例。用于自主车辆控制的基于知识的学习方法(例如,归纳学习方法、演绎学习方法)共享数据驱动方法的限制。用于自主车辆控制的基于反馈的学习方法(例如,监督的、半监督的学习方法)需要经验证标记数据。用于自主车辆控制的无监督模型使用没有任务特定知识/动机的学习模式。照此,目前没有单一方法覆盖等级五(L5)自主车辆行为控制所需的所有特征。
因此,期望提供用于控制自主车辆行为的系统和方法,其可以在没有人为控制的情况下完全自主化(例如,五级自主化)。另外,结合附图和前述技术领域和背景技术,从随后的详细描述和所附权利要求,本公开的其它期望特征和特性将变得显而易见。
发明内容
提供了用于控制车辆的系统和方法。根据该方法,基于一个或多个输入数据源在高级控制器处生成控制信号,其包含以下中的至少一个:提供传感器输出信息、地图数据和目标的传感器。高级控制器包含第一控制器模块,第一控制器模块包含:输入处理模块、投影模块、存储器模块、世界模型模块以及包含控制模型执行器模块的决策处理模块。在低级控制器处理控制信号以生成命令,命令根据控制信号控制车辆的多个车辆致动器,以执行要执行的一个或多个调度动作以使驾驶任务自主化。
在一个实施例中,在高级控制器处生成控制信号包含:在输入处理模块处基于输入数据生成符号感知和子符号感知;基于符号感知和子符号感知在存储器模块处生成存储器数据、状态操作和提供给每个其它第一控制器模块的第一反馈信息;基于符号感知和子符号感知在世界模型模块处生成指示车辆外部环境中的其它实体的状态并且包括关于车辆外部环境中的对象的当前属性的信息的世界状态信息以及提供给每个其它第一控制器模块的第二反馈信息;基于符号感知和子符号感知在决策处理模块处生成查询、状态操作、存储器操作、包含控制动作和约束的控制模型以及提供给每个其它第一控制器模块的第三反馈信息;在投影模块处处理投影输入以生成:发送至存储器模块以更新存储器模块的存储器操作;发送至世界模型模块以在世界模型模块上进行修订的状态操作;用于在决策处理模块中做出行为决策的投影;以及提供给每个其它第一控制器模块的第四反馈信息;并且通过执行控制模型在控制模型执行器模块处生成控制信号。控制信号指定用于调度要执行的一个或多个调度动作以使驾驶任务自主化的控制动作和参数。
在一个实施例中,输入处理模块通过以下方式生成符号感知和子符号感知:处理第一学习输入以生成输入变换参数,第一学习输入包含:输入数据、符号感知、子符号感知、来自每个其它第一控制器模块的反馈信息以及来自决策处理模块的输入处理控制信息,其中输入处理控制信息包含命令和参数化;将输入变换参数发送至输入处理模块的符号感知模块和输入处理模块的子符号感知模块;在符号感知模块处处理输入数据、输入变换参数、来自决策处理模块的输入处理控制信息以及来自每个其它第一控制器模块的反馈信息,以将输入数据变换为符号感知;以及在子符号感知模块处处理输入数据、输入变换参数、来自决策处理模块的输入处理控制信息以及来自每个其它第一控制器模块的反馈信息,以将输入数据变换为子符号感知。符号感知是包含标记、谓词和逻辑表达中的至少一个的符号表示,并且子符号感知是包含概率分布、激活水平和置信水平中的至少一个的子符号表示。
在一个实施例中,投影输入包含:来自输入处理模块的符号感知和子符号感知、来自存储器模块的存储器数据和第一反馈信息、来自世界模型模块的世界状态信息和第二反馈信息以及来自决策处理模块的查询和第三反馈信息。投影模块可以通过以下方式处理投影输入:在第一符号模块处执行符号投影处理,以将投影输入变换为符号表示并且生成符号投影;在第一子符号模块处执行子符号投影处理,以将投影输入变换为子符号表示并且生成子符号投影;集成符号投影和子符号投影以生成投影、发送至存储器模块以更新存储器模块的存储器操作、发送至世界模型模块以在世界模型模块处进行修订的状态操作、发送至决策处理模块以在决策处理模块处做出行为决策的投影以及第四反馈信息。此外,可以处理第二学习输入以生成投影变换参数,投影模块使用投影变换参数来改进投影模块的输入/输出和投影模块的每个模块的功能。第二学习输入包含:来自输入处理模块的符号感知和子符号感知、来自存储器模块的存储器数据、来自世界模型模块的世界状态信息、来自决策处理模块的查询、来自第一符号模块的符号投影、来自第一子符号模块的子符号投影以及来自第一集成模块的投影。每个存储器操作包含以下命令:查询存储器模块以从存储器模块读取存储器数据,将存储器数据写入存储器模块,从存储器模块删除存储器数据,或修改存储在存储器模块处的存储器数据。每个状态操作包含以下命令:查询世界模型模块以从世界模型模块读取世界状态信息,将世界状态信息写入世界模型模块,从世界模型模块中删除世界状态信息,或在世界模型模块处修改世界状态信息。提供给决策处理模块的投影包含以下中的至少一个:未来预测活动和车辆外部环境中的其它实体的状态。
在一个实施例中,存储器模块基于符号感知和子符号感知生成存储器数据、状态操作和第一反馈信息,第一反馈信息通过以下方式提供给每个其它第一控制器模块:处理符号感知和子符号感知、来自投影模块的存储器操作、来自世界模型模块的世界状态信息以及来自决策处理模块的存储器操作,以生成存储器数据、状态操作和提供给每个其它第一控制器模块的第一反馈信息。存储器数据包含:捕获潜在重要性的历史数据的历史信息。此外,存储器数据被发送至投影模块和决策处理模块,并且状态操作被发送至世界模型模块。
在一个实施例中,存储器模块基于符号感知和子符号感知生成存储器数据、状态操作和第一反馈信息,第一反馈信息通过以下方式提供给每个其它第一控制器模块:在第二符号模块处执行符号存储器处理以将存储器输入信息变换为符号表示并且生成符号存储器,其中存储器输入信息包含:来自输入处理模块的符号感知和子符号感知、来自投影模块的存储器操作、来自世界模型模块的世界状态信息、来自决策处理模块的存储器操作和存储器变换参数;在第二子符号模块处执行子符号存储器处理,以将存储器输入信息变换为子符号表示并且生成子符号存储器;在第二集成模块处集成第二集成输入,以生成第二反馈信息、发送至投影模块的存储器数据、发送至世界模型模块的状态操作以及发送至决策处理模块的存储器数据,其中第二集成输入包含:符号存储器、子符号存储器和存储器变换参数。此外,基于第三学习输入在第二学习模块处生成存储器变换参数,第三学习输入包含:符号存储器、子符号存储器、来自投影模块的存储器操作、来自世界模型模块的世界状态信息、来自决策处理模块的存储器操作和来自第二集成模块的存储器数据。存储器变换参数被发送至第二符号模块和第二子符号模块,用于处理以改进存储器模块的输入/输出和存储器模块的每个模块的功能。
在一个实施例中,世界模型模块基于符号感知和子符号感知生成世界状态信息以及第二反馈信息,第二反馈信息通过以下方式提供给每个其它第一控制器模块:处理世界模型输入信息以生成:提供给每个其它第一控制器模块的第二反馈信息;以及提供给投影模块、存储器模块和决策处理模块的世界状态信息。世界模型输入信息包含:符号感知、子符号感知以及来自投影模块、存储器模块和决策处理模块的状态操作。
在一个实施例中,世界模型模块基于符号感知和子符号感知生成世界状态信息以及第二反馈信息,第二反馈信息通过以下方式提供给每个其它第一控制器模块:在第三符号模块处执行符号世界模型处理以将世界模型输入信息变换为符号表示并且生成符号世界状态信息;在第三子符号模块处执行子符号世界模型处理,以将世界模型输入信息变换为子符号表示并且生成子符号世界状态信息;并且在第三集成模块处集成符号世界状态信息和子符号世界状态信息以生成:世界状态信息、提供给每个其它第一控制器模块的第二反馈信息以及发送至投影模块、存储器模块和决策处理模块的世界状态信息。
在一个实施例中,世界模型输入信息进一步包含世界模型变换参数。此外,第三学习模块可以基于第四学习输入生成世界模型变换参数。第四学习输入包含:符号感知和子符号感知、来自投影模块、存储器模块和决策处理模块的状态操作、符号世界状态信息、子符号世界状态信息以及来自集成模块的世界状态信息。世界模型变换参数被发送至第三符号模块和第三子符号模块以进行处理,以改进世界模型模块的输入/输出和世界模型模块的每个模块的功能。
在一个实施例中,决策处理模块基于符号感知和子符号感知通过以下方式生成查询、状态操作、存储器操作、控制模型和提供给每个其它第一控制器模块的第三反馈信息:处理决策处理输入以确定行为决策,行为决策包含要执行的一个或多个调度动作以使驾驶任务自主化并生成查询、状态操作、存储器操作、控制模型和提供给每个其它第一控制器模块的第三反馈信息。决策处理输入包含:符号感知和子符号感知、来自投影模块的投影信息、来自存储器模块的存储器数据以及来自世界模型模块的世界状态信息。
此外,方法进一步包含:将查询发送至投影模块,将存储器操作发送至存储器模块,以及将状态操作发送至世界模型模块。发送至投影模块的每个查询包含:对做出行为决策所必需的来自投影模块的投影数据的请求。每个存储器操作包含以下命令:查询存储器模块以从存储器模块读取做出行为决策所必需的存储器数据,根据做出行为决策的需要将存储器数据写入存储器模块,根据做出行为决策的需要从存储器模块中删除存储器数据,或者根据做出行为决策的需要在存储器模块处修改存储器数据。每个状态操作包含以下命令:查询世界模型模块以从做出行为决策所需的世界模型模块读取世界状态信息,将世界状态信息写入做出行为决策所需的世界模型模块,根据做出行为决策的需要从世界模型模块中删除世界状态信息,或根据做出行为决策的需要在世界模型模块处修改世界状态信息。
在一个实施例中,决策处理模块基于符号感知和子符号感知通过以下方式生成查询、状态操作、存储器操作、控制模型和提供给每个其它第一控制器模块的第三反馈信息:在第四符号模块处执行符号决策处理,以将决策处理输入变换为符号表示并生成包含动作、动作参数和约束中的一个或多个的符号决策处理结果;在第四子符号模块处执行子符号决策处理,以将决策处理输入变换为子符号表示并且生成包含动作、动作参数和约束中的一个或多个的子符号决策处理结果,以及在第四集成模块处集成符号决策处理结果和子符号决策处理结果以生成:决策处理结果,其中决策处理结果包含:控制模型、提供给每个其它第一控制器模块的第三反馈信息、发送至投影模块的查询、发送至存储器模块的存储器操作以及发送至世界模型模块的状态操作。决策处理输入包含:来自输入处理模块的符号感知和子符号感知、来自投影模块的投影信息、来自存储器模块的存储器数据、来自世界模型模块的世界状态信息以及决策处理变换参数。
此外,方法进一步包含:在第四学习模块处基于第五学习输入生成决策处理变换参数,第五学习输入包含:来自输入处理模块的符号感知和子符号感知、来自投影模块的投影信息、来自存储器模块的存储器数据以及来自世界模型模块的世界状态信息;以及将决策处理变换参数发送至第四符号模块和第四子符号模块以进行处理,以改进决策处理模块的输入/输出和决策处理模块的每个模块的功能。
在一个实施例中,控制模型执行器模块基于从决策处理模块提供的控制模型,通过以下方式生成提供给低级控制器的控制信号:在第五符号模块处执行符号控制模型处理,以将控制模型变换为符号表示并生成包含控制动作和约束的符号表示的符号控制模型;在第五子符号模块处执行子符号控制模型处理,以将控制模型变换为子符号表示并生成包括控制动作和约束的子符号表示的子符号控制模型;以及集成第五集成模块、符号控制模型和子符号控制模型,以生成指定发送至低级控制器的控制动作和参数的控制信号,其中控制动作和参数提供调用低级控制器的能力,用于调度要执行的一个或多个调度动作以使驾驶任务自主化。
此外,方法进一步包含:在第五学习模块处基于第六学习输入生成控制模型变换参数,第六学习输入包含:符号控制模型、子符号控制模型和来自第五集成模块的控制信号;将控制模型变换参数发送至第五符号模块和第五子符号模块以进行处理,以改进控制模型执行器模块的输入/输出和控制模型执行器模块的每个模块的功能。
在每种情况下,由另一个第一控制器模块发送至特定第一控制器模块的反馈信息包含以下中的至少一个:和与该特定第一控制器模块的先前交互相关的信息内容,其指示从该特定第一控制器模块接收的信息的适当性或不适当性;以及关于与该特定第一控制器模块的先前交互的及时性的信息。反馈信息包含以下中的至少一个:对与特定第一控制器模块的先前交互作出积极反应的信号,信号提供正增强信息,正增强信息影响在该特定第一控制器模块处的处理的调整以进行处理以改进该特定第一控制器模块的输入/输出和性能;以及对与该特定第一控制器模块的先前交互作出负反应的信号,信号提供负增强信息,负增强信息影响该特定第一控制器模块处的处理的调整以进行处理以改进该特定第一控制器模块的输入/输出和性能。
在一个实施例中,提供了一种车辆控制系统,其包含:一个或多个输入数据源,包含以下中的至少一个:提供传感器输出信息、地图数据和目标的传感器;配置为处理控制信号以生成命令的低级控制器,命令根据控制信号控制车辆的多个车辆致动器,以执行要执行的一个或多个调度动作以使驾驶任务自主化;以及包含多个第一控制器模块并配置为生成控制信号的高级控制器。高级控制器的第一控制器模块包含:配置为基于输入数据生成符号感知和子符号感知的输入处理模块;存储器模块,其配置为基于符号感知和子符号感知生成存储器数据、状态操作和提供给每个其它第一控制器模块的第一反馈信息;世界模型模块,其配置为基于符号感知和子符号感知生成指示车辆外部环境中的其它实体的状态并且包括关于车辆外部环境中的对象的当前属性的信息的世界状态信息以及提供给每个其它第一控制器模块的第二反馈信息;以及决策处理模块,其配置为基于符号感知和子符号感知生成查询、状态操作、存储器操作、包含控制动作和约束的控制模型以及提供给每个其它第一控制器模块的第三反馈信息;以及投影模块,其配置为:处理投影输入以生成:发送至存储器模块以更新存储器模块的存储器操作;发送至世界模型模块以在世界模型模块上进行修订的状态操作;用于在决策处理模块中做出行为决策的投影;以及提供给每个其它第一控制器模块的第四反馈信息。决策处理模块包含:控制模型执行器模块,其配置为:通过执行控制模型生成提供给低级控制器的控制信号,其中控制信号指定用于调度要执行的一个或多个调度动作以使驾驶任务自主化的控制动作和参数。
在一个实施例中,输入处理模块包含配置为基于输入数据和输入变换参数生成符号感知的符号感知模块、配置为基于输入数据和输入变换参数生成子符号感知的子符号感知模块以及输入学习模块。符号感知是包含标记、谓词和逻辑表达中的至少一个的符号表示,而子符号感知是包含以下中的至少一个的子符号表示:概率分布、激活水平和置信水平。输入学习模块配置为处理第一学习输入以生成输入变换参数,并将输入变换参数发送至符号感知模块和子符号感知模块。第一学习输入包含:输入数据、符号感知、子符号感知、来自每个其它第一控制器模块的反馈信息以及来自决策处理模块的输入处理控制信息,其中输入处理控制信息包含命令和参数化。输入变换参数由符号感知模块和子符号感知模块使用,以将输入数据变换为符号感知和子符号感知。
在一个实施例中,投影输入包含:来自输入处理模块的符号感知和子符号感知、来自存储器模块的存储器数据和第一反馈信息、来自世界模型模块的世界状态信息和第二反馈信息以及来自决策处理模块的查询和第三反馈信息。在一个实施例中,投影模块包含第一符号模块、第一子符号模块、第一集成模块和第一学习模块。第一符号模块配置为执行符号投影处理以将投影输入变换为符号表示并生成符号投影,并且第一子符号模块配置为:执行子符号投影处理以将投影输入变换为子符号表示并生成子符号投影。第一集成模块配置为:接收第一集成输入,其包含:符号投影、子符号投影;以及集成符号投影和子符号投影以生成:投影、发送至存储器模块以更新存储器模块的存储器操作、发送至世界模型模块以在世界模型模块处进行修订的状态操作、发送至决策处理模块以在决策处理模块处做出行为决策的投影以及第四反馈信息。第一学习模块配置为接收第二学习输入,基于第二学习输入中的一个或多个生成投影变换参数,以及将投影变换参数发送至第一符号模块和第一子符号模块以进行处理以改进投影模块的输入/输出以及投影模块的每个模块的功能。第二学习输入包含:来自输入处理模块的符号感知和子符号感知、来自存储器模块的存储器数据、来自世界模型模块的世界状态信息、来自决策处理模块的查询、来自第一符号模块的符号投影、来自第一子符号模块的子符号投影以及来自第一集成模块的投影。
在一个实施例中,存储器模块化、第二符号模块、第二子符号模块、第二集成模块和第二学习模块。存储器输入信息包含:来自输入处理模块的符号感知和子符号感知、来自投影模块的存储器操作、来自世界模型模块的世界状态信息、来自决策处理模块的存储器操作以及存储器变换参数。第二符号模块配置为接收存储器输入信息,以及执行符号存储器处理以将存储器输入信息变换为符号表示并生成符号存储器。第二子符号模块配置为接收存储器输入信息,以及执行子符号存储器处理以将存储器输入信息变换为子符号表示并生成子符号存储器。第二集成模块配置为接收包含符号存储器、子符号存储器和存储器变换参数的第二集成输入;集成第二集成输入以生成第二反馈信息、发送至投影模块的存储器数据、发送至世界模型模块的状态操作以及发送至决策处理模块的存储器数据。存储器数据包含:捕获潜在重要性的历史数据的历史信息。第二学习模块配置为:接收第三学习输入,以及基于第三学习输入中的一个或多个生成存储器变换参数,以及将存储器变换参数发送至第二符号模块和第二子符号模块以进行处理以改进存储器模块的输入/输出以及存储器模块的每个模块的功能。第三学习输入包含:符号存储器、子符号存储器、来自投影模块的存储器操作、来自世界模型模块的世界状态信息、来自决策处理模块的存储器操作和来自第二集成模块的存储器数据。
在一个实施例中,世界模型模块进一步配置为:接收世界模型输入信息,其包含:来自输入处理模块的符号感知和子符号感知,以及来自投影模块、存储器模块以及决策处理模块的状态操作,以及世界模型变换参数。在一个实施例中,世界模型模块包含第三符号模块、第三子符号模块、第三集成模块和第三学习模块。第三符号模块配置为:执行符号世界模型处理以将世界模型输入信息变换为符号表示并且生成符号世界状态信息。第三子符号模块配置为:执行子符号世界模型处理以将世界模型输入信息变换为子符号表示并且生成子符号世界状态信息。第三集成模块配置为:接收第三集成输入,其包含:来自符号模块的符号世界状态信息、来自子符号模块的子符号世界状态信息以及世界模型变换参数;以及集成符号世界状态信息和子符号世界状态信息以生成世界状态信息、第二反馈信息、以及发送至投影模块、存储器模块和决策处理模块的世界状态信息。第三学习模块配置为:接收第四学习输入,其包含:符号感知和子符号感知、来自投影模块的状态操作、来自存储器模块的状态操作、来自决策处理模块的状态操作、来自第三符号模块的符号世界状态信息、来自第三子符号模块的子符号世界状态信息以及来自集成模块的世界状态信息;基于第四学习输入生成世界模型变换参数;以及将世界模型变换参数发送至第三符号模块和第三子符号模块以进行处理,以改进世界模型模块的输入/输出和世界模型模块的每个模块的功能。
在一个实施例中,决策处理模块进一步配置为接收决策处理输入,其包含:来自输入处理模块的符号感知和子符号感知、来自投影模块的投影信息、来自存储器模块的存储器数据以及来自世界模型模块的世界状态信息;处理决策处理输入以确定包含要执行的一个或多个调度动作以使驾驶任务自主化的行为决策,并且生成查询、状态操作、存储器操作、控制模型和提供给每个其它第一控制器模块的第三反馈信息;将查询发送至投影模块,其中发送至投影模块的每个查询包含对做出行为决策所需的投影模块的投影数据的请求;并且将存储器操作发送至存储器模块,其中每个存储器操作包含以下命令:查询存储器模块以从做出行为决策所需的存储器模块读取存储器数据,根据做出行为决策的需要将存储器数据写入存储器模块,根据做出行为决策的需要从存储器模块删除存储器数据,或者根据做出行为决策的需要在存储器模块处修改存储器数据;并且将状态操作发送至世界模型模块,其中每个状态操作包含以下命令:查询世界模型模块以从做出行为决策所需的世界模型模块读取世界状态信息,将世界状态信息写入做出行为决策所需的世界模型模块,根据做出行为决策的需要从世界模型模块中删除世界状态信息,或根据做出行为决策的需要在世界模型模块处修改世界状态信息。
在一个实施例中,决策处理模块包含第四符号模块、第四子符号模块、第四集成模块和第四学习模块。第四符号模块配置为:接收决策处理输入,其包含:来自输入处理模块的符号感知和子符号感知、来自投影模块的投影信息、来自存储器模块的存储器数据、来自世界模型模块的世界状态信息以及决策处理变换参数;以及执行符号决策处理以将决策处理输入变换为符号表示,并且生成符号决策处理结果,其中符号决策处理结果包含动作、动作参数和约束中的一个或多个。第四子符号模块配置为:执行子符号决策处理以将决策处理输入变换为子符号表示,并且生成子符号决策处理结果,其中子符号决策处理结果包含动作、动作参数和约束中的一个或多个。第四集成模块配置为:接收第四集成输入,其包含:符号决策处理结果、子符号决策处理结果和决策处理变换参数;以及将符号决策处理结果与子符号决策处理结果集成,以生成:决策处理结果,其中决策处理结果包含:控制模型、第三反馈信息、发送至投影模块的查询、发送至存储器模块的存储器操作以及发送至世界模型模块的状态操作。第四学习模块配置为:接收第五学习输入,其包含:来自输入处理模块的符号感知和子符号感知、来自投影模块的投影信息、来自存储器模块的存储器数据以及来自世界模型模块的世界状态信息;基于第五学习输入中的一个或多个生成决策处理变换参数;以及将决策处理变换参数发送至第四符号模块和第四子符号模块以进行处理,以改进决策处理模块的输入/输出和决策处理模块的每个模块的功能。
在一个实施例中,控制模型执行器模块包含第五符号模块、第五子符号模块、第五集成模块和第五学习模块。第五符号模块配置为执行符号控制模型处理以将控制模型输入信息变换为符号表示并生成包含控制动作和约束的符号表示的符号控制模型,并且第五子符号模块配置为:执行子符号控制模型处理以将控制模型输入信息变换为子符号表示并生成包含控制动作和约束的子符号表示的子符号控制模型。第五集成模块配置为:集成符号控制模型和子符号控制模型以生成指定发送至低级控制器的控制动作和参数的控制信号,其中控制动作和参数提供用于调用低级控制器的能力以调度要执行的一个或多个调度动作以使驾驶任务自主化。第五学习模块配置为:接收第六学习输入,其包含:符号控制模型、子符号控制模型和来自第五集成模块的控制信号;基于第六学习输入生成控制模型变换参数;以及将控制模型变换参数发送至第五符号模块和第五子符号模块以进行处理,以改进控制模型执行器模块的输入/输出和控制模型执行器模块的每个模块的功能。
在一个实施例中,高级控制器配置为生成控制信号,控制信号用于生成控制车辆的多个车辆致动器的命令,以执行要执行的一个或多个调度动作以使驾驶任务自主化。高级控制器包含多个第一控制器模块,多个第一控制器模块包括:配置为基于一个或多个输入数据源生成符号感知和子符号感知的输入处理模块,其包含以下中的至少一个:提供传感器输出信息、地图数据和目标的传感器;存储器模块,其配置为基于符号感知和子符号感知生成存储器数据、状态操作和提供给每个其它第一控制器模块的第一反馈信息;世界模型模块,其配置为基于符号感知和子符号感知生成指示车辆外部环境中的其它实体的状态并且包括关于车辆外部环境中的对象的当前属性的信息的世界状态信息以及提供给每个其它第一控制器模块的第二反馈信息;以及决策处理模块,其配置为基于符号感知和子符号感知生成查询、状态操作、存储器操作、包含控制动作和约束的控制模型以及提供给每个其它第一控制器模块的第三反馈信息;以及投影模块,其配置为:处理投影输入以生成:发送至存储器模块以更新存储器模块的存储器操作;发送至世界模型模块以在世界模型模块上进行修订的状态操作;用于在决策处理模块中做出行为决策的投影;以及提供给每个其它第一控制器模块的第四反馈信息。决策处理模块包含控制模型执行器模块,其配置为:通过执行控制模型生成控制信号,其中控制信号指定用于调度要执行的一个或多个调度动作的控制动作和参数以使驾驶任务自主化。
附图说明
在下文中将结合以下附图描述示例性实施例,其中相同的附图标记表示相同的元件,并且其中:
图1是根据各种实施例的示出自主车辆的功能框图;
图2是根据各种实施例的示出具有图1的一个或多个自主车辆的运输系统的功能框图;
图3是根据各种实施例的示出自主驾驶系统(ADS)的功能框图;
图4是根据各种实施例的示出车辆控制系统的框图;
图5是根据各种实施例的示出图4的高级控制器的进一步细节的框图;
图6是根据各种实施例的示出由图5的输入处理模块执行的控制方法的流程图;
图7是根据各种实施例的示出由图5的存储器模块执行的方法的流程图;
图8是根据各种实施例的示出由图5的世界模型模块执行的方法的流程图;
图9是根据各种实施例的示出由图5的投影模块执行的方法的流程图;
图10是根据各种实施例的示出由图5的决策处理模块执行的方法的流程图;
图11是根据各种实施例的示出由图5的控制模型执行器模块执行的方法的流程图;以及
图12是解释控制系统的模块如何提供五级自主化所需的各种特性的表格。
具体实施方式
以下详细描述本质上仅是示例性的,并不旨在限制应用和用途。另外,无意受前述技术领域、背景技术、发明内容或以下详细描述中提出的任何明示或暗示的理论的约束。如本文所使用的,术语模块单独地或以任何组合指代任何硬件、软件、固件、电子控制部件、处理逻辑和/或处理器装置,包括但不限于:专用集成电路(ASIC)、电子电路、处理器(共享的、专用的或组)和执行一个或多个软件或固件程序的存储器、组合逻辑电路和/或提供所述功能的其它合适的部件。
在本文中可以在功能和/或逻辑块部件和各种处理步骤方面描述本公开的实施例。应当认识到,这种块部件可以由配置为执行指定功能的任何数量的硬件、软件和/或固件部件来实现。例如,本公开的实施例可以采用各种集成电路部件,例如,存储器元件、数字信号处理元件、逻辑元件、查找表等,其可以在一个或多个微处理器或其它控制装置的控制下执行各种功能。此外,本领域技术人员将认识到,本公开的实施例可以结合任何数量的系统来实践,并且本文描述的系统仅仅是本公开的示例性实施例。
为简洁起见,本文中可能不详细描述与信号处理、数据传输、信令、控制和系统的其它功能方面(以及系统的各个操作部件)有关的传统技术。另外,本文包含的各个图中所示的连接线旨在表示各种元件之间的实例性功能关系和/或物理耦合。应当注意,在本公开的实施例中可以存在许多替代或附加的功能关系或物理连接。
图1是根据各种实施例的示出自主车辆10的功能框图。车辆包括用于实施控制系统的部件,控制系统使用混合范例智能地控制车辆10,混合范例智能地将启发式、符号式、连接性和认知人工智能(AI)技术与基于规则的程序逻辑相结合,以覆盖整个自主驾驶操作空间的方式实时实现行为决策并解决复杂自主车辆驾驶任务。
如图1中所示,车辆10通常包括底盘12、主体14、前轮16和后轮18。主体14布置在底盘12上并且基本上包围车辆10的部件。主体14和底盘12可以共同地形成车架。车轮16-18各自在主体14的相应角落附近可旋转地耦合至底盘12。
在各种实施例中,车辆10是自主车辆,并且控制系统结合到自主车辆10(下文中称为自主车辆10)中。例如,自主车辆10是自动控制以将乘客从一个位置运送到另一个位置的车辆。在所示实施例中,车辆10被描绘为客车,但是应当认识到,也可以使用包括摩托车、卡车、运动型多功能车(SUV)、娱乐车辆(RV)、海上船只、飞机等的任何其它交通工具。在示例性实施例中,自主车辆10是所谓的四级或五级自主化系统。四级系统表示“高度自主化”,指的是动态驾驶任务的所有方面的自动驾驶系统的驾驶模式特定性能,即使人类驾驶员没有对干预请求适当地进行响应。五级系统表示“全自主化”,指的是自动驾驶系统在可以由人类驾驶员管理的所有道路和环境条件下的动态驾驶任务的所有方面的全时性能。
如图所示,自主车辆10通常包括推进系统20、传输系统22、转向系统24、制动系统26、传感器系统28、致动器系统30、至少一个数据存储装置32、至少一个控制器34和通信系统36。在各种实施例中,推进系统20可以包括内燃机、诸如牵引电机的电气机械和/或燃料电池推进系统。传输系统22配置为根据可选择的速度比将动力从推进系统20传递至车轮16-18。根据各种实施例,传输系统22可以包括有级自动变速器、无级变速器或其它适当的变速器。制动系统26配置为向车轮16-18提供制动扭矩。在各种实施例中,制动系统26可以包括摩擦制动器、线控制动器、诸如电气机械的再生制动系统和/或其它适当的制动系统。转向系统24影响车轮16-18的位置。尽管被描绘为包括用于示例目的的转向盘,但是在本公开的范围内设想的一些实施例中,转向系统24可以不包括转向盘。
传感器系统28包括一个或多个传感装置40a-40n,其感测自主车辆10的外部环境和/或内部环境的可观察状况。传感装置40a-40n可以包括但不限于雷达、激光雷达、全球定位系统、光学摄像机、热敏摄像机、超声波传感器、惯性测量单元和/或其它传感器。致动器系统30包括一个或多个致动器装置42a-42n,其控制一个或多个车辆特征,例如但不限于推进系统20、传输系统22、转向系统24和制动系统26。在各种实施例中,车辆特征可以进一步包括内部和/或外部车辆特征,例如但不限于门、后备箱和诸如空气、音乐、照明等的舱室特征(未标号)。
通信系统36配置为向和从其它实体48无线传送信息,例如但不限于其它车辆(“V2V”通信)、基础设施(“V2I”通信)、远程系统和/或个人装置(关于图2更详细地描述)。在示例性实施例中,通信系统36是无线通信系统,其配置为使用IEEE 802.11标准经由无线局域网(WLAN)或通过使用蜂窝数据通信进行通信。然而,诸如专用短程通信(DSRC)信道的附加或替代通信方法也被认为在本公开的范围内。DSRC信道是指专为汽车使用而设计的单向或双向短程到中程无线通信信道以及相应组的协议和标准。
数据存储装置32存储用于自动控制自主车辆10的数据。在各种实施例中,数据存储装置32存储可导航环境的定义映射。在各种实施例中,定义映射可以由远程系统预定义并且从远程系统获得(关于图2进一步详细描述)。例如,定义映射可以由远程系统组装并且传送到自主车辆10(以无线方式和/或以有线方式)并且存储在数据存储装置32中。可以认识到,数据存储装置32可以是控制器34的一部分,与控制器34分开,或者控制器34的一部分和单独系统的一部分。
控制器34包括至少一个处理器44和计算机可读存储装置或介质46。处理器44可以是任何定制的或商用的处理器、中央处理单元(CPU)、图形处理单元(GPU)、与控制器34相关联的若干处理器中的辅助处理器、基于半导体的微处理器(以微芯片或芯片组的形式)、宏处理器、其任何组合或通常用于执行指令的任何装置。例如,计算机可读存储装置或介质46可以包括只读存储器(ROM)、随机存取存储器(RAM)和保活存储器(KAM)中的易失性和非易失性存储。KAM是永久性或非易失性存储器,其可用于在处理器44断电时存储各种操作变量。计算机可读存储装置或介质46可以使用许多已知存储器装置中的任何一种来实施,例如PROM(可编程只读存储器)、EPROM(电子PROM)、EEPROM(电子可擦除PROM)、闪存或能够存储数据的任何其它电、磁、光或组合存储器装置,其中一些代表可执行指令,由控制器34用于控制自主车辆10。
指令可以包括一个或多个单独程序,每个程序包含用于实施逻辑功能的可执行指令的有序列表。当由处理器44执行时,指令接收并处理来自传感器系统28的信号,执行用于自动控制自主车辆10的部件的逻辑、计算、方法和/或算法,并且生成至致动器系统30的控制信号,以基于逻辑、计算、方法和/或算法自动控制自主车辆10的部件。尽管图1中仅示出了一个控制器34,自主车辆10的实施例可以包括任何数量的控制器34,其通过任何合适的通信介质或通信介质的组合进行通信,并且协作以处理传感器信号、执行逻辑、计算、方法和/或算法,以及生成控制信号以自动控制自主车辆10的特征。在一个实施例中,如下面将参照图4-12更详细地描述的,控制器34可以包括高级控制器,高级控制器基于输入数据生成控制信号,输入数据被提供给低级控制器,低级控制器处理控制信号以生成控制致动器系统30的各种致动器的命令(例如,诸如自动转向控制、自动加速控制、自动制动控制的横向控制器和纵向控制器),以执行要执行的一个或多个调度动作以使驾驶任务自主化。
在各种实施例中,控制器34的一个或多个指令体现在控制系统中,并且当由处理器44执行时,智能地将符号式、连接性和认知技术与基于规则的过程逻辑相结合,以实现行为决策并实时解决复杂车辆驾驶任务。
现在参照图2,在各种实施例中,关于图1描述的自主车辆10可以适合用于特定地理区域(例如,城市、学校或商业园区、购物中心、游乐园、活动中心等)中的出租车或穿梭系统的环境,或者可以只由远程系统管理。例如,自主车辆10可以与基于自主车辆的远程运输系统相关联。图2示出了总体上以50示出的操作环境的示例性实施例,其包括基于自主车辆的远程运输系统52,远程运输系统52与如关于图1所描述的一个或多个自主车辆10a-10n相关联。在各种实施例中,操作环境50进一步包括一个或多个用户装置54,其经由通信网络56与自主车辆10和/或远程运输系统52通信。
通信网络56根据需要支持由操作环境50支持的装置、系统和部件之间的通信(例如,经由有形通信链路和/或无线通信链路)。例如,通信网络56可以包括无线载波系统60,例如蜂窝电话系统,其包括多个蜂窝塔(未示出)、一个或多个移动交换中心(MSC)(未示出)以及将无线载波系统60与陆地通信系统连接所需的任何其他联网部件。每个蜂窝塔包括发送和接收天线和基站,来自不同蜂窝塔的基站直接或经由诸如基站控制器的中间设备连接至MSC。无线载波系统60可以实施任何合适的通信技术,包括例如数字技术,例如CDMA(例如,CDMA 2000)、LTE(例如,4G LTE或5G LTE)、GSM/GPRS或其它当前或新兴的无线技术。其它蜂窝塔/基站/MSC布置是可能的,并且可以与无线载波系统60一起使用。例如,基站和蜂窝塔可以共同位于同一站点,或者它们可以彼此远程定位,每个基站可以负责单个蜂窝塔,或者单个基站可以服务于各个蜂窝塔,或者各个基站可以耦合至单个MSC,仅举几个可能的布置。
除了包括无线载波系统60之外,可以包括卫星通信系统64形式的第二无线载波系统,以提供与自主车辆10a-10n的单向或双向通信。这可以使用一个或多个通信卫星(未示出)和上行链路发射站(未示出)来完成。单向通信可以包括例如卫星无线电服务,其中节目内容(新闻、音乐等)由发射站接收,打包以便上载,然后发送至卫星,卫星将节目广播给订户。双向通信可以包括例如使用卫星在车辆10和站之间中继电话通信的卫星电话服务。除了无线载波系统60之外或代替无线载波系统60,可以利用卫星电话。
进一步可以包括陆地通信系统62,其是连接至一个或多个陆线电话的传统陆基电信网络并将无线载波系统60连接至远程运输系统52。例如,陆地通信系统62可以包括例如用于提供硬连线电话、分组交换数据通信和因特网基础设施的公共交换电话网(PSTN)。陆地通信系统62的一个或多个段可以通过使用标准有线网络、光纤或其它光学网络、线缆网络、电力线、诸如无线局域网(WLAN)的其它无线网络或提供宽带无线接入(BWA)的网络或其任何组合来实施。另外,远程运输系统52不需要经由陆地通信系统62连接,而是可以包括无线电话设备,使得它可以直接与无线网络(例如无线载波系统60)通信。
尽管图2中仅示出了一个用户装置54,操作环境50的实施例可以支持任何数量的用户装置54,包括由一个人拥有、操作或以其它方式使用的多个用户装置54。可以使用任何合适的硬件平台来实施由操作环境50支持的每个用户装置54。在这方面,用户装置54可以以任何常见的形状因子实现,包括但不限于:台式计算机;移动计算机(例如平板式计算机、膝上型计算机或上网本计算机);智能电话;视频游戏装置;数字媒体播放器;一件家庭娱乐设备;数字摄像机或视频摄像机;可穿戴计算装置(例如,智能手表、智能眼镜、智能服装);等等。由操作环境50支持的每个用户装置54被实现为计算机实施的或基于计算机的装置,其具有执行本文描述的各种技术和方法所需的硬件、软件、固件和/或处理逻辑。例如,用户装置54包括可编程装置形式的微处理器,其包括存储在内部存储器结构中的一个或多个指令并且应用于接收二进制输入以创建二进制输出。在一些实施例中,用户装置54包括能够接收GPS卫星信号并且基于那些信号生成GPS坐标的GPS模块。在其它实施例中,用户装置54包括蜂窝通信功能,使得装置使用一个或多个蜂窝通信协议在通信网络56上执行语音和/或数据通信,如本文所讨论的。在各种实施例中,用户装置54包括视觉显示器,诸如触摸屏图形显示器或其它显示器。
远程运输系统52包括一个或多个后端服务器系统,其可以是基于云的、基于网络的或驻留在由远程运输系统52服务的特定园区或地理位置。远程运输系统52可以由现场顾问或自动顾问或两者的组合来操纵。远程运输系统52可以与用户装置54和自主车辆10a-10n通信以调度乘坐,派遣自主车辆10a-10n等。在各种实施例中,远程运输系统52存储账户信息,诸如订户认证信息、车辆标识符、简档记录、行为模式和其它相关订户信息。
根据典型的使用情况流程,远程运输系统52的注册用户可以经由用户装置54创建乘坐请求。乘坐请求通常将指示乘客的期望接载位置(或当前GPS位置)、期望的目的地位置(其可以标识预定义的车辆停靠点和/或用户指定的乘客目的地)以及接载时间。远程运输系统52接收乘坐请求,处理请求,并且派遣所选择的一个自主车辆10a-10n(当并且如果一个可用时)以在指定的接载位置和适当的时间接载乘客。远程运输系统52还可以生成并将适当配置的确认消息或通知发送给用户装置54,以使乘客知道车辆在路上。
如可以认识到的,本文公开的主题为可以被视为标准或基线自主车辆10和/或基于自动车辆的远程运输系统52提供某些增强的特征和功能。为此,可以修改、增强或以其它方式补充自主车辆和基于自主车辆的远程运输系统,以提供下面更详细描述的附加特征。
根据各种实施例,如图3所示,控制器34实施自主驾驶系统(ADS)70。也就是说,控制器34的合适的软件和/或硬件部件(例如,处理器44和计算机可读存储装置46)用于提供与车辆10结合使用的自主驾驶系统70。
在各种实施例中,自主驾驶系统70的指令可以由功能、模块或系统组织。例如,如图3所示,自主驾驶系统70可以包括计算机视觉系统74、定位系统76、引导系统78和车辆控制系统80。可以认识到,在各种实施例中,指令可以组织成任何数量的系统(例如,组合的、进一步分割的等),因为本公开不限于本实例。
在各种实施例中,计算机视觉系统74合成并处理传感器数据并预测车辆10的环境的对象和特征的存在、位置、分类和/或路径。在各种实施例中,计算机视觉系统74可以合并来自多个传感器的信息,包括但不限于摄像机、激光雷达、雷达和/或任何数量的其它类型的传感器。
定位系统76处理传感器数据以及其它数据以确定车辆10相对于环境的位置(例如,相对于地图的本地位置、相对于道路的车道的确切位置、车辆航向、速度等)。引导系统78处理传感器数据以及其它数据以确定车辆10遵循的路径。车辆控制系统80根据已确定路径生成用于控制车辆10的控制信号。
在各种实施例中,控制器34实施机器学习技术以辅助控制器34的功能,例如特征检测/分类、障碍减轻、路线遍历、映射、传感器集成、地面实况确定等。
根据所公开的实施例,ADS70及其车辆控制系统80的特征可以使用如图4和图5所示的车辆控制系统100来实施,现在将继续参照图1-3描述图4和图5。
图4是根据各种实施例的示出车辆控制系统100的框图。车辆控制系统100包括输入数据的各种源28、82、84,其可以由高级控制器90(本文也称为行为控制器90)处理,以生成提供给低级控制器80的控制信号。控制信号指定用于调度要执行的调度动作以使驾驶任务自主化的控制动作和参数。低级控制器80处理控制信号以生成控制各种致动器的命令(根据控制信号),以执行要执行的一个或多个调度动作以使驾驶任务自主化。低级控制器80反过来可以控制车辆(诸如自主车辆)的各种致动器(图4中未示出)。照此,低级控制器80在本文中也可以称为致动器控制器和接口80。
在该特定实例中,输入数据的各种源28、82、84可以包括但不限于各种传感器28、目标82和地图数据84。在一个实施方式中,传感器28可以包括但不限于摄像机、LIDAR系统、RADAR系统等。通常,术语“目标”指的是系统需要完成的任务。在一个实施方式中,目标82可以包括但不限于将乘客驾驶到目的地,维持最小安全阈值,以及最大化乘客舒适度。通常,术语“地图数据”是指与可驱动空间相关联的可驱动空间和注释,诸如可驱动空间、道路标志、流动限制和速度限制之间的连接。在一个实施方式中,地图数据84可以包括但不限于道路车道、车道宽度、速度限制、交通信号、人行横道、十字路口等。
低级控制器80处理来自高级控制器90的控制信号,并且生成命令以控制车辆中的各种致动器。各种致动器可以包括在车辆中使用的任何已知致动器,包括但不限于横向和纵向控制器,例如:自动转向控制、自动加速控制、自动制动控制以及使所有驾驶任务自动化所需的任何其它控制器和致动器。
图5是根据各种实施例的示出图4的高级控制器90的进一步细节的框图。下面将继续参照图4描述图5。
高级控制器90从各种源(包括上面参照图4描述的传感器28、目标82和地图数据84)接收输入数据128,并且对其进行处理以基于输入数据生成控制信号。根据所公开的实施例,高级控制器90包括多个模块,包括输入模块130、投影模块140、存储器模块150、世界模型模块160和包括控制模型执行器模块180的决策处理模块170,控制模型执行器模块180向低级控制器80提供控制信号。控制信号指定控制动作和参数以调度要执行的一个或多个调度动作以使驾驶任务自动化。低级控制器80根据控制信号处理控制信号以生成控制车辆致动器的命令(未在图5中示出),以执行要执行的一个或多个调度动作以使驾驶任务自主化。
如下面将更详细解释的,每个模块具有符号和子符号处理能力,可以集成包括符号和子符号表示的各种输入,并且可以执行学习。每个模块彼此交换信息,生成用于控制车辆的信息并且向彼此提供反馈信息。
在进一步描述图5之前,应当注意,图5的描述将参考在输入处理模块130、投影模块140、存储器模块150、世界模型模块160和决策处理模块170之间共享的各种类型的信息。使用将上述模块130、140、150、160、170中的一个连接至上述模块130、140、150、160、170中的另一个的箭头在图5中示出这些各种类型的信息。这些不同类型的信息被称为并标记为感知、反馈、存储器(或存储器数据)、状态(或世界状态信息)、一个或多个投影、一个或多个存储器操作、一个或多个状态操作和查询。关于存储器、状态、一个或多个投影、一个或多个存储器操作、一个或多个状态操作和查询,应当认识到,这些类型的信息中的每一个还可以包括“反馈信息”(也被称为反馈),尽管为了清楚和简单起见,但在所有情况下都没有在说明书中明确提及。例如,尽管说明书可以陈述投影模块140接收“来自存储器模块150的存储器”,但是应该理解,这可以意味着投影模块140接收“来自存储器模块150的存储器和反馈信息”。同样地,作为另一个实例,虽然说明书可以陈述投影模块140接收“来自世界模型模块160的状态”,但是应该理解,这可以意味着投影模块140接收“来自世界模型模块160的状态和反馈信息”。类似地,作为又一实例,虽然说明书可以陈述投影模块140接收“来自决策处理模块170的查询”,但是应该理解,这可以意味着投影模块140接收“来自决策处理模块170的查询和反馈信息”。
通常,反馈信息可以是或者涉及从一个实体提供给另一个实体的正或负增强信息(例如,从一个模块到另一个第一控制器模块,从一个子模块到同一模块的另一个子模块,从一个子模块到另一个第一控制器模块的另一个子模块,从一个模块到另一个第一控制器模块的另一个子模块等),以影响另一个实体以调整处理和I/O以提高性能。
由高级控制器90的另一个第一控制器模块发送至高级控制器90的特定第一控制器模块的反馈信息包含以下中的至少一个:和与该特定第一控制器模块的先前交互相关的信息内容,其指示从该特定第一控制器模块接收的信息的适当性或不适当性,(例如丢失数据、抽象级别、不确定性级别等),和/或关于与该特定第一控制器模块的先前交互的及时性(定时、频率等)的信息。例如,反馈可以特定于行为的特定方面或来自其它模块的信息,例如信息内容(例如,丢失数据、抽象级别、不确定性级别等)和/或及时性(定时、频率等)。
在一个实施例中,反馈可以是对发送反馈的模块的先前交互的正或负反应的简单信号。例如,在一个实施例中,反馈信息是对与特定第一控制器模块的先前交互作出积极反应的信号,信号提供正增强信息,正增强信息影响在该特定第一控制器模块处的处理的调整以进行处理以改进该特定第一控制器模块的输入/输出和性能;或者对与该特定第一控制器模块的先前交互作出负反应的信号,信号提供负增强信息,负增强信息影响该特定第一控制器模块处的处理的调整以进行处理以改进该特定第一控制器模块的输入/输出和性能。
再次参照图5,输入处理模块130接收输入数据和信息128、来自投影模块140、存储器模块150、世界模型模块160和决策处理模块170的反馈信息以及来自控制模型执行器模块180的输入处理控制信息。如下面将更详细描述的,输入处理模块130将输入信息变换为符号和子符号表示,在本文中称为符号和子符号感知。符号感知(或信息)可以包括例如标记、谓词和逻辑表达等。子符号感知(或信息)可以包括例如概率分布、激活水平和置信水平等。输入处理模块130将符号感知(来自模块132)和子符号感知(来自模块134)提供给投影模块140、存储器模块150、世界模型模块160和决策处理模块170。如下面还将描述的,输入处理模块130还学习如何执行和改进该变换和模块的I/O。例如,输入处理模块130还学习如何改进模块的I/O操作,包括发送什么,发送的位置,发送的时间,发送的频率,处理哪些输入的哪个部分等。
输入处理模块130包括各种子模块132、134、136、138。符号感知模块132接收输入信息128,以及来自学习模块136的变换参数。符号感知模块132将输入信息128和/或变换参数从学习模块136变换或转换成符号表示或感知,并且将符号感知提供给投影模块140、存储器模块150、世界模型模块160以及决策处理模块170和学习模块136。
子符号感知模块134接收输入信息128,以及来自学习模块136的变换参数。子符号感知模块134将输入信息128和/或变换参数从学习模块136变换成子符号表示或感知,并且将子符号感知提供给投影模块140、存储器模块150、世界模型模块160以及决策处理模块170和学习模块136。
学习模块136接收包括原始传感器输入和其它输入的输入数据和信息128、来自符号感知模块132的符号感知、来自子符号感知模块134的子符号感知、来自投影模块140、存储器模块150、世界模型模块160和决策处理模块170的反馈信息以及来自控制模型执行器模块180的输入处理控制信息。尽管未在图5中示出,由于空间约束,应当认识到,输入处理模块130可以包括与输入处理模块130相关联的数据存储(未示出)。与输入处理模块130相关联的数据存储(未示出)可以用于本地存储由输入处理模块130生成/产生的变换参数或信息,使得本地存储变换参数或信息可以由输入处理模块100的学习模块136访问和使用,和/或作为反馈提供给任何其它模块140、150、160、170、180。此外,学习模块136还可以接收和/或存储在数据存储处组成模块130的模块处生成的任何信息(例如,来自符号模块132的符号感知,来自子符号模块134的子符号感知)。
学习模块136可以处理这些输入信息源和/或本地存储信息中的任何一者,以执行各种学习功能并生成变换参数。学习模块136将变换参数提供给符号感知模块132和子符号感知模块134。变换参数是符号感知模块132和子符号感知模块134使用的参数,其将输入变换为符号感知和子符号感知(或表示),并且因此改进输入处理模块130的I/O和功能。
投影模块140接收包括以下的输入信息:来自输入处理模块130的符号感知和子符号感知、来自存储器模块150的存储器数据、来自世界模型模块160的状态以及来自决策处理模块170的查询。投影模块140基于输入信息处理输入信息以生成投影(例如,未来活动的假设和世界中其它实体的状态),并响应关于这些投影的查询。“世界上的其它实体”可以指外部环境中的任何物理事物。世界上其它实体的实例可以包括但不限于行人、其它车辆、道路标志、道路上的静态物体等。投影模块140还学习如何执行和改进这些功能。例如,投影模块140可以生成它提供给输入处理模块130的反馈信息、它提供给存储器模块150的存储器操作、它提供给世界模型模块160的状态操作以及它提供给决策处理模块170的投影。提供给输入处理模块130的反馈信息可以包括输出信息(符号感知和子符号感知)的适当性或不适当性的指示和/或来自输入处理模块130的定时。提供给存储器模块150的存储器操作可以包括诸如查询存储器模块以从存储器模块读取存储器数据、将存储器数据写入存储器模块、从存储器模块删除存储器数据或修改存储在存储器模块处的存储器数据的命令。提供给世界模型模块160的状态操作可以包括诸如查询世界模型模块以从世界模型模块读取世界状态信息、将世界状态信息写入世界模型模块、从世界模型模块删除世界状态信息或修改世界模型模块处的世界状态信息的命令。提供给决策处理模块170的投影可以包括未来预测活动和世界/环境中的其它实体的状态。
投影模块140包括符号模块142、子符号模块144、集成模块146和学习模块148。
符号模块142接收包括以下的输入信息:来自输入处理模块130的符号感知和子符号感知、来自存储器模块150的存储器数据、来自世界模型模块160的状态、来自决策处理模块170的查询以及来自学习模块148的投影参数。符号模块142将输入信息变换为符号表示并执行符号投影处理以生成它提供给集成模块146和学习模块148的符号投影。
子符号模块144还接收包括以下的输入信息:来自输入处理模块130的符号感知和子符号感知、来自存储器模块150的存储器数据、来自世界模型模块160的状态、来自决策处理模块170的查询以及来自学习模块148的投影参数。子符号模块144将输入信息变换为子符号表示,并执行子符号投影处理以生成它提供给集成模块146和学习模块148的子符号投影。
集成模块146接收来自符号模块142的符号投影、来自子符号模块144的子符号投影以及来自学习模块148的投影参数化。集成模块146集成来自符号模块142的符号投影和来自子符号模块144的子符号投影,以生成它发送至学习模块148的投影、它发送至输入处理模块130的反馈信息、它发送至存储器模块150的存储器操作、它发送至世界模型模块160的状态操作以及它发送至决策处理模块170的投影。
学习模块148接收来自输入处理模块130的符号感知和子符号感知、来自存储器模块150的存储器数据、来自世界模型模块160的状态、来自决策处理模块170的查询、来自符号模块142的符号投影、来自子符号模块144的子符号投影以及来自集成模块146的投影。尽管未在图5中示出,由于空间约束,应当认识到,投影模块140可以包括与投影模块140相关联的数据存储(未示出)。与投影模块140相关联的数据存储(未示出)可以用于本地存储由投影模块140生成/产生的投影参数或信息,使得本地存储变换参数或信息可以由投影模块140的学习模块148访问和使用,和/或作为反馈提供给任何其它模块130、150、160、170、180。此外,学习模块148还可以接收和/或存储在数据存储处构成投影模块140的模块处生成的任何信息(例如,来自符号模块142的符号投影、来自子符号模块144的子符号投影以及来自集成模块146的投影以及由这些模块142、144、146中的任何一个提供给其它模块130、150、160、170、180的任何反馈信息)。
基于这些输入信息源和/或本地存储信息中的任何一者,学习模块148可以生成由其它模块142、144、146使用的投影参数,其负责创建和集成符号和子符号投影表示。更具体地,学习模块148可以将这些投影参数提供给符号模块142、子符号模块144和集成模块146,以改进投影模块140的I/O(例如,发送什么,发送的位置,发送的时间,发送的频率,处理哪些输入的哪个部分等)以及投影模块140的每个模块的其它功能(或功能能力)。
存储器模块150接收以下作为输入信息:来自输入处理模块130的符号感知和子符号感知、来自投影模块140的存储器操作、来自世界模型模块160的状态以及来自决策处理模块170的存储器操作。存储器模块150存储存储器数据(例如,捕获潜在重要性的历史数据的历史信息),并且执行诸如添加、移除、删除和查询该信息的操作。存储器模块150处理输入信息并生成输出信息,包括:提供给输入处理模块130的反馈信息、提供给投影模块140的存储器数据;提供给世界模型模块160的状态操作;以及提供给决策处理模块170的存储器数据。反馈信息提供信息和/或定时的适当性或不适当性的指示。存储器数据包括要存储以供将来参照的同期信息。状态操作包括诸如写入/添加、删除/移除、更新/修改或查询/读取的命令。存储器模块150的学习模块158学习如何执行和改进由存储器模块150的各个子块152、154、156执行的功能。
符号模块152接收包括以下的输入信息:来自输入处理模块130的符号感知和子符号感知、来自投影模块140的存储器操作、来自世界模型模块160的状态、来自决策处理模块170的存储器操作以及来自学习模块158的存储器参数。符号模块152将输入信息变换为符号表示并执行符号存储器处理以生成它提供给集成模块156和学习模块158的符号存储器。
子符号模块154还接收包括以下的输入信息:来自输入处理模块130的符号感知和子符号感知、来自投影模块140的存储器操作、来自世界模型模块160的状态、来自决策处理模块170的存储器操作以及来自学习模块158的存储器参数。子符号模块154将输入信息变换为子符号表示并执行子符号存储器处理以生成它提供给集成模块156和学习模块158的子符号存储器。
集成模块156接收来自符号模块152的符号存储器、来自子符号模块154的子符号存储器以及来自学习模块158的存储器参数。集成模块156集成来自符号模块152的符号存储器和来自子符号模块154的子符号存储器,以生成它发送至学习模块158的存储器数据、它发送至输入处理模块130的反馈信息、它发送至投影模块140的存储器数据、它发送至世界模型模块160的状态操作以及它发送至决策处理模块170的存储器数据。
学习模块158接收来自输入处理模块130的符号感知和子符号感知、来自投影模块140的存储器操作、来自世界模型模块160的状态、来自决策处理模块170的存储器操作、来自符号模块152的符号存储器、来自子符号模块154的子符号存储器以及来自集成模块156的存储器数据。尽管未在图5中示出,由于空间约束,应当认识到,存储器模块150可以包括与存储器模块150相关联的数据存储(未示出)。与存储器模块150相关联的数据存储(未示出)可以用于本地存储由存储器模块150生成/产生的存储器参数或信息,使得本地存储存储器参数或信息可以由存储器模块150的学习模块158访问和使用,和/或作为反馈提供给任何其它模块130、140、160、170、180。此外,学习模块158还可以接收和/或存储在数据存储处构成存储器模块150的模块处生成的任何信息(例如,来自符号模块152的符号存储器、来自子符号模块154的子符号存储器以及来自集成模块156的存储器数据以及由这些模块152、154、156中的任何一个提供给其它模块130、140、160、170、180的任何反馈信息)。
基于这些输入信息源和/或本地存储信息中的任何一者,学习模块158可以生成由其它模块152、154、156使用的存储器参数,其负责创建和集成符号和子符号存储器表示。更具体地,学习模块158可以将这些存储器参数提供给符号模块152、子符号模块154和集成模块156,以改进存储器模块150的I/O(例如,发送什么,发送的位置,发送的时间,发送的频率,处理哪些输入的哪个部分等)以及存储器模块150的每个模块的其它功能(或功能能力)。
世界模型模块160接收包括以下的输入信息:来自输入处理模块130的符号感知和子符号感知、来自投影模块140的状态操作、来自存储器模块150的状态操作以及来自决策处理模块170的状态操作。世界模型模块160存储暴露给其它模块130、140、150、170的不同种类的数据类型组。例如,世界模型模块160存储诸如状态、行为模型和元参数的域信息,并且执行诸如添加、移除、删除和查询该信息的操作。世界模型模块160处理输入信息并生成输出信息,包括:提供给输入处理模块130的反馈信息;提供给投影模块140的状态;提供给存储器模块150的状态;以及提供给决策处理模块170的状态。反馈信息提供信息和/或定时的适当性或不适当性的指示。世界状态信息指示车辆外部环境中的其它实体的状态,并且包括关于车辆外部环境中的对象的当前属性的信息和关于外部环境的方面的信息。世界模型模块160的学习模块168学习如何执行和改进由世界模型模块160的各个子块162、164、166执行的功能。
世界模型模块160包括符号模块162、子符号模块164以及集成模块166和学习模块168。
符号模块162接收包括以下的输入信息:来自输入处理模块130的符号感知和子符号感知、来自存储器模块150的状态操作、来自决策处理模块170的状态操作以及来自学习模块168的世界模型参数。符号模块162将输入信息变换为符号表示并执行符号世界模型处理以生成它提供给集成模块166和学习模块168的符号世界状态信息。通常,符号世界模型处理可以包括例如添加、移除和修改符号表示的操作。符号世界模型处理的更具体实例可以包括,例如,诸如将数字信息变换为符号(例如,输入到“近”、“中”、“远”符号的数字距离)、将概率分布概括为布尔表达式(例如,威胁等级的概率分布为“vehicle_is_safe=True(车辆是安全的=真)”)、真值维护、逻辑推理和其它功能的操作。
子符号模块164还接收包括以下的输入信息:来自输入处理模块130的符号感知和子符号感知、来自140的状态操作、来自状态操作模块150的状态操作、来自决策处理模块170的状态操作以及来自学习模块168的世界模型参数。子符号模块164将输入信息变换为子符号表示,并执行子符号世界模型处理以生成它提供给集成模块166和学习模块168的子符号世界状态信息。子符号世界模型处理可以包括例如诸如添加、移除和修改子符号表示的操作。符号世界模型处理的更具体实例可以包括,例如,诸如将符号信息合并到概率模型中(例如,通过贝叶斯更新)、利用输入信息数据的部分更新神经网络以及其它功能的操作。
集成模块166接收来自符号模块162的符号世界状态信息、来自子符号模块164的子符号世界状态信息以及来自学习模块168的世界模型参数。集成模块166集成来自符号模块162的符号世界状态信息和来自子符号模块164的子符号世界状态信息,以生成它发送至学习模块168的世界状态信息、它发送至输入处理模块130的反馈信息、它发送至投影模块140的状态、它发送至存储器模块150的状态以及它发送至决策处理模块170的状态。
学习模块168接收来自输入处理模块130的符号感知和子符号感知、来自投影模块140的状态操作、来自存储器模块150的状态操作、来自决策处理模块170的状态操作、来自符号模块162的符号世界状态信息、来自子符号模块164的子符号世界状态信息以及来自集成模块166的世界状态信息。尽管未在图5中示出,由于空间约束,应当认识到,世界模型模块160可以包括与世界模型模块160相关联的数据存储(未示出)。与世界模型模块160相关联的数据存储(未示出)可以用于本地存储由世界模型模块160生成/产生的世界状态信息/信息,使得本地存储世界状态信息/信息可以由世界模型模块160的学习模块168访问和使用,和/或作为反馈提供给任何其它模块130、140、150、170、180。此外,学习模块168还可以接收和/或存储在数据存储处构成世界模型模块160的模块处生成的任何信息(例如,来自符号模块162的符号世界状态信息、来自子符号模块164的子符号世界状态信息以及来自集成模块166的世界状态信息、反馈信息和状态以及由这些模块162、164、166中的任何一个提供给其它模块130、140、150、170、180的任何反馈信息)。
基于这些输入信息源和/或本地存储信息中的任何一者,学习模块168可以生成并向符号模块162、子符号模块164和集成模块166提供世界模型参数,以改进世界模型模块160的I/O(例如,发送什么,发送的位置,发送的时间,发送的频率,处理哪些输入的哪个部分等)以及世界模型模块160的每个模块的其它功能(或功能能力)。
决策处理模块170接收包括以下的输入信息:来自输入处理模块130的符号感知和子符号感知、来自投影模块140的投影信息、来自存储器模块150的存储器数据以及来自世界模型模块160的状态。
决策处理模块170处理该输入信息,并基于输入信息确定要执行的一个或多个动作。决策处理模块170生成输出,包括:它提供给输入处理模块130的输入处理控制信息(例如,命令和参数化)、它提供给投影模块140的查询、它提供给存储器模块150的存储器操作以及它提供给世界模型模块160的状态操作。查询是对信息的请求。存储器操作是诸如查询存储器模块以从存储器模块读取存储器数据、将存储器数据写入存储器模块、从存储器模块删除存储器数据或修改存储在存储器模块处的存储器数据的命令。状态操作是诸如查询世界模型模块以从世界模型模块读取世界状态信息、将世界状态信息写入世界模型模块、从世界模型模块删除世界状态信息或修改世界模型模块处的世界状态信息的命令。决策处理模块170的学习模块178学习如何执行和改进这些功能。
决策处理模块170包括符号模块172、子符号模块174以及集成模块176和学习模块178。
符号模块172接收包括以下的输入信息:来自输入处理模块130的符号感知和子符号感知、来自投影模块140的投影信息、来自存储器模块150的存储器数据、来自世界模型模块160的状态以及来自学习模块178的决策处理参数。符号模块172将输入信息变换为符号表示并执行符号决策处理以生成它提供给集成模块176和学习模块178的符号决策处理结果。符号决策处理结果包括决策处理表示的符号表示(例如,动作、动作参数和约束)。
子符号模块174也接收包括以下的输入信息:来自输入处理模块130的符号感知和子符号感知、来自投影模块140的投影信息、来自存储器模块150的存储器数据、来自世界模型模块160的状态以及来自学习模块178的决策处理参数。子符号模块174将输入信息变换为子符号表示,并执行子符号决策处理以生成它提供给集成模块176和学习模块178的子符号决策处理结果。子符号决策处理结果包括决策处理表示的子符号表示(例如,动作、动作参数和约束)。
集成模块176接收来自符号模块172的符号决策处理结果、来自子符号模块174的子符号决策处理结果以及来自学习模块178的决策处理参数。集成模块176集成来自符号模块172的符号决策处理结果和来自子符号模块174的子符号决策处理结果,以生成它发送至学习模块178的决策处理结果、它发送至输入处理模块130的控制和反馈信息、它发送至投影模块140的查询、它发送至存储器模块150的存储器操作以及它发送至世界模型模块160的状态操作。
学习模块178接收来自输入处理模块130的符号感知和子符号感知、来自投影模块140的投影信息、来自存储器模块150的存储器数据以及来自世界模型模块160的状态。尽管未在图5中示出,由于空间约束,应当认识到,决策处理模块170可以包括与模块170相关联的数据存储(未示出)。与决策处理模块170相关联的数据存储(未示出)可以用于本地存储由决策处理模块170生成/产生的决策处理数据/信息,使得本地存储决策处理数据/信息可以由模块170的学习模块178访问和使用,和/或作为反馈提供给任何其它模块130、140、150、160、180。此外,学习模块178还可以接收和/或存储在构成决策处理模块170的模块处生成的任何信息(例如,来自符号模块172的符号决策处理结果、来自子符号模块174的子符号决策处理结果以及来自集成模块176的决策处理结果以及由这些模块172、174、176中的任何一个提供给其它模块130、140、150、160、180的任何反馈信息)。
基于这些输入信息源和/或本地存储信息中的任何一者,学习模块178可以生成由其它模块172、174、176使用的决策处理参数,其负责创建和集成符号和子符号决策处理表示。更具体地,学习模块178可以将这些投影参数提供给符号模块172、子符号模块174和集成模块176,以改进决策处理模块170的I/O(例如,发送什么,发送的位置,发送的时间,发送的频率,处理哪些输入的哪个部分等)以及决策处理模块170的每个模块的其它功能(或功能能力)。
控制模型执行器模块180是决策处理模块170的子模块。控制模型执行器模块180从集成模块176接收控制和参数化。基于控制和参数化信息,控制模型执行器模块180执行调度系统动作或动作,并且还学习如何执行和改进该功能。控制模型执行器模块180基于控制和参数化信息生成提供给决策处理模块170的反馈信息。该反馈信息提供正在执行的一个或多个控制模型的执行状态的指示。
控制模型执行器模块180包括符号模块182、子符号模块184以及集成模块186和学习模块188。
符号模块182从集成模块176接收包括控制和参数化的输入信息。符号模块182将输入信息变换为符号表示并执行符号控制模型处理以生成它提供给集成模块186和学习模块188的符号控制模型。符号控制模型是控制动作和约束的符号表示。
子符号模块184还从集成模块176接收包括控制和参数化的输入信息。子符号模块184将输入信息变换为子符号表示,并执行子符号控制模型处理以生成它提供给集成模块186和学习模块188的子符号控制模型。子符号控制模型是控制动作和约束的子符号表示。
集成模块186接收来自符号模块182的符号控制模型、来自子符号模块184的子符号控制模型,并且集成来自符号模块182的符号控制模型和来自子符号模块184的子符号控制模型,以生成它发送至低级控制器80的控制信号(例如,指定控制动作和参数的信号)。控制动作和参数提供用于调用低级控制器80的能力。
学习模块188从集成模块176接收包括控制和参数化的输入信息。尽管未在图5中示出,由于空间约束,应当认识到,控制模型执行器模块180可以包括与控制模型执行器模块180相关联的数据存储(未示出)。与控制模型执行器模块180相关联的数据存储(未示出)可以用于本地存储由控制模型执行器模块180生成/产生的控制模型数据/信息,使得本地存储控制模型数据/信息可以由控制模型执行器模块180的学习模块188访问和使用和/或作为反馈提供给任何其它模块130、140、150、160、180。此外,学习模块188还可以接收和/或存储在构成控制模型执行器模块180的模块处生成的任何信息(例如,来自符号模块182的符号控制模型、来自子符号模块184的子符号控制模型以及来自集成模块186的控制动作和参数以及由这些模块182、184、186中的任何一个提供给其它模块130、140、150、160、170的任何反馈信息)。
基于这些输入信息源和/或本地存储信息中的任何一者,学习模块188可以生成由其它模块182、184、186使用的控制模型参数,其负责创建和集成符号和子符号控制模型执行表示。更具体地,学习模块188可以将这些控制模型参数提供给符号模块182、子符号模块184和集成模块186,以改进控制模型执行器模块180的I/O(例如,发送什么,发送的位置,发送的时间,发送的频率,处理哪些输入的哪个部分等)以及控制模型执行器模块180的每个模块的其它功能(或功能能力)。
现在将参照图6-11在下面描述由输入处理模块130、投影模块140、存储器模块150、世界模型模块160、决策处理模块170和控制模型执行器模块180执行的各种功能和处理。下面将继续参照图4和图5描述图6-11。
图6是根据各种实施例的示出由图5的输入处理模块130执行的控制方法200的流程图。将继续参照图1-5来描述图6。如根据本公开可以认识到的,方法200内的操作顺序不限于如图6所示的顺序执行,但是可以根据适用的并且根据各种实施例以一个或多个变化的顺序执行。在各种实施例中,方法200可以被调度为基于一个或多个预定事件运行,和/或可以在自主车辆10的操作期间连续地运行。此外,还应注意,尽管步骤202-214和216-218以两个单独的路径示出,但应当认识到,步骤202-214和步骤216-218可以同时或并行地执行。
当输入处理模块130接收输入数据和信息128(例如,传感器数据)时,方法200在202处开始。
在204处,输入处理模块130将输入数据和信息128和/或变换参数(来自学习模块136)提供给符号感知模块132,符号感知模块132确定(在204处)输入信息128和/或变换参数是否有助于符号表示。当输入信息128和/或变换参数不有助于符号表示时,方法200循环回到202,其中输入处理模块130等待输入信息128的下一循环和/或接收变换参数。当输入信息128和/或变换参数确实有助于符号表示时,方法200前进到206,其中符号感知模块132将输入信息128变换或转换和/或将参数变换为符号表示或感知,并且然后将符号感知输出(在212处)到投影模块140、存储器模块150、世界模型模块160、决策处理模块170和学习模块136。如上所述,符号感知可以包括例如标签、谓词和逻辑表达等。
类似地,在208处,输入处理模块130将输入信息128和/或变换参数(来自学习模块136)提供给子符号感知模块134,子符号感知模块134确定(在208处)输入信息128和/或变换参数是否有助于子符号表示。当输入信息128和/或变换参数不有助于子符号表示时,方法200循环回到202,其中输入处理模块130等待输入信息128的下一循环和/或接收变换参数。当输入信息128和/或变换参数确实有助于子符号表示时,方法200前进到210,其中子符号感知模块134将输入信息128变换或转换和/或将参数变换为子符号表示或感知,并且然后将子符号感知输出(在212处)到投影模块140、存储器模块150、世界模型模块160、决策处理模块170和学习模块136。如上所述,子符号感知可以包括例如概率分布、激活水平和置信水平等。
在214处,输入处理模块130还生成反馈信息并将其提供给投影模块140、存储器模块150、世界模型模块160、决策处理模块170和学习模块136。此外,如上所注意的,来自输入处理模块130的该反馈信息可以由任何子模块132、134、136生成,并且还存储在输入处理模块130中以供输入处理模块130的任何子模块132、134、136使用。
在216处,输入处理模块130还继续接收包括原始传感器输入和其它输入的输入数据和信息128、来自投影模块140、存储器模块150、世界模型模块160和决策处理模块170的反馈信息以及来自决策处理模块170的输入处理控制信息。该信息中的一些或全部可以存储在与输入处理模块130相关联的数据存储中,以及来自符号感知模块132的符号感知和来自子符号感知模块134的子符号感知,使得本地存储变换参数或信息可以由输入处理模块100的学习模块136访问和使用,和/或作为反馈提供给任何其它模块140、150、160、170、180。
在218处,输入处理模块130的学习模块136可以处理这些输入信息源、本地存储信息和/或反馈信息中的任何一个以执行各种学习功能并生成变换参数(例如,学习如何执行并改进变换和模块的I/O)。例如,输入处理模块130还学习如何改进模块的I/O操作,包括发送什么,发送的位置,发送的时间,发送的频率,处理哪些输入的哪个部分等。此外,学习模块136还可以将变换参数提供给符号感知模块132和子符号感知模块134,使得符号感知模块132和子符号感知模块134可以使用变换参数来将输入变换为符号感知和子符号感知(或表示),并且因此改进输入处理模块130的I/O和功能。
图7是根据各种实施例的示出由图5的存储器模块150执行的方法300的流程图。将继续参照图1-5来描述图7。如根据本公开可以认识到的,方法300内的操作顺序不限于如图7所示的顺序执行,但是可以根据适用的并且根据各种实施例以一个或多个变化的顺序执行。在各种实施例中,方法300可以被调度为基于一个或多个预定事件运行,和/或可以在自主车辆10的操作期间连续地运行。此外,还应注意,尽管步骤304-330和332-334以两个单独的路径示出,但应当认识到,步骤304-330和步骤332-334可以同时或并行地执行。概括地说,执行步骤312、316、326以获得信息并填写存储器模块150执行诸如上述那些处理任务需要的信息间隙。
当存储器模块150基于指令302执行存储器操作以执行从投影模块140、世界模型模块160或决策处理模块170发出的存储器操作(例如,读取、写入、修改、删除)时,方法300在304处开始。
在310处,存储器模块150确定存储器操作(在304处执行)是否有资格作为对世界状态的更新,并且如果是,则存储器模块150将状态操作发送至世界模型模块160(在312处),并且方法300然后前进到330。下面将参照图8描述由世界模型模块160基于状态操作执行的处理。
在314处,存储器模块150确定是否需要基于存储器操作做出决策(在304处执行),并且如果是,则存储器模块150将存储器数据发送至决策处理模块170(在316处),并且然后方法300前进到330。下面将参考图10描述由决策处理模块170基于存储器数据执行的处理。
在324处,存储器模块150基于从世界模型模块160接收的世界状态信息320和从输入处理模块130接收的感知322执行处理。例如,存储器模块150可以确定是否需要存储器操作。如果不需要存储器操作(在324处),则方法前进到330。
当在324处确定需要存储器操作时,方法300然后前进到325,其中存储器模块150确定是否需要来自世界模型模块160的更多世界状态信息,并且如果是,则该方法前进到326,其中存储器模块150向世界模型模块160查询更多世界状态信息,并且然后方法300前进到330。下面将参照图8描述由世界模型模块160基于对世界状态信息的查询执行的处理。相反,如果在325处不需要更多世界状态信息,则方法300循环回到304。
在330处,存储器模块150分析从输入处理模块130、投影模块140、世界模型模块160和决策处理模块170提供的信息,并且可以生成反馈信息并将反馈信息发送至其它适当模块(例如,输入处理模块130、投影模块140、世界模型模块160、决策处理模块170和其它子模块(例如学习模块158))。此外,如上所注意的,来自存储器模块150的该反馈信息可以由任何子模块152、154、156生成,并且还存储在存储器模块150处以供存储器模块150的任何子模块152、154、156、158使用。
在332处,存储器模块150还从其它模块130、140、160、170、180接收反馈信息,并且经由学习模块158(在334处)对其进行处理(可能与其它输入信息一起)以执行如上所描述的学习。例如,在一个实施例中,在334处,存储器模块150的学习模块158可以处理输入信息源、本地存储信息和/或反馈信息中的任何一个以执行各种学习功能并生成变换参数(例如,学习如何执行并改进变换和模块的I/O)。例如,学习模块158学习如何改进模块的I/O操作,包括发送什么,发送的位置,发送的时间,发送的频率,处理哪些输入的哪个部分等。此外,学习模块158还可以将变换参数提供给符号感知模块152和子符号感知模块154,使得符号感知模块152和子符号感知模块154可以使用变换参数来将输入变换为符号感知和子符号感知(或表示),并且因此改进存储器模块150的I/O和功能。
图8是根据各种实施例的示出由世界模型模块160执行的方法400的流程图。将继续参照图1-5来描述图8。如根据本公开可以认识到的,方法400内的操作顺序不限于如图8所示的顺序执行,但是可以根据适用的并且根据各种实施例以一个或多个变化的顺序执行。在各种实施例中,方法400可以被调度为基于一个或多个预定事件运行,和/或可以在自主车辆10的操作期间连续地运行。此外,还应注意,尽管步骤406-422和424-426以两个单独的路径示出,但应当认识到,步骤406-422和步骤424-426可以同时或并行地执行。概括地说,执行步骤412、416、420以获得信息并填写世界模型模块160需要执行诸如上述处理任务的信息间隙以生成适当的状态更新。
当从投影模块140、存储器模块150或决策处理模块170发出执行状态操作(例如,读取、写入、更新、删除)的指令时,方法400在402处开始。此外,在406处,世界模型模块160从输入处理模块130接收感知404并在408处处理感知404。例如,世界模型模块160可以将感知406变换为由世界模型模块160维护的世界模型状态表示(例如,通过聚合、过滤、信念修订等),并向408提供世界模型状态表示。
在408处,世界模型模块160执行状态操作(例如,添加、移除或修改世界状态信息),并且将世界状态信息提供给系统的其它模块(即,投影模块140、存储器模块150以及决策处理模块170)。
在410处,世界模型模块160确定状态操作(在408处执行)是否有资格作为对存储器的更新,并且如果是,则世界模型模块160将状态发送至存储器模块150(在412处)。
在414处,世界模型模块160确定是否需要在决策处理模块170处做出决策的状态操作(在408处执行),并且如果是,则世界模型模块160将世界状态信息发送至决策处理模块170(在416处)。
在418处,世界模型模块160确定投影模块140是否需要状态操作(在408处执行)以进行投影,并且如果是,则世界模型模块160将世界状态信息发送至投影模块140(在420处)。
在422处,世界模型模块160分析从输入处理模块130、投影模块140、存储器模块150、决策处理模块170中的每一个提供的信息,然后可以生成反馈并将其发送至适当的任何其它模块(例如,输入处理模块130、投影模块140、存储器模块150、决策处理模块170和其它子模块(例如,学习模块168))。此外,如上所注意的,来自世界模型模块160的该反馈信息可以由任何子模块162、164、166、168生成,并且还存储在世界模型模块160中以供世界模型模块160的任何子模块162、164、166、168使用。
在424处,世界模型模块160还从其它模块130、140、160、170、180接收反馈信息,并且经由学习模块168(在426处)对其进行处理(可能与其它输入信息一起)以执行如所描述的学习。通常,从其它模块140、150、170向学习模块168的反馈指示其特定第一控制器模块发送的信息类型、内容、定时等的适当性,并且所提供的所有反馈都可以影响学习模块168的学习。例如,在一个实施例中,在426处,世界模型模块160的学习模块166可以处理输入信息源、本地存储信息和/或反馈信息中的任何一个以执行各种学习功能并生成变换参数(例如,学习如何执行并改进变换和模块的I/O)。例如,学习模块166学习如何改进模块的I/O操作,包括发送什么,发送的位置,发送的时间,发送的频率,处理哪些输入的哪个部分等。此外,学习模块166还可以将变换参数提供给符号感知模块162和子符号感知模块164,使得符号感知模块162和子符号感知模块164可以使用变换参数来将输入变换为符号感知和子符号感知(或表示),并且因此改进世界模型模块160的I/O和功能。
图9是根据各种实施例的示出由投影模块140执行的方法500的流程图。将继续参照图1-5来描述图9。如根据本公开可以认识到的,方法500内的操作顺序不限于如图9所示的顺序执行,但是可以根据适用的并且根据各种实施例以一个或多个变化的顺序执行。在各种实施例中,方法500可以被调度为基于一个或多个预定事件运行,和/或可以在自主车辆10的操作期间连续地运行。此外,还应注意,尽管步骤508-522和524-526以两个单独的路径示出,但应当认识到,步骤508-522和步骤524-526可以同时或并行地执行。概括地说,执行步骤512、516、520以获得信息并填写投影模块140执行诸如上述那些处理任务需要的信息间隙。
当投影模块140接收输入时,方法500在508处开始,输入包括:来自世界模型模块160的世界状态信息501、来自存储器模块150的存储器信息502、来自决策处理模块170的查询503以及来自输入处理模块130的感知504。
基于所接收的各种输入,投影模块140执行投影处理(在508处)以基于这些输入进行投影并生成输出到其它模块的投影结果。例如,投影结果可以包括投影以及环境的未来状态和动作和世界上的其它动作者等。投影结果可以包括或用于生成各种输出,包括:提供给输入处理模块130的反馈信息、提供给存储器模块150的存储器操作指令/信息(例如,读取、写入、修改、删除)、提供给世界模型模块160的状态操作指令/信息(例如,读取、写入、更新、删除)以及提供给决策处理模块170的投影信息。
在510处,投影模块140确定投影结果是否有资格作为对存储器模块150的更新,并且如果是,则投影模块140将存储器操作指令/信息(例如,读取、写入、修改、删除)发送至存储器模块150(在512处)。然后方法500前进到522。
在514处,投影模块140基于在框508处生成的投影结果确定是否需要做出决定,并且如果是,则投影模块140发送提供给决策处理模块170的投影信息(在516处)。然后方法500前进到522。
在518处,投影模块140确定在框508处生成的投影结果是否应该导致世界模型模块160处的一个或多个修订,并且如果是,则投影模块140将状态操作指令/信息(例如,读取、写入、更新、删除)发送至世界模型模块160(在520处),使得世界模型模块160可以处理它并采取适当的动作。然后方法500前进到522。
在522处,投影模块140分析从输入处理模块130、存储器模块150、世界模型模块160和决策处理模块170提供的信息,并且生成反馈信息并将反馈信息发送至所有其它适当模块(例如,输入处理模块130、存储器模块150、世界模型模块160、决策处理模块170和其它子模块(例如学习模块148))。此外,如上所注意的,来自投影模块140的该反馈信息可以由任何子模块142、144、146、148生成,并且还存储在投影模块140处以供投影模块140的任何子模块142、144、146、148使用。
在524处,投影模块140还接收来自其它模块的反馈信息,其它模块包括输入处理模块130、存储器模块150、世界模型模块160、决策处理模块170和控制模型执行器模块180,并经由学习模块148对其进行处理(可能与其它输入信息一起(在526处)以执行如上所述的学习。例如,在一个实施例中,在526处,投影模块140的学习模块148可以处理输入信息源、本地存储信息和/或反馈信息中的任何一个以执行各种学习功能并生成投影变换参数(例如,学习如何执行并改进变换和投影模块的I/O)。例如,学习模块148学习如何改进投影模块的I/O操作,包括发送什么,发送的位置,发送的时间,发送的频率,处理哪些输入的哪个部分等。此外,学习模块148还可以将投影变换参数提供给符号模块142和子符号模块144,使得符号模块142和子符号模块144可以使用变换参数来将输入变换为符号表示和子符号表示,并且因此改进投影模块140的I/O和功能。
图10是根据各种实施例的示出由决策处理模块170执行的方法600的流程图。将继续参照图1-5来描述图10。如根据本公开可以认识到的,方法600内的操作顺序不限于如图10所示的顺序执行,但是可以根据适用的并且根据各种实施例以一个或多个变化的顺序执行。例如,尽管为了示例目的,步骤610、614、618、622和626被示出为按顺序执行,但是应当认识到,步骤610、614、618、622和626可以同时或并行执行。在各种实施例中,方法600可以被调度为基于一个或多个预定事件运行,和/或可以在自主车辆10的操作期间连续地运行。此外,还应注意,尽管步骤610-634和636-638以两个单独的路径示出,但应当认识到,步骤610-634和步骤636-638可以同时或并行地执行。概括地说,执行步骤612、616、620、624、628以获得信息并填写决策处理模块170需要执行诸如上述处理任务的信息间隙以做出适当的行为决策。
当决策处理模块170接收决策处理输入时,方法600开始,决策处理输入包括:来自世界模型模块160的世界状态信息601、来自存储器模块150的存储器信息602、来自投影模块140的投影信息603以及来自输入处理模块130的感知604。如下所述,基于所接收的各种决策处理输入,决策处理模块170执行决策处理(在610至632处)以做出行为决策(在634处)并且还执行学习(在640处)。
在610处,决策处理模块170基于决策处理输入601、602、603、604确定是否需要来自投影模块140的投影数据以做出行为决策。例如,在一个实施例中,决策处理模块170基于编码算法确定(在610处)投影模块140是否需要投影数据,编码算法权衡世界的历史、当前和未来状态以及世界上其它动作者的状态和动作的重要性。
当决策处理模块170确定(在610处)投影模块140需要投影数据以做出行为决策时,方法前进到612,其中决策处理模块170查询投影模块140以获得投影数据。然后方法600前进到636。
在614处,决策处理模块170基于决策处理输入601、602、603、604确定是否需要来自存储器模块150的存储器数据以做出行为决策。当决策处理模块170确定(在614处)存储器模块150需要投影数据以做出行为决策时,方法前进到616,其中决策处理模块170查询存储器模块150以获得存储器数据。然后方法600前进到636。
在618处,决策处理模块170基于决策处理输入601、602、603、604确定是否需要对存储器模块150进行更新以做出行为决策。当决策处理模块170确定(在618处)需要对存储器模块150的更新时,方法前进到620,其中决策处理模块170将存储器操作指令/信息(例如,读取、写入、修改、删除)发送至存储器模块150(在620处)。然后方法600前进到636。
在622处,决策处理模块170基于决策处理输入601、602、603、604确定是否需要来自世界模型模块160的世界状态信息以做出行为决策。当决策处理模块170确定(在622处)世界模型模块160需要世界状态信息以便做出行为决策时,方法前进到624,其中决策处理模块170查询世界模型模块160以获取世界状态信息。然后方法600前进到636。
在626处,决策处理模块170基于决策处理输入601、602、603、604确定决策处理输入601、602、603、604是否应导致世界模型模块160处的一个或多个修订。当决策处理模块170确定(在626处)应该修订世界模型模块160以便做出行为决策时,方法前进到628,其中决策处理模块170将状态操作指令/信息(例如,读取、写入、更新、删除)发送至世界模型模块160。然后方法600前进到636。
在632处,决策处理模块170使用决策处理输入601、602、603、604来做出行为决策,然后方法600前进到636。
在634处,决策处理模块170分析从输入处理模块130、投影模块140、存储器模块150、世界模型模块160提供的信息,并且生成反馈并将其发送至适当的所有其它模块(例如,输入处理模块130、投影模块140、存储器模块150、世界模型模块160和其它子模块(例如,学习模块158))。此外,如上所注意的,来自决策处理模块170的该反馈信息可以由任何子模块172、174、176、178生成,并且还存储在决策处理模块170中以供决策处理模块170的任何子模块172、174、176、178使用。
此外,在636处,决策处理模块170还从包括输入处理模块130、投影模块140、存储器模块150、世界模型模块160的其它模块接收反馈信息,并且经由学习模块178(在638处)对其进行处理(可能与其它输入信息一起)以执行如上所述的学习。例如,在一个实施例中,在638处,决策处理模块170的学习模块178可以处理输入信息源、本地存储信息和/或反馈信息中的任何一个以执行各种学习功能并生成变换参数(例如,学习如何执行并改进变换和模块的I/O)。例如,学习模块178学习如何改进模块的I/O操作,包括发送什么,发送的位置,发送的时间,发送的频率,处理哪些输入的哪个部分等。此外,学习模块178还可以将变换参数提供给符号感知模块172和子符号感知模块174,使得符号感知模块172和子符号感知模块174可以使用变换参数来将输入变换为符号感知和子符号感知(或表示),并且因此改进决策处理模块170的I/O和功能。
图11是根据各种实施例的示出由控制模型执行器模块180执行的方法700的流程图。将继续参照图1-5来描述图11。如根据本公开可以认识到的,方法700内的操作顺序不限于如图11所示的顺序执行,但是可以根据适用的并且根据各种实施例以一个或多个变化的顺序执行。在各种实施例中,方法700可以被调度为基于一个或多个预定事件运行,和/或可以在自主车辆10的操作期间连续地运行。此外,还应注意,尽管步骤704-706和712-714以两个单独的路径示出,但应当认识到,步骤704-706和步骤712-714可以同时或并行地执行。
控制模型执行器模块180可以从集成模块176接收控制和参数化。如上所述,符号模块182可以生成符号控制模型(例如,控制动作和约束的符号表示),并且子符号模块184可以生成提供给集成模块186和学习模块188的子符号控制模型(例如,控制动作和约束的子符号表示),并且集成模块186可以集成这些输入以生成控制模型,控制模型包括控制动作和约束,控制动作和约束提供调用低级控制器80的能力。
方法700在704处开始,其中控制模型执行器模块180基于702执行处理以调度要执行的(一个或多个)动作。在706处,控制模型执行器模块180执行处理以执行控制模型并生成(在708处)提供给受控系统的控制信号(在这种情况下受控系统是低级控制器80(图4和5))以及提供给决策模块710的状态信息。
此外,在712处,控制模型执行器模块180还经由决策处理模块170从其它模块(例如输入处理模块130、投影模块140、存储器模块150、世界模型模块160以及决策处理模块170)接收反馈信息,并且经由学习模块188(在714处)对反馈信息进行处理以执行如上所述的学习。例如,在一个实施例中,在714处,控制模型执行器模块180的学习模块188可以处理输入信息源、本地存储信息和/或反馈信息中的任何一个以执行各种学习功能并生成变换参数(例如,学习如何执行并改进变换和模块的I/O)。例如,学习模块188学习如何改进控制模型执行器模块的I/O操作,包括发送什么,发送的位置,发送的时间,发送的频率,处理哪些输入的哪个部分等。此外,学习模块188还可以将变换参数提供给符号感知模块182和子符号感知模块184,使得符号感知模块182和子符号感知模块184可以使用变换参数来将输入变换为符号感知和子符号感知(或表示),并且因此改进控制模型执行器模块180的I/O和功能。
照此,所公开的实施例智能地将符号式、连接性和认知AI技术与基于规则的过程逻辑相结合,以实现行为决策并实时地解决复杂自主车辆驾驶任务。所公开的实施例组合了启发式、符号式和连接性认知方法以覆盖整个自主驾驶操作空间。所公开实施例的一个好处是它们可以通过使用分布式模块、异步通信和不同的控制执行器来帮助改进执行速度,其即使在执行深度传感器处理和协商推理时也允许进行反应式的、实时的决策和动作。此外,由于所公开的实施例可以允许内省计算,因此改进了CPU和存储器资源的使用,这有助于防止无限制的存储器或CPU要求。如将参照图12解释的那样,所公开的实施例可以提供混合范例,其采用多个不同的模块130、140、150、160、170、180,这些模块彼此交互以实现五级自动驾驶所需的特性。
图12是解释控制系统100的模块130、140、150、160、170、180(参照图4-11描述的模块)如何可以提供五级自动化所需的各种特性的表格。通常,不同模块130、140、150、160、170、180的这种组合可以允许所公开的实施例模仿自然的类人行为。所公开实施例的投影模块140、世界模型模块160和决策处理模块170可以提供穷举域覆盖(例如,可证明的状态空间和动作空间覆盖)。
控制器90的每个模块130、140、150、160、170、180包括符号模块和子符号模块,其可以用于生成符号表示和子符号表示。符号模块和子符号模块允许复杂的推理,因为它们可以提供富有表现力的表示和通用算法。结合来自投影模块140的投影提供的推理、来自存储器模块150的存储器数据、从世界模型模块160以及实时控制模型执行器模块180提供的状态,符号表示和子符号表示的使用可以共同地提供反应特性的审议,并用于解决高度复杂域问题,同时遵守实时要求。
投影模块140是预测性的并且支持对未来状态和动作的表示和推理。照此,所公开的实施例还有助于协商和预测能力。例如,系统可以形成和投影关于驾驶场景中的驾驶世界、其它代理者和实体的表示。
所公开的实施例可以同时使用数据驱动、模型驱动和目标驱动的学习。在控制器90的每个模块内提供的学习模块136、148、158、168、178、188可以在所有模块130、140、150、160、170、180处提供主动学习并且允许系统100根据经验自适应。进一步,在控制器90的每一个模块130、140、150、160、170、180处提供子符号模块134、144、154、164、174、184和学习模块136、148、158、168、178、188可以提供处理不完整和不确定信息的能力,因此即使在不确定的情况下也能够进行复杂的决策。
明确的符号表示可以帮助提供支持验证的可解释输出,并且允许灵活的表示和算法,不需要对知识添加进行完全再训练。这可以使修改域知识变得容易。
此外,在所有模块130、140、150、160、170、180和构成那些模块130、140、150、160、170、180的子模块之间提供反馈使得系统能够基于经验进行调整。
不同的符号表示和子符号表示142、144、152、154、162、164、172、174的使用使得能够实现多假设稳健性。
投影140的合并使得能够实现在宽范围的时间尺度上进行推理的能力,同时由于180而保持反应。
虽然在前面的详细描述中已经呈现了至少一个示例性实施例,但是应该认识到存在大量的变型。还应当认识到,一个示例性实施例或多个示例性实施例仅是实例,并不旨在以任何方式限制本公开的范围、适用性或配置。相反,前面的详细描述将为本领域技术人员提供用于实现一个示例性实施例或多个示例性实施例的便利路线图。应当理解,在不脱离所附权利要求及其合法等同物所阐述的本公开的范围的情况下,可以对元件的功能和布置进行各种改变。

Claims (10)

1.一种车辆控制系统,包含:
一个或多个输入数据源,其包含以下中的至少一个:提供传感器输出信息、地图数据和目标的传感器;
低级控制器,其配置为处理控制信号以生成根据所述控制信号控制车辆的多个车辆致动器的命令,以执行要执行的一个或多个调度动作以使驾驶任务自主化;以及
高级控制器,其包含多个第一控制器模块并且配置为生成所述控制信号,其中,所述高级控制器的所述第一控制器模块包含:
输入处理模块,其配置为基于所述输入数据生成符号感知和子符号感知,所述符号感知是包含标记、谓词和逻辑表达中的至少一个的符号表示,并且所述子符号感知是包含概率分布、激活水平和置信水平中的至少一个的子符号表示;
存储器模块,其配置为基于所述符号感知和所述子符号感知生成存储器数据、状态操作和提供给每个其它第一控制器模块的第一反馈信息;
世界模型模块,其配置为基于所述符号感知和所述子符号感知生成指示所述车辆的外部环境中的其它实体的状态并且包括关于所述车辆的所述外部环境中的对象的当前属性的信息的世界状态信息以及提供给每个其它第一控制器模块的第二反馈信息;
决策处理模块,其配置为基于所述符号感知和所述子符号感知生成查询、状态操作、存储器操作、包含控制动作和约束的控制模型以及提供给每个其它第一控制器模块的第三反馈信息;以及
投影模块,其配置为:处理投影输入以生成:发送至所述存储器模块以更新所述存储器模块的存储器操作;发送至所述世界模型模块以在所述世界模型模块上进行修订的状态操作;用于在所述决策处理模块中做出行为决策的投影;以及提供给每个其它第一控制器模块的第四反馈信息,并且其中所述决策处理模块包含:
控制模型执行器模块,其配置为:通过执行所述控制模型生成提供给所述低级控制器的所述控制信号,其中所述控制信号指定用于调度要执行的所述一个或多个调度动作以使驾驶任务自主化的控制动作和参数。
2.根据权利要求1所述的车辆控制系统,其中,所述输入处理模块包含:
配置为基于所述输入数据和输入变换参数生成所述符号感知的符号感知模块;
配置为基于所述输入数据和所述输入变换参数生成所述子符号感知的子符号感知模块,以及
输入学习模块,其配置为:
处理第一学习输入以生成所述输入变换参数,所述第一学习输入包含:所述输入数据、所述符号感知、所述子符号感知、来自每个其它第一控制器模块的反馈信息以及来自所述决策处理模块的输入处理控制信息,其中,所述输入处理控制信息包含命令和参数化;以及
将所述输入变换参数发送至所述符号感知模块和所述子符号感知模块,其中,所述输入变换参数由所述符号感知模块和所述子符号感知模块使用,以将所述输入数据变换为所述符号感知和所述子符号感知。
3.根据权利要求1所述的车辆控制系统,其中,所述投影输入包含:来自所述输入处理模块的所述符号感知和所述子符号感知、来自所述存储器模块的所述存储器数据和所述第一反馈信息、来自所述世界模型模块的所述世界状态信息和所述第二反馈信息以及来自所述决策处理模块的所述查询和所述第三反馈信息,并且其中,所述投影模块包含:
第一符号模块,其配置为:执行符号投影处理以将所述投影输入变换为符号表示并生成符号投影;
第一子符号模块,其配置为:执行子符号投影处理以将所述投影输入变换为子符号表示并生成子符号投影;
第一集成模块,其配置为:
接收包含所述符号投影、所述子符号投影的第一集成输入;以及
集成所述符号投影和所述子符号投影以生成:所述投影、发送至所述存储器模块以更新所述存储器模块的所述存储器操作、发送至所述世界模型模块以在所述世界模型模块处进行修订的所述状态操作、发送至所述决策处理模块以在所述决策处理模块处做出行为决策的所述投影以及所述第四反馈信息,
其中每个所述存储器操作包含以下命令:查询所述存储器模块以从所述存储器模块读取存储器数据,将存储器数据写入所述存储器模块,从所述存储器模块删除存储器数据,或修改存储在所述存储器模块处的存储器数据,并且其中,每个所述状态操作包含以下命令:查询所述世界模型模块以从所述世界模型模块读取世界状态信息,将世界状态信息写入所述世界模型模块,从所述世界模型模块中删除世界状态信息,或在所述世界模型模块处修改世界状态信息,并且其中,
提供给所述决策处理模块的所述投影包含以下中的至少一个:未来预测活动和所述车辆的所述外部环境中的其它实体的状态;以及
第一学习模块,其配置为:
接收包含以下的第二学习输入:来自所述输入处理模块的所述符号感知和所述子符号感知、来自所述存储器模块的所述存储器数据、来自所述世界模型模块的所述世界状态信息、来自所述决策处理模块的所述查询、来自所述第一符号模块的所述符号投影、来自所述第一子符号模块的所述子符号投影以及来自所述第一集成模块的所述投影;
基于所述第二学习输入中的一个或多个生成投影变换参数;以及
将所述投影变换参数发送至所述第一符号模块和所述第一子符号模块以进行处理以改进所述投影模块的输入/输出以及所述投影模块的每个模块的功能。
4.根据权利要求1所述的车辆控制系统,其中,每个所述存储器操作包含以下命令:查询所述存储器模块以从所述存储器模块读取存储器数据,将存储器数据写入所述存储器模块,从所述存储器模块删除存储器数据,或修改存储在所述存储器模块处的存储器数据,并且其中,所述存储器模块包含:
第二符号模块,其配置为:接收包含以下的存储器输入信息:来自所述输入处理模块的所述符号感知和所述子符号感知、来自所述投影模块的所述存储器操作、来自所述世界模型模块的所述世界状态信息、来自所述决策处理模块的所述存储器操作、和存储器变换参数;以及执行符号存储器处理以将所述存储器输入信息变换为符号表示并生成符号存储器;
第二子符号模块,其配置为:接收所述存储器输入信息;以及执行子符号存储器处理以将所述存储器输入信息变换为子符号表示并生成子符号存储器;
第二集成模块,其配置为:
接收包含所述符号存储器、所述子符号存储器和存储器变换参数的第二集成输入;以及
集成所述第二集成输入以生成所述第二反馈信息、发送至所述投影模块的所述存储器数据、发送至所述世界模型模块的所述状态操作以及发送至所述决策处理模块的所述存储器数据;
将所述存储器数据发送至所述投影模块和所述决策处理模块,其中,所述存储器数据包含:捕获潜在重要性的历史数据的历史信息;
将所述状态操作发送至所述世界模型模块,其中,每个所述状态操作包含以下命令:查询所述世界模型模块以从所述世界模型模块读取世界状态信息,将世界状态信息写入所述世界模型模块,从所述世界模型模块中删除世界状态信息,或在所述世界模型模块处修改世界状态信息;以及
第二学习模块,其配置为:
接收包含以下的第三学习输入:所述符号存储器、所述子符号存储器、来自所述投影模块的所述存储器操作、来自所述世界模型模块的所述世界状态信息、来自所述决策处理模块的所述存储器操作和来自所述第二集成模块的所述存储器数据;以及
基于所述第三学习输入中的一个或多个生成所述存储器变换参数;
以及
将所述存储器变换参数发送至所述第二符号模块和所述第二子符号模块以进行处理以改进所述存储器模块的输入/输出以及所述存储器模块的每个模块的功能。
5.根据权利要求1所述的车辆控制系统,其中,所述世界模型模块进一步配置为:接收世界模型输入信息,其包含:来自所述输入处理模块的所述符号感知和所述子符号感知,以及来自所述投影模块、所述存储器模块以及所述决策处理模块的所述状态操作、以及世界模型变换参数;以及
其中,所述世界模型模块包含:
第三符号模块配置为:执行符号世界模型处理以将所述世界模型输入信息变换为符号表示并且生成符号世界状态信息;
第三子符号模块配置为:执行子符号世界模型处理以将所述世界模型输入信息变换为子符号表示并且生成子符号世界状态信息;
第三集成模块,其配置为:
接收第三集成输入,其包含:来自符号模块的所述符号世界状态信息、来自子符号模块的所述子符号世界状态信息以及世界模型变换参数;以及
集成所述符号世界状态信息和所述子符号世界状态信息以生成所述世界状态信息、所述第二反馈信息、以及发送至所述投影模块、所述存储器模块和所述决策处理模块的所述世界状态信息;以及
第三学习模块,其配置为:
接收第四学习输入,其包含:所述符号感知和所述子符号感知、来自所述投影模块的所述状态操作、来自所述存储器模块的所述状态操作、来自所述决策处理模块的所述状态操作、来自所述第三符号模块的所述符号世界状态信息、来自所述第三子符号模块的所述子符号世界状态信息以及来自所述集成模块的所述世界状态信息;
基于所述第四学习输入生成世界模型变换参数;以及
将所述世界模型变换参数发送至所述第三符号模块和所述第三子符号模块以进行处理,以改进所述世界模型模块的输入/输出和所述世界模型模块的每个模块的功能。
6.根据权利要求1所述的车辆控制系统,其中,所述决策处理模块进一步配置为:
接收决策处理输入,其包含:来自所述输入处理模块的所述符号感知和所述子符号感知、来自所述投影模块的所述投影信息、来自所述存储器模块的所述存储器数据以及来自所述世界模型模块的所述世界状态信息;
处理所述决策处理输入以确定包含要执行的所述一个或多个调度动作以使驾驶任务自主化的行为决策,并且生成所述查询、所述状态操作、所述存储器操作、所述控制模型和提供给每个其它第一控制器模块的所述第三反馈信息;
将所述查询发送至所述投影模块,其中,发送至所述投影模块的每个查询包含对做出所述行为决策所需的所述投影模块的投影数据的请求;
将所述存储器操作发送至所述存储器模块,其中,每个存储器操作包含以下命令:查询所述存储器模块以从做出所述行为决策所需的所述存储器模块读取存储器数据,根据做出所述行为决策的需要将存储器数据写入所述存储器模块,根据做出所述行为决策的需要从所述存储器模块删除存储器数据,或者根据做出所述行为决策的需要在所述存储器模块处修改存储器数据;以及
将所述状态操作发送至所述世界模型模块,其中,每个状态操作包含以下命令:查询所述世界模型模块以从做出所述行为决策所需的所述世界模型模块读取世界状态信息,将世界状态信息写入做出所述行为决策所需的所述世界模型模块,根据做出所述行为决策的需要从所述世界模型模块中删除世界状态信息,或根据做出所述行为决策的需要在所述世界模型模块处修改世界状态信息。
7.根据权利要求6所述的车辆控制系统,其中,所述决策处理模块包含:
第四符号模块,其配置为:
接收决策处理输入,其包含:来自所述输入处理模块的所述符号感知和所述子符号感知、来自所述投影模块的所述投影信息、来自所述存储器模块的所述存储器数据、来自所述世界模型模块的所述世界状态信息以及决策处理变换参数;以及
执行符号决策处理以将所述决策处理输入变换为符号表示,并且
生成符号决策处理结果,其中,所述符号决策处理结果包含动作、动作参数和约束中的一种或多种;
第四子符号模块,其配置为:执行子符号决策处理以将所述决策处理输入变换为子符号表示,并且生成子符号决策处理结果,其中,所述子符号决策处理结果包含动作、动作参数和约束中的一种或多种;以及
第四集成模块,其配置为:
接收第四集成输入,其包含:所述符号决策处理结果、所述子符号决策处理结果和所述决策处理变换参数;以及
将所述符号决策处理结果与所述子符号决策处理结果集成,以生成:决策处理结果,其中,所述决策处理结果包含:所述控制模型、所述第三反馈信息、发送至所述投影模块的所述查询、发送至所述存储器模块的所述存储器操作以及发送至所述世界模型模块的所述状态操作;以及
第四学习模块,其配置为:
接收第五学习输入,其包含:来自所述输入处理模块的所述符号感知和所述子符号感知、来自所述投影模块的所述投影信息、来自所述存储器模块的所述存储器数据以及来自所述世界模型模块的所述世界状态信息;以及
基于所述第五学习输入中的一种或多种生成所述决策处理变换参数;以及
将所述决策处理变换参数发送至所述第四符号模块和所述第四子符号模块以进行处理,以改进所述决策处理模块的输入/输出和所述决策处理模块的每个模块的功能;
其中,所述控制模型执行器模块包含:
第五符号模块,其配置为:
执行符号控制模型处理以将所述控制模型输入信息变换为符号表示并生成包含所述控制动作和约束的符号表示的符号控制模型;
第五子符号模块,其配置为:执行子符号控制模型处理以将所述控制模型输入信息变换为子符号表示并生成包含所述控制动作和约束的子符号表示的子符号控制模型;
第五集成模块,其配置为:集成所述符号控制模型和所述子符号控制模型以生成指定发送至所述低级控制器的所述控制动作和参数的所述控制信号,其中,所述控制动作和参数提供用于调用所述低级控制器的能力以调度要执行的所述一个或多个调度动作以使所述驾驶任务自主化;
第五学习模块,其配置为:
接收第六学习输入,其包含:所述符号控制模型、所述子符号控制模型和来自所述第五集成模块的所述控制信号;
基于所述第六学习输入生成控制模型变换参数;以及
将所述控制模型变换参数发送至所述第五符号模块和所述第五子符号模块以进行处理,以改进所述控制模型执行器模块的输入/输出和
所述控制模型执行器模块的每个模块的功能。
8.一种高级控制器,其配置为生成控制信号,所述控制信号用于生成控制车辆的多个车辆致动器的命令,以执行要执行的一个或多个调度动作以使驾驶任务自主化,所述高级控制器包含:
多个第一控制器模块,其包含:
配置为基于一个或多个输入数据源生成符号感知和子符号感知的输入处理模块,所述一个或多个输入数据源包含以下中的至少一个:提供传感器输出信息、地图数据和目标的传感器,其中所述符号感知是包含标记、谓词和逻辑表达中的至少一个的符号表示,并且所述子符号感知是包含概率分布、激活水平和置信水平中的至少一个的子符号表示;
存储器模块,其配置为基于所述符号感知和所述子符号感知生成存储器数据、状态操作和提供给每个所述第一控制器模块的第一反馈信息;
世界模型模块,其配置为基于所述符号感知和所述子符号感知生成指示所述车辆的外部环境中的其它实体的状态并且包括关于所述车辆的所述外部环境中的对象的当前属性的信息的世界状态信息以及提供给每个其它第一控制器模块的第二反馈信息;以及
决策处理模块,其配置为基于所述符号感知和所述子符号感知生成查询、状态操作、存储器操作、包含控制动作和约束的控制模型以及提供给每个其它第一控制器模块的第三反馈信息;
投影模块,其配置为:处理投影输入以生成:发送至所述存储器模块以更新所述存储器模块的存储器操作;发送至所述世界模型模块以在所述世界模型模块上进行修订的状态操作;用于在所述决策处理模块中做出行为决策的投影;以及提供给每个其它第一控制器模块的第四反馈信息,并且其中所述决策处理模块包含:
控制模型执行器模块,其配置为:通过执行所述控制模型生成所述控制信号,其中,所述控制信号指定用于调度要执行的所述一个或多个调度动作的控制动作和参数以使驾驶任务自主化。
9.一种用于控制车辆的方法,所述方法包含:
基于一个或多个输入数据源在高级控制器处生成控制信号,其包含以下中的至少一个:提供传感器输出信息、地图数据和目标的传感器,其中,所述高级控制器包含第一控制器模块,所述第一控制器模块包含:输入处理模块、投影模块、存储器模块、世界模型模块以及包含控制模型执行器模块的决策处理模块,并且其中,所述生成控制信号包含:
在所述输入处理模块处基于所述输入数据生成符号感知和子符号感知,其中所述符号感知是包含标记、谓词和逻辑表达中的至少一个的符号表示,并且所述子符号感知是包含概率分布、激活水平和置信水平中的至少一个的子符号表示;
基于所述符号感知和所述子符号感知在所述存储器模块处生成存储器数据、状态操作和提供给每个所述第一控制器模块的第一反馈信息;
基于所述符号感知和所述子符号感知在所述世界模型模块处生成指示所述车辆的外部环境中的其它实体的状态并且包括关于所述车辆的所述外部环境中的对象的当前属性的信息的世界状态信息以及提供给每个其它第一控制器模块的第二反馈信息;
基于所述符号感知和所述子符号感知在所述决策处理模块处生成查询、状态操作、存储器操作、包含控制动作和约束的控制模型以及提供给每个其它第一控制器模块的第三反馈信息;
在所述投影模块处处理投影输入以生成:发送至所述存储器模块以更新所述存储器模块的存储器操作;发送至所述世界模型模块以在所述世界模型模块上进行修订的状态操作;用于在所述决策处理模块中做出行为决策的投影;以及提供给每个其它第一控制器模块的第四反馈信息;
通过执行所述控制模型在所述控制模型执行器模块处生成所述控制信号,其中,所述控制信号指定用于调度要执行的所述一个或多个调度动作的控制动作和参数以使驾驶任务自主化;以及
在低级控制器处理所述控制信号,以生成命令,所述命令根据所述控制信号控制所述车辆的多个车辆致动器,以执行要执行的一个或多个调度动作以使驾驶任务自主化。
10.根据权利要求9所述的方法,其中,在所述输入处理模块处基于所述输入数据生成符号感知和子符号感知包含:
处理第一学习输入以生成输入变换参数,所述第一学习输入包含:所述输入数据、所述符号感知、所述子符号感知、来自每个其它第一控制器模块的反馈信息以及来自所述决策处理模块的输入处理控制信息,其中,所述输入处理控制信息包含命令和参数化;
将所述输入变换参数发送至所述输入处理模块的符号感知模块和所述输入处理模块的子符号感知模块;
在所述符号感知模块处处理所述输入数据、所述输入变换参数、来自所述决策处理模块的所述输入处理控制信息以及来自每个其它第一控制器模块的反馈信息,以将所述输入数据变换为所述符号感知;以及
在所述子符号感知模块处处理所述输入数据、所述输入变换参数、来自所述决策处理模块的所述输入处理控制信息以及来自每个其它第一控制器模块的反馈信息,以将所述输入数据变换为所述子符号感知,
其中,所述投影输入包含:来自所述输入处理模块的所述符号感知和所述子符号感知、来自所述存储器模块的所述存储器数据和所述第一反馈信息、来自所述世界模型模块的所述世界状态信息和所述第二反馈信息以及来自所述决策处理模块的所述查询和所述第三反馈信息,并且其中,在所述投影模块处处理所述投影输入包含:
在第一符号模块处执行符号投影处理,以将所述投影输入变换为符号表示并且生成符号投影;
在第一子符号模块处执行子符号投影处理,以将所述投影输入变换为子符号表示并且生成子符号投影;
集成所述符号投影和所述子符号投影以生成所述投影、发送至所述存储器模块以更新所述存储器模块的所述存储器操作、发送至所述世界模型模块以在所述世界模型模块处进行修订的所述状态操作、发送至所述决策处理模块以在所述决策处理模块处做出行为决策的所述投影以及所述第四反馈信息;以及
其中,每个所述存储器操作包含以下命令:查询所述存储器模块以从所述存储器模块读取存储器数据,将存储器数据写入所述存储器模块,从所述存储器模块删除存储器数据,或修改存储在所述存储器模块处的存储器数据,以及
其中,每个所述状态操作包含以下命令:查询所述世界模型模块以从所述世界模型模块读取世界状态信息,将世界状态信息写入所述世界模型模块,从所述世界模型模块中删除世界状态信息,或在所述世界模型模块处修改世界状态信息,以及
其中,提供给所述决策处理模块的所述投影包含以下中的至少一个:未来预测活动和所述车辆的所述外部环境中的其它实体的状态;以及
所述方法进一步包含:
处理第二学习输入以生成投影变换参数,所述投影模块使用所述投影变换参数来改进所述投影模块的输入/输出和所述投影模块的每个模块的功能,其中,所述第二学习输入包含:来自所述输入处理模块的所述符号感知和所述子符号感知、来自所述存储器模块的所述存储器数据、来自所述世界模型模块的所述世界状态信息、来自所述决策处理模块的所述查询、来自所述第一符号模块的所述符号投影、来自所述第一子符号模块的所述子符号投影以及来自第一集成模块的所述投影。
CN201811294235.0A 2017-11-08 2018-11-01 用于自主车辆行为控制的系统和方法以及高级控制器 Active CN109753047B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/806367 2017-11-08
US15/806,367 US10591914B2 (en) 2017-11-08 2017-11-08 Systems and methods for autonomous vehicle behavior control

Publications (2)

Publication Number Publication Date
CN109753047A CN109753047A (zh) 2019-05-14
CN109753047B true CN109753047B (zh) 2021-11-09

Family

ID=66179392

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811294235.0A Active CN109753047B (zh) 2017-11-08 2018-11-01 用于自主车辆行为控制的系统和方法以及高级控制器

Country Status (3)

Country Link
US (1) US10591914B2 (zh)
CN (1) CN109753047B (zh)
DE (1) DE102018127361A1 (zh)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018176000A1 (en) 2017-03-23 2018-09-27 DeepScale, Inc. Data synthesis for autonomous control systems
US11157441B2 (en) 2017-07-24 2021-10-26 Tesla, Inc. Computational array microprocessor system using non-consecutive data formatting
US11409692B2 (en) 2017-07-24 2022-08-09 Tesla, Inc. Vector computational unit
US10671349B2 (en) 2017-07-24 2020-06-02 Tesla, Inc. Accelerated mathematical engine
US11893393B2 (en) 2017-07-24 2024-02-06 Tesla, Inc. Computational array microprocessor system with hardware arbiter managing memory requests
US11561791B2 (en) 2018-02-01 2023-01-24 Tesla, Inc. Vector computational unit receiving data elements in parallel from a last row of a computational array
US11215999B2 (en) 2018-06-20 2022-01-04 Tesla, Inc. Data pipeline and deep learning system for autonomous driving
US11361457B2 (en) 2018-07-20 2022-06-14 Tesla, Inc. Annotation cross-labeling for autonomous control systems
US11636333B2 (en) 2018-07-26 2023-04-25 Tesla, Inc. Optimizing neural network structures for embedded systems
US11562231B2 (en) 2018-09-03 2023-01-24 Tesla, Inc. Neural networks for embedded devices
CN113039556B (zh) 2018-10-11 2022-10-21 特斯拉公司 用于使用增广数据训练机器模型的系统和方法
US11196678B2 (en) 2018-10-25 2021-12-07 Tesla, Inc. QOS manager for system on a chip communications
US11816585B2 (en) 2018-12-03 2023-11-14 Tesla, Inc. Machine learning models operating at different frequencies for autonomous vehicles
US11537811B2 (en) 2018-12-04 2022-12-27 Tesla, Inc. Enhanced object detection for autonomous vehicles based on field view
US11610117B2 (en) 2018-12-27 2023-03-21 Tesla, Inc. System and method for adapting a neural network model on a hardware platform
US10843728B2 (en) * 2019-01-31 2020-11-24 StradVision, Inc. Method and device for delivering steering intention of autonomous driving module or driver to steering apparatus of subject vehicle more accurately
US10997461B2 (en) 2019-02-01 2021-05-04 Tesla, Inc. Generating ground truth for machine learning from time series elements
EP3693243A1 (en) * 2019-02-06 2020-08-12 Zenuity AB Method and system for controlling an automated driving system of a vehicle
US11567514B2 (en) 2019-02-11 2023-01-31 Tesla, Inc. Autonomous and user controlled vehicle summon to a target
US10956755B2 (en) 2019-02-19 2021-03-23 Tesla, Inc. Estimating object properties using visual image data
US20200310449A1 (en) * 2019-03-26 2020-10-01 GM Global Technology Operations LLC Reasoning system for sensemaking in autonomous driving
US11526729B2 (en) * 2019-05-22 2022-12-13 International Business Machines Corporation Discovering higher-level actions from expert's action demonstration
DE102019209383A1 (de) * 2019-06-27 2020-12-31 Zf Friedrichshafen Ag System zur Erkennung von verdeckten Objekten mit multi-spektraler Sensorik im Landwirtschaftsbereich und Landmaschine umfassend ein derartiges System
CN112578781B (zh) * 2019-09-29 2022-12-30 华为技术有限公司 数据处理方法、装置、芯片系统及介质
US11307585B2 (en) * 2019-10-30 2022-04-19 Nissan North America, Inc. Introspective competence modeling for AV decision making
CN112859838B (zh) * 2020-12-31 2022-05-17 清华大学苏州汽车研究院(吴江) 一种自动驾驶控制方法、装置、设备和介质
WO2023098992A1 (en) 2021-12-01 2023-06-08 Volvo Autonomous Solutions AB Vehicle control based on cascaded controllers with configurable bandwidth

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7904569B1 (en) * 1999-10-06 2011-03-08 Gelvin David C Method for remote access of vehicle components
JP4432286B2 (ja) * 2001-06-29 2010-03-17 トヨタ自動車株式会社 車間距離制御装置
KR20070011495A (ko) * 2004-04-22 2007-01-24 프론트라인 로보틱스 자율 이동 시스템을 위한 개방형 제어 시스템 아키텍처
JP4097158B2 (ja) * 2005-06-14 2008-06-11 三菱電機株式会社 車載用レーダ装置
US8855846B2 (en) * 2005-10-20 2014-10-07 Jason W. Grzywna System and method for onboard vision processing
KR100851120B1 (ko) * 2006-12-13 2008-08-08 현대자동차주식회사 이에스피 통합형 차선 유지 지원장치 및 그 제어 방법
WO2008153729A1 (en) * 2007-05-23 2008-12-18 Rocona, Inc. Autonomous agriculture platform guidance system
JP5461241B2 (ja) * 2010-03-03 2014-04-02 本田技研工業株式会社 変速制御装置
US20170098197A1 (en) * 2014-02-21 2017-04-06 Rna Labs Inc. Systems and Methods for Automatically Collecting User Data and Making a Real-World Action for a User
EP3126167A1 (en) * 2014-04-02 2017-02-08 Levant Power Corporation Active safety suspension system
DE102014014117A1 (de) * 2014-09-24 2016-03-24 Diehl Bgt Defence Gmbh & Co. Kg Abwehrvorrichtung zum Bekämpfen eines unbemannten Luftfahrzeugs, Schutzeinrichtung zum Bekämpfen eines unbemannten Luftfahrzeugs und Verfahren zum Betrieb einer Schutzeinrichtung
JP6213796B2 (ja) * 2014-11-20 2017-10-18 エスゼット ディージェイアイ テクノロジー カンパニー リミテッドSz Dji Technology Co.,Ltd 可動物体の機能モジュールのアドレス指定方法、システム、及び可動物体
US11238397B2 (en) * 2015-02-09 2022-02-01 Fedex Corporate Services, Inc. Methods, apparatus, and systems for generating a corrective pickup notification for a shipped item using a mobile master node
CN107024927B (zh) * 2016-02-01 2021-02-12 上海无线通信研究中心 一种自动驾驶系统和方法
DE102016202590A1 (de) * 2016-02-19 2017-09-07 Robert Bosch Gmbh Verfahren und Vorrichtung zum Betreiben eines automatisierten Kraftfahrzeugs
CN105892471B (zh) * 2016-07-01 2019-01-29 北京智行者科技有限公司 汽车自动驾驶方法和装置
US20180087907A1 (en) * 2016-09-29 2018-03-29 The Charles Stark Draper Laboratory, Inc. Autonomous vehicle: vehicle localization
CN106527427A (zh) * 2016-10-19 2017-03-22 东风汽车公司 基于高速公路的自动驾驶感知系统
US11009875B2 (en) * 2017-03-09 2021-05-18 Waymo Llc Preparing autonomous vehicles for turns
US10101745B1 (en) * 2017-04-26 2018-10-16 The Charles Stark Draper Laboratory, Inc. Enhancing autonomous vehicle perception with off-vehicle collected data
CN106990714A (zh) * 2017-06-05 2017-07-28 李德毅 基于深度学习的适配控制方法与装置
US10496098B2 (en) * 2017-09-12 2019-12-03 Baidu Usa Llc Road segment-based routing guidance system for autonomous driving vehicles

Also Published As

Publication number Publication date
US10591914B2 (en) 2020-03-17
CN109753047A (zh) 2019-05-14
DE102018127361A1 (de) 2019-05-09
US20190138004A1 (en) 2019-05-09

Similar Documents

Publication Publication Date Title
CN109753047B (zh) 用于自主车辆行为控制的系统和方法以及高级控制器
US10688991B2 (en) Systems and methods for unprotected maneuver mitigation in autonomous vehicles
US10845815B2 (en) Systems, methods and controllers for an autonomous vehicle that implement autonomous driver agents and driving policy learners for generating and improving policies based on collective driving experiences of the autonomous driver agents
CN109131346B (zh) 用于预测自主车辆中的交通模式的系统和方法
US10514697B2 (en) Vehicle remote assistance mode
CN109460015B (zh) 用于自主驾驶应用的无监督学习代理
US10732625B2 (en) Autonomous vehicle operations with automated assistance
US20180150081A1 (en) Systems and methods for path planning in autonomous vehicles
US20190332109A1 (en) Systems and methods for autonomous driving using neural network-based driver learning on tokenized sensor inputs
CN110225852B (zh) 用于自主车辆的反馈
CN110244701B (zh) 用于基于自动生成的课程序列的自主车辆的强化学习的方法和装置
US20200033869A1 (en) Systems, methods and controllers that implement autonomous driver agents and a policy server for serving policies to autonomous driver agents for controlling an autonomous vehicle
US20190072978A1 (en) Methods and systems for generating realtime map information
US20190061771A1 (en) Systems and methods for predicting sensor information
US20180150080A1 (en) Systems and methods for path planning in autonomous vehicles
US20180314259A1 (en) Systems and methods for obstacle avoidance and path planning in autonomous vehicles
US20190026588A1 (en) Classification methods and systems
US11891087B2 (en) Systems and methods for generating behavioral predictions in reaction to autonomous vehicle movement
US20180079422A1 (en) Active traffic participant
CN109115230B (zh) 用于车辆的自主驾驶系统及其车辆
CN112498349A (zh) 用于紧急车道改变的操纵计划
KR102607390B1 (ko) 차량의 주변 상황 확인 방법
US20180079423A1 (en) Active traffic participant
CN115909706A (zh) 用于动态车队优先化管理的方法和系统
CN115996225A (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
GR01 Patent grant
GR01 Patent grant