  Multicasting for disseminating popular data is an interesting solution for
improving the energy and spectral efficiencies of cellular networks. To improve
the achievable performance of such networks, underlay device-to-device (D2D)
multicast communication offers a practical solution. However, despite
significant potential for providing higher throughput and lower delay,
implementing underlay D2D multicast communication poses several challenges,
such as mutual interference among cellular users (CUs) and D2D multicast groups
(MGs), and overhead signaling to provide channel state information, that may
limit potential gains. We study a scenario where multiple D2D multicast groups
may share a CU's uplink channel. We formulate an optimization problem to
maximize the achievable system throughput while fulfilling quality of service
(QoS) requirements of every CU and D2D MGs, subject to their corresponding
maximum transmit power constraints. The formulated optimization problem is an
instance of mixed integer non-linear programming (MINLP) problem, which is
computationally intractable, in general. Therefore, to find a feasible
solution, we propose a pragmatic two-step process of channel allocation and
power allocation. In the first-step, we propose a channel allocation algorithm,
which determines the subset of MGs that may share a channel subject to criteria
based on two different parameters: interference and outage probabilities. Then,
we propose an algorithm to allocate power to these MG subsets that maximizes
the system throughput, while satisfying transmit power constraint. Numerical
results show the efficacy of proposed approach in terms of higher achievable
sum throughput and better spectrum efficiency with respect to various existing
schemes.
