1
本文作者: 新智驾 | 2018-05-29 16:22 |
雷锋网新智驾按:本文是英特尔中国研究院针对 Mobileye 所开发的一个名为 RSS(Responsibility Sensitive Safety)的责任敏感安全模型的技术解读,里面涉及到自动驾驶汽车的安全性问题以及自动驾驶事故的责任判定问题。该模型对于相关从业者来说有一定借鉴意义,雷锋网新智驾在此分享给各位。
另外,5 月 30 日,也就是明天,英特尔将携手国内大学、学术研究合作伙伴,共同宣布成立英特尔智能网联汽车大学合作研究中心。届时,英特尔无人驾驶解决方案首席工程师兼首席系统架构师 Jack Weast 将接受雷锋网新智驾的采访,聊一聊 RSS 模型和自动驾驶安全有关的话题。
提到英特尔的自动驾驶技术,你可能首先会想到 Mobileye。
Mobileye 于 2017 年被英特尔公司以 153 亿美元收购。作为开发高级驾驶辅助系统(ADAS)的全球先行者,其目标是开发和推广以视觉为主的自动驾驶技术。
基于多年在汽车辅助驾驶领域的成功经验,Mobileye 开发了一个名为 RSS (Responsibility Sensitive Safety) 的责任敏感安全模型,以期通过数学的方式来界定“安全状态”。在“安全状态”中,无论其他车辆做出任何反应,自动驾驶汽车都不可能引发事故。
当今社会对自动驾驶汽车的接受程度依赖于一个最重要的因素:技术开发者衡量风险,确保安全的能力。但是,绝对的安全并不存在。如下图所示,假设在高速路上,黄色车辆(自动驾驶)行驶在中间车道,突然右侧某辆车由于某种原因偏离当前车道并撞向黄色汽车。此时,黄色汽车无论是加速、刹车,还是躲避到其他车道都可能会引起碰撞。那么,黄色车辆是否可以采取有效的方法来躲避碰撞?我们该如何解决这个问题?
或许最直接的反应是不允许自动驾驶汽车进入这种场景,但这种场景在高速公路上很常见,不允许自动驾驶汽车支持这种场景就意味着自动驾驶汽车不可用。如果允许自动驾驶汽车在这种场景使用,绝对的“安全”就不存在。那么,我们所谓的安全是指什么呢?
目前业界比较常用的一种方法是通过已经测试了多少里程来从统计意义上证明安全。根据统计结果,目前人类驾驶汽车事故的死亡率是 10^-6 次/小时,如果想让社会接受机器代替人类驾驶,那么比较合理的假设是死亡率要降低 3 个量级,即 10^-9 次/小时。可是,要保证达到 10^-9 次/小时死亡率的安全性,大概需要 30 亿英里的测试数据,而且每次软件升级后都需要完成这个量级的测试,这显然是不可能实现的。因此,尝试使用数据驱动的统计方法来保证安全性,声称随着测试里程的增加而增加了安全性的说法并不严谨。
此外还有一种方法,被称作最佳装备论(Best Practice)。厂家宣称自己拥有最好的传感器、有冗余备份、高性能软件、充分的验证、足够多的里程……因此是“安全”的。但是,和里程统计论一样,这种方法也不能充分证明其安全性,还会让厂家走上军备竞赛的不归路,导致最终只是进行了一场昂贵的科学实验。
因此,Mobileye 提出了 RSS(Responsibility Sensitive Safety)模型,其目标是通过一些数学公式从理论上来保证自动驾驶汽车的安全行驶,并通过形式化以下人类驾驶中比较具有主观性的几个常识确保自动驾驶汽车永远不会主动导致事故发生,这些常识包括:
1、什么是危险情况?
2、什么是危险情况下的正确反应?
3、谁要对事故负责?
RSS 模型要达到的目标具有两重含义:
1、自动驾驶汽车本身不会导致事故(卷入事故和导致事故是完全不同的概念,如上文提到的例子,自动驾驶汽车可能卷入事故,但它不是事故的责任方);
2、自动驾驶汽车应该在其它车辆发生错误时做出正确反应。
RSS 要做的就是在事故发生前设定游戏规则,主要用于自动驾驶系统中的决策部分,可以让其它 OEM 厂家将此模型直接放入他们的决策系统,从而促进行业标准,提高自动驾驶的整体安全。
总的来说,RSS 通过形式化以下 4 个“常识”规则来确定“谁需要对事故负责”:
1、追尾不是前车的责任,后车必须保持足够的安全距离。
2、除非前车突然并线,红车突然插入黄车的车道导致追尾,责任在红车。
3、不要刻板地使用“路权”(“right-of-way”is given not taken)。如果某辆汽车违反了交通规则进入自动驾驶汽车拥有路权的道路,但自动驾驶汽车有足够的时间刹车避免事故,则它必须刹车,而不能由于自己的路权高而向前冲,否则就要承担责任。
4、小心被遮挡区域,小孩可能会被前车遮挡。
既然 RSS 是形式模型,就必须符合如下标准,才能被称之为一个好的形式模型:
合理性:当 RSS 模型认为事故中自动驾驶汽车没有责任时,它必须符合人类判断的常识
实用性:我们可以制定出一些不会导致事故的驾驶规则,即便事故发生,也可以明确不是自动驾驶车辆的责任。比较极端的做法是车辆一旦遇到意外情况就立刻停止,但是这种车是没用的,我们必须保证道路的通行能力。
安全距离
安全距离是指在最恶劣的情况下仍可以避免碰撞的距离。最恶劣的情况是指前车以最大刹车加速度开始刹车,后车发现后有一定的反应时间,并在反应时间内仍以最大加速度前进,然后改成以最小刹车加速度刹车,直到危险解除。因此,最小安全距离的计算公式如下:
参数:Vf 前车速度,Vr 后车速度,反应时间 ρ、最小刹车加速度 αmin,brake、最大刹车加速度 αmax,brake 以及最大加速度 αmax,accel
说明:
上述公式中的参数应该是法规制定的合理值;
人类驾驶汽车和自动驾驶汽车的参数可以不同。比如自动驾驶汽车的反应时间一般会比人类短,而且自动驾驶汽车可以比人类驾车的刹车更有效。因此,自动驾驶汽车的 αmin、brake 可以设置得更大些;
不同路况下可以设置不同的参数(湿滑路面、冰、雪等)。
相对行驶、横向移动等情况都会涉及不同的安全距离的计算方式,这里不再赘述。
路权
多条道路交叉或汇合时就会涉及到路权。有些道路的优先级高于其他道路,在这些道路上行驶的汽车就拥有路权。RSS 模型涉及到部分场景的解决方法,后期仍然需要扩展模型,并对安全距离的计算进行必要调整。
为了更好地理解路权,我们需要先定义一个名词:纵向顺序(Longitudinal Ordering),用来代表距离交叉点的直线距离。如下图所示,左图中,在纵向顺序上红车在蓝车前面,因为 Dred < Dblue;右图反之。
和上文提到的公式化安全距离一样,我们同样可以定义多道路交叉时的纵向安全距离。如下图所示,红车拥有路权,优先级高,那么蓝车必须在进入路口前的安全距离内进行刹车,从而保证红车正常行驶。
如前文所述,RSS 并不是刻板地以路权做为唯一判断,比如在下图中,蓝车来不及刹车闯入了红车的车道,红车也要采取刹车以避免碰撞。
甚至,RSS 模型还可以支持轻微横向位移来避免撞击,如下图所示:
行人和遮挡
对于行人,首先需要明确行人的路线和优先级。某些地方行人的路线很明确,如人行道或者交叉路口的斑马线。这些地方自动驾驶汽车在自己车道上行驶时,一般无需担心行人会突然闯进来,车有优先权,但是也必须遵循灵活运用路权的原则。
但在有些地方,如居民区内,行人路线不明确,这时必须谨慎驾驶,给行人更高的优先权。考虑到人类的反应时间大概是 500ms,最大加速度是 2m/s²(博尔特的加速度是 3.09m/s²)。那么,根据之前的公式,车辆与行人之间的安全距离是 50cm,行驶时必须保证处于这个安全距离之外。
另外,需要格外注意有遮挡的环境。下图中的车辆正在通过一排停车位,一名儿童突然以速度 10km/h 的速度跑过来(比如在追球)。根据计算,10km/h 的速度必须要保持 15m 的安全距离才可能避免碰撞发生。但此时汽车侧方的视野只有 0.3m,显然无法满足安全要求。在这种情况下,RSS 模型做了如下定义:
在车辆可以发现目标的第一时间(Te)到反应时间结束时(Te + ρ),车辆没有加速,且到发生撞击或者完全停下来的时刻(Ts),车辆一直以不低于αmin,brake的加速度在刹车;
从 Te 到 Ts 这段时间内,车辆的平均速度低于行人的平均速度。
这种情况下车辆是没有责任的。这个定义隐含的论点是:在发生撞击的时刻,车辆的速度比行人的速度低,或者两者都移动得很慢,从而使撞击的伤害降到最低。
语义描述
RSS 模型通过语义方式来描述测量结果、操作空间等,来指导无人驾驶汽车的规划、感知和动作。这种语义可以理解为我们学交规时的驾驶规范。例如,它不会做出这种描述:以当前速度开 13.7 米,然后以 0.8m/s² 的加速度加速前进,而是会发出语义指令,如“跟随前车”或者“从左侧超车”。
与人类驾驶类似,RSS 提供的这个语义模型,并不是加速度矢量的几何运算,而是关于纵向或者横向目标的描述。这对降低规划的运算复杂度(不会随着时间或邻车数量的增加而呈指数上升)、提升安全性和舒适性交互、以及传感器融合方面都至关重要。由于采用了语义模型,离线验证数据库只需要 10^5 量级的驾驶数据,就可以保证 RSS 模型达到死亡率 10^-9 次/小时的安全要求。
看完了上面的介绍,你是不是都 RSS 有了初步了解呢?RSS 模型的开发者,Amnon Shashua 教授(英特尔子公司 Moblieye 公司首席执行官兼首席技术官)曾说: “世界上最优秀的人类也无法避免超出他们控制能力的事故,自动驾驶汽车亦然。但是最负责、最老练、最谨慎的司机,不太可能由于自己的过失导致事故,特别是像自动驾驶汽车拥有 360 度视力和闪电般反应速度的话。”他呼吁自动驾驶产业和政策制定者“协同构建标准,明确事故责任”,以促进 RSS 模型更加完善。
雷峰网版权文章,未经授权禁止转载。详情见转载须知。