# Social-Aware Cooperative Video Distribution via SVC Streaming Multicast

Authors: Lindong Zhao; Lei Wang; Xuguang Zhang; Bin Kang
Journal: Wireless Communications and Mobile Computing
 (2018)

---

## Abstract

Scalable Video Coding (SVC) streaming multicast is considered as a promising solution to cope with video traffic overload and multicast channel differences. To solve the challenge of delivering high-definition SVC streaming over burst-loss prone channels, we propose a social-aware cooperative SVC streaming multicast scheme. The proposed scheme is the first attempt to enable D2D cooperation for SVC streaming multicast to conquer the burst-loss, and one salient feature of it is that it takes fully into account the hierarchical encoding structure of SVC in scheduling cooperation. By using our scheme, users form groups to share video packets among each other to restore incomplete enhancement layers. Specifically, a cooperative group formation method is designed to stimulate effective cooperation, based on coalitional game theory; and an optimal D2D links scheduling scheme is devised to maximize the total decoded enhancement layers, based on potential game theory. Extensive simulations using real video traces corroborate that the proposed scheme leads to a significant gain on the received video quality.


---

## Body

## 1. Introduction

With the rapid development of mobile intelligent terminals, we have witnessed the explosive growth of users’ demands for wireless live video services [1]. Such growth in the bandwidth demanding will bring unprecedented challenges to current wireless network in the near future [2, 3]. As communication technologies designed to cope with video traffic overload, video multicast can exploit the broadcasting nature of wireless communication to transmit video to multiple users simultaneously [4]. Due to its effectiveness, video multicast has been applied successfully in many scenarios, e.g., breaking news video, live sport videos, mobile TV programs, and so on.In mobile video multicast, how to solve varied fading channels from the base station (BS) to multicast users is a key problem. Here, we give an illustrative paragraph. The video transmission rate of a wireless link is determined by the channel quality feedback. For a specific link, high transmission rate with a bad channel quality will render high bit error rate and degrade the goodput. In a multicast scenario, BS can only select one transmission rate while the channel conditions of multicast users vary from each other. When BS multicast video to users according to the user with good channel quality, users with worse channel quality may fail to play back the video smoothly. Typically, BS will choose transmission rate according to the worst channel, and thus each multicast user’s received video quality is limited by the worst one.Since Scalable Video Coding streaming can be hierarchically divided into one base layer and multiple enhancement layers, the SVC based video multicast can flexibly adjust the quality of live video services according to channel feedback [5]. Thus, SVC is a suitable video coding strategy to adapt to the diversity of multicast channels [6]. One major challenge of employing SVC in video multicast is how to cope with the unavoidable packet loss over the burst-loss prone channels [7], which makes the traditional channel protection method such as FEC insufficient [8]. And due to the stringent playback deadline, the retransmission is also not preferred especially in multicast scenarios [9]. Although some related works have studied how to reduce the interference and errors in SVC streaming [10–12], most of them need heavy modification for video codec or introduce other network components to the cellular system, which is actually impractical.Since the cooperative local recovery via D2D communication can make up the packet loss without introducing any redundancy or asking the base station to retransmit the lost packets, it is then a good option for SVC streaming multicast countering the burst-loss. There are some works that studied how to utilize D2D communication or other network interfaces (like Wi-Fi) for video recovery [13]. However, previous cooperative recovery schemes did not take the hierarchical encoding structure of SVC into account, which may not lead to a significant gain to SVC-based video multicast. In other words, from the perspective of user’s Quality-of-Experience (QoE) [14], simply boosting the transmission rate does not necessarily result in improvements in the user perception of the video quality [15].SVC streaming has a hierarchical encoding structure, which means that each enhancement layer can be decoded only after the correct decoding of lower layers. In such case, either bit error or packet loss would lead to the loss of synchronization information and error propagation. The hierarchical encoding structure indicates that packets belonging to different enhancement layers should have different weight for improving video quality. And the SVC based video distribution scheme should also be structured and dealing with missing packets depends on the actual reception. Existing video distribution schemes often treat all the missing packets equally; hence those distribution schemes can not give a good video quality for SVC streaming multicast. In a word, how to coordinate users’ cooperation according to the hierarchical encoding structure of SVC is a critical issue for cooperative SVC streaming multicast.In this paper, we propose a D2D-based cooperative SVC streaming multicast scheme to improve the received video quality, which is based on the consideration of the hierarchical encoding structure of SVC. More specifically, users in the same cooperative group share enhancement layers using D2D communication under the scheduling of the BS. To stimulate effective cooperation among multicast users, the cooperative groups are constructed by using a coalitional game. And to maximize the total decoded enhancement layers, an optimal D2D links scheduling scheme is devised based on potential game theory. To the best of our knowledge, this paper is the first attempt to enable D2D cooperation for SVC streaming multicast to conquer the burst-loss. The main contributions of this paper are summarized as follows.(i)
We propose a social-aware cooperative SVC streaming multicast scheme to improve received video quality by stimulating users to form cooperative groups and share enhancement layers. In particular, this scheme takes full account of the hierarchical encoding structure of SVC to coordinate cooperation.
(ii)
To stimulate effective cooperation among users, we propose a cooperative group formation method based on coalitional game theory, in which the logical relationship among users is developed according to social attributes, interest similarity, and geographical location.
(iii)
To maximize the total received enhancement layers of the cooperative group, we devise a D2D links scheduling scheme for the base station. The optimization problem for D2D links scheduling is cast as a potential game and solved by local search algorithm. Extensive simulations with real video traces show that the proposed scheme can achieve up to 65.9% gain of video PSNR (Peak Signal-to-Noise Ratio) and valuable video frame ratio over the traditional scheme.The rest of this paper is organized as follows. Section2 gives a review of the related works in the field of wireless video multicast and cooperative local recovery. The system model and workflow of the proposed scheme are discussed in Section 3. In Section 4, we study the problems of cooperative group formation and the optimal links scheduling in detail. The extensive numerical results are shown in Section 5 and conclusions are drawn in Section 6.


## 2. Related Works

### 2.1. Wireless Video Multicast

Wireless video multicast has recently become a hot research topic, which is promising to help improve spectrum efficiency. R. Chandra et al. proposed a multicast system DirCast based on Wi-Fi, targeting to minimize the total transmission delay [16]. In order to improve the performance of video multicast, a gateway was introduced between the base station and the cloud servers to determine the order of frames [17], and S. Aditya et al. integrated a joint source-channel coding into the MPEG-4 codec [18]. Deb et al. proposed a greedy algorithm for resource allocation in SVC streaming multicast scenario via WiMAX [11]. S. Jakubczak et al. proposed a cross-layer design for multicasting scalable video, with the goal of improving robustness to wireless interference and errors [12].Some of the above works with nonscalable encoding suffer from “the limit of the worst one” caused by multicast channel differences, as mentioned earlier. To counter wireless interference and errors, the others with scalable encoding introduce heavy redundancy to video codec or add new network interface to the system, but present insufficient for burst-loss. Different from these works, this paper effectively conquers the burst-loss for SVC streaming multicast via D2D cooperation and is compatible with existing cellular networks.


### 2.2. Cooperative Local Recovery

There have been some works on the cooperative local recovery, i.e., how to enable users to share missing packets or act as relay nodes. Reference [19] proposed a cooperative peer-to-peer recovery scheme optimally scheduling the priority of packets. Reference [9] recovered the video frames by constructing D2D assisted multipath transmission. Reference [20] realized peer-to-peer repair by combining batch processing and network coding. Reference [21] deployed D2D communication inside the multicast group, and users who successfully decoded the message retransmit it to those in need. Reference [13] stimulated users’ cooperation for video multicast by utilizing two types of social ties, social reciprocity and social trust. The above video distribution schemes often treat all the missing packets equally; hence they cannot give a good video quality for SVC streaming multicast. Different from them, we coordinate users’ cooperation based on the unique hierarchical encoding structure of SVC.


## 2.1. Wireless Video Multicast

Wireless video multicast has recently become a hot research topic, which is promising to help improve spectrum efficiency. R. Chandra et al. proposed a multicast system DirCast based on Wi-Fi, targeting to minimize the total transmission delay [16]. In order to improve the performance of video multicast, a gateway was introduced between the base station and the cloud servers to determine the order of frames [17], and S. Aditya et al. integrated a joint source-channel coding into the MPEG-4 codec [18]. Deb et al. proposed a greedy algorithm for resource allocation in SVC streaming multicast scenario via WiMAX [11]. S. Jakubczak et al. proposed a cross-layer design for multicasting scalable video, with the goal of improving robustness to wireless interference and errors [12].Some of the above works with nonscalable encoding suffer from “the limit of the worst one” caused by multicast channel differences, as mentioned earlier. To counter wireless interference and errors, the others with scalable encoding introduce heavy redundancy to video codec or add new network interface to the system, but present insufficient for burst-loss. Different from these works, this paper effectively conquers the burst-loss for SVC streaming multicast via D2D cooperation and is compatible with existing cellular networks.


## 2.2. Cooperative Local Recovery

There have been some works on the cooperative local recovery, i.e., how to enable users to share missing packets or act as relay nodes. Reference [19] proposed a cooperative peer-to-peer recovery scheme optimally scheduling the priority of packets. Reference [9] recovered the video frames by constructing D2D assisted multipath transmission. Reference [20] realized peer-to-peer repair by combining batch processing and network coding. Reference [21] deployed D2D communication inside the multicast group, and users who successfully decoded the message retransmit it to those in need. Reference [13] stimulated users’ cooperation for video multicast by utilizing two types of social ties, social reciprocity and social trust. The above video distribution schemes often treat all the missing packets equally; hence they cannot give a good video quality for SVC streaming multicast. Different from them, we coordinate users’ cooperation based on the unique hierarchical encoding structure of SVC.


## 3. System Model

### 3.1. Preliminaries

To facilitate our exposition, it is necessary to first introduce the scalable video encoding structure and live video playback mechanism.The core idea of SVC is to divide the video streaming into multiple layers according to different requirements. As illustrated in Figure1, there are one base layer and multiple enhancement layers, each of which is transmitted separately. Devices can reconstruct the basic quality video image as long as it receives the base layer, but the video reconstructed from the base layer is of poor quality. The enhancement layers contain details of the video streaming, which means users can get a better video quality by receiving more enhancement layers within the range of the total video bit rate. In addition, an enhancement layer can be decoded after the correct decoding of the base layer and lower enhancement layers, while the base layer can be decoded separately.Figure 1
Scalable Video Coding structure.In general, SVC streaming is composed of Group-of-Picture (GoP) sequences, and a GoP consists of a base layer and one or more enhancement layers with RLC encoding. We denote these layers byL
=
{
1,2
,
⋯
,
L
}, each encoded layer l
∈
L is processed into P
l packets, and P
l is also the decoding threshold for layer l. The condition for successfully receiving the layer l can be expressed as(1)
R
i
l
⩾
P
l
,
l
∈
L
.However, receiving the full information of the layer l does not mean that layer l can be reconstructed; the condition for successfully decoding the layer l is given by(2)
R
i
l
′
⩾
P
l
′
,
∀
l
′
⩽
l
,
l
∈
L
,
∀
l
′
∈
L
,where R
i
l
′ denotes the packets which user i received for layer l
′.Equation (2) means that, to restore video quality to layer l, not only should the received packets of layer l be more than its threshold, but also the lower layers are decoded correctly.The live video playback mechanism is illustrated in Figure2. Unlike data transmissions such as browsing a Web page or downloading a file, live video multicast is a delay sensitive application with real-time requirements. Generally, the smooth video playback is tolerable with a maximum delay according to Persistence of Vision. That is, each GoP has a fixed transmission deadline. Once a packet in the GoP misses this deadline, it will be dropped. For SVC streaming, packets on each layer are transmitted independently. Users reconstruct each video layer with the received packets and the layer which does not receive enough packets before the deadline cannot be reconstructed.Figure 2
Live video transmission and playback.


### 3.2. System Model and Workflow

From the previous discussion, we can see that affected by hierarchical encoding structure of SVC and live video delay constraint, users may not be able to reconstruct a certain layer due to their failure to receive the lower layer correctly. Referring to SVC streaming, once a user receives enough packets for the corresponding layer, it can be reconstructed, regardless of whether the packets are coming from the base station or other users. Due to the diversity of multicast channels, when some users lose a certain layer, other users may receive the layer successfully. First, we propose to enable users to form “cooperative groups" taking into account social attributes, preference similarity, and geographical location, according to the strategy proposed in Section4. Then, we develop collaboration among users via D2D communication inside each group and missing packets are shared among users under the base station’s scheduling to rebuild lost layers.As shown in Figure3, one base station and N users are in a cell, and partial users are divided into different multicast groups receiving different videos via the cellular downlink, called multicast users. Others who have no intention of participating in multicast are referred to as ordinary users. Since the ordinary user is not covered by our discussion, we may assume that the N users are all multicast users. And all users are equipped with both D2D and cellular interfaces, so that they can receive packets by D2D communication if necessary.Figure 3
An illustration of cooperative SVC streaming multicast system.The workflow of our proposed intragroup recovery is shown in Figure4; we divide one GoP delivery process into two parts: multicast round and cooperation round. At the beginning of one GoP transmission, each user receives packets from the base station during multicast phase. In process of following cooperation round, users would report to the base station which layers are missing. The D2D link will be established by the unified scheduling of the base station to realize the complementation of the data received among users. If the time slots allocated to cooperation round are sufficient, we can encapsulate the above reporting, scheduling, and sharing processes into a subround, allowing users to switch multiple times to obtain their missing layers.Figure 4
Intragroup recovery workflow.


## 3.1. Preliminaries

To facilitate our exposition, it is necessary to first introduce the scalable video encoding structure and live video playback mechanism.The core idea of SVC is to divide the video streaming into multiple layers according to different requirements. As illustrated in Figure1, there are one base layer and multiple enhancement layers, each of which is transmitted separately. Devices can reconstruct the basic quality video image as long as it receives the base layer, but the video reconstructed from the base layer is of poor quality. The enhancement layers contain details of the video streaming, which means users can get a better video quality by receiving more enhancement layers within the range of the total video bit rate. In addition, an enhancement layer can be decoded after the correct decoding of the base layer and lower enhancement layers, while the base layer can be decoded separately.Figure 1
Scalable Video Coding structure.In general, SVC streaming is composed of Group-of-Picture (GoP) sequences, and a GoP consists of a base layer and one or more enhancement layers with RLC encoding. We denote these layers byL
=
{
1,2
,
⋯
,
L
}, each encoded layer l
∈
L is processed into P
l packets, and P
l is also the decoding threshold for layer l. The condition for successfully receiving the layer l can be expressed as(1)
R
i
l
⩾
P
l
,
l
∈
L
.However, receiving the full information of the layer l does not mean that layer l can be reconstructed; the condition for successfully decoding the layer l is given by(2)
R
i
l
′
⩾
P
l
′
,
∀
l
′
⩽
l
,
l
∈
L
,
∀
l
′
∈
L
,where R
i
l
′ denotes the packets which user i received for layer l
′.Equation (2) means that, to restore video quality to layer l, not only should the received packets of layer l be more than its threshold, but also the lower layers are decoded correctly.The live video playback mechanism is illustrated in Figure2. Unlike data transmissions such as browsing a Web page or downloading a file, live video multicast is a delay sensitive application with real-time requirements. Generally, the smooth video playback is tolerable with a maximum delay according to Persistence of Vision. That is, each GoP has a fixed transmission deadline. Once a packet in the GoP misses this deadline, it will be dropped. For SVC streaming, packets on each layer are transmitted independently. Users reconstruct each video layer with the received packets and the layer which does not receive enough packets before the deadline cannot be reconstructed.Figure 2
Live video transmission and playback.


## 3.2. System Model and Workflow

From the previous discussion, we can see that affected by hierarchical encoding structure of SVC and live video delay constraint, users may not be able to reconstruct a certain layer due to their failure to receive the lower layer correctly. Referring to SVC streaming, once a user receives enough packets for the corresponding layer, it can be reconstructed, regardless of whether the packets are coming from the base station or other users. Due to the diversity of multicast channels, when some users lose a certain layer, other users may receive the layer successfully. First, we propose to enable users to form “cooperative groups" taking into account social attributes, preference similarity, and geographical location, according to the strategy proposed in Section4. Then, we develop collaboration among users via D2D communication inside each group and missing packets are shared among users under the base station’s scheduling to rebuild lost layers.As shown in Figure3, one base station and N users are in a cell, and partial users are divided into different multicast groups receiving different videos via the cellular downlink, called multicast users. Others who have no intention of participating in multicast are referred to as ordinary users. Since the ordinary user is not covered by our discussion, we may assume that the N users are all multicast users. And all users are equipped with both D2D and cellular interfaces, so that they can receive packets by D2D communication if necessary.Figure 3
An illustration of cooperative SVC streaming multicast system.The workflow of our proposed intragroup recovery is shown in Figure4; we divide one GoP delivery process into two parts: multicast round and cooperation round. At the beginning of one GoP transmission, each user receives packets from the base station during multicast phase. In process of following cooperation round, users would report to the base station which layers are missing. The D2D link will be established by the unified scheduling of the base station to realize the complementation of the data received among users. If the time slots allocated to cooperation round are sufficient, we can encapsulate the above reporting, scheduling, and sharing processes into a subround, allowing users to switch multiple times to obtain their missing layers.Figure 4
Intragroup recovery workflow.


## 4. Cooperative Group Formulation and Optimal Links Scheduling

There are two technical challenges for our proposed scheme:(
1
)
how to effectively screen users into multicast group to stimulate cooperation and (
2
)
how to schedule D2D links to maximize the overall reconstructed SVC layers. Now we will look at these two subproblems.


### 4.1. Cooperative Multicast Group Formation

Now we formulate the cooperative multicast group formation for SVC streaming recovery as a coalitional game.


#### 4.1.1. Utility Function

When a user is ready to invite another user to join the multicast group, what are the main considerations?First, consistency of user preferences within group is a prerequisite for multicast group formation, in order to improve the efficiency of spectrum resources in cellular system. We use collaborative filtering method to obtain the similarity of users’ interest. Assume that the number of multicast video types available isX,K
(
i
)
=
a
1
i
,
a
2
i
,
⋯
,
a
X
i denoting user i’s interest set, obtained from historical data analysis, where a
x
i is a binary variable, which is equal to 1 if user i is interested in video type x; otherwise a
x
i
=
0. The interest similarity between users i and j can be obtained by the Jaccard coefficient [22], expressed by(3)
S
i
,
j
=
K
i
∩
K
j
K
i
∪
K
j
,where 0
≤
S
(
i
,
j
)
≤
1, the larger the value is, the more likely the users are to choose the same video content.Since social attributes represent long-term contact between users, links maintained with them tend to be stable [23]. With the help of social-related parameters to filter users, we can maximize the use of temporary links to achieve QoE promotion. We use Q
(
i
,
j
) to denote the social affinity of users i and j, which can be obtained by analyzing their interactions with social software. Note that 0
≤
Q
(
i
,
j
)
≤
1, the larger the value, the closer the relationship between users. Besides, since the next collaboration will take place with D2D communication, users have to consider location information when inviting other members, lest they become isolated nodes. We characterize this property in terms of the ratio of distance between users to diameter of the cell, expressed by G
(
i
,
j
)
=
d
i
,
j
/
D, where D denotes the diameter and d
i
,
j denotes the distance between users i and j, 0
<
G
(
i
,
j
)
≤
1.After the above discussion, we can see that there are three main factors that affect the preference of user invitation, and their relationship to utility functions can be expressed as(4)
∂
U
∂
S
≥
0
,
∂
U
∂
Q
≥
0
,
∂
U
∂
G
≤
0And we will use the method of microeconomics to design utility function to quantify this preference. In microeconomics, utility is the quantitative expression of preference, and utility is divided into ordinal utility and cardinality utility [24]. Cardinal utility is measured by absolute value, while ordinal utility is concerned with the relative relationship of utility. Here, the users are concerned only with the relative relationship of the utility brought about by inviting different users; hence we use ordinal utility to quantify preferences. Because there is no alternative or complementary relationship between interest similarity, social attributes, and geographical location, we use Cobb-Douglas preference model to design our utility function, expressed as(5)
U
i
,
j
=
S
i
,
j
α
Q
i
,
j
β
G
i
,
j
γ
,where α, β, and γ are the corresponding coefficients to adjust the priorities and all positive. Note that the value of ordinal utility itself has no physical meaning; we just use it to quantify preference; the forms of utility function are not unique. Besides, without considering the preference similarity, the proposed scheme can also be used for users in the same MBMS service area [25].


#### 4.1.2. Coalitional Game Formulation

Then, we cast the multicast group formation as a coalitional gameΩ
=
{
N
,
Φ
N
,
W
,
(
≻
i
)
i
∈
N
} as follows:(i)
The set of playersN is the set of multicast users.
(ii)
The set of cooperation strategies isΦ
N
=
{
(
f
i
)
i
∈
N
:
f
i
∈
N
t
,
∀
i
∈
N
}, which denotes the set of current investible users for all users.
(iii)
The characteristic function isW
(
Δ
)
=
{
(
f
i
)
i
∈
N
∈
Φ
N
:
(
f
i
)
i
∈
Δ
=
(
j
)
j
∈
Δ
a
n
d
f
k
=
k
,
k
∈
N
∖
Δ
} for each multicast group Δ
∈
N. There are only two cases for the players, and the condition (
f
i
)
i
∈
Δ
=
(
j
)
j
∈
Δ denotes that user i chooses to invite user j to join a multicast group Δ (a coalition). The condition f
k
=
k
,
k
∈
N
∖
Δ represents that user k out of the coalition Δ is not in any group.
(iv)
The preference order(
≻
i
)
i
∈
N is defined as (
f
k
)
k
∈
N
≻
i
(
f
k
′
)
k
∈
N if and only if U
(
i
,
f
i
)
⩾
U
(
i
,
f
i
′
). In detail, user i prefers the group formation strategy (
f
k
)
k
∈
N to (
f
k
′
)
k
∈
N if and only if user i invites assigned user f
i in strategy (
f
k
)
k
∈
N to have more utility than inviting assigned user f
i
′ in strategy (
f
k
′
)
k
∈
N according to above-mentioned utility function.Definition 1.
The core is the set of(
f
i
∗
)
i
∈
N
∈
W
(
N
) for which a coalition Δ does not exist and (
f
i
)
i
∈
N
∈
W
(
Δ
) such that (
f
i
)
i
∈
N
≻
i
(
f
i
∗
)
i
∈
N.
That is, no set of participants will actively take a joint action that is better for all of them to deviate from current coalition, which is in the same spirit as Nash equilibrium in a noncooperative game. By obtaining a core solution of the coalition game, the formation of multicast groups is completed.


#### 4.1.3. Coalitional Game Core Solution

Now, we study the existence of the core solution.Definition 2.
A game℧
=
{
Z
,
Φ
Z
,
W
,
(
≻
i
)
i
∈
Z
} is a subgame of the game Ω if and only if Z
⊆
N
a
n
d
Z
≠
∅.Definition 3.
A nonempty subsetΔ
∈
Z is a top coalition for a subgame ℧
=
{
Z
,
Φ
Z
,
W
,
(
≻
i
)
i
∈
Z
} if and only if, for strategy set (
f
z
∗
)
z
∈
Z
∈
W
(
Δ
) and any strategy (
u
z
)
z
∈
Δ
∈
W
(
C
)
C
⊆
Z, we have U
(
z
,
f
z
∗
)
⩾
U
(
z
,
u
z
) for all z
∈
Z.
In fact, a subgame is a subset of the players of the original game. Note that the strategy set to build a top coalition is the core of the subgame made up of members in the top coalition, since the group is collectively best for all its members.Definition 4.
The gameΩ
=
{
N
,
Φ
N
,
W
,
(
≻
i
)
i
∈
N
} owns only one core solution if and only if all its subgames have a top coalition and any player in any subgame cannot belong to more than one top coalition.
That is, the top coalitions set up by adopting the core strategy are the multicast groups we need.Definition 5.
For a coalitional subgame℧
=
{
Z
,
Φ
Z
,
W
,
(
≻
i
)
i
∈
Z
}, we define a user sequence (
n
1
,
⋯
,
n
C
) as a multicast friend cycle if and only if U
(
z
c
,
z
c
+
1
)
⩾
U
(
z
c
,
z
k
)
∀
z
k
∈
Z for all z
=
1
,
⋯
,
C
-
1 and U
(
z
C
,
z
1
)
⩾
U
(
z
C
,
z
k
)
∀
z
k
∈
Z.Lemma 6.
For any subgame℧
=
{
Z
,
Φ
Z
,
W
,
(
≻
i
)
i
∈
Z
}, we can obtain at least one multicast friends cycle. Any multicast friend cycle is a top coalition of corresponding subgame ℧.Proof.
At the initial stage of any subgame, we randomly choose userz
1 from the players subset Φ
Z, then we can find the second user z
2 who can maximize user z
1’s utility. Repeat the steps above and we can find a multicast friend cycle. Using proofs by contradiction, if such cycle does not exist, the above-mentioned user sequence will extend infinitely. Since any two users are different and the total number of users in the cell is limited, this assumption is clearly not true. And according to Definition 5, each user takes the decisions that are best for themselves; no participant can take a joint action that is better for all of them to deviate from current coalition. Any multicast friend cycle generated through the above steps is a top coalition.Theorem 7.
For gameΩ
=
{
N
,
Φ
N
,
W
,
(
≻
i
)
i
∈
N
}, the strategy set for generating multicast friend groups is a core solution, and the set of coalitions resulting from a decision initiated by any one of the multicast users is unique if no strategies for one player can bring about the same utility.Proof.
According to Lemma6, at the beginning of game Ω, we randomly choose a user to invite other users and obtain a top coalition C
1. By Definition 3, players in this top coalition have achieved the maximum utility currently available; these players will not continue to participate in current game. After removing the players mentioned above, the original game becomes its corresponding subgame ℧
=
{
Z
,
Φ
Z
,
W
,
(
≻
i
)
i
∈
Z
}, where Z
=
N
∖
C
1. With the generation of one multicast friend cycle after another using Lemma 6, we have Z
=
N
∖
C
t for corresponding subgame to each iteration t
=
1
,
⋯
,
T
. According to Definition 4, this completes the proof. For the second part of the theorem, using proofs by contradiction, if one player can join two different top coalitions, it must have more than one optimal strategy, which contradicts Definition 5.
Based on Lemma6 and Theorem 7, we can find the core solution for cooperative group formation.


### 4.2. User Cooperation Scheduling

As we mentioned earlier, with a view to the hierarchical encoding structure of SVC streaming, the same layer of a GoP has different values according to the actual reception. For example, layer 4 enables better video quality for user who owns layers{
1,2
,
3
}, but it does not work for user who only has layers {
1,2
}. The proposed scheme targets to improve video quality of the multicast group as much as possible in a subphase, which is directly related to layers that can be reconstructed. Considering the upper limit to the perceived video quality of users and marginal utility on the improvement of QoE [26, 27], the optimization problem can be formulated as(6)
max
⁡
∑
i
=
1
N
1
1
+
exp
⁡
-
ω
l
iwhere ω is the marginal utility coefficient and l
i is the number of layers that user i has successfully reconstructed from this collaboration. Now we analyze this problem with an exact potential game.Definition 8.
A gameΓ
=
{
C
,
(
Y
i
)
i
∈
C
,
(
U
i
)
i
∈
C
} is an exact potential game, if there exists a function H
:
Y
→
R, such that, ∀
i
∈
C
,
∀
y
-
i
∈
Y
i
,
∀
x
,
z
∈
Y
i, we have U
i
(
x
,
y
-
i
)
-
U
i
(
z
,
y
-
i
)
=
H
(
x
,
y
-
i
)
-
H
(
z
,
y
-
i
). C
,
H
,
Y
i
,
U
i are, respectively, player set, potential function, player i’s strategy set, and utility function.A potential game must have equilibrium with pure strategy and a discrete potential game has finite improvement properties [28]. If the objective function is a potential function of a game with discrete strategy space, it must have an optimal solution and can be solved by local search. Now we formulate a potential game Γ as follows: the set of players C is the set of users in a multicast group, player i’s available strategy Y
i is to choose which player in the group to request video layer, utility function is F
i
=
1
/
1
+
e
x
p
-
ω
l
i, and potential function is H = ∑
i
=
1
N
‍
1
/
1
+
e
x
p
-
ω
l
i
=
∑
i
=
1
N
‍
F
i.According to [28], we can prove the proposed objective function is a potential function of game Γ. Since the number of members in multicast group is finite, game Γ’s strategy space is discrete. The problem (6) can be solved by local search algorithm such as Tabu Search and Simulated Annealing.


## 4.1. Cooperative Multicast Group Formation

Now we formulate the cooperative multicast group formation for SVC streaming recovery as a coalitional game.


### 4.1.1. Utility Function

When a user is ready to invite another user to join the multicast group, what are the main considerations?First, consistency of user preferences within group is a prerequisite for multicast group formation, in order to improve the efficiency of spectrum resources in cellular system. We use collaborative filtering method to obtain the similarity of users’ interest. Assume that the number of multicast video types available isX,K
(
i
)
=
a
1
i
,
a
2
i
,
⋯
,
a
X
i denoting user i’s interest set, obtained from historical data analysis, where a
x
i is a binary variable, which is equal to 1 if user i is interested in video type x; otherwise a
x
i
=
0. The interest similarity between users i and j can be obtained by the Jaccard coefficient [22], expressed by(3)
S
i
,
j
=
K
i
∩
K
j
K
i
∪
K
j
,where 0
≤
S
(
i
,
j
)
≤
1, the larger the value is, the more likely the users are to choose the same video content.Since social attributes represent long-term contact between users, links maintained with them tend to be stable [23]. With the help of social-related parameters to filter users, we can maximize the use of temporary links to achieve QoE promotion. We use Q
(
i
,
j
) to denote the social affinity of users i and j, which can be obtained by analyzing their interactions with social software. Note that 0
≤
Q
(
i
,
j
)
≤
1, the larger the value, the closer the relationship between users. Besides, since the next collaboration will take place with D2D communication, users have to consider location information when inviting other members, lest they become isolated nodes. We characterize this property in terms of the ratio of distance between users to diameter of the cell, expressed by G
(
i
,
j
)
=
d
i
,
j
/
D, where D denotes the diameter and d
i
,
j denotes the distance between users i and j, 0
<
G
(
i
,
j
)
≤
1.After the above discussion, we can see that there are three main factors that affect the preference of user invitation, and their relationship to utility functions can be expressed as(4)
∂
U
∂
S
≥
0
,
∂
U
∂
Q
≥
0
,
∂
U
∂
G
≤
0And we will use the method of microeconomics to design utility function to quantify this preference. In microeconomics, utility is the quantitative expression of preference, and utility is divided into ordinal utility and cardinality utility [24]. Cardinal utility is measured by absolute value, while ordinal utility is concerned with the relative relationship of utility. Here, the users are concerned only with the relative relationship of the utility brought about by inviting different users; hence we use ordinal utility to quantify preferences. Because there is no alternative or complementary relationship between interest similarity, social attributes, and geographical location, we use Cobb-Douglas preference model to design our utility function, expressed as(5)
U
i
,
j
=
S
i
,
j
α
Q
i
,
j
β
G
i
,
j
γ
,where α, β, and γ are the corresponding coefficients to adjust the priorities and all positive. Note that the value of ordinal utility itself has no physical meaning; we just use it to quantify preference; the forms of utility function are not unique. Besides, without considering the preference similarity, the proposed scheme can also be used for users in the same MBMS service area [25].


### 4.1.2. Coalitional Game Formulation

Then, we cast the multicast group formation as a coalitional gameΩ
=
{
N
,
Φ
N
,
W
,
(
≻
i
)
i
∈
N
} as follows:(i)
The set of playersN is the set of multicast users.
(ii)
The set of cooperation strategies isΦ
N
=
{
(
f
i
)
i
∈
N
:
f
i
∈
N
t
,
∀
i
∈
N
}, which denotes the set of current investible users for all users.
(iii)
The characteristic function isW
(
Δ
)
=
{
(
f
i
)
i
∈
N
∈
Φ
N
:
(
f
i
)
i
∈
Δ
=
(
j
)
j
∈
Δ
a
n
d
f
k
=
k
,
k
∈
N
∖
Δ
} for each multicast group Δ
∈
N. There are only two cases for the players, and the condition (
f
i
)
i
∈
Δ
=
(
j
)
j
∈
Δ denotes that user i chooses to invite user j to join a multicast group Δ (a coalition). The condition f
k
=
k
,
k
∈
N
∖
Δ represents that user k out of the coalition Δ is not in any group.
(iv)
The preference order(
≻
i
)
i
∈
N is defined as (
f
k
)
k
∈
N
≻
i
(
f
k
′
)
k
∈
N if and only if U
(
i
,
f
i
)
⩾
U
(
i
,
f
i
′
). In detail, user i prefers the group formation strategy (
f
k
)
k
∈
N to (
f
k
′
)
k
∈
N if and only if user i invites assigned user f
i in strategy (
f
k
)
k
∈
N to have more utility than inviting assigned user f
i
′ in strategy (
f
k
′
)
k
∈
N according to above-mentioned utility function.Definition 1.
The core is the set of(
f
i
∗
)
i
∈
N
∈
W
(
N
) for which a coalition Δ does not exist and (
f
i
)
i
∈
N
∈
W
(
Δ
) such that (
f
i
)
i
∈
N
≻
i
(
f
i
∗
)
i
∈
N.
That is, no set of participants will actively take a joint action that is better for all of them to deviate from current coalition, which is in the same spirit as Nash equilibrium in a noncooperative game. By obtaining a core solution of the coalition game, the formation of multicast groups is completed.


### 4.1.3. Coalitional Game Core Solution

Now, we study the existence of the core solution.Definition 2.
A game℧
=
{
Z
,
Φ
Z
,
W
,
(
≻
i
)
i
∈
Z
} is a subgame of the game Ω if and only if Z
⊆
N
a
n
d
Z
≠
∅.Definition 3.
A nonempty subsetΔ
∈
Z is a top coalition for a subgame ℧
=
{
Z
,
Φ
Z
,
W
,
(
≻
i
)
i
∈
Z
} if and only if, for strategy set (
f
z
∗
)
z
∈
Z
∈
W
(
Δ
) and any strategy (
u
z
)
z
∈
Δ
∈
W
(
C
)
C
⊆
Z, we have U
(
z
,
f
z
∗
)
⩾
U
(
z
,
u
z
) for all z
∈
Z.
In fact, a subgame is a subset of the players of the original game. Note that the strategy set to build a top coalition is the core of the subgame made up of members in the top coalition, since the group is collectively best for all its members.Definition 4.
The gameΩ
=
{
N
,
Φ
N
,
W
,
(
≻
i
)
i
∈
N
} owns only one core solution if and only if all its subgames have a top coalition and any player in any subgame cannot belong to more than one top coalition.
That is, the top coalitions set up by adopting the core strategy are the multicast groups we need.Definition 5.
For a coalitional subgame℧
=
{
Z
,
Φ
Z
,
W
,
(
≻
i
)
i
∈
Z
}, we define a user sequence (
n
1
,
⋯
,
n
C
) as a multicast friend cycle if and only if U
(
z
c
,
z
c
+
1
)
⩾
U
(
z
c
,
z
k
)
∀
z
k
∈
Z for all z
=
1
,
⋯
,
C
-
1 and U
(
z
C
,
z
1
)
⩾
U
(
z
C
,
z
k
)
∀
z
k
∈
Z.Lemma 6.
For any subgame℧
=
{
Z
,
Φ
Z
,
W
,
(
≻
i
)
i
∈
Z
}, we can obtain at least one multicast friends cycle. Any multicast friend cycle is a top coalition of corresponding subgame ℧.Proof.
At the initial stage of any subgame, we randomly choose userz
1 from the players subset Φ
Z, then we can find the second user z
2 who can maximize user z
1’s utility. Repeat the steps above and we can find a multicast friend cycle. Using proofs by contradiction, if such cycle does not exist, the above-mentioned user sequence will extend infinitely. Since any two users are different and the total number of users in the cell is limited, this assumption is clearly not true. And according to Definition 5, each user takes the decisions that are best for themselves; no participant can take a joint action that is better for all of them to deviate from current coalition. Any multicast friend cycle generated through the above steps is a top coalition.Theorem 7.
For gameΩ
=
{
N
,
Φ
N
,
W
,
(
≻
i
)
i
∈
N
}, the strategy set for generating multicast friend groups is a core solution, and the set of coalitions resulting from a decision initiated by any one of the multicast users is unique if no strategies for one player can bring about the same utility.Proof.
According to Lemma6, at the beginning of game Ω, we randomly choose a user to invite other users and obtain a top coalition C
1. By Definition 3, players in this top coalition have achieved the maximum utility currently available; these players will not continue to participate in current game. After removing the players mentioned above, the original game becomes its corresponding subgame ℧
=
{
Z
,
Φ
Z
,
W
,
(
≻
i
)
i
∈
Z
}, where Z
=
N
∖
C
1. With the generation of one multicast friend cycle after another using Lemma 6, we have Z
=
N
∖
C
t for corresponding subgame to each iteration t
=
1
,
⋯
,
T
. According to Definition 4, this completes the proof. For the second part of the theorem, using proofs by contradiction, if one player can join two different top coalitions, it must have more than one optimal strategy, which contradicts Definition 5.
Based on Lemma6 and Theorem 7, we can find the core solution for cooperative group formation.


## 4.1.1. Utility Function

When a user is ready to invite another user to join the multicast group, what are the main considerations?First, consistency of user preferences within group is a prerequisite for multicast group formation, in order to improve the efficiency of spectrum resources in cellular system. We use collaborative filtering method to obtain the similarity of users’ interest. Assume that the number of multicast video types available isX,K
(
i
)
=
a
1
i
,
a
2
i
,
⋯
,
a
X
i denoting user i’s interest set, obtained from historical data analysis, where a
x
i is a binary variable, which is equal to 1 if user i is interested in video type x; otherwise a
x
i
=
0. The interest similarity between users i and j can be obtained by the Jaccard coefficient [22], expressed by(3)
S
i
,
j
=
K
i
∩
K
j
K
i
∪
K
j
,where 0
≤
S
(
i
,
j
)
≤
1, the larger the value is, the more likely the users are to choose the same video content.Since social attributes represent long-term contact between users, links maintained with them tend to be stable [23]. With the help of social-related parameters to filter users, we can maximize the use of temporary links to achieve QoE promotion. We use Q
(
i
,
j
) to denote the social affinity of users i and j, which can be obtained by analyzing their interactions with social software. Note that 0
≤
Q
(
i
,
j
)
≤
1, the larger the value, the closer the relationship between users. Besides, since the next collaboration will take place with D2D communication, users have to consider location information when inviting other members, lest they become isolated nodes. We characterize this property in terms of the ratio of distance between users to diameter of the cell, expressed by G
(
i
,
j
)
=
d
i
,
j
/
D, where D denotes the diameter and d
i
,
j denotes the distance between users i and j, 0
<
G
(
i
,
j
)
≤
1.After the above discussion, we can see that there are three main factors that affect the preference of user invitation, and their relationship to utility functions can be expressed as(4)
∂
U
∂
S
≥
0
,
∂
U
∂
Q
≥
0
,
∂
U
∂
G
≤
0And we will use the method of microeconomics to design utility function to quantify this preference. In microeconomics, utility is the quantitative expression of preference, and utility is divided into ordinal utility and cardinality utility [24]. Cardinal utility is measured by absolute value, while ordinal utility is concerned with the relative relationship of utility. Here, the users are concerned only with the relative relationship of the utility brought about by inviting different users; hence we use ordinal utility to quantify preferences. Because there is no alternative or complementary relationship between interest similarity, social attributes, and geographical location, we use Cobb-Douglas preference model to design our utility function, expressed as(5)
U
i
,
j
=
S
i
,
j
α
Q
i
,
j
β
G
i
,
j
γ
,where α, β, and γ are the corresponding coefficients to adjust the priorities and all positive. Note that the value of ordinal utility itself has no physical meaning; we just use it to quantify preference; the forms of utility function are not unique. Besides, without considering the preference similarity, the proposed scheme can also be used for users in the same MBMS service area [25].


## 4.1.2. Coalitional Game Formulation

Then, we cast the multicast group formation as a coalitional gameΩ
=
{
N
,
Φ
N
,
W
,
(
≻
i
)
i
∈
N
} as follows:(i)
The set of playersN is the set of multicast users.
(ii)
The set of cooperation strategies isΦ
N
=
{
(
f
i
)
i
∈
N
:
f
i
∈
N
t
,
∀
i
∈
N
}, which denotes the set of current investible users for all users.
(iii)
The characteristic function isW
(
Δ
)
=
{
(
f
i
)
i
∈
N
∈
Φ
N
:
(
f
i
)
i
∈
Δ
=
(
j
)
j
∈
Δ
a
n
d
f
k
=
k
,
k
∈
N
∖
Δ
} for each multicast group Δ
∈
N. There are only two cases for the players, and the condition (
f
i
)
i
∈
Δ
=
(
j
)
j
∈
Δ denotes that user i chooses to invite user j to join a multicast group Δ (a coalition). The condition f
k
=
k
,
k
∈
N
∖
Δ represents that user k out of the coalition Δ is not in any group.
(iv)
The preference order(
≻
i
)
i
∈
N is defined as (
f
k
)
k
∈
N
≻
i
(
f
k
′
)
k
∈
N if and only if U
(
i
,
f
i
)
⩾
U
(
i
,
f
i
′
). In detail, user i prefers the group formation strategy (
f
k
)
k
∈
N to (
f
k
′
)
k
∈
N if and only if user i invites assigned user f
i in strategy (
f
k
)
k
∈
N to have more utility than inviting assigned user f
i
′ in strategy (
f
k
′
)
k
∈
N according to above-mentioned utility function.Definition 1.
The core is the set of(
f
i
∗
)
i
∈
N
∈
W
(
N
) for which a coalition Δ does not exist and (
f
i
)
i
∈
N
∈
W
(
Δ
) such that (
f
i
)
i
∈
N
≻
i
(
f
i
∗
)
i
∈
N.
That is, no set of participants will actively take a joint action that is better for all of them to deviate from current coalition, which is in the same spirit as Nash equilibrium in a noncooperative game. By obtaining a core solution of the coalition game, the formation of multicast groups is completed.


## 4.1.3. Coalitional Game Core Solution

Now, we study the existence of the core solution.Definition 2.
A game℧
=
{
Z
,
Φ
Z
,
W
,
(
≻
i
)
i
∈
Z
} is a subgame of the game Ω if and only if Z
⊆
N
a
n
d
Z
≠
∅.Definition 3.
A nonempty subsetΔ
∈
Z is a top coalition for a subgame ℧
=
{
Z
,
Φ
Z
,
W
,
(
≻
i
)
i
∈
Z
} if and only if, for strategy set (
f
z
∗
)
z
∈
Z
∈
W
(
Δ
) and any strategy (
u
z
)
z
∈
Δ
∈
W
(
C
)
C
⊆
Z, we have U
(
z
,
f
z
∗
)
⩾
U
(
z
,
u
z
) for all z
∈
Z.
In fact, a subgame is a subset of the players of the original game. Note that the strategy set to build a top coalition is the core of the subgame made up of members in the top coalition, since the group is collectively best for all its members.Definition 4.
The gameΩ
=
{
N
,
Φ
N
,
W
,
(
≻
i
)
i
∈
N
} owns only one core solution if and only if all its subgames have a top coalition and any player in any subgame cannot belong to more than one top coalition.
That is, the top coalitions set up by adopting the core strategy are the multicast groups we need.Definition 5.
For a coalitional subgame℧
=
{
Z
,
Φ
Z
,
W
,
(
≻
i
)
i
∈
Z
}, we define a user sequence (
n
1
,
⋯
,
n
C
) as a multicast friend cycle if and only if U
(
z
c
,
z
c
+
1
)
⩾
U
(
z
c
,
z
k
)
∀
z
k
∈
Z for all z
=
1
,
⋯
,
C
-
1 and U
(
z
C
,
z
1
)
⩾
U
(
z
C
,
z
k
)
∀
z
k
∈
Z.Lemma 6.
For any subgame℧
=
{
Z
,
Φ
Z
,
W
,
(
≻
i
)
i
∈
Z
}, we can obtain at least one multicast friends cycle. Any multicast friend cycle is a top coalition of corresponding subgame ℧.Proof.
At the initial stage of any subgame, we randomly choose userz
1 from the players subset Φ
Z, then we can find the second user z
2 who can maximize user z
1’s utility. Repeat the steps above and we can find a multicast friend cycle. Using proofs by contradiction, if such cycle does not exist, the above-mentioned user sequence will extend infinitely. Since any two users are different and the total number of users in the cell is limited, this assumption is clearly not true. And according to Definition 5, each user takes the decisions that are best for themselves; no participant can take a joint action that is better for all of them to deviate from current coalition. Any multicast friend cycle generated through the above steps is a top coalition.Theorem 7.
For gameΩ
=
{
N
,
Φ
N
,
W
,
(
≻
i
)
i
∈
N
}, the strategy set for generating multicast friend groups is a core solution, and the set of coalitions resulting from a decision initiated by any one of the multicast users is unique if no strategies for one player can bring about the same utility.Proof.
According to Lemma6, at the beginning of game Ω, we randomly choose a user to invite other users and obtain a top coalition C
1. By Definition 3, players in this top coalition have achieved the maximum utility currently available; these players will not continue to participate in current game. After removing the players mentioned above, the original game becomes its corresponding subgame ℧
=
{
Z
,
Φ
Z
,
W
,
(
≻
i
)
i
∈
Z
}, where Z
=
N
∖
C
1. With the generation of one multicast friend cycle after another using Lemma 6, we have Z
=
N
∖
C
t for corresponding subgame to each iteration t
=
1
,
⋯
,
T
. According to Definition 4, this completes the proof. For the second part of the theorem, using proofs by contradiction, if one player can join two different top coalitions, it must have more than one optimal strategy, which contradicts Definition 5.
Based on Lemma6 and Theorem 7, we can find the core solution for cooperative group formation.


## 4.2. User Cooperation Scheduling

As we mentioned earlier, with a view to the hierarchical encoding structure of SVC streaming, the same layer of a GoP has different values according to the actual reception. For example, layer 4 enables better video quality for user who owns layers{
1,2
,
3
}, but it does not work for user who only has layers {
1,2
}. The proposed scheme targets to improve video quality of the multicast group as much as possible in a subphase, which is directly related to layers that can be reconstructed. Considering the upper limit to the perceived video quality of users and marginal utility on the improvement of QoE [26, 27], the optimization problem can be formulated as(6)
max
⁡
∑
i
=
1
N
1
1
+
exp
⁡
-
ω
l
iwhere ω is the marginal utility coefficient and l
i is the number of layers that user i has successfully reconstructed from this collaboration. Now we analyze this problem with an exact potential game.Definition 8.
A gameΓ
=
{
C
,
(
Y
i
)
i
∈
C
,
(
U
i
)
i
∈
C
} is an exact potential game, if there exists a function H
:
Y
→
R, such that, ∀
i
∈
C
,
∀
y
-
i
∈
Y
i
,
∀
x
,
z
∈
Y
i, we have U
i
(
x
,
y
-
i
)
-
U
i
(
z
,
y
-
i
)
=
H
(
x
,
y
-
i
)
-
H
(
z
,
y
-
i
). C
,
H
,
Y
i
,
U
i are, respectively, player set, potential function, player i’s strategy set, and utility function.A potential game must have equilibrium with pure strategy and a discrete potential game has finite improvement properties [28]. If the objective function is a potential function of a game with discrete strategy space, it must have an optimal solution and can be solved by local search. Now we formulate a potential game Γ as follows: the set of players C is the set of users in a multicast group, player i’s available strategy Y
i is to choose which player in the group to request video layer, utility function is F
i
=
1
/
1
+
e
x
p
-
ω
l
i, and potential function is H = ∑
i
=
1
N
‍
1
/
1
+
e
x
p
-
ω
l
i
=
∑
i
=
1
N
‍
F
i.According to [28], we can prove the proposed objective function is a potential function of game Γ. Since the number of members in multicast group is finite, game Γ’s strategy space is discrete. The problem (6) can be solved by local search algorithm such as Tabu Search and Simulated Annealing.


## 5. Performance Analysis

In this section, we evaluate the performance of the proposed cooperative SVC streaming multicast scheme through simulations by using MATLAB.Without loss of generality, we suppose that the wireless multicast channel conditions are random but quasi-static and remain unchanged from one GoP that is sent out until the deadline to be dropped. Since channel capacity described by the Shannon equation does not reflect the wireless channel conditions preciously, where the wireless channels are burst-loss prone at upper layer, we use the Gilbert-Elliot channel model to capture burst-loss features in the proposed system without handling the details of the datalink layer and physical layer. Gilbert-Elliot model can be denoted by a two-state stationary continuous time Markov chain; there are only two cases per link: Good or Bad. If the state is Bad, one frame will be lost; otherwise, it can be successfully decoded.For video streaming, we consider H.264/SVC video codec with YUV420; i.e., there are 8 layers per GoP and each layer consists of 16 encoded video frames. We implement the experiments with the real video traces Foreman, where the average PSNR (Peak Signal-to-Noise) of the Foreman is 43.32 dB, the resolution of the Foreman is 352×288, and default video encoding bitrate is 450Kbps.Besides, in order to measure the performance of the proposed scheme, we consider the following three measurement metrics:Peak Signal-to-Noise: PSNR (Peak Signal-to-Noise) is an objective evaluation of video quality and is a function of the mean square between the original and the received video sequences, which can be formulated as(7)
P
S
N
R
=
20
·
log
10
⁡
M
A
X
I
M
S
Ewhere M
A
X
I is the maximum value of frame pixel and M
S
E is the mean square error between the original and the received video sequences.Valuable Video Frame Ratio: the valuable video frame ratio is defined as the ratio between the number of valuable video frames received by a user and the number of all transmitted frames before playback.Mean Opinion Score: MOS (Mean Opinion Score) is a subjective measurement of user’s view on the video quality. When the PSNR range is about >37, 31~37, 25~31, 20~25, <20, user’s subjective experience quality is “Excellent", “Good", “Fair", “Poor", and “Bad", respectively [13].The performance of the proposed scheme is compared with direct multicast in our simulations. According to multicast channel conditions, users with direct SVC multicast discard the enhancement layers that could not be decoded due to burst-loss.N users are scattered into a round cell, and the interest similarity and social affinity between each other are also randomly obtained, and coefficients α, β, γ, ω are equal to 1. The base station determines the average bit rate that can transmit all layers of one GoP in multicast round, and D2D cooperation round is set to transmit an enhancement layer.First, we evaluate the performance of our proposed cooperative group formation scheme; the experiences are implemented with different number of multicast users in the cell,N = 100, 200, 300, 400, 500, 600, 700, 800. To ensure the generality of the result, for each given N, we average over 1000 runs. Figure 5 shows the average size of cooperative multicast groups. We can see the size of groups has not skyrocketed with the number of users but slows down the growth rate gradually. This is because users select clusters based on the coalitional game. A player can only select one player as the optimal strategy, and each player can only be selected once, thus limiting the size of cooperative groups.Figure 5
Average size of cooperative groups under various number of users.Next, we employ the above evaluation metrics to compare the received video quality of the proposed scheme and traditional direct multicast. The default multicast group size is set to 10. Figure6 shows the relationship between the received video quality in terms of PSNR and the probability of burst-loss during one GoP transmission. Obviously, the growing probability of burst-loss signifies worse channel qualities. With the deterioration of channel quality, the gain of the proposed scheme over direct multicast shows a gradual increase and then remains stable. This is because the restoration of video quality in the proposed scheme is based on the complementarity among users. With the degradation of channel conditions, the probability of complementarity between users increases gradually. But when the channel quality deteriorates to a certain extent, most users have only few of enhancement layers, and the possibility of cooperation is reduced.Figure 6
Relationship between the video quality and burst-loss probability.In Figure7, curves of valuable video frame ratios with the probability of burst-loss during one GoP transmission are depicted. We can observe that the proposed scheme far outperforms direct multicast, especially when the channel quality is quite poor. The valuable video frame ratio of the proposed scheme is 65.9% higher than direct multicast. This is because users in the direct SVC streaming multicast system have to discard the corresponding enhancement layers, and the system resources are severely wasted.Figure 7
Valuable video frame ratio under various burst-loss probability.To better understand the performance of the proposed scheme, Figure8 shows the experience qualities in terms of MOS under various burst-loss probability and the SVC streaming recovery with the real video traces Foreman is shown in Figure 9. As we can see, the distortion of the video sequences with the proposed scheme is slight. According to Figures 6 and 9, the average PSNR of the proposed scheme is higher than 35dB and users’ MOS is “Excellent" or “Good". But the PSNR of direct multicast is between 24dB and 34dB, which signifies the MOS is “Fair". So the scheme proposed in this paper greatly improves the user’s experience.Figure 8
Mean opinion score under various burst-loss probability.Figure 9
Video recovery performance under various burst-loss probability: (a) Foreman frame, (b) direct multicast, and (c) the proposed scheme.


## 6. Conclusions

This paper studied a cooperative SVC streaming multicast scheme based on D2D communication to improve the received video quality over burst-loss prone channels. The proposed scheme motivates multicast users to form cooperative groups based on coalitional game theory to share enhancement layers. The proposed optimal D2D links scheduling based on potential game helps to improve the received video quality of multicast users, while taking into account the hierarchical encoding structure of SVC. Moreover, the proposed scheme can make up the burst-loss without introducing heavy redundancy to video codec or add new network interface. Extensive numerical analysis studies with real video traces have corroborated the significant gain using the proposed scheme.In future, it is of great interest to design a distributed optimal link scheduling algorithm to reduce the burden of centralized scheduling on the BS.



---

*Source: 9315357-2018-10-25.xml*