4. 场景基础理论
好,咱们进入第4章。前面聊了SOTIF的总体思路和场景分类,今天要啃一块硬骨头——功能不足(FUNC)和它的触发条件。
说实话,我见过不少团队在分析SOTIF时,把“功能不足”和“系统失效”混为一谈。结果呢?分析报告写得厚厚一本,但真正该解决的问题一个都没抓住。这章咱们就把这事彻底掰扯清楚。
4.1 功能不足(FUNC)到底是什么?
先给个定义:功能不足(Functional Insufficiency,FUNC),是指系统在设计阶段就存在的、导致其无法正确应对特定场景的固有缺陷。
注意关键词——“固有缺陷”。它不是硬件坏了,也不是软件跑飞了,而是设计本身就不够用。
核心区别:
- 功能不足(FUNC):设计时就没考虑周全,或者考虑错了。比如算法没识别出横穿马路的行人。
- 系统失效(Systematic Failure):设计是对的,但实现时出了bug。比如代码写错了导致功能中断。
我举个例子你就明白了。几年前我参与一个AEB项目,测试时发现车辆在雨天对前方静止车辆的制动距离明显变长。一开始大家以为是传感器故障,查了半天,发现传感器本身没问题。最后定位到——算法模型在训练时,雨天的样本太少,导致它对雨滴噪声的过滤能力不足。这就是典型的功能不足,不是硬件坏了,是设计没做好。
4.2 触发条件:谁把FUNC“叫醒”了?
功能不足本身是“沉睡”的。它不会无缘无故导致事故,必须有一个触发条件把它激活。SOTIF把触发条件分成两类:系统触发条件(STC)和环境触发条件(ETC)。
我个人习惯用一个比喻来理解:
- FUNC = 一把锁的锁芯设计有缺陷
- STC = 有人用了一把错误的钥匙去开
- ETC = 这把锁被放在潮湿环境里,内部生锈了
你看,锁芯缺陷是固有的,但只有在特定钥匙(STC)或特定环境(ETC)下,问题才会暴露。
4.2.1 系统触发条件(STC)
STC 指的是系统自身状态或操作引发的触发条件。说白了,就是“系统自己把自己逼到了墙角”。
常见的STC包括:
| STC类别 | 具体示例 | 关联的FUNC |
|---|---|---|
| 传感器退化 | 摄像头镜头脏污、雷达天线罩结冰 | 感知算法对退化信号的鲁棒性不足 |
| 系统模式切换 | 从高精地图定位切换到纯GPS定位 | 定位融合算法在切换瞬间的置信度评估不准 |
| 执行器饱和 | 转向系统达到物理极限,无法继续增加转角 | 路径规划未考虑执行器限位 |
| 计算资源过载 | 多传感器数据同时涌入,CPU占用率100% | 任务调度策略未做优先级管理 |
我的经验:分析STC时,别只盯着“正常”状态。多想想“边界”状态——传感器快不行了、系统快超载了、模式刚切换完。这些地方最容易出问题。
4.2.2 环境触发条件(ETC)
ETC 则是来自系统外部的触发条件。包括天气、光照、道路环境、交通参与者行为等。
常见的ETC有:
- 天气:暴雨、大雾、雪、冰雹
- 光照:逆光、隧道出入口的明暗突变、夜间无照明
- 道路:施工区域、车道线磨损、急弯、陡坡
- 交通参与者:行人突然横穿、非机动车逆行、大型车辆遮挡
嗯,这里要注意:同一个ETC可能触发多个不同的FUNC。比如“逆光”这个ETC,既可能触发摄像头曝光参数调节的FUNC,也可能触发车道线检测算法的FUNC。
4.3 FUNC、STC、ETC的三角关系
这三者不是孤立存在的。它们的关系可以用下面这张图来概括:
你看,FUNC是内因,STC和ETC是外因。没有FUNC,再恶劣的环境也不会导致SOTIF问题;没有触发条件,FUNC也永远不会暴露。
4.4 实战中的区分技巧
在项目里,我经常看到团队把STC和ETC搞混。这里分享几个我自己的判断方法:
避坑指南:我曾经在一个项目中,团队把“摄像头被泥水遮挡”归为ETC。但仔细一想,泥水遮挡是外部环境导致的,但摄像头是否具备自清洁功能、算法是否能处理遮挡,这是系统设计决定的。所以,“遮挡”本身是ETC,但“系统对遮挡的应对能力不足”才是FUNC。别把触发条件和功能不足搞反了。
判断STC还是ETC,问自己两个问题:
- 这个条件能被系统设计改变吗?
- 能 → 可能是STC(比如传感器退化,可以通过冗余设计改善)
- 不能 → 肯定是ETC(比如天气,你改变不了)
- 这个条件是系统内部产生的,还是外部强加的?
- 内部 → STC
- 外部 → ETC
4.5 一个完整的分析示例
咱们拿“自动紧急制动(AEB)在雨天误触发”来走一遍完整分析:
| 分析要素 | 内容 |
|---|---|
| 危害事件 | 车辆在无风险情况下突然紧急制动,导致后车追尾 |
| FUNC | 雷达目标检测算法对雨滴回波的过滤能力不足,将雨滴误判为障碍物 |
| STC | 雷达工作在“高灵敏度模式”(系统为了探测远处目标而主动提高增益) |
| ETC | 中到大雨,雨滴密度超过算法设计阈值 |
你看,这个分析把“谁的问题”分得清清楚楚:
- 算法过滤能力不足 → FUNC,需要改设计
- 系统主动提高增益 → STC,可以优化策略
- 下雨 → ETC,无法改变,只能适应
我的建议:做SOTIF分析时,先列出所有可能的ETC和STC,再反推它们可能激活哪些FUNC。这样不容易遗漏。我习惯用Excel建一个矩阵表,横轴是触发条件,纵轴是功能模块,交叉点填FUNC编号。一目了然。
好了,这一章的核心就是:FUNC是设计缺陷,STC是系统自找的,ETC是老天爷给的。把这三者分清楚,你的SOTIF分析就成功了一半。