I wanted to know what methods are used to convert non-convex problems into convex ones in wireless communications, and how we can determine which method to use for example, whether to use SCA, BCD, or others. Also, which method gives better results?
Convex optimization plays a major role in wireless communication systems, especially when designing algorithms for resource allocation, power control, beamforming, scheduling, and more.
Here’s a breakdown of the main methods used for convex optimization in wireless communication:
1. Lagrangian Duality
Used when a problem has constraints.
Applications:
Power allocation in MIMO, OFDM systems
Rate maximization under power constraints
Key Idea:
Form the Lagrangian with dual variables (Lagrange multipliers)
Solve the dual problem to find optimal primal solution
If strong duality holds, primal and dual solutions are the same
2. KKT Conditions (Karush-Kuhn-Tucker)
Necessary conditions for optimality in constrained convex problems.
Applications:
Power control
Joint rate and power optimization
Beamforming with QoS constraints
3. Water-Filling Algorithm
A closed-form solution derived from convex optimization.
Applications:
Power allocation in parallel channels (e.g., OFDM)
MIMO systems with channel capacity maximization
Key Idea:
Allocate more power to channels with better SNR
Derived using KKT conditions and Lagrange duality
4. Semidefinite Programming (SDP)
Special class of convex optimization where matrix variables are involved.
Applications:
Beamforming design in MISO/MIMO
Antenna selection and optimization
Robust optimization under uncertainty
Tools:
CVX (MATLAB), SeDuMi, SDPT3
5. Geometric Programming (GP)
Transforms certain non-convex problems into convex form via logarithmic transformations.
Applications:
Power control in wireless networks
SINR-based optimization
Energy efficiency optimization
6. Convex Relaxation Techniques
When original problems are non-convex, but can be relaxed to convex ones.
Examples:
Integer constraints → relaxed to real values
Non-convex QoS or rate constraints → approximated linearly
Used in:
User scheduling
Resource allocation
Antenna selection
7. Interior Point Methods
Numerical algorithms for solving convex problems with inequality constraints.
Used in:
Solvers like CVX, MOSEK, Gurobi
General-purpose but effective for many convex problems
When dealing with non-convex problems, there are various techniques to find local optima through iterative algorithms. One can call it SCA, BCD or alternating optimization. There are also techniques such as the WMMSE algorithm for sum-rate maximization and approaches based on fractional programming. Since they typically converge to local points, there is no guarantee that one algorithm will be better than another one. Hence, I think one should instead look for something that converge quickly (in terms of run time, not number of iterations) and then one can run it multiple times with different initialization to see what different local points you converge to.
There are some tricks to rewrite non-convex problems as convex (based on second-order cones, semi-definite relaxation, or geometric programming). There are also global optimization methods that converge to the global optimum, but with a very long run time. I'm explaining these things in Chapter 2 of my first book:
Emil Björnson, Eduard Jorswieck, “Optimal Resource Allocation in Coordinated Multi-Cell Systems,” Foundations and Trends in Communications and Information Theory, vol. 9, no. 2-3, pp. 113-381, 2013.