凸优化中常用算法的计算复杂度
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.
这篇关于凸优化中常用算法的计算复杂度的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?
- 2024-05-09企业src漏洞挖掘-有意思的命令执行