# Improving Energy Efficiency of Multimedia Content Dissemination by Adaptive Clustering and D2D Multicast

Authors: Long Yin; Jinsong Gui; Zhiwen Zeng
Journal: Mobile Information Systems
 (2019)

---

## Abstract

While achieving desired performance, there exist still many challenges in current cellular networks to support the multimedia content dissemination services. The conventional multimedia transmission schemes tend to serve all multicast group members with the data rate supported by the receiving user with the worst channel condition. The recent work discusses how to provide satisfactory quality of service (QoS) for all receiving users with different quality of experience (QoE) requirements, but the energy efficiency improvement of multimedia content dissemination is not its focus. In this paper, we address it based on adaptive clustering and device-to-device (D2D) multicast and propose an energy-efficient multimedia content dissemination scheme under a consistent QoE constraint. Our scheme extends the recent work with the proposedK-means-based D2D clustering method and the proposed game-based incentive mechanism, which can improve energy efficiency of multimedia content dissemination on the premise of ensuring the desired QoE for most multicast group members. In the proposed scheme, we jointly consider the cellular multicast, intracluster D2D multicast, and intercluster D2D multicast for designing the energy-efficient multimedia content dissemination scheme. In particular, we formulate the energy-efficient multicast transmission problem as a Stackelberg game model, where the macro base station (MBS) is the leader and the candidate D2D cluster heads (DCHs) are the followers. Also, the MBS acts as the buyer who buys the power from the candidate DCHs for intracluster and intercluster D2D multicast communications, and the candidate DCHs act as the sellers who earn reward by helping the MBS with D2D multicast communications. Through analyzing the above game model, we derive the Stackelberg equilibrium as the optimal allocation for cellular multicast power, intracluster D2D multicast power, and intercluster D2D multicast power, which can maximize the MBS’s utility function. Finally, the proposed scheme is verified through the simulation experiments designed in this paper.


---

## Body

## 1. Introduction

With the rapid evolution of mobile communication technologies and the proliferation of smart devices (e.g., phones, tablets, and laptops) and applications (e.g., WeChat, Facebook, and Dropbox), mobile users conveniently generate and disseminate various types of contents. It is noticeable that more than 70 percent of mobile data traffic will come from videos in the near future according to the prediction in [1].In terms of efficiently disseminating the same multimedia content to multiple terminal users, the multicast is an effective way since it can optimize network resource utilization. The multimedia broadcast multicast service (MBMS) is incorporated into Long-Term Evolution (LTE) advanced networks by the 3rd Generation Partnership Project (3GPP) [2]. Subsequently, 3GPP Release 9 issues the MBMS standard on LTE, which is called evolved MBMS (eMBMS) that is a key component in coping with the rapid growth in mobile multimedia traffic.In the eMBMS network architecture, there are some standardized entities which support the dissemination of multimedia content, for example, a broadcast multicast service center (BMSC), a MBMS gateway (MBMSGW), multiple e-UTRAN NodeBs (eNodeBs), a mobility management entity (MME), and a multicell/multicast coordination entity (MCE). As described in [3], MME and MCE are control entities, where the former is involved in authentication and authorization for users, MBMS session control signaling, and mobility management, while the latter is responsible for both setting up MBMS radio bearers and coordinating the usage of same resources and transmission parameters across cells.The requested multimedia content is firstly received by the BMSC from the content provider and then is provided to the MBMSGW attached to it. The MBMSGW is responsible for delivering this multimedia content to different eNodeBs. Finally, by wireless multicast transmission, the requested multimedia content is disseminated by eNodeBs to the associated mobile users that have subscribed for it.However, as stated in the literature [3], the current multicast networks lack flexibility, openness, adaptability, and scalability. Therefore, to meet user plurality of multicast services, Bukhari et al. [3] explored how to design a new multicast architecture for the mobile packet core network. Furthermore, the wireless transmission power consumption of multimedia content dissemination is a cost that content providers cannot ignore. Even small transmission power savings are significant for content providers due to the huge capacity of multimedia content.It is generally accepted that the ultradense network (UDN) can make each user enjoy a very high data rate with good quality of service (QoS) [4, 5]. This is because that the UDN is formed by deploying many small base stations within the traditional macro cell coverage area. The smaller cell size leads to the higher data rate, lower power consumption, and lower delay due to the closer distance between any wireless multicast receiver and its associated eNodeB. Clearly, this benefit depends on the deployment of more small base stations, and it in turn increases the deployment and maintenance costs of operators [6].According to the Cisco Visual Networking Index (Cisco VNI) [7], Internet peak traffic grows faster than average traffic, where the former will increase by a factor of 4.6 from 2016 to 2021, while the latter will increase by a factor of 3.2. Since the gap appears to be a growing trend, mobile network operators are reluctant to ultradensely deploy small base stations or wireless access points in an everything, anytime, and anywhere mode, especially when they predict that the average utilization rate of equipment is very low.In places such as villages and suburbs, even including some public areas (e.g., urban leisure square, sports venues, and expo centers), small base stations or wireless access points are rarely deployed in an ultradense mode, where a large crowd may be formed due to some spontaneous events (e.g., rural folk sports events, festival celebration activities, and large-scale commodity fairs). As a result, there exists a temporary weak cellular multicast coverage area, where the conventional multimedia transmission schemes will face some challenges.For example, the conventional multimedia transmission schemes tend to serve all multicast group members with the data rate supported by the receiving user with the worst channel condition. Therefore, for a particular multicast service, a larger difference between channel conditions of multicast receivers will pay more unnecessary power consumption of multicast transmission.The recent work [8] wants to guarantee satisfactory QoS for all receiving users with different quality of experience (QoE) requirements. However, it focuses on how to provide reliable multicast services with minimal network resources. In some cases, this goal is achieved at the expense of very low energy efficiency. For example, for some multicast group members at the cell edge area that can only receive multicast content in non-line-of-sight links, they will degrade the energy efficiency of the entire multicast group. Especially in the temporary weak cellular multicast coverage area mentioned above, it is more likely to occur.In view of the generally accepted views, clustering is an effective way to strengthen coverage density, while device-to-device (D2D) communication has a particular advantage of improving coverage quality at the cell edge area. Therefore, in this paper, we address the above challenges based on adaptive clustering and D2D multicast, and the main contributions are as follows:(1)
We propose an energy-efficient multimedia content dissemination scheme under a consistent QoE. Compared to the recent work, by the proposedK-means-based D2D clustering method and the proposed game-based incentive mechanism, our scheme can improve energy efficiency of multimedia content dissemination on the premise of ensuring the desired QoE for most multicast group members.(2)
In the proposed scheme, we jointly consider the cellular multicast, intracluster D2D multicast, and intercluster D2D multicast for designing the energy-efficient multimedia content dissemination scheme, which provides a flexible approach for any content provider to find an appropriate way to disseminate a given multimedia content at the most reasonable energy cost.(3)
In particular, we formulate the energy-efficient multicast transmission problem as a Stackelberg game model, where the macro base station (MBS) is the leader and the candidate D2D cluster heads (DCHs) are the followers. Also, the MBS acts as the buyer who buys the power from the candidate DCHs for intracluster and intercluster D2D multicast communications, and the candidate DCHs act as the sellers who earn reward by helping the MBS with D2D multicast communications.(4)
Through analyzing the proposed game model, we derive the Stackelberg equilibrium as the optimal allocation for cellular multicast power, intracluster D2D multicast power, and intercluster D2D multicast power, which can maximize the MBS’s utility function.We organize the remainder of this paper as follows: the related works are summarized in Section2. Then, the system model and problem formulation are described in Sections 3 and 4, respectively. Moreover, the algorithm description for the formulated problem is given in Section 5. Finally, simulations are shown in Section 6, and conclusions are drawn in Section 7.


## 2. Related Works

The multicast D2D communication overlaying/underlaying on cellular networks and the corresponding spatial modeling have been accomplished comprehensively. Zhou et al. [9] analyzed the relationship between the number of D2D relays and the minimal time-frequency resource on retransmissions and derived the optimal number of D2D relays for performing multicast retransmissions.Trestian et al. [10] proposed an energy-efficient cluster-based multicast scheme for multimedia content dissemination in an LTE D2D network to improve the network performance (e.g., energy efficiency and battery lifetime). Wu et al. [11] investigated the energy-efficient uplink resource-sharing problem in the mobile multimedia D2D communications with multiple potential D2D pairs and cellular users, while Wang et al. [12] explored a low-complexity distributed game-theoretic source selection and power control scheme to improve the multimedia transmission quality with latency constraints.For some multicast data dissemination services (e.g., local file transfer, local advertisement, and data sharing for group driving), Kim et al. [13] believed that the multicast over clustered D2D networks is a suitable technology for this communication scenario. Also, in the defined device-to-device cluster (D2DC) multicast, common multicast data are delivered from a cluster head to multiple devices through D2D underlaying cellular networks, where each cluster disseminates distinct data internally.Zhan et al. [14] believed that D2D-based cooperation has many advantages of improving multimedia content dissemination services in a scenario such as offloading the video traffic of the base station, where the mobile users within proximity to each other form a content-sharing group, since they are interested in the same multimedia content at the same time.In [15–19], the authors thought that the group-aware mobile social video streaming sharing problem has aroused great interest in the academic and industry community. For example, live sports content should be delivered to a group of supporters’ devices at the same time. Again, a group of friends may need to play an online game at the same time, and thus, they need to receive the same multimedia content in terms of this game at the same time. If these users are in proximity to each other, they may use D2D connections (e.g., WiFi or Bluetooth) to get the mutual interested content in a cooperative or opportunistic way [20].Yap et al. [21] thought that, by using multiple radio interfaces simultaneously for cooperative multimedia delivery, the limitation of a single radio interface on a smart terminal can be overcome. Le et al. [22] implemented the cooperative multimedia delivery system by leveraging cellular connection and D2D links simultaneously to effectively transfer videos.Jameel et al. [23] suggested that multimedia content dissemination services (e.g., Google Chromecast, mobile gaming, live sports program, IP video to TV (IPTV), high-definition (HD) movies, and video conferencing) can be facilitated by forming a D2D multicast group within a cluster. Here, the main goal of the authors is to make a device with good Internet connectivity act as a hotspot to offload/cache data during peak hours and then rebroadcast them to other devices by using direct links.As stated in [8], it is generally difficult for a multicast source to send multimedia content at the same rate, which is suitable for all multicast receivers, due to very different channel conditions for each receiver. Meanwhile, they also thought that this problem can be mitigated by allowing a receiver with good channel condition to rebroadcast the correctly received content to other receivers via D2D links.Non-cooperative game theory is widely used in the design of radio resource allocation schemes. For example, Zhou et al. [24] focused on the trade-off of energy efficiency and spectral efficiency, while Guan et al. [25] modeled the interaction relationship between end users and edge servers in an edge computing environment as a non-cooperative game process. Also, the studies in [26–30] considered energy efficiency of the D2D communication mode coexisting with the cellular environment. In the above multicast content transmission schemes, most of them also took non-cooperative game theory as a powerful tool for ensuring stable multicast content dissemination.However, some works considered cooperative game theory to solve the vehicular content dissemination problem. For example, Wang et al. [31] proposed a dynamic vehicular content-sharing scheme by employing a coalition formation game, while Zhou et al. [32] proposed a dependable content dissemination scheme by combining the vehicle trajectory prediction with the resource allocation based on a coalition formation game. Since these works focus on the vehicular content-sharing scenario, the same content (e.g., traffic congestion and road condition information) needs to be simultaneously disseminated to all target vehicular users in a timely manner. Therefore, the desired goal is to obtain a required content in a dependable way with possible minimum network delay.Due to the fast-varying channel quality and vehicular network topology [33], it is a challenging task to achieve dependable vehicular content dissemination. Based on data analysis [34], vehicle trajectory prediction will be helpful to design a relatively stable content dissemination scheme. The enrichment of data collection approaches [35, 36] will lay a solid foundation for the practical application of the schemes similar to the one in Zhou et al.’s study [32].As can be seen from the above overview, the existing multicast transmission schemes are mainly built from the perspective of final consumers of multimedia content dissemination services. Therefore, the most prior one is to ensure QoE of consumers, while the consideration of network resources required for multicast transmission follows it. In fact, this kind of approaches is not suitable for multimedia content providers. If the energy efficiency of multimedia content dissemination process can be greatly improved, multimedia content providers are even willing to sacrifice QoE of a small number of consumers to maximize their benefits.Feng et al. [37] categorized content sharing into two cases (i.e., local-direct sharing and local-request sharing). In the former case, the shared content is stored on a local device and thus is able to be shared directly with other local devices. In the latter case, the shared content is usually stored on a remote server and thus is requested by a target receiver and then delivered from this remote server to all the target receivers in a content-sharing group. In this paper, we focus on the latter case. Moreover, from the perspective of multimedia content providers, we will explore how to minimize energy consumption as much as possible on the premise of satisfying QoE for most final consumers.


## 3. System Model

In this paper, we consider a multimedia content dissemination system with one multimedia content provider (MCP) and many multimedia content users (MCUs) or consumers, where the servers of the MCP are usually located in the cloud infrastructure and the MCUs are randomly distributed in a macro cell, as shown in Figure1. In such a macro cell, a variety of small base stations may be deployed in some areas, but there may also be weak coverage areas. If an MCU is close to a small base station, it will be associated with this small base station through which the multimedia content is disseminated to it (i.e., a small cell user). Otherwise, the multimedia content is disseminated to it (i.e., a macro cell user) through the macro base station.Figure 1
General heterogeneous cellular network architecture.As mentioned above, when a base station offers a multicast service, it tends to ensure the QoE of MCU with worst channel condition in its coverage area. Usually, the larger coverage area will lead to the higher energy consumption for the corresponding base station. The introduction of clustering and D2D communication to assist the multicast service of the base station is beneficial to reduce the multicast transmission power of the base station, where the base station only needs to ensure the QoE of D2D cluster heads (DCHs) (especially those with the worst channel conditions) in its coverage area, and then these DCHs rebroadcast to the MCUs associated by them in a D2D communication mode.Furthermore, when the D2D mode is applied to intercluster multicast transmission, the multicast transmission power of the base station will be further reduced. Especially in a large area with weak coverage, as shown in Figure1, the effect of power reduction for the base station is more significant. As shown in Figure 2, under the control of the base station, K DCHs are selected from the MCUs and the corresponding K D2D multicast clusters are determined by the K-means-based clustering algorithm proposed in this paper, where an MCU is associated with a DCH based on the channel quality between them.Figure 2
Coexistence scenario for cellular multicast, intracluster D2D multicast, and intercluster D2D multicast. (a) Hybrid multicast mode. (b) Intracluster D2D multicast. (c) Intercluster D2D multicast.After the DCHs are determined, the base station only needs to ensure the DCHs’ QoE (i.e., the receiving quality of the video stream), while each DCH will ensure its associated cluster members’ QoE. Therefore, the number of objects served directly by the base station is reduced, so it has the ability to formulate more targeted service strategies for these specific service objects.The base station may choose a policy to ensure all the DCHs’ QoE. This goal may be achieved at a larger power cost, especially when the DCHs are distributed in a large area. As an alternative, the base station may take measures to ensure the QoE of the DCHs that are closer to it, and in turn, these DCHs ensure the QoE of the DCHs that are further away from the base station in a rebroadcasting mode, where the base station may save transmission power, while the DCHs performing the rebroadcasting operation will consume more energy.Due to the selfishness and rationality of DCHs, the base station has to pay the DCHs for their rebroadcasting services in order to motivate them to provide continuous good services. That is, the power consumed by the DCHs to provide rebroadcasting services is ultimately compensated by the base station. Therefore, when a base station disseminates multimedia video streams, what is the best way to save power? This is exactly the topic of this paper.


## 4. Problem Formulation

### 4.1. Overview of Basic Theory

It is necessary to expound the relevant basic theory before putting forward the concrete scheme. According to the Shannon capacity formula, when a DCH (e.g.,i) directly receives the multimedia content from the base station, the data rate per unit of spectrum for DCH i is expressed as follows:(1)ri=log21+γi,where ri is the data rate per unit of spectrum for DCH i, while γi is the signal-to-interference-plus-noise ratio (SINR) for DCH i denoted as follows:(2)γi=pc⋅giNi+Fcell,i,where pc is the transmission power for the base station, gi is the channel attenuation coefficient of the link from the base station to DCH i, Ni is the noise power perceived by DCH i, and Fcell,i is the interference power perceived by DCH i over a cellular channel and is estimated by the following formula:(3)Fcell,i=∑k∈Icell,igki⋅pk,where gki is the channel attenuation coefficient of the link from the cellular interfering source k to the interfered DCH i, pk is the transmission power of the interfering source k, and Icell,i is the set of cellular interfering sources of DCH i.Usually, the receiving bit error ratio (BER) for a DCH can reflect its QoE level. For example, when the BER value of a DCH is not more than the threshold (e.g., BEth) associated with a particular network application scenario, its QoE can be guaranteed. The corresponding SINR (e.g., γth) and data rate per unit of spectrum (e.g., rth) are estimated by the following formula:(4)γth=−2lnBEth,rth=log21+γth.Therefore, the base station only needs to take a transmission power to ensure that the DCH with the worst channel condition can obtain the data raterth. If the DCH i satisfies such a condition, the transmission power actually adopted by the base station should not be less than the result computed by the following equation, where pthc is the minimum transmission power for the base station to meet the QoE of the specified multicast receiving group:(5)pthc=Ni+Fcell,i⋅γthgi.Similarly, for an intercluster multicast transmitter DCHi, if the receiving DCH j has the worst channel condition among all the intercluster multicast receivers, the cell transmission power actually adopted by the D2D transmitter DCH i should not be less than the result computed by the following equation:(6)pthin,i=Nj+Fin,j⋅γthgij,where pthin,i is the minimum transmission power for the transmitter DCH i in an in-band D2D channel for intercluster multicast, which can meet the QoE of the specified multicast receiving group; gij is the channel attenuation coefficient of the link from DCH i to DCH j; Nj is the noise power perceived by DCH j; and Fin,j is the interference power perceived by DCH j over an in-band D2D channel, which is estimated by the following formula:(7)Fin,j=∑k∈Iin,jgkj⋅pk,where gkj is the channel attenuation coefficient of the link from the in-band D2D interfering source k to the interfered DCH j, pk is the transmission power of the in-band D2D interfering source k, and Iin,j is the set of in-band D2D interfering sources of DCH j.Also, for an intracluster multicast transmitter DCHi, if the MCU u has the worst channel condition among all the intracluster multicast receivers, the D2D transmission power actually adopted by the transmitter DCH i should not be less than the result computed by the following equation:(8)pthout,i=Nu+Fout,u⋅γthgiu,where pthout,i is the minimum transmission power for the transmitter DCH i in an out-band D2D channel for intracluster multicast, which can meet the QoE of the specified multicast receiving group; giu is the channel attenuation coefficient of the link from DCH i to MCU u; Nu is the noise power perceived by MCU u; and Fout,u is the interference power perceived by MCU u over an out-band D2D channel, which is estimated by the following formula:(9)Fout,u=∑k∈Iout,ugku⋅pk,where gku is the channel attenuation coefficient of the link from the out-band D2D interfering source k to the interfered MCU u, pk is the transmission power of the out-band D2D interfering source k, and Iout,u is the set of out-band D2D interfering sources of MCU u.


### 4.2. Utility Function Modeling

Similar to the work in [8], we also suppose that the MCP has the information of all the MCUs, including the channel gain (or channel attenuation) information and the location information. The utility function of the MCP can be written as follows:(10)μmcp=φt⋅Nt⋅rthη⋅pthc+∑k=1Ndη⋅pthin,k+φout,k⋅pthout,k,where μmcp is the utility function of the MCP, and its physical meaning is the successfully delivered data rate per used power; η denotes the benefit coefficient which the MCP gives the base station and each DCH, where the base station and each DCH will actually benefit when η is more than 1; Nd is the set of DCHs to which the MCP expects to provide D2D multicast services, while Nd is the number of members in Nd; Nt is the set of all MCUs that are expected to be served by the MCP, while Nt is the number of members in Nt; φt is the ratio of the number of MCUs that are successfully served by the MCP to the number of MCUs that are expected to be served; and φout,k is the ratio of the number of MCUs that are successfully served by DCH k to the number of MCUs that are expected to be served in the cluster with DCH k as its cluster head. Nd can be estimated by the following formula:(11)Nd=1−φc⋅Nc,where Nc is the set of all DCHs that are expected to be served by the MCP, while Nc is the number of members in Nc, and φc is the ratio of the number of DCHs that are successfully served by the MCP to the number of DCHs that are expected to be served, which is expressed as follows:(12)φc=Nc′Nc,where Nc′ is the set of all DCHs that are successfully served by the MCP, while Nc′ is the number of members in Nc′. The following formula can be used to compute the value of φt:(13)φt=Nt′Nt,where Nt′ is the set of all MCUs that are successfully served by the MCP, while Nt′ is the number of members in Nt′. The following formula can be used to compute the value of φout,k:(14)φout,k=Nout,k′Nout,k,where Nout,k′ is the set of all MCUs that are successfully served by DCH k, while Nout,k′ is the number of members in Nout,k′, and Nout,k is the set of all MCUs in the cluster with DCH k as its cluster head, while Nout,k is the number of members in Nout,k.Our objective in this paper is to maximize the utility function of the MCP defined in (10) while satisfying the QoE constraints. Thus, the optimization problem can be formulated as follows:(15)maxpthcφt⋅Nt⋅rthη⋅pthc+∑k=1Ndη⋅pthin,k+φout,k⋅pthout,k,subject topmin≤pthc≤pmax,where pmin and pmax denote the minimal and maximal transmit power for the base station, respectively. The optimization problem in (15) is to find the best value of pthc. Here, we firstly derive the optimal power by taking advantage of the Stackelberg game theory, where the game players are the MCP (i.e., the leader) and the DCHs (i.e., the followers). That is, the MCP will buy the transmission powers from the DCHs for the D2D multicast service and the DCHs are the sellers who earn reward by offering the transmission powers to the MCP for the purpose of enabling the D2D multicast service.


### 4.3. A Multimedia Content Provider as a Buyer

In order to maximize the utility function of the MCP, besides buying the multicast transmission service from the base station, the MCP may hire a set of DCHs to help transmit data both in an intracluster multicast manner and an intercluster multicast manner. Such a D2D multicast mode may have some benefits for the MCP, which are determined by the serving rate of the multimedia content dissemination system (i.e., the ratio of the number of MCUs that are successfully served by the MCP to the number of MCUs that are expected to be served). Here, we denote the gain asφt⋅Nt⋅rth.Also, besides paying the base station a multicast transmission service fee, the MCP should pay the DCHs a certain reward if it decides to use a set of DCHs to aid multicast content dissemination, which is denoted as∑k=1Ndη⋅pthin,k+φout,k⋅pthout,k. Thus, the utility of MCP for enabling the D2D multicast service can be shown in (10).The objective of the MCP is to ensure all the DCHs’ QoE in its serving area with the minimal power consumption, that is, for any given priceη, in order to maximize its utility shown in (15), how much it should buy from the base station and also how much it should buy from the DCHs.


### 4.4. A Selected DCH as a Seller

By selling power to the MCP, the utility function of the selected DCHk can be written as follows:(16)μdch,k=η⋅αk⋅pthin,k+βk⋅pthout,k,where αk and βk are binary decision variables (i.e., their values are 0 or 1), in which αk determines whether the MCP pays the DCH k for intercluster D2D multicast transmission or not and βk determines whether the MCP pays the DCH k for intracluster D2D multicast transmission or not. That is, if αk or βk is 1, the MCP pays the DCH k.As mentioned above, cellular multicast power only covers DCHs. Therefore, any DCH (e.g.,k), which is covered by the base station but has the most distance to the base station, must send the same content again to its intracluster members, and thus, the parameter βk needs to be set to 1. If there is still any DCH uncovered by the base station, the DCH k should perform intercluster D2D multicast as long as any uncovered DCH is located in its intercluster D2D multicast coverage area, where the parameter αk needs to be set to 1.The objective of the selected DCH is to determine the two optimal multicast power values to maximize its utility function, subject to the constraint thatη must be more than 1, i.e.,(17)maxαk,βk,pthin,k,pthout,kη⋅αk⋅pthin,k+βk⋅pthout,k,subject toη>1.


### 4.5. Stackelberg Equilibrium Analysis

From the previous sections, we can know that the MCP decides the price (i.e., the benefit coefficientη > 1) for buying the power, and then each DCH would set the amount as much as possible to increase its utility function. On the contrary, if the amount of the power from a DCH is too much, then the MCP would give up this DCH at the expense of increased base station transmission power. From formula (17), it is obvious that providing more power for D2D multicast services will bring more revenue to a DCH. However, once such a DCH is abandoned by the MCP, it will not get any benefit. Therefore, a DCH will not be greedy to increase investment. That is, there is a cap on the amount of power available for sale, since selling more power does not necessarily yield better returns.Through interaction and self-optimization, both the MCP and the DCHs will reach a stable response which neither one would deviate from. That is, a Stackelberg equilibrium point is obtained. Formally,psec,αk,βk,psein,k,pseout,kk∈Nd is a Stackelberg equilibrium point if and only if the following set of relations is satisfied:(18)μmcppsec≥μmcppthc,∀pthc∈pmin,pmax,μdch,kαk,βk,psein,k,pseout,k≥μdch,kαk,βk,pthin,k,pthout,k,pmin≤psec≤pmax,αk,βk∈0,1,μmcppsec≥0,μdch,kαk,βk,psein,k,pseout,k≥0.For a given application, the MCP can assume thatη, Nt, and rth are fixed. Also, each DCH (e.g., k) will report its two power values (e.g., pthin,k and pthout,k) to the MCP. Therefore, in (10), the MCP can assume that it only changes the values of φt, Nd, and pthc. To simplify the expression, we approximately convert the expression for pthc (i.e., formula (5)) as follows:(19)pthc=fpd,where d is the effective coverage distance of the base station when it adopts pthc as its transmission power and fp denotes the nonlinear increasing function with respect to d. Similarly, we approximately convert the expression for Nd (i.e., formulas (11) and (12)) as follows:(20)Nd=fNd,where fN denotes the linear decreasing function with respect to d. Also, we approximately convert the expression for φt (i.e., formula (13)) as follows:(21)φt=fφd,where fφ denotes the linear increasing function with respect to d. Therefore, formula (10) can approximately be written as follows:(22)μmcpd=Rth⋅fφdfpd+pthk⋅fNd,where Rth=Nt⋅rth and pthk=η⋅pthin,k+φout,k⋅pthout,k. From (22), we can observe that μmcp is a continuous function with respect to d. Moreover, the first-order and second-order derivatives in terms of formula (22) can be written as(23)μmcp′d=A−BC,A=Rth⋅fφ′d⋅fpd+pthk⋅fNd,B=Rth⋅fφd⋅fp′d−pthk⋅absfN′d,C=fpd+pthk⋅fNd2,(24)μmcp″d=D+2⋅E+F+G−H⋅I⋅J−C2,C=fpd+pthk⋅fNd2,D=Rth⋅fφd⋅fp″d⋅fpd+pthk⋅fNd2,E=Rth⋅fφ′d⋅pthk⋅fNd,F=Rth⋅fφd⋅pthk⋅absfN′d,G=Rth⋅fφ′d⋅fpd,H=Rth⋅fφd⋅fp′d,I=fpd+pthk⋅fNd,J=fp′d−pthk⋅absfN′d,where the difference between Rth⋅fφ′d⋅fpd and Rth⋅fφd⋅fp′d is very small since they have the same order of magnitude. Also, since pthk⋅absfN′d is approximated as a constant and fp′d is not a constant, we can make fp′d−pthk⋅absfN′d>0 by letting d take the value that is big enough. Based on the above analysis, the numerator in (24) is positive, while the denominator is negative. Therefore, we have μmcp″d<0, which means that μmcpd is a concave function with respect to d, and thus, there exists an optimal value in terms of d to maximize μmcpd.From (16), we can observe that μdch,k is a continuous function with respect to pthin,k and pthout,k, and thus, we can derive the corresponding first-order derivatives as follows:(25)∂μdch,kpthin,k,pthout,k∂pthin,k=η⋅αk,(26)∂μdch,kpthin,k,pthout,k∂pthout,k=η⋅βk.The value of (25) (or (26)) is always more than 0 when αk = 1 (or βk = 1), and thus, DCH k has an incentive to use its maximum transmission power to maximize its utility. However, as mentioned above, the value of αk (or βk) is determined by the MCP. If the MCP believes that any power value provided by DCH k is not conducive to the improvement of the D2D multicast service, it will set αk (or βk) as 0, and thus, DCH k will get nothing. Therefore, it is reasonable for DCH k to provide the power that would effectively help the MCP improve multicast services.


## 4.1. Overview of Basic Theory

It is necessary to expound the relevant basic theory before putting forward the concrete scheme. According to the Shannon capacity formula, when a DCH (e.g.,i) directly receives the multimedia content from the base station, the data rate per unit of spectrum for DCH i is expressed as follows:(1)ri=log21+γi,where ri is the data rate per unit of spectrum for DCH i, while γi is the signal-to-interference-plus-noise ratio (SINR) for DCH i denoted as follows:(2)γi=pc⋅giNi+Fcell,i,where pc is the transmission power for the base station, gi is the channel attenuation coefficient of the link from the base station to DCH i, Ni is the noise power perceived by DCH i, and Fcell,i is the interference power perceived by DCH i over a cellular channel and is estimated by the following formula:(3)Fcell,i=∑k∈Icell,igki⋅pk,where gki is the channel attenuation coefficient of the link from the cellular interfering source k to the interfered DCH i, pk is the transmission power of the interfering source k, and Icell,i is the set of cellular interfering sources of DCH i.Usually, the receiving bit error ratio (BER) for a DCH can reflect its QoE level. For example, when the BER value of a DCH is not more than the threshold (e.g., BEth) associated with a particular network application scenario, its QoE can be guaranteed. The corresponding SINR (e.g., γth) and data rate per unit of spectrum (e.g., rth) are estimated by the following formula:(4)γth=−2lnBEth,rth=log21+γth.Therefore, the base station only needs to take a transmission power to ensure that the DCH with the worst channel condition can obtain the data raterth. If the DCH i satisfies such a condition, the transmission power actually adopted by the base station should not be less than the result computed by the following equation, where pthc is the minimum transmission power for the base station to meet the QoE of the specified multicast receiving group:(5)pthc=Ni+Fcell,i⋅γthgi.Similarly, for an intercluster multicast transmitter DCHi, if the receiving DCH j has the worst channel condition among all the intercluster multicast receivers, the cell transmission power actually adopted by the D2D transmitter DCH i should not be less than the result computed by the following equation:(6)pthin,i=Nj+Fin,j⋅γthgij,where pthin,i is the minimum transmission power for the transmitter DCH i in an in-band D2D channel for intercluster multicast, which can meet the QoE of the specified multicast receiving group; gij is the channel attenuation coefficient of the link from DCH i to DCH j; Nj is the noise power perceived by DCH j; and Fin,j is the interference power perceived by DCH j over an in-band D2D channel, which is estimated by the following formula:(7)Fin,j=∑k∈Iin,jgkj⋅pk,where gkj is the channel attenuation coefficient of the link from the in-band D2D interfering source k to the interfered DCH j, pk is the transmission power of the in-band D2D interfering source k, and Iin,j is the set of in-band D2D interfering sources of DCH j.Also, for an intracluster multicast transmitter DCHi, if the MCU u has the worst channel condition among all the intracluster multicast receivers, the D2D transmission power actually adopted by the transmitter DCH i should not be less than the result computed by the following equation:(8)pthout,i=Nu+Fout,u⋅γthgiu,where pthout,i is the minimum transmission power for the transmitter DCH i in an out-band D2D channel for intracluster multicast, which can meet the QoE of the specified multicast receiving group; giu is the channel attenuation coefficient of the link from DCH i to MCU u; Nu is the noise power perceived by MCU u; and Fout,u is the interference power perceived by MCU u over an out-band D2D channel, which is estimated by the following formula:(9)Fout,u=∑k∈Iout,ugku⋅pk,where gku is the channel attenuation coefficient of the link from the out-band D2D interfering source k to the interfered MCU u, pk is the transmission power of the out-band D2D interfering source k, and Iout,u is the set of out-band D2D interfering sources of MCU u.


## 4.2. Utility Function Modeling

Similar to the work in [8], we also suppose that the MCP has the information of all the MCUs, including the channel gain (or channel attenuation) information and the location information. The utility function of the MCP can be written as follows:(10)μmcp=φt⋅Nt⋅rthη⋅pthc+∑k=1Ndη⋅pthin,k+φout,k⋅pthout,k,where μmcp is the utility function of the MCP, and its physical meaning is the successfully delivered data rate per used power; η denotes the benefit coefficient which the MCP gives the base station and each DCH, where the base station and each DCH will actually benefit when η is more than 1; Nd is the set of DCHs to which the MCP expects to provide D2D multicast services, while Nd is the number of members in Nd; Nt is the set of all MCUs that are expected to be served by the MCP, while Nt is the number of members in Nt; φt is the ratio of the number of MCUs that are successfully served by the MCP to the number of MCUs that are expected to be served; and φout,k is the ratio of the number of MCUs that are successfully served by DCH k to the number of MCUs that are expected to be served in the cluster with DCH k as its cluster head. Nd can be estimated by the following formula:(11)Nd=1−φc⋅Nc,where Nc is the set of all DCHs that are expected to be served by the MCP, while Nc is the number of members in Nc, and φc is the ratio of the number of DCHs that are successfully served by the MCP to the number of DCHs that are expected to be served, which is expressed as follows:(12)φc=Nc′Nc,where Nc′ is the set of all DCHs that are successfully served by the MCP, while Nc′ is the number of members in Nc′. The following formula can be used to compute the value of φt:(13)φt=Nt′Nt,where Nt′ is the set of all MCUs that are successfully served by the MCP, while Nt′ is the number of members in Nt′. The following formula can be used to compute the value of φout,k:(14)φout,k=Nout,k′Nout,k,where Nout,k′ is the set of all MCUs that are successfully served by DCH k, while Nout,k′ is the number of members in Nout,k′, and Nout,k is the set of all MCUs in the cluster with DCH k as its cluster head, while Nout,k is the number of members in Nout,k.Our objective in this paper is to maximize the utility function of the MCP defined in (10) while satisfying the QoE constraints. Thus, the optimization problem can be formulated as follows:(15)maxpthcφt⋅Nt⋅rthη⋅pthc+∑k=1Ndη⋅pthin,k+φout,k⋅pthout,k,subject topmin≤pthc≤pmax,where pmin and pmax denote the minimal and maximal transmit power for the base station, respectively. The optimization problem in (15) is to find the best value of pthc. Here, we firstly derive the optimal power by taking advantage of the Stackelberg game theory, where the game players are the MCP (i.e., the leader) and the DCHs (i.e., the followers). That is, the MCP will buy the transmission powers from the DCHs for the D2D multicast service and the DCHs are the sellers who earn reward by offering the transmission powers to the MCP for the purpose of enabling the D2D multicast service.


## 4.3. A Multimedia Content Provider as a Buyer

In order to maximize the utility function of the MCP, besides buying the multicast transmission service from the base station, the MCP may hire a set of DCHs to help transmit data both in an intracluster multicast manner and an intercluster multicast manner. Such a D2D multicast mode may have some benefits for the MCP, which are determined by the serving rate of the multimedia content dissemination system (i.e., the ratio of the number of MCUs that are successfully served by the MCP to the number of MCUs that are expected to be served). Here, we denote the gain asφt⋅Nt⋅rth.Also, besides paying the base station a multicast transmission service fee, the MCP should pay the DCHs a certain reward if it decides to use a set of DCHs to aid multicast content dissemination, which is denoted as∑k=1Ndη⋅pthin,k+φout,k⋅pthout,k. Thus, the utility of MCP for enabling the D2D multicast service can be shown in (10).The objective of the MCP is to ensure all the DCHs’ QoE in its serving area with the minimal power consumption, that is, for any given priceη, in order to maximize its utility shown in (15), how much it should buy from the base station and also how much it should buy from the DCHs.


## 4.4. A Selected DCH as a Seller

By selling power to the MCP, the utility function of the selected DCHk can be written as follows:(16)μdch,k=η⋅αk⋅pthin,k+βk⋅pthout,k,where αk and βk are binary decision variables (i.e., their values are 0 or 1), in which αk determines whether the MCP pays the DCH k for intercluster D2D multicast transmission or not and βk determines whether the MCP pays the DCH k for intracluster D2D multicast transmission or not. That is, if αk or βk is 1, the MCP pays the DCH k.As mentioned above, cellular multicast power only covers DCHs. Therefore, any DCH (e.g.,k), which is covered by the base station but has the most distance to the base station, must send the same content again to its intracluster members, and thus, the parameter βk needs to be set to 1. If there is still any DCH uncovered by the base station, the DCH k should perform intercluster D2D multicast as long as any uncovered DCH is located in its intercluster D2D multicast coverage area, where the parameter αk needs to be set to 1.The objective of the selected DCH is to determine the two optimal multicast power values to maximize its utility function, subject to the constraint thatη must be more than 1, i.e.,(17)maxαk,βk,pthin,k,pthout,kη⋅αk⋅pthin,k+βk⋅pthout,k,subject toη>1.


## 4.5. Stackelberg Equilibrium Analysis

From the previous sections, we can know that the MCP decides the price (i.e., the benefit coefficientη > 1) for buying the power, and then each DCH would set the amount as much as possible to increase its utility function. On the contrary, if the amount of the power from a DCH is too much, then the MCP would give up this DCH at the expense of increased base station transmission power. From formula (17), it is obvious that providing more power for D2D multicast services will bring more revenue to a DCH. However, once such a DCH is abandoned by the MCP, it will not get any benefit. Therefore, a DCH will not be greedy to increase investment. That is, there is a cap on the amount of power available for sale, since selling more power does not necessarily yield better returns.Through interaction and self-optimization, both the MCP and the DCHs will reach a stable response which neither one would deviate from. That is, a Stackelberg equilibrium point is obtained. Formally,psec,αk,βk,psein,k,pseout,kk∈Nd is a Stackelberg equilibrium point if and only if the following set of relations is satisfied:(18)μmcppsec≥μmcppthc,∀pthc∈pmin,pmax,μdch,kαk,βk,psein,k,pseout,k≥μdch,kαk,βk,pthin,k,pthout,k,pmin≤psec≤pmax,αk,βk∈0,1,μmcppsec≥0,μdch,kαk,βk,psein,k,pseout,k≥0.For a given application, the MCP can assume thatη, Nt, and rth are fixed. Also, each DCH (e.g., k) will report its two power values (e.g., pthin,k and pthout,k) to the MCP. Therefore, in (10), the MCP can assume that it only changes the values of φt, Nd, and pthc. To simplify the expression, we approximately convert the expression for pthc (i.e., formula (5)) as follows:(19)pthc=fpd,where d is the effective coverage distance of the base station when it adopts pthc as its transmission power and fp denotes the nonlinear increasing function with respect to d. Similarly, we approximately convert the expression for Nd (i.e., formulas (11) and (12)) as follows:(20)Nd=fNd,where fN denotes the linear decreasing function with respect to d. Also, we approximately convert the expression for φt (i.e., formula (13)) as follows:(21)φt=fφd,where fφ denotes the linear increasing function with respect to d. Therefore, formula (10) can approximately be written as follows:(22)μmcpd=Rth⋅fφdfpd+pthk⋅fNd,where Rth=Nt⋅rth and pthk=η⋅pthin,k+φout,k⋅pthout,k. From (22), we can observe that μmcp is a continuous function with respect to d. Moreover, the first-order and second-order derivatives in terms of formula (22) can be written as(23)μmcp′d=A−BC,A=Rth⋅fφ′d⋅fpd+pthk⋅fNd,B=Rth⋅fφd⋅fp′d−pthk⋅absfN′d,C=fpd+pthk⋅fNd2,(24)μmcp″d=D+2⋅E+F+G−H⋅I⋅J−C2,C=fpd+pthk⋅fNd2,D=Rth⋅fφd⋅fp″d⋅fpd+pthk⋅fNd2,E=Rth⋅fφ′d⋅pthk⋅fNd,F=Rth⋅fφd⋅pthk⋅absfN′d,G=Rth⋅fφ′d⋅fpd,H=Rth⋅fφd⋅fp′d,I=fpd+pthk⋅fNd,J=fp′d−pthk⋅absfN′d,where the difference between Rth⋅fφ′d⋅fpd and Rth⋅fφd⋅fp′d is very small since they have the same order of magnitude. Also, since pthk⋅absfN′d is approximated as a constant and fp′d is not a constant, we can make fp′d−pthk⋅absfN′d>0 by letting d take the value that is big enough. Based on the above analysis, the numerator in (24) is positive, while the denominator is negative. Therefore, we have μmcp″d<0, which means that μmcpd is a concave function with respect to d, and thus, there exists an optimal value in terms of d to maximize μmcpd.From (16), we can observe that μdch,k is a continuous function with respect to pthin,k and pthout,k, and thus, we can derive the corresponding first-order derivatives as follows:(25)∂μdch,kpthin,k,pthout,k∂pthin,k=η⋅αk,(26)∂μdch,kpthin,k,pthout,k∂pthout,k=η⋅βk.The value of (25) (or (26)) is always more than 0 when αk = 1 (or βk = 1), and thus, DCH k has an incentive to use its maximum transmission power to maximize its utility. However, as mentioned above, the value of αk (or βk) is determined by the MCP. If the MCP believes that any power value provided by DCH k is not conducive to the improvement of the D2D multicast service, it will set αk (or βk) as 0, and thus, DCH k will get nothing. Therefore, it is reasonable for DCH k to provide the power that would effectively help the MCP improve multicast services.


## 5. Algorithm Description for Formulated Problem

### 5.1. TheK-Means-Based Clustering Algorithm

As mentioned before, there are inevitably some weak coverage areas in cellular networks, in which a sudden and unpredictable traffic demand is also possible to occur due to the unplanned appearance of the large number of mobile devices. When this happens, cellular spectrum resources will become scarcer in such weak coverage areas. Also, energy consumption increases sharply, since a large number of mobile devices away from access points require higher transmission power to ensure receiving quality. Especially for high-capacity multimedia content dissemination services, a long-distance transmission is a huge obstacle to the improvement of energy efficiency. Based on the idea ofK-means algorithm, a new clustering algorithm is proposed as a possible solution, where the determination of K is critical for the improvement of energy efficiency.On the one hand, ifK is large enough, the number of clusters is large enough, and thus, it is beneficial to shorten the average transmission distance. On the other hand, if more clusters are formed, more cluster heads are needed to undertake the rebroadcast task and thus may offset the benefit in terms of energy efficiency from a short-distance transmission. Relatively accurate prediction of the K value may depend on big data analysis, while this paper only explores the impact of different K on energy efficiency. The details of the proposed K-means-based D2D clustering algorithm are shown in Algorithm 1.Algorithm 1:The K-means-based D2D clustering algorithm.
Run at the MCP
Input:K, T, and the MCU set Nt=x1,y1,…,xT,yT
Output: the DCHset Nk=x1,y1,…,xK,yK and the assignment relation matrix of MCUs MTK
(1)
InitializeNk by randomly selecting K MCUs from Nt
(2)
Repeat
(3)
Initialize each membermtk in the matrix MTK as 0
(4)
Fort = 1 to Tdo
(5)
If k=argmaxi∈1,…,Kgit thenmtk = 1 End if
(6)
End for
(7)
Fork = 1 to Kdo
(8)
xk=∑t=1Txt⋅mtk/∑t=1Tmtk and yk=∑t=1Tyt⋅mtk/∑t=1Tmtk
(9)
End for
(10)
Until the members of Nk hardly change
(11)
Fork = 1 to Kdo
(12)
Initializedcluser as “0”
(13)
Fort = 1 to Tdo
(14)
If (mtk == 1 and dtk > dcluster) thendcluster = dtk End if
(15)
End for
(16)
Initializeτ as “0”
(17)
Fort = 1 to Tdo
(18)
Computeτt according to formula (27)
(19)
If (mtk == 1 and dtk < x% · dcluster and τ < τt) then {τ = τt; z = t} End if
(20)
End for
(21)
xk = xz and yk = yz
(22)
End forThe goal of Algorithm1 is to lay a network foundation for the MCP to customize the transmission scheme for energy-efficient multimedia content dissemination, so it should be dutifully executed by the MCP. Also, the MCP can be relatively easy to obtain the input parameters (i.e., the number of clusters K, the number of served MCUs T, and the location information set of served MCUs Nt) of this algorithm. Through Algorithm 1, the position coordinates of K cluster heads and the association relation of T MCUs with K cluster heads can be easily obtained, which are stored in the DCH set Nk=x1,y1,…,xK,yK and the assignment relation matrix of MCUs MTK, respectively.Different from the classicalK-means clustering metric, we set the channel gain (e.g., the channel gain git from i to t) as a cluster metric so that each MCU is associated with a cluster head from which it gets the best transmission service.Through the loop body in lines 2 to 10 of Algorithm1, the desired coordinate points for K cluster heads will be obtained, but they do not necessarily correspond to the actual coordinates of MCUs. The execution of lines 11∼22 is needed for making up for this deficiency. A desired MCU acting as a DCH should both be closer to the desired coordinate point and have more energy reserve. To achieve a better trade-off between the two, for each desired coordinate point (for convenience, let us call it a reference point), we take this reference point as the center to form a circular region with x% of the clustering radius as its radius, where the MCU with the best given measurement value is selected as the D2D cluster head (i.e., DCH). If the parameter x is smaller, the deviation between DCH and the corresponding reference point is smaller. Also, the smaller parameter x leads to the smaller number of DCH candidates, and thus, it is less likely to get a desired DCH. On the contrary, if the parameter x is larger, the opposite case may occur. The given measurement value mentioned above can be estimated by the following formula:(27)τi=eipi,where τi, ei, and pi are the continuous multicast capability, initial energy reserve level, and multicast transmission power of the candidate DCH i, respectively. The value of pi should ensure that the MCU with the worst channel condition in the same cluster can obtain multicast services that meet the QoE threshold from the candidate DCH i.Although formula (8) can be used to estimate the value of pi, the premise is that the cochannel interference value should be firstly obtained through formula (9). To avoid creating too much complexity for the DCH election, based on the wireless propagation model in [23], we derive the following formula to estimate the value of pi:(28)pi=4π2⋅L⋅γth⋅Ni⋅di2Gt⋅Gr⋅λ2,di<dcrossover,γth⋅Ni⋅di4Gt⋅Gr⋅ht2⋅hr2,di≥dcrossover,where Gt and ht are the gain and the height from the ground of the transmitting antenna, respectively; Gr and hr are the gain and the height from the ground of the receiving antenna, respectively; L is the system loss coefficient which is not related to propagation, while λ is the wavelength of the signal carrier; Ni is the average noise power in the ith cluster; di is the distance between the candidate DCH i and the MCU that is further away from the candidate DCH i in the ith cluster; and dcrossover is the crossover distance, which is computed by the following formula as described in [38]:(29)dcrossover=4πLhthrλ.


### 5.2. The Solving Method for D2D Multicast Transmission Power

After clustering, we need to determine the multicast transmission power of each DCH. In this paper, the WiFi channels in the 2.4 G frequency band are used by DCHs to perform intracluster D2D multicast transmission services, where there are only 3 non-overlapping channels, and thus, the cochannel is inevitable. Moreover, from formulas (8) and (9), we also see that the multicast transmission power of each DCH and those of its adjacent DCHs will affect each other. Therefore, we cannot directly solve it by simply using formulas (8) and (9).For an individual DCH, it tends to minimize its cost due to its selfish and rational behavior. At the same time, it is inevitable to be affected by the behaviors of the other competitive individuals. Therefore, it is a sensible approach to design an iterative algorithm to solve this problem step by step. As described in Algorithm2, firstly, each DCH (e.g., k) assumes that there is no cochannel interference (lines 2-3) and then obtains the multicast transmission power according to formula (8) (line 4), which should be of the minimum cost for meeting QoE for all the MCUs in the intracluster.Algorithm 2:The iterative algorithm for intracluster D2D multicast transmission powers.
Run at any DCH (e.g.,k)
Input: the MCU with the worst channel condition (e.g.,u), Nu, γth, gku, ε, and pmax′k
Output:pthout,k or pmax′k
(1)
Initializepout,k as “0”
(2)
Initialize D2D multicast transmission powers of the members inIout,k as “0”
(3)
ComputeFout,u according to formula (9)
(4)
Computepthout,k according to formula (8)
(5)
If pthout,k−pout,k/pthout,k>ε and pthout,k<pmax′k then
(6)
Notify the members inIout,k of pthout,k at its maximum transmission power pmax′k
(7)
pout,k=pthout,k
(8)
Else if pthout,k≥pmaxk′ then return pmax′k Else return pthout,k End if
(9)
End if
(10)
Set the timertΔ as Δ
(11)
while the timer tΔ does not expire do
(12)
If receive D2D multicast transmission powers from the members in Iout,k then
(13)
Update D2D multicast transmission powers of the members inIout,k
(14)
End if
(15)
End while
(16)
Go to 3Then, the MCUk will notify the other MCHs of its cost (i.e., multicast transmission power) (lines 6-7), and also it receives the multicast transmission powers of the other MCHs (lines 12–14). After this, the MCU k will find that it should increase its cost to meet QoE for all the MCUs in the intracluster since the cochannel interference cannot be ignored.Moreover, from formulas (8) and (9), we know that the cost function of each DCH is a nondecreasing function, where it will theoretically reach the upper limit that each DCH can pay, namely, the maximum transmission power. Therefore, a reasonable termination condition (line 5, where ε is a very small positive number) is used to avoid the cost of each DCH reaching its upper bound as much as possible.Different from out-band D2D multicast communication in the intracluster, D2D multicast in the intercluster (or among the DCHs) will reuse the in-band frequency band. Therefore, the cochannel interference is relatively easy to control. For example, when the base station adopts a given downlink cellular channel for multicast transmission, any receiving DCH can execute multicast forward with the corresponding uplink cellular channel.For the same multicast content dissemination, this pair of cellular channels will be interleaved on the relaying path from the base station to the final target DCH, which is not used by other multicast content distribution services, and thus, the cochannel interference will not occur. Therefore, in this paper, we will ignore the cochannel interference in formulas (5) and (6) to simplify the calculation process of cellular multicast power and intercluster D2D multicast power.On the basis of this section, the MCP wants to search for a desired transmission scheme for multicast content dissemination. Firstly, the MCP offers a real-time power price to all the DCHs and then procures powers from the appropriate DCHs (e.g., the DCHs offering the best energy efficiency under the constraint of QoE) and builds the energy-efficient multicast content dissemination scheme.Although each DCH wants to provide as much power as possible to earn more revenue, it must consider the payment costs that the MCP can bear to avoid being eliminated by the MCP. The Stackelberg game model [39] is applicable in the above scenario, in which the MCP acts as the leader and the DCHs act as the followers. Firstly, the MCP acts after considering the behaviors of the DCHs, and then the DCHs act in response to the MCP’s action.


### 5.3. The Leader Decision Process in the Stackelberg Game

The description of pseudocode for the leader decision process is shown in Algorithm3, where the goal is to determine the coverage which the base station’s multicast power should reach and the coverage of multicast services that the DCH is responsible for. In Algorithm 3, the MCP will broadcast η, Nk, and MTK to all the DCHs after invoking Algorithm 1 to get the DCH set Nk and the assignment relation matrix of MCUs MTK (lines 1-2). Then, the distances from the base station to all the DCHs and the corresponding transmission powers are calculated and then stored to the set Dk which is initialized as empty in advance (lines 3–8), which will be used later.Algorithm 3:The base station multicast power assignment and selection of D2D multicast relays.
Run at the MCP
Input:dmin, dmax, Δd, and η
Output:psec,αk,βkk∈1,…,K
(1)
Invoke Algorithm1 to get Nk and MTK
(2)
Notifyη, Nk, and MTK to all the DCHs
(3)
Initialize theset Dk as “empty”
(4)
For each member (xk, yk) of Nk do
(5)
lk=x0−xk2+y0−yk2 //x0,y0 is the coordinates of BS, and lk is the distance between BS and DCH k
(6)
Computepthc,k according to formula (5) by using gk as the input //gk is the channel gain from BS to DCH k
(7)
Add (lk,pthc,k) to Dk
(8)
End for
(9)
If receive psein,kpseout,kk∈1,…,K from all the DCHs then
(10)
Initializeμ as “0”
(11)
For (d = dmin; d < dmax; d = d + Δd) do //Δd is the incremental step of the coverage radius for BS
(12)
Initializepsein and pseout as “0” respectively
(13)
For each member (lk,pthc,k) of Dk do
(14)
Ifd < lk + Δdthen pseout=pseout+pseout,k End if
(15)
Ifd < lk + Δd and dmax−lk<lthout,k then psein=psein+psein,k End if
(16)
End for
(17)
Broadcast test packet atpthc,k
(18)
Calculate the related parameters (e.g.,φt, φc, and φout,k) according to feedback of test packet
(19)
Computeμmcp according to formula (10)
(20)
Ifμ < μmcp then {μ = μmcp; dse = d} End if
(21)
End for
(22)
For each member (lk,pthc,k) of Dk do
(23)
Ifdse < lk + Δd then βk = 1 and send it to DCH kEnd if
(24)
Ifdse < lk + Δd and dmax−lk<lthout,k thenαk = 1 and send it to DCH kEnd if
(25)
End for
(26)
End ifAfter receiving the payment promised by the MCP, each DCH will return a willingly provided intracluster D2D multicast power and an intercluster D2D multicast power. Therefore, after receiving the feedbacks from all the DCHs, the MCP will start the process of searching the multicast transmission scheme with optimal energy efficiency (lines 9–26), where the base station adopts a search mode which gradually increases the coverage of cellular multicast transmission (lines 11–21). At each step of the search process, the MCP must figure out what it should pay the selected DCHs (lines 13–16), since they are willing to assist the base station in the multicast content dissemination. Also, to detect the effect of each step, the base station will broadcast the test packet at the multicast power determined by this step (line 17). After the feedback results are obtained, the utility value of the MCP is calculated according to formula (10). If the utility is improved, the result is for later use (line 20).After the search process is completed, the MCP will determine the resulting DCHs based on the recorded results (lines 22–25). That is, the MCP will set the mark variableβk of each selected DCH (e.g., k) as 1 if it wants to pay for the intracluster D2D multicast service and then send to each selected DCH (line 23). Also, the MCP will set the mark variable αk of each selected DCH (e.g., k) as 1 if it wants to pay for the intercluster D2D multicast service and then send to each selected DCH (line 24).


### 5.4. The Follower Decision Process in the Stackelberg Game

The description of pseudocode for the follower decision process is shown in Algorithm4, where the goal is to maximize multicast power while avoiding elimination by the MCP as much as possible. Therefore, after receiving η, Nk, and MTK from the MCP via the base station (line 1), a DCH (e.g., k) firstly calculates the distance from the base station to it and the corresponding transmission power (lines 3-4), the distances from the base station to the other DCHs and the corresponding transmission powers (lines 6-7), and the distances from it to the other DCHs and the corresponding transmission powers (lines 8-9). Then, the DCH k stores the intercluster D2D multicast powers (that meet the given conditions, i.e., pthin,ki≤pmaxk and pthc,k<pthc,i) (line 10) in the set Ek which is initialized as empty in advance (line 2), which will be used later.Algorithm 4:The decision for D2D multicast relaying powers.
Run at any DCH (e.g.,k)
Input: null
Output:psein,kandpseout,k
(1)
If receive η, Nk, and MTK from the MCP via the base station then
(2)
Initialize theset Ek as “empty”
(3)
lk=x0−xk2+y0−yk2
(4)
Computepthc,k according to formula (5) through using gk as the input
(5)
For each member xi,yi of Nk/xk,yk do
(6)
li=x0−xi2+y0−yi2
(7)
Computepthc,i according to formula (5) through using gi as the input
(8)
lki=xk−xi2+yk−yi2
(9)
Computepthin,ki according to formula (6) through using gki as the input parameter
(10)
If pthin,ki≤pmaxk and pthc,k<pthc,i then add pthin,ki to Ek End if //pmaxk is the maximum power of the DCH k
(11)
End for
(12)
Arrange the members of theset Ek in an ascending order and then take jth transmission power (e.g., pthin,kj) //usually j is 3, if Ek is less than j, the maximum value in Ek is taken
(13)
Invoke Algorithm2 to get pthout,k or pmax′k
(14)
psein,k=pthin,kj and pseout,k=pthout,k or pmax′k
(15)
Send (psein,k,pseout,k) to the MCP via the base station
(16)
If the received αk or βk is 1 then reap the benefits
(17)
Else think about adjustment for (psein,k,pseout,k)
(18)
End if
(19)
End ifThe conditions in line 10 are to ensure that the intercluster D2D multicast links are always pointing away from the base station. Moreover, the DCHk only ensures that its multicast transmission meets the receiving quality of the several DCHs closest to it (line 12). After invoking Algorithm 2 to get the intracluster D2D multicast power, the DCH k sends it to the MCP via the base station along with the intercluster D2D multicast power (lines 14-15). The DCH k is selected as the transmitter of the intercluster D2D multicast service if “αk = 1” is received from the MCP via the base station, while it is selected as the transmitter of the intracluster D2D multicast service if “βk = 1” is received from the MCP via the base station (line 16). Otherwise, the DCH k will consider readjusting intracluster or intercluster D2D multicast power (line 17).


## 5.1. TheK-Means-Based Clustering Algorithm

As mentioned before, there are inevitably some weak coverage areas in cellular networks, in which a sudden and unpredictable traffic demand is also possible to occur due to the unplanned appearance of the large number of mobile devices. When this happens, cellular spectrum resources will become scarcer in such weak coverage areas. Also, energy consumption increases sharply, since a large number of mobile devices away from access points require higher transmission power to ensure receiving quality. Especially for high-capacity multimedia content dissemination services, a long-distance transmission is a huge obstacle to the improvement of energy efficiency. Based on the idea ofK-means algorithm, a new clustering algorithm is proposed as a possible solution, where the determination of K is critical for the improvement of energy efficiency.On the one hand, ifK is large enough, the number of clusters is large enough, and thus, it is beneficial to shorten the average transmission distance. On the other hand, if more clusters are formed, more cluster heads are needed to undertake the rebroadcast task and thus may offset the benefit in terms of energy efficiency from a short-distance transmission. Relatively accurate prediction of the K value may depend on big data analysis, while this paper only explores the impact of different K on energy efficiency. The details of the proposed K-means-based D2D clustering algorithm are shown in Algorithm 1.Algorithm 1:The K-means-based D2D clustering algorithm.
Run at the MCP
Input:K, T, and the MCU set Nt=x1,y1,…,xT,yT
Output: the DCHset Nk=x1,y1,…,xK,yK and the assignment relation matrix of MCUs MTK
(1)
InitializeNk by randomly selecting K MCUs from Nt
(2)
Repeat
(3)
Initialize each membermtk in the matrix MTK as 0
(4)
Fort = 1 to Tdo
(5)
If k=argmaxi∈1,…,Kgit thenmtk = 1 End if
(6)
End for
(7)
Fork = 1 to Kdo
(8)
xk=∑t=1Txt⋅mtk/∑t=1Tmtk and yk=∑t=1Tyt⋅mtk/∑t=1Tmtk
(9)
End for
(10)
Until the members of Nk hardly change
(11)
Fork = 1 to Kdo
(12)
Initializedcluser as “0”
(13)
Fort = 1 to Tdo
(14)
If (mtk == 1 and dtk > dcluster) thendcluster = dtk End if
(15)
End for
(16)
Initializeτ as “0”
(17)
Fort = 1 to Tdo
(18)
Computeτt according to formula (27)
(19)
If (mtk == 1 and dtk < x% · dcluster and τ < τt) then {τ = τt; z = t} End if
(20)
End for
(21)
xk = xz and yk = yz
(22)
End forThe goal of Algorithm1 is to lay a network foundation for the MCP to customize the transmission scheme for energy-efficient multimedia content dissemination, so it should be dutifully executed by the MCP. Also, the MCP can be relatively easy to obtain the input parameters (i.e., the number of clusters K, the number of served MCUs T, and the location information set of served MCUs Nt) of this algorithm. Through Algorithm 1, the position coordinates of K cluster heads and the association relation of T MCUs with K cluster heads can be easily obtained, which are stored in the DCH set Nk=x1,y1,…,xK,yK and the assignment relation matrix of MCUs MTK, respectively.Different from the classicalK-means clustering metric, we set the channel gain (e.g., the channel gain git from i to t) as a cluster metric so that each MCU is associated with a cluster head from which it gets the best transmission service.Through the loop body in lines 2 to 10 of Algorithm1, the desired coordinate points for K cluster heads will be obtained, but they do not necessarily correspond to the actual coordinates of MCUs. The execution of lines 11∼22 is needed for making up for this deficiency. A desired MCU acting as a DCH should both be closer to the desired coordinate point and have more energy reserve. To achieve a better trade-off between the two, for each desired coordinate point (for convenience, let us call it a reference point), we take this reference point as the center to form a circular region with x% of the clustering radius as its radius, where the MCU with the best given measurement value is selected as the D2D cluster head (i.e., DCH). If the parameter x is smaller, the deviation between DCH and the corresponding reference point is smaller. Also, the smaller parameter x leads to the smaller number of DCH candidates, and thus, it is less likely to get a desired DCH. On the contrary, if the parameter x is larger, the opposite case may occur. The given measurement value mentioned above can be estimated by the following formula:(27)τi=eipi,where τi, ei, and pi are the continuous multicast capability, initial energy reserve level, and multicast transmission power of the candidate DCH i, respectively. The value of pi should ensure that the MCU with the worst channel condition in the same cluster can obtain multicast services that meet the QoE threshold from the candidate DCH i.Although formula (8) can be used to estimate the value of pi, the premise is that the cochannel interference value should be firstly obtained through formula (9). To avoid creating too much complexity for the DCH election, based on the wireless propagation model in [23], we derive the following formula to estimate the value of pi:(28)pi=4π2⋅L⋅γth⋅Ni⋅di2Gt⋅Gr⋅λ2,di<dcrossover,γth⋅Ni⋅di4Gt⋅Gr⋅ht2⋅hr2,di≥dcrossover,where Gt and ht are the gain and the height from the ground of the transmitting antenna, respectively; Gr and hr are the gain and the height from the ground of the receiving antenna, respectively; L is the system loss coefficient which is not related to propagation, while λ is the wavelength of the signal carrier; Ni is the average noise power in the ith cluster; di is the distance between the candidate DCH i and the MCU that is further away from the candidate DCH i in the ith cluster; and dcrossover is the crossover distance, which is computed by the following formula as described in [38]:(29)dcrossover=4πLhthrλ.


## 5.2. The Solving Method for D2D Multicast Transmission Power

After clustering, we need to determine the multicast transmission power of each DCH. In this paper, the WiFi channels in the 2.4 G frequency band are used by DCHs to perform intracluster D2D multicast transmission services, where there are only 3 non-overlapping channels, and thus, the cochannel is inevitable. Moreover, from formulas (8) and (9), we also see that the multicast transmission power of each DCH and those of its adjacent DCHs will affect each other. Therefore, we cannot directly solve it by simply using formulas (8) and (9).For an individual DCH, it tends to minimize its cost due to its selfish and rational behavior. At the same time, it is inevitable to be affected by the behaviors of the other competitive individuals. Therefore, it is a sensible approach to design an iterative algorithm to solve this problem step by step. As described in Algorithm2, firstly, each DCH (e.g., k) assumes that there is no cochannel interference (lines 2-3) and then obtains the multicast transmission power according to formula (8) (line 4), which should be of the minimum cost for meeting QoE for all the MCUs in the intracluster.Algorithm 2:The iterative algorithm for intracluster D2D multicast transmission powers.
Run at any DCH (e.g.,k)
Input: the MCU with the worst channel condition (e.g.,u), Nu, γth, gku, ε, and pmax′k
Output:pthout,k or pmax′k
(1)
Initializepout,k as “0”
(2)
Initialize D2D multicast transmission powers of the members inIout,k as “0”
(3)
ComputeFout,u according to formula (9)
(4)
Computepthout,k according to formula (8)
(5)
If pthout,k−pout,k/pthout,k>ε and pthout,k<pmax′k then
(6)
Notify the members inIout,k of pthout,k at its maximum transmission power pmax′k
(7)
pout,k=pthout,k
(8)
Else if pthout,k≥pmaxk′ then return pmax′k Else return pthout,k End if
(9)
End if
(10)
Set the timertΔ as Δ
(11)
while the timer tΔ does not expire do
(12)
If receive D2D multicast transmission powers from the members in Iout,k then
(13)
Update D2D multicast transmission powers of the members inIout,k
(14)
End if
(15)
End while
(16)
Go to 3Then, the MCUk will notify the other MCHs of its cost (i.e., multicast transmission power) (lines 6-7), and also it receives the multicast transmission powers of the other MCHs (lines 12–14). After this, the MCU k will find that it should increase its cost to meet QoE for all the MCUs in the intracluster since the cochannel interference cannot be ignored.Moreover, from formulas (8) and (9), we know that the cost function of each DCH is a nondecreasing function, where it will theoretically reach the upper limit that each DCH can pay, namely, the maximum transmission power. Therefore, a reasonable termination condition (line 5, where ε is a very small positive number) is used to avoid the cost of each DCH reaching its upper bound as much as possible.Different from out-band D2D multicast communication in the intracluster, D2D multicast in the intercluster (or among the DCHs) will reuse the in-band frequency band. Therefore, the cochannel interference is relatively easy to control. For example, when the base station adopts a given downlink cellular channel for multicast transmission, any receiving DCH can execute multicast forward with the corresponding uplink cellular channel.For the same multicast content dissemination, this pair of cellular channels will be interleaved on the relaying path from the base station to the final target DCH, which is not used by other multicast content distribution services, and thus, the cochannel interference will not occur. Therefore, in this paper, we will ignore the cochannel interference in formulas (5) and (6) to simplify the calculation process of cellular multicast power and intercluster D2D multicast power.On the basis of this section, the MCP wants to search for a desired transmission scheme for multicast content dissemination. Firstly, the MCP offers a real-time power price to all the DCHs and then procures powers from the appropriate DCHs (e.g., the DCHs offering the best energy efficiency under the constraint of QoE) and builds the energy-efficient multicast content dissemination scheme.Although each DCH wants to provide as much power as possible to earn more revenue, it must consider the payment costs that the MCP can bear to avoid being eliminated by the MCP. The Stackelberg game model [39] is applicable in the above scenario, in which the MCP acts as the leader and the DCHs act as the followers. Firstly, the MCP acts after considering the behaviors of the DCHs, and then the DCHs act in response to the MCP’s action.


## 5.3. The Leader Decision Process in the Stackelberg Game

The description of pseudocode for the leader decision process is shown in Algorithm3, where the goal is to determine the coverage which the base station’s multicast power should reach and the coverage of multicast services that the DCH is responsible for. In Algorithm 3, the MCP will broadcast η, Nk, and MTK to all the DCHs after invoking Algorithm 1 to get the DCH set Nk and the assignment relation matrix of MCUs MTK (lines 1-2). Then, the distances from the base station to all the DCHs and the corresponding transmission powers are calculated and then stored to the set Dk which is initialized as empty in advance (lines 3–8), which will be used later.Algorithm 3:The base station multicast power assignment and selection of D2D multicast relays.
Run at the MCP
Input:dmin, dmax, Δd, and η
Output:psec,αk,βkk∈1,…,K
(1)
Invoke Algorithm1 to get Nk and MTK
(2)
Notifyη, Nk, and MTK to all the DCHs
(3)
Initialize theset Dk as “empty”
(4)
For each member (xk, yk) of Nk do
(5)
lk=x0−xk2+y0−yk2 //x0,y0 is the coordinates of BS, and lk is the distance between BS and DCH k
(6)
Computepthc,k according to formula (5) by using gk as the input //gk is the channel gain from BS to DCH k
(7)
Add (lk,pthc,k) to Dk
(8)
End for
(9)
If receive psein,kpseout,kk∈1,…,K from all the DCHs then
(10)
Initializeμ as “0”
(11)
For (d = dmin; d < dmax; d = d + Δd) do //Δd is the incremental step of the coverage radius for BS
(12)
Initializepsein and pseout as “0” respectively
(13)
For each member (lk,pthc,k) of Dk do
(14)
Ifd < lk + Δdthen pseout=pseout+pseout,k End if
(15)
Ifd < lk + Δd and dmax−lk<lthout,k then psein=psein+psein,k End if
(16)
End for
(17)
Broadcast test packet atpthc,k
(18)
Calculate the related parameters (e.g.,φt, φc, and φout,k) according to feedback of test packet
(19)
Computeμmcp according to formula (10)
(20)
Ifμ < μmcp then {μ = μmcp; dse = d} End if
(21)
End for
(22)
For each member (lk,pthc,k) of Dk do
(23)
Ifdse < lk + Δd then βk = 1 and send it to DCH kEnd if
(24)
Ifdse < lk + Δd and dmax−lk<lthout,k thenαk = 1 and send it to DCH kEnd if
(25)
End for
(26)
End ifAfter receiving the payment promised by the MCP, each DCH will return a willingly provided intracluster D2D multicast power and an intercluster D2D multicast power. Therefore, after receiving the feedbacks from all the DCHs, the MCP will start the process of searching the multicast transmission scheme with optimal energy efficiency (lines 9–26), where the base station adopts a search mode which gradually increases the coverage of cellular multicast transmission (lines 11–21). At each step of the search process, the MCP must figure out what it should pay the selected DCHs (lines 13–16), since they are willing to assist the base station in the multicast content dissemination. Also, to detect the effect of each step, the base station will broadcast the test packet at the multicast power determined by this step (line 17). After the feedback results are obtained, the utility value of the MCP is calculated according to formula (10). If the utility is improved, the result is for later use (line 20).After the search process is completed, the MCP will determine the resulting DCHs based on the recorded results (lines 22–25). That is, the MCP will set the mark variableβk of each selected DCH (e.g., k) as 1 if it wants to pay for the intracluster D2D multicast service and then send to each selected DCH (line 23). Also, the MCP will set the mark variable αk of each selected DCH (e.g., k) as 1 if it wants to pay for the intercluster D2D multicast service and then send to each selected DCH (line 24).


## 5.4. The Follower Decision Process in the Stackelberg Game

The description of pseudocode for the follower decision process is shown in Algorithm4, where the goal is to maximize multicast power while avoiding elimination by the MCP as much as possible. Therefore, after receiving η, Nk, and MTK from the MCP via the base station (line 1), a DCH (e.g., k) firstly calculates the distance from the base station to it and the corresponding transmission power (lines 3-4), the distances from the base station to the other DCHs and the corresponding transmission powers (lines 6-7), and the distances from it to the other DCHs and the corresponding transmission powers (lines 8-9). Then, the DCH k stores the intercluster D2D multicast powers (that meet the given conditions, i.e., pthin,ki≤pmaxk and pthc,k<pthc,i) (line 10) in the set Ek which is initialized as empty in advance (line 2), which will be used later.Algorithm 4:The decision for D2D multicast relaying powers.
Run at any DCH (e.g.,k)
Input: null
Output:psein,kandpseout,k
(1)
If receive η, Nk, and MTK from the MCP via the base station then
(2)
Initialize theset Ek as “empty”
(3)
lk=x0−xk2+y0−yk2
(4)
Computepthc,k according to formula (5) through using gk as the input
(5)
For each member xi,yi of Nk/xk,yk do
(6)
li=x0−xi2+y0−yi2
(7)
Computepthc,i according to formula (5) through using gi as the input
(8)
lki=xk−xi2+yk−yi2
(9)
Computepthin,ki according to formula (6) through using gki as the input parameter
(10)
If pthin,ki≤pmaxk and pthc,k<pthc,i then add pthin,ki to Ek End if //pmaxk is the maximum power of the DCH k
(11)
End for
(12)
Arrange the members of theset Ek in an ascending order and then take jth transmission power (e.g., pthin,kj) //usually j is 3, if Ek is less than j, the maximum value in Ek is taken
(13)
Invoke Algorithm2 to get pthout,k or pmax′k
(14)
psein,k=pthin,kj and pseout,k=pthout,k or pmax′k
(15)
Send (psein,k,pseout,k) to the MCP via the base station
(16)
If the received αk or βk is 1 then reap the benefits
(17)
Else think about adjustment for (psein,k,pseout,k)
(18)
End if
(19)
End ifThe conditions in line 10 are to ensure that the intercluster D2D multicast links are always pointing away from the base station. Moreover, the DCHk only ensures that its multicast transmission meets the receiving quality of the several DCHs closest to it (line 12). After invoking Algorithm 2 to get the intracluster D2D multicast power, the DCH k sends it to the MCP via the base station along with the intercluster D2D multicast power (lines 14-15). The DCH k is selected as the transmitter of the intercluster D2D multicast service if “αk = 1” is received from the MCP via the base station, while it is selected as the transmitter of the intracluster D2D multicast service if “βk = 1” is received from the MCP via the base station (line 16). Otherwise, the DCH k will consider readjusting intracluster or intercluster D2D multicast power (line 17).


## 6. Performance Evaluation

### 6.1. Simulation Metrics and Deployment Settings

We define the simulation metrics from the perspective of a multicast receiver as follows:(1)
Multicast spectrum efficiency: it is the data rate achieved by a multicast receiver per unit of spectrum resource. For a given multicast content dissemination service, multicast spectrum efficiency depends on the BER threshold that ensures a user’s QoE, which is usually estimated according to formula (4). If resources are insufficient to guarantee a user’s QoE, the actual value can be estimated by formulas (1)–(3). Average multicast spectrum efficiency is the average value of all the multicast receivers’ multicast spectrum efficiency values.(2)
Multicast energy efficiency: it is the ratio of a multicast receiver’s multicast spectrum efficiency to the corresponding multicast source’s transmission power. Average multicast energy efficiency is the average value of all the multicast receivers’ multicast energy efficiency values.(3)
Continuous multicast service time: it refers specifically to the amount of time during which a multicast source continues to disseminate multimedia content, which can be estimated according to formula (27). Average continuous multicast service time is the average value of all the multicast sources’ continuous multicast service time values.In our simulations, a single macro cell scenario is considered, in which many MCUs are randomly located in the circular area with a radius of 400 m and the macro base station is situated at its center. We compare the impact of different numbers of clustersK on the built multicast transmission scheme in terms of the above three metrics and use the OMNeT++ 4.1 network simulator [40] to carry out the simulation experiments. Unless otherwise stated, the common simulation parameters are listed in Table 1.Table 1
Simulation parameters.
Description
Parameter
Value
Multicast sending antenna gain
G
t
1
Multicast receiving antenna gain
G
r
1
Multicast sending antenna height
h
t
1 m
Multicast receiving antenna height
h
r
1 m
Maximum multicast power for MBS
p
max
m
10 W
Maximum multicast power for DCHs
p
max
k
For any DCHk, pmaxk is set as 100 mW
Carrier signal wavelength for intracluster D2D
λ
0.1224 m
System loss factor for intracluster D2D
L
1
Crossover distance for intracluster D2D
d
crossover
103 m
Path loss exponent for intracluster D2D
α
For any multicast radiusdi, α = 2 when di < dcrossover; α = 4 when di ≥ dcrossover
Initial battery capacity
e
i
For any DCHi, ei is distributed randomly between 500 J and 2000 J
Benefit coefficient
η
1.2


### 6.2. Simulation Results and Analysis

Firstly, we explore the variation trend of multicast transmission performance with the number of MCUs in the fixed area. In this group of simulations, the noise power is set to 1E − 11 (i.e., 10−11 W), while the BER threshold of the receiving end is set to 1E − 8 (i.e., 10−8). When the number of MCUs is changed from 1200 to 2000 with a step of 200, the three types of performance metrics of the built multicast transmission scheme are shown in Figures 3(a)–3(c), respectively.Figure 3
The variation trend of multicast transmission performance with the number of MCUs in the fixed area. (a) Average spectrum efficiency versus the number of MCUs in a fixed region. (b) Average energy efficiency versus the number of MCUs in a fixed region. (c) Average continuous service time versus the number of MCUs in a fixed region.
(a)
(b)
(c)From Figure3(a), we can see that, with the increasing number of clusters (e.g., K is increased from 30 to 60), average spectral efficiency basically shows a trend of decline. This is because some DCHs may waive QoE guarantees for the few multicast receivers on the purpose of saving more energy. This possibility increases as the number of clusters increases. Moreover, as shown in Figure 3(a), when the density of MCUs (i.e., the number of MCUs in the fixed area) is greater, this situation is more likely to happen.Figure3(b) shows that average energy efficiency has a trend of increase with the number of clusters, but the higher density of MCUs inhibits energy efficiency. The main reason is that more clusters are helpful to shorten the average communication distance and thus reduce the transmission power. On the contrary, when the density of MCUs is greater, the low energy efficiency clusters are more likely to happen, which is an inhibiting factor of energy efficiency improvement.Average continuous service time depends on both the energy reserve level of the DCHs and the multicast transmission powers adopted by the DCHs. As the number of clusters increases, although it is possible to reduce the transmission power, it is also possible to reduce the number of candidate DCHs, and thus, the energy reserve of the selected DCH does not necessarily have an advantage. Therefore, as shown in Figure3(c), when the density of MCUs is relatively small, the average continuous service time does not show a strict increasing or decreasing trend as the number of clusters increases. However, when the density of MCUs is large enough (i.e., 2000), it shows a strict increasing trend. This is because in the case of more DCH clusters, the large density is helpful to maintain more DCH candidates and thus to select the DCHs with more energy reserve levels.Then, we explore the variation trend of multicast transmission performance with the noise power. In this group of simulations, the number of MCUs in the fixed area is set to 1400, while the BER threshold of the receiving end is set to 1E − 8. When the noise power is changed from 5E − 12 to 5E − 11 with a variable step length, the three types of performance metrics of the built multicast transmission scheme are shown in Figures 4(a)–4(c), respectively. From Figure 4(a), we can see that, with the increasing noise power, the change in average spectral efficiency is very small. This is attributed to the fact that the multicast transmitters pay more power values to ensure the QoE of the receivers, which can also be verified by the results in Figure 4(b).Figure 4
The variation trend of multicast transmission performance with the noise power. (a) Average spectrum efficiency versus the noise power. (b) Average energy efficiency versus the noise power. (c) Average continuous service time versus the noise power.
(a)
(b)
(c)In addition, under the parameter configuration of this group of simulations, as we can see from Figure4(a), average spectral efficiency is better when the number of clusters is 50. However, under the same parameter configuration, average energy efficiency is better when the number of clusters is 60, which is shown in Figure 4(b). This shows that the diversity of factors affecting these two performance metrics cannot achieve a consistent desired result only through adjusting the number of clusters.Figure4(c) shows that average continuous service time has a trend of decline with the increase of noise power. This is because with the increasing noise power, the multicast transmitters must use greater powers to ensure the QoE of the multicast receivers, which can also be explained by the results in Figure 4(b). As mentioned above, more clusters can be helpful to shorten average communication distance and thus reduce average transmission power. However, as we can see from Figure 4(c), this advantage becomes less obvious with the increase of noise power.Finally, we explore the variation trend of multicast transmission performance with the value of BER. In this group of simulations, the number of MCUs in the fixed area is set to 1400, while the noise power is set to 1E − 11 W. When the BER threshold of any receiving end is changed from 1E − 10 to 1E − 6 with a 10-fold step, the three types of performance metrics of the built multicast transmission scheme are shown in Figures 5(a)–5(c), respectively.Figure 5
The variation trend of multicast transmission performance with the value of BER. (a) Average spectrum efficiency versus the value of BER. (b) Average energy efficiency versus the value of BER. (c) Average continuous service time versus the value of BER.
(a)
(b)
(c)From Figure5(a), we can see that, with the increasing value of BER, average spectrum efficiency shows a strict downward trend. The decrease of average spectrum efficiency can be explained as follows. The value of BER reflects the QoE requirement of users, where the larger value of BER means the lower QoE requirement of users. According to formula (4), the spectrum efficiency is reduced in theory, which is consistent with the trend shown in Figure 5(a).Based on the reduction of the QoE requirement of users, much smaller transmission power can be spent to meet such a requirement. Therefore, as shown in Figure5(b), average energy efficiency increases as the value of BER increases. Meanwhile, as the number of clusters increases, average communication distance becomes shorter, and thus, average energy efficiency has a more significant trend of increase. From Figure 5(c), we can see that the change of average continuous service time shows a certain increasing trend with the value of BER, while it shows a certain randomness from the perspective of the number of clusters. The reason behind the former phenomenon is obviously a reduction in power consumption, while the latter one is that, under different BER values, the number of clusters to obtain the desired energy efficiency is different.


## 6.1. Simulation Metrics and Deployment Settings

We define the simulation metrics from the perspective of a multicast receiver as follows:(1)
Multicast spectrum efficiency: it is the data rate achieved by a multicast receiver per unit of spectrum resource. For a given multicast content dissemination service, multicast spectrum efficiency depends on the BER threshold that ensures a user’s QoE, which is usually estimated according to formula (4). If resources are insufficient to guarantee a user’s QoE, the actual value can be estimated by formulas (1)–(3). Average multicast spectrum efficiency is the average value of all the multicast receivers’ multicast spectrum efficiency values.(2)
Multicast energy efficiency: it is the ratio of a multicast receiver’s multicast spectrum efficiency to the corresponding multicast source’s transmission power. Average multicast energy efficiency is the average value of all the multicast receivers’ multicast energy efficiency values.(3)
Continuous multicast service time: it refers specifically to the amount of time during which a multicast source continues to disseminate multimedia content, which can be estimated according to formula (27). Average continuous multicast service time is the average value of all the multicast sources’ continuous multicast service time values.In our simulations, a single macro cell scenario is considered, in which many MCUs are randomly located in the circular area with a radius of 400 m and the macro base station is situated at its center. We compare the impact of different numbers of clustersK on the built multicast transmission scheme in terms of the above three metrics and use the OMNeT++ 4.1 network simulator [40] to carry out the simulation experiments. Unless otherwise stated, the common simulation parameters are listed in Table 1.Table 1
Simulation parameters.
Description
Parameter
Value
Multicast sending antenna gain
G
t
1
Multicast receiving antenna gain
G
r
1
Multicast sending antenna height
h
t
1 m
Multicast receiving antenna height
h
r
1 m
Maximum multicast power for MBS
p
max
m
10 W
Maximum multicast power for DCHs
p
max
k
For any DCHk, pmaxk is set as 100 mW
Carrier signal wavelength for intracluster D2D
λ
0.1224 m
System loss factor for intracluster D2D
L
1
Crossover distance for intracluster D2D
d
crossover
103 m
Path loss exponent for intracluster D2D
α
For any multicast radiusdi, α = 2 when di < dcrossover; α = 4 when di ≥ dcrossover
Initial battery capacity
e
i
For any DCHi, ei is distributed randomly between 500 J and 2000 J
Benefit coefficient
η
1.2


## 6.2. Simulation Results and Analysis

Firstly, we explore the variation trend of multicast transmission performance with the number of MCUs in the fixed area. In this group of simulations, the noise power is set to 1E − 11 (i.e., 10−11 W), while the BER threshold of the receiving end is set to 1E − 8 (i.e., 10−8). When the number of MCUs is changed from 1200 to 2000 with a step of 200, the three types of performance metrics of the built multicast transmission scheme are shown in Figures 3(a)–3(c), respectively.Figure 3
The variation trend of multicast transmission performance with the number of MCUs in the fixed area. (a) Average spectrum efficiency versus the number of MCUs in a fixed region. (b) Average energy efficiency versus the number of MCUs in a fixed region. (c) Average continuous service time versus the number of MCUs in a fixed region.
(a)
(b)
(c)From Figure3(a), we can see that, with the increasing number of clusters (e.g., K is increased from 30 to 60), average spectral efficiency basically shows a trend of decline. This is because some DCHs may waive QoE guarantees for the few multicast receivers on the purpose of saving more energy. This possibility increases as the number of clusters increases. Moreover, as shown in Figure 3(a), when the density of MCUs (i.e., the number of MCUs in the fixed area) is greater, this situation is more likely to happen.Figure3(b) shows that average energy efficiency has a trend of increase with the number of clusters, but the higher density of MCUs inhibits energy efficiency. The main reason is that more clusters are helpful to shorten the average communication distance and thus reduce the transmission power. On the contrary, when the density of MCUs is greater, the low energy efficiency clusters are more likely to happen, which is an inhibiting factor of energy efficiency improvement.Average continuous service time depends on both the energy reserve level of the DCHs and the multicast transmission powers adopted by the DCHs. As the number of clusters increases, although it is possible to reduce the transmission power, it is also possible to reduce the number of candidate DCHs, and thus, the energy reserve of the selected DCH does not necessarily have an advantage. Therefore, as shown in Figure3(c), when the density of MCUs is relatively small, the average continuous service time does not show a strict increasing or decreasing trend as the number of clusters increases. However, when the density of MCUs is large enough (i.e., 2000), it shows a strict increasing trend. This is because in the case of more DCH clusters, the large density is helpful to maintain more DCH candidates and thus to select the DCHs with more energy reserve levels.Then, we explore the variation trend of multicast transmission performance with the noise power. In this group of simulations, the number of MCUs in the fixed area is set to 1400, while the BER threshold of the receiving end is set to 1E − 8. When the noise power is changed from 5E − 12 to 5E − 11 with a variable step length, the three types of performance metrics of the built multicast transmission scheme are shown in Figures 4(a)–4(c), respectively. From Figure 4(a), we can see that, with the increasing noise power, the change in average spectral efficiency is very small. This is attributed to the fact that the multicast transmitters pay more power values to ensure the QoE of the receivers, which can also be verified by the results in Figure 4(b).Figure 4
The variation trend of multicast transmission performance with the noise power. (a) Average spectrum efficiency versus the noise power. (b) Average energy efficiency versus the noise power. (c) Average continuous service time versus the noise power.
(a)
(b)
(c)In addition, under the parameter configuration of this group of simulations, as we can see from Figure4(a), average spectral efficiency is better when the number of clusters is 50. However, under the same parameter configuration, average energy efficiency is better when the number of clusters is 60, which is shown in Figure 4(b). This shows that the diversity of factors affecting these two performance metrics cannot achieve a consistent desired result only through adjusting the number of clusters.Figure4(c) shows that average continuous service time has a trend of decline with the increase of noise power. This is because with the increasing noise power, the multicast transmitters must use greater powers to ensure the QoE of the multicast receivers, which can also be explained by the results in Figure 4(b). As mentioned above, more clusters can be helpful to shorten average communication distance and thus reduce average transmission power. However, as we can see from Figure 4(c), this advantage becomes less obvious with the increase of noise power.Finally, we explore the variation trend of multicast transmission performance with the value of BER. In this group of simulations, the number of MCUs in the fixed area is set to 1400, while the noise power is set to 1E − 11 W. When the BER threshold of any receiving end is changed from 1E − 10 to 1E − 6 with a 10-fold step, the three types of performance metrics of the built multicast transmission scheme are shown in Figures 5(a)–5(c), respectively.Figure 5
The variation trend of multicast transmission performance with the value of BER. (a) Average spectrum efficiency versus the value of BER. (b) Average energy efficiency versus the value of BER. (c) Average continuous service time versus the value of BER.
(a)
(b)
(c)From Figure5(a), we can see that, with the increasing value of BER, average spectrum efficiency shows a strict downward trend. The decrease of average spectrum efficiency can be explained as follows. The value of BER reflects the QoE requirement of users, where the larger value of BER means the lower QoE requirement of users. According to formula (4), the spectrum efficiency is reduced in theory, which is consistent with the trend shown in Figure 5(a).Based on the reduction of the QoE requirement of users, much smaller transmission power can be spent to meet such a requirement. Therefore, as shown in Figure5(b), average energy efficiency increases as the value of BER increases. Meanwhile, as the number of clusters increases, average communication distance becomes shorter, and thus, average energy efficiency has a more significant trend of increase. From Figure 5(c), we can see that the change of average continuous service time shows a certain increasing trend with the value of BER, while it shows a certain randomness from the perspective of the number of clusters. The reason behind the former phenomenon is obviously a reduction in power consumption, while the latter one is that, under different BER values, the number of clusters to obtain the desired energy efficiency is different.


## 7. Conclusions

In this paper, we propose an energy-efficient multimedia content dissemination scheme, including theK-means-based D2D clustering algorithm, the iterative algorithm for intracluster D2D multicast transmission power determination, the game algorithm for base station multicast power assignment and D2D multicast relay selection, and the game algorithm for D2D multicast relaying power decision. Different from the existing multicast transmission schemes, which are mainly built from the perspective of final consumers of multimedia content dissemination services, our scheme is built from the perspective of multimedia content providers, which does not require ensuring the QoE for all multicast receivers. That is, if the energy efficiency of the multimedia content dissemination process can be greatly improved, it is worth sacrificing the QoE of a small number of consumers. Therefore, it is more suitable for multimedia content providers to maximize their benefits.We analyze the transmission performance of such a content dissemination system under different simulation parameters. In fact, some parameters are restricted by the application environment (e.g., environmental noise), while some parameters are restricted by the quality demand of user experience (e.g., BER). Facing different values of such parameters that cannot be controlled by the system, the multicast content dissemination system should adaptively adjust the controllable parameters (e.g., the number of clusters) so that the multicast transmission cost is always relatively small. Although some research results have been achieved in this paper, how to be more intelligent will remain in our future research plan.



---

*Source: 5298508-2019-03-14.xml*