# Multicasting in NOMA-Based UAV Networks: Path Design and Throughput
Maximization

Shima Salarhosseini, Mohammad Reza Javan, and Ali Nazari  S. Salarhosseini,
Mohammad. R. Javan and A. Nazari are with the Department of Electrical and
Robotics Engineering, Shahrood University of Technology, Shahrood, Iran
e-mail<EMAIL_ADDRESS><EMAIL_ADDRESS>and
<EMAIL_ADDRESS>
###### Abstract

In this paper, we propose a new resource allocation framework for unmanned
aerial vehicle (UAV) assisted multicast wireless networks in which the network
users according to their request are divided into several multicast groups. We
adopt power domain non-orthogonal multiple access (PD-NOMA) as the
transmission technology using which the dedicated signals of multicast groups
are superimposed and transmitted simultaneously as the UAV passes over the
communication area for fixed and mobile users. We discuss the proposed
scenarios from two perspectives, offline and online mode. In offline mode, we
implement the problem for fixed and mobile users whose locations are
predictable (the location of users, over the communication time, is known at
the beginning of the communication time) and in online mode for mobile users
whose locations are unpredictable (the location of users, over the
communication time, is unknown at the beginning of the communication time).
Also, we proposed a scenario in which the online model the number of mobile
users can grow in each time slot. We formulate the problem of joint power
allocation and UAV trajectory design as an optimization problem that is non-
linear and non-convex for two proposed scenarios. To solve the problem, we
adopt an alternate search method (ASM), successive convex approximation (SCA),
and geometric programming (GP). Using simulation results, the performance of
the proposed scheme is evaluated for different values of the network
parameters.

##  I Introduction

Next generations of wireless networks would face several challenges, like high
data rates and high coverage. Unmanned aerial vehicle (UAV) assisted wireless
communication has attracted much attention from the research community.
Especially, in areas with no communication infrastructure, they play a key
role, such as providing connectivity in remote areas or areas affected by
disasters or with high density of users, UAVs could be used to improve the
performance of wireless networks from both the coverage as well as the data
rate. There are several issues in UAV-based wireless network design that
should be addressed, e.g., UAV placement, resource allocation, and trajectory
design. There exist several papers which consider resource allocation and
trajectory design of UAVs in wireless networks [1, 2, 3]. In [4], the authors
consider the problem of UAV placement in a wireless network such that the
number of required UAVs to cover the communications area is minimized. The
authors in [5] consider a wireless network in which a common file should be
transmitted to a set of users by a UAV. The objective is to design the
trajectory of the UAV such that the transmission time is minimized. The
authors in [6] consider a network with multiple UAVs in which the objective is
to maximize the minimum average throughput of users over the communications
path. They formulate an optimization problem for joint trajectory design and
transmit power allocation. They use the Alternating Search Method (ASM) in
which they solved the trajectory design problem and transmit power allocation
problem in an iterative manner. For the transmit power allocation, they use
Successive Convex Approximation (SCA) with Difference of two Concave functions
(D.C.) as the approximation method [7]. According to the best study, the
trajectory design presented in other papers hasn’t considered 2D path planning
of UAVs with mobile users from two perspectives of online and offline
scenarios.

On the other hand, the spectrum is a scarce resource that should be used in an
efficient manner. Adopting a scheme that results in high spectral efficiency
is one of the concerns in wireless networks. Power domain non-orthogonal
multiple access (PD-NOMA) which allows the same spectrum to be shared among
more than one user has been viewed as a promising technology for improving the
network spectral efficiency [8, 9, 10]. In this technique, the users’ signals
are superimposed by the transmitter and the receiver applies the successive
interference cancellation (SIC) method to alleviate the co-channel
interference. In this regard, several works have considered PD-NOMA as the
transmission technology in UAV-based networks. The authors in [11] consider
the downlink of a UAV-assisted wireless network in which a macrocell wants to
transmit information to the network users with the help of some UAVs. In the
considered model, the macrocell transmits information of users to the UAVs
using the PD-NOMA scheme. Afterward, UAVs try to decode the received signal
using SIC method. Next, UAVs try to transmit the decoded signals in a
cooperative fashion towards the users. They aim at maximizing the total
transmission rate of users by jointly determining the trajectories of UAVs and
the transmit powers. To solve the optimization problem, they use ASM, SCA, and
D.C., and propose an iterative solution algorithm. According to the concept of
the PD-NOMA technique on the subject of SIC, the UAVs act as mobile
transmitters, and mobile users act as mobile receivers; hence they need to
update the SIC ordering in each time slot.

One of the characteristics of a wireless channel is its broadcast nature in
that the transmitted signal could be received by all the receivers; hence
establishing multicast communications would be an interesting topic for
wireless networks[12]. The use of multicast communication can significantly
reduce the amount of wireless network traffic, which in itself can motivate
the use of this type of communication in next-generation [13]. Multicast
communication can be used in practical schemes like popular programming or
video conference. In [14], the authors consider a cognitive radio network in
which the primary users act as unicast users and the secondary users act as
multicast users. Secondary users work as relays for the primary users. In
[15], the authors consider a multicast network in which a base station wants
to transmit some common information towards the network users forming several
multicast groups. The intended signals are transmitted simultaneously towards
users using the PD-NOMA technique. The objective is to determine the user
association and transmit power allocation such that the total transmission
rate of the network users is maximized. The authors in [16] consider a network
in which a UAV wants to transmit common files to ground users with
multicasting. The objective is to design the UAV trajectory to minimize the
total transmission time such that the ground users receive their intended
information successfully with high probability. In [17], the authors consider
the problem of joint transmit power allocation, UAV’s altitude determination,
and antenna beamwidth design in a non-orthogonal multiple access (NOMA) based
wireless network. Their objective is to maximize the minimum rate of users
under transmit power and UAV altitude constraints. UAVs have limitations in
energy consumption, flying time, and serving the agents. On the other hand,
multicast-capable networks allow one or more sources to efficiently send data
to a group of recipients that requested or needed the same type of
information. Hence, a combination of UAV in multicast-capable networks causes
energy efficiency improvement.

###  I-A Motivation and Contributions

In this paper, we propose a resource allocation framework for unmanned aerial
vehicle (UAV) assisted multicast wireless networks in which the network users
according to their requests are divided into several multicast groups. We
adopt power domain non-orthogonal multiple access (PD-NOMA) as the
transmission technology using which the signals of multicast groups are
superimposed and transmitted simultaneously as the UAV passes over the
communication area.

The main contributions of this paper can be summarized as follows:

  * •

In this paper, we formulate the resource allocation problem into an
optimization problem to jointly determine the trajectory of the UAV and the
transmit power of the UAV over its trajectory, in which the UAV serves several
multicast groups. The objective is to maximize the total transmission rate of
multicast groups over the communications time while a minimum transmission
rate should be guaranteed for each multicast group, transmit power constraint
should be satisfied, and the maximum speed limitation for the UAV should be
taken into account.

  * •

We implement two online and offline models for the proposed system, which has
not been seen in any similar scenario. In offline mode, we have designed two
approaches: the fixed users and also the mobile users with predictable
movement (the location of users, over the communication interval, are known at
the beginning of the communication). In online mode, we deal with mobile users
with unpredictable movements. In addition, we have made it possible for all
users to be able to move in different geographical directions and at different
speeds.

  * •

The resulting optimization problem is non-linear and non-convex obtaining
whose solution is very hard. To tackle this, we adopt the ASM method where the
main problem is decomposed into trajectory design problem and transmit power
determination problem. For the trajectory design, we use Geometric Programing
(GP) and for the transmit power design, we use successive convex approximation
with D.C. method as the approximation technique.

  * •

In the simulation part, we investigate the different parameters, such as the
effect of time on the total rate and trajectory design of UAV, trajectory
design of mobile user with predictable location and mobile user with the
unpredictable location that because UAV should arrive at end point
(destination point) we propose new constraint that satisfies the successful
path design for mobile user with the unpredictable location.

  * •

As another innovation implemented in this article, we can refer to the
scenario of changing the number of users. We consider the case that the number
of users in each multicast group can be changed in each time slot. Variation
of the number of users besides mobility of them in the online scenario can
bring a real and practical model.

###  I-B Paper Organisation

The rest of this paper is organized as follows. In Section II, the system
model and the problem formulation are discussed in detail. In Section III, the
non-convex optimization problem is solved . We consider the case of mobile
users in Section IV. The study of computational complexity and convergence of
the proposed schemes is provided in Section V. In Section VI, we provide
simulations verifying the performance of the developed algorithms. Finally,
the paper is concluded in Section VII.

Figure 1: A UAV enabled wireless network with multicast communication.

##  II System Model and Problem formulation

###  II-A System Model

We consider a communication scenario in which a UAV is responsible for
information transmission towards the network’s users and UAV flies over the
network area for a period of time over a communication path, and according to
the concept of PD-NOMA, UAV sends the proportional message towards the network
users of each multicast group, simultaneously. We assume the users according
to their request are partitioned into $G$ multicast groups. The set of users
in each group $g\in\mathcal{G}=\\{1,\cdots,G\\}$ is denoted by
$u_{g}\in\mathcal{U}_{g}=\\{1,\cdots,U_{g}\\}$, and the set of total users is
denoted by $\mathcal{U}=\bigcup\limits_{g\in\mathcal{G}}\mathcal{U}_{g}$ with
cardinality $U=\sum\limits_{g\in\mathcal{G}}U_{g}$. The system model
considered in the paper is shown in Fig. 1. We also assume that the UAV uses
the PD-NOMA as the transmission technology where the information signals of
all the multicast groups ($G$ information signals) are superimposed and the
resulting signal is transmitted towards the users. Each user applies the SIC
technique to extract the transmitted information. To this end, we should
determine the SIC ordering of users such that each user knows that the
information of which users should be detected and canceled from the received
signal. Since we consider users are located in multicast groups, UAV transmits
signals as multicasting signals toward users. Hence, all the users in the same
group perform the SIC in the same manner and we should only determine the
order of multicast groups. In other words, the users of each group detect and
cancel the same signals (users according to their request are partitioned into
the multicast groups), i.e., those from the groups which are specified by the
SIC ordering process. The users are assumed to be randomly located over the
network coverage area and to be fixed over the considered time interval. We
denote the location of user $u_{g}$ by $\mathbf{r}_{g,u_{g}}=[\
x_{g,u_{g}},y_{g,u_{g}}]^{\text{T}}\in\mathbb{R}^{2\times 1},$ where
$[\cdot]^{\text{T}}$ denotes the vector transpose. The UAV is assumed to be
mobile and could move over the coverage area at the maximum speed of
$V_{\text{max}}$ meter per second (m/s) with the fixed altitude of $H$ meters.
We study the communications of the considered network over a time interval of
$T$ seconds. During this time, the UAV starts its trajectory from a start
point in the network towards its end point while it transmits information to
the network users. As is common in the literature [18], we consider the
discrete model in which the total time is divided into a number of time slots,
e.g., $N$, each of which is so much small such that we can assume that the
channel gain from UAV to the network users are fixed. We call the positions of
the UAV at each of these discrete-time instances the breaking points.
Therefore, we have $N+1$ breaking points whose set is denoted by
$\mathcal{N}=\\{0,1,\cdots,N\\}$ with $n=0$ for the start point and $n=N$ for
the end point.

The positions of the UAV at the beginning and the end of the time slot $n$
are, respectively, denoted by
$\mathbf{q}[\mathnormal{n-1}]=[x_{q}[\mathnormal{n-1}],y_{q}[\mathnormal{n-1}]]^{T}$
and
$\mathbf{q}[\mathnormal{n}]=[x_{q}[\mathnormal{n}],y_{q}[\mathnormal{n}]]^{T}$,
which are respectively, breaking points $n-1$ and $n$. Over each time slot,
the UAV transmits information towards the users in all of the $G$ multicast
groups. We define
$\mathbf{Q}=\\{\mathbf{q}[n],\forall\mathnormal{n}\in\mathcal{N}\\}$ for the
trajectory design, we restrict the distance between two consecutive breaking
points by imposing the following constraint:

$\displaystyle{\|\mathbf{q}[n]-\mathbf{q}[n-1]\|}^{2}\leqslant\mathnormal{S}^{2}_{\text{max}},~{}~{}n=1,...,N,$
(1)

where $\mathnormal{S}_{\text{max}}=\frac{\mathnormal{V}_{\text{max}}T}{N}$,
and we emphasis that the start point, i.e., $\mathbf{q}[0]$ and the end point,
i.e., $\mathbf{q}[N]$, are known.

For the channel gain, we only consider pathloss which means that the channel
from UAV to user $u_{g}$ is assumed to follow the free-space pathloss model.
We assume that the channel gain from UAV to user $u_{g}$ time slot $n$ is
given by

$\displaystyle
h_{g,u_{g}}[n]=\frac{\mu_{0}}{H^{2}+{\|\mathbf{q}[n]-\mathbf{r}_{g,u_{g}}\|}^{2}},$
(2)

where $\mu_{0}$ is the pathloss at the reference distance $\hat{d}=1$ meter
and we note that $\sqrt{H^{2}+{\|\mathbf{q}[n]-\mathbf{r}_{g,u_{g}}\|}^{2}}$
is the distance from UAV to user $u_{g}$ in multicast group $g$ when UAV is at
breaking point $n$.

We define the channel gain representative of users $u_{g}$ in group $g$ in
time slot $n$ by

$\displaystyle\hat{h}_{g}[n]=\min_{u_{g}\in\mathcal{U}_{g}}h_{g,u_{g}}[n],$
(3)

which is the minimum channel gain of users $u_{g}$ in the multicast group $g$
at breaking point $n$.

Let $p_{g}[n]$ be the transmit power of UAV used for information transmission
to multicast group $g$ over time slot $n$. We define
$\mathbf{p}[n]=[p_{1}[n],p_{2}[n],\cdots,p_{G}[n]]^{T}$,
$\mathbf{p}_{g}=[p_{g}[1],p_{g}[2],\cdots,p_{g}[N]]^{T}$,
$\mathbf{p}=[\mathbf{p}_{1},\mathbf{p}_{2},\cdots,\mathbf{p}_{G}]^{T}$. The
achievable multicast capacity of users $u_{g}$ in group $g$ in time slot $n$
is given by

$\displaystyle
C_{g}[n]=\ln({1+\frac{p_{g}[n]\hat{h}_{g}[n]}{I_{g}[n]+\sigma^{2}}}),~{}~{}\forall
g\in\mathcal{G},~{}~{}n=1,\cdots,N,$ (4)

where $\sigma^{2}$ is the additive white Gaussian noise (AWGN) power at the
receiver which is assumed to be the same for all the receivers and
${I}_{g}[n]$ in (5) is the interference caused by NOMA transmission as given
by

$\displaystyle
I_{g}[n]=\hat{h}_{g}[n]\sum\limits_{j\in\mathcal{O}_{g}[n]}p_{j}[n],$ (5)

where

$\displaystyle\mathcal{O}_{g}[n]=\\{j\in\mathcal{G}|~{}\hat{h}_{j}[n]>\hat{h}_{g}[n]\\},$
(6)

which represents the set of multicast groups whose signals could not be
canceled by users $u_{g}$ in the multicast group $g$. In other words, this
determined the SIC ordering in NOMA-based communications.

###  II-B Problem Formulation

Now we provide our proposed optimization problem. The objective is to maximize
the sum multicast capacities of multicast groups over the communication time
interval. For the quality of service (QoS) purpose, we require that a minimum
multicast capacity for each multicast group should be satisfied. We also have
transmit power constraint for the UAV as well as the maximum distance
limitation between two consecutive breaking points. Therefore, our proposed
optimization problem is given by

$\displaystyle\max\limits_{\mathbf{p},\mathbf{Q}}$
$\displaystyle\sum\limits_{n=1}^{N}\sum\limits_{g\in\mathcal{G}}C_{g}[n]$ (7a)
s.t. $\displaystyle{\|\mathbf{q}[n]-\mathbf{q}[n-1]\|}^{2}\leqslant
S^{2}_{\text{max}},~{}~{}n=1,\dots,N,$ (7b) $\displaystyle C_{g}[n]\geqslant
C_{g}^{\text{rsv}}[n],~{}~{}\forall g\in\mathcal{G},~{}~{}n=1,\dots,N,$ (7c)
$\displaystyle\sum\limits_{g\in\mathcal{G}}p_{g}[n]\leqslant
P_{\text{max}},~{}~{}~{}~{}n=1,\dots,N,$ (7d)

where (7b) ensures that the maximum distance between two consecutive points is
limited, (7c) is the minimum multicast capacity constraint for each multicast
group, and (7d) is the transmit power constraint. Note that in constraint
(7c), $C_{g}^{\text{rsv}}[n]$ is the minimum required data rate of group $g$
in time slot $n$ and $P_{\text{max}}$ is the maximum transmit power for each
time slot in constraint (7d).

##  III PROPOSED ALGORITHM

We note that the optimization problem (7) is a non-linear and non-convex
problem that is generally hard to solve. To tackle this problem, we devise an
alternating method in which we first solve the problem for some of the
optimization variables while the others are considered fixed, and then given
the solution of this step, we solve the optimization problem for the remaining
optimization variables. Therefore, we divide our main problem into two
optimization problems: UAV trajectory design in which the transmit power is
assumed to be fixed, and the transmit power allocation in which the breaking
points are fixed.

###  III-A UAV Trajectory Optimization with Fixed power Allocation

To solve the optimization problem and find the trajectory of the UAV with
fixed transmit powers, we rely on the successive convex approximation method
and geometric programming (GP). This means that we solve a sequence of convex
approximated problems whose convergence to a sub-optimal solution is
guaranteed.

For the fixed transmit power variables, the optimization problem (7) is
transformed into the following one:

$\displaystyle\max\limits_{\mathbf{Q},\mathbf{\varPsi}}$
$\displaystyle\sum\limits_{n=1}^{N}\sum\limits_{g\in\mathcal{G}}\ln({1+\frac{p_{g}[n]\hat{h}_{g}[n]}{\varPsi_{g}[n]}})$
(8a) s.t. $\displaystyle{\|\mathbf{q}[n]-\mathbf{q}[n-1]\|}^{2}\leqslant
S^{2}_{\text{max}},~{}~{}n=1,\cdots,N,$ (8b)
$\displaystyle\ln(1+\frac{p_{g}[n]\hat{h}_{g}[n]}{\varPsi_{g}[n]})\geqslant
C_{g}^{\text{rsv}}[n],~{}~{}\forall g\in\mathcal{G},~{}~{}n=1,\cdots,N-1,$
(8c) $\displaystyle I_{g}[n]+\sigma^{2}\leqslant\varPsi_{g}[n],~{}~{}\forall
g\in\mathcal{G},~{}~{}~{}~{}n=1,\cdots,N-1,$ (8d)

where
$\mathbf{\varPsi}[n]=[\varPsi_{1}[n],\varPsi_{2}[n],\cdots,\varPsi_{G}[n]]^{T}$,
$\mathbf{\varPsi}_{g}=[\varPsi_{g}[1],\varPsi_{g}[2],\cdots,$
$\varPsi_{g}[N]]^{T}$, and
$\mathbf{\varPsi}=\text{vec}[\mathbf{\varPsi}_{1},\mathbf{\varPsi}_{2},\cdots,\mathbf{\varPsi}_{G}]^{T}$,
and we note that a new variable $\varPsi_{g}[n]$ is defined and a new
constraint (6d) is added.

Note that the optimization problem (8) could not be directly transformed into
the GP form and some (convex) approximations are needed to make the constraint
transformable into the GP form. This means that we will devise an SCA-based
algorithm to find the trajectory of UAV in an iterative manner. First, the
constraint (8b) is rewritten as follows:

$\displaystyle(x_{q}[n]-x_{q}[n-1])^{2}+(y_{q}[n]-y_{q}[n-1])^{2}\leqslant
S^{2}_{\text{max}}.$ (9)

Next, we expand the terms in (9) as follows:

$\displaystyle{x_{q}[n]}^{2}+{x_{q}[n-1]}^{2}+{y_{q}[n]}^{2}+{y_{q}[n-1]}^{2}\leqslant$
$\displaystyle 2x_{q}[n]x_{q}[n-1]+2y_{q}[n]y_{q}[n-1]+S^{2}_{\text{max}}.$
(10)

We divide both sides of (III-A) by the $2x_{q}[n]x_{q}[n-1]\\\
+2y_{q}[n]y_{q}[n-1]+S^{2}_{\text{max}}$ to obtain the following:

$\displaystyle\frac{{x_{q}[n]}^{2}+{x_{q}[n-1]}^{2}+{y_{q}[n]}^{2}+{y_{q}[n-1]}^{2}}{2x_{q}[n]x_{q}[n-1]+2y_{q}[n]y_{q}[n-1]+S^{2}_{\text{max}}}\leqslant
1.$ (11)

Next, we approximate the denominator of (11) as a posynomial [19] to obtain a
convex form for the constraint (8b) as follows:

$\displaystyle\Big{(}{x_{q}[n]}^{2}+{x_{q}[n-1]}^{2}+{y_{q}[n]}^{2}+{y_{q}[n-1]}^{2}\Big{)}$
$\displaystyle\times$
$\displaystyle\Big{(}\frac{2x_{q}[n]x_{q}[n-1]}{\alpha^{t_{1}}[n]}\Big{)}^{-\alpha^{t_{1}}[n]}\times\Big{(}\frac{2y_{q}[n]y_{q}[n-1]}{\beta^{t_{1}}[n]}\Big{)}^{-\beta^{t_{1}}[n]}$
$\displaystyle\times$
$\displaystyle\Big{(}\frac{S^{2}_{\text{max}}}{\gamma^{t_{1}}[n]}\Big{)}^{-\gamma^{t_{1}}[n]}\leqslant
1,$ (12)

where

$\displaystyle\alpha^{t_{1}}[n]=\frac{2x_{q}^{t_{1}-1}[n]x_{q}^{t_{1}-1}[n-1]}{2x_{q}^{t_{1}-1}[n]x_{q}^{t_{1}-1}[n-1]+2y_{q}^{t_{1}-1}[n]y_{q}^{t_{1}-1}[n-1]+S^{2}_{\text{max}}},$
(13)
$\displaystyle\beta^{t_{1}}[n]=\frac{2y_{q}^{t_{1}-1}[n]y_{q}^{t_{1}-1}[n-1]}{2x_{q}^{t_{1}-1}[n]x_{q}^{t_{1}-1}[n-1]+2y_{q}^{t_{1}-1}[n]y_{q}^{t_{1}-1}[n-1]+S^{2}_{\text{max}}},$
(14)
$\displaystyle\gamma^{t_{1}}[n]=\frac{S^{2}_{max}}{2x_{q}^{t_{1}-1}[n]x_{q}^{t_{1}-1}[n-1]+2y_{q}^{t_{1}-1}[n]y_{q}^{t_{1}-1}[n-1]+S^{2}_{\text{max}}}.$
(15)

To obtain a convex approximation for the objective function (8a), we do as
follows:

$\displaystyle\max\limits_{\begin{subarray}{c}x_{q}[n],y_{q}[n]\\\
,L_{g}[n],\varPsi_{g}[n]\end{subarray}}~{}\sum\limits_{n=1}^{N}\sum\limits_{g\in\mathcal{G}}\ln\Big{(}1+\frac{p^{t-1}_{g}[n]\mu_{0}}{L_{g}[n]\varPsi_{g}[n]}\Big{)}$
(16a) $\displaystyle=$
$\displaystyle\max\limits_{\begin{subarray}{c}x_{q}[n],y_{q}[n]\\\
,L_{g}[n],\varPsi_{g}[n]\end{subarray}}~{}\ln\Big{(}\prod\limits_{n=1}^{N}\prod\limits_{g\in\mathcal{G}}\frac{L_{g}[n]\varPsi_{g}[n]+p^{t-1}_{g}[n]\mu_{0}}{L_{g}[n]\varPsi_{g}[n]}\Big{)}$
(16b) $\displaystyle=$
$\displaystyle\min\limits_{\begin{subarray}{c}x_{q}[n],y_{q}[n]\\\
,L_{g}[n],\varPsi_{g}[n]\end{subarray}}~{}\ln\Big{(}\prod\limits_{n=1}^{N}\prod\limits_{g\in\mathcal{G}}\frac{L_{g}[n]\varPsi_{g}[n]}{L_{g}[n]\varPsi_{g}[n]+p^{t-1}_{g}[n]\mu_{0}}\Big{)}$
(16c) $\displaystyle\doteq$
$\displaystyle\min\limits_{\begin{subarray}{c}x_{q}[n],y_{q}[n]\\\
,L_{g}[n],\varPsi_{g}[n]\end{subarray}}~{}\prod\limits_{n=1}^{N}\prod\limits_{g\in\mathcal{G}}\frac{L_{g}[n]\varPsi_{g}[n]}{L_{g}[n]\varPsi_{g}[n]+p^{t-1}_{g}[n]\mu_{0}},$
(16d)

where $\doteq$ in (16d) denotes the equivalency between terms and $t$ is the
iteration number of the ASM algorithm. We note that a new optimization
variable, i.e., $L_{g}[n]$, is introduced which together with (3), we have:

$\displaystyle\max_{u_{g}\in\mathcal{U}_{g}}(H^{2}+{\|\mathbf{q}[n]-\mathbf{r}_{g,u_{g}}\|}^{2})$
$\displaystyle=L_{g}[n],$ (17) $\displaystyle~{}~{}\forall g\in\mathcal{G},$
$\displaystyle~{}~{}~{}~{}n=1,\cdots,N-1.$

Therefore, the following constraints should be added to the optimization
problem:

$\displaystyle H^{2}+{\|\mathbf{q}[n]-\mathbf{r}_{g,u_{g}}\|}^{2}\leqslant$
$\displaystyle L_{g}[n],$ (18) $\displaystyle\forall
u_{g}\in\mathcal{U}_{g},~{}~{}\forall g\in\mathcal{G},~{}~{}n=1,\cdots,N-1.$

Similar to (9), one can obtain the following approximation for (18):

$\displaystyle\Big{(}{x_{q}[n]}^{2}+{x_{g,u_{g}}}^{2}+{y_{q}[n]}^{2}+{y_{g,u_{g}}}^{2}+H^{2}\Big{)}$
$\displaystyle\times$
$\displaystyle\Big{(}\frac{2x_{q}[n]x_{g,u_{g}}}{\eta_{g,u_{g}}^{t_{1}}[n]}\Big{)}^{-\eta_{g,u_{g}}^{t_{1}}[n]}\times\Big{(}\frac{2y_{q}[n]y_{g,u_{g}}}{\kappa_{g,u_{g}}^{t_{1}}[n]}\Big{)}^{-\kappa_{g,u_{g}}^{t_{1}}[n]}$
$\displaystyle\times$
$\displaystyle\Big{(}\frac{L_{g}[n]}{\vartheta_{g,u_{g}}^{t_{1}}[n]}\Big{)}^{-\vartheta_{g.u_{g}}^{t_{1}}[n]}\leqslant
1,$ (19)

where

$\displaystyle\eta_{g,u_{g}}^{t_{1}}[n]=\frac{2x_{q}^{t_{1}-1}[n]x_{g,u_{g}}}{2x_{q}^{t_{1}-1}[n]x_{g,u_{g}}+2y_{q}^{t_{1}-1}[n]y_{g,u_{g}}+L_{g}^{t_{1}-1}[n]},$
(20)
$\displaystyle\kappa_{g,u_{g}}^{t_{1}}[n]=\frac{2y_{q}^{t_{1}-1}[n]y_{g,u_{g}}}{2x_{q}^{t_{1}-1}[n]x_{g,u_{g}}+2y_{q}^{t_{1}-1}[n]y_{g,u_{g}}+L_{g}^{t_{1}-1}[n]},$
(21)
$\displaystyle\vartheta_{g,u_{g}}^{t_{1}}[n]=\frac{L_{g}^{t_{1}-1}[n]}{2x_{q}^{t_{1}-1}[n]x_{g,u_{g}}+2y_{q}^{t_{1}-1}[n]y_{g,u_{g}}+L_{g}^{t_{1}-1}[n]}.$
(22)

Next, we approximate the denominator of each term in (16) by a monomial to
obtain $\prod\limits_{n=1}^{N}\prod\limits_{g\in\mathcal{G}}\Gamma_{g}[n]$
where

$\displaystyle\Gamma_{g}[n]=$
$\displaystyle\big{(}L_{g}[n]\varPsi_{g}[n]\big{)}\times\Big{(}\frac{L_{g}[n]\varPsi_{g}[n]}{\nu_{g}^{t_{1}}[n]}\Big{)}^{-\nu_{g}^{t_{1}}[n]}$
$\displaystyle\times$
$\displaystyle\Big{(}\frac{p^{t-1}_{g}[n]\mu_{0}}{\xi_{g}^{t_{1}}[n]}\Big{)}^{-\xi_{g}^{t_{1}}[n]},$
(23)
$\displaystyle\nu_{g}^{t_{1}}[n]=\frac{L_{g}^{t_{1}-1}[n]\varPsi_{g}^{t_{1}-1}[n]}{L_{g}^{t_{1}-1}[n]\varPsi_{g}^{t_{1}-1}[n]+p^{t-1}_{g}[n]\mu_{0}},$
(24)
$\displaystyle\xi_{g}^{t_{1}}[n]=\frac{p^{t-1}_{g}[n]\mu_{0}}{L_{g}^{t_{1}-1}[n]\varPsi_{g}^{t_{1}-1}[n]+p^{t-1}_{g}[n]\mu_{0}}.$
(25)

Similarly, the constraint (8c) could be written as follows:

$\displaystyle\Gamma_{g}[n]\leqslant\exp(-C_{g}^{\text{rsv}}[n]),~{}~{}\forall
g\in\mathcal{G},~{}~{}n=1,\cdots,N-1,$ (26)

where $\exp(\cdot)$ is an exponential function.

Finally, we can write (8d) as follows:

$\displaystyle\Big{(}\hat{h}_{g}[n]\sum\limits_{j\in\mathcal{O}_{g}[n]}p^{t-1}_{j}[n]+\sigma^{2}\Big{)}$
$\displaystyle\times\Big{(}\varPsi_{g}[n]\Big{)}^{-1}\leqslant 1,$ (27)
$\displaystyle~{}~{}\forall g\in\mathcal{G},~{}~{}n=1,\cdots,N-1.$

Therefore problem (8) could be approximated as a general GP form as follow:

$\displaystyle\min\limits_{\begin{subarray}{c}x_{q}[n],y_{q}[n]\\\
,L_{g}[n],\varPsi_{g}[n]\end{subarray}}~{}\prod\limits_{n=1}^{N}\prod\limits_{g\in\mathcal{G}}\Gamma_{g}[n],$
(28a)
$\displaystyle~{}~{}\text{s.t.}~{}\eqref{cvxterms},~{}\eqref{appcons},~{}\eqref{similarcons},~{}\eqref{03new},$
(28b)

which can be solved by existing software toolboxes like CVX [20].

###  III-B Power Allocation Optimization with Fixed UAV Trajectory

To solve the transmit power optimization problem given the trajectory of the
UAV, we use a successive convex approximation method based on the D.C. method.
With the trajectory of the UAV obtained in the previous subsection, we solve
the following problem to obtain the transmit powers:

$\displaystyle\max\limits_{\mathbf{p}}$
$\displaystyle\sum\limits_{n=1}^{N}\sum\limits_{g\in\mathcal{G}}\ln(1+\frac{p_{g}[n]\hat{h}^{t}_{g}[n]}{I_{g}[n]+\sigma^{2}})$
(29a) s.t.
$\displaystyle\ln(1+\frac{p_{g}[n]\hat{h}^{t}_{g}[n]}{I_{g}[n]+\sigma^{2}})\geqslant
C_{g}^{\text{rsv}}[n],~{}~{}\forall g\in\mathcal{G},~{}~{}n=1,\cdots,N,$ (29b)
$\displaystyle\sum\limits_{g\in\mathcal{G}}p_{g}[n]\leqslant
P_{\text{max}},~{}~{}n=1,\cdots,N,$ (29c)

where
$\hat{h}^{t}_{g}[n]=\min_{u_{g}\in\mathcal{U}_{g}}\frac{\mu_{0}}{H^{2}+{\|\mathbf{q}^{t}[n]-\mathbf{r}_{g,u_{g}}\|}^{2}}.$
We note that the optimization problem (29) is non-convex due to the objective
function and the constraint (29b) which should be approximated by convex
functions. We rewrite the objective function (29a) as follows:

$\displaystyle\sum\limits_{n=1}^{N}\sum\limits_{g\in\mathcal{G}}\ln(1+\frac{p_{g}[n]\hat{h}^{t}_{g}[n]}{I_{g}[n]+\sigma^{2}})=\sum\limits_{n=1}^{N}\sum\limits_{g\in\mathcal{G}}(F_{g}[n]-G_{g}[n]),$
(30)

where

$\displaystyle
F_{g}[n]=\ln\Big{(}p_{g}[n]\hat{h}^{t}_{g}[n]+\hat{h}^{t}_{g}[n]\times\sum\limits_{j\in\mathcal{O}_{g}[n]}p_{j}[n]+\sigma^{2}\Big{)},$
(31) $\displaystyle
G_{g}[n]=\ln\Big{(}\hat{h}^{t}_{g}[n]\times\sum\limits_{j\in\mathcal{O}_{g}[n]}p_{j}[n]+\sigma^{2}\Big{)},$
(32)

are concave functions. Therefore, we approximation functions (32) as follows:

$\displaystyle\hat{G}_{g}[n]$
$\displaystyle\approx\ln(\hat{h}^{t}_{g}[n]\times\sum\limits_{j\in\mathcal{O}_{i}[n]}p_{j}^{t_{2}-1}[n]+\sigma^{2})$
$\displaystyle+\sum\limits_{j\in\mathcal{O}_{i}[n]}\nabla
G_{j}[n](p_{j}[n]-p_{j}^{t_{2}-1}[n]),$ (33)

where

$\displaystyle\nabla
G_{j}[n]=\frac{\hat{h}^{t}_{g}[n]}{\hat{h}^{t}_{g}[n]\times\sum\limits_{j\in\mathcal{O}_{i}[n]}p_{j}^{t_{2}-1}[n]+\sigma^{2}},$
(34)

where $t_{2}$ is the iteration index of the SCA-based solution algorithm to
find the transmit power of UAV. Note that using the above results, a similar
approximation could be obtained for (29b). Therefore, the convex approximation
of the problem (29) is given by

$\displaystyle\max\limits_{\mathbf{p}}$
$\displaystyle\sum\limits_{n=1}^{N}\sum\limits_{g\in\mathcal{G}}(F_{g}[n]-\hat{G}_{g}[n])$
(35a) s.t. $\displaystyle(F_{g}[n]-\hat{G}_{g}[n])\geqslant
C_{g}^{\text{rsv}}[n],~{}~{}\forall g\in\mathcal{G},~{}~{}n=1,\cdots,N,$ (35b)
$\displaystyle\sum\limits_{g\in\mathcal{G}}p_{g}[n]\leqslant
P_{\text{max}},~{}~{}n=1,\cdots,N,$ (35c)

which can be efficiently solved by the existing solvers like CVX [20].

A high level view of the structure of the proposed solution scheme for the
optimization problem (7) is shown as a flow chart and the detailed solution is
given in Algorithm 1.

Figure 2: The flow chart for the main optimization problem (7): See Algorithm
1 for more details

Algorithm 1: Solution algorithm for the main optimization problem 7
---
1\. Set $t=0$ and initialize $\mathbf{p}^{t}$ and $\mathbf{Q}^{t}$.
2\. Repeat
SCA-GP-based procedure for solving Problem (28)
2.1.1. Set $t_{1}=0$ and initialize
$\mathbf{Q}^{t_{1}}=\mathbf{Q}^{t},~{}L_{g}^{t_{1}}[n],~{}\varPsi_{g}^{t_{1}}[n],~{}\forall
n,~{}\forall g.$
2.1.2. Repeat
2.1.3. Comput
$\alpha^{t_{1}+1}[n],~{}\beta^{t_{1}+1}[n],~{}\gamma^{t_{1}+1}[n]$ from (13)
to (15).
2.1.4. Comput
$\eta^{t_{1}+1}[n],~{}\kappa^{t_{1}+1}[n],~{}\vartheta^{t_{1}+1}[n]$ from (20)
to (22).
2.1.5. Comput $\nu^{t_{1}+1}[n],~{}\xi^{t_{1}+1}[n]$ from (24), (25).
2.1.6. Solve the problem (28) for to find $\mathbf{Q}^{{t}_{1}+1}$,
$L^{{t}_{1}+1}$ and $\varPsi^{{t}_{1}+1}$
using geometric programing in CVX [20].
2.1.7. Set $t_{1}=t_{1}+1$.
2.1.8. Until
$\|{\mathbf{Q}^{t_{1}}}-{\mathbf{Q}^{t_{1}-1}}\|\leqslant\varepsilon_{1}.$
2.1.9. $\mathbf{Q}^{t+1}=\mathbf{Q}^{t_{1}}$.
SCA-D.C.-based procedure for solving Problem (35)
2.2.1. Set $t_{2}=0$ and initialize $\mathbf{p}^{t_{2}}=\mathbf{p}^{t}.$
2.2.2. Repeat
2.2.3. Solve the problem (35) for to find $\mathbf{p}^{{t_{2}}+1}$ using CVX
[20].
2.2.4. Set $t_{2}=t_{2}+1$.
2.2.5. Until
$\|{\mathbf{p}^{t_{2}}}-{\mathbf{p}^{t_{2}-1}}\|\leqslant\varepsilon_{2}.$
2.2.6. $\mathbf{p}^{t+1}=\mathbf{p}^{t_{2}}$.
3\. Set $t=t+1$.
4\. Until $\|{\mathbf{Q}^{t}}-{\mathbf{Q}^{t-1}}\|\leqslant\varepsilon_{1}$
and $\|{\mathbf{p}^{t}}-{\mathbf{p}^{t-1}}\|\leqslant\varepsilon_{2}$.

##  IV The Case of Mobile Users

In the previous section, we assumed that the network users are fixed and their
locations do not change over the communication time interval $T$. Here, we
consider the case of mobile users where users move over the considered
coverage area. The user’s movement is assumed to be random obeying the random
way point [RWP] [21]. For each user $u_{g}$ in the multicast group $g$, and in
each time slot $n$, we define the $(\mathbf{r}_{g,u_{g}}[n],\theta[n],V[n])$
where $\mathbf{r}_{g,u_{g}}[n]$ is the location of the user at the beginning
of the time slot $n$, $\theta[n]$ is the movement direction, and $V[n]$ is the
user speed. We assume that each user in each time slot moves along the
directions from the set
$\vartheta=\\{0,\pi/4,\pi/2,3\pi/4,\pi,5\pi/4,3\pi/2,7\pi/4\\}$ which are
selected with uniform distribution. In addition, the speed of users over each
time slot is selected from the set
$V_{\text{user}}=[v1_{\text{user}},v2_{\text{user}}]$ with uniform
distribution. The movement directions and an example of the user path are
shown in Fig. 3.

Figure 3: Left hand side: Possible movement directions of moving users. Right
hand side: An example of moving user path

The general model considered is as follows. At the beginning of each time, UAV
lies at breaking point $n-1$ with location $\mathbf{q}[n-1]$ and each user
lies at its positions determined by $\mathbf{r}_{g,u_{g}}[n-1]=[\
x_{g,u_{g}}[n-1],y_{g,u_{g}}[n-1]]^{\text{T}}\in\mathbb{R}^{2\times 1}$. Then
we assume that each user changes its location to position
$\mathbf{r}_{g,u_{g}}[n]=[\ x_{g,u_{g}}[n],y_{g,u_{g}}[n]]^{\text{T}}$ based
on the random walk point as described in the previous paragraph, and is
assumed to be unchanged over time slot $n$. This position can be obtained from
the current location of users, their movement direction, and their speeds.
Given these new locations of users, during the time slot $n$, UAV moves to the
next breaking point, i.e., breaking point $n$ with location $\mathbf{q}[n]$,
and consumes transmit power of $p_{g}[n]$ for information transmission to
multicast group $g$. The transmission rate towards the users of this group can
be obtained from (4) where the channel gain from UAV to user $u_{g}$ of
multicast group $g$ is given by

$\displaystyle
h_{g,u_{g}}[n]=\frac{\mu_{0}}{H^{2}+{\|\mathbf{q}[n]-\mathbf{r}_{g,u_{g}}[n]\|}^{2}},$
(36)

where by $\mathbf{r}_{g,u_{g}}[n]$, we explicitly show that the position of
users for each time slot could be different.

Generally, for this kind of consideration, i.e., mobile users, one should use
mathematical models with dynamic time adaptation like Markov decision problems
(MDP) [22] and machine learning methods [23]. However, in this paper, we
consider different scenarios and leave the MDP and learning formulation as
future works.

###  IV-A Mobile User Location in ofline mode

In this section, we consider the case where the users are mobile in ofline
mode, and the location of users is known at the beginning of communication
time. It means that, their locations i.e., $\mathbf{r}_{g,u_{g}}[n],~{}\forall
u_{g},~{}g,~{}n$, over the communication interval, i.e., $T$, it is
predictable and known at the beginning of the communication time. This
scenario can be considered as the case where one knows the moment movement
model of users and adopts an advanced estimation method to estimate the
position of users.

The optimization problem, in this case, is the same as the optimization
problem (7) except that the user location in each time interval changes. Note
that the same solution algorithm as for the optimization problem (7) can be
used.

###  IV-B Mobile User Location in online mode

Online mode is one of the most useful scenarios related to the UAV trajectory
topic, that has not been mentioned so far so good. In this scenario, the UAV
does not know the location of the users during the communication time at the
beginning of the flight. Knowing the position of users in advance is very hard
and advanced estimation techniques cannot achieve the accurate estimation of
user positions.
To solve this challenge, we have divided the communication time, into a number
of time slots, and according to the position of the users at the beginning of
each time slot $n$, the UAV should determine the transmit power for sending
signals to users of multicast group $g$, i.e., $p_{g}[n]$, and the location of
the next breaking point, i.e., $\mathbf{q}[n]$, where we note that the
position of the UAV at the beginning of the time slot $n$ is
$\mathbf{q}[n-1]$.

Note that the UAV should finally arrive at breaking point $N$, i.e.,
$\mathbf{q}[N]$ which is known and fixed. However, as the UAV determines the
next location given the current location, the calculated next location can be
such far that the UAV could not arrive at $\mathbf{q}[N]$ at the end of
communication interval $T$. Therefore, at each time slot, we should limit the
set of candidate points for being the next breaking point $\mathbf{q}[n]$ such
that the UAV can arrive at the final breaking point during the remaining time
for the communication time interval. Defining
$\mathnormal{S}_{\text{remain}}[n]=\frac{\mathnormal{V}_{\text{max}}T}{N}(N-n),~{}~{}n=1,\cdots,N-1$
as the distance which can be traveled by the UAV when it is at breaking point
$n$, proposed the following constraint should be included such that we ensure
that UAV will arrive at the final point at the end of the communication
interval $T$:

$\displaystyle{\|\mathbf{q}[n]-\mathbf{q}[N]\|}^{2}\leqslant{S^{2}_{\text{remain}}[n]}.$
(37)

Therefore, for each time slot $n=1,\cdots,N-1$, the following optimization
problem should be solved:

$\displaystyle\max\limits_{\mathbf{p}[n],\mathbf{q}[\mathnormal{n}]}$
$\displaystyle\sum\limits_{g\in\mathcal{G}}C_{g}[n],~{}~{}n=1,\cdots,N-1,$
(38a) s.t. $\displaystyle{\|\mathbf{q}[n]-\mathbf{q}[n-1]\|}^{2}\leqslant
S^{2}_{\text{max}},$ (38b)
$\displaystyle{\|\mathbf{q}[n]-\mathbf{q}[N]\|}^{2}\leqslant{S^{2}_{\text{remain}}[n]},$
(38c) $\displaystyle C_{g}[n]\geqslant C_{g}^{\text{rsv}}[n],~{}~{}\forall
g\in\mathcal{G},$ (38d)
$\displaystyle\sum\limits_{g\in\mathcal{G}}p_{g}[n]\leqslant P_{\text{max}},$
(38e)

where we can go through the same steps as for optimization problem (7) to find
a solution.

For the last time slot, i.e., $N$, the next breaking point is $\mathbf{q}[N]$
which is known. This means that for the last time slot, one should only
determine the transmit power of the UAV. Therefore, the following power
allocation problem should be solved

$\displaystyle\max\limits_{\mathbf{p}}$
$\displaystyle\sum\limits_{g\in\mathcal{G}}\ln(1+\frac{p_{g}[N]\hat{h}_{g}[N]}{I_{g}[N]+\sigma^{2}}),$
(39a) s.t.
$\displaystyle\ln(1+\frac{p_{g}[N]\hat{h}_{g}[N]}{I_{g}[N]+\sigma^{2}})\geqslant
C_{g}^{\text{rsv}}[N],~{}~{}\forall g\in\mathcal{G},$ (39b)
$\displaystyle\sum\limits_{g\in\mathcal{G}}p_{g}[N]\leqslant P_{\text{max}},$
(39c)

where we can adopt the same steps as for the power allocation sub-problem of
(7).

##  V COMPUTATIONAL COMPLEXITY AND CONVERGENCE ANALYSIS

###  V-A Convergence Analysis

Note that the ASM-based algorithm iteratively solves the original problem for
different subsets of variables fixing other variables. At the main ASM
iteration $t$ and given the values of the optimization variables obtained in
the previous iteration $t-1$, i.e., $\mathbf{p}^{t-1}$ and $\mathbf{Q}^{t-1}$,
the ASM algorithm first determines the trajectory of UAV in iteration $t$,
i.e., $\mathbf{Q}^{t}$. This means that the objective value of the main
optimization problem increases as the aim is to maximize the objective
functions, and hence, we have

$\displaystyle OBJ(\mathbf{p}^{t},\mathbf{Q}^{t+1})\geqslant
OBJ(\mathbf{p}^{t},\mathbf{Q}^{t}).$ (40)

The same argument could be made for the transmit power variables meaning that
we have the following results as well:

$\displaystyle OBJ(\mathbf{p}^{t+1},\mathbf{Q}^{t+1})\geqslant
OBJ(\mathbf{p}^{t},\mathbf{Q}^{t+1}).$ (41)

We prove the convergence for the main optimization problem (7). For other
problems, the same arguments can be made.

From the above arguments, at each iteration of the main ASM algorithm, the
objective values of the main optimization problem increase, and since we have
the transmit power constraint, the objective could not grow unbounded, i.e.,
it is an upper bound. Therefore, starting from an initial feasible point, the
solution algorithm converges to a limited value, and hence, the ASM algorithm
convergence is guaranteed.

###  V-B Computational Complexity

  * •

Computational Complexity of Optimization Problem (7): The total complexity of
the proposed algorithm could be written as $T^{\text{ASM}}\times(A+B)$ where
$T^{\text{ASM}}$ is the total number of iterations needed for convergence of
the ASM procedure, $A$ is the complexity of the SCA-GP-based procedure for
solving Problem (28), and $B$ is the complexity of the SCA-D.C.-based
procedure for solving Problem (35) shown in Algorithm 1. The complexity of the
SCA-GP-based procedure for solving Problem (28) is given by
$A=T^{\text{SCAG}}\frac{\log(\varkappa_{A}/(t_{0}\rho))}{\log(\zeta_{0})}$
where $T^{\text{SCAG}}$ is the total number of iteration for the SCA-GP-based
procedure to converge, $\varkappa_{A}=N+G(N-1)(U_{g}+2)$ is the total number
of constraints of problem (28), $t_{0}$ is the initial point for approximation
of the accuracy of the interior point method (IPM), $\rho$ is the stopping
criterion of the IPM, and $\zeta_{0}$ is for updating the accuracy of the IPM
[19]. The complexity of the SCA-D.C.-based procedure for solving Problem (35)
is given by
$B=T^{\text{SCAD}}\frac{\log(\varkappa_{B}/(t_{0}\rho))}{\log(\zeta_{0})}$
where $\varkappa_{B}=N(G+1)$.

  * •

Computational Complexity of Mobile User Scheme When the Location of Users Are
Known in Advanced: The computational complexity, in this case, is the same as
the computational complexity of the optimization problem (7).

  * •

Computational Complexity of Mobile User Scheme When the Location of Users Are
Not Known in Advanced: The complexity of the proposed algorithm for solving
problem (38) in each iteration $n=1,\cdots,N-1$ is given by
$T^{\text{ASM}}[n]\times(C[n]+D[n])$ where
$C[n]=T^{\text{SCAG}}[n]\frac{\log(\varkappa_{C}/(t_{0}[n]\rho[n]))}{\log(\zeta_{0}[n])}$
with $\varkappa_{C}=2+G(U_{g}+2)$, and
$D[n]=T^{\text{SCAD}}[n]\frac{\log(\varkappa_{D}/(t_{0}[n]\rho[n]))}{\log(\zeta_{0}[n])}$
with $\varkappa_{D}=G+1$. The complexity of solving the optimization problem
(39) is $T^{\text{ASM}}[N]\times D[N]$. There, the total complexity of this
scheme is given by
($\sum_{n=1}^{N-1}T^{\text{ASM}}[n]\times(C[n]+D[n])\big{)}+\big{(}T^{\text{ASM}}[N]\times
D[N]\big{)}$.

##  VI Simulations and Results

###  VI-A The case of Fixed Users

In this section, we present the simulation results for evaluating our proposed
scheme. The network parameters are set as $P_{\text{max}}=2$ W, the radius of
the coverage area is $R=50$ m, $\sigma^{2}=-90$ dB, $H=25$ m,
$V_{\text{max}}=10$ m/s, $\mu_{0}=-30$ dB and the stopping criteria values in
algorithm 1 are $\varepsilon_{1}=10^{-2}$, $\varepsilon_{2}=10^{-3}$. The
users are randomly located in the coverage area with uniform distribution.

In the first simulation, we study the effect of communications time on the
trajectory of the UAV with fixed numbers of breaking points. We increase the
communication time from $\text{T}=5$ s to $\text{T}=25$ s, solve the
optimization problem (7), and plot the results in Fig. 4. When the
communications time is small, the distance between two consecutive breaking
points is also small. Constraint (7b) enforces the trajectory to be short.
However, as the communications time increases, the distance between two
consecutive breaking points increases; hence, the UAV can fly to a more
distant point in which the UAV could send the information at higher rates. For
some values of the communications time, the UAV could reach a point in which
the transmission rate is maximum over all the points in the trajectory. Above
this time, the UAV spends more time in the maximizing point, i.e., there is
more than one breaking point that coincides with this maximizing point.
Therefore, as shown in Fig. 4, the total data rate increases when the
communication time $T$ increases.

Figure 4:  a) Trajectory of UAV for different values of communications time
assuming the same number of breaking points, i.e., $G=3$, $U_{g}=5$, $N=5$ and
$C_{g}^{\text{rsv}}[n]=0.25$ bps/Hz. b) Total rate vs communication time $T$.

We also study the effect of the number of breaking points when the distance
between two consecutive breaking points is fixed. This means that we increase
the communications time, i.e., $T$, by
$T=\frac{\mathnormal{S}_{\text{max}}N}{\mathnormal{V}_{\text{max}}}$ where we
assume that the maximum distance between two consecutive breaking points is
known and fixed to $\mathnormal{S}_{\text{max}}$. The result is plotted in
Fig. 5. As could be seen, when the number of breaking points is small, the
trajectory is short and the UAV does not reach the maximizing point. However,
as the number of breaking points increases (at the same time the
communications time increases), the UAV could reach the maximizing point and
stay moreover this point to a achieve higher data rate.
As shown in Fig. 5, by increasing the number of breaking points, it increases
the duration of the UAV’s flight, and the communications time, and thus the
UAV serves a larger number of users and also achieves higher total rates. Now,
in the Fig. 5, this issue has been simulated more clearly, and as you can see,
by increasing the number of time slots, the UAV serves more users, and
therefore the available total rate with fixed $\mathnormal{S}_{\text{max}}$,
has also increased.

Figure 5:  a) Trajectory of UAV for different values of communications time
assuming the same value for the speed constraint, i.e., $G=3$, $U_{g}=5$,
$C_{g}^{\text{rsv}}[n]=0.25$ bps/Hz, $S_{\text{max}}=12.5$ m.  b) Total rate
vs number of time slots $N$.

Next, we study the effect of the number of users in the network. We assume
that there exist $G=3$ multicast groups in the network each with the same
number of users. We change the number of users in multicast groups and solve
the proposed optimization problem to find the transmit powers and the
trajectory of the UAV. The result is plotted in Fig. 6. As could be seen,
increasing the number of users in multicast groups decreases the total
transmission rate of the network. This is because, in multicast transmission,
the data rate of each group is limited by the worst user. Adding new users to
the multicast groups would introduce users with worse channel gain compared to
the existing users, and hence, the data rate decreases.

(a) $U_{g}=3,~{}\forall g\in\mathcal{G}$

(b) $U_{g}=5,~{}\forall g\in\mathcal{G}$

(c) $U_{g}=7,~{}\forall g\in\mathcal{G}$

Figure 6: Trajectory of UAV for different number of users per group for $G=3$,
$T=10$s, $N=6$, $C_{g}^{\text{rsv}}[n]=0.25$ bps/Hz.

To show Fig. 6 with another approach, we have shown the total rate vs
increasing number of users per group in Fig. 7. In each run by preserving
previous users, we have added new number of users. If the added users based on
multicast scenario have better situation than existing users i.e., in terms of
channel gain, there is no difference in the total rate but if the added users
don’t have a good situation the total rate is decreased.

Figure 7: Total rate vs number of users per groups $U_{g}$ for $G=3$, $T=10$s,
$N=6$, $C_{g}^{\text{rsv}}[n]=0.25$ bps/Hz.

(a) $G=3$ and $U_{g}=4,~{}\forall g\in\mathcal{G}$

(b) $G=6$ and $U_{g}=2,~{}\forall g\in\mathcal{G}$

(c) $G=12$ and $U_{g}=1,~{}\forall g\in\mathcal{G}$

Figure 8: Trajectory of UAV for different number of groups assuming the same
total number of users, i.e., $U=12$, and hence, different number of users per
group, and $T=10$s, $N=6$, $C_{g}^{\text{rsv}}[n]=0.08$ bps/Hz.

For the fixed user scenario, we study the effect of the number of multicast
groups. The main idea of analyzing this part is to investigate the proposed
system between multicast and unicast communication models. The decreasing
number of users and an increasing number of groups with the aim of keeping the
number of users fixed. We convert the proposed system with three groups that
in each one exist four users to twelve groups that exist one user in each
group. Hence, we can transform multicast to unicast scenario . We assumes the
fixed number of network users, i.e., 12 users, at first divide them into three
groups each with 4 users. Next, we divide the total users into 6 groups each
with 2 users. Finally, we have 12 groups each with one user which could be
considered, as the unicast scenario. We set the minimum rate requirement to
$C_{g}^{\text{rsv}}=0.08$ bps/Hz. The results are plotted in Fig. 8. As could
be seen, by increasing the number of groups, and hence decreasing the number
of users in each group, the total data rate increases. This is due to the fact
that in multicast transmission, the worst user in each group is the
bottleneck; hence by splitting a group into two or more groups, the users
which are bottleneck in each group would have better channel conditions, and
hence, the total data rate of the network will increase.

###  VI-B The case of Mobile Users

Now, we provide simulation results for our proposed scheme for the case of
mobile users. The velocity of users is chosen from interval
$V_{\text{user}}=[0,3]$ with uniform distribution. In the first simulation
which is for the case where the location of users is known a priori, we run
our proposed solution algorithm for the corresponding optimization problem,
i.e., the optimization problem (7) in which the location of users are
considered to change over each time slot, and plot the results in Fig. 12.
Note that in this case, solving the optimization problem results in finding
the location of the UAV in each time slot, and hence we have the whole
trajectory of the UAV before communication starts. This trajectory is shown in
Fig. 12(g). However, Figs. 12(a) to 12(f) show the time lapse of the
communication scenario. In Fig. 12(a), the UAV is at its start point and users
are in their new locations which are fixed over time slot $n=1$. In Fig.
12(b), the UAV flies in the next breaking point in time slot 2 and the users
have moved to their new locations. Note that, as the users are mobile, we had
to plot these figures where in each figure, the locations of users are
different from other figures.

We next provide results for the case where the locations of users are not
known at the beginning of the communication interval as shown in Fig. 9. For
the sake of comparison, we also provide the results for the case when the
locations of users are known in advance. As can be seen, the trajectory
obtained by the proposed method in the case of no prior user location
information is the same as that in the case where the user locations are known
in advance. In addition, the total achieved data rate of both cases is the
same, and we note that the UAV has arrived at the final location for both
cases.

Figure 9: The comparison between the trajectories of the UAV when the
locations of users are known at the beginning of the communication time
interval and when this information are known at the beginning of each time
slot. System parameters are $G=3$, $T=12$s, $N=6$,
$C_{g}^{\text{rsv}}[n]=0.25$ bps/Hz, $U_{g}=5,~{}\forall g\in\mathcal{G}$.

In Fig. 10, investigate the necessity of constraint (38c). As we stated
before, this constraint is needed to derive the UAV to its final location. In
the absence of (38c), the UAV may move to a location that is optimal, i.e.,
maximum transmission rate, and stay over that point for all the remaining
time. This is because, for each time slot, a different optimization problem is
solved whose solution is the next location of the UAV which maximizes the
transmission rate. As seen in Fig. 10, when constraint (38c) is not included,
the UAV does not move towards its final location. However, as including this
constraint makes the UAV choose its next location with the view of reaching
its final location, the UAV will arrive at the final location at the end of
communication time, i.e., time slot $N$.

Figure 10: The comparison of the trajectories of the UAV when the locations of
users are known only at the beginning of each time slot for cases when
constraint (38c) is absent in the optimization problem (38) and when this
constrain is included in the optimization problem (38). System parameters are
$G=3$, $T=12$s, $N=6$, $C_{g}^{\text{rsv}}[n]=0.25$ bps/Hz,
$U_{g}=5,~{}\forall g\in\mathcal{G}$.

With the approach of changing the number of users per group in each time slot,
the last simulation is proposed. In all simulation parts, numbers of users are
fixed but in the last, we show the variation of the number of users per group
in each time slot in online scenario based on the Poisson distribution with
parameter $\lambda$, that with the best study of us, none of the similar works
didn’t investigate it. As a realization, we show the variation of the number
of users in time slots 1 and 2 i.e., in Fig. 11(a) and Fig. 11(b). As you can
see, Fig. 11(a) show the number of users per group 1, 2, and 3 in time slot 1,
which are 9, 7, and 5, respectively. Fig. 11(b) show the number of users per
group 1, 2, and 3 in time slot 2, which are 9, 9, and 7, respectively, too. In
Fig. 11(c), we evaluate the effect of power on the total rate with the help of
different values of $\lambda$. Different values of $\lambda$ cause generate
users with a different rate, therefore increasing $\lambda$ leads to
increasing the number of users and if the added users have worse channel gain
compared to existing ones, the total rate decreases or otherwise the total
rate remains fixed. In Fig. 11(c), we run several times communication times,
then we put the average of them here, for different values of $\lambda$.

(a) Example of user distribution in time slot 1

(b) Example of user distribution in time slot 2

(c) The variation of rate versus power and $\lambda$

Figure 11: The effect of changing the number of mobile users on online
scenario. (a), (b) Show user’s placement in two different time slots, (c) The
variation of total rate vs power for different value of $\lambda$, i.e.,
$G=3$, $T=12s$, $C_{g}^{\text{rsv}}[n]=0.25$ bps/Hz, $N=6$.

##  VII Conclusion

In this paper we proposed a novel scheme for resource allocation in UAV
assisted wireless network where the information is transmitted towards the
network users by multicasting. We assumed that the UAV flies over a
communication path for a period of time over a communication path, and
according to the concept of PD-NOMA, UAV sends the proportional message
towards the network users of each multicast group, simultaneously. We aimed at
jointly finding the UAV trajectory and the transmit power over the trajectory.
We considered offline mode from the perspective of; fixed users and mobile
users with predictable location and an online mode that this case is closer to
reality and more practical. In online mode, users are mobile and change their
locations toward the communication time. Also, we investigated the variation
of the number of users in each group and in each time slot for mobile users in
an online scenario, too. The proposed schemes are studied numerically for
different values of the network parameters whose performances are confirmed by
the results.

(a) Users positions and UAV trajectory at the beggining time slot 1

(b) Users positions and UAV trajectory at the beggining time slot 2

(c) Users positions and UAV trajectory at the beggining time slot 3

(d) Users positions and UAV trajectory at the beggining time slot 4

(e) Users positions and UAV trajectory at the beggining time slot 5

(f) Users positions and UAV trajectory at the beggining time slot 6

(g) Final trajectory at the end of communication time

Figure 12: The trajectory of the UAV over time and the position of the UAV at
the beginning of each time slot for case of known location of users. System
parameters are $G=3$, $T=12$s, $N=6$, $C_{g}^{\text{rsv}}[n]=0.25$ bps/Hz,
$U_{g}=5,~{}\forall g\in\mathcal{G}$.

## References

  * [1] M. F. Sohail, C. Y. Leow, and S. Won, “Non-orthogonal multiple access for unmanned aerial vehicle assisted communication,” _IEEE Access_ , vol. 6, pp. 22 716–22 727, 2018.
  * [2] S. Zhang, Y. Zeng, and R. Zhang, “Cellular-enabled UAV communication: A connectivity-constrained trajectory optimization perspective,” _IEEE Transactions on Communications_ , vol. 67, no. 3, pp. 2580–2604, 2019.
  * [3] T. Qi, W. Feng, and Y. Wang, “Outage performance of non-orthogonal multiple access based unmanned aerial vehicles satellite networks,” _China Communications_ , vol. 15, no. 5, pp. 1–8, 2018.
  * [4] J. Lyu, Y. Zeng, R. Zhang, and T. J. Lim, “Placement optimization of UAV-mounted mobile base stations,” _IEEE Communications Letters_ , vol. 21, no. 3, pp. 604–607, 2017.
  * [5] Y. Zeng, X. Xu, and R. Zhang, “Trajectory design for completion time minimization in UAV-enabled multicasting,” _IEEE Transactions on Wireless Communications_ , vol. 17, no. 4, pp. 2233–2246, 2018.
  * [6] Q. Wu, Y. Zeng, and R. Zhang, “Joint trajectory and communication design for multi-UAV enabled wireless networks,” _IEEE Transactions on Wireless Communications_ , vol. 17, no. 3, pp. 2109–2121, 2018.
  * [7] D. T. Ngo, S. Khakurel, and T. Le-Ngoc, “Joint subchannel assignment and power allocation for OFDMA femtocell networks,” _IEEE Transactions on Wireless Communications_ , vol. 13, no. 1, pp. 342–355, 2014.
  * [8] M. S. Ali, H. Tabassum, and E. Hossain, “Dynamic user clustering and power allocation for uplink and downlink non-orthogonal multiple access (NOMA) systems,” _IEEE Access_ , vol. 4, pp. 6325–6343, 2016.
  * [9] W. U. Khan, Z. Yu, S. Yu, G. A. S. Sidhu, and J. Liu, “Efficient power allocation in downlink multi-cell multi-user NOMA networks,” _IET Communications_ , vol. 13, no. 4, pp. 396–402, 2019.
  * [10] A. Nazari, M. R. Javan, and S. S. Hosseini, “Resource allocation in power domain NOMA-based cooperative multicell networks.” _IET Commun._ , vol. 14, no. 7, pp. 1162–1168, 2020.
  * [11] T. M. Nguyen, W. Ajib, and C. Assi, “A novel cooperative NOMA for designing UAV-assisted wireless backhaul networks,” _IEEE Journal on Selected Areas in Communications_ , vol. 36, no. 11, pp. 2497–2507, 2018.
  * [12] L. Yang, Q. Ni, L. Lv, J. Chen, X. Xue, H. Zhang, and H. Jiang, “Cooperative non-orthogonal layered multicast multiple access for heterogeneous networks,” _IEEE Transactions on Communications_ , vol. 67, no. 2, pp. 1148–1165, 2019.
  * [13] G. Zhou, C. Pan, H. Ren, K. Wang, and A. Nallanathan, “Intelligent reflecting surface aided multigroup multicast MISO communication systems,” _IEEE Transactions on Signal Processing_ , vol. 68, pp. 3236–3251, 2020.
  * [14] L. Lv, J. Chen, Q. Ni, and Z. Ding, “Design of cooperative non-orthogonal multicast cognitive multiple access for 5G systems: User scheduling and performance analysis,” _IEEE Transactions on Communications_ , vol. 65, no. 6, pp. 2641–2656, 2017.
  * [15] R. Gau and H. Chiu, “User assignment and discrete power control for scalable NOMA multicast in cellular networks,” in _Proc. IEEE PIMRC_ , 2016, pp. 1592–1597.
  * [16] A. A. Nasir, H. D. Tuan, T. Q. Duong, and H. V. Poor, “UAV-enabled communication using NOMA,” _IEEE Transactions on Communications_ , vol. 67, no. 7, pp. 5126–5138, 2019.
  * [17] D. Li and X. Dai, “Power control in cooperative cognitive radio networks by geometric programming,” in _2009 15th Asia-Pacific Conference on Communications_ , 2009, pp. 118–121.
  * [18] X. Cao, J. Xu, and R. Zhang, “Mobile edge computing for cellular-connected UAV: Computation offloading and trajectory optimization,” in _2018 IEEE 19th International Workshop on Signal Processing Advances in Wireless Communications (SPAWC)_ , 2018, pp. 1–5.
  * [19] S. Boyd, S. P. Boyd, and L. Vandenberghe, _Convex optimization_. Cambridge university press, 2004.
  * [20] M. Grant and S. Boyd, “CVX: Matlab software for disciplined convex programming, version 2.1.http://cvxr.com/cvx,” 2018.
  * [21] M. Farokhi, A. Zolghadrasli, and N. M. Yamchi, “Mobility-based cell and resource allocation for heterogeneous ultra-dense cellular networks,” _IEEE Access_ , vol. 6, pp. 66 940–66 953, 2018.
  * [22] T. Ouyang, Z. Zhou, and X. Chen, “Follow me at the edge: Mobility-aware dynamic service placement for mobile edge computing,” _IEEE Journal on Selected Areas in Communications_ , vol. 36, no. 10, pp. 2333–2345, 2018.
  * [23] X. Liu, Y. Liu, Y. Chen, and L. Hanzo, “Trajectory design and power control for multi-UAV assisted wireless networks: A machine learning approach,” _IEEE Transactions on Vehicular Technology_ , vol. 68, no. 8, pp. 7957–7969, 2019.