麥海波
(中國民用航空飛行學院,四川廣漢,618307)
飛機健康管理(Aircraft health management,AHM)系統(tǒng)的驗證與確認(Verification and validation,V&V)是一個復雜的技術(shù)難題,但是為了確保AHM系統(tǒng)的穩(wěn)定、可靠,這個過程不可或缺。AHM系統(tǒng)的V&V需要從兩個主要方面入手。其一,AHM系統(tǒng)的本身;其二,AHM系統(tǒng)的實施。AHM系統(tǒng)需要按照AHM的需求來進行搭建,例如,AHM系統(tǒng)要在給定時間內(nèi)作出具有特定置信度的響應。AHM系統(tǒng)的實現(xiàn)需要融合多種技術(shù)手段,包含數(shù)據(jù)分析處理、故障診斷與隔離、基于人工智能的狀態(tài)評估與計劃等。這里主要研究AHM系統(tǒng)V&V的內(nèi)部與外部的影響以及由這些影響帶來的技術(shù)難題。
商用飛機上的軟件是由美國聯(lián)邦航空局(Federal Aviation Administration,簡稱FAA)來認證的,依據(jù)文件為RTCA公司的DO-178B。文獻[1]解釋了RTCA公司的DO-178B文件。文中描述了DO-178B的意圖以及合理性,同時討論了DO-178B與美國聯(lián)邦法規(guī)之間的關(guān)系。
DO-178B規(guī)定軟件的驗證過程應包含以下幾個方面:
a.軟件開發(fā)過程的驗證
b.軟件開發(fā)周期內(nèi)的數(shù)據(jù)檢驗
c.軟件的功能驗證
d.基于需求的測試與分析
e.穩(wěn)定性測試
f.結(jié)構(gòu)包容性分析
2004年7月8日,NASA頒布了NASA-STD-8719.13b來對軟件系統(tǒng)進行驗證。2009年11月11日,對該文件進行了更新,發(fā)布了最新版的替代文件NPR 7150.2A。這種V&V方式與認證手段與其他領(lǐng)域的類似。
NASA機器航天器的故障保護(Fault protection,簡稱FP)軟件是一種特殊的健康管理系統(tǒng)。該系統(tǒng)在兩個方面超越了普通的健康管理系統(tǒng),具有推理能力和自我修復的能力,不是簡單的避免故障。
理想狀態(tài)下,航天器的FP開發(fā)程序始于故障樹分析(FMECA)的,然后故障分為需要進行故障保護的和無需進行故障保護的。一旦故障保護設定完畢,按照要求規(guī)定地面測試硬件和軟件。
文件 NPR 8705.2B (effective date: May 6, 2009)規(guī)定了NASA Human-Rating Certification程序。Human-Rating Certification程序規(guī)定了航天系統(tǒng)在最大保證機組和乘客安全(不導致機組或乘客失望或永久性殘廢)的工程條件、健康條件、安全條件等。NPR文件涵蓋了多方面的認證,其中包含軟件系統(tǒng)的認證。
AHM系統(tǒng)中包含重要軟件,故需要進行條件性測試。然而,AHM系統(tǒng)中的重要軟件需要面臨多種挑戰(zhàn)。無法得知所有的主要失效模式、不能完全理解故障模式的特性、故障模式的綜合多變等使得AHM系統(tǒng)的V&V面臨嚴峻挑戰(zhàn)。
為了解決V&V可行性問題,需要從使用條件、標準等方面入手。如果AHM系統(tǒng)的V&V缺乏可行性,則需要修改V&V測試條件。
實現(xiàn)AHM系統(tǒng)的高等級可靠度充分性是現(xiàn)存標準面臨的又一問題。即便是最嚴格的結(jié)構(gòu)等級測試-MCDC也不能完全實現(xiàn)對軟件實際應用的測試。為了實現(xiàn)全面的測試,采用了“路徑”覆蓋的方式,使用代碼來測試每個獨立順序的執(zhí)行。
與常規(guī)系統(tǒng)軟件相比,AHM系統(tǒng)軟件的非常規(guī)結(jié)構(gòu)會給測試來來進一步挑戰(zhàn)。AHM系統(tǒng)軟件有時采用一些人工智能技術(shù),如推理機與推理模型等,這樣常常導致軟件更加復雜。
AHM系統(tǒng)必須能夠正確的反應出故障情況,禁止虛警的發(fā)生。這就要求AHM系統(tǒng)能夠?qū)⑤斎氲牟淮_定數(shù)據(jù)輸出為更為確定的信息和決策。例如,AHM系通過需要從相關(guān)用于監(jiān)控的傳感器失效中區(qū)分出發(fā)動機故障。因此,AHM系統(tǒng)的算法要非??煽浚趯嶋H應用中才能更加穩(wěn)定。
AHM系統(tǒng)要對自身系統(tǒng)軟件的健康狀態(tài)負責。軟件的故障與硬件設備的故障通常不同步,故需要AHM系統(tǒng)能夠識別出潛在的軟件失效情形。傳統(tǒng)的方法是通過陷阱碼來粗略的找出軟件自身的故障。N版編程技術(shù)推薦通過軟件的冗余來查找出軟件自身的失效[2]。研究人員Knight與Leveson的實驗表明,從N版編程技術(shù)收益甚小,成本是常規(guī)軟件開發(fā)的2倍甚至更多[3]。
為了診斷出軟件本身的故障,研究人員提出了對應于規(guī)定屬性的軟件執(zhí)行時間行為,如果不符合其中規(guī)定,然后反饋給AHM系統(tǒng)。
AHM系統(tǒng)大都采用分等級組成與基于模型的推理共同作用的框架體系。分等級組成有助于V&V的實現(xiàn),可以分別針對每個層次、子系統(tǒng)進行V&V[4]。
基于模型的AHM系統(tǒng)是把系統(tǒng)分為可重復利用的推理機系統(tǒng)模型。推理機本身是軟件中重要組成部分,故需要對推理機的正確性進行驗證。
不論系統(tǒng)采用何種框架體系,AHM系統(tǒng)的V&V都要求其核心算法的正確性,同時AHM系統(tǒng)也要經(jīng)得起傳統(tǒng)軟件可靠性過程技術(shù)的檢驗和測試[5]。
為了AHM系統(tǒng)能夠?qū)崿F(xiàn)推理的功能,這些模型要具有機器可操作性。同時V&V也可以從機器可操作性模型中獲益[6]。
目前興起了多種用于AHM系統(tǒng)的V&V技術(shù)。但這些技術(shù)是通過手工的方式應用于傳統(tǒng)軟件的V&V,導致整個過程非常耗時,故只能應用于非常重要的軟件模塊中。傳統(tǒng)的測試技術(shù)可以利用這些模型的可用性。例如,Blackburn等人提出的自動測試模型,應用到了火星極地登陸者軟件系統(tǒng)的開發(fā)中[7]。
為了診斷系統(tǒng)的健康狀態(tài),許多AHM系統(tǒng)要預設適當?shù)募m正措施,使系統(tǒng)從不健康的狀態(tài)變?yōu)榻】怠;谀P偷募夹g(shù)在計劃與執(zhí)行階段起到非常重要的作用。計劃中用到的人工智能技術(shù)具有相同的推理機和模型結(jié)構(gòu),故與診斷系統(tǒng)面臨同樣的V&V挑戰(zhàn)。軟件系統(tǒng)的V&V要確保指令執(zhí)行與故障保護按照預定要求執(zhí)行。Verma等人從理論上研究了制定可執(zhí)行計劃的可驗證性[8]。Brat等人將一些驗證工具應用于火星登陸機器人上,并記錄的應用效果[9]。
研究AHM系統(tǒng)軟件本身的故障與失效具有重要的意義,可以提高AHM系統(tǒng)軟件的可靠性。通過風險分析的方法來識別AHM系統(tǒng)軟件的易損點已經(jīng)得到了廣泛的應用,同時還有軟件故障模式影響、重要度分析((SFMECA)以及軟件故障樹分析[10,11]。目前研究工作主要集中于綜合這些方法將軟件故障的概率分析轉(zhuǎn)到定量分析上來[12,13,14]。
在AHM系統(tǒng)工作的同時進行其軟件故障的監(jiān)測對AHM系統(tǒng)是非常重要的。Delgado等研究人員對軟件運行時間內(nèi)故障監(jiān)測進行了研究[15]。Drusinsky and Watney將其成果應用到了航天系統(tǒng)中[16]。
飛行硬件的開發(fā)基于需求驅(qū)動的基礎(chǔ)之上,包括飛行的能力、性能、物力特性等。在硬件開發(fā)過程中,為了滿足設計需求,要進行前期的設計驗證與后期的硬件測試。在進行環(huán)境測試前,要對AHM系統(tǒng)進行一個基本的功能驗證。同時,功能測試也常常穿插在環(huán)境測試中。
系統(tǒng)級的功能測試通常在集成階段初期使用工程模型或子系統(tǒng)硬件來完成。測試平臺常常被用于系統(tǒng)功能測試中,飛行硬件可以通過測試平臺來驗證,確保其具有合適的界面與硬件保護。
AHM系統(tǒng)中大量的傳感器都是工作在惡劣的環(huán)境條件下,AHM系統(tǒng)必須具有傳感器容錯功能。傳感器的選型、鑒定以及安裝都是降低傳感器故障率的重要因素。AHM系統(tǒng)應該具有實時校正傳感器讀數(shù)以及診斷傳感器故障的功能。傳感器故障探測、隔離以及處理的研究領(lǐng)域有兩大趨勢。
4.2.1 物理冗余度
傳統(tǒng)的飛行控制系統(tǒng)中通常有3-4套傳感器網(wǎng)絡,進而來提高系統(tǒng)可靠度,使其達到認證的標準。物理冗余技術(shù)基于投票和中間值選擇框架。顯然,質(zhì)量、能量、體積以及成本的消耗是物理冗余面臨的困境。
4.2.2 分析冗余
目前研究人員主要集中研究分析冗余技術(shù),包括多模型卡爾曼濾波算法、廣義似然比值算法、序列概率似然比值測試以及最大似然值探測器等。這些技術(shù)都具有連續(xù)監(jiān)測傳感器的功能。通常,由于系統(tǒng)本身或噪聲的原因,使得信號具有不確定的模式。然后,當傳感器失效時,分析冗余系統(tǒng)就會在線或離線的計算出輸出值的偏離值,從而保證傳感器輸出的可靠性。
顯而易見,AHM系統(tǒng)的V&V需要綜合多種技術(shù)手段。傳統(tǒng)的測試手段對于AHM某些層面的功能測試是可行有效的,然而隨著人工智能技術(shù)的應用,如不確定推理、任務計劃以及再計劃等,這些都給傳統(tǒng)V&V技術(shù)帶來了挑戰(zhàn)。最顯著的是,人工智能技術(shù)將清晰明確的基于模型的推理算法應用于非常復雜的軟件系統(tǒng)中,但是模型的好壞直接影響其V&V的效果。巧妙的是,基于模型的推理可以被一些V&V技術(shù)平衡,尤其是基于分析的方法。
AHM系統(tǒng)提高了飛機的可靠性。為了達到此目的,AHM系統(tǒng)必須要正確的評估系統(tǒng)本身的狀態(tài),包括系統(tǒng)本身的故障以及傳感器的失效。故AHM系統(tǒng)必須是飛機中最可靠的系統(tǒng)之一。以上需要考慮的因素加上一些AHM系統(tǒng)采用了非傳統(tǒng)構(gòu)架,都會對現(xiàn)有的V&V以及認證標準和措施提出挑戰(zhàn)。
總之,通過改進AHM系統(tǒng)的V&V和認證程序來普及AHM系統(tǒng)應,開發(fā)AHM系統(tǒng)的V&V與認證完美結(jié)合的技術(shù),使其適應AHM系統(tǒng)的框架體系以及飛機系統(tǒng),進而指導成熟的V&V技術(shù)的出現(xiàn),這都是今后研究的主流方向。