半正定规划(Semi-Definite Programming, SDP)是一类凸优化问题,它的目标函数和约束条件都是半正定矩阵的线性函数

SDP问题通常出现在信号处理、控制理论、组合优化、量子计算等多个领域,因为它们能够处理一些其他类型优化问题无法直接处理的复杂约束。

SDP的标准形式

一个SDP问题可以被表述为:

基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_决策矩阵

这里的符号意义如下:

  • 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_标量_02 :是一个固定的半正定矩阵,表示目标函数中的成本矩阵。
  • 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_学习_03 :是决策变量,即我们试图找到的半正定矩阵。
  • 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_决策矩阵_04 :是第 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_标量_05线性约束的矩阵,其中 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_标量_06
  • 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_决策矩阵_07 :是第 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_标量_05线性约束的标量,其中 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_标量_06
  • 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_学习_10 :表示所有 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_linux_11
  • 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_决策矩阵_12 :表示矩阵的Frobenius内积,即 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_linux_13
  • 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_linux_14 :表示 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_人工智能_15半正定的,这意味着对于所有的非零向量 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_人工智能_16 ,有 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_学习_17
解释:
  • 目标函数基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_标量_18 意味着我们要最小化矩阵 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_人工智能_19 和决策矩阵 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_标量_20 之间的Frobenius内积。这个内积实际上是矩阵 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_人工智能_19基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_标量_20
  • 线性约束基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_标量_23 表示对于每一个 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_标量_24 ,矩阵 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_标量_25 和决策矩阵 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_标量_20 之间的内积必须等于给定的标量 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_标量_27
  • 半正定约束基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_标量_28 确保了决策矩阵 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_标量_20半正定的。这是SDP的关键特性,也是它名字的来源。
SDP的特点:
  1. 凸性:SDP问题是凸优化问题的一种,这意味着如果存在解,那么找到的解将是全局最优解。
  2. 高效求解:现代算法,如内点法,可以有效地解决大规模的SDP问题。
  3. 应用广泛:SDP问题可以用来放松或近似一些NP-hard的组合优化问题,比如图着色、最大割等问题。
示例:

假设我们有一个SDP问题,其中目标函数是通过矩阵 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_决策矩阵_30 和决策矩阵 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_人工智能_31 的Frobenius内积给出的,而约束条件则是通过一系列矩阵 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_学习_32 和对应的标量 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_linux_33

我们的目标是找到一个半正定矩阵 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_人工智能_31

在SDP问题中,矩阵的大小 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_linux_35 和约束的数量 基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_决策矩阵_36

例如,如果我们有3个约束,我们就可以写出相应的SDP问题:

基于多核学习的多视图学习——半正定规划(Semi-Definite Programming, SDP)_决策矩阵_37