1 Introduction

Cognitive radio[1], a flexible spectrum usage model, has been proposed as a solution to ease the contradiction between the shortage of spectrum resource and broadband service demand. In cognitive radio networks, cognitive users are allowed to access the licensed spectrum and share resource with primary users as long as they do not severely interfere the primary users. Cooperative communication[2] has recently received a lot of attention because it can obtain spatial diversity gain through sharing channel resource with each other. Therefore, the combination of cognitive radio and cooperative communication can effectively confront channel fading effect, improve energy efficiency, expand coverage area and further improve system performance.

In cooperative cognitive radio network, there exists interference between users. Power control is an effective way to mitigate interference caused by other users. Therefore, the study of power control technology for cooperative cognitive wireless network is of great significance for optimizing network performance. The optimization objective in most of the existing related research works is to maximize system throughput[37]. However, for cognitive ad hoc network with energy-limited nodes, power control algorithm aiming at reducing system power consumption to improve network lifetime[8, 9] is more important. Sun et al.[8] proposed a distributed power control algorithm for cognitive ad hoc wireless network with energy-limited nodes to minimize the total power consumption of cognitive source nodes. As a foundation, Li et al. [9] introduced cooperative relay into the cognitive network and adjusted the transmit power of cognitive source node and relay node to minimize the total power consumption of cognitive network. But during the analysis, direct communication link was ignored which is inconsistent with the basic idea of cooperative communication. Furthermore the spectrum sharing problem between primary user and cognitive user was only formulated rather than further studying the power control algorithm.

In this paper, a distributed power control algorithm is proposed based on the best relay selection for a cooperative cognitive ad hoc network with energy-limited nodes. The optimization objective of the proposed algorithm is to minimize the total power consumption under the quality of service (QoS) requirement constraints of cognitive users as well as the interference tolerance constraint of primary user. The power control problem is proved to be a convex problem. Based on the Lagrange decomposition theory, the gradient iterative algorithm is constructed to seek for the optimal solution in a distributed way.

The rest of this paper is organized as follows. The system model is given in Section 2 Section 3 describes the distributed power control algorithm in detail. Performance of the proposed algorithms is investigated in Section 4. Finally, Section 5 concludes the paper.

2 System model

The coexistence scenario of cooperative cognitive ad hoc network and primary user network is shown in Fig.1, wherein the primary network is constituted by a primary transmit-receive nodes pair and the cognitive ad hoc network is composed of N cognitive transmit-receive nodes pairs and L candidate relay nodes (candidate relay node set). Suppose the primary network has service demand and occupies its licensed channel all the time; the cooperative cognitive ad hoc network accesses the spectrum based on underlay spectrum sharing mode, i.e., cognitive users share the spectrum resource with primary network under the condition that it does not cause harmful interference to primary network. In cooperative cognitive ad hoc network, each cognitive source node only selects one relay node to participate in cooperative transmission; conversely, each cooperative node only assists one cognitive source node.

Fig. 1
figure 1

System model

2.1 Cooperative relay selection

On the one hand, quality of wireless link influences the network communication performance directly, so high channel gain can guarantee transmission reliability and reduce error bit rate. On the other hand, nodes residual energy directly determines the survival time, so we must select nodes with enough energy as cooperative relay. Therefore, in order to select the optimal nodes to guarantee transmission reliability and reduce power consumption, the normalized residual energy \(\overline {{E_\chi }} \) of node R x and the normalized channel gain \(\overline {{G_{{R_\chi }{D_i}}}} \) of the communication link between R x and node D i are synthetically considered for cooperative relay selection, where R x belongs to candidate relay node set {R x | x = 1, 2, ⋯, L}. Cooperative nodes selection results are informed to the candidate relay node set through a feedback channel from destination node D i . Cooperative relay selection process is completed in the stage of communication establishment, which is out of the scope of this paper. The cooperative node R i corresponding to the source node S i is denoted as

$${R_i} = \arg \mathop {\max }\limits_\chi \{ a\overline {{E_\chi }} + b\overline {{G_{{R_\chi }{D_i}}}} \} $$
(1)

where a and b are weighting coefficients and a ∈ (0, 1), b∈ (0, 1), a + b = 1, i ∈ {1, 2, ⋯, N}, x ∈ {1, 2, ⋯, L}, \(\overline {{E_\chi }} = {E_\chi }/\sum\nolimits_{\chi = 1}^L {{E_\chi }} \) and E x is the residual energy of node stantaneous channel gain of the communication link between R x and D i .

2.2 Signal transmission model

Assume amplify-and-forward (AF) relaying protocol is used by cooperative relay nodes to forward information. Multiple cognitive source-destination pairs follow simultaneous transmission in signal transmission process but they use orthogonal coding, so there is no interference among different cognitive communication pairs because of the orthogonality. While, the cognitive user and primary user follow simultaneous transmission and use non-orthogonal coding, thus cognitive user can receive interference from primary user. For cooperative transmission, information transmission of cognitive system is completed in two consecutive time slots. In slot 1, the cognitive source node S i broadcasts information to the cooperative node R i and the destination node D i . The received signals \({y_{{S_i}{R_i}}},\,{y_{{D_i}}}\) of cooperative node R i and destination node D i are respectively given by

$${y_{{S_i}{R_i}}} = \sqrt {{P_{{S_i}}}{G_{{S_i}{R_i}}}} {x_{{S_i}}} + \sqrt {{P_p}{G_{p{R_i}}}} {x_p} + {n_{{S_i}{R_i}}}$$
(2)
$${y_{{S_i}{D_i}}} = \sqrt {{P_{{S_i}}}{G_{{S_i}{D_i}}}} {x_{{S_i}}} + \sqrt {{P_p}{G_{p{D_i}}}} {x_p} + {n_{{S_i}{D_i}}}$$
(3)

where P Si and P p are transmit power of cognitive source node S i and primary transmitter, respectively. \({G_{{S_i}{R_i}}},\,{G_{p{R_i}}},\,{G_{{S_i}{D_i}}},\,{G_{p{D_i}}}\) are respectively instantaneous channel gain between cognitive source node S i and cognitive cooperative node R i , primary transmitter p s and cognitive cooperative node R i , cognitive source node S i and cognitive destination node D i , primary transmitter p s and cognitive destination node \({D_i};\,{G_{mn}} = q/d_{mn}^\alpha,m \in \{ {S_i},{R_i},p\},n \in \{ {R_i},{D_i}\},{d_{mn}}\), n ∈ {R i , D i }, d mn is the geometric distance between node m and node n, α denotes path loss exponent, q denotes impact on channel gain caused by other factors. \({x_{{S_i}}}\) and x p are the transmitted signals of the cognitive source node and the primary transmitter, respectively. Both \({n_{{S_i}{R_i}}}\) and \({n_{{S_i}{D_i}}}\) are additive white Gaussian noise (AWGN) with zero mean and variance N 0.

After the cognitive cooperative node R i received information \({y_{{S_i}{R_i}}}\), it employs AF protocol to forward information. The received signal \({y_{{R_i}{D_i}}}\) of the destination node D i in slot 2 is

$$\matrix{{{y_{{R_i}{D_i}}} = {{\sqrt {{P_{{R_i}}}{G_{{R_i}{D_i}}}} } \over {\sqrt {{P_{{S_i}}}{G_{{S_i}{R_i}}} + {P_p}{G_{p{R_i}}} + {N_0}} }}{y_{{S_i}{R_i}}} + } \cr {\sqrt {{P_p}{G_{p{D_i}}}} {x_p} + {n_{{R_i}{D_i}}} = } \cr {{{\sqrt {{P_{{S_i}}}{P_{{R_i}}}{G_{{S_i}{R_i}}}{G_{{R_i}{D_i}}}} } \over {\sqrt {{P_{{S_i}}}{G_{{S_i}{R_i}}} + {P_p}{G_{p{R_i}}} + {N_0}} }}{x_{{S_i}}} + } \cr {\left({{{\sqrt {{P_p}{P_{{R_i}}}{G_{p{R_i}}}{G_{{R_i}{D_i}}}} } \over {\sqrt {{P_{{S_i}}}{G_{{S_i}{R_i}}} + {P_p}{G_{p{R_i}}} + {N_0}} }} + \sqrt {{P_p}{G_{p{D_i}}}} } \right){x_p} + } \cr {n_{{R_i}{D_i}}^*} \cr }$$
(4)

where \({P_{{R_i}}}\) is the transmit power of the cognitive cooperative node R i . \({G_{{R_i}{D_i}}}\) is the instantaneous channel gain between the cognitive cooperative node R i and the cognitive destination node D i . \({n_{{R_i}{D_i}}}\) is additive white Gaussian noise with zero mean and variance N 0, \(n_{{R_i}{D_i}}^* = {{\sqrt {{P_{{R_i}}}{G_{{R_i}{D_i}}}} } \over {\sqrt {{P_{{S_i}}}{G_{{S_i}{R_i}}} + {P_p}{G_{p{R_i}}} + {N_0}} }}{n_{{S_i}{R_i}}} + {n_{{R_i}{D_i}}}\). Assuming \({n_{{S_i}{R_i}}}\) and \({n_{{R_i}{D_i}}}\) are mutually independent, then \(n_{{R_i}{D_i}}^*\) is a complex Gaussian random variable with zero mean and variance \(\left({{{\sqrt {{P_{{R_i}}}{G_{{R_i}{D_i}}}} } \over {\sqrt {{P_{{S_i}}}{G_{{S_i}{R_i}}} + {P_p}{G_{p{R_i}}} + {N_0}} }} + 1} \right){N_0}\).

After separately receiving \({y_{{S_i}{D_i}}}\) and \({y_{{R_i}{D_i}}}\) in two time slots, the cognitive destination node D i uses maximum ratio combining (MRC) to deal with them, the received signal-interference-noise ratio \(SIN{R_{{D_i}}}\) of the cognitive destination node is[10]

$$SIN{R_{{D_i}}} = SIN{R_{{S_i}{D_i}}} + SIN{R_{{R_i}{D_i}}}$$
(5)

where

$$SIN{R_{{S_i}{D_i}}} = {{{P_{{S_i}}}{G_{{S_i}{D_i}}}} \over {{P_p}{G_{p{D_i}}} + {N_0}}}$$
(6)
$$SIN{R_{{R_i}{D_i}}} = {{S_D^i} \over {I_D^i + N_D^i}}$$
(7)

\(SIN{R_{{S_i}{D_i}}}\) and \(SIN{R_{{R_i}{D_i}}}\) are the signal-interference-noise ratio (SINR) of direct communication link and cooperative relay link, respectively. \(S_D^i,\,I_D^i\) and \(N_D^i\) denote the useful information, interference from the primary system and noise in the cooperative relay link, respectively. They can be expressed as

$$\matrix{{S_D^i = {{{P_{{S_i}}}{P_{{R_i}}}{G_{{S_i}{R_i}}}{G_{{R_i}{D_i}}}} \over {{P_{{S_i}}}{G_{{S_i}{R_i}}} + {P_p}{G_{p{R_i}}} + {N_0}}}} \cr {I_D^i = {{{P_p}{P_{{R_i}}}{G_{p{R_i}}}{G_{{R_i}{D_i}}}} \over {{P_{{S_i}}}{G_{{S_i}{R_i}}} + {P_p}{G_{p{R_i}}} + {N_0}}} + {P_p}{G_{p{D_i}}}} \cr {N_D^i = {{{P_{{R_i}}}{G_{{R_i}{D_i}}}{N_0}} \over {{P_{{S_i}}}{G_{{S_i}{R_i}}} + {P_p}{G_{p{R_i}}} + {N_0}}} + {N_0}.} \cr }$$

Suppose \({k_i} = {{{G_{{S_i}{D_i}}}} \over {{P_p}{G_{p{D_i}}} + {N_0}}},\,{\alpha _i} = {{{G_{{S_i}{R_i}}}} \over {{P_p}{G_{p{R_i}}} + {N_0}}},\,{\beta _i} = {{{G_{{R_i}{D_i}}}} \over {{P_p}{G_{p{D_i}}} + {N_0}}}\), then

$$SIN{R_{{S_i}{D_i}}} = {k_i}{P_{{S_i}}}$$
(8)
$${1 \over {SIN{R_{{R_i}{D_i}}}}} = {1 \over {{\alpha _i}{P_{{S_i}}}}} + {1 \over {{\beta _i}{P_{{R_i}}}}} + {1 \over {{\alpha _i}{\beta _i}{P_{{S_i}}}{P_{{R_i}}}}}.$$
(9)

By substituting (8) and (9) into (5), the equivalent SINR can be written as

$$SIN{R_{{D_i}}} = {k_i}{P_{{S_i}}} + {{{\alpha _i}{\beta _i}{P_{{S_i}}}{P_{{R_i}}}} \over {1 + {\alpha _i}{P_{{S_i}}} + {\beta _i}{P_{{R_i}}}}}.$$
(10)

3 Distributed power control

In this section, we derive an efficient power control scheme for cooperative cognitive ad hoc network. First, we transform the power control problem into a convex optimization problem, then elaborate on how to obtain the optimal solution. Assume that the required channel state information in the distributed power control scheme has already been obtained in spectrum sensing stage through channel estimation which is beyond the scope of this paper.

3.1 Problem formulation

Cognitive radio network can have access to licensed bands unless it does not cause harmful interference to primary user. In order to achieve spectrum sharing, cognitive user must ensure that the total interference at primary receiver is below the interference tolerance. It can be seen from [11] that if the interference tolerance at primary receiver is ξ, then the interference constraint for primary receiver P d can be written as

$$\sum\limits_{i = 1}^N {{I_{{S_i}p}}} = \sum\limits_{i = 1}^N {\left({{P_{{S_i}}}{G_{{S_i}p}} + {P_{{R_i}}}{G_{{R_i}p}}} \right)} < \xi$$
(11)

where \({I_{{S_i}p}}\) is the interference from the i-th cognitive source node along with its cooperative relay node to the primary receiver. \({G_{{S_i}p}}\) and \({G_{{R_i}p}}\) are channel gains between the cognitive source node S i and the primary receiver P d , and the one between relay node R i and primary receiver P d , respectively; \({I_{{S_i}p}} = {P_{{S_i}}}{G_{{S_i}p}} + {P_{{R_i}}}{G_{{R_i}p}}\).

In order to share spectrum resource with primary user, the cognitive ad hoc network with energy-limited users not only has to meet the primary user interference constraint but also needs to consider power consumption of the cognitive user. In this paper, the power control scheme is proposed to minimize the total power consumption while maintaining the interference introduced to primary user within a given interference limit. Therefore, the power control problem can be mathematically formulated as

$$\matrix{{\min \sum\limits_{i = 1}^N {\left({{P_{{S_i}}} + {P_{{R_i}}}} \right)} } \cr {{\rm{s}}{\rm{.t}}{\rm{.}}\quad \sum\limits_{i = 1}^N {\left({{P_{{S_i}}}{G_{{S_i}p}} + {P_{{R_i}}}{G_{{R_i}p}}} \right)} < \xi } \cr {SIN{R_{{D_i}}} > SIN{R_{Dth}}} \cr {\sum\limits_{i = 1}^N {{P_{{S_i}}}} < {P_{\max }},\quad \sum\limits_{i = 1}^N {{P_{{R_i}}}} < {P_{{R_{\max }}}},} \cr {0 < {P_{{S_i}}} < {P_{{S_{i\max }}}},\quad 0 < {P_{{R_i}}} < {P_{{R_{i\max }}}}} \cr }$$
(12)

where SINR DTH is the minimum required SINR for cognitive destination node D i to successfully receive data. P max and \({P_{R\max }}\) are the maximum total power of all cognitive source nodes and all cooperative nodes, respectively. \({P_{{S_{i\max }}}}\) and \({P_{{R_{i\max }}}}\) are respectively the maximum transmit power of the cognitive source node S i and the cooperative node R i .

If direct communication link performance is poor, then the constraint \(SIN{R_{{D_i}}} > SIN{R_{Dth}}\) in its feasible region can be approximately converted to

$$\matrix{{{\alpha _i}{\beta _i}{P_{{S_i}}}{P_{{R_i}}} - {\alpha _i}{P_{{S_i}}}SIN{R_{Dth}} - } \cr {{\beta _i}{P_{{R_i}}}SIN{R_{Dth}} > SIN{R_{Dth}}.} \cr }$$
(13)

It can be seen from the optimization model (12) that except for link performance constraint, the objective function and other constraints are linear while the constraint equation (13) obtained after the approximate conversion is also linear. Therefore, the power control problem can be transformed into a convex optimization problem.

3.2 Distributed power control algorithm

As mentioned before, the power control problem can be transformed into a convex problem. Therefore, it can be worked out by solving its dual problem. In this section, we will construct the gradient iterative algorithm to solve the dual problem.

The Lagrange function[12] of (12) is

$$\matrix{{L\left({{P_{{S_i}}},{P_{{R_i}}},\gamma,\omega,\eta,\lambda } \right) = } \cr {\sum\limits_{i = 1}^N {\left({{P_{{S_i}}} + {P_{{R_i}}}} \right)} + \gamma \left({\sum\limits_{i = 1}^N {\left({{P_{{S_i}}}{G_{{S_i}p}} + {P_{{R_i}}}{G_{{R_i}p}}} \right)} - \xi } \right) + } \cr {\sum\limits_{i = 1}^N {{\omega _i}} (SIN{R_{Dth}} - {\alpha _i}{\beta _i}{P_{{S_i}}}{P_{{R_i}}} + {\alpha _i}{P_{{S_i}}}SIN{R_{Dth}} + } \cr}$$
$$\matrix{{{\beta _i}{P_{{R_i}}}SIN{R_{Dth}}) + \eta \left({\sum\limits_{i = 1}^N {{P_{{S_i}}}} - {P_{\max }}} \right) + } \cr {\,\lambda \left({\sum\limits_{i = 1}^N {{P_{{R_i}}}} - {P_{R\max }}} \right)} \cr }$$
(14)

where ω = [ω 1, ω 2, ⋯, ω N ], γ, ω, ŋ, λ are Lagrange multipliers which are also called dual variables. Denote

$$\matrix{{{\varphi _i} = 1 + \gamma {G_{{S_i}p}} + {\omega _i}{\alpha _i}SIN{R_{Dth}} + \eta } \cr {{\nu _i} = 1 + \gamma {G_{{R_i}p}} + {\omega _i}{\beta _i}SIN{R_{Dth}} + \lambda } \cr {{\mu _i} = {\omega _i}{\alpha _i}{\beta _i}.} \cr }$$

Then (14) can be rewritten as

$$\matrix{{L\left({{P_{{S_i}}},{P_{{R_i}}},\gamma,\omega,\eta,\lambda } \right) = \sum\limits_{i = 1}^N {\left({{\varphi _i}{P_{{S_i}}} + {\nu _i}{P_{{R_i}}} - {\mu _i}{P_{{S_i}}}{P_{{R_i}}}} \right)} - } \cr {\gamma \xi + \sum\limits_{i = 1}^N {{\omega _i}} SIN{R_{Dth}} - \eta {P_{{\rm{max}}}} - \lambda {P_{R{\rm{max}}}}.} \cr }$$
(15)

In the cooperative cognitive network, each cognitive source node can only exchange information with its assisting cooperative node. Therefore, we apply the decomposition method of Lagrange relaxation of the coupling constraint which is proposed in [13, 14] to deal with (15). The Lagrange dual objective can be defined as the minimum value of the Lagrange function:

$$g(\gamma,\omega,\eta,\lambda) = \mathop {\inf }\limits_{{P_{{S_i}}},{P_{{R_i}}}} L\left({{P_{{S_i}}},{P_{{R_i}}},\gamma,\omega,\eta,\lambda } \right).$$
(16)

Then the corresponding dual problem is

$$\matrix{{{{\max }_{\gamma,\omega,\eta,\tau,\theta,\lambda }}g(\gamma,\omega,\eta,\lambda)} \cr {\gamma \geqslant 0,\omega \geqslant 0,\eta \geqslant 0,\lambda \geqslant 0.} \cr }$$
(17)

The decoupling sub-problem corresponding to each cognitive source node S i is

$$\matrix{{\min {L_i}\left({{P_{{S_i}}},{P_{{R_i}}},\gamma,\omega,\eta,\lambda } \right) = {\varphi _i}{P_{{S_i}}} + {\nu _i}{P_{{R_i}}} - {\mu _i}{P_{{S_i}}}{P_{{R_i}}}} \cr {{\rm{s}}{\rm{.t}}{\rm{.}}\quad {P_{{S_i}}} \geqslant 0,{P_{{R_{{S_i}}}}} \geqslant 0.} \cr }$$
(18)

The problem (12) is a convex optimization problem, thus strong duality holds, i.e., the dual gap between primal problem and dual problem is zero. According to Karush-Kuhn-Tucker (KKT) condition[15], the optimal transmit power of each cognitive source node and its assisting cooperative node can be obtained through the following equation:

$${{\partial {L_i}\left({{P_{{S_i}}},{P_{{R_i}}},\gamma,\omega,\eta,\lambda } \right)} \over {{P_{{S_i}}}}} = 0$$
(19)
$${{\partial {L_i}\left({{P_{{S_i}}},{P_{{R_i}}},\gamma,\omega,\eta,\lambda } \right)} \over {{P_{{R_i}}}}} = 0$$
(20)

and the solution for a given γ, ω, ŋ, λ is

$$P_{{S_i}}^* = {{1 + \gamma {G_{{R_i}p}} + {\omega _i}{\beta _i}SIN{R_{Dth}} + \lambda } \over {{\omega _i}{\alpha _i}{\beta _i}}}$$
(21)
$$P_{{R_i}}^* = {{1 + \gamma {G_{{S_i}p}} + {\omega _i}{\alpha _i}SIN{R_{Dth}} + \eta } \over {{\omega _i}{\alpha _i}{\beta _i}}}.$$
(22)

As the dual function g(γ, ω, ŋ, λ) is differentiable, we construct the following gradient iterative algorithm to update the dual variables:

$$\gamma (t + 1) = {\left[ {\gamma (t) - \rho \left({\xi - \sum\limits_{i = 1}^N {P_{{S_i}}^*} (t){G_{{S_i}p}} + P_{{R_i}}^*(t){G_{{R_i}p}}} \right)} \right]^ + }$$
(23)
$${\omega _i}(t + 1) = {\left[ {{\omega _i}(t) - \rho \left({SIN{R_{{D_i}}}(t) - SIN{R_{Dth}}} \right)} \right]^ + }$$
(24)
$$\eta (t + 1) = {\left[ {\eta (t) - \rho \left({{P_{\max }} - \sum\limits_{i = 1}^N {P_{{S_i}}^*} (t)} \right)} \right]^ + }$$
(25)
$$\lambda (t + 1) = {\left[ {\lambda (t) - \rho \left({{P_{R\max }} - \sum\limits_{i = 1}^N {P_{{R_i}}^*} (t)} \right)} \right]^ + }$$
(26)

where t denotes the iteration time. [a]+ =max{0, a}. ρ is the iteration step size which is a sufficiently small positive number.

As the power control problem is transformed into a convex optimization problem, Lagrange dual gap between primal problem and dual problem is zero and the solution processes of (17) and (18) are independent. Therefore, variables \(P_{{S_i}}^*(\gamma,\omega,\eta,\lambda)\) and \(P_{{R_i}}^*(\gamma,\omega,\eta,\lambda)\) can converge to \(P_{{S_i}}^*\) and \(P_{{R_i}}^*\), i.e., local optimal solution is the global optimal solution. The distributed power control algorithm can be summarized as follows.

  • Step 1. Set t = 1. Initialize parameters γ(0), ŋ(0), λ(0), ω i (0), i = 1, 2, N. For different value of i, the value of ω i (0) is same.

  • Step 2. Each cognitive source node S i calculates \(P_{{S_i}}^*(t)\) according to (19) and broadcasts it to cognitive cooperative node R i .

  • Step 3. Each cognitive cooperative node R i calculates \(P_{{R_i}}^*(t)\) according to (20) and broadcasts it to cognitive source node S i .

  • Step 4. Cognitive source node S i employs gradient iterative algorithm to update and broadcast the dual variables γ(t), ŋ(t) according to (23) and (25), respectively; cognitive cooperative node R i employs gradient iterative algorithm to update and broadcast the dual variables ω i (t), λ(t) according to (24) and (26), respectively.

  • Step 5. Set t = t + 1 and go to Step 2 until it satisfies the stopping criterion.

4 Simulation Results

In this section, we set up a simulation test environment and analyze the numerical results for the proposed distributed power control algorithm. We consider a cooperative cognitive ad hoc network with two cognitive source-destination nodes pairs and two cooperative nodes as well as a primary network with a primary transmitter-receiver pair which are communicating with each other. To simplify analysis, the size of primary network and cognitive network is scaled down and each node is distributed in a two-dimensional region 10m×10m. The distance between nodes are

respectively. Channel gains are defined using a simple path loss model in which the shadow fading is not considered, \({G_{Pj}} = qd_{Pj}^{ - 3}\) and \({G_{kj}} = qd_{kj}^{ - 4}\), where q is a constant, P is the primary transmitter, k and j are cognitive nodes. In the simulations, we assume the maximum powers \({P_{{R_{i\max }}}}\), i ∈ 1, 2, ⋯, N at the relays and the maximum powers \({P_{{S_{i\max }}}}\), i ∈ 1, 2, ⋯, N at the transmitters are identical, and we set \({P_{{R_{i\max }}}} = 10,\,{P_{{S_{i\max }}}} = 5\), the maximum total powers P max = 5, P R max = 10. The other simulation parameters are shown in Table 1.

Table 1 Simulation parameters

Fig. 2 shows the convergence behavior of the cognitive source transmit power when the distributed power control algorithm is performed in the cooperative cognitive ad hoc network. In this simulation, we set the receiving SINR threshold SINR Dth = 10 dB, we can see from the figure that the transmit power of the two cognitive source nodes can converge to the optimal solution very fast which demonstrates the efficiency of the proposed distributed power control algorithm.

Fig. 2
figure 2

Transmit power convergence behavior of cognitive source nodes

Fig. 3 shows the relationship between the total power consumption of the cognitive system and the receiving SINR threshold. From Fig. 3, we can see that in order to satisfy the cognitive user SINR constraint, the total power consumption of the cognitive system presents a growth trend with the increase of the SINR threshold. When the SINR threshold remain the same, the total power consumption will increase with the growth of the transmit power of the primary user.

Fig. 3
figure 3

System total power consumption vs. minimum SINR

Fig. 4 presents the relationship between the total power consumption of the cognitive system and the transmit power of the primary user. It can be seen from Fig. 4 that in order to resist primary interference, the total power consumption of the cognitive system shows a growing trend with the increase of the transmit power of the primary user. When the primary user transmit power does not change, the total power consumption will increase with the growth of the SINR threshold.

Fig. 4
figure 4

System total power consumption vs. primary users transmit power

From Figs. 3 and 4, we can also see when the SINR threshold of cognitive user rises or the transmit power of the primary user increases, the proposed distributed power control algorithm appropriately increases the total power consumption of the cognitive system to guarantee cognitive user QoS requirement while realizing a relatively lower system total power consumption.

5 Conclusions

In this paper, a distributed power control algorithm is proposed for cooperative cognitive ad hoc network with energy-limited nodes. The optimization objective of the proposed algorithm is to minimize the total power consumption while ensuring the QoS requirements of cognitive users and keeping the interference to primary user below a given limit. The optimization problem is proved to be a convex problem. Based on convex optimization and Lagrange decomposition theory, we construct gradient iterative algorithm to distributively adjust the transmit power of cognitive source node and cognitive relay node. Simulation results demonstrate the efficiency of the proposed power control algorithm.