二次规划
规划 二次
2023-09-14 08:59:52 时间
二次规划
二次规划为非线性规划的一种,若某非线性规划的目标函数为自变量x 的二次函数,约束条件又全是线性的,就称这种规划为二次规划。
Matlab 中二次规划的数学模型可表述如下:
Matlab 中求解二次规划的函数为quadprog,他的用法如下:
x = quadprog(H,f)
x = quadprog(H,f,A,b)
x = quadprog(H,f,A,b,Aeq,beq)
x = quadprog(H,f,A,b,Aeq,beq,lb,ub)
x = quadprog(H,f,A,b,Aeq,beq,lb,ub,x0)
x = quadprog(H,f,A,b,Aeq,beq,lb,ub,x0,options)
x = quadprog(problem)
[x,fval] = quadprog(H,f,...)
[x,fval,exitflag] = quadprog(H,f,...)
[x,fval,exitflag,output] = quadprog(H,f,...)
[x,fval,exitflag,output,lambda] = quadprog(H,f,...)
H,f是把目标函数化成标准形式后得到的实对称矩阵,和列向量。
它的返回值是向量x ,X0 是x 的初始值;A,B,Aeq,Beq 定义了线性约束,如果没有线性约束,则A=[],B=[],Aeq=[],Beq=[];LB 和 UB 是变量 x 的下界和上界,如果上界和下界没有约束,则 LB=[],UB=[],OPTIONS定义了优化参数,可以使用 Matlab 缺省的参数设置。
fval是目标函数值。lambda是Lagrange乘子,它体现哪一个约束有效。output输出优化信息。
例 求解二次规划
解 编写如下程序:
h=[4,-4;-4,8];
f=[-6;-3];
a=[1,1;4,1];
b=[3;9];
[x,value]=quadprog(h,f,a,b,[],[],zeros(2,1))
求得
相关文章
- Java实现 LeetCode 629 K个逆序对数组(动态规划+数学)
- Java动态规划实现最短路径问题
- 良好地去规划自己的学习
- [usaco]3.4.4 变形的动态规划问题Electric Fence
- 动态规划之背包问题
- Leetcode学习计划之动态规划入门day21(377,343,279)
- Leetcode学习计划之动态规划入门day9(139,42)
- 微信小程序----原生API实现【到这里去(目的地)】路线规划
- 【无人机】基于灰狼优化算法的无人机路径规划问题研究(Matlab代码实现)
- 【路径规划】基于D*算法的移动机器人路径规划(Matlab代码实现)
- 野生前端的数据结构练习(11)动态规划算法
- 基于Qlearning强化学习的机器人路线规划仿真
- 事业发展规划
- 软件测试应届生的“黄金5年”该如何规划,如何实现从月薪 6k 到年薪20万的转变?
- 建模算法(四)——动态规划
- java专业规划(转载)