![数学建模与数学规划:方法、案例及编程实战(Python+COPT/Gurobi实现)](https://wfqqreader-1252317822.image.myqcloud.com/cover/577/52521577/b_52521577.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.2.7 半定规划
半定规划(Semidefinite Programming,SDP)的目标函数为线性表达式,约束条件包含半正定约束。在给出其一般形式之前,我们先来介绍一下什么是半正定矩阵。
半正定矩阵(Positive Semidefinite Matrix):给定实对称矩阵A∈Rn×n,若对于任意n维非零实向量x,xTAx≥0恒成立,则称矩阵A为半正定矩阵。
![](https://epubservercos.yuewen.com/0DD641/31155568907421606/epubprivate/OEBPS/Images/txt002_34.jpg?sign=1739904737-daEqLh2q7Aq39B7auO5X9ARMM4S79Rp2-0-bb15a2e5d5ee52595a917f8f9a21f22e)
为方便叙述,定义以下符号:
·Sn:所有n维对称矩阵的集合。
·:所有n维半正定(Positive Semidefinite,PSD)矩阵的集合。
根据文献[36][3],半定规划的标准形式如下:
![](https://epubservercos.yuewen.com/0DD641/31155568907421606/epubprivate/OEBPS/Images/txt002_36.jpg?sign=1739904737-WYrGm9BbfckWMFhKBFZOxSNkNitQz0tO-0-a15937eecb89e094f491e08f33e67120)
其中,C∈Rn×n;X∈Sn,是半正定决策变量矩阵;Ai∈Rn×n,bi∈R;符号“·”表示矩阵的内积,即,符号
表示半正定,约束
一般被称为半正定锥约束。
下面给出一个半定规划的简单例子。考虑一个最小化问题,令n=3,m=3,且给定下列参数:
![](https://epubservercos.yuewen.com/0DD641/31155568907421606/epubprivate/OEBPS/Images/txt002_40.jpg?sign=1739904737-5AnjJujgDjORX318AUXqsD6Wr9iLv3CL-0-db186d8e30fe804a34cda00c10a180ba)
以及一个3×3的决策变量矩阵:
![](https://epubservercos.yuewen.com/0DD641/31155568907421606/epubprivate/OEBPS/Images/txt002_41.jpg?sign=1739904737-yerLrBCaoPvnfFz3h8MGDnJb6uIQemvb-0-e73ed654b47d28191eb4c6a67b8afc2e)
则上述数据就可以构建一个SDP的数值案例。注意,X为对称矩阵,因此xij=xji,∀i,j∈{1,2,3}。
接下来将其写成展开的形式。
![](https://epubservercos.yuewen.com/0DD641/31155568907421606/epubprivate/OEBPS/Images/txt002_42.jpg?sign=1739904737-QQNzAYomcdAlGlCWvfDjfI6qcdqw4wC1-0-054ddda0d1ca4f75261751f2216a2978)
其他部分的展开也类似。最终,上述案例可以写成如下形式:
![](https://epubservercos.yuewen.com/0DD641/31155568907421606/epubprivate/OEBPS/Images/txt002_43.jpg?sign=1739904737-7nW6p4y3ofAbIXbWoVDtVyvuKtByhyq5-0-2f9c0f760f35f07942e75c5224537083)