Skip to main content


We’d like to understand how you use our websites in order to improve them. Register your interest.

User grouping and resource allocation in multiuser MIMO systems under SWIPT


This paper considers a broadcast multiple-input multiple-output (MIMO) network with multiple users and simultaneous wireless information and power transfer (SWIPT). In this scenario, it is assumed that some users are able to harvest power from radio frequency (RF) signals to recharge batteries through wireless power transfer from the transmitter, while others are served simultaneously with data transmission. The criterion driving the optimization and design of the system is based on the weighted sum rate for the users being served with data. At the same time, constraints stating minimum per-user harvested powers are included in the optimization problem. This paper derives the structure of the optimal transmit covariance matrices in the case where both types of users are present simultaneously in the network, particularizing the results to the cases where either only harvesting nodes or only information users are to be served. The trade-off between the achieved weighted sum rate and the powers harvested by the user terminals is analyzed and evaluated using the rate-power (R-P) region. Finally, we propose a two-stage user grouping mechanism that decides which users should be scheduled to receive information and which users should be configured to harvest energy from the RF signals in each particular scheduling period, this being one of the main contributions of this paper.


Currently, one of the main limiting factors of user terminals is the very limited lifetime of their batteries. One of the solutions to enhance this lifetime is based on energy harvesting technology, by means of which terminals can collect ambient energy without being physically plugged in [2] and [3]. This is especially important in scenarios where the nodes are located in places where the replacement or recharge of batteries is very difficult, costly, or even impossible (e.g., wireless sensor networks). However, this is not the only scenario that can benefit from energy harvesting technology. For example, in cellular communications, the number of users has increased exponentially, together with the rates of the communications, but the battery lifetimes are very short. In this case, energy harvesting could play a beneficial role.

Wind and solar energy compose the classical and best-known examples of sources of energy harvesting, although other technologies could also be considered, such as those applied to moving sensors (this may be the case for cellular phones) based on piezoelectric technologies. In recent years, there have also been significant advances in the use of radio frequency (RF) signals as a source of energy scavenging. Although initial experimental measurements showed that the actual strengths of the received electric fields were significant only when the distances between the transmitters and the receivers are rather short [2], current technological developments (both in terms of harvesting hardware and system features) allow for effectively taking advantage of RF energy harvesting in new scenarios [4]. In fact, this is a trend that is being adopted in the design of current and future networks based on short distances (e.g., femtocells [5]). Due to this, users will be able to be served with the higher bit rates that newer applications require. These low distances will allow for mobile terminals to be able to harvest power from the received radio signals when they are not detecting information data. This is commonly termed wireless power transfer (see [6] for an extensive review of this technique) and is one of the main topics of this paper.

Related work

The first work that introduced the concept of simultaneous wireless information and power transfer (SWIPT) was [7]. In that work, it was proven, for the single-antenna additive white Gaussian noise (AWGN) channel, that the data rate and power transfer are related in a nontrivial way. The extension of the previous conclusion to the frequency-selective single-antenna AWGN channels was addressed later in [8]. Much effort has been put forward lately to come up with beamforming design strategies for the SWIPT framework. In [9], the authors considered a multiple-input multiple-output (MIMO) system. In that paper, it was assumed that the transmitter was able to simultaneously transmit data and power to a single receiver. Two receiver architectures were considered able to combine both information and power sources simultaneously. In [10] and [11], the authors considered an MIMO network consisting of multiple transmitter-receiver pairs with co-channel interference. The study in [10] focused on the case with two transmitter-receiver pairs, whereas in [11], the authors generalized [10] by considering that k transmitter-receiver pairs were present. In [12], the authors considered an MIMO system with single-stream transmission. In contrast to previous works, where the system rate was optimized, the objective of the above authors was to minimize the overall power consumption with minimum signal-to-interference-plus-noise ratio (SINR) constraints and per-user harvesting constraints. Multiuser broadcast networks can also be found under the framework of multiple-input single-output (MISO) beamforming, as in [13] and [14]. The main difference between our work and previous works is that we assume a broadcast multiuser multistream MIMO network, which has not been considered before.

Although, in this paper, we assume that the channel state information (CSI) is known at the transmitter, there are some works that can be referenced in which techniques for optimizing the training under the SWIPT framework are presented [15, 16]. In particular, [15] studies the design of an efficient channel acquisition method for a point-to-point MIMO SWIPT system by exploiting the channel reciprocity. Additionally, a worst-case robust beamforming design was proposed in [17], in which imperfect CSI at the transmitter was assumed. Another strategy is to overcome this CSI feedback, as was done with implicit beamforming in [18].

In this paper, we propose some user grouping techniques in which, from frame to frame, it is decided which users will receive information data and which users will harvest energy from RF signals. There are some works in the literature that deal with user scheduling in the SWIPT framework, but they consider a single-input single-output (SISO) system. Therefore, the scheduling presented in those papers is purely the temporal scheduling of users. Among those works, [19] introduced time scheduling between information and energy transfer and derived the optimal switching policy considering time-varying co-channel interference. The receiver therefore replenished the battery opportunistically via wireless power transfer from the unintended interference and/or the intended signal sent by the transmitter. Then, in [20], the authors studied downlink multiuser scheduling for a time-slotted system with SWIPT. In particular, in each time slot, a single user is scheduled to receive information, whereas the remaining users opportunistically harvest energy from ambient signals. Finally, in [21], the authors considered a multiuser cooperative network, where M source-destination SISO pairs communicate with each other via a relay with energy harvesting capabilities. The key idea is to select a subset of those M pairs to communicate through the relay. In contrast to those works, in this paper, we present a spatial user grouping strategy since a multiuser MIMO system is considered, and multiple users therefore can be served simultaneously at each scheduling period. We also implement temporal scheduling, as those spatial user groups change over time due to the dynamics of the batteries and the historic user performance.

Finally, we want to mention that there are also several works in the literature dealing with user grouping strategies in the multiple-antenna scenario, although none of them has considered the general case addressed in this paper, that is, the problem of grouping and scheduling users in a limited-energy system with SWIPT, a multi-antenna transmitter and multiple multi-antenna receivers, and taking into account the temporal evolution of the states of the batteries. For example, in [22], a grouping strategy is developed for the case of a multiuser system, with one multi-antenna transmitter and single-antenna receivers (instead of multi-antenna receivers, as we consider in our paper) based on zero-forcing (ZF) precoding but without considering power transfer and without including the effect of the batteries. To the best of the authors’ knowledge, the most recent paper related to our work is [23]. That paper addresses the same setup as [22], that is, one multi-antenna transmitter and single-antenna receivers, where the transmitter is enabled with hybrid precoding and the digital beamformers are designed according to the ZF criterion. The paper designs the transmitter by simultaneously considering the transmission of data and power through harvesting power splitting. Due to the complexity of the problem, [23] decouples the design of the user grouping (that is based on the correlation of the equivalent channels), the beamformers, and the power/harvesting parameters. The design of the power allocation and the power splitting parameters is addressed through an optimization problem, aiming at maximizing the sum rate while requiring minimum rates and harvested powers. Our paper generalizes the work of [23] by considering multiple antennas at the receivers and by not decoupling the design into several substages, which is a suboptimum approach. In this sense, we include the design of the beamformers into the optimization problem, improve the user grouping by considering the result of the optimization problem beyond the channel correlation, and explicitly take into account the states of the batteries and their time evolution in the grouping strategy. For these reasons, the techniques presented in the previous papers cannot be compared with ours due to the fact that they only consider single-antenna receivers and do not include the states of the batteries. There are more papers in the literature, but they consider even more simplified system assumptions than the previous two [22] and [23] and, therefore, are not cited here for the sake of brevity.


In this paper, we extend the previous works by addressing a multiuser multistream MIMO system, where multiple information and energy harvesting receivers are present and where we explicitly consider other power consumption sources in the system design. The receivers are considered constrained by the system’s battery dynamics, and in this sense, the batteries need to be recharged to increase their lifetimes. In the multiuser MIMO SWIPT framework, there are two groups of users to be served: one for power reception to recharge the batteries, and the other for information reception. Thus far, in the literature of MIMO beamforming techniques, the authors have considered that these two sets of users were predefined and fixed. In this paper, we propose some user grouping techniques that may change frame to frame to maximize the system throughput and/or fairness among users. Additionally, only single-stream communications have been considered for the broadcast scenario so far. The problem of maximizing the multistream sum rate for the multiuser MIMO scenario is very difficult and nonconvex [24]. For this reason, we propose the use of a conventional block diagonalization (BD) [25] simplification used extensively in the literature [26] and generalize most of the works found in the literature by considering multistream communications.

The alternative, that is, not forcing BD and allowing for the presence of interference, results in a nonconvex highly complex problem that we have addressed in our recent journal paper [27]. The complexity of that problem is such that the whole paper is dedicated exclusively to the proposal of numerical algorithms to find a local optimum of the nonconvex problem. In that paper, we assume that the user grouping is fixed and known, and we do not consider the design of those user groups, the performance evaluation of the temporal behavior of the system, the presence of any scheduler, or the presence of user batteries.

Compared to the works presented in the previous section, the main contributions of our work can be highlighted as follows:

  • We consider a multiuser multistream MIMO broadcast transmission strategy in which both the transmitter and receivers are provided with multiple antennas. The system weighted sum rate with individual per-user harvesting constraints is considered in the proposed transmission strategy design. We also take into account the state of the batteries of the terminals in the proposed strategy. We study particular cases in which only information users and only harvesting users are present in the system.

  • We develop an efficient algorithm that computes the optimal precoding matrices for the multiuser MIMO broadcast network setup mentioned previously.

  • The fundamental (multidimensional) trade-off between system performance and (per-user) harvested energy is studied and characterized, placing emphasis on and giving specific closed-form expressions for some particular cases of interest.

  • We incorporate power consumption models at the transmitter and receivers. In particular, we consider the decoding power consumption at the receivers and its impact on system performance.

  • Finally, we develop harvesting-constrained user grouping schemes that employ a two-stage user scheduling mechanism that runs at different time scales. In the first stage, a subset of users are grouped to be candidates for information reception, and a subset of users are grouped to be candidates for harvesting users. Out of these selected users, in the second stage, we perform the final user information and harvesting grouping, with the aim of enhancing the system throughput and/or fairness among users.

The work developed in this paper extends our previous work presented in a conference paper [1]. The main differences and new contributions with respect to that conference version are summarized as follows. First, in this journal version, we have assumed that the system evolves over time, and we therefore have considered a generalized formulation and the inclusion of some power consumption sinks that affect the battery dynamics. Second, we have assumed that user groups are not fixed and known by the transmitter; hence, user grouping strategies have been derived, resulting from the consideration of an optimization of the system performance over time. Finally, we have included a full simulation section that evaluates the system performance over time.

Organization of the paper

The remainder of this paper is organized as follows. In Section 2, we present the system model. In Section 3, we present the formulation of the most general user grouping and resource allocation strategy. We formulate and justify the simplifications that we consider in this paper to solve such a complex problem. Section 4 covers the precoder design for simultaneous data and power transfer. We also address the characterization of the fundamental trade-off between data and power transfer. In Section 5, we present a scheduling mechanism to decide which users should be scheduled in each particular user set. The overall algorithm including all the stages, that is, the user grouping and the resource allocation, is described in detail in Section 6. Section 7 presents some numerical results of the proposed techniques. Finally, conclusions are drawn in Section 8.

Notation used in the paper

The notation that will be used in this paper is detailed in Table 1.

Table 1 Notation used in the paper

System model

Signal model

We consider a wireless broadcast system consisting of one base station (BS) transmitter equipped with nT antennas and a set of K receivers, denoted as \(\mathcal {U}_{T} = \{1, 2, \dots, K\}\), where the kth receiver is equipped with \(n_{R_{k}}\) antennas, as depicted in Fig. 1.

Fig. 1

Broadcast multiuser system. Schematic representation of the downlink broadcast multiuser communication system. Note that each user can switch from an information decoder receiver to an energy harvester receiver. This switching can be implemented technologically, as mentioned in papers such as [51]

We index frames by \(t \in \mathcal {T} \triangleq \{1,\dots,T\}\) with a duration of Tf seconds each. We assume block fading channels, that is, the channels remain constant within a frame but change from frame to frame. The equivalent baseband channel from the BS to the kth receiver is denoted by \(\mathbf {H}_{k}(t) \in \mathbb {C}^{n_{R_{k}}\times n_{T}}\). It is also assumed that the set of matrices {Hk(t)} is known to the BS and to the corresponding receivers. The case of imperfect CSI is beyond the scope of the paper.

The set of users is partitioned into two subsets, as mentioned in the introduction. One of the sets contains the users that receive information, denoted as \(\mathcal {U}_{I}(t) \subseteq \mathcal {U}_{T}\) and \(|\mathcal {U}_{I}(t)| = N\), and the other set, \(\mathcal {U}_{E}(t) \subseteq \mathcal {U}_{T}, |\mathcal {U}_{E}(t)| = M\), contains the users that harvest energy from the power radiated by the BS, which is used to transmit signals to the information receivers. Note that the previous sets depend on t, as the specific users in each of them may change from frame to frame. The numbers of users in each set, N and M, may change from frame to frame as well, as will be explained later in the paper. We assume that a given user is not able to simultaneously decode information and harvest energy. This forces a user to either receive information or harvest energy during the whole frame, i.e., during the scheduling period, which is a reasonable choice if the scheduling periods are short. That translates into disjoint subsets, i.e., \(\mathcal {U}_{I}(t) \,\cap \, \mathcal {U}_{E}(t) = \emptyset, |\mathcal {U}_{I}(t)| + |\mathcal {U}_{E}(t)| \le K\).Footnote 1 To simplify the notation when needed, we will assume that the indexing of users is such that \(\mathcal {U}_{I}(t) = \{1,2,\dots,N\}\) and \(\mathcal {U}_{E}(t) = \{N+1,N+2,\dots,N+M\}\).Footnote 2 We will assume that \(n_{T} > n_{R} - \min _{k}\{n_{R_{k}}\}\) is fulfilled, being \(n_{R} = \sum \nolimits _{k\in \mathcal {U}_{I}}n_{R_{k}}\).Footnote 3

As far as the signal model is concerned, the received signal for the ith information receiver at the nth time instant within the tth frame can be modeled as:

$$\begin{array}{@{}rcl@{}} {}\mathbf{y}_{i}(n,t) \!&=&\! \mathbf{H}_{i}(t)\mathbf{B}_{i}(t)\mathbf{x}_{i}(n,t) \,+\, \mathbf{H}_{i}(t)\!\!\!\!\! \sum\limits_{ \begin{array}{cc} k\in\mathcal{U}_{I}(t)\\ k\neq i \end{array}} \!\!\!\mathbf{B}_{k}(t)\mathbf{x}_{k}(n,t) \\ &&+ \mathbf{w}_{i}(n,t) \in \mathbb{C}^{n_{R_{i}}\times 1}, \forall i \in \mathcal{U}_{I}(t). \end{array} $$

In the previous notation, Bi(t)xi(n,t) represents the transmitted signal for user \(i \in \mathcal {U}_{I}(t)\), where \(\mathbf {B}_{i}(t)\in \mathbb {C}^{n_{T}\times n_{S_{i}}}\) is the precoder matrix, and \(\mathbf {x}_{i}(t)\in \mathbb {C}^{n_{S_{i}}\times 1}\) represents the information symbol vector. \(n_{S_{i}}\) denotes the number of streams assigned to user \(i \in \mathcal {U}_{I}(t)\), and we assume that \(n_{S_{i}} = \min \{n_{R_{i}}, n_{T} -- (n_{R} -- n_{R_{i}})\} \, \forall i \in \mathcal {U}_{I}(t)\) is fulfilledFootnote 4. The transmit covariance matrix is \(\mathbf {S}_{i}(t) = \mathbf {B}_{i}(t)\mathbf {B}_{i}^{H}(t)\) if we assume, without loss of generality (w.l.o.g.), that \(\mathbb {E}\left [\mathbf {x}_{i}(n,t)\mathbf {x}_{i}^{H}(n,t)\right ] = \mathbf {I}_{n_{S_{i}}}\). \(\mathbf {w}_{i}(n,t)\in \mathbb {C}^{n_{R_{i}}\times 1}\) denotes the receiver noise vector, which is considered white and Gaussian with \(\mathbb {E}\left [\mathbf {w}_{i}(n,t)\mathbf {w}_{i}^{H}(n,t)\right ] = \mathbf {I}_{n_{R_{i}}}\)Footnote 5. Note that the middle term of (1) is an interference term usually known as multiuser interference (MUI).

Let \(\tilde {\mathbf {x}}(n,t) = \mathbf {B}(t)\mathbf {x}(n,t)\) denote the signal vector transmitted by the BS, where the joint precoding matrix is defined as \(\mathbf {B}(t) = [\mathbf {B}_{1}(t),\dots, \mathbf {B}_{N}(t)] \in \mathbb {C}^{n_{T} \times n_{S}}\), where \(n_{S} = \sum \nolimits _{i=1}^{N}n_{S_{i}}\) is the total number of streams of all information users, and the data vector is \(\mathbf {x}(n,t) = \left [\mathbf {x}_{1}^{T}(n,t),\dots, \mathbf {x}_{N}^{T}(n,t)\right ]^{T} \in \mathbb {C}^{n_{S} \times 1}\). \(\tilde {\mathbf {x}}(n,t)\) must satisfy the power constraint formulated as \(\mathbb {E}\left [\|\tilde {\mathbf {x}}(n,t)\|^{2}\right ] = \sum \nolimits _{i=1}^{N}\text {Tr}(\mathbf {S}_{i}(t))\le P_{T}\), where PT represents the total radiated power at the BS, assuming that the information symbols of different users are independent and zero-mean.

Let us model the total power harvested by the jth user during the tth frame, denoted by \(\bar {Q}_{j}(t)\), from all receiving antennas to be proportional to that of the equivalent baseband signal, i.e.,

$$ {\begin{aligned} \bar{Q}_{j}(t) =\zeta_{j} \sum\limits_{i\in \mathcal{U}_{I}(t)}\mathbb{E}\left[\| \mathbf{H}_{j}(t) \mathbf{B}_{i}(t) \mathbf{x}_{i}(n,t)\|^{2}\right], \quad \forall j \in \mathcal{U}_{E}(t), \\ \end{aligned}} $$

where ζj is a constant that accounts for the loss in the energy transducer when converting the harvested power to electrical power to charge the battery. Note that, for simplicity, in (2), we have omitted the harvested power due to the noise term or other external RF sources since they can be assumed negligible. Based on this, (2) can be written as:

$$ \bar{Q}_{j}(t) = \zeta_{j} \sum\limits_{i\in\mathcal{U}_{I}(t)}\text{Tr}\left(\mathbf{H}_{j}(t)\mathbf{S}_{i}(t)\mathbf{H}_{j}^{H}(t)\right), \quad \forall j \in \mathcal{U}_{E}(t). $$

For the sake of clarity, we will drop the time and frame dependence whenever possible.

Power consumption models

The energy consumed by the transceiver can be modeled as the energy consumed by the front-end plus the energy consumed by the coding/decoding stages (omitting for the moment the power radiated by the transmitter).Footnote 6 Although other works consider battery imperfections in their models [28], we do not consider them in our work for the sake of simplicity. Note, however, that the strategy and formulation presented in this paper could be extended easily to incorporate those imperfections. In the following, we will comment briefly on the generic abstract approach followed in this paper to make the proposed strategies independent of the concrete model.

  1. 1.

    Front-end consumption: as far as the transmitter is concerned, the components that consume energy are the high-power amplifier (HPA), the mixers, the filters, and other elements of the RF chain. Concerning the receiver, the front-end consumption usually depends on the condition on the channel, i.e., the signal-to-noise ratio (SNR) (in practice, the receiver should adapt the front-end according to the received power [29], an operation that requires some additional power). In the following, however, we assume that the component of the receiver front-end consumption that depends on the SNR is negligible, as it can be concluded from the experimental measurements and is adopted in most works [29]. We denote the energy consumed by the front-end at the transmitter and the receiver by \(P_{c}^{t_{x}}\) and \(P_{c}^{r_{x}}\), respectively.

  2. 2.

    Coding/decoding consumption: it is reasonable to consider the energy consumed by the coding stage at the transmitter negligible compared to the energy consumed by the front-end. This is illustrated and commented on in papers such as [30]. For this reason, we will not include coding consumption in our models. On the other hand, the decoding consumption must be included in the models since, as shown in [31] and [32], such energy consumption is not negligible and can affect importantly the lifetime of the mobile terminal. There is a consensus about the fact that the decoding consumption increases with the data rate Ri(t),Pdec,i(Ri(t)). In [33], the authors presented different models for Pdec,i(Ri(t)), but for the sake of generality, we will consider it a general function.

Given the previous models, the total consumption at the transmitter (omitting for the moment the radiated power) only includes the front-end consumption as mentioned previously, and it therefore is denoted as:

$$ P_{\text{tot}}^{t_{x}} = P_{c}^{t_{x}}. $$

On the other hand, the total power consumption at the ith receiver is expressed as:

$$ P_{\text{tot},i}^{r_{x}}(R_{i}(t)) = P_{\text{dec},i}(R_{i}(t)) + P_{c}^{r_{x}}. $$

Note that the power consumption at the receiver is limited by the current battery level, which in the following will be denoted by Ci(t) for user i. According to this, the data rate of a given information user (user i) during one frame must be constrained in order not to consume more energy when decoding than the current energy available at the battery Ci(t). Hence,

$$ T_{f} (P_{\text{dec},i}(R_{i}(t)) + P_{c}^{r_{x}}) \le C_{i}(t), $$

which can be written in terms of a maximum rate constraint as:

$$ R_{i}(t) \le R_{\max,i}(C_{i}(t)), $$

where \(R_{\max,i}(C_{i}(t)) = P_{\text {dec},i}^{-1}\left (\frac {C_{i}(t)}{T_{f}}- P_{c}^{r_{x}}\right)\).

Battery dynamics

We consider that each user terminal is provided with a finite battery capacity, the level of which decreases accordingly when the user receives and decodes data. The terminals are also able to recharge their batteries by means of collecting the power dynamically coming from the BS.

The battery at the beginning of the tth frame of the ith information user served with a data rate Ri(t−1) during the previous frame is denoted as:

$$ {}C_{i}(t) = \left(C_{i}(t-1) - T_{f} P_{\text{tot},i}^{r_{x}}(R_{i}(t-1))\right)_{0}^{C_{\max}^{i}},\quad \forall i \in\mathcal{U}_{I}(t), $$

where \((x)^{b}_{a}\) is the projection of x onto the interval [a,b], i.e., \((x)^{b}_{a} = \min \{\max \{a,x\},b\}, C_{\max }^{i}\) is the maximum battery level, and the function \(P_{\textrm {tot,i}}^{r_{x}}(R_{i}(t-1))\) was defined in (5). Note that Ci(t) has units of Joules.

On the other hand, the battery at the beginning of the tth frame of the jth harvesting user is denoted as:

$$ {}C_{j}(t) \,=\, \left(C_{j}(t\,-\,1) \,+\, T_{f}\bar{Q}_{j}(t\,-\,1) \,-\, T_{f} P_{c}^{r_{x}}\right)_{0}^{C_{\max}^{j}},\quad \forall j \in\mathcal{U}_{E}(t), $$

where \(\bar {Q}_{j}(t-1)\) is the power harvested during the frame t−1.

The receivers must inform the BS about their battery level status to make decisions on whether to serve that user with information or with power. In this paper, we assume that the feedback channel is ideal and not rate-limited.

The power consumption and battery dynamics models, which are based on the state of the art and existing literature, were also used in a similar way by the same authors of this paper in their previous work [33].

Joint resource allocation and user grouping formulation

In this section, we formulate the joint design of the covariance matrices Si(t), the data rates Ri(t), and the user grouping \(\mathcal {U}_{I}(t), \,\mathcal {U}_{E}(t)\), based on the maximization of the weighted sum rate with individual power harvesting constraints for all time instants \(t\in \mathcal {T}\). Given this, the problem is formulated through the following optimization problem (this formulation generalizes the problem defined in our previous conference paper [1]):

$$ \begin{aligned} \underset{\begin{array}{c} {}\{R_{i}(t),\, \mathbf{S}_{i}(t)\}_{\forall i\in\mathcal{U}_{I}(t)},\\ \mathcal{U}_{I}(t),\, \mathcal{U}_{E}(t) \end{array}}{\text{maximize}}& \quad \sum\limits_{t\in\mathcal{T}}\sum\limits_{i\in\mathcal{U}_{I}(t)} \omega_{i}(t)R_{i}(t) \\ \textrm{subject to} \end{aligned} $$
$${\begin{aligned} & C1:\!\sum\limits_{i\in\mathcal{U}_{I}(t)}\text{Tr}(\mathbf{H}_{j}(t)\mathbf{S}_{i}(t)\mathbf{H}_{j}^{H}(t)) \!\ge\! Q_{j}, & \forall j \in \mathcal{U}_{E}(t),\,\forall t\in\mathcal{T} \\ & C2:\!\sum\limits_{i\in\mathcal{U}_{I}(t)}\text{Tr}(\mathbf{S}_{i}(t)) \,+\, P_{c}^{tx}\le P_{\max},&\forall t\in\mathcal{T}\\ & C3:\!R_{i}(t)\le \log \det \left(\mathbf{I} \,+\, \mathbf{H}_{i}(t)\mathbf{S}_{i}(t)\mathbf{H}_{i}^{H}(t)\right), & \forall i \in \mathcal{U}_{I}(t),\,\forall t\in\mathcal{T}\\ & C4:\!R_{i}(t)\le R_{\max,i}(C_{i}(t)), & \forall i \in \mathcal{U}_{I}(t),\,\forall t\in\mathcal{T}\\ & C5:\! \mathbf{H}_{k}(t)\mathbf{S}_{i}(t)\mathbf{H}_{k}^{H}(t) \,=\, 0, & \forall k\neq i, \,\,\, k, i \in \mathcal{U}_{I}(t),\,\forall t\in\mathcal{T} \\ & C6: \mathbf{S}_{i}(t) \!\succeq\! 0, & \forall i \in \mathcal{U}_{I}(t),\,\forall t\in\mathcal{T} \\ & C7: C_{i}(t) \,=\, \left(C_{i}(t\,-\,1) - T_{f} P_{\text{tot},i}^{r_{x}}(R_{i}(t\,-\,1))\right)_{0}^{C_{\max}^{i}},& \forall i \in\mathcal{U}_{I}(t),\,\forall t\in\mathcal{T}\\ & C8:\! C_{j}(t) \,=\, \left(C_{j}(t\,-\,1) \,+\, T_{f}\bar{Q}_{j}(t-1) \,-\, T_{f} P_{c}^{r_{x}}\right)_{0}^{C_{\max}^{j}},& \forall j \in\mathcal{U}_{E}(t),\,\forall t\in\mathcal{T}, \end{aligned}} $$

where the weights ωi(t)≥0 can be set to assign priorities to achieve fairness among the different usersFootnote 7, \(R_{i}(t) \le \log \det \left (\mathbf {I} + \mathbf {H}_{i}(t)\mathbf {S}_{i}(t)\mathbf {H}_{i}^{H}(t)\right)\) denotes the achievable data rate of the ith user when considering linear precoding following a BD strategy [25], \(Q_{j} = \frac {{\bar {Q}^{\min }}_{j}}{\zeta _{j}}\), where \(\left \{\bar {Q}^{\min }_{j}\right \}\) is the set of minimum power harvesting constraints, and Pmax is the available power at the BS. In fact, BD is applied through constraint C5, which forces the complete cancellation of the MUI, making the whole problem more tractable (as will be shown later in the paper). Notice that constraint C1 is associated with the minimum power to be harvested for a given user. In the case that another external energy harvesting source was available and the amount to be harvested could be estimated (or was fully known in advance), we could subtract such value from Qj accordingly. Constraint C4 assures that the information users do not spent more energy decoding the message than the current energy available at the battery.

As we have already noted, we have assumed a linear precoding approach in the system formulation. Note that the optimum transmission policy in an MIMO broadcast channel is the well-known nonlinear dirty paper coding strategy [24]. Nevertheless, that strategy has high computational demands and cannot be implemented in real time. Instead, much simpler linear transceiver designs have also been shown to achieve high capacities using much lower computational resources (see [34] for more details). Thus, for simplicity in the transmitter design, in this work, we force the precoder to be linear.

Two main difficulties arise when attempting to solve (10). First, note that the solution for all time instants has to be found jointly. The reason is that resource allocation decisions at frame t have an impact not only on that frame but also on future frames. Some researchers have attempted to solve harvesting (time-coupled) problems by assuming that the whole channel and harvesting realizations are known a priori, giving rise to offline approaches that are not implementable in real scenarios [35, 36]. As we assume that only causal knowledge of the channel and the harvesting is available, we would have to resort to dynamic programming (DP) techniques [37] to find the optimal solution of the problem (10). However, these techniques usually require the implementation of extremely high-complexity algorithms that are impractical in scenarios, where the set of variables to be optimized is large, and DP techniques therefore have been applied only in cases where the optimization variables are scalars [38, 39]. The second difficulty that we find is that the user grouping must also be optimized jointly with the covariance matrices and the data rates. The user grouping variables are discrete, and the problem therefore becomes combinatorial. The optimum solution has to be found by applying some sort of combinatorial search among all possible user groups, increasing the overall complexity exponentially.

Because we are interested in low-complexity solutions, we have to make some simplifications to problem (10) to make it more tractable, with the hope of finding a good suboptimum solution that is close to the global optimum solution of problem (10).

The first assumption that we consider is to decouple the problem in time and propose a separate per-frame optimization approach. With this approach, we solve the optimization problem at the beginning of each frame t, making decisions based on the current and past information on the battery levels. The optimization to solve is (we omit the time dependence for the sake of simplicity in the notation even though all these variables, including the information and harvesting users sets \(\mathcal {U}_{I}\) and \(\mathcal {U}_{E}\), change at each frame) as follows:

$$ {\begin{aligned} \mathop{\text{maximize}}_{\substack{\{R_{i},\, \mathbf{S}_{i}\}_{\forall i\in\mathcal{U}_{I}}, \\ \mathcal{U}_{I},\, \mathcal{U}_{E}}}& \quad \sum\limits_{i\in\mathcal{U}_{I}} \omega_{i}R_{i} \\ \textrm{subject to} & \quad C1:\sum\limits_{i\in\mathcal{U}_{I}}\text{Tr}\left(\mathbf{H}_{j}\mathbf{S}_{i}\mathbf{H}_{j}^{H}\right) \ge Q_{j}, & \forall j \in \mathcal{U}_{E} \\ & \quad C2:\sum\limits_{i\in\mathcal{U}_{I}}\text{Tr}(\mathbf{S}_{i}) + P_{c}^{tx}\le P_{\max}\\ & \quad C3:R_{i}\le \log \det \left(\mathbf{I} + \mathbf{H}_{i}\mathbf{S}_{i}\mathbf{H}_{i}^{H}\right), & \forall i \in \mathcal{U}_{I}\\ & \quad C4:R_{i}\le R_{\max,i}(C_{i}), & \forall i \in \mathcal{U}_{I}\\ & \quad C5: \mathbf{H}_{k}\mathbf{S}_{i}\mathbf{H}_{k}^{H} = 0, & \forall k\neq i, \,\,\, k, i \in \mathcal{U}_{I} \\ & \quad C6: \mathbf{S}_{i} \succeq 0, & \forall i \in \mathcal{U}_{I}. \end{aligned}} $$

Problem (11), which generalizes the one addressed in our previous paper [1], as weights are included to take into account the time evolution of the achieved rates, is still very difficult to solve, as it involves continuous and integer variables. Note that for a fixed set of groups, \(\mathcal {U}_{I}\) and \(\mathcal {U}_{E}\), problem (11) is convex with respect to {Ri,Si} and can be solved using standard optimization techniques. The optimum solution can be found by solving problem (11) for all possible combinations of user groups, that is, an exhaustive search should be implemented. Consider for example that \(|\mathcal {U}_{I}| =4\) and \(|\mathcal {U}_{E}|=4\) and that K=10. Then, problem (11) (for a fixed \(\mathcal {U}_{I}\) and \(\mathcal {U}_{E}\)) should be solved \(\frac {K!}{|\mathcal {U}_{I}| !|\mathcal {U}_{E}|!(K-|\mathcal {U}_{I}| -|\mathcal {U}_{E}|)!} = 3.150\) times. Clearly, the optimum solution is impractical, even for a system with a small number of users. In that sense, any technique aside from the exhaustive search may be suboptimal.

This fact motivates our second simplification: we decouple the decision of resource allocation and user grouping and propose a two-stage design strategy in which the user grouping is found based on suboptimal but less complex techniques. In other works, at the beginning of each frame, we first find the user groups \(\mathcal {U}_{I}\) and \(\mathcal {U}_{E}\), and then, for those fixed user groups, we solve the following convex optimization problem:

$$ \begin{aligned} \underset{\substack{\{R_{i},\, \mathbf{S}_{i}\}_{\forall i\in\mathcal{U}_{I}}}}{\text{maximize}} & \quad \sum\limits_{i\in\mathcal{U}_{I}} \omega_{i}R_{i} \\ \text{subject to} & \quad C1\dots C6\ \text{of problem (11)}. \end{aligned} $$

Note that due to C5, problem (12) is convex; otherwise, the objective function, i.e., the weighted sum rate, would not be convex due to the MUI.

In the next section, we are going to present a method to solve problem (12) for different settings. Later, in Section 5, we will present the user grouping techniques.

Weighted sum rate maximization with harvesting constraints

The problem presented in (12) is convex and can be solved using numerical interior point methods [40]. However, those methods usually have high computational complexity, and since we aim at finding a low-complexity solution, a customized algorithm should be developed. In some cases, it is possible to obtain the structure of the transmit covariance matrices in closed form and then develop an efficient algorithm based on that structure. Unfortunately, it is not possible to find the closed-form expression of the optimal transmit covariances for the previous problem due to the constraint C4. However, as we will show later, it is possible to find the transmit covariance structure of problem (12) if C4 is not active.

To guarantee that constraint C4 is not active, we will assume that the set of information users is selected by the scheduler in the first stage in a way that they have enough battery such that \(R^{\star }_{i}(t) < R_{\max,i}(C_{i}(t)), \, \forall i \in \mathcal {U}_{I}\) can be guaranteed in that particular scheduling period (later, we will comment on what to do in the unlikely event of violating the previous requirement). This is a reasonable assumption since users who have very low batteries should not be selected to receive information but to harvest energy. Due to the previous simplifying assumption, constraint C4 will not be active, and we therefore do not consider it in the optimization problem. This assumption considerably simplifies the resolution of the problem.

Note that constraint C5 from the original problem (12) forces the precoder matrix Bi to lie in the right null space of \(\tilde {\mathbf {H}}_{i} = \left [\mathbf {H}_{1}^{T} \quad \dots \quad \mathbf {H}_{i-1}^{T} \,\,\,\, \mathbf {H}_{i+1}^{T} \quad \dots \quad \mathbf {H}_{N}^{T}\right ]^{T}\in \mathbb {C}^{(n_{R}-n_{R_{i}})\times n_{T}}\) [25]. Computing the SVD of \(\tilde {\mathbf {H}}_{i}\) yields \(\tilde {\mathbf {H}}_{i} = \tilde {\mathbf {U}}_{i}\tilde {\mathbf {\Lambda }}_{i}[\tilde {\mathbf {V}}_{i}^{(1)} \quad \tilde {\mathbf {V}}_{i}^{(0)}]^{H}\), where \(\tilde {\mathbf {\Lambda }}_{i}\) is a diagonal matrix containing the singular values, and \(\tilde {\mathbf {V}}_{i}^{(0)}\in \mathbb {C}^{n_{T}\times (n_{T}-n_{R}+n_{R_{i}})}\) contains the right-singular vectors in the null space of \(\tilde {\mathbf {H}}_{i}\). Thus, Bi can be written as \(\mathbf {B}_{i} = \tilde {\mathbf {V}}_{i}^{(0)}\tilde {\mathbf {B}}_{i}\) (with \(\tilde {\mathbf {B}}_{i}\in \mathbb {C}^{(n_{T} - n_{R} + n_{R_{i}})\times n_{S_{i}}})\), and then, \(\mathbf {S}_{i} = \tilde {\mathbf {V}}_{i}^{(0)}\tilde {\mathbf {S}}_{i}\tilde {\mathbf {V}}_{i}^{(0)H}\), where \(\tilde {\mathbf {S}}_{i} = \tilde {\mathbf {B}}_{i}\tilde {\mathbf {B}}_{i}^{H}\). Now, the optimization problem can be rewritten in terms of the new optimization variables \(\{\tilde {\mathbf {S}}_{i}\}\). Let \(\hat {\mathbf {H}}_{i} = \mathbf {H}_{i}\tilde {\mathbf {V}}_{i}^{(0)}\) and \(\hat {\mathbf {H}}_{ji} = \mathbf {H}_{j}\tilde {\mathbf {V}}_{i}^{(0)}\). Note that if constraint C4 is not present in (12), constraint C3 is tight at the optimum, i.e., \(R^{\star }_{i} = \log \det \left (\mathbf {I} + \hat {\mathbf {H}}_{i}\tilde {\mathbf {S}}^{\star }_{i}\hat {\mathbf {H}}_{i}^{H}\right)\), and thus, the objective function is directly expressed as \(\sum \nolimits _{i\in \mathcal {U}_{I}} \omega _{i}\log \det \left (\mathbf {I} + \hat {\mathbf {H}}_{i}\tilde {\mathbf {S}}_{i}\hat {\mathbf {H}}_{i}^{H}\right)\). Then, problem (12) (without considering C4) is reformulated as

$$ {\begin{aligned} \underset{\{\tilde{\mathbf{S}}_{i}\}_{\forall i\in\mathcal{U}_{I}}}{\text{maximize}} & \quad \sum\limits_{i\in\mathcal{U}_{I}} \omega_{i}\log \det \left(\mathbf{I} + \hat{\mathbf{H}}_{i}\tilde{\mathbf{S}}_{i}\hat{\mathbf{H}}_{i}^{H}\right) \\ \textrm{subject to} & \quad C1:\sum\limits_{i\in\mathcal{U}_{I}}\text{Tr}\left(\hat{\mathbf{H}}_{ji}\tilde{\mathbf{S}}_{i}\hat{\mathbf{H}}_{ji}^{H}\right) \!\ge\! Q_{j}, &\quad\quad \forall j \in \mathcal{U}_{E} \\ & \quad C2:\sum\limits_{i\in\mathcal{U}_{I}}\text{Tr}(\tilde{\mathbf{S}}_{i}) \,+\, P_{c}^{tx}\le P_{\max}\\ & \quad C3: \tilde{\mathbf{S}}_{i} \!\succeq\! 0, & \forall i \in \mathcal{U}_{I}. \end{aligned}} $$

The problem above can be checked to be convex since the objective function is concave and the constraints define a convex set. As a consequence, there exists a global optimal solution that can be obtained numerically by means of, for example, interior point methods [40]. However, due to the fact that (13) is convex and satisfies Slater’s conditions [40], the duality gap is zero, and the problem, therefore, can be solved using tools derived from the Lagrange duality theory, and the optimal structure of the transmit covariance matrices \(\{\tilde {\mathbf {S}}_{i}\}\) can be revealed. Let \(\boldsymbol \lambda = \{\lambda _{j}\}_{j\in \mathcal {U}_{E}}\) be the vector of dual variables associated with constraint C1 and μ be the dual variable associated with constraint C2. The optimal solution of problem (13) is given by the following theorem in terms of λ and μ.

Theorem 1

The optimal solution of problem ( 13 ) has the following structure:

$$ \tilde{\mathbf{S}}_{i}^{\star}(\boldsymbol\lambda^{\star},\mu^{\star}) = \mathbf{A}_{i}^{-1/2}\hat{\mathbf{V}}_{i} \hat{\mathbf{D}}_{i} \hat{\mathbf{V}}_{i}^{H} \mathbf{A}_{i}^{-1/2}, $$

where matrix \(\mathbf {A}_{i} = \mu ^{\star } \mathbf {I} - \sum \nolimits _{j\in \mathcal {U}_{E}} \lambda _{j}^{\star } \hat {\mathbf {H}}_{ji}^{H}\hat {\mathbf {H}}_{ji}, \hat {\mathbf {V}}_{i} \in \mathbb {C}^{(n_{T}-n_{R} + n_{R_{i}})\times n_{S_{i}}}\) is obtained from the reduced SVD of matrix \(\hat {\mathbf {H}}_{i}^{H}\mathbf {A}_{i}^{-1/2} = \hat {\mathbf {U}}_{i}\hat {\mathbf {\Sigma }}_{i}^{1/2}\hat {\mathbf {V}}_{i}^{H}\), with \(\hat {\mathbf {\Sigma }}_{i} = \text {diag}\left (\hat {\sigma }_{1,i}, \dots, \hat {\sigma }_{n_{S_{i}},i}\right), \hat {\sigma }_{1,i} \ge \hat {\sigma }_{2,i} \ge \dots \ge \hat {\sigma }_{n_{S_{i}},i} > 0\), and \(\hat {\mathbf {D}}_{i} = \text {diag}\left (\hat {d}_{1,i}, \dots, \hat {d}_{n_{S_{i}},i}\right)\), with \(\hat {d}_{k,i} = (\omega _{i}/\log (2)-1/\hat {\sigma }_{k,i})^{\infty }_{0}, \forall i \in \mathcal {U}_{I}\) and \(k = 1, \dots, n_{S_{i}}\).


See Appendix 1. □

Note the similarities in the precoder structure between the result presented in (14) for the multiuser case and the result found in [9] for the single-user case. In the multiuser case, we have to find a set of multipliers associated with the per-user harvesting constraints, which makes the problem more complex to solve. Finally, the optimum data rate achieved by user i is thus:

$$ {}R_{i}^{\star} \,=\, \log \det \left(\mathbf{I} \,+\, \hat{\mathbf{H}}_{i}\tilde{\mathbf{S}}_{i}^{\star}\hat{\mathbf{H}}_{i}^{H}\right) \,=\, \!\sum\limits_{j=1}^{n_{S_{i}}} \log \left(1 \,+\, \hat{\sigma}_{j,i} \hat{d}_{j,i}\right),\!\! \quad \forall i\in\mathcal{U}_{I}. $$

However, the above process is still pending the computation of the optimal dual variables since we assumed in the previous development that the dual variables were given (in Theorem 1, matrix Ai depends on the optimal values of the Lagrange multipliers). As long as we have a closed-formed expression of the covariance matrices \(\tilde {\mathbf {S}}_{i}(\boldsymbol \lambda,\mu)\) as a function of the dual variables, we can solve the dual problem of (13) by maximizing the dual function g(λ,μ) subject to λ0,μ≥0, and Ai0 i. This can be addressed by applying any subgradient-type method, such as, for example, the ellipsoid method [41]. It can be shown that the subgradient of g(λ,μ), denoted as t, is given by \([\mathbf {t}]_{m} = Q_{N+m} - \sum \nolimits _{i\in \mathcal {U}_{I}}\text {Tr}\left (\hat {\mathbf {H}}_{(N+m)i}\tilde {\mathbf {S}}_{i}\hat {\mathbf {H}}_{(N+m)i}^{H}\right)\) for 1≤mM and \([\mathbf {t}]_{M+1} = \text {Tr}(\tilde {\mathbf {S}}_{i}) - \left (P_{\max } - P^{tx}_{c}\right)\) [42], which represents the subgradient of g(λ,μ) with respect to λm and μ, respectively ([t]k denotes the kth entry of vector t), and \(\tilde {\mathbf {S}}_{i}\) is computed as in (14) for a given λ and μ (for each step of the algorithm, we compute \(\tilde {\mathbf {S}}_{i}\) just by replacing, in expression (14), the optimal values of the Lagrange multipliers by their current values). Since the duality gap is zero, when we obtain the optimal dual variables (λ and μ) with the ellipsoid method, the optimal solution \(\tilde {\mathbf {S}}_{i}^{\star }(\boldsymbol \lambda ^{\star },\mu ^{\star })\) converges to the primal optimal solution of problem (13). As a summary, the algorithm that solves problem (13) is described in Table 2 (this table was already presented in [1] but is included here for the sake of completeness).

Table 2 Algorithm for solving problem (13)

Particular cases: scenario with only one type of user

There exists a couple of particular cases of the problem presented before in which only one type of user is present in the system. Such simplified scenarios are found in real systems and will yield simpler optimization problems with lower computational complexity in the resolution of the resource allocation algorithm. For the sake of ease of readability of the paper, the mathematical developments of both particular cases have been moved to Appendix C.

Trade-off analysis between weighted sum rate and power constraints

In this section, we analyze the multidimensional trade-off between the objective function, that is, the weighted sum rate, and the set of power harvesting constraints. For simplicity, let us consider that \(C_{i}(t)\,\,\forall i\in \mathcal {U}_{I}\) is high enough so that it could be assumed that \(R_{i}^{\star } < R_{\max,i}\) and \(R_{i}^{\star } = \log \det \left (\mathbf {I} + \hat {\mathbf {H}}_{i}\tilde {\mathbf {S}}_{i}^{\star }\hat {\mathbf {H}}_{i}^{H}\right)\). We would like to emphasize that, as the noise and channels are normalized, we will refer to the powers harvested by the receivers in terms of power units instead of Watts. Given this approach, we propose to use the rate-power (R-P) region to characterize all the achievable sum rates (in bit/s/Hz) and power harvesting (in power units) M+1-tuples under a given power constraint as in [9]. The R-P region of problem (13) is defined as:

$$ {\begin{aligned} & \mathcal{C}_{\text{R-P}}\left(\left(P_{\max} - P^{tx}_{c}\right), \{\omega_{i}\}\right) \triangleq \\ & \left\{\,(\text{SR};\{Q_{j}\}) \,\mid\, \exists\,\, \{\tilde{\mathbf{S}}_{i}\} \,\, \text{with}\,\,\, \text{SR} \le \sum\limits_{i\in\mathcal{U}_{I}}\omega_{i} \log \det \left(\mathbf{I} + \hat{\mathbf{H}}_{i}\tilde{\mathbf{S}}_{i}\hat{\mathbf{H}}_{i}^{H}\right), \right. \\& \left. \sum\limits_{i\in\mathcal{U}_{I}}\text{Tr}\left(\hat{\mathbf{H}}_{ji}\tilde{\mathbf{S}}_{i}\hat{\mathbf{H}}_{ji}^{H}\right)\ge Q_{j}, \,\sum\limits_{i\in\mathcal{U}_{I}}\text{Tr}(\tilde{\mathbf{S}}_{i})\,+\,P^{tx}_{c}\le P_{\max}, \, \tilde{\mathbf{S}}_{i} \succeq 0 \quad \forall j \in \mathcal{U}_{E},\, \forall i \in \mathcal{U}_{I} \right\}. \end{aligned}} $$

To be able to graphically show an example of the trade-off, we restrict the cardinality of the set of harvesting users and information users to be two, i.e., \(|\mathcal {U}_{E}| = 2\) and \(|\mathcal {U}_{I}| = 2\), and for simplicity, we consider that \(\omega _{i} = 1, \,\,\forall i\in \mathcal {U}_{I}\). In such a case, the trade-off region between the sum rate and the two power constraints is a three-dimensional surface. The setup taken as an example for this section is a BS with four transmit antennas and where all users have two antennas. The maximum transmission power at the BS is \(P_{\max } - P^{tx}_{c} = 10\) W. The entries of the matrix channels are generated independently from a complex circularly symmetric Gaussian distribution with zero mean and variance equal to one.Footnote 8

Fig. 2

Three-dimensional R-P region. Representation of the three-dimensional R-P region of problem (13). The figure represents the existing trade-off between the optimal solution of the problem, i.e., the weighted sum rate, and the two power harvesting constraints

Fig. 3

Contour lines of the three-dimensional R-P region. Contour lines of the three-dimensional R-P region of problem (13). Note that the density of lines increases with the gradient of the surface, and the color indicates the value of such a surface. Note also that some important boundary characteristic points have been marked

Figure 2 depicts the three-dimensional R-P region for the previous setup. As can be appreciated, the optimal sum rate solution is jointly concave on Q1 and Q2, as expected [40]. The values of Q1 and Q2 for which the region is not defined correspond to situations where problem (13) is infeasible. To characterize the surface accurately, let us introduce the contour lines of the R-P region in Fig. 3. In the plot, when the lines are close together, the magnitude of the gradient is large. There are also some important boundary points marked in the 3D plot of the surface. Those points can be computed in a simple way and provide us with useful cases that will be commented on in what follows.

Let us first start with the boundary point defined by (SRmax,0,0). The power harvesting constraints for users 1 and 2 at this point are set to zero, and the solution of the problem therefore can be obtained from problem (22) (or from problem (13) with Q1=Q2=0). SR max represents the maximum sum rate that can be achieved in this situation when no energy harvesting is imposed. The optimum covariance matrices were obtained in Section 4.1 and are denoted here as \(\tilde {\mathbf {S}}^{\star }_{\text {SR}_{i}}\) for the ith user. Following that notation, the maximum sum rate can also be expressed as \(\text {SR}_{\max } = \log \det \left (\mathbf {I} + \hat {\mathbf {H}}_{1}\tilde {\mathbf {S}}^{\star }_{\text {SR}_{1}}\hat {\mathbf {H}}_{1}^{H}\right) +\log \det \left (\mathbf {I} + \hat {\mathbf {H}}_{2}\tilde {\mathbf {S}}^{\star }_{\text {SR}_{2}}\hat {\mathbf {H}}_{2}^{H}\right)\).

Note that although when computing SRmax we do not apply power harvesting constraints, this does not necessarily mean that the actual harvested powers are zero. In this context, we have the boundary point \((\text {SR}_{\max },Q_{1}^{\mathrm {I}},0)\), where \(Q_{1}^{\mathrm {I}}\) represents the power harvested by user 1 when the precoder matrices are the ones that maximize the weighted sum rate, i.e., \(Q_{1}^{\mathrm {I}} = \text {Tr}\left (\hat {\mathbf {H}}_{11}\tilde {\mathbf {S}}^{\star }_{\text {SR}_{1}}\hat {\mathbf {H}}_{11}^{H}\right) + \text {Tr}\left (\hat {\mathbf {H}}_{12}\tilde {\mathbf {S}}^{\star }_{\text {SR}_{2}}\hat {\mathbf {H}}_{12}^{H}\right)\). The same can be said for the boundary point \(\left (\text {SR}_{\max },0,Q_{2}^{\mathrm {I}}\right)\), where \(Q_{2}^{\mathrm {I}} = \text {Tr}\left (\hat {\mathbf {H}}_{21}\tilde {\mathbf {S}}^{\star }_{\text {SR}_{1}}\hat {\mathbf {H}}_{21}^{H}\right) + \text {Tr}\left (\hat {\mathbf {H}}_{22}\tilde {\mathbf {S}}^{\star }_{\text {SR}_{2}}\hat {\mathbf {H}}_{22}^{H}\right)\). Then, there is a fourth point that defines a flat surface (or tableland) of constant sum rate SRmax, which is the combination of the two previous points, \(\left (\text {SR}_{\max },Q_{1}^{\mathrm {I}},Q_{2}^{\mathrm {I}}\right)\). In other words, the tableland of constant maximum weighted sum rate SRmax defines all possible values of harvested power constraints for which constraints C1 are not active and thus do not affect the optimum value of the weighted sum rate.

Now, let us consider the boundary points in terms of maximum harvested power. On top of the figure, there is the point \((\text {SR}_{\mathrm {E}1}, Q_{1,\max }, Q_{2}^{1})\). This point corresponds to the situation in which the power harvested by user 1 is a maximum or, in other words, the maximum value of Q1 for which problem (13) is feasible, assuming no constraint on the power to be harvested by user 2. To calculate Q1,max, we solve the following optimization problem:

$$\begin{array}{*{20}l} \underset{\tilde{\mathbf{S}}_{\mathrm{E}1}}{\text{maximize}} & \quad \text{Tr}\left(\hat{\mathbf{H}}_{11}\tilde{\mathbf{S}}_{\mathrm{E}1}\hat{\mathbf{H}}_{11}^{H}\right) \\ \textrm{subject to} & \quad C1:\text{Tr}(\tilde{\mathbf{S}}_{\mathrm{E}1}) + P^{tx}_{c}\le P_{\max}\\ & \quad C2: \tilde{\mathbf{S}}_{\mathrm{E}1}\succeq 0, \end{array} $$

where \(\tilde {\mathbf {S}}_{\mathrm {E}1}\) represents the sum of the two covariance matrices for the information users (note that in this problem, the objective function and the constraint depend on such matrices through their sum), and the objective function is the power harvested by user 1. Now, by applying the result from Proposition 2, we obtain the solution of problem (17) as follows. Let the reduced eigen-decomposition of \(\hat {\mathbf {H}}_{11}^{H}\hat {\mathbf {H}}_{11}\) be \(\hat {\mathbf {U}}_{11}\hat {\mathbf {\Lambda }}_{11}\hat {\mathbf {U}}_{11}^{H}\) such that \(\hat {\mathbf {u}}_{11,\max }\) is the eigenvector associated with the maximum eigenvalue \(\hat {\lambda }_{11,\max }\). Then, the solution to the previous problem is based on the following inequality: \(\text {Tr}\left (\tilde {\mathbf {S}}_{\mathrm {E}1}\hat {\mathbf {H}}_{11}^{H}\hat {\mathbf {H}}_{11}\right) \le \hat {\lambda }_{11,\max }\text {Tr}\left (\tilde {\mathbf {S}}_{\mathrm {E}1}\right) = \hat {\lambda }_{11,\max } \times \left (P_{\max } - P^{tx}_{c}\right)\) (since at the optimum \(\text {Tr}\left (\tilde {\mathbf {S}}^{\star }_{\mathrm {E}1}\right) = P_{\max } - P^{tx}_{c})\), where such inequality becomes equality if \(\tilde {\mathbf {S}}^{\star }_{\mathrm {E}1} = \left (P_{\max } - P^{tx}_{c}\right)\times \hat {\mathbf {u}}_{11,\max }\hat {\mathbf {u}}_{11,\max }^{H}\). In this case, the maximum harvested energy is accomplished by energy beamformingFootnote 9 (i.e., rank 1) to the best eigenmode of the equivalent channel \(\hat {\mathbf {H}}_{11}^{H}\hat {\mathbf {H}}_{11}\). Then, we obtain \(Q_{1,\max } = \text {Tr}\left (\hat {\mathbf {H}}_{11}\tilde {\mathbf {S}}^{\star }_{\mathrm {E}1}\hat {\mathbf {H}}_{11}^{H}\right) = (P_{\max } - P^{tx}_{c})\times \hat {\lambda }_{11,\max }\). According to this, the weighted sum rate obtained by solving problem (13) and Q1=Q1,max,Q2=0 (denoted as SRE1) is \(\text {SR}_{\mathrm {E}1} = \log \det \left (\mathbf {I} + \hat {\mathbf {H}}_{1}\tilde {\mathbf {S}}^{\star }_{\mathrm {E}1}\hat {\mathbf {H}}_{1}^{H}\right) + \log \det \left (\mathbf {I} + \hat {\mathbf {H}}_{2}\tilde {\mathbf {S}}^{\star }_{\mathrm {E}1}\hat {\mathbf {H}}_{2}^{H}\right)\). Note that, even though we do not apply the power harvesting constraint of user 2 when computing \(\tilde {\mathbf {S}}_{\mathrm {E}1}\), it does not mean that the actual power harvested by user 2 is zero. In this context, we define the last coordinate of the point, denoted as \(Q_{2}^{1}\), which represents the power harvested by user 2 when the covariance matrix is \(\tilde {\mathbf {S}}^{\star }_{\mathrm {E}2}\), i.e., \(Q_{2}^{1} = \text {Tr}\left (\hat {\mathbf {H}}_{21}\tilde {\mathbf {S}}^{\star }_{\mathrm {E}2}\hat {\mathbf {H}}_{21}^{H}\right)\). The same reasoning can be applied to obtain the last boundary point \((\text {SR}_{\mathrm {E}2}, Q_{1}^{2}, Q_{2,\max })\) by interchanging the roles of users 1 and 2.

The remaining boundary points in the curve can be obtained by properly varying the values of Q1 and Q2 (0≤Q1Q1,max,0≤Q2Q2,max) in problem (13).

User selection policies

Thus far, we have assumed that the two groups of users, i.e., \(\mathcal {U}_{I}\) and \(\mathcal {U}_{E}\), were known. The goal of this section is to propose a grouping strategy to select which users should go into each set in a way that the aggregated throughput over time is maximized. As the channels and batteries fluctuate throughout time, the users in each group may also change from frame to frame. In this section, we will assume that the values of {Qj} are known and fixed. The management of these values is beyond the scope of the paper (see the work in [43], where the authors propose some procedures to adjust the values of {Qj}, considering the impact on the system performance).

As previously noted, the optimal information and harvesting grouping should be obtained by joint exhaustive search (see Section 3). This search is prohibitively complex, and suboptimum techniques therefore should be derived. The case of having only information users has been studied in the literature, and suboptimal techniques that perform close to the optimum one have been proposed [44, 45]. In this paper, to keep the overall complexity as low as possible without compromising the performance of the system, we present suboptimal techniques for the user grouping for both kinds of users, i.e., information and harvesting users. This is one of the major contributions of our paper, that is, work with users that have different objectives. Additionally, as we will show, the proposed greedy algorithms take into account that the selection of the harvesting users impacts directly the performance of the information users, that is, there is a coupling behavior between both aspects.

The overall user grouping strategy will be divided into two stages. In the first stage (that will be known as supergrouping), we will provide a preselection of user candidates to be in each set. This will depend primarily on the current energies available at the batteries, and it will be run at a longer time scale, every few scheduling periods or frames. For the second stage, known as grouping, we are going to present two different user grouping strategies that will be run at every frame. The strategy with the highest complexity provides a better performance than the simpler strategy.

In the first (simpler) approach, we will split the user grouping further into two stages. The first stage selects the information users, \(\mathcal {U}_{I}\), from the supergrouping set \(\mathcal {U}^{S}_{I}\) based on a greedy approach, whereas the second stage selects the harvesting users, \(\mathcal {U}_{E}\), based on the already selected information users. In the second approach, we will develop a joint information-harvesting grouping strategy, which constitutes an intermediate approach between the first simple approach and the optimum approach based on exhaustive search.

User supergrouping strategy

Recall that when we derived the optimal precoder matrix in Section 4, we assumed that the optimal rates would fulfill \(R^{\star }_{i}(t) < R_{\max,i}(t), \, \forall i \in \mathcal {U}_{I}\) for any particular frame, and therefore, constraints C4 in problem (12) were not active. This is achieved by preselecting the users that are to be scheduled for data transmission or battery charging. In our proposed approach, we first implement a selection of candidates to be in \(\mathcal {U}_{I}\) and \(\mathcal {U}_{E}\), known as \(\mathcal {U}^{S}_{I}\) and \(\mathcal {U}^{S}_{E}\), such that \(\mathcal {U}_{I}\subseteq \mathcal {U}^{S}_{I}, \mathcal {U}_{E}\subseteq \mathcal {U}^{S}_{E}\), and \(\left |\mathcal {U}^{S}_{I}\right | + \left |\mathcal {U}^{S}_{E}\right | = K\), and we then select the users that finally go into the sets \(\mathcal {U}_{I}\) and \(\mathcal {U}_{E}\). The proposed supergrouping algorithm is presented in Table 3 and works as follows: we set a threshold α such that 0≤α≤1. Then, we compute the ratio of the current battery level and the battery capacity for all users, and we then order these ratios increasingly. If the middle ratio of the previous list is greater than the value of the threshold α, we then split the overall group by half and put half of the users in \(\mathcal {U}^{S}_{I}\) and the other half in \(\mathcal {U}^{S}_{E}\). On the other hand, if the middle ratio of the previous list is lower than the value of α, we find the user with battery ratio closest to the value of α and put all users with lower ratios than the one closest to α in the harvesting set and the remaining users in the information set. The larger the value of α, the greater the number of users that will be included in the harvesting set \(\mathcal {U}^{S}_{E}\). Note that the BS has to know the battery levels of all users, which implies that receivers must send the battery levels through a feedback channel and, hence, the battery levels must be quantized (in [33], we addressed the problem of quantizing the battery levels and evaluated the effect on the overall system performance, and we conclude that a few bits for quantization is enough to obtain good performance).

Table 3 Algorithm to obtain the superframe sets \(\mathcal {U}^{S}_{I}\) and \(\mathcal {U}^{S}_{E}\)

Disjoint information and harvesting user grouping

This first approach is based on two stages. In the first stage, the selection of the information users follows a greedy approach, in which each user is added at a time and the maximization of the weighted sum rate without harvesting constraints is evaluated for all possible candidate information users with the already selected users. No harvesting users are considered at this stage.

Let us assume, for simplicity, that every information user has the same number of antennas, i.e., \(n_{R_{i}} = N_{R}, \,\forall i\in \mathcal {U}_{T}\). The maximum number of simultaneous users to be served following the BD strategy is then \(U = \lceil \frac {n_{T}}{N_{R}}\rceil \) [25]. The algorithm for selecting the information users is shown in Table 4; first, we select the user that can achieve the greatest weighted rateFootnote 10. Then, we incorporate one user at a time into the set only if the accumulated weighted sum rate increases due to incorporating such a user (weighted sum rate evaluated with the already selected users). The algorithm ends when there is no improvement in the weighted sum rate or when the maximum number of users to be scheduled (U) is reached.

Table 4 Algorithm to obtain the set of information users \(\mathcal {U}_{I}\)

Note that the distances from the BS to the users are taken into account implicitly in the algorithm since in step 2 and step 8 of Table 4, we select users according to the rates. These rates depend on the channel matrices {Hi}, and the components of these matrices, of course, will be small if the distances are large. Therefore, the distances will have a direct impact on the selection of users.

Once we have selected the information users, we continue with the selection of the harvesting users in the second stage of this grouping strategy. The idea is to select the harvesting users so that when the resource allocation strategy is executed, they affect (reduce) the system performance as little as possible (see Section 4.2). Let \(\mathbf {S}^{\star } = \sum \nolimits _{i\in \mathcal {U}_{I}}\mathbf {S}^{\star }_{i}\), where \(\mathcal {U}_{I}\) and \(\{\mathbf {S}^{\star }_{i}\}_{i\in \mathcal {U}_{I}}\) are the information user set and the optimum covariance matrices obtained from the algorithm detailed in Table 4, respectively. The algorithm works as follows. For each harvesting user j, we evaluate and decreasingly order Tr(HjSHj)−Qj and select the first M harvesting users according to this order. Note that in the previous expression, we are evaluating how the optimum covariance matrices of the selected information users transmit power in the geometrical direction of the channels of the harvesting users. We also take into account the minimum required power to be harvested Qj to ensure feasibility of the solution of the resource allocation problem. The algorithm is presented in Table 5.

Table 5 Algorithm to obtain the set of harvesting users \(\mathcal {U}_{E}\)

Joint information and harvesting user grouping

In this second approach, the selection of the information and harvesting users is coupled. Due to this joint approach, the system performance will be degraded less by the effect of having harvesting users in the system compared with the previous decoupled approach. However, the computational complexity increases as more combinations need to be evaluated.

The algorithm for selecting the information users is based on the same greedy approach that we presented before. The difference is that, now, instead of selecting the information users and then the harvesting users, we select both types of users simultaneously. For simplicity in the formulation, let us consider that M is an integer multiple of U and define \(k = \frac {M}{U}\) (we will comment later on how we could apply the algorithm if that was not the case). The idea behind the algorithm is as follows. We select one information user q and obtain its optimum covariance matrix \(\mathbf {S}^{\star }_{q}\). Then, we find the best k harvesting users based on the principle developed in Table 5. After that, we select another information user and repeat the same process until there is no improvement in the objective function. Due to the fact that the grouping is coupled, we consider the impact of having selected harvesting users on the future selection of information users. The specific details of the joint algorithm are presented in Table 6.

Table 6 Algorithm to jointly obtain the set of information and harvesting users \(\mathcal {U}_{I}, \mathcal {U}_{E}\)

The main difference with the algorithm in Table 5 is that, now, we solve problem (13) with constraints C1, that is, with harvesting users, which increases the complexity of the overall grouping procedure. As addressed before, if M is not an integer multiple of U, we can introduce more harvesting users in step 21 in Table 6 in some iterations, e.g., if M=7 and U=3, we first select three harvesting users and then two harvesting users in the other two iterations.

Overall user grouping and resource allocation algorithm

In the following, we present a summary of the overall algorithm that consists of the user supergrouping, the user grouping, and the resource allocation stages presented in the previous two sections. Note that the user supergrouping is carried out every few frames, whereas the user grouping is executed at each frame. If, for some reason, the supergrouping algorithm fails in fulfilling \(R^{\star }_{i}(t) < R_{\max,i}(t), \, \forall i \in \mathcal {U}_{I}\) (an event that would be unlikely to happen), then for those users for which \(R^{\star }_{i}(t) \ge R_{\max,i}(t)\), we just transmit information in some channel accesses of the frame until their battery is over. The overall algorithm is detailed in Table 7.

Table 7 Overall user grouping and resource allocation algorithm

Results and discussion

In this section, we perform some numerical analysis of the proposed grouping and resource allocation strategies. The system comprises one transmitter with 8 antennas and 30 users \((|\mathcal {U}_{T}| = 30)\) with 2 antennas each. The maximum radiated power is Pmax=11 W, and the transmitter front-end consumption is \(P^{tx}_{c} = 1\) W. Front-end power consumption at the receiver is \(P^{rx}_{c} = 100\) mW, and the model used for decoding is exponential, i.e., \(P_{\text {dec}}(R) = c_{1} \mathrm {e}^{c_{2}R}\), where c1=30, and c2=0.75 [33]. The frame duration is equal to Tf=100 ms, and the superframe duration is equal to 3 s. The channel matrices are generated randomly with i.i.d. entries distributed according to \(\mathcal {CN} (0,1)\). The noise power is normalized to 1. The effective window length for the PF scheme is Tc=5. The percentage used for supergrouping is α=0.1. The battery capacities are generated randomly from 3000 to 10,000 energy units. As we mentioned previously, we assume that all the harvesting constraints are the same for all users and fixed for all periods to Qj=50 power units, unless stated otherwise. A strategy on how to manage and dynamically adjust the values of the {Qj} was proposed in [43] and is beyond the scope of this paper.

In the simulations, we compare our proposed two methods with two other schemes. As there are no proposals in the literature for user scheduling in the SWIPT framework, we compare our approaches with traditional schemes. In one of the schemes, we assume that the supergrouping and grouping are implemented with a round robin strategy. We will denote this strategy RR-SF/RR-F. In the other scheme, we consider that random selection of users is implemented at both levels as well. This strategy will be denoted by Ra-SF/Ra-F. On the other hand, the proposed supergrouping strategy (Table 3) will be denoted by LB, and the grouping will be denoted according to the algorithm: DHS for the decoupled approach presented in Section 5.2 (Tables 4 and 5) and CHS for the approach presented in Section 5.3 (Table 6).

Time evolution simulations

Figure 4 depicts the evolution of the battery levels of all users in the system. We can observe that for the round robin scheme, users reach their maximum battery capacity. This is because the data rates achieved are low, and thus, users use little energy for decoding. Then, in the top-right figure, we have the case where random scheduling is considered. In this case, we see how the battery evolutions of all users evolve randomly because new users are scheduled in a random fashion in each frame. Due to the battery overflows that some users experience and the randomness in the selection, this approach, as will happen with the round robin scheme, will not be very efficient in terms of aggregate throughput. The last two figures depict the battery evolution of the two proposed schemes. We observe that in both cases, the battery levels of the users are substantially lower than the ones observed in previous schemes. This reduction in battery levels is related with the large throughput achieved by the users, as will be apparent later. It is difficult to assess from these figures which proposed scheme provides better performance.

Fig. 4

Time evolution of the battery levels. Time evolution of the battery levels of all users in the system for the different approaches

Figure 5 presents the average sum rate of the system (computed as \(SR(\tau) = \frac {1}{\tau } \sum \nolimits _{t=1}^{\tau } \sum \nolimits _{i\in \mathcal {U}_{I}} R_{i}(t)\)). This metric is an estimation of the expected throughput of the system. From the figure, we see that the sum rate of the round robin and random schemes provides a stable average throughput over time but the magnitude of the throughput is not so high. Then, we see how the proposed schemes notably outperform the previous benchmarking strategies. The simpler approach, DHS, performs similar to the more complex strategy, CHS. We also plot, as benchmarks, two cases. The first one, called “no harvesting management,” refers to the case in which the harvesting users are selected jointly with data users following the CHS approach, but their harvesting constraints are set to zero, Qj=0, j, that is, harvesting users collect energy without imposing a constraint. In this case, the rate achieved is higher at the beginning, but the energy collected by the users is lower, having an impact on the performance as time goes on. The second case considers that no power transfer (no SWIPT) is available, and users therefore cannot recharge their batteries. In this case, the users run out of battery, and the expected sum rate therefore tends to zero.

Fig. 5

Time evolution of the average sum rate. Time evolution of the average sum rate of the system for the different approaches

Figure 6 shows the cumulative distribution function (CDF) of the individual data rates of the users in the system. The CDF of the no SWIPT case has a particular shape due to the fact that many users obtain zero data rate as they run out of battery. In this figure, we clearly see the benefits of the proposed user selection schemes compared to the other approaches, such as low data rate percentiles and high data rate percentiles being much better for the proposed strategies.

Fig. 6

CDF of the individual data rates. CDF of the individual data rates of all the users in the system for the different approaches

Finally, in Fig. 7, we depict the average evolution of the harvested power. It is interesting to note how all users tend to converge to a certain point (or the vicinity of a point). This is due to the fact that if a user is receiving much power, then its battery will increase, which will make the user more eligible to receive data, making the harvesting decrease, whereas if a user has low energy in its battery, then it is directly selected to be included in set \(\mathcal {U}^{S}_{E}\). We observe that the more complex approach, CHS, is able to provide the users with larger harvested power compared to the less complex approach, DHS.

Fig. 7

Time evolution of the average harvested power. Time evolution of the average harvested power of all the users in the system for the different approaches (in power units)

System performance simulations

In the next figures, we will show the performance of the system obtained once the algorithms have converged (i.e., after 1500 frames). The first two figures, Figs. 8 and 9, show the system performance, considering that half of the users are at a relative distance to the BS greater than for the other half of the users. In particular, Fig. 8 presents the sum of the expected sum rate for the four schemes for four different relative distances. As expected, the sum rate decreases as the distance to the BS increases. On the other hand, Fig. 9 shows the sum of the expected harvested power as a function of the relative distance. We see that if half of the users are four times farther away from the BS, the loss in harvested power is from 25 to 50%, and the relative loss is lower for the proposed schemes.

Fig. 8

Expected system sum rate vs distance to the BS. Expected system sum rate as a function of the distance to the BS

Fig. 9

Sum of expected harvested powers by all users vs distance to the BS. Sum of the expected harvested powers by all users (in power units) as a function of the distance to the BS

The last two figures, Figs. 10 and 11, show the performance of the system when the size of the harvesting group increases in relative terms when compared to the size of the information group, i.e., when \(\frac {M}{U}\) increases. This phenomenon is interesting to evaluate since the harvesting users appear in the constraints and they negatively affect the aggregated sum rate (see trade-off in Section 4.2). However, if many users are introduced in the harvesting set, then their batteries will recharge faster, and they will be able to receive higher data rates. This is the compromise that is analyzed in the figures. First, in Fig. 10, we see the expected aggregated sum rate. As we see, for the two benchmarking approaches, Ra and RR, the sum rate decreases as \(\frac {M}{U}\) increases. This is because the harvesting users are selected without considering the impact that they have on the objective function, and therefore, if more harvesting users are considered in the optimization problem, a lower sum rate will be achieved. In those cases, the optimization problem turns out to be infeasible many times, and therefore, the energy collected by all users also decreases, see Fig. 11. On the other hand, the aggregated sum rate increases a bit for \(\frac {M}{U} = 2\) for the proposed strategies. This is due to the fact that harvesting users are selected very efficiently, and thus, the constraints associated to them are not active, i.e., they do not affect the optimum value of the objective function. Additionally, as more users are able to recharge their batteries (see Fig. 11), they can decode higher rates in future frames. Nonetheless, from a given size \(\frac {M}{U}\) on, the system sum rate starts to decrease as the harvesting constraints become active, although the problem is always feasible, and users recharge their batteries, as is indirectly depicted in Fig. 11.

Fig. 10

Expected system sum rate vs relative size of the harvesting user group. Expected system sum rate as a function of the relative size of the harvesting user group

Fig. 11

Sum of expected harvested powers by all users vs relative size of the harvesting user group. Sum of the expected harvested powers by all users (in power units) as a function of the relative size of the harvesting user group

Computational complexity

An analytic evaluation of the computational complexity of the proposed techniques for each scheduling period is extremely difficult since these algorithms are iterative, each iteration involves the numerical solution of an optimization problem, there are discrete variables related to the grouping of users, and the solution and convergence times depend on the concrete channels associated to the users in the scenario. Because of this, we have performed a numerical evaluation of the computational complexity of the different algorithms by performing many simulations over random channels and averaging the convergence times at each scheduling period obtained in the simulator. Figure 12 shows a set of bars comparing the complexities needed for convergence of the different algorithms that require grouping, that is, RR-SF/RR-F, Ra-SF/Ra-F, LB-SF/CHS-F, and LB-SF/DHS-F. The highest bar corresponds to the algorithm requiring the highest computational complexity, which is LB-SF/CHS-F and has been labeled as the 100% reference. The other bars show the complexities associated to the other algorithms, taking as relative reference, the complexity of LB-SF/CHS-F.

Fig. 12

Relative computational complexities. Average computational complexities of each algorithm needed for convergence at each scheduling period relative to algorithm LB-SF/CHS-F


This paper has studied the performance of a proposed scheduling algorithm in a multiuser MIMO broadcasting system, where wireless power transfer from BS has been considered a potential technique for energy harvesting taken from radio signals. We derived the particular structure of the optimal transmit covariance matrices and particularized the scenario where only information or harvesting users were present in the system and where both types of users coexist in the system. If only harvesting users were considered, the problem was reformulated as a feasibility problem, and we provided some proposals to be applied in case that the original problem was infeasible. Then, we addressed the multidimensional trade-off between the sum rate and the harvesting constraints in the general case. We showed that energy beamforming was optimal in the case that the power harvested by one particular user was to be maximized. Finally, we presented some user grouping techniques that allow for the BS to select the users better suited for information and those for battery replenishment in each particular frame for the case, where both types of users are present in the system. We proposed two different scheduling techniques based on a different level of computational complexity. In the first approach, we selected the information and the harvesting users separately. In the second approach, the selection of both types of users was performed jointly. The simulation results show that the aggregated throughput can be considerably improved if the proposed grouping strategy is implemented when the results are compared with those of traditional scheduling approaches.

Appendix 1

The Lagrangian of problem (13) is:

$$ {\begin{aligned} \mathcal{L}(\{\tilde{\mathbf{S}}_{i}\};\boldsymbol\lambda,\mu) =&-\sum\limits_{i\in\mathcal{U}_{I}}\omega_{i} \log \det \left(\mathbf{I} + \hat{\mathbf{H}}_{i}\tilde{\mathbf{S}}_{i}\hat{\mathbf{H}}_{i}^{H}\right) \\ &+ \sum\limits_{j\in\mathcal{U}_{E}} \lambda_{j} \left(Q_{j} - \sum\limits_{i\in\mathcal{U}_{I}}\text{Tr}\left(\hat{\mathbf{H}}_{ji}\tilde{\mathbf{S}}_{i}\hat{\mathbf{H}}_{ji}^{H}\right) \right)+\mu \left(\sum\limits_{i\in\mathcal{U}_{I}}\text{Tr}(\tilde{\mathbf{S}}_{i}) - P_{T}\right), \end{aligned}} $$

where we have omitted constraint C3. The previous Lagrangian can be manipulated and transformed into:

$$ {\begin{aligned} \mathcal{L}(\{\tilde{\mathbf{S}}_{i}\};\boldsymbol\lambda,\mu) =- \sum\limits_{i\in\mathcal{U}_{I}} \omega_{i}\log \det \left(\mathbf{I} + \hat{\mathbf{H}}_{i}\tilde{\mathbf{S}}_{i}\hat{\mathbf{H}}_{i}^{H}\right) + \sum\limits_{i\in\mathcal{U}_{I}} \text{Tr}\left(\mathbf{A}_{i} \tilde{\mathbf{S}}_{i}\right) + G, \end{aligned}} $$

where \(G = \sum \nolimits _{j\in \mathcal {U}_{E}} \lambda _{j} Q_{j} - \mu P_{T}\), and \(\mathbf {A}_{i} = \mu \mathbf {I} - \sum \nolimits _{j\in \mathcal {U}_{E}} \lambda _{j} \hat {\mathbf {H}}_{ji}^{H}\hat {\mathbf {H}}_{ji}\). The dual function of problem (13) is defined as \(g(\boldsymbol \lambda, \mu) = \min _{\tilde {\mathbf {S}}_{i}\succeq 0} \mathcal {L}(\{\tilde {\mathbf {S}}_{i}\};\boldsymbol \lambda,\mu)\).

Proposition 1

To have a bounded solution of the dual function g(λ,μ), matrix Ai must be Ai0 i; otherwise, g(λ,μ) is unbounded below, i.e., g(λ,μ)=−.


See Appendix 2. □

Due to the fact that matrices {Ai} are positive definite, we can assure that they can be decomposed as \(\mathbf {A}_{i} = \mathbf {A}_{i}^{1/2}\mathbf {A}_{i}^{1/2}\) and that they always have inverses. Thus, by calling \(\hat {\mathbf {S}}_{i} = \mathbf {A}_{i}^{1/2}\tilde {\mathbf {S}}_{i}\mathbf {A}_{i}^{1/2}\), the dual function can be expressed as:

$$ {\begin{aligned} g(\boldsymbol\lambda,\mu) \,=\, \min_{\hat{\mathbf{S}}_{i}\succeq 0} \left\{\!-\sum\limits_{i\in\mathcal{U}_{I}} \omega_{i}\log \det \left(\mathbf{I} + \hat{\mathbf{H}}_{i}\mathbf{A}_{i}^{-1/2}\hat{\mathbf{S}}_{i}\mathbf{A}_{i}^{-1/2}\hat{\mathbf{H}}_{i}^{H}\right) \!+ \sum\limits_{i\in\mathcal{U}_{I}} \text{Tr}\left(\hat{\mathbf{S}}_{i}\right) \!+ G\right\}. \end{aligned}} $$

The dual function in (20) can be recognized to be equivalent to the dual function of the classical maximization of the sum rate with a power constraint, where the optimum covariance matrix \(\hat {\mathbf {S}}_{i}\) diagonalizes the equivalent channel \(\hat {\mathbf {H}}_{i}\mathbf {A}_{i}^{-1/2}\) [26], i.e., \(\hat {\mathbf {S}}_{i} = \hat {\mathbf {V}}_{i} \hat {\mathbf {D}}_{i}\hat {\mathbf {V}}_{i}^{H}\), where \(\hat {\mathbf {D}}_{i}\) is the power allocation matrix, and its components are computed following the water-filling policy [49]. Finally, it is straightforward to show that the precoder Bi matrix with dimensions \(\phantom {\dot {i}\!}n_{T}\times n_{S_{i}}\) corresponding to such covariance matrix is:

$$ \mathbf{B}_{i}^{\star} = \tilde{\mathbf{V}}_{i}^{(0)}\mathbf{A}_{i}^{-1/2} \hat{\mathbf{V}}_{i} \hat{\mathbf{D}}_{i}^{1/2}. $$

Appendix 2

Let the eigen-decomposition of Ai be \(\bar {\mathbf {U}}_{i}\bar {\mathbf {\Gamma }}_{i}\bar {\mathbf {U}}_{i}^{H}\), where \(\bar {\mathbf {\Gamma }}_{i}\) contains the eigenvalues in decreasing order w.l.o.g. Then, the second term of the Lagrangian in (19) is \(\sum \nolimits _{i\in \mathcal {U}_{I}}\text {Tr}\left (\bar {\mathbf {\Gamma }}_{i}\bar {\mathbf {U}}_{i}^{H}\tilde {\mathbf {S}}_{i}\bar {\mathbf {U}}_{i}\right)\). Now, calling \(\bar {\mathbf {S}}_{i} = \bar {\mathbf {U}}_{i}^{H}\tilde {\mathbf {S}}_{i}\bar {\mathbf {U}}_{i}, (\bar {\mathbf {S}}_{i} \succeq 0 \Longleftrightarrow \tilde {\mathbf {S}}_{i} \succeq 0)\), and \(\hat {\bar {\mathbf {H}}}_{i} = \hat {\mathbf {H}}_{i}\bar {\mathbf {U}}_{i}\), we have \(g(\boldsymbol \lambda,\mu) = \min _{\bar {\mathbf {S}}_{i}\succeq 0} -\sum \nolimits _{i\in \mathcal {U}_{I}} \omega _{i}\log \det \left (\mathbf {I} + \hat {\bar {\mathbf {H}}}_{i}\bar {\mathbf {S}}_{i}\hat {\bar {\mathbf {H}}}_{i}^{H}\right) + \sum \nolimits _{i\in \mathcal {U}_{I}} \text {Tr}\left (\bar {\mathbf {\Gamma }}_{i} \bar {\mathbf {S}}_{i}\right) + G\). Let us take the particular structure for the covariance matrix \(\bar {\mathbf {S}}_{i}\) as being diagonal, with all the elements equal to 0, except the last one, which is equal to P, i.e., \(\bar {\mathbf {S}}_{i} = \text {diag}(0, \dots, P)\). Then, denoting \(\phantom {\dot {i}\!}L_{i} = n_{T}- n_{R} + n_{R_{i}}\), the first term of the dual function becomes \(-\sum \nolimits _{i\in \mathcal {U}_{I}}\omega _{i} \log \left (1 + P \|[\hat {\bar {\mathbf {H}}}_{i}]_{:,L_{i}}\|^{2}\right)\), where \([\hat {\bar {\mathbf {H}}}_{i}]_{:,L_{i}}\) denotes the Lith column of \(\hat {\bar {\mathbf {H}}}_{i}\). Since matrix \(\hat {\bar {\mathbf {H}}}_{i}\) is formed by unitary rotations of a random matrix with i.i.d. entries, we can assure with probability equal to 1 that \(\|[\hat {\bar {\mathbf {H}}}_{i}]_{:,L_{i}}\|^{2} \neq 0\). As a conclusion, the first term of the Lagrangian is negative and decreases without bound as P increases. Let us have a look at the second term. If matrix Ai is not positive definite, i.e., if the lowest element (and, thus, the last component) in the diagonal of \(\bar {\mathbf {\Gamma }}_{i}\) is not positive, then the second term of the Lagrangian either is negative and decreases without bound as P or is zero. In both cases, and taking into account the behavior of the first term of the Lagrangian as P tends to infinity, it is concluded that the dual function is equal to −. Thus, the only possible solution so that g(λ,μ)≠− is that \(\bar {\mathbf {\Gamma }}_{i}\) has diagonal elements that are all strictly positive and, thus, Ai0.

Appendix 3

System with only information users

Let us consider first the broadcast scenario with only users to be served with information and no energy harvesting users, i.e., \(\mathcal {U}_{E} = \emptyset \). In this case, problem (12) can be expressed as:

$$ \begin{aligned} \underset{\{R_{i}, \,\mathbf{S}_{i}\}_{\forall i\in\mathcal{U}_{I}}}{\text{maximize}} & \quad \sum\limits_{i\in\mathcal{U}_{I}} \omega_{i}R_{i} \\ \text{subject to} & \quad C2\dots C6\ \text{of problem (11)}. \end{aligned} $$

Without going into too much detail, let us say that the optimal solution to the above problem was presented in [33] and is omitted due to space limitations.

System with only harvesting users

Let us now consider the case where there are only users who want to harvest energy, i.e., \(\mathcal {U}_{I} = \emptyset \). In this case, since there is no objective function, the optimization problem becomes a feasibility problem [40] that can be expressed as:Footnote 11

$$ \begin{aligned} {\text{find}}& \quad \mathbf{S} \\ \text{subject to} & \quad C1, C2, C6\ \text{of problem (11)}. \end{aligned} $$

Note that constraints C3,C4, and C5 from problem (12) have no effect since the set \(\mathcal {U}_{I}\) is empty. Notice also that, without loss of optimality, we have changed the optimization variable from a set of precoding matrices {Si} to a single precoder matrix S. In the following, we will present a necessary condition for feasibility of (23).

Proposition 2

([50]) Let λmax(X)≥λ2(X)≥λmin(X)be the eigenvalues of the positive semidefinite matrix X. Then, for any two semidefinite positive matrices, A and B, we have:

$$ {\begin{aligned} \lambda_{j}(\mathbf{AB}) \!\le\! \lambda_{\max}(\mathbf{B})\lambda_{j}(\mathbf{A}) \text{ and} \lambda_{j}(\mathbf{BA}) \!\le\! \lambda_{\max}(\mathbf{B})\lambda_{j}(\mathbf{A}), \quad \forall j,\\ \end{aligned}} $$
$$ {\begin{aligned} \lambda_{j}(\mathbf{AB}) \!\ge\! \lambda_{\min}(\mathbf{B})\lambda_{j}(\mathbf{A}) \text{ and} \lambda_{j}(\mathbf{BA}) \ge \lambda_{\min}(\mathbf{B})\lambda_{j}(\mathbf{A}),\quad \forall j. \end{aligned}} $$

Note that the previous lemma can be generalized as Tr(AB)≤λmax(B)Tr(A) since \(\text {Tr}(\mathbf {A}) = \sum \nolimits _{j} \lambda _{j}(\mathbf {A})\). The inequality is attained when A has rank 1 and is built with the eigenvector associated with the maximum eigenvalue of B, (emax(B)), i.e., A=k emax(B)emax(B)H.

Proposition 3

Let \(\mathbf {H}_{j}^{H}\mathbf {H}_{j}= \mathbf {V}_{H,j}\mathbf {\Sigma }_{H,j}\mathbf {V}_{H,j}^{H}\) be the reduced eigenvalue decomposition of matrix \(\mathbf {H}_{j}^{H}\mathbf {H}_{j}\) with \(\mathbf {\Sigma }_{H,j} = \text {diag}(\sigma _{1,j}, \dots, \sigma _{n_{R_{j}},j})\) and \(\sigma _{1,j} \ge \sigma _{2,j} \ge \dots \ge \sigma _{n_{R_{j}},j} > 0\). Then, a necessary condition for the feasibility of problem ( 23 ) is \((P_{\max } - P^{tx}_{c})\sigma _{1,j} - Q_{j} \ge 0, \forall j\).


Just as we considered before, if the problem is feasible, at least one solution fulfills \(\text {Tr}(\mathbf {S}) = P_{\max } - P^{tx}_{c}\), and the maximum value that \(\text {Tr}\left (\mathbf {H}_{j}\mathbf {S}\mathbf {H}_{j}^{H}\right)\) can take, based on Proposition 2, is \((P_{\max } - P^{tx}_{c})\sigma _{1,j} (\text {Tr}(\mathbf {AB}) \le \lambda _{\max }(\mathbf {B})\text {Tr}(\mathbf {A}))\) with \(\mathbf {S} = \left (P_{\max } - P^{tx}_{c}\right)\mathbf {v}_{n_{R_{j}},j}\mathbf {v}_{n_{R_{j}},j}^{H}\), where \(\mathbf {v}_{n_{R_{j}},j}\) is the eigenvector associated with the maximum eigenvalue σ1,j of \(\mathbf {H}_{j}^{H}\mathbf {H}_{j}\). □

Generally, as we are not able to provide a necessary and sufficient condition, we need to solve the following convex optimization problem to test the feasibility of problem (23):

$$ \begin{aligned} \underset{\mathbf{S},\bar{P}_{\max}}{\text{minimize}} & \quad \bar{P}_{\max} \\ \text{subject to} & \quad C2:\text{Tr}(\mathbf{S}) + P^{tx}_{c}\le \bar{P}_{\max}\\ & \quad C1, C6\ \text{of problem (11).} \end{aligned} $$

The above problem is categorized as a semidefinite optimization problem. There is no closed-form solution for the above problem, but the optimum solution can be obtained efficiently with the application of interior point methods [40]. Let us denote the optimum solution of the problem above as \(\bar {P}_{\max }^{\star }\). Now, it only remains to check whether \(\bar {P}_{\max }^{\star } \le P_{\max }\) (which means that the problem is feasible) or \(\bar {P}_{\max }^{\star } > P_{\max }\) (which implies infeasibility). If the problem is feasible, the optimum covariance matrix obtained in (26) is the matrix that fulfills all the harvesting power constraints with the minimum transmitted power. If the problem is infeasible, one possible solution would be to reduce all the power harvesting constraints {Qj} such that constraints C1 become looser until the problem becomes feasible.


  1. 1.

    Let us assume for the moment that not all users must be in any group. As will be shown later, some of the users may not be selected for any group in a given scheduling period.

  2. 2.

    At the beginning of each frame, once the groups have been decided, the users are indexed again in such a way that the first N users are information users and the following M users are harvesting users.

  3. 3.

    This assumption corresponds to a necessary constraint to be applied when block diagonalization (BD) is used [25], as will be explained in more detail in Section 4.

  4. 4.

    In fact \(\min \{n_{R_{i}}, n_{T}-(n_{R}-n_{R_{i}})\}\) is an upper bound for the actual number of active streams. Such a number will be obtained from the solution of the corresponding optimization problems presented in this paper (in Section 4).

  5. 5.

    We assume that noise power σ2=1 w.l.o.g.; otherwise, we could simply apply a scale factor at the receiver and rescale the channels accordingly.

  6. 6.

    We consider a reference system, where the energy spent by the terminals is only driven by the power used for the communication (RF chains and decoding). It is true that we do not consider other sinks of energy consumption, such as the energy consumed by the application layer. In case we would want to include those, we could simply add the corresponding additional terms.

  7. 7.

    A further discussion on how the weights ωi(t)≥0 can be set to provide fairness will be introduced later in Section 5.

  8. 8.

    The plots in Figs. 2 and 3 contain some of the results already shown in [1], which are included here for the sake of completeness.

  9. 9.

    The concept of energy beamforming was already introduced in [9].

  10. 10.

    A way to calculate the weights ωi can be based on the achieved average rate as in the proportional fair (PF) scheme [46], [47], [48]. In that case, the weights are computed as \(\omega _{i} (t)= \frac {1}{T_{i}(t)}\), being that Ti(t) is the exponentially averaged rate calculated as \(T_{i}(t) = \left (1-\frac {1}{T_{c}}\right)T_{i}(t-2) + \frac {1}{T_{c}} R_{i}(t-1)\), where Tc is the effective length of the impulse response of the exponential averaging filter, and Ri(t−1) is the rated assigned to the ith user in the (t−1)th frame. Note that if the ith user was not selected to be in \(\mathcal {U}_{I}\) during the (t−1)th frame, then \(R^{\star }_{i}(t-1) = 0\). Otherwise, \(R_{i}(t-1) =R^{\star }_{i}(t-1)\), i.e., the rate Ri(t−1) corresponds to the solution of problem (13) during the (t−1)th frame. Note that many other fairness criteria could be introduced by properly adjusting the weights.

  11. 11.

    The case of not having information users is special as the harvesting users cannot take advantage of the spurious signals intended for the information users to recharge their batteries. Only in this case, we allow for the base station to send a specific signal to the harvesting users and those whose covariance matrix is defined by S.



Additive white Gaussian noise


Block diagonalization


Base station


Cumulative density function


Channel state information


Dynamic programming


High-power amplifier


Multiple-input multiple-output


Multiple-input single-output


Multiuser interference


Proportional fair




Radio frequency


Signal-to-interference-plus-noise ratio


Single-input single-output


Signal-to-noise ratio


Sum rate


Singular value decomposition


Simultaneous wireless information and power transfer


Without loss of generality


  1. 1

    J. Rubio, A. Pascual-Iserte, in IEEE Global Communications Conference (GLOBECOM). Simultaneous wireless information and power transfer in multiuser MIMO systems, (2013), pp. 2755–2760.

  2. 2

    J. A. Paradiso, T. Starner, Energy scavenging for mobile wireless electronics. IEEE Comput. Pervasive. 4(1), 18–27 (2005).

  3. 3

    S. Sudevalayam, P. Kulkarni, Energy harvesting sensor nodes: survey and implications. IEEE Commun. Surv. Tutor.13(3), 443–461 (2011).

  4. 4

    Z. Zhang, H. Pang, A. Georgiadis, C. Cecati, Wireless power transfer-an overview. IEEE Trans. Ind. Electron.66(2), 1044–1058 (2019).

  5. 5

    V. Chandrasekhar, J. Andrews, A. Gatherer, Femtocell networks: a survey. IEEE Comm. Mag.46:, 59–67 (2008).

  6. 6

    X. Lu, et al., Wireless networks with RF energy harvesting: a contemporary survey. IEEE Commun. Surv. Tutor.17(2), 757–789 (2015).

  7. 7

    L. R. Varshney, in International Symposium on Information Theory. Transporting information and energy simultaneously (IEEEToronto, 2008).

  8. 8

    P. Grover, A. Sahai, in International Symposium on Information Theory. Shannon meets tesla: wireless information and power transfer (IEEEAustin, 2010).

  9. 9

    R. Zhang, C. K. Ho, MIMO broadcasting for simultaneous wireless information and power transfer. IEEE Trans. Wirel. Commun.12(5), 1989–2001 (2013).

  10. 10

    J. Park, B. Clerckx, Joint wireless information and energy transfer in a two-user MIMO interference channel. IEEE Trans. Wirel. Comm.12(8), 4210–4221 (2013).

  11. 11

    J. Park, B. Clerckx, Joint wireless information and energy transfer in a K-user MIMO interference channel. IEEE Trans. Wirel. Comm.13(10), 5781–5796 (2014).

  12. 12

    Z. Zong, et al., Optimal transceiver design for SWIPT in K-user MIMO interference channels. IEEE Trans. Wirel. Comm.15(1), 430–445 (2016).

  13. 13

    J. Xu, L. Liu, R. Zhang, Multiuser MISO beamforming for simultaneous wireless information and power transfer. IEEE Trans. Signal Proc.62(18), 4798–4810 (2015).

  14. 14

    Q. Shi, L. Liu, W. Xu, R. Zhang, Joint transmit beamforming and receive power splitting for MISO SWIPT systems. IEEE Trans. Wirel. Comm.13(6), 3269–3280 (2014).

  15. 15

    Y. Zeng, R. Zhang, Optimized training design for wireless energy transfer. IEEE Trans. Commun.63(2), 536–550 (2015).

  16. 16

    J. Xu, R. Zhang, A general design framework for MIMO wireless energy transfer with limited feedback. IEEE Trans. Signal Proc.64(10), 2475–2488 (2016).

  17. 17

    Z. Xiang, M. Tao, Robust beamforming for wireless information and power transmission. IEEE Wirel. Commun. Lett.1(4), 372–375 (2012).

  18. 18

    C. Shepard, et al., in ACM International Conference on Mobile Computing and Networking. Argos: practical many-antenna base stations (ACMIstanbul, 2012).

  19. 19

    L. Liu, R. Zhang, K. -C. Chua, Wireless information transfer with opportunistic energy harvesting. IEEE Trans. Wirel. Commun.12(1), 288–300 (2013).

  20. 20

    R. Morsi, D. S. Michalopoulos, R. Schober, Multiuser scheduling schemes for simultaneous wireless information and power transfer over fading channels. IEEE Trans. Wirel. Comm.14(4), 1967–1982 (2015).

  21. 21

    Z. Ding, H. V. Poor, in IEEE International Conference on Communication Systems (ICCS). User scheduling in wireless information and power transfer networks (IEEEMacau, 2014).

  22. 22

    W. -L. Shen, K. C. -J. Lin, M. -S. Chen, K. Tan, in IEEE Conference on Computer Communications (INFOCOM). SIEVE: scalable user grouping for large MU-MIMO systems (IEEEHong Kong, 2015), pp. 1975–1983.

  23. 23

    L. Dai, B. Wang, M. Peng, S. Chen, Hybrid precoding-based millimeter-wave massive MIMO-NOMA with simultaneous wireless information and power transfer. IEEE J. Sel. Areas Comm.37(1), 131–141 (2019).

  24. 24

    A. Goldsmith, et al., Capacity limits of MIMO channels. IEEE J. Sel. Areas Comm.21(5), 684–702 (2003).

  25. 25

    Q. H. Spencer, et al., Zero-forcing methods for downlink spatial multiplexing in multiuser MIMO channels. IEEE Trans. Signal Proc.52(2), 461–471 (2004).

  26. 26

    R. Zhang, Y. -C. Liang, S. Cui, Dynamic resource allocation in cognitive radio networks. IEEE Signal Process. Mag.27(3), 102–114 (2010).

  27. 27

    J. Rubio, A. P. Iserte, D. P. Palomar, A. Goldsmith, Joint optimization of power and data transfer in multiuser MIMO systems. IEEE Trans. Signal Process. 65(1), 212–227 (2017).

  28. 28

    B. Devillers, D. Gündüz, A general framework for the optimization of energy harvesting communication systems with battery imperfections. J. Commun. Netw.14(2), 130–139 (2012).

  29. 29

    A. R. Jensen, et al., in IEEE Vehicular Technology Conference (VTC 2012 Fall). LTE UE power consumption model: for system level energy and performance optimization (IEEEQuebec, 2012).

  30. 30

    G. Auer, et al., How much energy is needed to run a wireless network?IEEE Trans. Wirel. Commun.18(5), 40–49 (2011).

  31. 31

    P. Grover, K. Woyach, A. Sahai, Towards a communication-theoretic understanding of system-level power consumption. IEEE J. Sel. Areas Comm.29(8), 1744–1755 (2011).

  32. 32

    P. Rost, G. Fettweis, in IEEE Global Communications Conference (GLOBECOM), Workshop on Green Communications. On the transmission-computation-energy tradeoff in wireless and fixed networks (IEEEMiami, 2010), pp. 1934–1939.

  33. 33

    J. Rubio, A. Pascual-Iserte, Energy-aware broadcast multiuser-MIMO precoder design with imperfect channel and battery knowledge. IEEE Trans. Wirel. Commun.13(6), 3137–3152 (2014).

  34. 34

    J. Lee, N. Jindal, in Asilomar Conference on Signals, Systems and Computers. Dirty paper coding vs linear precoding for MIMO broadcast channels (IEEEPacific Grove, 2006), pp. 779–783.

  35. 35

    C. Ho, R. Zhang, Optimal energy allocation for wireless communications with energy harvesting constraints. IEEE Trans. Signal Process. 60(9), 4808–4818 (2012).

  36. 36

    J. Yang, O. Ozel, S. Ulukus, Broadcasting with an energy harvesting rechargeable transmitter. IEEE Trans. Wirel. Commun.11(2), 571–583 (2012).

  37. 37

    D. P. Bertsekas, Dynamic Programming and Optimal Control. 3rd edn (Athena Scientific, Belmont, 2005).

  38. 38

    P. Blasco, D. Gündüz, M. Dohler, A learning theoretic approach to energy harvesting communication system optimization. IEEE Trans. Wirel. Commun.12(4), 1872–1882 (2013).

  39. 39

    L. M. Lopez-Ramos, A. G. Marques, J. Ramos, Jointly optimal sensing and resource allocation for multiuser interweave cognitive radios. IEEE Trans. Wirel. Commun.13(11), 5854–5967 (2014).

  40. 40

    S. Boyd, L. Vandenbergue, Convex optimization (Cambridge, Cambridge, 2004).

  41. 41

    R. G. Bland, D. Goldfarb, M. J. Todd, The ellipsoid method: a survey. Oper. Res.29(6), 1039–1091 (1981).

  42. 42

    D. P. Bertsekas, Nonlinear programming. 2nd edn (Athena Scientific, Belmont, 1999).

  43. 43

    J. Rubio, A. Pascual-Iserte, in IEEE Vehicular Technology Conference (VTC) Spring. Harvesting management in Multiuser MIMO systems with simultaneous wireless information and power transfer (IEEEGasglow, 2015).

  44. 44

    G. Dimic, N. Sidiropoulos, On downlink beamforming with greedy user selection: performance analysis and a simple new algorithm. IEEE Trans. Signal Process. 53(10), 3857–3868 (2005).

  45. 45

    S. Sigdel, W. A. Krzymien, Simplified fair scheduling and antenna selection algorithms for multiuser MIMO orthogonal space-division mutiplexing downlink. IEEE Trans. Veh. Technol.58(3), 1329–1344 (2009).

  46. 46

    A. Jalali, R. Padovani, R. Pankaj, in IEEE Vehicular Technology Conference (VTC) Spring. Data throughput of CDMA-HDR a high efficiency-high data rate personal communication wireless system (IEEETokyo, 2000).

  47. 47

    X. Wang, G. B. Giannakis, A. G. Marques, A unified approach to QoS-guaranteed scheduling for channel-adaptive wireless networks. Proc. IEEE. 95(12), 2410–2431 (2007).

  48. 48

    L. Liu, Y. -H. Nam, J. Zhang, in 44th Annual Conference on Information Sciences and Systems (CISS). Proportional fair scheduling for multi-cell multi-user MIMO systems (IEEEPrinceton, 2010).

  49. 49

    T. M. Cover, J. A. Thomas, Elements of information theory (Wiley, Hoboken, 2006).

  50. 50

    R. Bhatia, Perturbation bounds for matrix eigenvalues (Longman Scientific & Technical, Essex, 1987).

  51. 51

    K. Huang, C. Zhong, G. Zhu, Some new trends in wirelessly powered communications. IEEE Wirel. Commun.23(2), 19–27 (2016).

Download references


The research leading to these results has received funding through the grant 2017 SGR 578 (funded by the Catalan Government—Secretaria d’Universitats i Recerca, Departament d’Empresa i Coneixement, Generalitat de Catalunya, AGAUR) and project TEC2016-77148-C2-1-R (AEI/FEDER, UE): 5G&B-RUNNER-UPC (funded by the Agencia Estatal de Investigación, AEI, and Fondo Europeo de Desarrollo Regional, FEDER).

Availability of data and materials

Not applicable.


The aim of the work presented in this paper is to develop a dynamic grouping mechanism that decides which users should be scheduled to receive information and which users should be configured to harvest energy. The design also includes the derivation of the optimal transmission covariance matrices.

The design is based on a theoretical modeling of the scenario and the signal, the definition of a mathematical optimization problem, and the proposal of an algorithm to find a suboptimal solution to that problem that can be implemented.

Finally, numerical computer simulations have been carried out to evaluate the performance of the proposed strategy based on the mathematical modeling of the setup.

Author information




JR and API put forward the idea and wrote the manuscript. JR carried out the experiments and simulations. JR and API contributed to the interpretation of the results and read and approved the final manuscript.

Corresponding author

Correspondence to Antonio Pascual-Iserte.

Ethics declarations

Competing interests

The authors declare that they have no competing interests.

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Additional information

Partial results of this paper have been presented previously by the same authors at conference IEEE GLOBECOM 2013 (@2013 IEEE: some materials are reprinted, with permission, from \citerub:13d).

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (, which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Rubio, J., Pascual-Iserte, A. User grouping and resource allocation in multiuser MIMO systems under SWIPT. J Wireless Com Network 2019, 164 (2019).

Download citation


  • User grouping
  • Energy harvesting
  • Simultaneous wireless information and power transfer
  • Multiantenna communications
  • Multiuser communications