最优控制——变分法

最优控制——变分法第一章最优控制基础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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java零基础快速入门的方法

    Java零基础快速入门的方法各种各样的编程语言不断崛起,但唯有Java是牢牢占据着老大的位置,目前几乎90%以上的大中型互联网应用系统在服务器端开发首选Java。因此,也是吸引了不少年轻人投入到Java的学习之中。​所以,今天就跟大家分享一份系统的Java学习教程路线图,零基础也可以无压力的走进Java,学习Java!第一阶段:Java语言入门到精通学习任何一门编程语言,首先要学习的是基础语法,开启Java学习的第一步,当然就是深入掌握计算机基础、编程基础语法,面向对象,集合、IO流、线程、并发、异常及网络编程,这些我

    2022年6月3日
    32
  • Nginx简单防御CC攻击的两种方法

    Nginx简单防御CC攻击的两种方法CC 攻击可以归为 DDoS 攻击的一种 他们之间都原理都是一样的 即发送大量的请求数据来导致服务器拒绝服务 是一种连接攻击 CC 攻击又可分为代理 CC 攻击 和肉鸡 CC 攻击 代理 CC 攻击是黑客借助代理服务器生成指向受害主机的合法网页请求 实现 DOS 和伪装就叫 cc ChallengeCol 而肉鸡 CC 攻击是黑客使用 CC 攻击软件 控制大量肉鸡 发动攻击 相比来后者比前者更难防御 因为肉鸡可以

    2026年1月22日
    1
  • 漫谈词向量

    漫谈词向量原文:Onwordembeddings作者:SebastianRuder译者:KK4SBB审校:王艺责编:何永灿,关注人工智能,投稿请联系heyc@csdn.net或微信号289416419目录词向量的来历词向量模型语言建模概述经典的神经语言模型C&W模型Word2VecCBOWSkip-gram非监督式学习得到…

    2022年5月22日
    41
  • pycharm2021.4.2激活码_通用破解码

    pycharm2021.4.2激活码_通用破解码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月16日
    141
  • python实例代码爬虫_python 网络爬虫实例代码

    python实例代码爬虫_python 网络爬虫实例代码本节内容:python网络爬虫代码。一共两个文件,一个是toolbox_insight.py,是一个工具文件另一个是test.py,是一个用到toolbox_insight.py中工具的测试文件代码示例:#filename:toolbox_insight.pyfromsgmllibimportsgmlparserimportthreadingimporttimeimporturl…

    2025年5月22日
    3
  • jediscluster工具类_cannot get jedis connection

    jediscluster工具类_cannot get jedis connectionRedis集群是没法执行批量操作命令的,如mget,pipeline等。这是因为redis将集群划分为16383个哈希槽,不同的key会划分到不同的槽中。原生JedisCluster对批量操作的限制是mgetmset必须在一个槽;四种批量优化的方法1、串行mget在for循环中执行一条条的get; 需要n次网络时间;2、串行IO在客户端对所有key做CR…

    2022年9月25日
    4

发表回复

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

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