凸优化中常用算法的计算复杂度

2021/12/6 17:17:57

本文主要是介绍凸优化中常用算法的计算复杂度,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

凸优化中常用算法的计算复杂度

  • 线性规划(LP)
  • 逐次凸逼近(SCA)
  • 块坐标下降(BCD)
  • 二分法 (Bisection)
  • 穷举法
  • 参考文献

线性规划(LP)

As explained in [12], the complexity of a standard linear problem is of order O ( a 2 b ) \mathcal{O} (a^2b) O(a2b), where a a a is the number of variables and b b b is the number of constraints.
For instance, the problem (P2.1) in ref [2], it is easy to show that the complexity of (P2.1) is of order O ( ( M N + K N + K + K M N ) ( K M ) 2 ) \mathcal{O} \left ( (MN + KN + K+ KMN)(KM)^2 \right) O((MN+KN+K+KMN)(KM)2).
Note that (P2.1) is a linear function which only consists of the scheduling variables.

  • 变量个数:KM,为什么不是KMN?
  • 约束(10) 的个数 M N + K N MN+KN MN+KN
  • 约束(11) 的个数 K K K
  • 约束(14) 的个数 K M N KMN KMN

逐次凸逼近(SCA)

SCA算法的计算复杂度和 “迭代次数( L L L)”,以及每次迭代中的 “更新变量的个数( N K NK NK)”有关;计算复杂度的表达式为 O ( N K L ) \mathcal{O} (NKL) O(NKL).

块坐标下降(BCD)

BCD algorithm 即 Alternating algorithm.
Alternating/BCD算法的收敛 要求每一个块的优化要达到最优解,而实际问题中每个块问题往往是非凸的,用凸优化技术SCA求解得到的往往是次优解,所以在证明算法的收敛性的时候,需要自行证明一下优化目标函数的非减、非增,证明是存在 upper bound 或 lower bound,如此可证明问题收敛。
在保证问题收敛后,块问题中有多个优化变量时的计算复杂度和SCA算法一样;只有一个优化变量时,变量数为 N N N,则计算复杂度为 O ( N 3.5 ) \mathcal{O} (N^{3.5}) O(N3.5).

二分法 (Bisection)

二分法的计算复杂度是 O ( log ⁡ 2 ( L 0 / e ) ) \mathcal{O} (\log_2(L_0/e)) O(log2​(L0​/e)) , 其中 L 0 L_0 L0​ 是最初的长度间隔, e e e 是要求的精度.

穷举法

穷举法的计算复杂度就是穷举次数。

参考文献

[1] S. Boyd and L. Vandenberghe, Convex Optimization. Cambridge University Press, 2004.
[2] A. Bejaoui, K. Park and M. Alouini, “A QoS-Oriented Trajectory Optimization in Swarming Unmanned-Aerial-Vehicles Communications,” in IEEE Wireless Communications Letters, vol. 9, no. 6, pp. 791-794, June 2020, doi: 10.1109/LWC.2020.2970052.
[3] W. Luo, Y. Shen, B. Yang, S. Wang and X. Guan, “Joint 3-D Trajectory and Resource Optimization in Multi-UAV-Enabled IoT Networks With Wireless Power Transfer,” in IEEE Internet of Things Journal, vol. 8, no. 10, pp. 7833-7848, 15 May15, 2021, doi: 10.1109/JIOT.2020.3041303.
[4] C. Zhan and Y. Zeng, “Aerial–Ground Cost Tradeoff for Multi-UAV-Enabled Data Collection in Wireless Sensor Networks,” in IEEE Transactions on Communications, vol. 68, no. 3, pp. 1937-1950, March 2020, doi: 10.1109/TCOMM.2019.2962479.
[5] R. Duan, J. Wang, C. Jiang, H. Yao, Y. Ren and Y. Qian, “Resource Allocation for Multi-UAV Aided IoT NOMA Uplink Transmission Systems,” in IEEE Internet of Things Journal, vol. 6, no. 4, pp. 7025-7037, Aug. 2019, doi: 10.1109/JIOT.2019.2913473.
[6] Q. Hu, Y. Cai, A. Liu, G. Yu and G. Y. Li, “Low-Complexity Joint Resource Allocation and Trajectory Design for UAV-Aided Relay Networks With the Segmented Ray-Tracing Channel Model,” in IEEE Transactions on Wireless Communications, vol. 19, no. 9, pp. 6179-6195, Sept. 2020, doi: 10.1109/TWC.2020.3000864.



这篇关于凸优化中常用算法的计算复杂度的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程