自动驾驶算法与芯片设计
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.3.3 控制

目前,研究人员已经开发出用于车辆运动的控制算法及其基本模型。该模型在轨迹跟踪方面取得了相当大的成功,从而确保了自动驾驶汽车沿着由其决策算法确定的路径运动。研究人员通常将控制算法称为“控制器”或“控制策略”。安全风险可能会来自控制算法,在对自动驾驶运动进行建模时存在不准确性,尤其是在意外的路况下。

由于几何算法与运动学控制算法具有简单性和相对较低的计算成本,因此它们均已得到广泛采用。然而,由于它们仅对车辆的几何尺寸和运动特性(如加速度和速度)进行建模,因此可能会产生误差和车辆的不稳定性。又因为几何算法和运动学控制算法对车辆动力学的忽视(如不考虑诸如摩擦力、轮胎打滑和能量之类的车辆动力学特性),它们可能会导致在高速行驶时产生危险的驾驶行为。在这种情况下,动力学性能会影响车辆的运动,例如车道突然变化,或者试图避免意外障碍。在“纯粹追求”几何算法的应用中,车辆“不断追求虚拟运动点”[10],在高速行驶过程中,车辆路径的快速变化会导致算法“高估”该系统产生转向输入,以纠正车辆运动的能力,从而导致车辆过度转向和打滑。此外,将控制参数设置为“补偿”,以忽略动力学特性,使得几何算法和运动学控制算法对参数变化高度敏感。例如,为纯追踪算法调整“前瞻距离”的最佳值是一项挑战。此最佳值是根据车辆从现有位置选定的“路径点”测得的,较大的值会导致车辆在急转弯时偏离实际的弯曲路径,从而产生“弯道”,其值太小又会加剧运动轨迹的振荡[11]

自适应控制算法或模型预测控制算法现已在自动驾驶中使用,但是当其违反假设并计算昂贵时,它们仍然不准确。首先,动态控制算法结合了车辆动力学的线性或非线性模型,这些模型主要来自轮胎力。轮胎力是由轮胎与路面相互摩擦产生的,并且是车辆运动时的主要外部影响。当转向角和侧滑角超过5°时,线性模型会变得不准确,此时非线性模型可能更准确,尤其是在高速行驶和大转向角时,但计算量更大。与纯追踪几何算法相似,某些动态控制算法仍然对“前瞻距离”的变化和未知的车辆参数(如轮胎-路面摩擦系数)高度敏感。这些参数无法被实时获取,安装附加传感器的成本颇高。其次,由于自适应控制算法使用机器学习技术来调整算法参数,因此对环境变化更具鲁棒性。但由于机器学习需要处理大量的数据,它们的效率也会较低,因此,Amer等人[12]开发了一种自适应几何控制器,该控制器既拥有几何控制器所具有的低计算成本优势,又具有适应各种路况的鲁棒性。最后,模型预测控制(Model Predication Control,MPC)算法考虑了系统约束、输入和输出,以优化执行器输入,并成功用于自动驾驶轨迹跟踪,且同时满足安全性和时间约束。然而,MPC需要高度复杂且对计算要求很高的在线优化,尤其是在考虑非线性车辆动力学特性时更是如此。研究人员提出了线性化非线性车辆模型,并放宽一些避免碰撞的约束,以减少这些计算需要的方法。随着计算能力的不断改进,以及在自动驾驶中实现MPC控制器的高效算法的创新,这些车辆控制技术在将来可以得到进一步的发展。

此外,所有控制算法都将面临其他软件组件所引起的约束,在处理意外情况时将面临诸多挑战,以及缺乏足够的实际测试。首先,大多数控制算法只有在通过决策算法计算出的轨迹是连续的,而且尚未考虑到计算量巨大的传感器传播的时间延迟时,才表现良好。这些传感器可能会严重破坏车辆的稳定性。研究结果表明,在意外情况下(例如,避免紧急碰撞),突然的路径变化会导致自动驾驶汽车的轮胎侧滑,轨迹跟踪和车辆的稳定性会受到损害。其次,由于计算量巨大,对于大多数控制算法,仅在仿真过程中进行了测试,而不是在实际环境下的自动驾驶中进行测试的,并且仅在参数变化最小和环境变化不大的情况下才进行验证[13]。为了确保控制器适用于实际环境下的自动驾驶,研究人员提出了使用所谓的“硬件闭环”仿真。在仿真测试中,研究人员开发了一种V2X系统,该系统利用环境数据来更新硬件。自动驾驶系统的控制参数随驾驶条件的变化而变化,并对无线网络中断具有鲁棒性,研究人员开发出了在各种路况下都集成转向制动和悬架控制等的控制器。