二次规划(QP)是求解一种特殊的数学优化问题的过程——具体地说,是一个(线性约束)二次优化问题,即优化(最小化或最大化)多个变量的二次函数,并服从于这些变量的线性约束。二次规划是一种特殊的非线性规划。
序列二次规划(SQP,Sequental Quadratic Programming)算法是将复杂的非线性优化问题转换为较简单的二次规划问题来求解的算法。而二次规划问题则是指目标函数为二次函数,约束函数为线性函数的的最优化问题。二次规划问题是最简单的非线性优化问题,有很多成熟的快速求解的方法。
一、首先介绍二次规划问题:
给定一个目标函数
由于要求目标函数最小,而且还要满足约束,由于是二次规划(元素的平方)
其中,
其中第一式为定常方程式(stationary equation),第二式为约束条件。解开上面 n+1个方程式可得
举个例子1:
构造 Lagrange 函数:
其KKT(对拉个朗日求导)条件:
求解可得:
举个例子2:
构造 Lagrange 函数:
其KKT(对拉个朗日求导)条件:
求偏导可得:
二、序列二次规划问题:
给定一个非线性约束的最优问题:
利用泰勒展开把上式子的非线性约束问题的目标函数在迭代点
此问题为原来约束最优问题的近似问题,令:
将上述二次规划问题变成关于变量 S 的问题,即:
令:
写成一般形式为:
求解此二次规划问题,将其最优解
版权声明:本文为博主作者:屿风。原创文章,版权归属原作者,如果侵权,请联系我们删除!
原文链接:https://blog.csdn.net/weixin_47932058/article/details/124429510