CN114815676A - 与自动化控制系统的行为相关的解释的生成和呈现 - Google Patents
与自动化控制系统的行为相关的解释的生成和呈现 Download PDFInfo
- Publication number
- CN114815676A CN114815676A CN202111596621.7A CN202111596621A CN114815676A CN 114815676 A CN114815676 A CN 114815676A CN 202111596621 A CN202111596621 A CN 202111596621A CN 114815676 A CN114815676 A CN 114815676A
- Authority
- CN
- China
- Prior art keywords
- interpretation
- user
- generated
- vehicle
- control 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
Links
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 54
- 238000000034 method Methods 0.000 claims description 46
- 230000006399 behavior Effects 0.000 claims description 42
- 230000008569 process Effects 0.000 claims description 17
- 230000004044 response Effects 0.000 claims description 13
- 230000009471 action Effects 0.000 description 127
- 238000012545 processing Methods 0.000 description 25
- 230000006870 function Effects 0.000 description 16
- 230000008859 change Effects 0.000 description 13
- 238000012544 monitoring process Methods 0.000 description 10
- 230000000052 comparative effect Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000013473 artificial intelligence Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000005457 optimization Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000007704 transition Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 208000019901 Anxiety disease Diseases 0.000 description 2
- 230000036506 anxiety Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000003542 behavioural effect Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000002485 combustion reaction Methods 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 235000000334 grey box Nutrition 0.000 description 1
- 244000085685 grey box Species 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0265—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0423—Input/output
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT 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/00—Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT 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/00—Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
- B60K35/20—Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor
- B60K35/28—Output 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT 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/00—Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
- B60K35/65—Instruments specially adapted for specific vehicle types or users, e.g. for left- or right-hand drive
- B60K35/654—Instruments specially adapted for specific vehicle types or users, e.g. for left- or right-hand drive the user being the driver
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W50/08—Interaction between the driver and the control system
- B60W50/14—Means for informing the driver, warning the driver or prompting a driver intervention
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W60/00—Drive control systems specially adapted for autonomous road vehicles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT 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
- B60K2360/00—Indexing scheme associated with groups B60K35/00 or B60K37/00 relating to details of instruments or dashboards
- B60K2360/16—Type of output information
- B60K2360/161—Explanation of functions, e.g. instructions
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT 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
- B60K2360/00—Indexing scheme associated with groups B60K35/00 or B60K37/00 relating to details of instruments or dashboards
- B60K2360/16—Type of output information
- B60K2360/175—Autonomous driving
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0019—Control system elements or transfer functions
- B60W2050/0028—Mathematical models, e.g. for simulation
- B60W2050/0029—Mathematical model of the driver
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W50/08—Interaction between the driver and the control system
- B60W50/14—Means for informing the driver, warning the driver or prompting a driver intervention
- B60W2050/146—Display means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2540/00—Input parameters relating to occupants
- B60W2540/215—Selection or confirmation of options
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/25—Pc structure of the system
- G05B2219/25257—Microcontroller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
- G06N5/045—Explanation of inference; Explainable artificial intelligence [XAI]; Interpretable artificial intelligence
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Mechanical Engineering (AREA)
- Transportation (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Medical Informatics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Optimization (AREA)
- Probability & Statistics with Applications (AREA)
- Algebra (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Computational Linguistics (AREA)
- Traffic Control Systems (AREA)
Abstract
一种用于生成并向用户呈现解释的系统,包括输入模块,该输入模块被配置为接收传感器数据并将传感器数据输入到自动化系统的控制系统,该控制系统被配置为基于传感器数据并根据灰箱决策算法来控制自动化系统的操作。该系统还包括解释模块和显示模块,解释模块被配置为生成对由控制系统做出的决定和自动化系统的相应行为的解释,所述解释基于用户的请求和用户模型中的至少一个生成,显示模块被配置为向用户呈现所生成的解释。
Description
技术领域
本主题公开涉及用户与自动驾驶或操作系统交互的技术。更具体地,本主题公开涉及用于向用户呈现自动驾驶行为的解释的系统和方法。
背景技术
车辆越来越多地配备自动驾驶系统,提供各种级别的自动化。例如,车辆可以具有完全自主控制、半自主控制和特定车辆功能的自主控制(例如,制动或转向)。半自动和全自动驾驶行为部分由决策算法决定。由于用户并不完全了解决策过程,因此可能会出现用户不确定行为发生原因的情况。例如,自动化控制系统可以执行机动以避开检测到的驾驶员不可见的车辆或物体,或者自动化控制系统的限制可以导致车辆以意外的方式运行。这种情况会引起用户的担忧,并削弱用户对自动和半自动车辆的信心。
发明内容
在一个示例性实施例中,一种用于生成并向用户呈现解释的系统,包括输入模块,该输入模块被配置为接收传感器数据并将传感器数据输入到自动化系统的控制系统,该控制系统被配置为基于传感器数据并根据灰箱决策算法来控制自动化系统的操作。该系统还包括解释模块和显示模块,解释模块被配置为生成对由控制系统做出的决定和自动化系统的相应行为的解释,解释基于用户的请求和用户模型中的至少一个生成,显示模块被配置为向用户呈现所生成的解释。
除了在此描述的一个或多个特征之外,所生成的解释包括基于操作上下文选择的预定解释,操作上下文基于自动化系统动态数据和自动化系统周围环境的一个或多个特征。
除了在此描述的一个或多个特征之外,所生成的解释基于概率解释算法,解释算法指示是否要呈现所生成的解释以及要呈现所生成的解释的时间。
除了在此描述的一个或多个特征之外,解释算法是灰箱决策算法的扩展。
除了在此描述的一个或多个特征之外,用户模型指示响应于所确定的操作上下文用户将被关注的概率,并且解释模块被配置为基于大于选定阈值的概率向显示模块输出生成的解释。
除了在此描述的一个或多个特征之外,该系统还包括解释过滤器模块,该解释过滤器模块被配置为基于用户模型来调整所生成的解释的长度和时机中的至少一个。
除了在此描述的一个或多个特征之外,解释模块被配置为基于马尔可夫决策过程(MDP)生成所生成的解释。
除了在此描述的一个或多个特征之外,所生成的解释选自以下至少一个:短视解释(myopic explanation)、解释系列、对比解释、语义解释和以用户为中心的解释。
在一个示例性实施例中,一种生成并向用户呈现解释的方法,包括接收传感器数据并将传感器数据输入到自动化系统的控制系统,该控制系统被配置为基于传感器数据并根据灰箱决策算法来控制自动化系统的操作。该方法还包括通过解释模块生成对由控制系统做出的决定和自动化系统的相应行为的解释,该解释是基于用户的请求和用户模型中的至少一项生成的,并向用户呈现所生成的解释。
除了在此描述的一个或多个特征之外,所生成的解释包括基于操作上下文选择的预定解释,操作上下文基于自动化系统动态数据和自动化系统周围环境的一个或多个特征。
除了在此描述的一个或多个特征之外,所生成的解释基于概率解释算法,解释算法指示是否要呈现所生成的解释以及要呈现所生成的解释的时间。
除了在此描述的一个或多个特征之外,解释算法是灰箱决策算法的扩展。
除了在此描述的一个或多个特征之外,用户模型指示响应于确定的操作上下文用户将被关注的概率,并且基于大于选定阈值的概率来呈现所生成的解释。
除了在此描述的一个或多个特征之外,该方法还包括解释过滤器,用于基于用户模型调整所生成的解释的长度和时机中的至少一个。
除了在此描述的一个或多个特征之外,所生成的解释基于马尔可夫决策过程(MDP)。
除了在此描述的一个或多个特征之外,所生成的解释选自以下至少一个:短视解释、解释系列、对比解释、语义解释和以用户为中心的解释。
在一个示例性实施例中,一种车辆系统,包括具有计算机可读指令的存储器和用于执行计算机可读指令的处理设备。计算机可读指令控制处理设备执行接收传感器数据并将传感器数据输入到自动化系统的控制系统,控制系统被配置为基于传感器数据并根据灰箱决策算法来控制自动化系统的操作。计算机可读指令还控制处理设备执行通过解释模块生成对由控制系统做出的决定和自动化系统的相应行为的解释,该解释基于用户的请求和用户模型中的至少一个生成,并向用户呈现所生成的解释。
除了在此描述的一个或多个特征之外,生成的解释包括基于操作上下文选择的预定解释,操作上下文基于自动化系统动态数据和自动化系统周围环境的一个或多个特征。
除了在此描述的一个或多个特征之外,生成的解释基于概率解释算法,解释算法指示是否要呈现所生成的解释以及要呈现所生成的解释的时间。
除了在此描述的一个或多个特征之外,用户模型指示响应于确定的操作上下文用户将被关注的概率,并且基于大于选定阈值的概率来呈现所生成的解释。
当结合附图时,根据以下详细描述,本公开的上述特征和优点以及其他特征和优点将变得显而易见。
附图说明
其他特征、优点和细节仅作为示例出现在以下详细描述中,该详细描述参考了附图,其中:
图1是根据示例性实施例的包括解释系统的各方面的机动车辆的俯视图;
图2描绘了根据示例性实施例的被配置为执行生成和/或呈现自动化系统的行为的解释的各方面的计算机系统;
图3描绘了根据示例性实施例的用于向用户呈现关于自动化系统的行为的解释的系统;
图4是描绘根据示例性实施例的生成用户模型并主动呈现由自动化控制系统执行或计划的动作的解释的方法的各方面的流程图;
图5是描绘根据示例性实施例的经由解释引擎生成解释的方法的各方面的流程图;
图6是描绘根据示例性实施例的呈现由自动化控制系统执行或计划的动作或行为的解释的方法的各方面的流程图;
图7是描绘根据示例性实施例的呈现由自动化控制系统执行或计划的动作或行为的解释的方法的各方面的流程图;和
图8描绘了根据示例性实施例的包括自动解释引擎和解释过滤器系统的解释系统。
具体实施方式
以下描述本质上仅仅是示例性的,并不旨在限制本公开、其应用或用途。应当理解,在所有附图中,相应的附图标记表示相似或相应的部件和特征。
根据一个或多个示例性实施例,提供了用于生成和/或呈现自动化系统的动作或行为的解释的方法和系统。这些解释提供了关于为什么自动化系统以某种方式运行的见解,从而减轻了用户的压力并增加了对自动化系统的信心。“自动化系统”可以是具有自动化控制能力的任何设备或系统。在一个实施例中,自动化系统是具有控制系统的自动化或半自动化车辆的一部分,该控制系统被配置成根据一个或多个自动化水平来控制车辆。提供解释系统来呈现行为的解释,以便减轻用户的担忧并增加对自动化系统的信心。解释系统可以主动地和/或响应于用户请求(手动请求)给出解释。
尽管以下描述是在车辆的背景下,但是在此描述的实施例不限于此,并且可以结合具有自动化行为的各种设备和系统(自动化系统)中的任何一种来实现。这种设备或系统的例子包括飞机、工厂或制造机械、机器人、建筑车辆、智能家居设备、物联网设备等。
解释系统的实施例被配置成从自动化控制系统接收一个或多个决策,并向用户,例如自动化或半自动化车辆中的驾驶员和/或乘客,呈现解释。在一个实施例中,自动化控制系统利用灰箱算法来做出控制决策。灰箱算法,例如人工智能规划算法,指定了计算动作或行为的人工智能决策过程,并且受到不确定性、成本函数、动态信息和/或操作上下文的影响。
在一个实施例中,被配置为解释系统的处理设备或模块计算可能在各种驾驶或操作上下文中发生的自动化行为的解释。“操作上下文”包括可能影响驾驶或操作行为的条件和特征的任何组合。操作上下文可以包括车辆或其他自动化系统周围环境的特征,其可以包括物理环境及其特征和条件(例如,其他车辆、行人、道路类型、十字路口、交通控制设备、道路条件、一天中的时间、天气等)。操作上下文还可以包括其他条件,例如用户的条件(例如,分心、紧张、眼睛离开道路、转换到手动控制等)和车辆动态(例如,静止、在给定速度下、制动、加速、转弯等)。解释系统还包括解释算法,用于确定是否要呈现解释、解释的类型、通过解释呈现的信息量和/或呈现解释的优选时间。
解释可以响应于用户请求而呈现,或者由解释系统基于选定标准主动选择。在一个实施例中,如果用户模型指示给定的操作上下文很可能会引起关注,并且因此用户希望或受益于解释来减轻这种关注,则解释系统利用用户模型来主动地生成、选择和/或呈现解释。
可以使用各种模态中的一种或多种来呈现解释,包括视觉模态(例如,图形和/或文本解释)和/或听觉模态(例如,听觉解释)。可以使用其他模式来传达信息和/或通过提醒用户正在呈现解释来增强解释的有效性。这些模态包括听觉模态(例如,哔哔声、音调或其系列)、触觉模态(例如,方向盘和/或座椅振动)和/或视觉模态(例如,内部照明的控制)。一个或多个模态的组合和/或特征可以以任何适于提醒用户和/或给出解释的方式使用。
在此描述的实施例呈现了许多优点。例如,解释系统提供了一种有效的方法来减轻用户对自动化系统行为的担忧。解释系统提供关于为什么某个驾驶行为正在发生或将要发生的信息(并且还可以解释为什么选择一个行为而不是另一个行为)。由解释系统提供的解释可以提供阐明自动化行为的信息,这可以减轻用户的担忧,同时也教育用户关于自动化系统的能力、限制和正确行为。在许多情况下,环境中存在一定程度的不确定性,用户可能无法评估导致给定行为的所有因素或条件(例如,用户可能看不到其他车辆或特征)。在这种情况下,用户可能不知道选择某个行为的原因,这可能会导致不必要的担忧和压力。解释系统可以通过向用户提供关于车辆决策过程的信息来减轻这种担忧和压力。除了减轻担忧,解释系统还可以增加用户对自动化系统的信心。
图1示出了机动车辆10的一个实施例,其包括至少部分限定乘员舱14的车身12。车身12还支持各种车辆子系统,包括动力系统16(例如,燃烧、电气和其他),以及支持发动机系统16和其他车辆部件的功能的其他子系统,例如制动子系统、转向子系统等。
该车辆还包括监控、检测和自动化控制系统18,其各方面可以结合在车辆10中或连接到车辆10。该实施例中的控制系统18包括一个或多个光学照相机20,其被配置成拍摄图像,图像可以是静止图像和/或视频图像。控制系统18中可以包括额外的设备或传感器,例如车辆10中包括的一个或多个雷达组件22。控制系统18不限于此,可以包括其他类型的传感器,例如红外线。
车辆10和控制系统18包括或连接到车载计算机系统30,车载计算机系统30包括一个或多个处理设备32和用户接口34。用户界面34可以包括触摸屏、语音识别系统和/或各种按钮,用于允许用户与车辆的特征交互。用户界面24可以被配置成经由视觉通信(例如,文本和/或图形显示)、触觉通信或警报(例如,振动)和/或听觉通信与用户交互。车载计算机系统30还可以包括用于监视用户的设备,例如内部摄像机和图像分析组件,或者与这些设备通信。这种设备可以并入驾驶员监控系统(DMS)。
除了用户界面34之外,车辆10可以包括能够与用户交互和/或向用户传递信息的其他类型的显示器和/或其他设备。例如,此外,或者可选地,车辆10可以包括结合到后视镜36和/或一个或多个侧镜38中的显示屏(例如,全显示镜或FDM)。在一个实施例中,车辆10包括一个或多个抬头显示器(HUDs)。可以结合的其他设备包括指示灯、触觉设备、车内灯、听觉通信设备等。触觉设备(触觉接口)包括例如车辆方向盘和/或座椅中的振动设备。各种显示器、触觉设备、灯和听觉设备被配置成以各种组合使用,以向用户(例如,驾驶员、操作员或乘客)呈现解释。
在一个实施例中,车辆10包括解释系统,该解释系统可以结合到车载计算机系统30中或者与计算机系统30通信。此外,或者可选地,解释系统可以被结合到远程处理设备中,例如服务器、个人计算机、移动设备或任何其他合适的处理器。
图2示出了计算机系统40的实施例的各方面,该计算机系统40与控制系统18和/或解释系统通信,或者是控制系统18和/或解释系统的一部分,并且可以执行在此描述的实施例的各个方面。计算机系统40包括至少一个处理设备42,其通常包括一个或多个处理器,用于执行在此描述的图像采集和分析方法的各方面。处理设备42可以集成到车辆10中,例如作为车载处理设备32,或者可以是与车辆10分离的处理设备,例如服务器、个人计算机或移动设备(例如智能手机或平板电脑)。
计算机系统40的组件包括处理设备42(例如一个或多个处理器或处理单元)、系统存储器44和将包括系统存储器44在内的各种系统组件耦合到处理设备32的总线46。系统存储器44可以包括各种计算机系统可读介质。这种介质可以是可由处理设备42访问的任何可用介质,并且包括易失性和非易失性介质,以及可移动和不可移动介质。
例如,系统存储器44包括诸如硬盘驱动器的非易失性存储器48,并且还可以包括诸如随机存取存储器和/或高速缓冲存储器之类的易失性存储器50。计算机系统40还可以包括其他可移动/不可移动、易失性/非易失性计算机系统存储介质。
系统存储器44可以包括至少一个程序产品,该程序产品具有一组(例如,至少一个)被配置为执行在此描述的实施例的功能的程序模块。例如,系统存储器44存储通常执行在此描述的实施例的功能和/或方法的各种程序模块。可以包括输入模块52来执行与获取用于做出自动决策的检测和监控数据相关的功能。可以包括解释模块54,用于分析接收到的决策,以及生成和/或选择解释。可以包括显示模块56,用于向用户显示解释。系统40不限于此,因为可以包括其他模块。系统存储器44还可以存储各种数据结构,例如存储与成像和图像处理相关的数据的数据文件或其他结构。如此处所使用的,术语“模块”指的是处理电路,其可以包括专用集成电路(ASIC)、电子电路、处理器(共享的、专用的或成组的)和执行一个或多个软件或固件程序的存储器、组合逻辑电路和/或提供所述功能的其他合适的组件。
处理设备42还可以与一个或多个外部设备58通信,例如键盘、点击设备和/或使处理设备42能够与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)。此外,处理设备42可以与一个或多个设备通信,例如照相机20和雷达组件22。处理设备42可以与一个或多个显示设备60(例如,车载触摸屏、集群、中央堆栈、HUD、镜面显示器(FDM)等)以及车辆控制设备或系统62(例如,用于部分自主(例如,驾驶员辅助)和/或完全自主车辆控制)通信。与各种设备的通信可以通过输入/输出(I/O)接口64和65进行。
处理设备42还可以经由网络适配器68与一个或多个网络66通信,诸如局域网(LAN)、通用广域网(WAN)和/或公共网络(例如,因特网)。应当理解,尽管未示出,但是其他硬件和/或软件组件可以与计算机系统40结合使用。示例包括但不限于:微码、设备驱动程序、冗余处理单元、外部磁盘驱动器阵列、RAID系统和数据存档存储系统等
图3描绘了系统80的实施例,该系统80用于做出自动化控制决策,并向用户呈现关于自动化行为和/或动作的解释,以减少或减轻用户关注,并向用户提供关于行为为什么发生的见解。可以在行为发生时或附近、行为发生之前和/或之后提供解释。例如,解释可以与行为或计划决策同时提供(例如,在驾驶期间),和/或可以作为行为和/或决策概要的一部分提供给用户设备(例如,移动设备)。在该实施例中,自动化控制系统是车辆的一部分,但不限于此。系统80被配置成执行如下所述的生成和/或呈现解释的方法。
系统80可以结合为车辆控制系统、其他自动化设备或系统的控制系统的一部分,或者结合为任何合适的处理设备或系统的一部分。例如,系统80的全部或部分被结合到车辆10中,并且被配置成与车辆的自动化控制系统通信。
系统80提供解释给定自动行为的原因的功能,或者提供对导致该行为的决策过程的见解。换句话说,系统80向用户呈现解释,该解释提供了关于行为为什么发生的见解。“行为”可以包括一个或多个动作、计划决定、不执行动作的决定、观察、识别其他车辆和物体、和/或由自动化控制系统执行或提示的任何其他活动。例如,可以提供关于计划的行为、执行行为的意图、为什么执行某个行为或为什么不执行某个行为的原因、促使某些行为的自动化控制系统已知的信息等的解释。
系统80可以与各种级别的自动化控制结合使用。控制级别的示例包括完全用户控制、完全自主控制、半自主控制以及特定车辆功能(例如,制动或转向)的自主控制。
在一个实施例中,系统80被配置成呈现关于控制系统的决策的解释,该控制系统利用人工智能算法在某种程度的不确定性下进行决策。该算法假设或确定环境的状态,假设成本函数,并计算计划(包括一个或多个动作的序列),该计划以最小的成本函数将车辆(或其他自动化实体)从初始状态带到目标状态。例如,初始状态可以是车辆以某一速度向停止标志移动,目标状态可以是在停止标志处停止,并且计划指定包括减速和制动到停止的动作。
在一个实施例中,如上所述,自动化控制系统利用被称为“灰箱”算法的人工智能算法。灰箱算法的例子包括规划算法,例如马尔可夫决策过程算法、A*搜索算法和蒙特卡罗搜索树。
再次参考图3,在一个实施例中,系统80包括基于人工智能的解释系统82,其包括解释代理或解释引擎84,以及抽象层86。解释系统82与包括自动化车辆规划模块(规划器)88的控制设备或系统通信。规划器88从车辆10中的传感器接收输入,并使用灰箱算法,例如马尔可夫决策过程算法,来做出控制决策并制定计划。该计划作为一个动作或一系列动作被输出到车辆10中的自动化控制系统。
规划器88在制定动作计划时会遇到不确定性。不确定性可能由各种条件引起,例如检测周围环境中的物体或特征的不确定性,例如易受伤害的道路使用者(例如,行人)和其他道路使用者(例如,其他车辆)。不确定性也可能来自传感器的限制(例如,故障、不完整的训练集等),以及控制算法的不确定性。这样,由规划器88规定的检测和动作可以具有置信水平。
规划器88向抽象层输出信息,包括当前操作状态、动作描述和置信度。由于不确定性水平,规划器88生成与控制决策和动作相关联的置信水平,并将置信水平输出到抽象层86。抽象层86聚集接收到的状态、置信水平和动作,并将其输入到解释引擎84。解释引擎84的其他输入可以包括车辆动态、用户模型和用户行为(例如,来自驾驶员监控系统)
系统80包括用户接口90,例如触摸屏、键盘和/或音频接口。用户92(例如,驾驶员或乘客)可以使用用户界面90来输入信息、请求解释和/或接收解释。例如,车辆10中的触摸屏可以显示按钮(例如,“为什么”按钮),该按钮允许用户快速请求对动作或策略的解释,并且此后显示解释。
响应于来自用户的请求(或如本文进一步讨论的,主动地),解释引擎84计算对动作或计划的解释,并且还可以计算解释被呈现的时间。例如,根据用户偏好或其他因素,例如动作的紧迫性,解释代理可以立即或在动作执行后的某个时间呈现解释。
解释可以有多种形式。例如,解释可以向用户指示另一个动作被考虑但没有被执行(例如,当车辆10执行意外操纵时减轻用户的担忧),显示一系列动作以帮助用户理解一系列事件,和/或提供解释有助于控制决策的一个或多个因素的语义解释。也可以为用户或用户组定制解释。例如,一个用户可能希望在给定的环境(例如,高速公路)中接收解释,而另一个用户不希望在类似的环境中接收解释。定制可以通过接收用户偏好,或者通过监控用户请求解释的情况来实现。在一个实施例中,生成并维护用户模型,该用户模型可用于确定是否要显示解释、解释的类型、信息量和/或解释的时间。
在利用机器学习和/或其他人工智能过程的自动化系统中,用户的期望和实际行为之间可能存在差距,这可能导致混淆和/或担忧。这种差距在使用灰箱算法的自动化系统中可能会更加明显,因为算法中内置的不确定性以及动态环境会使决策过程更加不透明。
系统80可以通过为智能决策算法和系统计算的解释来减轻客户对自动化行为的担忧。系统80可以响应于用户请求向用户呈现解释,或者基于用户条件和/或环境条件主动呈现解释。解释可以基于用户信息(例如关注的用户模型)针对时间和内容进行优化。
系统80可以基于各种条件或环境生成解释。例如,可以响应于用户请求生成解释,或者响应于标准自动生成解释。在一个实施例中,系统80可以包括用户关心的模型(用户模型)94或与之通信。一般来说,用户模型94用于向解释系统82通知应该呈现(或不呈现)解释的情况和背景。在一个实施例中,用户模型是概率模型,其提供上下文状态和给定车辆动态用户将会关注(并因此想要解释)的概率。
可以在驾驶时或驾驶后向用户提供解释,例如,通过移动应用程序,向用户介绍自动驾驶操作。例如,在调试或校准自动化控制系统时,可以向开发人员和工程师提供解释。解释也可以用来帮助系统设计者设计和发布系统限制和手册。
除了在提供解释时使用用户模型94之外,用户模型94还可以用作各种环境中预期的焦虑、担忧或不适的测量,并将该结果用作自动化系统的其他个性化行为的触发。如果用户模型指示用户关心并希望得到解释,车辆10中的系统可以被调整以帮助减轻任何相关的压力。例如,可以对座椅位置、车窗、加热和冷却系统、气味和驾驶风格设置进行调整。
以下是可以由规划器88或其他规划模块用来做出自动车辆控制决策的灰箱决策算法的示例的描述。在这个例子中,决策算法包括马尔可夫决策过程。注意,这只是一个示例,因为可以使用其他算法。
马尔可夫决策过程(MDP)是一个离散时间随机控制过程,它提供了一个数学框架,用于在结果部分随机且部分在决策者(计划者)控制下的情况下建模决策。
MDP过程的一个实施例由元组<S,A,P,R> >定义。在元组中,S是一组上下文状态S,其中每个上下文状态s对应于一个驱动或操作上下文。上下文状态s可以由各种因素定义,包括车辆位置、车辆动态(例如,速度、方向等)和周围环境的特征(例如,道路类型、交叉路口、道路状况、天气状况、易受伤害的道路用户或其他对象的存在、其他车辆的存在等)。其他因素可以包括用户条件(例如,用户是否激动或分心),以及自动化控制系统的能力和限制(例如,自主、半自主、控制系统可用的动作,例如停车和转弯动作)。
A是给定上下文状态s的集合S时可用的一组预定义动作a。动作a由规划器88规定并由车辆控制系统执行。动作a可以是由计划者88在给定上下文状态s中规定的动作序列(即,计划)的一部分。动作的示例包括制动、停止、转向、转弯、紧急操纵、加速、变道等。
P是一个概率转移函数,它提供了给定动作a从第一状态s转移到第二状态或目标状态s’的概率。这个函数提供了动作a将导致从状态s到状态s’的变化的概率。并且可以表示为:
P(s’|s,a)
R是表示由于执行动作a而从状态s转变到状态s’之后的值的奖励函数。奖励函数考虑与执行动作的效用相比的执行动作的成本。
规划器88(或其他处理设备)利用MDP过程在车辆运行期间生成策略,该策略规定了在给定环境中要采取的一个或一系列动作。
例如,可以使用动态规划方法来确定从状态s转换到状态s’的最优策略π(s),从而解决MDP问题。最优策略使每个状态s的值最大化:
在上面的例子中,最优策略是在每个状态下最大化其选择的动作的价值的策略。
Pπ(s)(s,s’)是策略π(s)的初始状态s和目标状态s’之间的转换函数。Rπ(s)(s,s’)是转换后的奖励函数。
图4-7描绘了说明生成和/或呈现上述解释的总体方法的各方面的流程图。整个方法可以包括图4-7所示的所有方法100、110、120和130,或者可以包括少于所有的方法。每个方法100、110、120和130由流程图表示,其中步骤或阶段表示为块。每种方法100、110、120和130可以以所呈现的顺序执行,但不限于此。
图4描绘了生成、维护和/或更新诸如用户模型94之类的用户模型的方法100。用户模型用于确定是否以及何时向用户呈现解释,并且还可以用于确定要呈现的解释的类型。
在一个实施例中,用户模型94是计算模型,其预测由自动化系统在给定上下文状态s中执行的动作将导致用户高度关注的概率Pr。用户模型94输出由Pr(explanation|t,s)表示的概率值,该概率值指示在时间t在上下文状态s中的关注概率。
方法100包括获取与用户模型94相关的数据,包括操作上下文、车辆动态和/或用户行为(块101)。在框102,所获取的数据被输入到用户模型94,使得该模型学习各种上下文状态下的关注概率。可以在驾驶期间监控用户行为,以检测用户关注的环境。例如,解释系统82可以检测用户在哪些上下文中主动请求解释,并相应地增加该上下文的概率值。此外,或者可选地,用户可以输入指示用户可能关注的上下文的偏好。
在框103,在操作或驾驶期间,解释系统82监控操作状态以检测对应于高度关注的上下文(概率值高于选定阈值)。如果检测到这样的上下文,解释系统82主动选择向用户呈现的解释。需要注意的是,概率可能会受到与计划决策或执行相关的时间值的影响。可以获取用户偏好来确定用户何时想要解释,并且概率可以基于用户偏好的时间。
用户模型94可以是允许解释系统82确定概率的任何数据结构,例如查找表、决策树等。在一个实施例中,用户模型是基于上下文的if-then规则模型,其中用户模型响应于给定的上下文提供解释。例如,如果上下文是车辆10正在接近停车标志、交通灯和/或十字路口,则用户模型规定提供对行为的解释(例如,在停车前减速到中间速度)。在其他情况下,可能不提供解释(例如,如果车辆很少且用户视野不受阻碍,则变道)。例如,如果给定上下文中的自动化行为不同于正常或预期行为,则可以提供解释。例如,当用户可能没有经历足够的减速并且可能担心车辆10是否正在计划前方停止时,该解释可以强调车辆10正在考虑停止动作。
用户模型94可以通过在各种操作或驾驶环境中记录解释的手动请求来为用户个性化,从而当类似的环境出现时提供解释。
用户模型94还可以在不寻常的上下文中或者在通常不会遇到的上下文中给出解释。这种上下文被称为“关键上下文”。用户模型94可以保持通常由用户保持的驾驶模式的记录,并保持通常驾驶模式的记录。如果上下文呈现不同于通常模式的场景,或者需要不同于通常的自动驾驶行为的场景(例如,避开事故或易受伤害的道路用户的策略),则用户模型94将该上下文识别为关键上下文,并为该上下文分配高概率。
用户模型94可以离线创建或生成(即,在驾驶期间解释系统82运行之前)。在驾驶期间,用户模型94可以被更新(在线)。例如,在驾驶期间,解释系统82可以监控用户对解释的请求,识别关键上下文,并监控用户以更新模型中的概率。例如,可以通过使用驾驶监控系统(DMS)来监控用户,以识别用户烦躁、情绪激动或分心的上下文,并为这种上下文增加概率。
图5描绘了配置自动解释引擎和生成解释的方法110的实施例。方法110可用于预配置和存储操作上下文(例如,上下文状态)和行为(动作或一系列动作a)的各种组合的解释。在方法110中,解释引擎84(或其他合适的处理设备或模块)接收包括驾驶环境、车辆动态、规划系统决策和优化标准的输入数据(块111)。优化标准的例子包括解释长度(最小长度或小于最大长度)、计算复杂度(最小计算复杂度)和信息容量(最大)。其他优化标准包括,例如,用户可解释性(最大可解释性)和在用户中产生的混淆量(最小混淆)。例如,可以通过用户输入、用户模型和/或监控用户对解释的参与来导出诸如可解释性和混淆性之类的优化标准。基于上述输入数据,解释引擎84计算各种上下文的解释(块112)。计算的解释然后被输出到存储位置,例如作为查找表(块113)。
解释系统82可以提供各种类型的解释。这种类型的例子包括短视解释、解释系列、对比解释、语义解释和以用户为中心的或定制的解释。
“短视解释”向用户提供了对考虑但未选择的动作的描述(例如,该动作是第二好的选项)。在用户不喜欢决策过程的详细解释或描述,而是希望确认该行为是由自动化控制系统有意为之的情况下,这可能是有用的。
“解释系列”是描述根据控制决策或计划执行的所有或部分系列操作的解释。这种类型的解释表示为达到期望的状态而执行的动作。在某些情况下,一系列动作中可能有许多动作。因此,解释系列可以限于选定数量的动作,以避免过于复杂的解释。系列的长度和/或复杂性可以从用户偏好或对用户的监控中得出。
“对比解释”向用户展示了考虑过但没有采取的替代动作。例如,当用户期望一个动作,但是执行的是不同的动作时(例如,因为用户看不到物体或车辆),这可能是有用的。对比解释可以通过显示用户已经考虑但没有采取的动作来帮助用户安心。
“语义解释”是提供用户可理解的语义概念的解释。例如,解释可以包括与上下文描述相结合的动作,以增强用户对为什么执行该动作的理解。例如,短视解释可能是“制动”,而语义解释可能是“因能见度低而制动”或“因前方车辆停止而制动”。
“以用户为中心”的解释是从为上下文提供的解释集中选择的解释。以用户为中心的解释是至少部分基于用户模型或用户偏好从该解释集中选择的。可以在计算解释内容的同时计算以用户为中心的解释的时机。
在一个实施例中,基于上述MDP决策算法的扩展生成短视解释,称为“可解释短视MDP”。该方法扩展了上述MDP算法,在为给定的上下文状态找到最优动作a*之后,为该状态存储另一个动作(称为动作a’),该动作的值Vi+1小于或等于最优动作a*的值,并且高于动作A的集合中所有剩余的动作(称为动作a”)。
可解释的短视MDP=<S,A,P,R,E>
E是解释集,包括为每个状态s计算的解释e(给定最佳动作a*)。对于每个状态s,计算相应的值V(s),并且与动作a’相关联的解释被存储在E(解释集)中。
每当一个动作a*被选择执行时,可解释的短视MDP呈现的替代动作a’不是被选择执行,而是最接近最终执行的最佳动作a*。
在该实施例中,可以使用由下式表示的值迭代过程来导出动作a的值:
在一个实施例中,可以使用MDP算法的扩展来导出解释系列,该算法在这里被称为“可解释系列MDP”。该算法通过存储从初始状态s0到当前状态s的最优动作路径来扩展求解MDP的算法:
可解释的系列MDP=<S,A,P,R,E>。
E是为从初始状态s0到当前状态s的每个状态s计算的解释集,可以表示为:
E(s)={a*(s0),a*(s1),…,a*(s)}
a*是最优策略P在状态si返回的最优动作。将相应的状态添加到解释中可以提供人类理解整个系列所需的上下文信息:
E(s)={(s0,a*(s0),(s1,a*(s1),…,(s,a*(s))}
计算出的最佳策略(离线)包括对所有可能操作的所有可能解释。在该策略的在线执行期间,可解释的系列MDP算法为遇到的每个状态si存储执行的最佳动作。在该实施例中,解释系统82还跟踪执行期间访问的状态和动作。每次需要在状态s下给出解释时,可以呈现一直持续到该点的实际的一系列状态和动作。
由于系列的长度以及理解这些动作组合的复杂性,这个解决方案可能变得非常复杂。因此,可以收集关于复杂程度的用户偏好来评估系列的长度,也就是说,每个a*的历史是用户理解a*选择的上下文的最佳历史
“对比”解释可以通过扩展MDP算法来导出,该算法在每个状态s存储一组K个备选动作,这些动作达到了该状态s的K个最佳值,并且其值小于或等于最佳动作a*的值,但是在所有可能的选项中最高。该算法被称为“可解释的对比MDP”算法,由以下等式表示:
可解释的对比MDP=<S,A,P,R,E>,
其中解释集为E(s)={ai1,…,aik},使得V(s,ai)小于或等于V(s,a*),并且对于集合A中所有其他动作a”,这些K个动作ai中的每一个都达到了V(s,ai)>V(s,a”)。
对于每个状态,当计算其值V(s)时,K个动作ai存储在E中,其中ai不是a*,V(s,ai)≤V(s,a*),并且对于集合A中所有其他动作a”,a”不是a*且a”不是ai,并且V(s,ai)>V(s,a”)。
在该解决方案中,每当选择动作a*来执行时,可解释的对比MDP向用户呈现没有被选择来执行但是最接近最终执行的最佳动作的K个备选动作。每次算法计算V(s)时,它还将E(s)计算为一组K个动作,使得ai不是a*,ai的V(s)小于a*的V(s),但是在集合A中至少存在另一个动作a,对于该动作,ai的V(s)更高。
通过为E选择前K+1个动作,可以如上所述通过它们的值V(s)对K+1个动作(动作a*加上动作ai的数量K)进行排序。在另一个实施例中,可以通过与可理解性相关的值函数对动作进行排序。这样,可以选择对用户来说更容易解释的K+1动作。例如,备选动作可以通过可理解性分数来排序。例如,某些操作可能与更极端的最佳操作a*不同。停止动作可能没有被选择为a*,但是向用户显示包括以不同的速率制动的所考虑的K个动作对于减轻他的担忧来说不太重要,而不如向他呈现停止动作确实被考虑但没有被选择为车辆10要执行的最佳动作。因此,可理解性分数可以被分配给与用户关注更相关和/或更可理解的替代动作。
“语义解释”可以使用MDP算法来选择,通过在求解MDP之前添加要执行的步骤。例如,A中的所有动作都可以用一些用户可以理解的语义概念进行分类。
这种概念的例子包括制动动作、加速动作、转弯动作等。其他分类可以通过添加上下文来创建,例如,在高交通流量中制动、向交叉路口制动、因能见度低而制动等。
语义分类可以通过注释手动执行。或者,可以自动分配分类,例如,通过机器学习分类器。
在一个实施例中,使用MDP算法的扩展来生成或选择语义解释,该扩展包括存储语义上与选择用于执行的最佳动作a*相关的解释集E。该算法可以由以下等式表示:
可解释语义MDP=<S,A,P,R,E>,其中
E(s)={ai1,…,aik},使得V(s,ai)≤V(s,a*)并且所有ai和a*属于同一个语义范畴。
在状态s下执行a*期间,存储在E(s)中的解释可以被呈现为在a*中标识的相同语义类别下未被选择的替代。
“以用户为中心”的解释可以使用MDP算法的扩展来确定,该算法不仅计算动作策略,还计算解释策略,表示为:
可解释的以用户为中心_MDP=<S,A,P,R,E>,
如上所述,该算法计算使任何状态的状态值最大化的动作策略,并选择在该状态下达到最高值的最优动作。
此外,以可解释用户为中心的MDP计算解释策略,使得对于每个状态s,它从解释集E(包括空解释)中进行选择,当a*是最优动作时,该解释在特定状态s达到最高值。
状态的值被扩展为给定动作被执行并给出解释的状态的值。
图6描绘了用于生成和/或向用户呈现解释的方法120的实施例。
在框121,自动化控制系统生成计划并执行一个动作或一系列动作。用户通过与用户界面(UI)交互来手动请求解释(框122)。可以以任何合适的方式输入手动请求,例如,通过执行手势、使用口头请求或按下按钮(例如,方向盘上的“为什么”按钮或触摸屏上的按钮)。
解释引擎84在块123接收该请求。在这个阶段,解释引擎84将该请求视为立即请求。在框124获取输入数据,并将其输入到解释系统(框125),解释系统如上所述生成解释。
在一个实施例中,在框126,在向用户呈现解释之前,请求和解释被输入到解释过滤器。解释过滤器基于用户模型或其他用户信息,可以调整解释的长度、复杂性(例如,一系列解释中的动作数量)和时机。例如,用户可能更喜欢不立即提供解释,而是在稍后提供,这可以反映在用户模型中。在另一个例子中,用户可能更喜欢限制解释的长度。因此,解释过滤器系统可以延迟解释的输出(框127),或者基于用户偏好截断解释。
图7描绘了用于生成和/或向用户呈现解释的方法130的实施例。在该实施例中,解释不是由用户直接提示的,而是如果解释满足由用户模型指定的标准则自动呈现的。
在框131,自动化控制系统生成计划并执行一个动作或一系列动作,并且获取包括计划(以及上下文、车辆动态和优化标准)的输入数据。在框132,输入数据被输入到解释引擎84,解释引擎84返回如上所述的解释。
在框133,输入数据被输入到用户模型,该用户模型计算由计划系统指定的动作引起用户高度关注的概率。如果概率足够高(框134),则在框135,解释被输入解释过滤器系统。如上所述,解释过滤器可以调整解释的长度、复杂性和/或时机。
然后,在框136,调整后的解释被输出到用户界面。在一个实施例中,解释和上下文被馈送到解释模块,并且解释模块可以被相应地更新(块137)。
图8示出了系统80的实施例,其包括解释引擎84和包括解释过滤器的解释过滤器系统140。在该实施例中,系统80被配置为提供主动解释,但是也可以响应于用户请求提供解释。
解释引擎84使用例如MDP解释算法输出一个或多个解释。解释过滤器系统140接收输入数据142,包括上下文、车辆动态、规划系统决策和优化标准。此外,解释过滤器系统140接收用户数据144,包括用户模型或其相关部分、用户偏好和/或用户注意力或用户监控数据。解释过滤器系统140查阅用户数据以确定是否要向用户呈现一个或多个解释。如果确定要呈现一个或多个解释,解释过滤器系统140提供包括一个或多个解释的输出146。解释过滤器系统也可以如上所述调整解释。
以下是可以由系统80呈现的解释类型的示例。以下解释可以以文本和/或听觉方式呈现,并且可以伴随有其他模态,例如触摸、触觉、灯光、环境或这些在车辆嵌入式系统中、在车辆驾驶室中、在车辆外部和/或内部(门、窗)、在车辆中的数字设备中和/或任何用户个人数字设备中的任意组合。
在这个例子中,上下文是车辆10以给定的速度移动并且正在接近交通灯。当车辆10接近交通灯时,车辆10首先选择减速到较低的速度。尽管车辆正在减速,但是用户可能担心车辆10没有减速到足以使车辆10及时停止。
短视解释可能是“车辆选择不停车”这个动作被计算为最佳动作,下一个最佳选项是停车。用户可以推断考虑了停车,但是车辆减速。
系列解释可能是“自上次停车后,车辆已经加速,现在正在减速。”这个解释呈现了一系列的动作(停止、加速、减速)。对比解释可能是“车辆选择不停车,不变道,不加速。”
语义解释提供了附加的可理解的解释,该解释提供了附加的上下文信息。在这个例子中,语义解释可能是“车辆正在减速,因为它正在接近红绿灯路口”,或者“车辆选择减速,因为我们正在接近红绿灯路口,拥有足够的空间完全停车。”
以用户为中心的解释可以与语义解释相同或相似。然而,用户模型可以指示用户不希望在该上下文中进行解释,因此解释系统在这一点上不提供解释,或者将解释延迟到稍后。在稍后的上下文中(车辆靠近红绿灯),解释系统可以提供解释,例如“在红绿灯路口前很快就要完全停车。”
以下描述提供了不同上下文的示例,并说明了解释系统82的操作。
在第一示例中,车辆10(自主车辆)在六车道高速公路的最右侧车道上自主驾驶。自主车辆在最右侧车道上跟随多辆车辆,但是不能改变到相邻车道,因为相邻车道上的车辆相对于自主车辆的速度行驶不够快。在这种情况下,自主车辆的自动化控制系统受到限制,因为设计规范不允许自主车辆检查其他车道以进行车道变更。
因此,尽管其他车道可能是开放的,但是自主车辆选择不改变车道到开放车道。这种选择是由于自动化控制系统的限制,即自主车辆只有在减速并且相邻车道的车速高于阈值速度时才能进行车道改变。如果没有达到该阈值,自主车辆将不会移动到相邻车道。自主车辆中的驾驶员期望车道改变(例如,可能期望自主车辆移动到相邻车道之外的另一个车道),但是不知道系统设计的限制。
在该示例中,解释系统82主动计算并呈现解释,以通知驾驶员存在限制并且自主车辆不能在当前时间自主进行车道改变。如果适用,解释系统82可以通知用户此时只有手动变道可用。
在第二个例子中,自主车辆在与第一个例子相同的高速公路上行驶,但是自主车辆在半自主模式下运行,其中自动化控制系统控制速度并且驾驶员控制转向,或者自动化控制转向并且驾驶员控制速度。驾驶员在转向操纵时加速,并期望车辆继续控制转向。自主车辆受到其控制和物理系统的限制,超过某个速度后,它将无法再按预期控制转向,自动化控制系统将脱离(将完全控制转移到手动)。解释系统82计算解释以告诉驾驶员存在限制,并且在这种状态下仅手动控制是可能的。
在第三个示例中,自主车辆正在分区道路(sub-division road)上行驶,并且检测到意外停放的汽车。唯一可以继续行驶的车道是与反向行驶的车辆共用的。在这种情况下,由于视线被遮挡,自主车辆可能对停放的汽车前方的环境具有不确定性,因此在获得进一步的信息之前,可能不会尝试变道。同时,驾驶员可能有更好的视野,使驾驶员相信可以立即进行变道。因此,自主车辆的行为(即,等待尝试变道)可能不符合驾驶员的期望。
在第三个例子中,驾驶员可能处于不确定的情况下,不知道会出现什么自动行为,而他自己知道如果他有手动控制,在这种情况下他会做什么。在该示例中,解释系统82计算解释,以告诉驾驶员计划是什么,以及自动化控制系统具有的确定性和置信度是多少。
这里使用的术语仅用于描述特定实施例的目的,并不旨在限制本公开。如这里所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文清楚地另外指出。将进一步理解,当在本说明书中使用时,术语“包括”和/或“包含”指定所陈述的特征、整数、步骤、操作、元素和/或组件的存在,但是不排除一个或多个其他特征、整数、步骤、操作、元素组件和/或其组合的存在或添加。
虽然已经参考示例性实施例描述了上述公开,但是本领域技术人员将理解,在不脱离其范围的情况下,可以进行各种改变,并且等同物可以替代其元素。此外,在不脱离本公开的基本范围的情况下,可以进行许多修改以使特定情况或材料适应本公开的教导。因此,意图是本公开不限于所公开的特定实施例,而是将包括落入其范围内的所有实施例。
Claims (10)
1.一种用于生成并向用户呈现解释的系统,包括:
输入模块,被配置为接收传感器数据并将所述传感器数据输入到自动化系统的控制系统,该控制系统被配置为基于所述传感器数据并根据灰箱决策算法来控制所述自动化系统的操作;
解释模块,被配置为生成对由所述控制系统做出的决定和所述自动化系统的相应行为的解释,所述解释是基于以下至少一项生成的:用户的请求和用户模型;和
显示模块,被配置为向用户呈现所生成的解释。
2.根据权利要求1所述的系统,其中所生成的解释包括基于操作上下文选择的预定解释,所述操作上下文基于所述自动化系统动态数据和所述自动化系统周围的环境的一个或多个特征。
3.根据权利要求1所述的系统,其中所生成的解释基于概率解释算法,所述解释算法指示是否要呈现所生成的解释以及要呈现所生成的解释的时间。
4.根据权利要求3所述的系统,其中所述解释算法是所述灰箱决策算法的扩展。
5.根据权利要求1所述的系统,其中所述用户模型指示响应于所确定的操作上下文用户将被关注的概率,并且所述解释模块被配置为基于大于选定阈值的所述概率,向所述显示模块输出所生成的解释。
6.根据权利要求5所述的系统,还包括解释过滤器模块,所述解释过滤器模块被配置为基于所述用户模型来调整所生成的解释的长度和时机中的至少一个。
7.根据权利要求1所述的系统,其中所述解释模块被配置为基于马尔可夫决策过程(MDP)生成所生成的解释。
8.一种生成并向用户呈现解释的方法,包括:
接收传感器数据并将所述传感器数据输入到自动化系统的控制系统,该控制系统被配置为基于所述传感器数据并根据灰箱决策算法来控制所述自动化系统的操作;
通过解释模块生成对由所述控制系统做出的决定和所述自动化系统的相应行为的解释,所述解释是基于以下至少一项生成的:用户的请求和用户模型;和
向用户呈现所生成的解释。
9.根据权利要求8所述的方法,其中,所生成的解释基于概率解释算法,所述解释算法指示是否呈现所生成的解释以及呈现所生成的解释的时间。
10.根据权利要求8所述的方法,其中,所述用户模型指示响应于所确定的操作上下文用户将被关注的概率,并且基于大于选定阈值的概率来呈现所生成的解释。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/153,414 | 2021-01-20 | ||
US17/153,414 US20220230081A1 (en) | 2021-01-20 | 2021-01-20 | Generation and presentation of explanations related to behavior of an automated control system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114815676A true CN114815676A (zh) | 2022-07-29 |
Family
ID=82217930
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111596621.7A Pending CN114815676A (zh) | 2021-01-20 | 2021-12-24 | 与自动化控制系统的行为相关的解释的生成和呈现 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220230081A1 (zh) |
CN (1) | CN114815676A (zh) |
DE (1) | DE102021130059A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11899449B1 (en) | 2021-03-10 | 2024-02-13 | State Farm Mutual Automobile Insurance Company | Autonomous vehicle extended reality environments |
-
2021
- 2021-01-20 US US17/153,414 patent/US20220230081A1/en active Pending
- 2021-11-17 DE DE102021130059.2A patent/DE102021130059A1/de active Pending
- 2021-12-24 CN CN202111596621.7A patent/CN114815676A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
DE102021130059A1 (de) | 2022-07-21 |
US20220230081A1 (en) | 2022-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3272613B1 (en) | Driving assistance method, and driving assistance device, automatic driving control device, vehicle, and driving assistance program using said method | |
US10759446B2 (en) | Information processing system, information processing method, and program | |
JP6575818B2 (ja) | 運転支援方法およびそれを利用した運転支援装置、自動運転制御装置、車両、運転支援システム、プログラム | |
CN105320128A (zh) | 用于自动化车辆的众包控制转换策略 | |
CN104977876B (zh) | 用于情境界面的使用预测 | |
WO2016170764A1 (ja) | 運転支援方法およびそれを利用した運転支援装置、運転制御装置、車両、運転支援プログラム | |
US10583841B2 (en) | Driving support method, data processor using the same, and driving support system using the same | |
CN114901536A (zh) | 智能汽车的控制方法、装置和控制系统 | |
CN114379579A (zh) | 促进用户和车辆控制系统之间的控制转移 | |
CN114815676A (zh) | 与自动化控制系统的行为相关的解释的生成和呈现 | |
US20230339491A1 (en) | Minimal-prerequisite interaction protocol for driver-assisted automated driving | |
EP4230491A1 (en) | A computer-implemented method for providing a function recommendation in a vehicle, a vehicle and a system for implementing the method | |
WO2023180382A1 (en) | Vehicle user interface control system & method | |
CN115675513A (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 |