最优控制——变分法

最优控制——变分法第一章最优控制基础1、一般的最优化问题要最小化的性能指标定义在数域上,而变分问题的性能指标(目标泛函)的定义域是函数的集合。2、泛函:从任意定义域到实数域或复数域的映射。泛函的定义域是函数集,

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

 

第一章 最优控制基础

1、一般的最优化问题要最小化的性能指标定义在数域上,而变分问题的性能指标(目标泛函)的定义域是函数的集合。

2、 泛函:从任意定义域到实数域或复数域的映射。泛函的定义域是函数集,值域是数集,也就是说,泛函是从函数空间到数域的一个映射

3、最优控制问题的四个基本元素:状态方程、容许控制、目标集、性能指标

其中状态方程(关于状态变量和控制变量的常微分方程)

最优控制——变分法

 

是最优控制问题与经典变分问题的重要区别之一

4、经典变分问题需要连续的控制变量—>之后的极小值原理处理不连续控制变量、状态变量或者控制变量有约束的情况—>更复杂的非线性状态方程、控制变量不可微等      动态规划方法

5、无确定模型的最优控制方法:强化学习与自适应动态规划、模型预测控制、微分博弈、平行控制

第二章 最优控制方法

1、直接变分法 实质:以函数为输入,以实数为输出

在局部范围内对最优解加以”扰动“,再考察性能指标是否发生变化。利用微积分取极限的思想。

(链式法则,先对x求,再对x’求,以及分步积分巴拉巴拉复习一下最优控制——变分法

2、拉格朗日的delata方法,加以扰动,对比最优曲线和扰动后的曲线,看新的性能指标是不是会<最优的,若是极值点,这个增量应该总是>=0的,在该点足够小的邻域内是几乎为0的

最优控制——变分法

得出

最优控制——变分法 

问题:可能导致扰动后x落在定义域之外,结论不再有效

3、拉格朗日乘子法和KKT条件

 

第三章 变分法

1、函数变分:函数的增量 delta x    

泛函增量:J(x+delta x)-J(x)    类比计算极值的时候函数值的差

线性泛函:若满足齐次性条件和可加性条件,则称之为线性泛函

若泛函增量可以写成函数变分的线性泛函及其高阶无穷小项的两部分加和,则称泛函对函数x可微,且其中的线性泛函就是泛函变分。

2、泛函极值的必要条件

驻点条件:泛函变分为0(反证法,前提是定义域是开集) 

适用场景:控制变量可在全空间中任意取值没有约束,容许控制为连续函数全体。

不适用场景:控制变量或其分量取值于实数空间中的闭区间

3、最简变分法:(欧拉-拉格朗日方程)

最优控制——变分法

 

求变分不止可以用看线性泛函和高阶无穷小,还可以用微积分的方法求解:

最优控制——变分法

 

4、 欧拉-拉格朗日方程是关于状态x的二阶微分方程

分为三种情况:

最优控制——变分法三种结果:

最优控制——变分法

最优控制——变分法

 

最优控制——变分法

5、hamilton方程组

物理学家将欧拉-拉格朗日这个二阶微分方程化成了一阶常微分方程组

6、等式约束的处理

拉格朗日乘子法

最优控制——变分法

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/167735.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 亿图图示mac版激活码 csdn(JetBrains全家桶)2022.01.24

    (亿图图示mac版激活码 csdn)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html1TCF2R91JZ-eyJsaWNlbnNlSW…

    2022年3月31日
    266
  • h5py快速入门指南

    h5py是Python语言用来操作HDF5的模块。下面的文章主要介绍h5py的快速使用入门,翻译自h5py的官方文档:http://docs.h5py.org/en/latest/quick.html。该翻译仅为个人学习h5py为目的,如有翻译不当之处,请速联系读者或提供其它好的翻译。安装使用Anaconda或者Miniconda:condainstallh5py用Enthou…

    2022年4月4日
    100
  • FFmpeg从入门到精通笔记之四[通俗易懂]

    FFmpeg从入门到精通笔记之四[通俗易懂]介绍在FFmpeg环境下使用libx264进行H.264(AVC)软编码的操作,H.265(HEVC)的编码操作使用的是libx265,但是参数基本类似。FFmpeg软编码H.264与H.265当前网络中常见的视频编码格式要数H.264最为火热,支持H.264的封装格式有很多,如FLV、MP4、HLS(M3U8)、MKV、TS等格式FFmpeg本身并不支持H.264的编码器,而是由第三方模块…

    2022年6月26日
    54
  • Python中的输出「建议收藏」

    Python中的输出「建议收藏」1.Python的输出语句Python输出语句是print,但是python2.x与3.x又有点区别。python2.x输出print"xxx"能成功执行,而3.x不行,所以

    2022年7月5日
    21
  • java输入Scanner基本用法[通俗易懂]

    java输入Scanner基本用法[通俗易懂]1.基本介绍java.util.Scanner是Java5的新特征,我们可以通过Scanner类来获取用户的输入,每个next获取输入对应的字符。Scannersc=newScanner(System.in);当我们通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext与hasNextLine判断是否还有输入的数据:next()–>hasNext() nextLine()–…

    2022年7月7日
    33
  • MySQL表与表之间的关系详解

    外键说到表与表之间的关系就不得不说到一个关键词:外键MySQ中的外键是什么,和表与表之间有什么关联?通过示例说明:员工信息表有三个字段:工号姓名部门如何把他们相互联系起来呢??公司有3

    2022年3月29日
    44

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号