# Distributed stochastic power control in ad hoc networks: a nonconvex optimization case

- Lei Yang
^{1}Email author, - Yalin E Sagduyu
^{2}, - Junshan Zhang
^{1}and - Jason H Li
^{2}

**2012**:231

https://doi.org/10.1186/1687-1499-2012-231

© Yang et al.; licensee Springer. 2012

**Received: **15 February 2012

**Accepted: **4 July 2012

**Published: **24 July 2012

## Abstract

Signal-to-interference-plus-noise-based power allocation in wireless ad hoc networks is inherently a nonconvex optimization problem because of the global coupling induced by the co-channel interference. To tackle this challenge, we first show that the globally optimal point lies on the boundary of the feasible region. This property is utilized to transform the utility maximization problem into an equivalent max–min problem with more structure. By using extended duality theory, penalty multipliers are introduced for penalizing the constraint violations, and the minimum weighted utility maximization problem is then decomposed into subproblems for individual users to devise a distributed stochastic power control algorithm, where each user stochastically adjusts its target utility to improve the total utility by simulated annealing (SA). The proposed distributed power control algorithm can guarantee global optimality at the cost of slower convergence due to SA involved in the global optimization. The geometric cooling scheme with suitable choice of penalty parameters is then used to improve the convergence rate. Next, by integrating the stochastic power control approach with the back-pressure algorithm, we develop a joint scheduling and power allocation policy to stabilize the queueing systems under random packet traffic. Finally, we generalize the above distributed power control algorithms to multicast communications, and show their global optimality for multicast traffic.

### Keywords

Distributed power control Nonconvex optimization Extended duality theory Simulated annealing Queue stability Unicast communications Multicast communications## Introduction

The broadcast nature of wireless transmissions makes wireless networks susceptible to interference, which deteriorates quality of service (QoS) provisioning. Power control is considered as a promising technique to mitigate interference. One primary objective of power control is to maximize the system utility that can achieve a variety of fairness objectives among users[1–4]. However, maximizing the system utility, under the physical interference model, often involves nonconvex optimization and it is known to be NP-hard, due to the complicated coupling among users through mutual interference effects[5].

Due to the nonconvex nature of the power control problem, it is challenging to find the globally optimal power allocation in a distributed manner. Notably, the authors of[6–9] devised distributed power control algorithms to find power allocations that can only satisfy the local optimality conditions, but global optimality could not be guaranteed in general, except for some special convexifiable cases (e.g., with strictly increasing log-concave utility functions). Another thread of work applied game-theoretic approaches to power control by treating it as a noncooperative game among transmitters[10, 11]. However, distributed solutions that converge to a Nash equilibrium may be suboptimal in terms of maximizing the total system utility. Different from these approaches, the authors of[12] transformed the power control problem into a DC (difference of convex functions) optimization problem[13]. Then, the global optimal solution can be solved in a centralized manner with the branch-and-bound algorithm. Recent study[14] proposed a globally optimal power control scheme, named MAPEL, by exploiting the monotonic nature of the underlying optimization problem. However, the complexity and the centralized nature of MAPEL hinder its applicability in practical scenarios, and thus it can be treated rather as a benchmark for performance evaluation in distributed networks.

To find the globally optimal power allocation in a distributed setting, recent study[15] has proposed the SEER algorithm based on Gibbs sampling[16], which can approach the globally optimal solution in an asymptotic sense when the control parameter in Gibbs sampling tends to infinity. Notably, for each iteration in the SEER algorithm, each user utilizes Gibbs sampling to compute its transition probability distribution for updating its transmission power, where the requirement for message passing and computing the transition probability distribution in each iteration can be demanding when applied to ad hoc communications without centralized control.

A challenging task in distributed power control in ad hoc networks is to reduce the amount of message passing while preserving the global optimality. To tackle this challenge, we first show that the globally optimal point lies on the boundary of the feasible region. This property is utilized to transform the utility maximization problem into an equivalent max–min problem with more structure, which can be solved by combining recent advances in extended duality theory (EDT)[17] with simulated annealing (SA)[18]. Compared with the classical duality theory with nonzero duality gap for nonconvex optimization problems, EDT can guarantee zero duality gap between the primal and dual problems by utilizing nonlinear Lagrangian functions. This property allows for solving the nonconvex problem by its *extended dual* while preserving the global optimality with distributed implementation. Furthermore, as will be shown in Section “Power control for unicast communications”, for the subproblem of each individual user, the extended dual can then be solved through stochastic search with SA. In particular, we first transform the original utility maximization problem into an equivalent max–min problem. This step is based on the key observation that in the case with continuous and strictly increasing utility functions, the globally optimal solution is always on the *boundary* of the feasible (utility) region. Then, appealing to EDT and SA, we develop a distributed stochastic power control (DSPC) algorithm that stochastically searches for the optimal power allocation in the neighborhood of the feasible region’s boundary, instead of bouncing around in the entire feasible region.

Specifically, we first show that DSPC can achieve the global optimality in the underlying nonconvex optimization problem, although the convergence rate can be slow (but this is clearly due to the slow convergence nature of SA with logarithmic cooling schedule). Then, to improve the convergence rate of DSPC, we propose an enhanced DSPC (EDSPC) algorithm that employs the geometric cooling schedule[19] and performs a careful selection of penalty parameters. As a benchmark for performance evaluation, we also develop a centralized algorithm to search for the globally optimal solution over simplices that cover the feasible region. The performance gain is further verified by comparing our distributed algorithms with MAPEL[14], SEER[15], and ADP[6] algorithms. Worth noting is that the proposed DSPC and EDSPC algorithms do not require any knowledge of channel gains, which is typically needed in existing algorithms, and instead they need only the standard feedback of signal-to-interference-plus-noise (SINR) for adaptation.

Next, we integrate the proposed distributed power control approach with the back-pressure algorithm[20] and devise a joint scheduling and power allocation policy for improving the queue stability in the presence of dynamic packet arrivals and departures. This policy fits into the dynamic back-pressure and resource allocation framework and enables distributed utility maximization under stochastic packet traffic[21, 22]. Then, we generalize the study to consider multicast communications, where a single transmission may simultaneously deliver packets to multiple recipients[23, 24]. Specifically, we extend DSPC and EDSPC algorithms to multicast communications with distributed implementation, and show that these algorithms can also achieve the global optimality in terms of jointly maximizing the minimum rates on bottleneck links in different multicast groups.

The rest of the article is organized as follows. In the following section, we first introduce the system model, establish the equivalence between the utility maximization problem and its max–min form, and then develop both centralized and distributed algorithms for the max–min problem. Next, building on these power control algorithms, we develop in Section “Joint scheduling and power control for stability of queueing systems” a joint scheduling and power allocation policy to stabilize queueing systems. The generalization to multicast communications is presented in Section “Power control for multicast communications”. We conclude the article in “Conclusion” Section.

## Power control for unicast communications

### System model

*L*links treat interference as noise, as illustrated in Figure1. Such a model of communication is readily applicable to cellular networks[1]. Each link consists of a dedicated transmitter-receiver pair.

^{a}We denote by

*h*

_{ lk }the fixed channel gain between user

*l*’s transmitter and user

*k*’s receiver, and by

*p*

_{ l }the transmission power of link

*l*with${P}_{l}^{\text{max}}$ being its maximum power constraint. It follows that the received SINR for the

*l*th user with a matched filter receiver is given by

where **p** = (*p*_{1},…,*p*_{
L
}) is a vector of the users’ transmission powers and *n*_{
l
}is the noise power. Accordingly, the *l* th user receives the utility *U*_{
l
}(*γ*_{
l
}), where *U*_{
l
}(·) is continuous and strictly increasing. We assume that each user *l*’s utility is zero when *γ*_{
l
}= 0, i.e., *U*_{
l
}(0) = 0. For ease of reference, the key notation of this article is listed in Table1.^{b}

**Summary of the notations and definitions**

Notation | Definition |
---|---|

$\mathcal{L}$ | Set of links |

| Total number of links |

| Channel gain from link |

| Link gain matrix |

| Transmission power of link |

| Noise power for link |

| SINR of link |

| SINR function of link |

| Utility function of link |

| Ratio of link |

| Transmission rate of link |

| Transmission rate function of link |

| Penalty multipliers |

### Network utility maximization

**p**

^{∗}that maximizes the overall system utility subject to the individual power constraints, given by the following optimization problem

^{c}:

In general, (2) is a nonconvex optimization problem.^{d} In particular, if the utility function is the Shannon rate achievable over Gaussian flat fading channels, namely${U}_{l}\left({\gamma}_{l}\right(\mathbf{p}\left)\right)={w}_{l}\text{log}(1+{\gamma}_{l}(\mathbf{p}\left)\right)$, where *w*_{
l
}> 0 is a weight associated with user *l*, (2) boils down to the weighted sum rate maximization problem, which is known to be nonconvex and NP-hard[5]. Note that the weights in (2) can serve as the fairness measures[25] for different scenarios. In particular, in queueing systems, packet queues for arrival rates within the stability region can be stabilized by solving this weighted sum rate maximization problem, where the instantaneous queue lengths are chosen as the weights. In Section “Joint scheduling and power control for stability of queueing systems”, we will discuss how to stabilize the packet queues by integrating our distributed power control algorithms with the back-pressure algorithm.

Let$\mathcal{F}$ denote the feasible utility region, where for each point **U** = (*U*_{1},…,*U*_{
L
}) in$\mathcal{F}$, there exists a power vector **p** such that *U*_{
l
}= *U*_{
l
}(*γ*_{
l
}(**p**)) for all$l\in \mathcal{L}$. The feasible utility region$\mathcal{F}$ is nonconvex, and in general, finding the globally optimal solution to (2) in$\mathcal{F}$ is challenging. In the following example, we illustrate the geometry of$\mathcal{F}$ for the utility function${U}_{l}\left({\gamma}_{l}\right(\mathbf{p}\left)\right)={w}_{l}\text{log}(1+{\gamma}_{l}(\mathbf{p}\left)\right)$ and evaluate the solutions to (2) given by some existing power control approaches discussed in Section “Introduction”.

#### Example

For the case with two links, Figure2 illustrates the nonconvex feasible utility region$\mathcal{F}$ for different system parameters. We compare the performance of the existing approaches[3, 6, 14, 15] in Table2.

**The performance of the existing approaches for Case I and II**

Approach | Case I | Case II | ||
---|---|---|---|---|

Power | Sum rate | Power | Sum rate | |

GP | [20, 7.68] | 3.02 | [1, 0.61] | 0.98 |

ADP | [20, 6.46] | 3.10 | [1, 2] | 1.16 |

MAPEL | [20, 6.79] | 3.10 | [0, 2] | 1.22 |

SEER | [20, 6.90] | 3.10 | [0, 2] | 1.22 |

#### Remarks

The solutions to (2) given by the authors of[3, 6, 14] are either distributed but suboptimal or optimal but centralized. In particular, Chiang et al.[3] solve (2) by using geometric programming (GP) under the high-SINR assumption, which yields a suboptimal solution to (2) when this assumption does not hold (e.g., this is the case in the example above). The ADP algorithm[6] can guarantee only local optimality^{e} in a distributed manner. The MAPEL algorithm[14] can achieve the globally optimal solutions but it is centralized with high computational complexity. Compared with these algorithms, the SEER algorithm[15] can guarantee global optimality in a distributed manner but message passing needed in each iteration can be demanding, i.e., each link needs the knowledge of the channel gains, the receiver SINR and the signal power of all the other links. It is worth noting that the performance of SEER hinges heavily on the control parameter that can be challenging to choose on the fly.

### From network utility maximization to minimum weighted utility maximization

In order to devise low-complexity distributed algorithms that can guarantee global optimality, we first study the basic properties for the solutions to (2), before transforming (2) into a more structured max–min problem.

#### Lemma 1

*The optimal solution to (2) is on the boundary of the feasible utility region*$\mathcal{F}$.

#### Proof

Let **U**^{∗} denote a globally optimal solution to (2) over$\mathcal{F}$, and *γ*^{∗} denote the corresponding SINR that supports **U**^{∗}. Since *U*_{
l
}(·) is continuous and strictly increasing, proving that **U**^{∗} is on the boundary of$\mathcal{F}$ is equivalent to showing that *γ*^{∗} is on the boundary of the feasible SINR region. Suppose that *γ*^{∗} is not on the boundary of the feasible SINR region, which indicates that there exists some point$\widehat{\gamma}$ such that${\widehat{\gamma}}_{l}\ge {\gamma}_{l}^{\ast}$ for all$l\in \mathcal{L}$ and${\widehat{\gamma}}_{{l}^{\prime}}>{\gamma}_{{l}^{\prime}}^{\ast}$ for some${l}^{\prime}\in \mathcal{L}$. Since *U*_{
l
}(·) for any$l\in \mathcal{L}$ is strictly increasing in *γ*_{
l
}, we have${U}_{l}\left({\widehat{\gamma}}_{l}\right)\ge {U}_{l}\left({\gamma}_{l}^{\ast}\right)$ for all$l\in \mathcal{L}$ and${U}_{l}\left({\widehat{\gamma}}_{{l}^{\prime}}\right)>{U}_{l}\left({\gamma}_{{l}^{\prime}}^{\ast}\right)$ for some${l}^{\prime}\in \mathcal{L}$, which contradicts the fact that *γ*^{∗} is a globally optimal solution. Hence, Lemma 1 follows. □

Based on Lemma 1, if we can characterize the boundary of$\mathcal{F}$, then it is possible to solve (2) efficiently. Thus motivated, we first establish, by introducing a “contribution weight” for each user, the equivalence between (2) and the minimum weighted utility maximization problem.

#### Lemma 2

*Problem (2) is equivalent to the following minimum weighted utility maximization:*

#### Proof

*U*

_{ l }(·) is nonnegative, we define

*x*

_{ l }∈[0, 1] as a ratio for the contribution of user

*l*’s utility to

*t*. Therefore,

*U*

_{ l }(

*γ*

_{ l }(

**p**)) =

*t*

*x*

_{ l }and$\sum _{l\in \mathcal{L}}{x}_{l}=1$. Then (2) can be rewritten as

In order to maximize *t*, it suffices then to relax$t=\frac{{U}_{l}\left({\gamma}_{l}\right(\mathbf{p}\left)\right)}{{x}_{l}}$ in (4) as$t\le \frac{{U}_{l}\left({\gamma}_{l}\right(\mathbf{p}\left)\right)}{{x}_{l}},\phantom{\rule{2.77695pt}{0ex}}\forall l\in \mathcal{L}$, which is equivalent to$t\le \underset{l\in \mathcal{L}}{\text{min}}\frac{{U}_{l}\left({\gamma}_{l}\right(\mathbf{p}\left)\right)}{{x}_{l}}$. Therefore, (4) can be treated as the hypograph form of (3), i.e., (4) and (3) are equivalent[26], thereby concluding the proof. □

**x**

^{∗}, given which we can efficiently obtain a globally optimal solution, i.e., the tangent point of the hyperplane and$\mathcal{F}$, as illustrated in Figure3. Intuitively speaking,

**x**represents a search direction. Once we find the best search direction

**x**

^{∗}

**p**

^{∗}can be obtained efficiently by searching along the direction of

**x**

^{∗}. Actually, for given

**x**, (3) is quasi-convex.

^{f}By introducing an auxiliary variable

*t*, we obtain the following equivalent formulation:

which can be solved in polynomial time through binary search on *t*[26]. However, the optimal search direction **x**^{∗} is difficult to find due to the nonconvex nature of the problem. In the following section, we study how to find the globally optimal search direction **x**^{∗}.

### Centralized versus distributed algorithms

In this section, we study algorithms achieving global optimality for (3). First, we propose a centralized algorithm for (3), which will serve as a benchmark for performance comparison. Then, by using EDT and SA, we propose a distributed algorithm, DSPC, for the problem (3). Building on this, we propose an EDSPC algorithm to improve the convergence rate of DSPC.

#### A centralized algorithm

Based on Lemmas 1 and 2, we develop a centralized algorithm (Algorithm 1) to solve the max–min optimization problem (3) under consideration. Roughly speaking, by dividing the simplex$\mathcal{S}=\left\{\mathbf{x}\right|\sum _{l\in \mathcal{L}}{x}_{l}=1,0\le {x}_{l}\le 1,\forall l\in \mathcal{L}\}$ into many small simplices, the algorithm can find the optimal point on the boundary of$\mathcal{F}$. Figure4 illustrates how the simplex cutting is performed for the case with three links. Compared with the MAPEL algorithm[14], Algorithm 1 directly computes the points on the boundary, instead of constructing a series of polyblocks to approximate the boundary of the feasible region.

### Algorithm 1

**Initialization**: Choose the approximation factor *ε* > 0, and construct the initial simplex$\mathcal{S}$ with the vertex set *V* = {*v*_{1},…,*v*_{
L
}}, where *v*_{
l
}= *e*_{
l
} and *e*_{
l
} is the *l* th unit coordinate vector. Let${v}_{c}=\frac{1}{L}\sum _{l\in \mathcal{L}}{v}_{l}$ be the center of *S*. Compute **p**^{∗} by solving (5) at the point **x** = *v*_{
c
}. Denote$\delta \left(\mathcal{S}\right)=\underset{v\in V}{\text{max}}|{v}_{c}-v|$ as the diameter of$\mathcal{S}$.

**Repeat**

- 1.
Divide each simplex ${\mathcal{S}}_{i}$ by using

*bisection*method, which chooses the midpoint of one of the longest edges of the simplex ${\mathcal{S}}_{i}$, i.e., ${v}_{m}=\frac{1}{2}({v}_{r}+{v}_{s})$, where*v*_{ r }and*v*_{ s }are the end points of a longest edge of the simplex. In this case, the simplex ${\mathcal{S}}_{i}$ is subdivided into two simplices ${\mathcal{S}}_{{i}_{1}}$ and ${\mathcal{S}}_{{i}_{2}}$. - 2.
For each new simplex ${\mathcal{S}}_{{i}_{j}}$, compute the diameter $\delta \left({\mathcal{S}}_{{i}_{j}}\right)$ and

**p**^{∗}by solving (5) at**x**given by the center point of the simplex. - 3.
Find the current best solution to (3) and the maximal diameter

*δ*^{ m }in these new subdivided simplices.

**Until** *δ*^{
m
}< *ε*.

#### Proposition 1

*Algorithm 1 converges monotonically to the globally optimal solution to (3) as the approximation factor ε approaches zero.*

#### Proof

For given *ε*, Algorithm 1 divides the simplex$\mathcal{S}=\left\{\mathbf{x}\right|\sum _{l\in \mathcal{L}}{x}_{l}=1,0\le {x}_{l}\le 1,\forall l\in \mathcal{L}\}$ until the maximal diameter of the subdivided simplices *δ*^{
m
}is less than *ε*. Let *d*(*ε*) denote the maximum distance between the optimal solution **x**^{∗} and the center point of the simplex that contains **x**^{∗}. Obviously, *d*(*ε*) is bounded by *δ*^{
m
}. Since *δ*^{
m
} decreases with the decreasing of *ε*, therefore *d*(*ε*) decreases monotonically with the decreasing of *ε*, i.e., the solution given by Algorithm 1 monotonically converges to **x**^{∗}. As *ε* approaches zero, Algorithm 1 exhaustively searches every point in the simplex$\mathcal{S}$, thereby concluding the proof. □

#### Remarks

Algorithm 1 can be used to obtain an *ε*-optimal solution with |**x** − **x**^{∗}| ≤ *ε*. That is to say, by controlling *ε*, one can strike a balance between the optimality and the computation time. Since finding the globally optimal solution requires centralized implementation, Algorithm 1 will be used only as a benchmark for performance evaluation of distributed algorithms.

#### DSPC algorithm

*extended dual*while preserving the global optimality in distributed implementation. To this end, we first introduce auxiliary variables and use EDT to transform (3) with the auxiliary variables into an unconstrained problem. Then, we solve the unconstrained problem by using the SA mechanism. Specifically, we define${t}_{l}=\frac{{U}_{l}\left({\gamma}_{l}\right(\mathbf{p}\left)\right)}{{x}_{l}}$ and rewrite (3) as

where${\left(y\right)}^{+}=\text{max}(0,y)$, and$\alpha \in \mathbb{R}$ and$\mathit{\beta}\in {\mathbb{R}}^{L}$ are the penalty multipliers for penalizing the constraint violations. Based on EDT[17], there exist finite *α*^{∗} ≥ 0 and${\beta}_{l}^{\ast}\ge 0$, for all$l\in \mathcal{L}$, such that, for any *α* > *α*^{∗} and${\beta}_{l}>{\beta}_{l}^{\ast}$$\forall \phantom{\rule{1em}{0ex}}l\in \mathcal{L}$, the solution to (7) is the same as (6). Note that (7) does not include the constraints of *p*_{
l
}, *x*_{
l
}, and *t*_{
l
}for each user, and there will be no constraint violation when each user updates these variables locally. Therefore, the minimization of (7) with respect to the primal variables (**p**, **x**, and **t**) can be carried out individually by each user in a distributed fashion.

*t*

_{ l },

*x*

_{ l }, and

*p*

_{ l }denote the primal values of the

*l*th user, and${t}_{l}^{\prime}$ and${x}_{l}^{\prime}$ denote the new values randomly chosen by the

*l*th user. Accordingly,${t}_{l}^{\prime}{x}_{l}^{\prime}$ can be treated as a new target utility for the

*l*th user. To achieve this target utility, the

*l*th user updates${p}_{l}^{\prime}$ by

where *γ*_{
l
} is the current SINR measured at the *l* th user’s receiver. Note that (8) does not need any information of channel gains, except the feedback of SINR *γ*_{
l
}. Since (8) corresponds to the distributed power control algorithm of standard form as described in[27],^{g} it converges geometrically fast to the target utility. Thus, we assume that each user *l* updates *p*_{
l
} at a faster time-scale than *t*_{
l
} and *x*_{
l
} such that *p*_{
l
} always converges before the next update of *t*_{
l
} and *x*_{
l
}. Next, we use SA to update *t*_{
l
} and *x*_{
l
} in a stochastic operation. By using the analogy with annealing in metallurgy, SA was proposed in[18] to mimic the behavior of the microscopic constituents in heating and controlled cooling of a material. By allowing occasional uphill moves, SA is able to escape from the local optimal points. In particular, let *Δ* denote the difference between *L*(*p*_{
l
}, *x*_{
l
}, *t*_{
l
}|**p**_{−l}, **x**_{−l}, **t**_{−l}, *α*, β) and$L({p}_{l}^{\prime},{x}_{l}^{\prime},{t}_{l}^{\prime}|{\mathbf{p}}_{-l}^{\prime},{\mathbf{x}}_{-l},{\mathbf{t}}_{-l},\alpha ,\mathit{\beta})$, where **y**_{−l} is the vector **y** without the *l* th user’s variable. If *Δ* ≥ 0, i.e.,${t}_{l}^{\prime}$,${x}_{l}^{\prime}$ and${p}_{l}^{\prime}$ reduce Lagrangian (7), then they are accepted with probability 1; otherwise, they are accepted with probability$\text{exp}\left(\frac{\Delta}{T}\right)$, where *T* is a control parameter and sometimes it is called temperature. Note that, as *T* decreases, the acceptance of uphill move becomes less and less probable, and therefore a fine-grained search is needed. It has been shown that, as *T* approaches 0 according to a *logarithmic cooling schedule*, SA converges to a globally optimal point[16, 19]. To compute *Δ* locally by each user *l*, user *l* needs to broadcast the terms *t*_{
l
}, *x*_{
l
} and${\beta}_{l}{({t}_{l}{x}_{l}-{U}_{l}({\gamma}_{l}\left(\mathbf{p}\right)\left)\right)}^{+}$, whenever any of these terms changes.

*t*

_{ l }

*x*

_{ l }may not be feasible, i.e., the target utility cannot be achieved even though the user transmits at the maximum power. In this case, it can be shown that the power of those users with feasible target utilities will converge to a feasible solution, whereas the other users that cannot achieve the target utility will continue to transmit at maximum power[1]. If some target utility is not feasible as

*T*tends to 0, based on EDT, the current values of

*α*and β do not satisfy

*α*>

*α*

^{∗}or${\beta}_{l}>{\beta}_{l}^{\ast}$ for all$l\in \mathcal{L}$. Therefore, each user

*l*also needs to update

*α*and

*β*

_{ l }. In particular, if any constraint is violated,

*α*and

*β*

_{ l }are updated as follows:

where *σ* and *ϱ*_{
l
} are used to control the rate of updating *α* and *β*_{
l
}. A detailed description of DSPC algorithm is given in Algorithm 2.

**Remarks:**

- (1)
In Algorithm 2, each user randomly picks ${t}_{l}^{\prime}\in [{U}_{l}^{\text{max}},{U}_{\mathit{\text{tot}}}^{\text{max}}]$, where ${U}_{l}^{\text{max}}$ denotes the maximum utility of the user

*l*when the user*l*transmits at the maximum power while the other users do not transmit, and ${U}_{\mathit{\text{tot}}}^{\text{max}}={\sum}_{l\in \mathcal{L}}{U}_{l}^{\text{max}}$. Note that ${U}_{l}^{\text{max}}$ can be computed by each user locally. Further, we assume that each user broadcasts ${U}_{l}^{\text{max}}$ before running the algorithm so that ${U}_{\mathit{\text{tot}}}^{\text{max}}$ is also known by each user. - (2)
In practice, after initialization,

*α*and*β*_{ l }increase in proportion to the violation of the corresponding constraint, which may lead to excessively large penalty values. Since it is beneficial to periodically scale down the penalty values to ease the unconstrained optimization,*α*and*β*_{ l }are scaled down by multiplying with a random value (it can be chosen between 0.7 and 0.95 according to [17]), if the*penalty decrease condition*is satisfied, i.e., the maximum violation of constraints is not decreased after consecutively running Step 1 in Algorithm 2 several times, e.g., five times in [17]. - (3)
In Algorithm 2, each user requires the knowledge of

*T*and time epochs {*τ*_{1},*τ*_{2},…} to update*t*_{ l }and*x*_{ l }, which can be determined and informed to each user offline.

### Algorithm 2 DSPC

**Initialization**: Choose *ε* > 0. Let *α* = 0, *β*_{
l
}= 0,$\forall l\in \mathcal{L}$, and randomly choose **p**, **x** and **t**.

**Step 1: update primal variables** Set *T* = *T*_{0}, and select a sequence of time epochs {*τ*_{1}, *τ*_{2},…} in continuous time.

**Repeat for each user**

*l*

- 1.
Randomly pick ${t}_{l}^{\prime}\in [{U}_{l}^{\text{max}},{U}_{\mathit{\text{tot}}}^{\text{max}}]$ and ${x}_{l}^{\prime}\in [0,1]$, and update ${p}_{l}^{\prime}$ according to (8).

- 2.
Keep sensing the change of ${\beta}_{l}{({t}_{l}{x}_{l}-{U}_{l}({\gamma}_{l}\left(\mathbf{p}\right)\left)\right)}^{+}$ broadcast by other users.

- 3.
Compute

*Δ*, and accept ${t}_{l}^{\prime}$, ${x}_{l}^{\prime}$, and ${p}_{l}^{\prime}$ with probability 1, if*Δ*≥0, or with probability $\text{exp}\left(\frac{\Delta}{T}\right)$, otherwise. - 4.
Broadcast ${t}_{l}^{\prime}$ and ${x}_{l}^{\prime}$, if ${t}_{l}^{\prime}$ and ${x}_{l}^{\prime}$ are updated.

- 5.
For each time epoch

*τ*_{ i }, update $T={T}_{0}/\text{log}(i+1)$.

**Until** *T* < *ε*.

**Step 2: update penalty variables**

**For each user**

*l*,

- 1.
Update

*α*and*β*_{ l }according to (9), and scale down*α*and*β*_{ l }, if the penalty decrease condition is satisfied. - 2.
Go to Step 1 until no constraint is violated.

#### Proposition 2

*The DSPC algorithm (Algorithm 2) converges almost surely to a globally optimal solution to (3), as temperature T in SA decreases to zero.*

#### Proof

To show that Algorithm 2 converges almost surely to a globally optimal solution to (3), we only need to show that when *α* > *α*^{∗} and${\beta}_{l}>{\beta}_{l}^{\ast}$ for all$l\in \mathcal{L}$, Algorithm 2 can converge almost surely to a globally optimal solution to (6), since (3) is equivalent to (6), and if the solution does not satisfy the constraints of (6), *α* and *β*_{
l
} will increase in proportion to the violation of the corresponding constraint. Since Algorithm 2 uses SA with the logarithmic cooling schedule, based on[16, 19] it can converge almost surely to a globally optimal solution to (7), which is also a globally optimal solution to (6) based on EDT when *α* > *α*^{∗} and${\beta}_{l}>{\beta}_{l}^{\ast}$ for all$l\in \mathcal{L}$[17]. Hence, Proposition 2 follows. □

#### Remarks

The DSPC algorithm can guarantee global optimality in a distributed manner without the need of channel information. In particular, it needs the information of *t*_{
l
} and *x*_{
l
}, and can adapt to channel variations by utilizing the SINR feedback. However, the convergence rate of DSPC is slow due to the use of logarithmic cooling schedule.

#### EDSPC algorithm

It can be seen from Algorithm 2 that it is critical to find the optimal penalty variables *α* and β for computing (7). Moreover, a logarithmic cooling schedule is used to ensure convergence to a global optimum. To improve the convergence rate, we propose next an EDSPC algorithm by empirically choosing the initial penalty values *α*_{0} and β_{0} and employing a *geometric cooling schedule*[18], which reduces the temperature *T* in SA by *T* = *ξT*, 0 < *ξ* < 1, at each time epoch. Compared with the logarithmic cooling schedule, *T* converges to 0 much faster under the geometric cooling schedule, which in turn improves the convergence rate beyond DSPC. The resulting solution is given in Algorithm 3.

We note that although EDSPC converges much faster than DSPC, it may yield only near-optimal solutions. Based on EDT, we choose${\alpha}_{0}>{\alpha}^{\ast}$ and${\beta}_{0l}>{\beta}_{l}^{\ast},\phantom{\rule{1em}{0ex}}\forall \phantom{\rule{1em}{0ex}}l\in \mathcal{L}$, to satisfy the optimality conditions for penalty variables. Obviously, by choosing large *α*_{0} and *β*_{0l}, these conditions can be always satisfied. Nevertheless, very large penalties introduce heavy costs for constraint violations such that EDSPC may end up with a feasible but suboptimal solution. Therefore, the selection of initial penalty values plays a critical role in the performance of EDSPC and deserves more attention in future work. In practice, we can choose the initial penalties based on the maximum value of the constraint that is associated with each of the penalty variables. This choice performs well in the simulations. For example, we can choose${\beta}_{0l}={U}_{l}^{\text{max}}$ for the constraint *t*_{
l
}*x*_{
l
} ≤ *U*_{
l
}(*γ*_{
l
}(**p**)).

### Algorithm 3 EDSPC

**Initialization**: Choose *ε* > 0. Let *α* = *α*_{0}, *β*_{
l
}= *β*_{0l},$\forall l\in \mathcal{L}$, and randomly choose **p**, **x** and **t**.Set *T* = *T*_{0}, and select a sequence of time epochs {*τ*_{1}, *τ*_{2},…} in continuous time.

**Repeat for each user**

*l*

- 1.
Randomly pick ${t}_{l}^{\prime}\in [{U}_{l}^{\text{max}},{U}_{\mathit{\text{tot}}}^{\text{max}}]$ and ${x}_{l}^{\prime}\in [0,1]$, and update ${p}_{l}^{\prime}$ according to (8).

- 2.
Keep sensing the change of ${\beta}_{l}{({t}_{l}{x}_{l}-{U}_{l}({\gamma}_{l}\left(\mathbf{p}\right)\left)\right)}^{+}$ broadcast by other users.

- 3.
Compute

*Δ*, and accept ${t}_{l}^{\prime}$, ${x}_{l}^{\prime}$, and ${p}_{l}^{\prime}$ with probability 1, if*Δ*≥ 0, or with probability $\text{exp}\left(\frac{\Delta}{T}\right)$, otherwise. - 4.
Broadcast ${t}_{l}^{\prime}$ and ${x}_{l}^{\prime}$, if ${t}_{l}^{\prime}$ and ${x}_{l}^{\prime}$ are updated.

- 5.
For each time epoch

*τ*_{ i }, update*T*=*ξT*.

**Until** *T* < *ε*.

### Performance evaluation

^{h}and EDSPC). We consider a wireless network with six links randomly distributed on a 10-by-10 m

^{2}square area. The channel gains

*h*

_{ lk }are equal to${d}_{\mathit{\text{lk}}}^{-4}$, where

*d*

_{ lk }represents the distance between the transmitter of user

*l*and the receiver of user

*k*. We assume${U}_{l}\left({\gamma}_{l}\right(\mathbf{p}\left)\right)=\text{log}(1+{\gamma}_{l}(\mathbf{p}\left)\right)$,${P}_{l}^{\text{max}}=1$ and${n}_{l}=1{0}^{-4}$ for all$l\in \mathcal{L}$, and consider one randomly generated realization of channel gains given by

Figure5 shows how the total utility in the EDSPC algorithm converges over time, when we choose all the initial penalty values equal to 10. Also, we choose *ξ* = 0.9, *ρ* = 1, and *ϱ* = 1, and use Algorithm 1 as a benchmark to evaluate the optimal performance. As shown in Figure5, the EDSPC algorithm approaches the optimal utility, when the initial penalty values are carefully chosen. Moreover, the convergence rate of the EDSPC algorithm is much faster than DSPC, since DSPC continues updating the penalty values even after the optimal solution is found for the current penalty values. Figure6 illustrates the average performance (with confidence interval) of DSPC, EDSPC, SEER, and ADP under 100 random initializations, with the same system parameters as used in Figure5. As shown in Figure6, both DSPC and EDSPC are robust against the variations of initial values.

Figures5 and6 compare the proposed algorithms with the SEER and ADP. As mentioned in Section “Introduction”, ADP can only guarantee local optimality. Therefore, for nonconvex problems (e.g., in this example), ADP may converge to a suboptimal solution. As noted in[15], the performance of SEER heavily hinges on the control parameter that can be challenging to choose in online operation. In contrast, DSPC can approach the globally optimal solution regardless of the initial parameter selection, but the convergence rate may be slower. Furthermore, EDSPC improves the convergence rate, but in this case the initial penalty values would impact how close it can approach the optimal point. In terms of message passing, our algorithms do not require individual links to know the channel gains (including its own channel gain), the receiver SINR of the other links and the signal power of the other links, which are all needed in the SEER algorithm.

## Joint scheduling and power control for stability of queueing systems

In Section “Power control for unicast communications”, we studied the distributed power allocation, by using DSPC and EDSPC, for utility maximization in the saturated case with uninterrupted packet traffic. In this section, we generalize the study by considering a queueing system with dynamic packet arrivals and departures. Specifically, we develop a joint scheduling and power allocation policy to stabilize packet queues by integrating our power control algorithms with the celebrated back-pressure algorithm[20].

### Stability region and throughput optimal power allocation policy

*L*links as in Section “Power control for unicast communications”. We assume that there are

*S*classes of users in the system, and that the traffic brought by users of class

*s*follows${\left\{{A}_{\mathit{\text{sl}}}\right(t\left)\right\}}_{t=1}^{\infty}$, which are

*i.i.d.*sequences of random variables for all

*l*= 1,…,

*L*and

*s*= 1,…,

*S*, where

*A*

_{ sl }(

*t*) denotes the amount of traffic generated by users of class

*s*that enters the link

*l*in slot

*t*. We assume that the second moments of the arrival process${\left\{{A}_{\mathit{\text{sl}}}\right(t\left)\right\}}_{t=1}^{\infty}$ are finite. Let${Q}_{T\left(l\right)}^{s}\left(t\right)$ and${Q}_{R\left(l\right)}^{s}\left(t\right)$ denote the current backlog in the queue of class

*s*in slot

*t*on the transmitter and receiver sides of link

*l*, respectively. The queue length${Q}_{T\left(l\right)}^{s}\left(t\right)$ evolves over time as

where${r}_{l}^{s}\left(t\right)$ denotes the transmission rate of link *l* for users of class *s*. The third term in (10) denotes the traffic from the other links. The queue length process${\left\{{Q}_{T\left(l\right)}^{s}\right(t\left)\right\}}_{t=1}^{\infty}$ forms a Markov chain.

Let *ψ*_{
s
} denote the first moment of${\left\{{A}_{\mathit{\text{sl}}}\right(t\left)\right\}}_{t=1}^{\infty}$, i.e., the load brought by users of class *s*. As is standard[20, 21, 28], the stability region is defined as follows.

#### Definition 1

*The stability region ∧ is the closure of the set of all*${\left\{{\psi}_{s}\right\}}_{s=1}^{S}$*for which there exists some feasible power allocation policy under which the system is stable, i.e.,*$\wedge =\bigcup _{\mathbf{p}\in \mathcal{P}}\wedge \left(\mathbf{p}\right)$, where$\wedge \left(\mathbf{p}\right)=\left\{{\left\{{\psi}_{s}\right\}}_{s=1}^{S}\right|{\sum}_{s=1}^{S}{E}_{\mathit{\text{sl}}}{\psi}_{s}<{r}_{l}\left(\mathbf{p}\right),\forall l\}$,$\mathcal{P}$*denotes the set of feasible power allocation, r*_{
l
}(**p**) *denotes the rate of link l under power allocation* **p**, *and E*_{
sl
} = 1 *is the indicator that the path of users of class s uses link l, and E*_{
sl
}* = * 0, *otherwise.*

For the sake of comparison, the throughput region^{i}$\mathcal{F}$ of the corresponding saturated case is defined as the set of all feasible link rates, i.e.,$\mathcal{F}=\left\{\mathbf{r}\right|{r}_{l}={r}_{l}\left(\mathbf{p}\right),\mathbf{p}\in \mathcal{P}\}$. In general, the throughput region$\mathcal{F}$ may be different from the stability region *∧*, except for some special cases (e.g., in slotted ALOHA systems the throughput region and the stability region are the same[29] for two links and in a multiple-access channel the information theoretic capacity region is equivalent to its stability region under specific feedback assumptions[30]).

The queueing system is stable if the arrival rates of packet queues are less than the service rates such that the queue lengths do not grow to infinity[31]. In order to stabilize packet queues, it is critical to find the optimal scheduling and power allocation policy that maximizes the weighted sum rate given by (11). By integrating our power control algorithms with the back-pressure algorithm, we propose a joint scheduling and power allocation policy presented in Algorithm 4 to stabilize the queueing system.

#### Proposition 3

*The joint scheduling and power allocation policy (Algorithm 4) can stabilize the system such that*${\text{lim sup}}_{t\to \infty}\frac{1}{t}{\sum}_{\tau =0}^{t-1}{\sum}_{l,s}E\left\{{Q}_{l}^{s}\right(\tau \left)\right\}<\infty $, *when the traffic load*${\left\{{\psi}_{s}\right\}}_{s=1}^{S}$*is strictly interior to the stability region ∧, i.e., there exists some ε > 0 such that*${\{{\psi}_{s}+\epsilon \}}_{s=1}^{S}\in \wedge $.

The proof is similar to that in[21, 32], and is omitted for brevity.

Note that Algorithm 4 can be viewed as a dynamic back-pressure and resource allocation policy[32], crafted towards solving the weighted sum rate maximization problem (11). Specifically, by using the DSPC algorithm, Algorithm 4 can be implemented distributively to find the globally optimal resource allocation. We should caution that EDSPC can be applied to improve the convergence rate of Stage 2 in Algorithm 4 but it may render a suboptimal schedule (i.e., it can not stabilize all possible${\left\{{\psi}_{s}\right\}}_{s=1}^{S}$ within *∧*), due to the fact that EDSPC may not always find the global optimal power allocation.

To reduce the complexity, we can consider a policy that computes (11) periodically every few slots, and it can be shown that this policy can also stabilize the system, when${\left\{{\psi}_{s}\right\}}_{s=1}^{S}$ is strictly interior to the stability region *∧*[33, 34].

### Algorithm 4 Joint scheduling and power allocation policy

**Stage 1:** For each link *l*, select a link weight according to${w}_{l}\left(t\right)=\underset{s=1,\dots ,S}{\text{max}}{D}_{l}^{s}\left(t\right)$, where the difference of queue lengths of class *s* is${D}_{l}^{s}\left(t\right)=\text{max}\left({Q}_{T\left(l\right)}^{s}\right(t)-{Q}_{R\left(l\right)}^{s}(t),0)$, if the receiver of link *l* is not the destination of class *s*’s traffic, and${D}_{l}^{s}\left(t\right)={Q}_{T\left(l\right)}^{s}$, otherwise.

**Stage 2:**Compute the optimal power allocation

**p**

^{∗}in each slot

*t*by solving the following problem with DSPC algorithm

Thus, the transmission rate of link *l* in slot *t* is given by${r}_{l}\left({\mathbf{p}}^{\ast}\right)=\text{log}(1+{\gamma}_{l}({\mathbf{p}}^{\ast}\left)\right)$.

**Stage 3:** Let${s}_{l}^{\ast}=\text{arg}\underset{s=1,\dots ,S}{\text{max}}{D}_{\mathit{\text{sl}}}\left(t\right)$ denote the class scheduled in slot *t*; if multiple classes satisfy this condition, then${s}_{l}^{\ast}$is randomly chosen as one of these classes. Then, schedule these classes according to the solution given by Stage 2.

### Performance evaluation

In this section, we present numerical results to illustrate the use of Algorithm 4 for stabilizing a queueing system. We consider a one-hop network (i.e., **E** = {*E*_{
sl
}} is the identity matrix) with two users (classes), where the channel gains are *h*_{11} = 0.3, *h*_{12} = 0.5, *h*_{21} = 0.03, and *h*_{22} = 0.8, and the noise power is 0.1 for each link. The maximum transmission power is set to 1 and 2 for links 1 and 2, respectively. Besides, we assume that the users of class *s* arrive at the network according to a Poisson process with rate *λ*_{
s
}, and that the size of packet batch for users of class *s* follows an exponential distribution with mean *ν*_{
s
}. The load brought by users of class *s* is then *ψ*_{
s
}= *λ*_{
s
}*ν*_{
s
}. Figure7 shows the stability region *∧* and compares it with the throughput region$\mathcal{F}$ of the corresponding saturated case. The stability region follows from the union of link rates that are conditioned on whether the other link is backlogged or not[29, 30]. First, we derive the stability region for the given power allocation. Then, we vary power allocation in the feasible region, and by taking the envelope of these regions, we obtain the overall stability region shown in Figure7. However, different from the previous cases, where the throughput region is the same as the stability region, e.g., in a slotted ALOHA system with two links[29] and in a multiple-access channel[30], the throughput region$\mathcal{F}$ under the SINR model is strictly smaller than the stability region (due to the underlying nonconvex optimization problem), as observed from Figure7, which is the convex hull of$\mathcal{F}$, i.e.,$\mathrm{Co}\left(\mathcal{F}\right)$, achievable by timesharing across different transmission modes.^{j}

Then, we vary the arrival rate *λ* and the average batch size *ν* to change the traffic intensity *ψ* = *λν*. Assuming that the arrival rate and the average batch size of each user are the same, we compare in Figure8 the sample paths of each user’s queue length for *ψ* = 1 (*λ* = 1, *ν* = 1) with *ψ* = 1.5 (*λ* = 1.5, *ν* = 1). When *ψ* = 1, which falls in the stability region shown in Figure7, the system is stabilized by using Algorithm 4. On the other hand, the system becomes unstable when *ψ* = 1.5, which is outside the stability region. Figure9 illustrates the average delay of the system as a function of the arrival rates. The delay is finite for small loads and grows unbounded when the loads are outside the stability region.

## Power control for multicast communications

Due to wireless multicast advantage[23], multicasting enables efficient data delivery to multiple recipients with a single transmission. In this section, we extend the DSPC algorithms in Section “Power control for unicast communications” to support multicast communications.

### System model

Beyond the model described in Section “Power control for unicast communications”, we consider that each user *l* has one transmitter and a set${\mathcal{M}}_{l}$ of receivers. The corresponding transmission rate, *r*_{
l
}, is determined by the bottleneck link among these transmitter–receiver pairs, i.e.,${r}_{l}=\underset{m\in {\mathcal{M}}_{l}}{\text{min}}{r}_{\mathit{\text{lim}}}$, where *r*_{
lm
} denotes the link rate between the transmitter of user *l* and its receiver *m*, and it is calculated from the Shannon rate$\text{log}(1+{\gamma}_{\mathit{\text{lim}}}(\mathbf{p}\left)\right)$ for Gaussian, flat fading channels. Here, we do not consider the general broadcast capacity region but rather focus on maximizing the bottleneck link rates.

### Network utility maximization

**p**

^{∗}that maximizes the overall system utility subject to the power constraints in multicast communications, as follows:

### Distributed global optimization algorithms

where${\alpha}_{\mathit{\text{lim}}}\in \mathbb{R}$ are the penalty multipliers. From EDT, there exist finite${\alpha}_{\mathit{\text{lim}}}^{\ast}\ge 0$ for all$l\in \mathcal{L},m\in {\mathcal{M}}_{l}$ such that, for any${\alpha}_{\mathit{\text{lim}}}>{\alpha}_{\mathit{\text{lim}}}^{\ast}$$\forall \phantom{\rule{1em}{0ex}}l\in \mathcal{L},m\in {\mathcal{M}}_{l}$, the solution to (15) is the same as (14)[17]. Note that (15) does not include the constraint of *p*_{
l
} for each user. Therefore, there will be no constraint violation when each user updates the transmission power locally, while minimizing (15) in a distributed operation.

*r*

_{ l }and

*p*

_{ l }denote the primal values of the

*l*th user, and${r}_{l}^{\prime}$ denote the new value randomly chosen by the

*l*th user, which is treated as a new target transmission rate for the

*l*th user. Different from the unicast communications case, the

*l*th user updates${p}_{l}^{\prime}$ by

where *γ*_{
lm
} is the current SINR measured at the receiver *m* of user *l*. Note that (16) does not need any information of the channel gains, except the feedback of SINR *γ*_{
lm
} from the intended receivers. Since (16) is in standard form as described in[27], it converges geometrically fast to the target transmission rate. The steps to update _{
r
l
} and *α*_{
lm
} are similar to DSPC Algorithm 2 in Section “Power control for unicast communications”. Note that the target transmission rate *r*_{
l
} may not be feasible, i.e., the target utility cannot be achieved even though the user transmits at the maximum power. In this case, it can be shown that the power of those users with feasible target transmission rates will converge to a feasible solution, whereas the other users that cannot achieve the target transmission rate will continue to transmit at maximum power[1]. A detailed description of DSPC algorithm for multicast communications is presented in Algorithm 5.

#### Remarks

In Algorithm 5, each user randomly picks${r}_{l}^{\prime}\in [0,{r}_{l}^{\text{max}}]$, where${r}_{l}^{\text{max}}=\underset{m\in {\mathcal{M}}_{l}}{\text{min}}{r}_{\mathit{\text{lim}}}^{\text{max}}$, and${r}_{\mathit{\text{lim}}}^{\text{max}}$ is the maximum link rate between the transmitter of the user *l* and its receiver *m*, when the user *l* transmits at the maximum power while the other users do not transmit.

#### Proposition 4

*The DSPC algorithm for multicast communications (Algorithm 5) converges almost surely to a globally optimal solution to (13), as temperature T in SA approaches zero.*

#### Proof

The proof is based on EDT and SA arguments, and follows similar steps used in the proof of Proposition 2, and it is omitted here for brevity. □

To improve the convergence rate, we also propose an enhanced algorithm for Algorithm 5 by empirically choosing the initial penalty values and employing a geometric cooling schedule. The resulting algorithm is given in Algorithm 6. Similar to the unicast case, Algorithms 5 and 6 do not need any knowledge of channel information (or the bottleneck link) and they are dynamically updated by the SINR feedback from the intended receivers.

### Algorithm 5 DSPC for multicast communications

**Initialization**: Choose *ε* > 0. Let *α*_{
lm
}= 0,$\forall \phantom{\rule{1em}{0ex}}l\in \mathcal{L},m\in {\mathcal{M}}_{l}$ and randomly choose **r** and **p**.

**Step 1: update primal variables** Set *T* = *T*_{0}, and select a sequence of time epochs {*τ*_{1}, *τ*_{2},…} in continuous time.

**Repeat for each user**

*l*

- 1.
Randomly pick ${r}_{l}^{\prime}\in [0,{r}_{l}^{\text{max}}]$, and update ${p}_{l}^{\prime}$ according to (16).

- 2.
Keep sensing the change of $\sum _{m\in {\mathcal{M}}_{l}}{\alpha}_{\mathit{\text{lim}}}{({r}_{l}-\text{log}(1+{\gamma}_{\mathit{\text{lim}}}\left(\mathbf{p}\right)\left)\right)}^{+}$ broadcast by other users.

- 3.
Let

*Δ*be the difference between*L*(**p**,*r*_{ l }|**r**_{−l}, {*α*_{ lm }}) and $L({\mathbf{p}}^{\prime},{r}_{l}^{\prime}|{\mathbf{r}}_{-l},\left\{{\alpha}_{\mathit{\text{lim}}}\right\})$, and accept ${r}_{l}^{\prime}$ and ${p}_{l}^{\prime}$ with probability 1, if*Δ*≥ 0, or with probability $\text{exp}\left(\frac{\Delta}{T}\right)$, otherwise. - 4.
Broadcast ${U}_{l}\left({r}_{l}^{\prime}\right)$, if ${r}_{l}^{\prime}$ is accepted.

- 5.
For each time epoch

*τ*_{ i }, update $T={T}_{0}/\text{log}(i+1)$.

**Until** *T* < *ε*.

**Step 2: update penalty variables**

**For each user**

*l*,

- 1.
Update ${\alpha}_{\mathit{\text{lim}}}\leftarrow {\alpha}_{\mathit{\text{lim}}}+{\varrho}_{\mathit{\text{lim}}}{({r}_{l}-\text{log}(1+{\gamma}_{\mathit{\text{lim}}}\left(\mathbf{p}\right)\left)\right)}^{+}$, and scale down

*α*_{ lm }, if the condition of penalty decrease is satisfied. - 2.
Go to Step 1 until no constraint is violated.

### Algorithm 6 EDSPC for multicast communications

**Initialization**: Choose *ε* > 0. Let${\alpha}_{\mathit{\text{lim}}}={\alpha}_{\mathit{\text{lim}}}^{0}$,$\forall \phantom{\rule{1em}{0ex}}l\in \mathcal{L},m\in {\mathcal{M}}_{l}$ and randomly choose **r** and **p**.

*T*=

*T*

_{0}, and select a sequence of time epochs {

*τ*

_{1},

*τ*

_{2}, …} in continuous time.

**Repeat for each user**

*l*

- 1.
Randomly pick ${r}_{l}^{\prime}\in [0,{r}_{l}^{\text{max}}]$, and update ${p}_{l}^{\prime}$ according to (16).

- 2.
Keep sensing the change of $\sum _{m\in {\mathcal{M}}_{l}}{\alpha}_{\mathit{\text{lim}}}{({r}_{l}-\text{log}(1+{\gamma}_{\mathit{\text{lim}}}\left(\mathbf{p}\right)\left)\right)}^{+}$ broadcast by other users.

- 3.
Let

*Δ*be the difference between*L*(**p**,_{ r l }|**r**_{−l}, {*α*_{ lm }}) and $L({\mathbf{p}}^{\prime},{r}_{l}^{\prime}|{\mathbf{r}}_{-l},\left\{{\alpha}_{\mathit{\text{lim}}}\right\})$, and accept ${r}_{l}^{\prime}$ and ${p}_{l}^{\prime}$ with probability 1, if*Δ*≥ 0, or with probability $\text{exp}\left(\frac{\Delta}{T}\right)$, otherwise. - 4.
Broadcast ${U}_{l}\left({r}_{l}^{\prime}\right)$, if ${r}_{l}^{\prime}$ is accepted.

- 5.
For each time epoch

*τ*_{ i }, update*T*=*ξT*.

**Until** *T* < *ε*.

### Performance evaluation

In this section, we evaluate the performance of Algorithms 5 and 6 for multicast communications. We consider a wireless network with four transmitters and each transmitter has two receivers. These transmitters and receivers are randomly placed on a 10-by-10 m^{2} square area. The channel gains *h*_{
lm
} are equal to${d}_{\mathit{\text{lim}}}^{-4}$, where *d*_{
lm
} represents the distance between the transmitter *l* and the receiver *m*. The channel gains *h*_{
lm
} are equal to${d}_{\mathit{\text{lim}}}^{-4}$, where *d*_{
lm
}represents the distance between the transmitter *l* and the receiver *m*. We assume *U*_{
l
}(*r*_{
l
}) = *r*_{
l
},${P}_{l}^{\text{max}}=1$, and${n}_{\mathit{\text{lim}}}=1{0}^{-4}$ for all$l\in \mathcal{L}$ and$m\in {\mathcal{M}}_{l}$. Figure10 illustrates the fast convergence performance of Algorithms 5 and 6 in multicast communications.^{k} Besides, we examine the average performance (with confidence interval) of DSPC and EDSPC for multicast communications under 100 random initializations with the same system parameters as in the case shown in Figure10. As illustrated in Figure11, both Algorithms 5 and 6 are robust against the initial value variations.

## Conclusion

We studied the distributed power control problem of optimizing the system utility as a function of the achievable rates in wireless ad hoc networks. Based on the observation that the global optimum lies on the boundary of the feasible region for unicast communications, we focused on the equivalent but more structured problem in the form of maximizing the minimum weighted utility. Appealing to EDT, we decomposed the minimum weighted utility maximization problem into subproblems by using penalty multipliers for constraint violations. We then proposed a DSPC algorithm to seek a globally optimal solution, where each user stochastically announces its target utility to improve the total system utility via SA. In spite of the nonconvexity of the underlying problem, the DSPC algorithm can guarantee global optimality, but only with a slow convergence rate. Therefore, we proposed an EDSPC to improve the convergence rate with geometric cooling schedule in SA. We then compared DSPC and EDSPC with the existing power control algorithms and verified the optimality and complexity reduction.

Next, we proposed the joint scheduling and power allocation policy for queueing systems by integrating our distributed power control algorithms with the back-pressure algorithm. The stability region was evaluated, which is shown to be strictly greater than the throughput region in the corresponding saturated case. Beyond unicast communications, we generalized our power control algorithms to multicast communications by jointly maximizing the minimum rates on bottleneck links in different multicast groups. Our DSPC approach guarantees global optimality without the need of channel information, while reducing the computation complexity, in general systems with unicast and multicast communications, and applies to both backlogged and random traffic patterns.

## Endnotes

^{a} We use the terms “user” and “link” interchangeably throughout the article.

^{b} We use bold symbols (e.g., **p**) to denote vectors and calligraphic symbols (e.g.,$\mathcal{L}$) to denote sets.

^{c} The QoS constraint for each link can be incorporated in (2), and the proposed algorithms in the following section can easily be adapted to this case at the cost of added notational complexity.

^{d} For some special utility functions *U*_{
l
}(·), (2) can be transformed into a convex problem[3]. In this article, we focus on the nonconvex case that cannot be transformed to a convex problem by change of variables.

^{e} The local optimal solution found by ADP matches the globally optimal solution only in one of the cases that are illustrated in Table2.

^{f} By definition, a function$f:{R}^{n}\to R$ is quasi-convex, if its domain **dom** *f* and all its sublevel sets${\mathcal{S}}_{c}=\{x\in \mathbf{dom}f|f\left(x\right)\le c\}$, for$c\in R$, are convex[26].

^{g} A power control algorithm is of standard form, if the interference function (the effective interference each link must overcome) is positive, monotonic and scalable in power allocation[27].

^{h} The geometric cooling schedule is employed to accelerate the convergence rate of DSPC in the simulation. DSPC updates penalty values until they satisfy the threshold-based optimality condition.

^{i} Note that the feasible utility region$\mathcal{F}$ defined in Section “Power control for unicast communications” is the throughput region, when the utility function is the same as the rate function.

^{j} The transmission mode is defined as the transmission rate pair within the throughput region$\mathcal{F}$.

^{k} The other existing algorithms have specifically been designed for unicast communications; therefore, they are excluded here from the performance comparison.

## Declarations

### Acknowledgements

This study was supported in part by the DoD MURI Project FA9550-09-1-0643 and the AFOSR grants FA9550-10-C-0026 and FA9550-11-C-0006.

## Authors’ Affiliations

## References

- Chiang M, Hande P, Lan T, Tan CW: Power control in wireless cellular networks.
*Found. Trends Netw*2008, 2(4):381-553.View ArticleGoogle Scholar - Julian D, Chiang M, O’Neill D, Boyd S: Qos and fairness constrained convex optimization of resource allocation for wireless cellular and ad hoc networks.
*Proc. IEEE INFOCOM, vol. 2*2002, 477-486. (New York, USA)Google Scholar - Chiang M, Tan CW, Palomar D, O’Neill D, Julian D: Power control by geometric programming.
*IEEE Trans. Wirel. Commun*2007, 1(7):2640-2651.View ArticleGoogle Scholar - Xiao M, Shroff NB, Chong EKP: A utility-based power control scheme in wireless cellular systems.
*IEEE/ACM Trans. Netw*2003, 11(2):210-221. 10.1109/TNET.2003.810314View ArticleGoogle Scholar - Luo Z-Q, Zhang S: Dynamic spectrum management: complexity and duality.
*IEEE J. Sel. Topics Signal Process*2008, 2(1):57-73.View ArticleGoogle Scholar - Huang J, Berry R, Honig M: Distributed interference compensation for wireless networks.
*IEEE J. Sel. Areas Commun*2006, 24(5):1074-1084.View ArticleGoogle Scholar - Hande P, Rangan S, Chiang M, Wu X: Distributed uplink power control for optimal SIR assignment in celluar data networks.
*IEEE/ACM Trans. Netw*2008, 16(6):1420-1433.View ArticleGoogle Scholar - Papandriopoulos J, Dey S, Evans J: Optimal and distributed protocols for cross-layer design of physical and transport layers in MANETs.
*IEEE/ACM Trans. Netw*2008, 16(6):1392-1405.View ArticleGoogle Scholar - Papandriopoulos J, Evans JS: SCALE: a low-complexity distributed protocol for spectrum balancing in multiuser DSL networks.
*IEEE Trans. Inf. Theory*2009, 55(8):3711-3724.MathSciNetView ArticleGoogle Scholar - Saraydar CU, Mandayam NB, Goodman DJ: Efficient power control via pricing in wireless data networks.
*IEEE Trans. Commun*2002, 50(2):291-303. 10.1109/26.983324View ArticleGoogle Scholar - Alpcan T, Basar T, Srikant R, Altman E: Wirel. Netw. 2002, 8(6):659-670.Google Scholar
- Xu Y, Le-Ngoc T, Panigrahi S: Global concave minimization for optimal spectrum balancing in multi-user DSL networks.
*IEEE Trans. Signal Process*2008, 56(7):2875-2885.MathSciNetView ArticleGoogle Scholar - Horst R, Tuy H: Global Optimization—Deterministic Approaches. (Springer, New York, 2006)Google Scholar
- Qian L, Zhang YJ, Huang J: MAPEL: achieving global optimality for a non-convex power control problem.
*IEEE Trans. Wirel. Commun*2009, 8(3):1553-1563.View ArticleGoogle Scholar - Qian L, Zhang YJ, Chiang M: Globally optimal distributed power control for nonconcave utility maximization.
*Proc. IEEE GLOBECOM*2010, 1-6. (Miami, USA)Google Scholar - Geman S, Geman D: Stochastic relaxation, Gibbs distributions, and the Bayesian restoration of images.
*IEEE Trans. Pattern Anal. Mach. Intell*1984, 6(6):721-741.View ArticleMATHGoogle Scholar - Chen Y, Chen M: Extended duality for nonlinear programming.
*Comput. Optim. Appl*2010, 47(1):33-59. 10.1007/s10589-008-9208-3MathSciNetView ArticleMATHGoogle Scholar - Kirkpatrick S, Gelatt CD, Vecchi JMP: Optimization by simulated annealing.
*Science*1983, 220(4598):671-680. 10.1126/science.220.4598.671MathSciNetView ArticleMATHGoogle Scholar - Hajek B: Cooling schedules for optimal annealing.
*Math. Oper. Res*1988, 13(2):311-329. 10.1287/moor.13.2.311MathSciNetView ArticleMATHGoogle Scholar - Tassiulas L, Ephremides A: Stability properties of constrained queueing systems and scheduling policies for maximum throughput in multihop radio networks.
*IEEE Trans. Autom. Control*1992, 37(12):1936-1948. 10.1109/9.182479MathSciNetView ArticleMATHGoogle Scholar - Neely MJ, Modiano E, Rohrs CE: Dynamic power allocation and routing for time varying wireless networks.
*IEEE J. Sel. Areas Commun*2005, 23(1):89-103.View ArticleGoogle Scholar - Lee H-W, Modiano E, Le LB: Distributed throughput maximization in wireless networks via random power allocation.
*IEEE Trans. Mob. Comput*2011, 11(4):577-590.Google Scholar - Wieselthier JE, Nguyen GD, Ephremides A: On construction of energy-efficient broadcast and multicast trees in wireless networks.
*Proc. IEEE INFOCOM, vol. 2*2000, 585-594. (Tel Aviv, Israel)Google Scholar - Wang K, Chiasserini CF, Proakis JG, Rao RR: Joint scheduling and power control supporting multicasting in wireless ad hoc networks. 2006, 4(4):532-546.Google Scholar
- Mo J, Walrand J: Fair end-to-end window-based congestion control.
*IEEE/ACM Trans. Netw*2000, 8(5):556-567. 10.1109/90.879343View ArticleGoogle Scholar - Boyd S, Vandenberghe L: Convex Optimization. (Cambridge University Press, Cambridge, UK, 2004)Google Scholar
- Yates RD: A framework for uplink power control in cellular radio systems.
*IEEE J. Sel. Areas Commun*1995, 13(7):1341-1347. 10.1109/49.414651MathSciNetView ArticleGoogle Scholar - Lin X, Shroff NB, Srikant R: On the connection-level stability of congestion-controlled communication networks.
*IEEE Trans. Inf. Theory*2008, 54(5):2317-2338.MathSciNetView ArticleMATHGoogle Scholar - Rao R, Ephremides A: On the stability of interacting queues in a multiple-access system.
*IEEE Trans. Inf. Theory*1988, 34(5):918-930. 10.1109/18.21216MathSciNetView ArticleMATHGoogle Scholar - ParandehGheibi A, Medard M, Ozdaglar A, Eryilmaz A: Information theory vs. queueing theory for resource allocation in multiple access channels.
*Proc. IEEE Pers. Ind. Mob. Radio Commun*2008, 1-5. (Nice, France), pp. 1–5Google Scholar - Loynes R: The stability of a queue with non-interdependent inter-arrival and service times.
*Proc. Camb. Philos. Soc*1962, 58: 497-520. 10.1017/S0305004100036781MathSciNetView ArticleMATHGoogle Scholar - Georgiadis L, Neely MJ, Tassiulas L: Resource allocation and cross-layer control in wireless networks.
*Found. Trends Netw*2006, 1(1):1-149.View ArticleMATHGoogle Scholar - Chaporkar P, Sarkar S: Stable scheduling policies for maximizing throughput in generalized constrained queueing systems.
*IEEE Trans. Autom. Control*2008, 53(8):1913-1931.MathSciNetView ArticleGoogle Scholar - Yi Y, Zhang J, Chiang M: Delay and effective throughput of wireless scheduling in heavy traffic regimes: vacation model for complexity.
*Proc. ACM Mobihoc*2009, 55-64. (New York, USA)Google Scholar

## Copyright

This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.