最优控制理论(optimal control theory),是现代控制理论的一个主要分支,着重于研究使控制系统的性能指标实现最优化的基本条件和综合方法。 最优控制理论是研究和解决从一切可能的控制方案中寻找最优解的一门学科。它是现代控制理论的重要组成部分。
为了解决最优控制问题,必须建立描述受控运动过程的运动方程,给出控制变量的允许取值范围,指定运动过程的初始状态和目标状态,并且规定一个评价运动过程品质优劣的性能指标。通常,性能指标的好坏取决于所选择的控制函数和相应的运动状态。系统的运动状态受到运动方程的约束,而控制函数只能在允许的范围内选取。因此,从数学上看,确定最优控制问题可以表述为:在运动方程和允许控制范围的约束下,对以控制函数和运动状态为变量的性能指标函数(称为泛函)求取极值(极大值或极小值)。解决最优控制问题的主要方法有古典变分法、极大值原理和动态规划。
最优控制理论(optimal control theory),是现代控制理论的一个主要分支,着重于研究使控制系统的性能指标实现最优化的基本条件和综合方法。 最优控制理论是研究和解决从一切可能的控制方案中寻找最优解的一门学科。它是现代控制理论的重要组成部分。
为了解决最优控制问题,必须建立描述受控运动过程的运动方程,给出控制变量的允许取值范围,指定运动过程的初始状态和目标状态,并且规定一个评价运动过程品质优劣的性能指标。通常,性能指标的好坏取决于所选择的控制函数和相应的运动状态。系统的运动状态受到运动方程的约束,而控制函数只能在允许的范围内选取。因此,从数学上看,确定最优控制问题可以表述为:在运动方程和允许控制范围的约束下,对以控制函数和运动状态为变量的性能指标函数(称为泛函)求取极值(极大值或极小值)。解决最优控制问题的主要方法有古典变分法、极大值原理和动态规划。
方法/步骤
此题的问题描如下图。由于本经验主要是谈非线性约束下的最优化问题,对于其他线性约束就不再考虑。
然后启动matlab。新建一个函数文件,用来写目标函数。
在编辑器窗口中写入我们要求的目标函数,并保存,注意使函数名与文件名相同。
然后再新建一个函数文件,用来编写非线性约束条件。步骤及其注意事项同上。额外需要注意的是,需要将两个函数文件放在同一个文件夹中。
最后,在命令行窗口处写入fmincon命令。此处需要注意的是,对于没有的线性约束条件的位置药用空矩阵代替,并且初始条件需要满足非线性约束条件(本例中写的是[1,2])。
敲下键盘上的enter建,结果得出。可以发现exitflag=1是大于0的,所以结果正确。
对于非线性约束的优化问题,matlab有个很好的函数fmincon可以很容易解决。
在编辑器窗口中写入我们要求的目标函数,并保存,注意使函数名与文件名相同
然后再新建一个函数文件,用来编写非线性约束条件。步骤及其注意事项同上。额外需要注意的是,需要将两个函数文件放在同一个文件夹中
最后,在命令行窗口处写入fmincon命令。此处需要注意的是,对于没有的线性约束条件的位置药用空矩阵代替,并且初始条件需要满足非线性约束条件
声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
蜀ICP备2020033479号-4 Copyright © 2016 学习鸟. 页面生成时间:2.887秒