System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及自动驾驶汽车运动控制领域,尤其是涉及一种自动驾驶汽车横向跟踪控制方法。
技术介绍
1、自动驾驶技术作为现代信息技术的新兴产物,被认为具有显著的潜力,可有效提升道路交通安全、减少城市道路交通拥堵,并为现有社会道路交通体系带来巨大改变。车辆轨迹跟踪控制作为车辆运动控制的核心组成部分,其主要任务是确保自动驾驶汽车按照预设路径行驶。因此,稳定准确的轨迹跟踪控制被视为实现自动驾驶汽车底层目标的关键。
2、目前,常用的自动驾驶汽车横向运动控制算法主要分为无模型控制算法和有模型控制算法。无模型控制算法主要采用pid控制算法,而有模型控制算法则包括lqr控制、纯跟踪控制、前馈控制、模型预测控制等。然而,自动驾驶汽车的行驶条件复杂多变,实际车辆动力学模型存在高度不确定性,且易受外部干扰影响。因此,基于模型的横向控制算法的有效性严重依赖于模型精度。pid控制算法虽然是无模型控制算法,但其具有快速收敛、良好稳定性和简单实现等优点,在控制系统中被广泛应用。然而,由于pid控制未考虑车辆自身特性,其对外部干扰的鲁棒性较差,因此在高速行驶、道路曲率较大等工况下应用受到限制。因此,传统的控制策略已经无法完全满足自动驾驶汽车轨迹跟踪控制的要求。
3、强化学习是一种不基于模型的交互式学习算法,其核心特征是通过与环境的在线交互,利用试错机制来最大化未来回报,从而实现序列学习。由于其交互式特性,强化学习能够有效地通过环境反馈信息学习系统控制策略,因此被广泛认为是实现智能决策和控制的有效手段,可以使系统具备持续自学习的能力,从而增
4、综合考虑pid控制策略和基于强化学习算法的控制策略的不足,采用两者结合的方式可以充分发挥它们各自的优势。pid控制算法的先验知识大大减少了强化学习的探索空间,可以有效避免训练过程中陷入局部最优解,从而解决训练不稳定的问题。同时,强化学习机制可以实时更新pid控制参数,实现自适应pid控制,解决了定参数pid控制在面对复杂环境时鲁棒性较差的问题。因此,研究基于强化学习的改进pid控制具有重要的实践意义。
技术实现思路
1、针对现有技术存在的问题,本专利技术提出了一种基于强化学习的自动驾驶汽车改进pid横向跟踪控制方法。该方法将强化学习与pid控制相结合,有效解决了强化学习训练不稳定、容易陷入局部最优解以及pid控制无法适用于车辆高速行驶、道路曲率较大工况的问题。
2、为实现本专利技术的目标,提出以下技术方案:
3、s1、通过分析车辆特性和横纵解耦需求,基于横纵解耦控制策略分别建立纵向pid控制方法和横向pid控制方法;
4、s2、建立车辆动力学方程,获取基于横向位置误差和航向角误差的车辆状态方程;
5、s3、利用车辆状态信息和车辆状态方程建立强化学习的状态空间和动作空间,基于状态空间和动作空间构建actor-critic网络;
6、s4、设置奖励函数,利用深度确定性策略梯度算法对actor网络进行更新,实时更新横向pid控制参数;
7、s5、整定横纵向pid控制器参数,使用训练地图进行actor-critic网络的强化学习训练,使模型达到预定的跟踪控制效果。
8、所述的步骤s1中,通过分析车辆特性和横纵解耦需求,基于横纵解耦控制策略分别建立纵向pid控制方法和横向pid控制方法;具体过程为:
9、步骤s1.1:分析车辆解耦控制需求;
10、步骤s1.2:建立纵向pid控制方法;
11、步骤s1.3:建立横向pid控制方法;
12、所述的步骤s1.1中,车辆解耦需求分析如下:
13、在速度不太高的行驶工况下,常规车辆的转向结构往往限定在30度角以内,行车路径的曲率有限,转向轮横向力在车身纵轴的分量很小,纵向控制基本不受横向状态影响,可独立进行,这意味着横向控制的变化不会直接影响纵向控制。此外,横向和纵向运动往往受到不同的外部因素和驾驶需求的影响,车辆在转弯时需要进行横向控制以跟踪道路弯曲,而在直线行驶时需要进行纵向控制以保持稳定的速度,将横向和纵向控制分开处理有助于简化控制系统的设计和实现。通过解耦,可以更轻松地设计和调整每个控制器,而不会过度依赖其他控制器。通过独立处理横向和纵向运动,可以更好地适应不同的驾驶情况和路况变化,从而提高车辆的整体性能和安全性。
14、所述的步骤s1.2中,建立纵向pid控制方法如下:
15、纵向控制主要调节车辆的纵向车速,通过调整加速和制动来实现。设定直道和弯道的目标纵向车速,旨在模仿驾驶员在遇到弯道时进行制动踏板减速的驾驶习惯,以确保行车安全。
16、通过计算预设路径点的曲率得到道路曲率,其中弯道目标纵向车速vxwref与直道目标纵向车速vxzref的关系如下式:
17、vxwref=vxzref-kref*χ
18、其中,kref是期望路径曲率,χ为相关系数。
19、由于积分项的存在可能导致系统对扰动过度敏感,增加系统的振荡或者超调,为了避免这种情况,只使用pd控制器可以更好地控制系统的动态响应,此时的pd控制率为:
20、
21、δvx(t)=vx(t)-vxref(t)
22、其中,u(t)为当前时刻t的纵向加速度,kp0、kd0分别为纵向pid控制器的比例、微分系数,δvx(t)为当前时刻t实际纵向车速与目标纵向车速误差,vxref(t)为当前时刻t的目标纵向车速,vx(t)为当前时刻t的实际纵向车速。
23、pid控制的输入为纵向车速与当前纵向车速的速度差,输出为纵向加速度,以此来实现纵向车速的跟随。
24、所述的步骤s1.3中,建立横向pid控制方法如下:
25、横向控制是指在车辆运动方向上垂直的转向控制,其目标是使汽车保持预设的行车路线,主要通过控制方向盘转角来实现。横向控制以横向位置误差和航向角误差作为输入参数,输出方向盘转角作用于被控车辆。忽略积分项的影响,pd控制率为:
26、
27、kp1(t)、kd1(t)分别为当前时刻t横向位置误差pid控制器的比例、微分系数,kp2(t)、kd2(t)分别为当前时刻t航向角误差pid控制器的比例、微分系数,err(t)是当前时刻t相对车道中心线的横向位置误差,是当前时刻t相对车道中心线的横向位置误差变化率,是当前时刻t相对车道的车辆航向角误差,是当前时刻t相对车道的车辆航向角误差变化率。
28、所述的步骤s2中,建立车辆动力学方程,获取基于横向位置误差和航向角误差的车辆状态方程,具体过程为:
29、步骤s2.1:构建二自由度车辆动力学模型;
30、步骤s2.2:获取基于横向位置误差和航向角误本文档来自技高网...
【技术保护点】
1.一种基于强化学习的自动驾驶汽车改进PID横向跟踪控制方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于强化学习的自动驾驶汽车改进PID横向跟踪控制方法,其特征在于,所述步骤S1的纵向PID控制方法的控制率设置如下:
3.根据权利要求1或2所述的基于强化学习的自动驾驶汽车改进PID横向跟踪控制方法,其特征在于,所述步骤S1的横向PID控制方法的控制率设置如下:
4.根据权利要求2所述的基于强化学习的自动驾驶汽车改进PID横向跟踪控制方法,其特征在于,所述纵向PID控制方法的PID控制率中的目标纵向车速包括弯道目标纵向车速和直道目标纵向车速,设置如下:
5.根据权利要求1至4任一项所述的基于强化学习的自动驾驶汽车改进PID横向跟踪控制方法,其特征在于,所述步骤S3中的状态空间设置如下:
6.根据权利要求1至5任一项所述的基于强化学习的自动驾驶汽车改进PID横向跟踪控制方法,其特征在于,所述步骤S3中的动作空间设置如下:
7.根据权利要求1至6任一项所述的基于强化学习的自动驾驶汽车改进PID横向跟踪
8.根据权利要求1至7任一项所述的基于强化学习的自动驾驶汽车改进PID横向跟踪控制方法,其特征在于,所述步骤S4的PID控制参数更新原则设置如下:
9.根据权利要求1至8任一项所述的基于强化学习的自动驾驶汽车改进PID横向跟踪控制方法,其特征在于,所述步骤S5中的整定横纵向PID控制器参数包括:
10.一种计算机程序产品,其特征在于,所述计算机程序产品由处理器运行时,实现如权利要求1至9任一项所述的基于强化学习的自动驾驶汽车改进PID横向跟踪控制方法。
...【技术特征摘要】
1.一种基于强化学习的自动驾驶汽车改进pid横向跟踪控制方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于强化学习的自动驾驶汽车改进pid横向跟踪控制方法,其特征在于,所述步骤s1的纵向pid控制方法的控制率设置如下:
3.根据权利要求1或2所述的基于强化学习的自动驾驶汽车改进pid横向跟踪控制方法,其特征在于,所述步骤s1的横向pid控制方法的控制率设置如下:
4.根据权利要求2所述的基于强化学习的自动驾驶汽车改进pid横向跟踪控制方法,其特征在于,所述纵向pid控制方法的pid控制率中的目标纵向车速包括弯道目标纵向车速和直道目标纵向车速,设置如下:
5.根据权利要求1至4任一项所述的基于强化学习的自动驾驶汽车改进pid横向跟踪控制方法,其特征在于,所述步骤s3中的状态空间设置如下:
6....
【专利技术属性】
技术研发人员:李志恒,欧阳承业,
申请(专利权)人:清华大学深圳国际研究生院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。