Apollo自动驾驶:线性二次调节器在控制中的应用

需积分: 13 15 下载量 195 浏览量 更新于2024-08-05 1 收藏 959KB PDF 举报
"Apollo自动驾驶入门课程第⑩讲 — 控制(下).pdf" 这篇文档是关于Apollo自动驾驶系统中控制部分的深入讲解,主要聚焦在线性二次调节器(LQR)的应用。LQR是一种基于数学模型的控制器,用于通过最小化误差来优化车辆的动态行为。在Apollo系统中,LQR用于实现横向控制,即控制车辆沿其路径的横向位置。 横向控制包括四个关键组件:横向误差、横向误差的变化率、朝向误差和朝向误差的变化率,这些统称为状态集合X。车辆可以通过三个控制输入来调整状态:转向角、加速和制动。这些输入构成了控制集合U。 LQR的核心是一个线性动态模型,可以表示为x_dot = Ax + Bu,其中x_dot是状态x的时间导数,A是状态转移矩阵,B是输入影响矩阵,u是控制输入。线性模型意味着状态和输入的微小变化会按比例导致状态变化的线性响应。 LQR的优化目标是在最小化误差的同时,尽量减少控制输入的使用,因为这可能会带来额外的成本,如燃油消耗或电力损耗。为此,定义了一个成本函数,它是误差和控制输入的二次项之和随时间的积分。Q和R矩阵分别代表状态误差和控制输入的权重,用于调整不同组件的重要性。最小化成本函数的问题可以通过数值方法求解,Apollo系统内建的求解器就能完成这一任务。 最后,LQR的控制策略可以简洁地表示为u = -Kx,其中K是一个通过求解上述优化问题得到的增益矩阵。这个矩阵根据当前状态x计算出合适的控制输入u,以最小化未来的成本。 通过这个LQR控制器,Apollo能够精确地控制自动驾驶车辆的行驶路径,确保安全且高效的行驶。结合人工智能和机器学习技术,Apollo系统能够处理各种复杂路况,实现智能驾驶。