雷锋网 AI 科技评论按:日前,哈工大朱晓蕊教授等人在中国工程院院刊《信息与电子工程前沿》(英文)(Frontiers of Information Technology & Electronic Engineering,FITEE)上发表了一篇题为《针对无人机系统安全的新型层级式软件架构》(A new hierarchical software architecture towards safety-critical aspects of a drone system)的论文,提出一种覆盖底层源代码到上层用户任务代码的新型层级式软件架构,能够有效地提高无人机系统安全性与可靠性。
目前,对于基础技术日趋成熟的无人机领域来说,无人机系统的安全性还是一个欠缺关注的研究方向,然而,这一研究方向对于无人机未来发展而言至关重要。因而,朱晓蕊教授等人在这一方向上的研究颇具前瞻性,其工作成果也独具开创性意义。雷锋网 AI 科技评论借此机会拜访了朱晓蕊教授,深入探讨了其开启这项工作的背景、研究历程以及对于无人机领域的一些思考。
实际上,在无人机系统安全这个项目之前,朱晓蕊教授的研究方向主要是无人机控制和导航,而之所以转到无人机系统安全的研究则源自于她与耶鲁大学邵中教授一次对话中受到的启发:系统安全会成为无人机等小型智能系统未来的一个重要问题。
2014 年底,朱晓蕊教授在与来自耶鲁大学的邵中教授进行学术交流的过程中,了解到邵中教授一直在进行安全操作系统方面的研究,并在这个领域处于国际最前沿。而当时还在专注于无人机控制、导航研究的朱晓蕊教授,意识到她此前所做的这些研究工作实际上都已经趋向成熟,正在思考无人机未来的研究方向,邵中教授的这一研究方向则带给了她一个新的研究思路。朱晓蕊教授在采访中分享到:「他正在做这项工作就提醒了我,无人机这类小型智能系统的安全问题,会成为未来一个比较重要的问题 」。
然而,当时甚至是现在,无人机领域对于安全性问题的关注度都比较少。对此,朱晓蕊教授指出:「需要注意的一点是我们研究的基本上是小型飞行器,而小型飞行器和大型飞行器的区别是非常大的。光就安全性而言,大型飞行器很早就按照 Safety Critical System 启用了标准度很高的 系统安全验证,虽然在安全验证方面的人力、物力的耗费量都非常巨大,但是它们的一个小小的安全问题就可能带来非常严重的后果,因而即便投入巨大,大家也不得不关注这一问题。然而对于小型飞行器的安全验证问题,目前领域内国际上只有极少数研究者开始尝试去做这些事情,因为这是一个全新的东西,一切都从新开始。」
正是基于上面的两点考量,朱晓蕊教授决心要成为「第一批吃螃蟹的人」,与邵中教授开启了无人机系统安全的研究项目。
「当无人机这类智能系统进入到民用领域后,就不可避免地走向小型化,就会在片上资源方面牺牲掉很多的性能,因此直接将大型飞行器的安全验证系统移植到小型飞行器上是不可行的,所以我们就需要设计一个新的软件架构,既保证小型飞行器理论验证消耗不会那么高,又能够保障系统的安全性。传统而言,新系统研发是通过反复地模拟和实际测试来确保系统可靠性和安全性的。但是这种方式从严格意义上是无法完全保证安全性的,会出现看似随机的一些故障,甚至引起飞机坠毁现象。」
同时,为了促成双方正式将无人机系统安全项目提上重要日程,朱晓蕊教授和邵中教授也特地正式申请了国际合作项目。
按照朱晓蕊教授的说法,研究上层系统的人通常并不关注底层系统的细节,只在需要的时候直接使用底层系统,而反过来,研究操作系统的人往往也很少考虑上层系统的情况。因此,无人机等智能系统的上层系统和底层操作系统之间相当于存在一块「隔板」,二者间往往只存在最基本的互动。
「这样的话,这两个方向的研究者在进行安全测试时,往往只测试各自系统内的交互情况,然而这样仅仅只能确保系统内的安全性,而不能保证上层系统在跟底层操作系统做交互的时候不会出现问题。因此,我们合作这个项目的思路就是要将这两个系统中间的这块隔板打开,将二者作为一个整体来设计软件架构,从而完全保证无人机系统的安全性。」
对于这项工作成果在保障无人机整体安全性上的具体工作原理,朱晓蕊教授介绍道:「我们将所有算法形成的代码设计成分层结构,同时设计好层与层之间的交互架构,然后使用形式化验证的方法去检测层与层之间交互的正确性。」
形式化验证是采用逻辑来验证程序可靠性的一种方法,即用逻辑的方法将一段程序证明一遍,证明它能得到预期的结果并且没有出现错误,例如,欧美国家就将这种验证方法广泛地应用于一些大型飞行器中,由于这些设备的系统一旦出现出现错误,导致的后果会非常严重,同时研究者又无法对其进行一遍一遍的测试,因而形式化验证是可以选择的非常不错的方法。
因此,朱晓蕊教授项目组的这项研究成果不仅以实现上层系统和底层操作系统的层级式互动的方式来保障系统整体的安全性,更从逻辑层面避免了人为测试中所存在的偶然性,保障了安全性和可靠性。而同时从这两个方面着手展开(小型)无人机系统安全测试工作的,朱晓蕊教授等人是首创者。
实际上,无人机系统安全这个合作项目在 2014 年底就启动了,然而一直到现在才出成果,朱晓蕊教授表示背后的原因主要有两点:
一是合作项目的人员投入以及相关人员的时间投入都非常紧缺。一般而言,朱晓蕊和邵中两位教授每年大概各自投入 1 到 2 名研究生,再加上学生推进相关研究工作的时间有限,因而整个研究的推进节奏是比较慢的。
二是交叉学科之间对于彼此学科的理解难度以及研究理念上的差异。「这也是我们在合作研究中遇到的一个比较大的挑战,我和邵中老师以及我们各自的学生,研究方向其实是不同的,我们是典型的交叉研究领域,因此我这边的学生需要去了解很多操作系统方面的东西,邵中老师的学生同样也需要重新理解上层系统的相关知识,所以他们彼此都要花很多时间去学习这些知识,这中间其实也耗费了非常多的时间。」
此外,朱晓蕊教授还提到了她这边存在的一个比较严峻的问题,就是在现行的培养体制下,一方面是由于研究生培养年限比较短,另一方面则是因为学生对于新事物的热情和好奇心也不够,畏难心理比较明显,因此她这边参与项目的学生更替很快,这样的话,轮到下一批加入的学生,他们又要去学习操作系统方面的知识,这就又需要耗费一个周期的时间了。
谈及至此,朱晓蕊教授也就目前国内高校学生存在的一些问题提出了两点自己的期望:
第一是增强自身对学术科研的热爱和好奇心,减少学术功利性。「实际上现在很多学生不是因为热爱才去做科研,所以他们往往会以企业需要求职者拥有怎样的技能为衡量标准来做项目,功利性比较强。这样的心态一方面让他们在遇到困难时就会产生畏难心理,另一方面他们一旦拿到比较好的 offer 就倾向于选择去就业,这些因素都会导致他们无法进行深度科研。」
第二是要有自己的独立思考和判断能力,不要盲目跟风追热点。「现在很多学生都在跟热点做研究,我觉得最关键的原因是他们没有判断力,无法独立思考目前领域发展中重要的方向,同时也缺乏对自己的判断和思考,因此跟热点是一种相对来说比较安全的方式。但是现在以及未来,整个社会的变化都非常快,因此现在即便是热点,过段时间说不定就冷掉了,而一些冷门的方向说不定到某个时间就发展起来了。」
也正是基于这种期望,朱晓蕊教授在日常教学中也始终坚持引导学生树立正确的研究思路:「所以我也一再地跟我的学生强调,我要教给他们的是一套系统的做科学研究的方法论,是怎样从零或一个 idea 开始做出一套有说服力的成果的方法,让他们最终在毕业答辩的时候能够自信地将自己做出来的这些成果讲给别人听,而不是说一定局限在课题所涉及的特定研究领域。」
对于无人机系统安全研究的这一版研究成果,朱晓蕊教授表示,目前还没有达到最理想的状态,因此下一步的规划还是希望参与研究的学生能够再花半年到一年左右的时间,实现该方案的最佳效果。
「下一步,我们会利用虚拟化技术来完善无人机系统安全方案,具体来说就是用虚拟化技术来将智能系统中对安全重要和对安全没那么重要的部分隔开来,从而减少不必要的安全验证消耗 。以无人机为例,它其中的某些模块对于安全来说至关重要,一旦出现问题,可能会直接导致无人机停止运行(从空中掉下来);而其中也有部分模块对安全性而言不那么重要的,例如一些第三方程序,对于飞机整体的安全性不会造成太大影响,就不需要付出代价去证明这部分模块的安全性。因此,大概再花一年左右的时间,整个安全方案就比较完整了。」
同时,朱晓蕊教授希望,这一系统安全性验证方案不要被局限于无人机。「它同样可以给其他小型智能系统包括无人驾驶带来很大的价值。实际上,这个方案如果应用到无人驾驶这些场景中,实现原理其实还是一样的,只不过需要针对这一套系统进行修改和调整,因此说,我们实际上提出的是一套可以广泛应用的方法论。」
而对于目前每年只能各自投入 1 到 2 名学生的耶鲁合作项目来说,人手同样是一个亟需解决的问题,因此扩充科研队伍同样也是下一步规划中的重要内容。
「本次之所以希望通过媒体来报道这项成果,主要也是有两个诉求:第一个就是希望更多对这项研究感兴趣的人能够加入到我们的研究队伍中来,从而更快地推进项目进度;第二个就是希望我们在无人机系统安全方面的这项研究成果能给相关领域研究者带来一些启发,启发他们去挖掘领域内目前还未受到较大关注但对未来而言至关重要的研究方向。」
学界和业界应该怎么分工?
朱晓蕊教授认为,学界和业界由于各自的性质以及承担的社会责任不同,分工也不尽相同,如果二者能够各司其职,形成一个非常良性、平衡的合作状态,对于无人机以及整个人工智能领域的发展会大有裨益。
「对于学界而言,首先一定要做一些超前的事情,在一些业界乃至整个研究领域还没有关注到的问题上,先要尝试着去开展研究工作,所有的研究工作往往在获得成功之前都要经历一个漫长的过程,所以,学界应该充当这个引路者的角色;其次,我认为学界的价值是提出一些能够对业界具有启发性意义的新的 idea,正如我之前所提到的,我们的研究实际上更像是提出了某一套具有普遍适应性的新方法,业界可以借鉴,并在我们的新思路和新方法上进行完善,从而最终与真正的应用场景实现对接。
而对于业界来说,他们需要做的便是将学界提出的新方法、新成果落地到各个细分应用场景中,并利用其丰富的人力、物力资源来推进某项成果不断完善和升华,最终对整个社会的实际发展负责。」
无人机领域的最终目标为何?
对于目前无人机领域的整个发展情况,朱晓蕊教授还是比较有信心的,她认为在技术层面,无人机的通用性已经做得相对来说比较成熟的,接下来要着重解决的就是产业化落地的问题。
「目前就我看来,无人机领域在基础技术方面都不错,就差在细分行业中有针对性地应用了。因为不同的细分行业对于这些基础技术都有特殊且具体的要求,因此我认为这其中还有很多可以挖掘的东西。当技术和市场、成本达到一个平衡的状态时,无人机领域差不多就是一个比较理想的状态了。」
论文:《针对无人机系统安全的新型层级式软件架构》
作者:朱晓蕊,梁辰,殷振国,邵中,刘孟启,陈昊
中文摘要:本文提出了一种覆盖从底层源代码到上层用户任务代码的新型层级式软件架构,用于提高无人机系统的安全性与可靠性。在这种软件架构下,每一个软件模块采用形式化验证的方法验证其源代码符合设计规范,而且这些软件模块基于经过形式化验证的操作系统内核CertiKOS,因而从理论上保证无人机系统不存在软件漏洞。考虑到无人机的机载传感器会对系统可靠性产生显著影响,本文对驱动传感器的SPI总线与I2C总线进行形式化验证,并针对总线异常的情况设计完成相关实验。实验结果表明此类软件架构能有效提高无人机系统安全性与可靠性。
关键词:安全关键系统;无人机;软件架构;形式化验证;
本文引用格式:
Xiao-rui Zhu, Chen Liang, Zhen-guo Yin, Zhong Shao, Meng-qi Liu, Hao Chen, 2019. A new hierarchical software architecture towards safety-critical aspects of a drone system. Frontiers of Information Technology & Electronic Engineering, 20(3): 353-362.