【LQR算法学习】[视频参考B站DR_CAN]

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

DR_CAN是我很喜欢的B站博主。本文的图片来自视频的截图。侵删。
DR_CAN出书了,《控制之美》,欢迎大家购书支持。
本文用于记录学习LQR算法的学习过程。

学习资源:DR_CAN from bilibili
现代控制理论-LQR控制器


一、LQR是什么?

在这里插入图片描述

二、知识回顾

from DR_CAN
开环系统通过引入状态变量相关的负反馈成为闭环系统。
通过选择K值来改变Acl的特征值,来控制系统的表现。

三、还没想好标题

目标

  • 如何确定特征值
  • 什么样的特征值才是最好的。

方法

  • 引入目标函数/能量函数
    在这里插入图片描述

例子来了

在这里插入图片描述
具体的参数和状态空间方程
在这里插入图片描述

matlab/simulink仿真

搭建模型

在这里插入图片描述

  • 有初始状态,但没有控制的仿真
    在这里插入图片描述
>>>clear all
>>> A = [0 1; 10 0]
>>> B = [0 -1]
>Q=[100 0; 0 1] #关心x1收敛速度
>R = .01
>K = lqr[A, B, Q, R]
  • 运行后的结果
    在这里插入图片描述
    系统稳定了,真神奇

比较不同的Q R对系统的表现影响

参数的一些变化

Q = [1 0;0 1]
R = 100

在这里插入图片描述
结果分析

  • 黄线对应large Q 紫线对应large R
  • 黄线收敛速度快
  • 紫线输入平和
  • 对于黄线,我们更看重收敛速度
  • 对于紫线,我们更看重能耗问题

总结

举例子是个特别好的方法。
后面还要学习轨迹跟踪。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
遗传算法 (Genetic Algorithm, GA) 是一种基于模拟自然界生物进化过程的优化算法。该算法通过模拟遗传、变异、选择和交叉等操作,从而搜索问题的最优解。GA_LQR程序是将遗传算法应用于线性二次调节器 (Linear Quadratic Regulator, LQR) 问题的程序。 LQR问题是控制理论中的一种经典问题,目标是设计一个最优的状态反馈控制器,使得系统的性能指标最小化。GA_LQR程序通过遗传算法的优化过程,寻找到最佳的控制器参数,以达到LQR问题的最优化。 该程序的实现大致包括以下步骤: 1. 初始化种群:将一定数量的个体(控制器参数)随机生成,构成初始种群。 2. 适应度评估:使用LQR问题的性能指标,计算每个个体的适应度值,即个体在问题中的优劣程度。 3. 选择:根据个体适应度值,采用选择操作,选择出一部分较优秀的个体作为父代。 4. 交叉:对父代个体进行交叉操作,生成新的后代个体。 5. 变异:对后代个体进行一定概率的变异操作,增加种群的多样性。 6. 重复2-5步骤,直到达到指定的停止条件(例如达到最大迭代次数)。 7. 输出结果:选择适应度最好的个体作为最优解,即最佳的控制器参数。 通过遗传算法的迭代优化过程,GA_LQR程序可以找到满足LQR问题最优化的控制器参数。它的优点是可以在复杂的非线性问题中进行优化,并且具有并行处理能力和适应性等特点。然而,由于遗传算法是一种启发式算法,没有保证找到全局最优解的能力,解的质量依赖于初始化种群和算法参数的设置。因此,在实际应用中需要综合考虑算法的收敛性和计算效率等方面的因素。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值