日期:2020-5-8

等式约束凸二次规划问题的解法

描述问题



对于系数矩阵而言,我们可以证明:如果H是正定的,A是满秩的,则该方程组有唯一的解,且为问题的全局最优解。

求解方法

我们可以设矩阵的逆来进行求解。

可以通过推导得到

matlab程序

function [ z,lam,fval ] = qlag( H,A,b,c )
%qlag: 求解等式约束二次规划:
%           min f(x)=0.5*x'Hx+c'x,   s.t. Ax=b
%---Input:   H,c分别是目标函数的矩阵和向量
%            A,b 分别是约束条件中的矩阵和向量
%---Output:  (x,lam)是 KT 点,fval 是最优值
IH = inv(H);
AHA = A*IH*A';
IAHA = inv(AHA);
AIH = A*IH;
G = IH-AIH'*IAHA*AIH;
B = IAHA*AIH;
C = -IAHA;
x = B'*b - G*c;
lam = B*c - C*b;
fval = 0.5*x'*H*x + c'*x;
end

实例

求解如下问题:

可以得到:

%main
clear; clc; close all;
%% 求解问题
H = [2 -2 0;-2 4 0; 0 0 2];
c = [0 0 1]';
A = [1 1 1;2 -1 1];
b = [4 2]';
[x, lam, fval] = qlag(H,A,b,c)

得到:


等式约束凸二次规划问题的解法相关推荐

  1. matlab中sqp的算法原理_最优化方法及其Matlab程序设计 马昌凤

    内容简介<最优化方法及其Matlab程序设计>较系统地介绍了非线性最优化问题的基本理论和算法,以及主要算法的Matlab程序设计,主要内容包括(精确或非精确)线搜索技术.最速下降法与(修正 ...

  2. 最优控制理论 六、拉格朗日乘子法和KKT条件

    拉格朗日乘子法和KKT条件 1. 等式约束最优化 2. 不等式约束最优化 2.1 1个不等式约束 2.2 KKT条件 2.3 二维不等式约束图解 3. MATLAB不等式约束优化 总结 4. 参考文献 ...

  3. 序列二次规划求解非线性优化问题

    目录 1. 概述 2. 基本思想 3. 求解方法 3.1 求解二阶导数矩阵 3.2 二次规划问题的求解 1. 概述 序列二次规划法(SQP,Sequential Quadratic Programmi ...

  4. UA SIE545 优化理论基础3 Fritz-John与Kuhn-Tucker理论总结 带等式约束与不等式约束的极值问题

    UA SIE545 优化理论基础3 Fritz-John与Kuhn-Tucker理论总结 带等式约束与不等式约束的极值问题 对于函数f:X→Yf:X \to Yf:X→Y,我们希望XXX是一个凸的度量 ...

  5. 等式约束的序列二次规划(SQP)

    我们还是以陆吾生的Practical optimization algorithms and engineering applications第15章作为模板进行整理,讲的是真的清楚,对其中比较简洁的 ...

  6. 最优化--等式约束最优性条件

    所谓的最优性条件就是最优解的性质. 我们通过最优性条件的研究,能够对于优化的步骤,以及迭代求解时的结束条件有很大帮助. 最优化问题常见的有无约束优化,等式约束优化,不等式约束优化.这里用两篇blog分 ...

  7. 运筹优化(六)--目标规划定义及解法

    1.目标规划的提出 线性规划的目标函数是单目标,但企业实际的经营管理中,需要完成多项指标,如企业计划中就包括产量.质量.利润.交货期等多项指标组成一个指标体系,均要全面完成,但是,这些指标的度量单位不 ...

  8. 高斯若尔当法算法matlab,大规模问题的分解法-D-W分解法

    大规模线性规划问题的求解极具挑战性,在效率.存储和数值稳定性等方面对算法都有很高的要求.但是这类问题常常非常稀疏且有特殊结构,能够分解为若干个较小规模问题求解. 线性规划问题的目标函数和非负约束都可分 ...

  9. 关于某日访问次数最多的IP的topK问题的三种解法

    题目描述 在july大神的博客中,看到这样两道题: 1. 海量日志数据,提取出某日访问百度次数最多的那个IP. 2. 假设目前有一千万个记录(这些查询串的重复度比较高,虽然总数是1千万,但如果除去重复 ...

  10. usaco Ordered Fractions 顺序的分数(两种解法)

    这题很好玩,这里有两种解法. 第一种我自己写的,先找到所有的既约真分数,然后写了一个cmp函数进行排序最后输出.我写的时候还在想这章不是搜索吗这跟搜索关系不大吧,难道是怕我们思维定式化故意出的题不是搜 ...

最新文章

  1. ubuntu的学习教程(常用操作)
  2. 安装多个版本的jdk
  3. HDU 1245 Saving James Bond
  4. zz eclipse.ini内存设置
  5. R运行大数据的过程中遇到的问题:不能有负长度矢量
  6. 【重难点】【JUC 02】volitale 常用模式 、JUC 下有哪些内容 、并发工具类
  7. 最大子数组问题,分治策略基础,百度面试题
  8. 【转】(Jquery)避免数据相加小数点后产生多位数和计算精度损失
  9. BAT中for循环处理某目录下的文件
  10. Atitit 持久化与数据存储标准化规范 目录 1. 存储的附加功能 2 1.1. 基本存取功能 2 1.2. 全文检索(imap 2 1.3. 属性检索 2 1.4. 查询语言 2 2. 基于内容
  11. <HTML>简单登录页面代码
  12. wp7 XAP部署工具
  13. Mercury老版路由器WDS
  14. sumifs 汇总_空标准单元格的SUMIFS公式
  15. 起底资金盘GGT:一场早有预谋的跑路
  16. jquery.uploadView.js图片上传插件
  17. 来自微信团队的 6 个开源项目
  18. 创建一个Customer类,类中的属性有姓名(name)、年龄(age)、性别(gender),每一个属性分别有get/set方法。然后创建两个customer对象:张立、18、女和王猛、22、男。把
  19. 《计算机科学与探索》期刊投稿
  20. 如何为您的在线业务设置和使用YouTube

热门文章

  1. android 电影院订票系统 论文,电影院网上订票系统-毕业论文.doc
  2. ActivityGroup简单介绍
  3. JavaScript基础视频教程总结(001-010章)
  4. 论坛之家-免费论坛申请-3分钟建立自己的个性化论坛
  5. Android应用程序结构及运行原理
  6. 《操作系统》实验报告——进程通信
  7. 转载+收藏 数理化地生常用软件
  8. Hadoop学习心得一
  9. 极致物业管理软件的系统特点
  10. PHP include语句和require语句