摘要
针对自动驾驶系统危害与场景不可分割的特点,提出了一种基于有限状态机模型(FSM)的整车级预期功能安全危害识别方法。首先,明确危害事件组成要素;其次,将自动驾驶系统抽象为有限状态机模型以明确车辆状态和运行环境;最后,通过识别车辆状态与运行环境的冲突情况,系统性识别自动驾驶系统预期功能安全危害事件,减少对专家知识的依赖。为验证所提出方法的有效性,在某SAE L3级自动驾驶汽车上应用了该方法进行危害识别。结果表明,相较于系统理论过程分析(STPA)方法,有限状态机模型包含更加详细且系统化的环境信息,且由有限状态机模型直接输出危害事件要素,提高了危害识别的系统性。
随着自动驾驶技术的快速发展,其安全性要求越来越严格,从而对安全分析与验证方法提出更多挑战。自动驾驶汽车作为一个集环境感知、决策规划和运动控制为一体的复杂系统,不仅面临着传统因电控系统故障导致的功能安全问
业界将自动驾驶汽车在无故障或失效情况下仍无法实现预期功能的问题定义为预期功能安全问
现有研究针对上述预期功能安全危害识别需求,多采用以下几种传统安全分析方法,包括故障树分析(fault tree analysis, FTA)、失效模式及效应分析(failure mode and effect analysis, FMEA)、危险与可操作性分析(hazard and operability analysis, HAZOP)等方法。FTA方法和FMEA方法认为事故是以特定时间顺序发生的离散事件造成的结果,以具体的系统失效或故障作为输入,由下而上或由上而下的构建自动驾驶系统事件链识别自动驾驶系统危
针对上述方法的局限,系统理论过程分析(systems-theoretic process analysis, STPA)被认为可以有效识别自动驾驶系统危害。STPA方法是一种基于系统理论事故模型与过程(systems theoretic accident model and process, STAMP)的安全分析方法,通过分析系统控制结构中的不安全控制行为识别系统潜在危
针对STPA方法分析全面性难以得到保证的问题,本文引入了包含自动驾驶系统车辆状态与运行环境的有限状态机模型(finite state machine,FSM),对危害事件重新进行定义,通过识别状态转移过程中的车辆状态与运行环境冲突情况,可获得包含运行环境与自身局限性两方面来源的危害事件。本文第1节主要描述基于有限状态机的危害识别方法,第2节为该方法在某自动驾驶汽车上的应用,第3节为总结和展望。
传统危害识别方法引入运行场景信息时主观因素影响较大,使得系统全面地识别危害事件较为困难。因此,在现有危害识别方法的基础上,提出了基于有限状态机的危害识别方法,系统性引入运行环境。首先,与传统危害事件侧重点不同,本文对危害事件重新定义;其次,对有限状态机模型进行介绍;最后,基于自动驾驶系统危害与运行环境不可分割的特性,介绍了本文的危害分析方法,即通过识别自动驾驶系统在状态转移过程中的非预期行为全面识别系统危害事件。
危害事件是危害识别环节的重要输出,虽然预期功能安全继续沿用了功能安全对危害事件的定义,但定义较为模糊,不利于系统化、规范化地识别危害场景,本文对危害事件内涵进行了明确。功能安全重点关注自动驾驶系统中与运行环境无关的电子电气系统故障,运行环境仅为判断危害后果的背景信息,但功能安全并未严格界定该运行环境的内涵,笼统地将车辆运行工况视为运行环境。而在预期功能安全中,运行环境既包含了触发性能局限的环境因素,同时也包含了组成危害的关键要素,对运行环境进行细化,一方面有利于构建自动驾驶系统潜在危害场景,同时也有利于进一步开展致因分析。
周堂
受伤害对象 | 环境条件 | 自车 | 危害行为 | |||
---|---|---|---|---|---|---|
ISO 26262 | 运行场景 | 运行场景 | 运行场景 | 危害 | ||
Leveso |
恶劣环境 条件 |
恶劣环境 条件 | 系统状态 | |||
Ericso | 目标物 | 危险因素 | 危险因素 | 触发机制 | ||
本文 |
一定环境 条件 |
一定环境 条件 | 自车状态 |
车辆非预期 行为 |
为了将自动驾驶系统危害与运行环境有效结合,本文引入了有限状态机模型,有限状态机模型通过描述系统状态及其运行环境来建立系统模型。有限状态机是一种常用的系统描述方式,作为一种离散输入、输出系统的数学模型,该模型通常包括以下几个部分:输入集合C,用于表示系统所接受的不同输入信息;输出集合,系统能够做出的有限响应集合;状态集合S,描述系统的不同状态;转移逻辑T,为状态机从一个状态转移到另一个状态的条件,通常是由当前状态和输入条件的共同作用组

图1 典型有限状态机模型
Fig. 1 Typical finite state machine model
基于上述有限状态机的定义可知,有限状态机模型的引入使得自动驾驶系统描述更加清晰。状态转移过程中的当前状态、输入集合C、环境条件与目标状态之间的不匹配,与危害事件三要素一一对应,如

图2 有限状态机模型与危害事件对应关系
Fig. 2 Correspondence between FSM model and hazardous event
通过将自动驾驶系统抽象为有限状态机模型,识别状态转移过程中车辆状态与环境条件冲突导致的非预期行为,通过判断车辆非预期行为是否会导致危害确定危害事件的三个要素,从而得出系统危害事件。并且可以基于危害事件构建测试用例,验证该危害事件。该方法的框架如

图3 危害识别方法框架
Fig. 3 Framework of hazard identification method
首先,根据有限状态机模型定义,需将自动驾驶系统划分为有限个状态以及决定状态转移的环境条件。有限状态机模型在自动驾驶决策系
此处需要说明的是,面向底层控制行为的有限状态机被直接用于系统开
然后,识别决定车辆状态的环境条件。基于行为规则库输出的环境信息是决定车辆状态的语义信息。为保证自动驾驶系统在运行设计域内所遇见的全部场景均存在车辆状态响应,本文采用树状结构将语义层面的环境信息离散化、形式化生成环境条件元素,做全部环境条件元素的笛卡尔积形成环境条件。离散化原则可根据目标物和自车状态导致的运行环境危险度不同,采用不同的危险度模型。常用的危险度模型有碰撞时间(time-to collision, TTC)、车头时距(time headway, THW)等,

图4 形式化表示的环境条件样例
Fig. 4 Example of formal environmental condition
部分车辆状态之间的转移将会导致违反交通规则或出现危险的情况,因此部分车辆状态之间存在转移逻辑限制。该转移逻辑限制主要包括两个方面。首先即根据交通规则、知识、经验定义的转移逻辑限制;另一方面是基于系统安全性要求设置的转移逻辑限制,禁止部分状态之间的转移。之后依据转移逻辑限制建立自动驾驶系统的有限状态机模型。
由于高等级自动驾驶系统过于复杂,可能存在多个相似的车辆状态。因此为了简化有限状态机模型,可以采用分层有限状态机模型(hierarchical finite state machine, HFSM),将具有相似转移逻辑的车辆状态建立子状态机,而顶层状态机表示大类车辆状态之间的转移逻辑,子状态继承顶层状态机的转移逻辑。对于分层有限状态机模型而言,满足系统顶层状态环境条件后,存在多个子状态响应该环境条件,为保证自动驾驶系统存在确定的动作行为,需对子状态环境条件进行规定,该转移规定也属于转移逻辑限制的一部分。
基于有限状态机模型得出完整状态转移逻辑集合,并系统性识别车辆状态与环境条件冲突导致的不安全控制行为。依据传统STPA方法,传统不安全控制行为(unsafe control action, UCA)分为UCA-1需要但未提供控制、UCA-2不需要但提供控制、UCA-3需要但提供控制行为错误、UCA-4错误的控制提供时间、UCA-5错误的控制持续时间5类,具体结果如
被控对象 | 控制行为 | |
---|---|---|
提供控制 | 不提供控制 | |
需要被控 | UCA-3、UCA-4、UCA-5 | UCA-1 |
不需要被控 | UCA-2 | 安全 |
然而,上述不安全控制行为仅对开闭型控制行为是足够的,对于自动驾驶系统,其控制行为在一段时间内是连续变化的。显然,在现有的分类方法下UCA-4和UCA-5间是存在重合的。因此,本文提出通过分析环境条件与车辆状态间的冲突情况直接识别非预期行为,进而确定系统的潜在危害事件,涵盖了上述UCA-1至UCA-5的全部危害事件。
因此,可以在当前车辆状态下,作目标车辆状态集合与输入环境条件集合C的笛卡尔积,识别全部不安全控制行为集,记为。即:
(1) |
式中:为第i个目标车辆状态,0表示当前状态;为第i个目标车辆状态下第j个环境条件;k为目标车辆状态个数;为目标车辆状态的环境条件个数。具体结果形式参见
车辆目标状态 | 状态转移条件C | |||
---|---|---|---|---|
当前状态 环境条件 | 目标状态m 环境条件 | 目标状态n 环境条件 | ||
当前状态 | U1功能错误 | U2错误保持 | U2错误保持 | |
目标状态m | U3错误开启 |
U1功能错误 U4开启过早 U5开启过晚 | U3错误开启 | |
目标状态n | U3错误开启 | U3错误开启 |
U1功能错误 U4开启过早 U5开启过晚 |
由危害事件定义可知,并非全部非预期行为均会导致事故,需存在危害作用对象才导致事故。因此,识别导致潜在危害的非预期行为及危害事件。
为了验证本方法的有效性,将分别应用传统STPA方法和本文基于有限状态机的危害识别方法对某SAE L3级自动驾驶清扫车进行危害识别。清扫功能不涉及自动驾驶系统的安全问题,不作为分析对象,后续仅以SAE L3级自动驾驶汽车作为分析对象。
该车辆存在手动驾驶和自动驾驶两种模式,但全程配备驾驶员进行监督或控制,并且仅在封闭园区内运行。其中自动驾驶模式目标为:在封闭园区内,车辆自主规划行驶路线行驶,在自主行驶过程中可识别并自主避让前方障碍物、行人等,其行驶目标以及其环境信息如
车辆功能 | 行驶目标 | 环境信息 |
---|---|---|
车道保持 | 与路沿保持设定距离行驶 | 有路沿 |
GPS循迹 | 根据GPS信号规划路径行驶 | 无路沿,有稳定GPS信号 |
车辆停车 | 制动停车 | 无路沿,无稳定GPS信号 |
停车让行 | 识别前方行人,鸣笛并减速停车 | 车辆前方有行人 |
避障绕行 | 识别前方障碍物,绕行避障 | 车辆前方有障碍物 |
编号 | 车辆状态 | 环境条件 | 车辆预期行为 |
---|---|---|---|
S1 | 车辆停车 | 自动驾驶∩无路沿∩GPS信号不稳定 | 车辆安全减速至停车 |
S2_1 | 停车让行 |
①有路沿∩无行人∩有障碍物∩无换道空间 ②有路沿∩有行人 ③无路沿∩GPS信号稳定∩有行人 ④无路沿∩GPS信号稳定∩无行人∩有障碍物 | 车辆安全减速至停车避让前方障碍物或行人 |
S2_2 | 避障绕行 | 有路沿∩无行人∩有障碍物∩有换道空间 | 车辆与障碍物保持安全距离换道 |
S3_1 | 车道保持 | 有路沿∩无行人∩无障碍物 | 车辆与路沿保持设定距离和设定速度行驶 |
S3_2 | GPS循迹 | 无路沿∩GPS信号稳定∩无行人∩无障碍物 | 车辆根据GPS信号按规划路线行驶 |
为满足自动驾驶系统的安全性要求,需根据交通规则与系统定义的转移逻辑限制对部分状态转移进行约束,具体细节如下:
(1)系统定义车辆仅可由车辆停车启动,且定义车辆停车进入自动驾驶其他状态时,需保证周围无障碍物或行人,故车辆停车状态仅可以转入车道保持与GPS循迹状态;
(2)由于GPS循迹状态控制精度低,系统定义禁止由GPS循迹转入避障绕行状态;
(3)停车让行与避障绕行可转入任意车辆状态。
接下来,梳理各状态之间的转移关系,建立系统分层有限状态机模型,如

图5 分析对象的有限状态机模型
Fig. 5 FSM of analysis object
基于
当前车辆状态 | 输入环境条件C | 目标车辆状态 (车辆非预期行为) | 原因 | 潜在危害 |
---|---|---|---|---|
S3_2 | U1 | 偏离行驶轨迹,与路边障碍物发生碰撞 | ||
U3 | 无 | |||
U3 | 无 | |||
U3 | 偏离行驶轨迹,与路边障碍物发生碰撞 | |||
U2 | 与路边障碍物发生碰撞 | |||
U1 | 偏离行驶轨迹,与路边障碍物发生碰撞 | |||
U4 | 无 | |||
U5 | 偏离行驶轨迹,与路边障碍物发生碰撞 | |||
U3 | 无 | |||
U3 | 偏离行驶轨迹,与路边障碍物发生碰撞 | |||
U2 | 与行人或障碍物发生碰撞 | |||
U3 | 无 | |||
U1 | 与行人或障碍物发生碰撞 | |||
U4 | 无 | |||
U5 | 与行人或障碍物发生碰撞 | |||
U3 | 与行人或障碍物发生碰撞 | |||
U2 | 偏离行驶轨迹,与路边障碍物发生碰撞 | |||
U3 | 无 | |||
U3 | 无 | |||
U1 | 与路沿发生碰撞 | |||
U4 | 偏离行驶轨迹,与路边障碍物发生碰撞 | |||
U5 | 偏离行驶轨迹,与路边障碍物发生碰撞 |
判断上述非预期行为是否会导致潜在事故得到潜在危害事件,其中部分车辆非预期行为不会导致车辆潜在危害事件,不作为后续分析。例如车辆非预期行为车辆停车状态和停车让行状态处于最小风险状态,当原因为U3错误开启、U4过早开启时不会导致潜在危害。此外停车让行状态包含4个不同环境条件,分析最危险环境条件下的潜在危害。同理车道保持状态也分析最危险环境条件下的潜在危害。
此外,
综上所述,利用本文提出的基于有限状态机的危害识别方法共识别得到54项潜在整车级危害事件。
本团
结果 | 方法 | |
---|---|---|
STPA方法 | 基于FSM的危害识别方法(本方法) | |
分析对象 | 控制结构 | 有限状态机 |
危害事件来源 | 基于专家知识 | 基于危害事件要素 |
危害事件数量 | 未知(需结合场景输入得出) | 54 |
生成场景 | 不支持 | 支持自动化生成场景 |
传统STPA方法与本文提出的方法主要包含以下4个方面的不同:
(1)分析对象方面:STPA方法大多从控制结构出发识别系统危害,若识别软件层面的危害,需对软件架构进行一定程度抽象与重构。而本文提出的方法从自动驾驶汽车有限状态机出发识别系统危害,危害事件涵盖软件和硬件两方面问题;
(2)危害事件来源方面:STPA方法识别危害事件存在较大主观随意性。而应用本文所提出的方法,危害事件由有限状态机直接输出,减少了主观因素的影响;
(3)危害事件数量方面:STPA方法识别的不安全控制行为须结合专家输入的环境条件才能够确认是否导致危害事件。而本文提出的方法通过判断车辆状态与环境条件是否存在冲突直接确定危害事件;
(4)后续生成场景方面:STPA方法没有办法直接生成场景。而应用本文所提出的方法,自车状态和一定环境条件组合满足功能场景定义,因此可以生成测试场景验证危害事件的有效性。
本文针对自动驾驶系统预期功能安全危害事件识别方法展开研究。为解决危害事件分析没有涵盖运行环境影响的不足,本文引入了自动驾驶系统有限状态机模型,基于转移逻辑识别车辆状态与环境条件冲突导致的非预期行为,通过判断车辆非预期行为是否会导致事故识别潜在危害事件。在某自动驾驶汽车上应用上述方法,并对比现有STPA方法,验证了本文方法的有效性与优越性。
此外,在后续的研究中,将围绕以下方面展开:
(1)在验证潜在危害事件有效性方面,针对本文识别的潜在危害事件自动化构建危害事件测试场景,测试验证危害事件的有效性,定量识别各部件或系统的危害状态;
(2)在识别危害事件方面,将车辆状态和运行环境评定安全等级,匹配二者安全等级自动化识别危害事件。
作者贡献声明
熊璐:论文修订与审核。
贾通:危害识别,文献资料收集与分析,论文撰写。
陈君毅:研究命题提出与构思,论文审核。
邢星宇:危害识别,文献资料分析,论文修订。
李博:文献资料收集,论文修订。
参考文献
张云,李茹,焦伟赟,等.自动驾驶功能安全标准化研究[J].中国标准化,2020(11):109. [百度学术]
ZHANG Yun, LI Ru, JIAO Weiyun, et al. Research on standardization of functional safety of automated driving system [J]. China Standardization, 2020(11):109. [百度学术]
International Organization for Standardization.ISO 26262 Road vehicles-Functional safety[S]. Gereva,Switzerland: ISO,2011. [百度学术]
毛向阳,尚世亮,崔海峰.自动驾驶汽车安全影响因素分析与应对措施研究[J].上海汽车,2018(1):33. [百度学术]
MAO Xiangyang, SHANG Shiliang, CUI Haifeng. Analysis and countermeasure of safety challenging factors for autonomous driving vehicles [J]. Shanghai Auto, 2018(1):33. [百度学术]
International Organization for Standardization.ISO/PAS 21448: 2019 Road vehicles-Safety of the intended functionality[S]. Geneva,Switzerland: ISO, 2019. [百度学术]
BUCHALI T, FOCK M, DOLD S, et al. Fault-tolerant architecture for an actuator concept in highly automated cars[C]//2019 IEEE Vehicle Power and Propulsion Conference (VPPC). Hanoi:IEEE, 2019: 1-6. [百度学术]
YANG J, WARD M, AKHTAR J. The development of safety cases for an autonomous vehicle: A comparative study on different methods[R].Kunshan: SAE, 2017. [百度学术]
PAUL C, BENJAMIN L, WALTER S, et al. Validation of safety necessities for a Safety-Bag component in experimental autonomous vehicles[C]//2018 14th European Dependable Computing Conference (EDCC). Iasi:IEEE, 2018: 33-40. [百度学术]
LEVESON N G. Engineering a safer world: Systems thinking applied to safety[M]. [S.l.]:The MIT Press, 2016. [百度学术]
陈君毅, 周堂瑞, 邢星宇, 等. 基于系统理论过程分析的自动驾驶汽车安全分析方法研究[J]. 汽车技术, 2019(12): 1. [百度学术]
CHEN Junyi, ZHOU Tangrui, XING Xingyu, et al. Research on safety analysis method for autonomous vehicles based on STPA[J]. Automobile Technology , 2019(12): 1. [百度学术]
周堂瑞. 面向预期功能安全的自动驾驶汽车危害识别方法研究[D]. 上海:同济大学, 2020. [百度学术]
ZHOU Tangrui. Research on hazard identification method for safety of the intended functionality of autonomous vehicles [D]. Shanghai:Tongji University, 2020. [百度学术]
ERICSON C A. Hazard analysis techniques for system safety[M]. Hoboken: John Wiley & Sons, 2005. [百度学术]
谭同超. 有限状态机及其应用[D]. 广州:华南理工大学, 2013. [百度学术]
TAN Tongchao. Finite state machine and its application [D]. Guangzhou:South China University of Technology, 2013. [百度学术]
熊璐,康宇宸,张培志,等.无人驾驶车辆行为决策系统研究[J].汽车技术,2018(8): 1. [百度学术]
XIONG Lu, KANG Yuchen, ZHANG Peizhi, et al. Research on behavior decision-making system for unmanned vehicle [J]. Automobile Technology, 2018(8): 1. [百度学术]
URMSON C, ANHALT J, BAGNELL D, et al. Autonomous driving in urban environments: Boss and the urban challenge[J]. Journal of Field Robotics, 2008, 25(8): 425. [百度学术]
ZIEGLER J, BENDER P, SCHREIBER M, et al. Making bertha drive—An autonomous journey on a historic route[J]. IEEE Intelligent Transportation Systems Magazine, 2014, 6(2): 8. [百度学术]
MONTEMERLO M, BECKER J, BHAT S, et al. Junior: The stanford entry in the urban challenge[J]. Journal of field Robotics, 2008, 25(9): 569. [百度学术]
International Organization for Standardization. Transport information and control system. Adaptive cruise control systems—Performance requirements and test procedures: ISO 15622—2010[S]. Geneva, Switzerland: ISO, 2010. [百度学术]