为什么SOTIF(ISO/PAS 21448)是自动驾驶安全的关键

创提信息
2022/05/25

分享到

SOTIF(ISO/PAS 21448)是为了解决自动(和半自动)汽车软件开发人员所面临的新安全挑战而制定的。这一点尤其重要,因为人工智能(AI)和机器学习在自动驾驶汽车的发展中发挥着关键作用。
 
在这里,我们将阐释什么是SOTIF以及其不同部分。


本文将包含如下几个部分:
 
     • 什么是ISO 21448?
 
     • 为什么SOTIF(ISO/PAS 21448)很重要?
 
     • SOTIF(ISO/PAS 21448)与ISO 26262有何关联?
 
     • SOTIF(ISO/PAS 21448)如何帮助确保自动驾驶功能安全?


什么是SOTIF?
 
SOTIF是指预期功能安全(Safety Of The Intended Functionality)-- ISO/PAS 21448。


什么是SOTIF(ISO/PAS 21448)?
 
SOTIF(ISO 21448)适用于需要适当的态势感知以确保安全的功能。该标准关注的是在没有故障的情况下,确保预期功能安全——SOTIF。这与传统的功能安全形成了对比,传统的功能安全关注的是降低系统故障带来的风险。
 
该标准提供了设计、验证和确认方法方面的指导。应用这些标准可以帮助您在没有故障的情况下实现安全。
 
以下是SOTIF(ISO 21448)提供的一些示例:
 
    • 设计方法示例包括对传感器性能的要求。
 
    • 验证方法示例包括具有高覆盖率场景的测试用例。
 
    • 确认方法示例包括模拟。
 
使用静态代码分析工具可以轻松地应用SOTIF(ISO 21448)。


为什么SOTIF很重要?
 
因为验证自动化系统是困难的。
 
自动化系统有大量的数据,这些数据被提供给复杂的算法。人工智能(AI)和机器学习对开发这些系统至关重要。
 
为了避免潜在的安全隐患,人工智能(AI)需要做出决策。这包括需要态势感知的场景。
 
使用SOTIF(ISO 21448)将是确保人工智能(AI)能够做出决策并避免安全隐患的关键。


示例:SOTIF(ISO 21448) 适用于何处
 
SOTIF(ISO 21448)适用于系统无故障时发生的安全违规。
 
以下是一个态势感知的示例。
 
路面结冰了。基于人工智能(AI)的系统可能无法理解这种情况并做出适当的反应。这将影响车辆的安全运行能力。如果没有感知到路面结冰情况,自动驾驶汽车可能会以超出安全范围的速度行驶。实现SOTIF(ISO 21448)意味着考虑到这种情况,并基于概率做出决策。
 
SOTIF(ISO 21448)的目标是减少潜在的、未知的、不安全的条件。然而,这个定义非常宽泛,很难说明您已经考虑了所有可能的边缘情况。


ISO 21448与ISO 26262有何关联?
 
ISO 26262涵盖了系统发生故障时的功能安全,不包括系统无故障时产生的安全隐患。因此,需要SOTIF(ISO 21448)。
 
事实上,SOTIF(ISO 21448)最初只是ISO 26262:Part 14。因为在系统无故障的情况下确保安全是非常复杂的,所以SOTIF(ISO 21448)现在仍然是一项独立的标准。


ISO 26262 vs. ISO 21448
 
ISO 26262仍然适用于现有的、已建立的系统——如动态稳定控制(DSC)系统或安全气囊。对于这些系统,通过降低系统故障的风险来确保安全。
 
SOTIF(ISO 21448)适用于紧急干预系统和先进驾驶辅助系统等系统。即使没有系统故障,这些系统也可能存在安全隐患。
 
因此,SOTIF(ISO 21448)是对ISO 26262的补充。


SOTIF如何帮助确保自动驾驶功能安全
 
安全一直是汽车软件开发的关键。确保功能安全仍然是自动驾驶的关键。
 
为了能继续开发安全的软件,开发团队需要做到以下几点:


1. 使用安全的开发流程
 
人工智能(AI)和机器学习面临的最大挑战之一是安全。在网络安全和人工智能(AI)方面有很多需要考虑的问题。本文涵盖了获得安全和隐私权的基础知识。
 
下面是关键安全开发流程的三个示例:
 
    1. 良好的编程实践和全面的测试工作对消除安全漏洞至关重要。这可以通过使用安全的编码标准来实现。
 
    2. 威胁建模和风险规避是开发安全组件的关键。这可以通过进行危害和风险分析(HARA)来实现。
 
    3. 对构建/发布环境的控制是防止黑客入侵和保证构建安全的关键。这可以通过CI/CD环境中的访问控制来实现。


2. 将自动化应用于设计、验证和确认
 
人工智能(AI)、机器学习、自动驾驶汽车,汽车软件开发人员在努力开发安全的软件时,需要担心的事情很多。
 
将自动化应用于设计、验证和确认流程可以使开发团队更加高效。
 
SOTIF(ISO 21448)给出了以下示例(前文已列出):
 
    • 设计方法示例:包括对传感器性能的要求。
 
    • 验证方法示例:包括具有高覆盖率场景的测试用例。
 
    • 确认方法示例:包括模拟。
 
使用需求管理工具可以帮助您实现传感器性能的需求。这有助于提高汽车嵌入式软件设计的安全性。
 
使用测试用例管理工具可以帮助您确保不同场景的高覆盖率,这有助于软件验证。
 
使用静态分析工具可以帮助您模拟分析查找潜在的运行时错误。这有助于软件确认。


3. 遵守功能安全标准
 
SOTIF(ISO 21448)对自动驾驶的功能安全而言至关重要。但是,遵守现有的功能安全标准仍然很重要,尤其是ISO 26262。
 
为了确保自动驾驶汽车软件的安全性,仍需要遵循ISO 26262中基于ASIL的最佳实践和建议。


通过Perforce确保自动驾驶功能安全
 
如果没有合适的工具,确保代码在功能上是安全的会很困难。通过使用Helix QAC,您可以轻松地运用编码标准来验证您的代码是否符合特定的安全标准指南。
 
注册申请免费试用 ,以体验Helix QAC确保代码功能安全的操作是多么简单。