基于系统理论过程分析的自动驾驶汽车安全分析方法研究
陈君毅 周堂瑞 邢星宇 熊璐
(同济大学,上海 201804)
【摘要】基于系统理论过程分析( STPA)方法,在现有道路车辆功能安全标准框架下,提出一种面向自动驾驶汽车的安全分析方法,该方法同时适用于分析功能安全和预期功能安全的问题,从系统角度出发,将安全问题视为控制问题,找到系统控制过程中存在的潜在危险,并结合原因分析,最终提出功能安全要求。利用该方法对某开发阶段自动驾驶清扫车进行安全分析,提出了相应的功能安全要求,并验证了所提方法的可行性和有效性。主题词:自动驾驶汽车 系统理论过程分析 功能安全 预期功能安全U461.79 A 10.19620/j.cnki.1000-3703.20190543中图分类号: 文献标识码: DOI:
Research on Safety Analysis Method for Autonomous Vehicles Based on STPA
Chen Junyi, Zhou Tangrui, Xing Xingyu, Xiong Lu Tongji University, Shanghai 201804) ( Abstract Based on Systems- Theoretic Process Analysis (STPA), a safety analysis method for autonomous vehicles is【 】put forward in the framework of the existing functional safety standard for road vehicles. This method is applicable to both functional safety and intended functional safety analysis. From the perspective of the system, safety is regarded as a control problem, potential hazards in the control process are found, and in combination with cause analysis, functional safety requirements are finally proposed. This method is used to analyze the safety of an autonomous driving sweeper in its development phase, and corresponding functional safety requirements are put forward, the feasibility and effectiveness of the proposed method are verified. Key words: Autonomous vehicles, Systems- theoretic process analysis, Functional safety, Safety of the intended functionality
1 前言
安全性分析与验证是汽车开发过程中的重要环节。依据危险来源的不同,自动驾驶汽车的安全问题可分为功能安全、预期功能安全和信息安全[1]。国际标准International Organization for Standardization,化组织( ISO) ISO 26262颁布的 《道路车辆功能安全》[2]为汽车全2019生命周期内的功能安全设计提供了指导。 年初公ISO/PAS 21448布的《道路车辆预期功能安全》[3]则补充了自动驾驶系统的安全设计指导[4]。根据现有安全标准,汽车开发概念阶段中危害分析
和风险评估最为关键,需要系统地对车辆潜在风险进行Fault识别和评估。传统安全分析方法中,故障树分析( Tree Analysis,FTA) Failure和失效模式及效应分析( Mode and Effect Analysis,FMEA)关注具体的软、硬件失效或故障[5],无法涵盖预期功能安全领域的问题。危险Hazard and Operability Analysis,与可操作性分析( HAZOP)基于对偏离设计目的的偏差分析识别危险,其导则[6]提供了标准流程和引导词,然而现有引导词并不完全适用于自动驾驶系统[7],且缺乏系统的引导词生成HAZOP方法,导致在自动驾驶汽车安全分析上欠缺可行性。
Nancy Leveson[ 2011
8]于 年提出基于系统理论的系Systems- Theoretic Process Analysis,
统理论过程分析(
STPA)
方法,将安全视为控制问题,目标是识别出那些可能导致危险发生的不充分的控制,通过安全约束使风险降低到可接受的程度[9]。该方法同时考虑了软、硬件失效以及性能局限等非失效引起的危险,因此覆盖了功能安全和预期功能安全两个领域。近年来,研究人员[10- 13] STPA
开始尝试应用 对自动驾驶汽车进行安全分析,初STPA
步验证了 方法用于自动驾驶汽车安全分析的可行性。然而现有研究分析对象多为某一系统[10- 11]或功能SAE较为单一的低级别自动驾驶汽车[12- 13],对于复杂的
L3 STPA
级及以上的自动驾驶汽车, 进行安全分析的适STPA
用性还有待验证。同时,由于 方法与标准流程并STPA
非完全一致,如何改进 方法使之能满足现有标准流程要求,目前仍缺少相关探讨和具体实践。基于以上背景,本文提出一种在现有标准框架下, STPA SAE
基于 的自动驾驶汽车安全分析方法,并在某
L3
级自动驾驶清扫车上进行了应用实践。
2 基于STPA的安全分析方法
STPA
分析从具体事故出发,推导得到系统级安全约束,即为避免或减轻危险带来的伤害,对系统行为安全性提出的要求。从控制结构识别不安全控制行为是该方法的核心。依据现有功能安全标准,汽车开发概念阶段的最终输出是基于一定安全目标提出的功能安全要求。
STPA
分析流程[8]和汽车开发概念阶段主要流程[2]见
1, STPA
图 通过对比以上两个分析流程, 方法中基于系统控制结构的分析为标准流程中的危险事件识别提供了具体的方法,且对于不安全控制行为的原因分析可以为后期功能安全要求的导出提供依据。因此,本文提出
STPA
基于 的自动驾驶汽车安全分析方法,具体流程如
1
图 所示。
3 7
该方法分为 个流程,共 个步骤,各步骤具体任务为:
a. 1
第 步:相关项定义,明确分析对象的具体功能及其运行场景,作为后续工作的基础。
b. 2~6
第 步:危害分析和风险评估。首先基于已有信息,建立系统控制结构,梳理各功能的控制行为;其次,基于一定的输入条件,识别不安全控制行为;然后,将不安全控制行为与具体运行场景相结合,得到整车级
Automo⁃
危险事件,并利用标准中汽车安全完整性等级(
tive Safety Integration Level,ASIL)
对每项危险事件从暴
3
露率、严重度和可控性 个角度进行评估,得到风险较高的危险事件;最后,为避免以上危险事件,提出整车级安全目标。
c. 7
第 步:功能安全概念推导,为实现整车级安全
ab
目标,提出功能安全要求。将要求分为 、两部分,首先分析各种不安全控制行为的原因,然后结合各功能的安全目标,得到具体的针对子系统或软、硬件的功能安全要求。
ISO 26262
与 一致,在系统和软、硬件后续开发过程中,基于该安全分析方法得到的功能安全要求,可以分配于不同的组件,以得到具体的可实现的技术安全要求,并为后续测试验证提供理论依据。
3 自动驾驶汽车安全分析
将本文提出的自动驾驶车辆安全分析方法应用于SAE L3
某开发中的 级自动驾驶清扫车。
3.1 明确功能及运行场景
本文所分析的自动驾驶清扫车分为有人驾驶和自动驾驶两种模式,全程配备驾驶员。其自动驾驶模式下的设计目标为在封闭园区内主动规划路线行驶,并在行驶过程中识别障碍物和行人,实现主动避让。基于以上设计目标,明确清扫车自动驾驶模式下的功能和对应场
1
景要素如表 所示。由于清扫路面功能不涉及安全问题,后续分析中不再讨论。
3.2 建立整车系统控制结构
基于以上具体功能,建立清扫车的控制结构,如图
2 Intelligent Control
所示。由于自动驾驶控制单元(
Unit,ICU)
是清扫车实现其自动驾驶功能的核心,且清
ICU
扫车无多传感器融合算法,故 是本次安全分析的重
ICU
点。本文后续即以围绕清扫车 的分析为示例展开叙述,环境传感器和执行机构部分不展开讨论。建立系统控制结构后,结合具体控制信息,可得到
ICU
清扫车各功能的具体控制行为及相应的输入、输
3.3 识别不安全控制行为
针对以上各具体控制行为,分析识别不安全控制行3为。不安全控制行为基本分类[8]如表所示。其中被控3对象需要控制时提供控制还存在 类不安全控制行为, U3 U4即错误的控制提供时间 、错误的控制持续时间 和U5
错误的控制信号 。此外,不安全控制行为是在一定输入条件下的,而
2
这些输入条件即对应一定的环境条件。根据表 和表
3, ICU
可得到清扫车 各功能的不安全控制行为。
3.4 识别危险事件
系统的不安全控制行为将会导致车辆非预期行
2
为,在特定运行场景下导致危险事件。由图 可知,
ICU
依据环境传感器、定位系统等的具体输入决定其控制行为,而这些系统的输入即对应一定的环境条件。
2
依据表 中各控制行为触发输入条件,可以得到具体运行场景,结合各功能不安全控制行为,进而得到整车级危险事件。开发团队对清扫车在包括弯道、直道及不同障碍物
100
类型等多种工况下进行了共 余次测试,测试过程中
26
由自动驾驶系统导致的危险共出现 次。通过分析危
26 5
险发生场景及系统状态, 次危险事件对应 类不安全
4
控制行为的数量及比例如表 所示。结合该测试结果,可以对本文方法所提出的危险事件的有效性与合理性进行验证。5
以自动驾驶清扫车避障功能为例,分析得到 类不5
安全控制行为对应危险事件如表 所示。
H4,
结合具体测试结果,对应危险事件 测试中出现清扫车检测到障碍物并成功开始避障绕行后,由于失去障碍物信息而直接规划路径回原车道行驶,导致与障碍
3 H5,
物碰撞的情况,如图 所示。而对于危险事件 测试中出现清扫车在遇纸箱等大型障碍物进行避障时与障
4
碍物发生剐蹭的情况,如图 所示。以上结果验证了危险事件分析的合理性和有效性。
3.5 对危险事件进行风险评估
ISO 26262, ASIL
依据 采用 对每项危险事件从暴露
率、严重度和可控性角度进行评估,据此可以筛选出风险大、必须采取措施避免或控制的危险事件。由于清扫车在运行过程中,行人、障碍物和其他车辆出现的可能性都较高,各危险事件在这些场景下均有
E4;
可能导致事故,故所有事件的暴露率评级均取最高由于清扫车自动驾驶时设计速度慢(自动驾驶模式下行
20 km/h),
驶速度不超过 即使发生事故,也不会对相关
S1;
人员造成较严重伤害,故各危险事件严重度最高为同样由于清扫车速度慢,且车上有驾驶员随时观察周围
综合清扫车系统各功能分析中不安全控制行为的
ICU
原因可以发现,由于 是集成在开发平台上的单一硬件,其失效导致的危险事件在现有缺少监控模块的系统结构下是难避免。因此,本文还提出了对各传感器和
ICU ICU
输出信号以及 运行环境实时监测的功能安全
环境和清扫车状态,危险事件发生后驾驶员有较长反应
C2
时间来采取措施,故各危险事件可控性最高为 。由
ASIL A
此,清扫车各危险事件 评级最高为 级,可认为整
ASIL QM
体安全风险较低。对于 等级为 的危险事件,后续分析中不再考虑。
3.6 得到安全目标
为了避免或减轻车辆危险事件造成事故或伤害,提出对应的整车级安全目标。本文将安全目标表述为某一功能的目的,即在某一条件下,车辆应该实现的对应功能,并达到一定效果。对于以上分析得到的清扫车各危险事件,推导得到自动驾驶模式下的相应安全目标。
3.7 提出功能安全要求
为实现以上安全目标,本文提出通过结合对不安全控制行为的原因分析得到具体的功能安全要求。原因分析既可以从系统结构和控制原理展开,也可以结合实际测试进行。对于自动驾驶汽车的不同不安全控制行为,其引发原因有一定的相似性,主要包括:硬件失效等造成的信号丢失、时延等;算法计算出错造成输出错误的控制指令;环境干扰导致传感器错误识别等。其中,硬件失效和算法计算错误属于功能安全问题,而环境干扰则属于预期功能安全问题。依据各引发原因,可以提出更加有针对性的功能安全要求。
2 ICU
本文以表中清扫车避障功能为例,针对 避障功能控制行为,具体展示以上各步骤的分析结果,如
6
表 所示。
ICU
要求。对于清扫车所用 而言,运行环境中温度对其
ICU
影响最大。为此,需引入温度传感器对 进行实时监测,以在温度异常时系统及时感知并采取提醒或降低功耗等措施。同时,新增系统管理模块实时接收分析各输
ICU
入、输出信号状态,确保当 或传感器输出异常时,直
接控制清扫车减速停车,提醒驾驶员并尝试重启驾驶
ICU
脑。该模块是独立于 的单独硬件,其控制指令相对
ICU
有更高优先级。以上新增模块及其相应输入、输出
5
如图 所示,基于此可对清扫车控制结构进行改进。在识别危险事件的过程中还可以发现,由于清扫车各功能涉及的运行场景可能出现重复的情况,为避免某一场景下多功能触发引起危险,还需考虑多种功能的优先级问题,例如,当清扫车前方同时有障碍物和行人时,
ICU
应控制车辆停车鸣笛以警示、避让行人而非继续规划避障绕行道路。
3
汇总所有分析结果,本文共提出 方面功能安全要求:
a. ICU
硬件功能安全要求: 应有足够的硬件配置、适
ICU
宜的运行环境并稳固安装; 应有充足且稳定的供电。
b.
软件功能安全要求:仅在规定区域、条件下启动某一功能;减速停车有最高优先级;保障各行驶模式下与路沿、车道线、轨迹点的距离和误差以及避障模式
GPS
下与障碍物的安全距离;实时显示 信号状态,并在
GPS
信号弱时提醒驾驶员。
c.
新增监测和系统管理模块:实时监控各传感器
ICU
和 的输出,异常情况(电压、电流异常,以及无输出或卡死、输出延迟等)及时提醒驾驶员并控制车辆减速停
ICU
车;实时监控 运行温度,异常情况提醒驾驶员并控制车辆减速停车,同时尝试重启驾驶脑;实时监控车辆状
20%
态,包括电池电量,电量低于 时及时提醒驾驶员。
4 结束语
STPA
本文提出一种结合 方法与现有安全标准流程的自动驾驶汽车安全分析方法,基于不安全控制行为识别危险事件,进而推导得到功能安全要求。该方法在自动驾驶清扫车上的应用实践表明,该方法可以同时分析功能安全和预期功能安全问题,提出包括硬件、软件和
3
系统模块改进等 方面功能安全要求,验证了该方法进行高等级自动驾驶汽车安全分析的可行性和有效性。
STPA
本文在应用 方法进行不安全控制行为分析时,由于控制行为集中体现为速度和转角控制,无法体现循迹、避障在内的多种功能的具体差异,仅简单涉及了多功能之间的优先级问题。后续研究将展开分析各功能切换和过渡过程中的安全风险。
参考文献
[1] 尚世亮, 李波.车辆电控系统预期功能安全技术研究[J].中国标准化, 2016(9): 58-62. [2] International Organization for Standardization. Road Vehicles- Functional Safety: ISO 26262 [S]. Geneva, Switzerland: ISO, 2011. [3] International Organization for Standardization. Road Vehicles - Safety of the Intended Functionality: ISO/PAS 21448: 2019 [S]. Geneva, Switzerland: ISO, 2019. [4] 尚世亮, 崔海峰, 郭梦鸽, 等.自动化测试在SOTIF开发中的应用[J]. 汽车技术, 2018(11): 23-26. [5] Qureshi Z H. A Review of Accident Modelling Approaches for Complex Socio- Technical Systems[C]// Proceedings of the Twelfth Australian Workshop on Safety Critical Systems and Software and Safety- Related Programmable Systems. Adelaide: Australian Computer Society, Inc., 2007: 47-59. [6] 中国国家标准化管理委员会. 危险与可操作性分析( HAZOP分析)应用指南: GB/T 35320—2017[S]. 北京: 中国标准出版社, 2018. [7] Bagschik G, Reschka A, Stolte T, et al. Identification of Potential Hazardous Events for an Unmanned Protective Vehicle[C]// Intelligent Vehicles Symposium. IEEE, 2016. [8] Leveson N. Engineering a Safer World: Systems Thinking Applied to Safety[M]. MIT Press, 2011. [9] , , .徐燕 钟德明 尹帅 基于系统理论过程分析的软件安全[J]. , 2013, 33( 2): 238-240.性分析 计算机应用 增刊[10] Mahajan H S, Bradley T, Pasricha S. Application of Systems Theoretic Process Analysis to a Lane Keeping Assist System[J]. Reliability Engineering & System Safety, 2017, 167: 177-183. [11] Stolte T, Bagschik G, Maurer M. Safety Goals and Functional Safety Requirements for Actuation Systems of Automated Vehicles[C]// International Conference on Intelligent Transportation Systems. IEEE, 2016. [12] Abdulkhaleq A, Lammering D, Wagner S, et al. A Systematic Approach Based on STPA for Developing a Dependable Architecture for Fully Automated Driving Vehicles[J]. Procedia Engineering, 2017, 179(41): 41-51. [13] Bagschik G, Stolte T, Maurer M. Safety Analysis Based on Systems Theory Applied to an Unmanned Protective Vehicle [J]. Procedia Engineering, 2017, 179: 61-71.