数学建模与数学规划:方法、案例及编程实战(Python+COPT/Gurobi实现)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.2.6 二阶锥规划

二阶锥规划(Second-Order Cone Programming,SOCP)的目标函数为线性表达式,约束包含二阶锥约束,是一种非常特殊的非线性优化模型。在给出其一般形式之前,我们需要了解一下什么是(凸)锥,什么是二阶锥。

·(Cone):对于一个向量空间Rn与它的一个子集C,如果子集C中的任意一点x与任意正数α的积αx仍然属于子集C,则称C为一个锥。若C中任意两点xy,以及任意两个正数αβ,都有αx+βyC,则C为凸锥。

·二阶锥(Second-order Cone):以二范数定义的锥被称为二阶锥。在k维空间中,标准的二阶锥数学定义为式(1.5)。图1.2为三维空间中的二阶锥示意图。

需要说明的是,符号‖·‖2表示向量的二范数(L2 norm)。列向量x=[x1x2,…,xnT的二范数定义为:

图1.2 三维空间中的二阶锥示意图

形如式(1.6)的约束即为二阶锥约束(Second-order Cone Constraint)。

其中,A∈Rk×n,表示系数矩阵;x∈Rn×1,为列向量,是决策变量;b∈Rk×1,为列向量;c∈Rn×1,为列向量;d为常数。

二阶锥规划的一般形式[16]如下:

其中,f∈Rn×1,为列向量;x∈R1,为列向量,表示连续型决策变量;ci∈Rn×1,为列向量;di∈R;F∈Rh×n,表示约束系数矩阵;g∈Rh×1,为列向量,表示右端常数。

ci=0(∀i=1,…,m)时,SOCP可以等价转换为QCQP。当Ai=O(即零矩阵)(∀i=1,…,m)时,SOCP退化为LP。

下面给出两个二阶锥规划的简单例子。

【例1.1】

若表示成紧凑的矩阵形式,则

【例1.2】

若表示成紧凑的矩阵形式,则