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