二次规划

二次规划Quadratic programming),在运筹学当中,是一种特殊类型的最优化问题。

简介

一个有n个变数与m个限制的二次规划问题可以用以下的形式描述。首先给定:

  • 一个n 维的向量 c
  • 一个n × n 维的对称矩阵Q
  • 一个m × n 维的矩阵A
  • 一个m 维的向量 b

则此二次规划问题的目标即是在限制条件为

 

的条件下,找一个n 维的向量 x ,使得

 

为最小。其中  的转置。

根据不同的参数特性,可以得到对问题不同的结论

  • 如果Q是半正定矩阵,那么f(x)是一个凸函数。相应的二次规划为凸二次规划问题;此时若约束条件定义的可行域不为空,且目标函数在此可行域有下界,则该问题有全局最小值。
  • 如果Q是正定矩阵,则该问题有唯一的全局最小值。
  • 若Q为非正定矩阵,则目标函数是有多个平稳点和局部极小点的NP问题
  • 如果Q=0,二次规划问题就变成线性规划问题。

根据优化理论,一个点x成为全局最小值的必要条件是满足Karush-Kuhn-Tucker条件(KKT)。当f(x)是凸函数时,KKT条件也是充分条件。

当二次规划问题只有等式约束时,二次规划可以用线性方程求解。否则的话,常用的二次规划解法有:

  • 内点法(interior point)
  • active set
  • 共轭梯度法
  • 椭球法 若Q为正定矩阵,则相应的二次规划问题可由椭球法在多项式时间内求解。
  • 增广拉格朗日法
  • 梯度投影法

凸集二次规划问题是凸优化问题的一个特例。

对偶

每个二次规划问题的对偶问题也是二次规划问题。以正定矩阵Q为例:

 

对偶问题 ,可定义为

 

可用 :得到 的极小

 ,

对偶函数:

 

对偶问题为:

maximize : 

subject to : 

计算复杂性

当Q正定时,用椭圆法可在多项式时间内解二次规划问题。当Q非正定时,二次规划问题是NP困难的。即使Q只存在一个负特征值时,二次规划问题也是NP困难的。 [1][2]

参考文献

  1. ^ Sahni, S. Computationally related problems (PDF). SIAM Journal on Computing. 1974, 3 (4): 262–279 [2022-09-07]. CiteSeerX 10.1.1.145.8685 . doi:10.1137/0203021. (原始内容 (PDF)存档于2022-04-26). 
  2. ^ Pardalos, Panos M.; Vavasis, Stephen A. Quadratic programming with one negative eigenvalue is (strongly) NP-hard. Journal of Global Optimization. 1991, 1 (1): 15–22. S2CID 12602885. doi:10.1007/bf00120662.