【摘要】安全分析是汽車開發(fā)過程的重要一環(huán),隨著自動駕駛系統(tǒng)復雜性提升,傳統(tǒng)安全分析方法面臨著挑戰(zhàn)。首先,將故障樹分析(FTA)、故障模式與影響分析(FMEA)、危險與可操作性分析(HAZOP)這些傳統(tǒng)安全分析方法,與系統(tǒng)理論過程分析方法(STPA)進行對比,重點闡述使用STPA進行自動駕駛系統(tǒng)安全分析的優(yōu)勢。其次,詳細論述了STPA在自動駕駛功能安全、預期功能安全、信息安全及人機交互系統(tǒng)等重要領域的應用現(xiàn)狀。最后,從拓展STPA分析方法、加強分析與驗證閉環(huán)、擴大應用范圍的角度對STPA在自動駕駛領域的應用進行了展望。
主題詞:系統(tǒng)理論過程分析;自動駕駛;安全分析
中圖分類號:U463.6;N941 """"""""""""文獻標識碼:A" """""""""DOI: 10.19822/j.cnki.1671-6329.20230245
A Review on Application of Systems Theoretic Process Analysis in Automated Driving Safety Analysis
Zhang Yuxin Lü Zhouhang Zhang Miao "Hu Hongyu
(1. Jilin University, State Key Laboratory of Automotive Simulation and Control, Changchun 130025; 2. Auto Standardization Research Institute, China Automotive Technology and Research Center Co., Ltd., Tianjin 300300)
【Abstract】 Safety analysis is an integral part of the automotive development process, as the complexity of automated driving systems increases, traditional safety analysis methods are facing challenges. Firstly, the advantages and disadvantages of traditional analysis methods, such as Fault Tree Analysis (FTA), Failure Modes and Effect Analysis (FMEA), and Hazard and Operability (HAZOP), are compared with the System Theoretical Process Analysis (STPA), especially the advantages of STPA for the safety analysis of automated driving systems. Secondly, the current status of STPA applications in essential areas, such as Functional Safety, Safety of the Intended Functionality (SOTIF), Cyber Security, and Human Machine Interface (HMI), are discussed in detail. Finally, the application of STPA in automated driving is prospected from the perspectives of expanding the STPA analysis, integration of analysis and verification, and extending application areas.
Key words: System theoretic process analysis(STPA), Automated driving, Safety analysis
0 引言
隨著科技的高速發(fā)展,汽車面臨的安全問題也愈發(fā)豐富,主要集中在功能安全、預期功能安全、信息安全3個領域。為提高智能網(wǎng)聯(lián)汽車產(chǎn)品性能和安全運行水平,推動智能網(wǎng)聯(lián)汽車產(chǎn)業(yè)健康有序發(fā)展,工業(yè)和信息化部會同公安部組織起草了《關于開展智能網(wǎng)聯(lián)汽車準入和上路通行試點工作的通知(征求意見稿)》[1]。該通知對企業(yè)安全保障能力做出了包括功能安全保障、預期功能安全保障、網(wǎng)絡安全保障在內(nèi)的能力要求。
在汽車開發(fā)流程中,安全性分析和驗證是重要一環(huán)。傳統(tǒng)的安全分析方法如故障樹分析(Fault Tree Analysis,F(xiàn)TA)、故障模式與影響分析(Failure Modes and Effect Analysis,F(xiàn)MEA)、危險與可操作性分析(Hazard and Operability,HAZOP)均存在局限性,無法充分應對預期功能安全和信息安全問題[2],而由Leveson提出的系統(tǒng)理論過程分析(Systems Theoretic Process Analysis,STPA)方法由于其特有的系統(tǒng)視角,能夠很好地解決上述問題。在此背景下,STPA方法在自動駕駛領域中的應用愈發(fā)增多。
目前,國內(nèi)外學者針對STPA在自動駕駛領域應用的研究主要集中于STPA方法在自動駕駛系統(tǒng)中的應用,包括在不同領域如功能安全、預期功能安全、信息安全、人機交互的應用。本文首先通過對比法闡述了,相較于傳統(tǒng)安全分析方法,STPA方法用于自動駕駛系統(tǒng)安全分析的優(yōu)勢。其次,以STPA的實際應用為例,通過列舉法介紹STPA在自動駕駛系統(tǒng)重要領域的應用現(xiàn)狀,最后對其前景進行展望。
1 安全分析方法
1.1“演繹”方法與“歸納”方法
“演繹”方法即假設系統(tǒng)以一定方式失效,通過推導找出哪些系統(tǒng)或組件的行為致使失效。演繹方法是從一般到個別的推理,能夠縮小分析的范圍,具有局部性的特點。“歸納”方法假設一個或多個組件的特定存在狀態(tài),通過安全分析確定該條件對系統(tǒng)的影響。在實際生產(chǎn)中,歸納方法通常受外界條件限制,因為對于大多數(shù)系統(tǒng),很難去識別所有可能的系統(tǒng)危險或所有可能的組件故障模式[3]。
事件鏈模型以事件鏈的形式描述事故,將事故原因解釋為發(fā)生在特定時間序列中的一系列離散事件,其優(yōu)勢在于能夠直觀地顯示導致事故的系列事件[4]。Heinrich[5]提出的多米諾骨牌模型與Reason[6]提出的瑞士奶酪模型(Swiss Cheese Model, SCM)均屬于事件鏈模型。目前,常用的事件鏈模型包括故障樹分析(FTA)、故障模式與影響分析(FMEA)。
故障樹分析(FTA)屬于“演繹”方法,即通過該方法確定給定的系統(tǒng)狀態(tài)如何發(fā)生,是一種“自上而下”的分析方法[3],如圖1所示。分析從故障樹的頂部事件延展到故障樹的葉子,進而分析得到在其環(huán)境中導致頂部事件發(fā)生的故障組合方式[7],故障可以是與組件故障、人為錯誤或其他因素相關的事件。故障樹是一個可以定量評估的定性模型,通常用于評估系統(tǒng)的可靠性。
故障模式和影響分析(FMEA)屬于“歸納”方法,即通過該方法確定可能的系統(tǒng)狀態(tài),是一種“自下而上”的分析方法[3],如圖2所示。FMEA首先對系統(tǒng)進行分析,進而列出分析對象盡可能多的潛在故障模式,并對失效模式的原因、影響以及現(xiàn)有控制方法進行分析,最后根據(jù)嚴重程度(S)、暴露度(O)、可檢測程度(D)的評價標準確定評價值,計算出風險優(yōu)先級數(shù)(Risk Priority Number,RPN)[8]。FMEA也是評估系統(tǒng)可靠性的有效工具。
除故障模式和影響分析(FMEA)外,安全分析領域內(nèi)的“歸納”方法還有故障模式、影響及其診斷分析(Failure Modes Effects and Diagnostic Analysis,F(xiàn)MEDA)和事件樹分析法(Event Tree Analysis,ETA)等。
1.2“探索性”方法
“探索性”方法從系統(tǒng)不當行為(偏差)開始,探索可能的影響和可能的原因,傳統(tǒng)的HAZOP評估即屬于“探索性”方法。也可以說,HAZOP評估介于“歸納”方法和“演繹”方法之間,因為HAZOP根據(jù)“演繹”方法假設頂部事件(偏差),隨后遵循“歸納”方法探索系統(tǒng)行為[9]。
HAZOP是過程危險分析(Process Hazard Analysis,PHA)方法的一種[10],通過引導詞輔助列出系統(tǒng)及系統(tǒng)元素可能存在的與設計意圖的偏差,假設系統(tǒng)存在不當行為,識別其可能導致的危害[11]。隨后對每個節(jié)點中偏差的原因進行頭腦風暴,并確定導致每個原因的事件序列[12]。
1.3系統(tǒng)過程理論分析
系統(tǒng)理論過程分析(STPA)同樣屬于“探索性”方法,STPA是基于系統(tǒng)理論事故模型和過程(STAMP)的一種危害分析方法。Leveson[13]描述了STPA和STAMP的原理,認為應將系統(tǒng)視為一個整體,關注組件交互而非僅關注單個組件的作用。安全分析的重心應從防止組件出現(xiàn)故障轉(zhuǎn)變成通過施加安全約束完善控制過程[14]。
STPA將安全視為系統(tǒng)的控制問題。旨在通過識別不安全控制行為,找到因果場景,進而消除或控制系統(tǒng)中的危害,它可以應用于系統(tǒng)生命周期的任何階段[15]。STPA的基本步驟包括定義STPA分析工作的目的和范圍、建立分層控制結(jié)構(gòu)、列出不安全控制行為、識別致因場景、提取安全需求[16]?,F(xiàn)在,STPA廣泛應用于各個行業(yè),包括軍事[17]、海事[18]、醫(yī)療[19]、航空[20]、核電[21]、智能交通[22]等領域,本文主要討論的是STPA在自動駕駛領域的應用現(xiàn)狀。
1.4 STPA與其他安全分析方法的比較
當使用FTA、FMEA等事件鏈模型進行安全分析時,分析人員將事故描述為一系列事件的結(jié)果。而隨著技術(shù)的發(fā)展,自動駕駛系統(tǒng)愈發(fā)復雜,線性的事件鏈無法對其充分分析,經(jīng)常會忽略事故的潛在原因[23]。
在FMEA中,系統(tǒng)功能應用被分配給子系統(tǒng)與組件,進而確定并分析失效模式和失效原因,計算風險優(yōu)先級數(shù)(RPN)并進行風險等級排序。FMEA是一種聚焦于單個部件失效模式及其影響的歸納分析方法,更多考慮部件的可靠性,很少用于分析基于同一原因的故障或多個故障[24]。在一項對汽車前向避障系統(tǒng)的分析中,與STPA相比,F(xiàn)MEA能識別出更多的部件故障危害,而STPA的優(yōu)勢則在于尋找已識別危害的因果因素,比傳統(tǒng)的危害分析方法考慮更多類型的危害原因[25]。
FMEA只能用于分析的后期,即需要首先完成開發(fā)設計,隨后才可以進行歸納分析,適合用于檢查現(xiàn)有設計是否安全[26]。與開發(fā)流程后期對系統(tǒng)的迭代相比,在開發(fā)早期進行修改會降低成本并提高效率。STPA支持在系統(tǒng)開發(fā)早期的使用,也支持在開發(fā)流程中任意環(huán)節(jié)的迭代,在早期概念開發(fā)階段就可以投入使用。
相較于FTA、FMEA,介于“歸納”方法和“演繹”方法之間的HAZOP分析包括對人為錯誤和其他組件影響的分析。但在HAZOP評估中,有時指導詞和參數(shù)的不同組合可能會產(chǎn)生相同的偏差,這會導致研究效率的降低[27]。同時HAZOP通過演繹探索原因,不能準確得出導致偏差的所有原因的組合。基于以上原因,HAZOP僅適合用于簡單的功能系統(tǒng)分析[24]。在對自動駕駛系統(tǒng)進行安全分析時,HAZOP中的引導詞并不完全適用自動駕駛系統(tǒng),HAZOP也不具備系統(tǒng)生成相關引導詞的方法[28],這種情況限制了上述方法在自動駕駛系統(tǒng)領域的應用[29]。
相較于FTA與FMEA等事件鏈模型,STPA將子系統(tǒng)交互、組件交互都納入分析過程,其中的組件可能不存在失效。而傳統(tǒng)的基于因果關系的事件鏈模型強調(diào)事件之間的線性關系,即每個事件都與前面的事件線性相關,無法考慮到組件交互對系統(tǒng)的影響[30]。隨著系統(tǒng)越來越復雜,事件鏈無法滿足分析需求,這正是STPA的系統(tǒng)視角的優(yōu)勢。Koelln[2]將STPA、FTA和FMEA方法用于自動駕駛汽車的安全分析,發(fā)現(xiàn)STPA能夠識別大量的失效類型,并在分析中包括跨系統(tǒng)因素。除此之外,STPA可以納入人為錯誤因素,這是FTA與FMEA不具備的,關于STPA在自動駕駛領域人機交互上的應用將在后續(xù)章節(jié)詳細討論。
對于自動駕駛相關的軟件密集系統(tǒng),STPA認為軟件不會失效,有缺陷的需求(或?qū)崿F(xiàn))以及與系統(tǒng)其他部分的不安全交互才會導致危害發(fā)生[31]。因此對于軟件密集系統(tǒng),預防相關事故發(fā)生需要完整的軟件行為安全相關需求/約束[30]。綜上,使用STPA、FTA、FMEA、HAZOP對自動駕駛系統(tǒng)進行安全分析的效果對比如表1所示。
2 STPA在自動駕駛系統(tǒng)中的應用
Shi[32]通過操作原理對駕駛自動化系統(tǒng)進行分類,包括信息提醒與警示類安全系統(tǒng)(如車道偏離預警、變道盲區(qū)預警系統(tǒng)、前方碰撞預警等)、持續(xù)車輛控制的駕駛自動化系統(tǒng)(如自適應巡航、高速公路自動駕駛、自主代客泊車等)、瞬時車輛控制的主動安全系統(tǒng)(如防抱死制動系統(tǒng)、電子穩(wěn)定控制系統(tǒng)、自動緊急制動等)。上述系統(tǒng)均屬于軟件密集系統(tǒng),適用于STPA方法,并存在許多應用實例。
2.1 STPA用于功能安全
在功能安全領域的應用中,將STPA與ISO 26262中的危害分析和風險評估(Hazard Analysis and Risk Assessment,HARA)結(jié)合對自動駕駛系統(tǒng)進行系統(tǒng)的分析,如圖3所示。
周逢軍[33]使用STPA對前向碰撞預警(Forward Collision Warning,F(xiàn)CW)系統(tǒng)進行安全分析,得出影響整車功能安全的主要事故類型與系統(tǒng)級危害類別。Sharma[34]使用STPA對自動緊急剎車系統(tǒng)(Autonomous Emergency Braking,AEB)進行安全分析,通過分析與控制流程圖相關的組件,確定不安全控制行為對應的場景和因果因素。馬海濤[35]使用STPA對自動車道保持系統(tǒng)(Automated Lane Keeping System,ALKS)的人機交互系統(tǒng)進行安全分析,最終提出相應安全設計需求。
除了分析系統(tǒng)級別與組件級別的危害之外,STPA還可以從整車級別對自動駕駛汽車進行安全分析,進而細致劃分不安全場景,制定不同級別的安全需求[36]。相較于傳統(tǒng)的事件鏈模型,STPA對組件交互、系統(tǒng)交互的關注使其可以識別更多的致因場景[2]。Abdulkhaleq[37]使用STPA對全自動駕駛汽車進行安全分析,并認為STPA是推導安全約束的有效工具。
2.2 STPA用于預期功能安全
STPA在SOTIF流程中也有許多應用實例[38,39]。STPA步驟可以映射到SOTIF流程[40–42],二者存在很強的適配性,如圖4所示。通過映射可以得到STPA的致因場景與SOTIF性能局限和觸發(fā)條件之間的關系,并以此分析系統(tǒng)[42]。SOTIF流程旨在減少不安全的象限,即減少區(qū)域2和區(qū)域3并將它們移動到區(qū)域1。STPA可以通過安全分析揭示未知的不安全場景以減少區(qū)域3,Haixia[43]將STPA運用于高速公路領航(Highway Pilot,HWP)的場景分析,將由未知場景導致區(qū)域3中潛在危險行為的概率降低到可接受水平。Shimizu[44]以自動緊急剎車系統(tǒng)(AEB)為研究對象,提出了一個基于SOTIF的系統(tǒng)性能限制評估框架,結(jié)合STPA識別由于傳感器攻擊引起的危險場景,并評估場景中的性能限制。STPA還可以用于輸出測試場景,SAE J3187以低速自動駕駛系統(tǒng)為研究對象,通過STPA得到的不安全控制行為與損失場景生成測試場景及其要素,生成的測試場景有助于提高自動駕駛系統(tǒng)的安全性[41]。
2.3 STPA用于信息安全
STPA不僅可以用于功能安全分析和預期功能安全分析,還可以用于信息安全分析,信息的安全傳輸對于車輛整體安全有著關鍵作用[45]。為了保護軟件密集系統(tǒng)免受外部攻擊尤其是網(wǎng)絡攻擊的影響,Young和Leveson[46]提出了STPA的擴展STPA-sec,首次將信息安全問題納入安全分析過程。在信息安全領域,STPA-sec具有傳統(tǒng)安全分析方法不具備的優(yōu)勢。STPA-sec先定義損失,在安全評估開始時建立優(yōu)先級,從系統(tǒng)功能的角度出發(fā)進行安全評估,將網(wǎng)絡安全定義為戰(zhàn)略問題,而非傳統(tǒng)安全分析方法里的戰(zhàn)術(shù)問題。并且,STPA-sec將外部攻擊的產(chǎn)生歸于系統(tǒng)結(jié)構(gòu)缺陷,而非來自外部的事件,通過對系統(tǒng)結(jié)構(gòu)的分析得出改進建議,進而通過這些設計上的更改,減少或者消除網(wǎng)絡攻擊的影響[47]。
Schmittner[48]提出了改進的STPA-sec,并將其用于分析混合動力汽車的電池管理系統(tǒng)。Friedberg[49]將STPA過程中的功能安全分析和STPA-sec過程中的信息安全分析集成到新的框架STPA-SafeSec中,并考慮二者的相互影響,擴大了STPA的適用范圍。
2.4 STPA用于人機交互系統(tǒng)
STPA還可以用來分析自動駕駛系統(tǒng)與其他系統(tǒng)(例如交通參與者、環(huán)境、人類駕駛員)之間的各種交互,并為自動駕駛系統(tǒng)生成不同類型的安全需求[50]。France[51]提出了用于分析人機交互(Human Machine Interface,HMI)的人類控制器模型STPA-Engineering for Humans,可以用于識別與人類行為相關的場景。該模型包括控制動作選擇,心智模型,心智模型更新3部分,如圖5所示。
人機交互設計好壞與駕駛員執(zhí)行駕駛?cè)蝿盏馁|(zhì)量直接相關,在駕駛員駕駛車輛執(zhí)行駕駛?cè)蝿諘r,交互受各種內(nèi)部和外部因素影響[52]。對汽車HMI的評價主要使用3個基本標準[53]:可用性[54]、注意力分散[55]和駕駛員可接受性[56]。以上的3個基本標準構(gòu)成了車輛HMI的評價體系,HMI的設計也往往圍繞著這3點展開。HMI通常使用聽覺和視覺反饋方法向駕駛員提供旨在傳達系統(tǒng)/車輛狀態(tài)或潛在危害情況的信息。SAE J3187提出了第3種反饋方法“觸覺”,并推薦在STPA方法的安全評估過程中使用觸覺作為反饋方法[41]。STPA可以將駕駛員作為功能元素加入控制結(jié)構(gòu)中,進而更系統(tǒng)地分析不安全控制行為和相關致因場景,得到相應安全需求并對車輛HMI進行更新,改善人機交互體驗。將STPA應用于人機交互,可以使分析人員識別人類操作員對當前流程狀態(tài)、行為和環(huán)境的認知,及其與心智模型更新的可能組合。這有助于分析人員識別未知事故的原因,同時方便向上追溯,增強了系統(tǒng)的可維護性[76]。
Koelln[57]將STPA用于分析SAE 4級的人機交互系統(tǒng),通過在車輛系統(tǒng)范圍內(nèi)以及在更高層次上的人機界面中進行安全分析,從而明確事故原因。Chen[58]使用STPA對一款處于開發(fā)階段的SAE 4級車輛中可能存在的不充分人機交互進行識別,說明了STPA在人機交互中的適用性。馬海濤[35]以自動車道保持系統(tǒng)(ALKS)的人機交互系統(tǒng)為研究對象,將STPA分析得到的結(jié)果作為后續(xù)接管策略設計和接管界面設計的依據(jù)。
綜上所述,STPA不僅可以用于提出自動駕駛系統(tǒng)整車級安全需求,還可以用于功能安全、預期功能安全、信息安全以及人機交互的設計與開發(fā)。該方法既可以滿足多種開發(fā)需求,也具備應用于自動駕駛系統(tǒng)全周期開發(fā)的能力。
3 STPA的集成應用
系統(tǒng)視角使STPA在對自動駕駛系統(tǒng)的安全分析中具有獨特的優(yōu)勢,如充分考慮系統(tǒng)交互與組件交互、可以納入人為錯誤與外部干擾因素等。但作為一種安全分析方法,它在低層次部件失效的關注上仍有不足,也缺少對分析結(jié)果的驗證過程。通過STPA與其他安全分析方法的集成、STPA分析階段與驗證階段的集成,可以很好地對STPA的劣勢進行補齊,使安全分析過程更加高效。STPA的集成應用總結(jié)如表2所示。
3.1" STPA與其他安全分析方法集成
傳統(tǒng)的安全分析方法如FTA、FMEA、HAZOP往往關注低層次部件的故障行為,這使其適用于簡單的功能系統(tǒng)分析。STPA與傳統(tǒng)的安全分析方法具有各自的優(yōu)勢,因此二者的結(jié)合可以使安全分析更加全面。
最簡單的集成方法是使用STPA與其他安全分析方法分別對系統(tǒng)進行分析,最后結(jié)合分析結(jié)果,推導出系統(tǒng)的功能安全要求和附加安全要求[59]。還有的集成方法是將STPA與其他分析方法集成,例如馮浩[42]根據(jù)HAZOP引導詞定義STPA的不安全控制行為。Chen[60]提出一種集成STPA與FMEA的方法STPAFT,集成后的方法保留了STPA的優(yōu)勢,還可以進行風險評估,能夠獲得更詳細的因果因素,對系統(tǒng)的描述也更加清晰。
STPA也可以與多個安全分析方法集成,Capito[61]使用HAZOP和STPA步驟3分析車輛級危害,使用FMEA和STPA步驟4分析車輛整體安全。劉逸恒[62]使用HAZOP和STPA對AEB系統(tǒng)分別進行整車級危險識別,綜合STPA分析得到的因果場景和FTA的危險最小割集,最終得到主要失效成因結(jié)果。Christopher等[63]以通用常規(guī)液壓制動系統(tǒng)為研究對象,使用HAZOP和STPA步驟3方法進行危害分析,輸出車輛級別的危險列表,并根據(jù)ISO 26262定義為每個危險分配ASIL。隨后使用FMEA和STPA步驟4進行安全分析并推導安全需求。
通過STPA與安全標準流程的集成,可以為每個危害事件分配ASIL等級,實現(xiàn)風險評估[64]。陳君毅[29]提出一種結(jié)合STPA方法與現(xiàn)有安全標準流程的自動駕駛汽車安全分析方法,并將該方法應用于SAE L3級自動駕駛清掃車的自動駕駛控制單元。Post[64]使用HARA對潛在風險級別進行分類,并用HARA識別車輛級危害,用STPA識別不希望出現(xiàn)的控制措施。
3.2" STPA分析階段與驗證階段的集成
STPA往往存在著分析效果依賴于工作組成員經(jīng)驗、缺乏檢查STPA分析效果的驗證階段等缺點,通過使用其他工具或增加流程,可以有效地改進安全分析流程,得到更好的分析效果。
首先是STPA與測試驗證過程的集成,通過增加驗證過程使STPA分析過程更加模式化,也使其分析效果更加直觀,實現(xiàn)對STPA分析結(jié)果尤其是控制結(jié)構(gòu)更改結(jié)果的應用與驗證,有效提高安全分析的效率。Dakwat[65]將STPA與模型檢驗相結(jié)合,通過增加仿真和測試驗證過程,補充對不安全控制行為的識別,并驗證安全約束在減少危險場景上的有效性。Salehi等[66]將建模工具Event-B用于STPA步驟中,用以驗證設計是否滿足了安全需求。Abdulkhaleq[67]提出一個集成STPA與安全驗證的流程,首先通過STPA導出車輛軟件密集系統(tǒng)的安全需求,隨后構(gòu)建軟件控制器的安全行為模型,最后進行包括軟件測試和模型檢查的安全驗證。陳君毅[68]首先使用STPA對自動駕駛決策系統(tǒng)進行安全分析,隨后對分析結(jié)果進行策略設計與試驗驗證,最終得到有效的安全策略并由此改進系統(tǒng)。郭菲菲[69]將STPA用于分析全自動泊車輔助系統(tǒng),針對危害事件的觸發(fā)條件改進系統(tǒng)結(jié)構(gòu),最后通過硬件在環(huán)測試(Hardware-in-the-Loop,HIL)和實車測試實現(xiàn)驗證過程。
除了增加測試驗證過程,還可以使用其他工具更好地利用STPA安全分析的結(jié)果。王克克[70]使用STPA對信息系統(tǒng)風險評估行為STAMP模型進行安全分析,得到各個系統(tǒng)的安全性指標,并采用改進的AHP算法篩選風險評估行為安全指標體系里的重要指標因素。對于STPA步驟2里建立的分層控制結(jié)構(gòu),也可以使用其他工具將其可視化,從而更好地分析不安全控制行為。Abdulkhaleq[71]通過構(gòu)建一個有限狀態(tài)機來建模系統(tǒng)的動態(tài)行為,將系統(tǒng)狀態(tài)、控制動作和安全約束可視化,更好地識別并評估不安全控制行為。表2列出了STPA與其他安全分析方法和驗證階段集成的方法與具體作用。
綜上所述,STPA不僅能與傳統(tǒng)安全分析方法(如FMEA、HAZOP等)進行有效的集成,擴大應用范圍和應用場景,進而提升安全分析效率;還可以與自動駕駛系統(tǒng)的驗證過程進行集成,進而有機地連接自動駕駛系統(tǒng)開發(fā)的分析階段與驗證階段,完成自動駕駛系統(tǒng)開發(fā)工作的閉環(huán)。通過綜合利用STPA與相關分析與驗證過程,可以提升系統(tǒng)開發(fā)效率和系統(tǒng)安全性。
4 總結(jié)和展望
自動駕駛系統(tǒng)屬于軟件密集系統(tǒng),涉及“人-車-環(huán)境”多方面的影響因素。其失效模式除了功能安全領域的組件失效外,組件交互、人機交互、外部網(wǎng)絡攻擊、性能局限與功能不足的問題也與日俱增。STPA在預期功能安全和信息安全領域的適用性使其在自動駕駛領域具有應用前景,相較傳統(tǒng)安全分析方法,STPA具有可以在安全分析全周期應用、用于整車開發(fā)、能發(fā)現(xiàn)更多組件交互問題、更好分析人為錯誤、應對外部網(wǎng)絡攻擊等優(yōu)勢。然而其也存在發(fā)現(xiàn)部件可靠性方面問題能力不優(yōu)越、復雜度和成本高、缺乏后續(xù)驗證過程等缺點。在總結(jié)STPA在自動駕駛領域的應用之后,現(xiàn)對其提出以下展望。
(1)衍生更全面的安全分析方法
在自動駕駛領域,單獨使用STPA進行安全分析時會面臨對部件可靠性相關的危害關注不足和方法抽象等問題。STPA可以通過與其他安全分析方法的組合應用提高其在功能安全領域的分析質(zhì)量,與FTA、FMEA方法的集成也可以使分析可以更為具體,同時保留STPA的優(yōu)勢。未來可以以STPA為基礎,結(jié)合特定安全分析方法形成一套新的集成二者優(yōu)勢的安全分析方法。
(2)形成分析與驗證的閉環(huán)
使用STPA分析完畢之后,往往缺乏檢查STPA分析效果的驗證過程。將STPA與其他工具集成分析,包括測試驗證過程的加入和對控制結(jié)構(gòu)建模。驗證過程即仿真和模型檢驗,測試過程包括軟件測試、硬件在環(huán)測試(HIL)和實車測試。可以對STPA分析效果進行直觀的檢驗。同時還包括對控制結(jié)構(gòu)建模等方法,使系統(tǒng)不再抽象,更好地識別不安全控制行為。未來可以通過將STPA與相應工具集成,形成安全分析與驗證的完整鏈條。
(3)豐富STPA應用范圍
STPA不僅可以用于自動駕駛系統(tǒng)的開發(fā),還可以用于整車開發(fā)。由于STPA對系統(tǒng)間交互的關注和其能夠適用于全開發(fā)流程,不斷迭代更新,所以其在整車開發(fā)領域具有天然的優(yōu)勢。其在汽車開發(fā)中的應用前景不應僅限于單一系統(tǒng),可以擴大其應用范圍至全周期和全車開發(fā)。
參考文獻