若该线性规划的目标函数为自变量x的二次函数,约束条件全是线性的,则为二次规划。
在MATLAB中表达的二次规划的数学模型如下
min12x′Hx+f′xst.Ax≤bAeqx=beqlb≤x≤ub
其中,f和b是列向量,A是相应维数的矩阵,H实对称矩阵。
MATLAB中求解二次规划的命令如下
x=quadprog(H,f,A,b)
或者
[x fval]=quadprog(H,f,A,b,Aeq,beq,lb,ub,x0)
x是返回值向量,fval是目标函数在x处的数值。exitflag的值如果大于0,得到可行解;否则,未得到合适的解。
求解二次规划,首先要写出二次型的实对称矩阵,
f(x1,x2,⋯xn)=a11x21+2a12x1x2+⋯