Power, Control, and OptimizationView this Special Issue
Integer-Linear-Programing Optimization in Scalable Video Multicast with Adaptive Modulation and Coding in Wireless Networks
The advancement in wideband wireless network supports real time services such as IPTV and live video streaming. However, because of the sharing nature of the wireless medium, efficient resource allocation has been studied to achieve a high level of acceptability and proliferation of wireless multimedia. Scalable video coding (SVC) with adaptive modulation and coding (AMC) provides an excellent solution for wireless video streaming. By assigning different modulation and coding schemes (MCSs) to video layers, SVC can provide good video quality to users in good channel conditions and also basic video quality to users in bad channel conditions. For optimal resource allocation, a key issue in applying SVC in the wireless multicast service is how to assign MCSs and the time resources to each SVC layer in the heterogeneous channel condition. We formulate this problem with integer linear programming (ILP) and provide numerical results to show the performance under 802.16 m environment. The result shows that our methodology enhances the overall system throughput compared to an existing algorithm.
Rapid advancement in mobile wideband wireless network (i.e., 4G and 5G) supports real time services such as IPTV and live video streaming. Nevertheless, efficient resource allocation is required to satisfy delay requirements and to overcome the bandwidth shortage due to the increased number of users. Because of the sharing nature of the wireless medium, the wireless multicast has attracted much attention when multiple users want to receive the same video service at the same time .
Multicast service in wireless heterogeneous networks can adaptively choose a certain modulation and coding scheme (MCS)  based on the channel status and the hardware capability of the receivers. For the nonscalable coding (or called a single-layer coding) the multicast data rate and video quality are determined by the user who experiences the worst channel status [1, 3].
To alleviate the video performance degradation caused by the user who has the worst channel status, scalable video coding (SVC)  with adaptive modulation and coding (AMC) provides an excellent solution. In SVC, a video stream is divided into multiple layers. SVC encodes video with the nested dependency: the base layer encodes the basic video quality and higher layers, called the enhancement layers, refine the visual quality from the base layer with smaller quantization granularities. To enhance the overall performance of wireless multicast video streaming, we assign a low MCS to base layer and high MCSs to enhancement layers, so that the users in bad channel conditions receive fewer enhancement layers and obtain basic video quality, while the users in good channel conditions receive more enhancement layers and obtain better video quality.
A key issue arising under this setting is how each layer selects its MCS under the constraint of available radio resources for multicast services. A lot of research has studied the resource allocation problem in wireless multicast streaming video services [5–10]. In particular, [8, 10] are most closely related to our research work, which provides solutions in both the single channel and slot TDMA-based networks. Reference  proposed an algorithm that guarantees full coverage which provides all destinations with at least a base layer to accommodate them. It allocates other MCSs to the enhancement layers with a heuristic algorithm to maximize the sum of utilities of all the receivers. It assumed that the size of each video layer is the same and the utility function of a user is simply a log function of the received data. The size of each layer is usually different, such that SVC supports various video qualities. The video quality experienced by a user is peak signal-to-noise ratio (PSNR) not a simple log function, so PSNR should be used in the resource allocation.
Reference  formulated a model that provides different size for each layer to support various video qualities. It used PSNR as a utility function to reflect the video quality experienced by a user and utilized dynamic programming for optimal network design. While the PSNR depends on the number of received packets in a layer, it increases only when all the packets in a layer are received fully. This PSNR model cannot be applied to other encoding methods of which PSNR increases with respect to the received packets. Hence, the PSNR which is the function of the received packets has to be derived. To search for an optimal solution easily, it assumes that the packet size and the slot size are fixed. However, if data rate is varied, the fixed-size slot cannot be utilized fully. Thus, if the slot size is determined based on each MCS, more video data can be transmitted without idle time in a slot.
To overcome these problems, we analyze PSNR models of various SVC encoding methods and choose a utility function to accommodate all the PSNR models. We also formulate a model which varies the slot size based on each MCS and utilize integer linear programming (ILP) to obtain the optimal solution.
The rest of the paper is organized as follows. The background and system architecture are discussed in Section 2. In Section 3, we present the system model and utility formulation. The problem formulation is described in Section 4. Section 5 explains ILP modeling and Section 6 shows the numerical results. Finally, Section 7 concludes the paper.
2.1. Scalable Video Coding
Scalable video coding compresses a raw video sequence into a base layer and one or multiple enhancement layers. The base layer provides video data whose resolution is low, while the higher layers refine the video generated by the lower layer. SVC can provide adaptive video quality in wireless networks, but its performance is poor in terms of video quality compared to single-layer coding. Recently, SVC has improved its coding efficiency. For example, the newly established MPEG-4 SVC provides equal visual quality comparable with H.264/AVC (single-layer coding) but with at most 10% higher bit rate.
The quality of video can be measured using PSNR, which is a nondecreasing function of the received video data [11–15]. The PSNR function has different shapes according to encoding schemes, and it can be classified into four groups as illustrated in Figure 1 [11–15]. From Figure 1, we can observe that the functions of Figures 1(a) and 1(d) are represented as piecewise linear functions directly. However, Figures 1(b) and 1(c) show nonlinear functions, and so we approximate them to piecewise linear functions in the next section.
2.2. Mobile Wireless Systems
In infrastructure-based wireless networks, we consider the video multicast. A video server is equipped in the layered video codec to encode the video into multiple layers as illustrated in Figure 2. The video server then streams the video from all layers to APs (or base stations). The number and the size of the layers corresponding to each video frame are delivered to APs for every video frame period. The connection speed between the video server and the APs (or base stations) is high and reliable. Video stream is usually transmitted at a constant bit rate and an AP or base station forwards the packets delivered by video server to users for fragmentation. So, the packet size is fixed and is transmitted in a wireless channel.
Scheduling (resource allocation) in a wireless network MAC is done once for every scheduling frame period whose length is identical to the length of the video frame in our system. A scheduling frame consists of multiple time slots. The size of a time slot is the minimum time required to transmit a packet with a MCS. It means that the maximum number of available slot sizes is equal to the number of MCSs.
We consider the heterogeneous wireless networks, and so the users who experience relatively bad channel status can select a relatively high rate that leads to the considerable packet loss. In our system, each user measures its SNR and finds which MCS indicates the maximum data rate that satisfies target BER (bit error ratio) to decode the received data. An AP or base station assigns the radio resource and MCSs to layers to maximize the sum of utilities of all users to find the optimal solution.
3. System Model and Utility Formulation
We consider the one-hop broadcasting in wireless networks for the problem formulation. There are users, and is the size of a scheduling frame period, which is equal to that of video frame period. We assume a set of possible MCSs (e.g., MCS indicates QPSK-1/2 and others). High MCS means a high data rate. If a user can decode the data provided by MCS by satisfying a target BER, it can also decode the data that is less than MCS . is the maximum MCS, which can be received by user based on the channel status. User transfers its MCS to its AP (base station). is the time slot size given by MCS . We consider a single multicast session which has layers. Each layer is divided into many slices, which is also split into the packets of fixed-size. is the number of packets of layer .
Now, we explain a utility function and the related variables. As aforementioned, the satisfaction of the users is proportional to the quality of multimedia defined as PSNR, which is a function of the received throughput. We assume that there is no packet loss in the wireless channel. That is, user can decode a packet if it is transmitted by MCS . As illustrated in Figure 1, the PSNR function has four types. First, we are focusing on the second scheme of Figure 1(c) because the other schemes can be easily explained using this.
As we can see in Figure 1(c), it is nonlinear function and ILP cannot be formulated. In this paper, we approximate it with piecewise linear function as illustrated in Figure 3. We can see that there is relatively large difference between the original PSNR and the approximated one with a few packet losses. However, in case of more packet loss, it shows little difference. In fact, the packet loss which shows relatively large difference is quite less among all the packets and so it is not critical. Although this is incomplete, it can guarantee higher total utility than those of the existing methods [8–10] because the existing methods just consider a utility model that increases only when a user receives a layer completely. This approximation also can be formulated by ILP modeling. Figure 3 shows that the function has zero utility until it reaches the threshold, indicating the number of packets which does not increase the video quality in a layer. Let be the number of received packets which have zero utilities in layer . The utility function increases linearly when the packets in a layer are received from the threshold to the number of packets of layer . Let be the number of received packets which increases the utility linearly. Denote as the indicator function that is 1 if layer is transmitted by and 0 otherwise: Denote as the indicator function that is 1 if all the received packets are modulated by and 0 otherwise: Here, we set that because . Hence, with these indicator variables, we utilize the approximated PSNR model as the utility function of the user given as with the constraints of layer transmission: where is the PSNR weight of the packets which increases the utility of layer linearly. is the PSNR weight of the complete reception of layer . in (3) means the approximated PSNR to in layer . in (3) means the approximated PSNR by the complete reception of layer . That is, if the last packet of layer is transmitted by MCS , has 1 only if , otherwise zero.
Three other methods of the utility function can be easily derived as follows. If we set , the first scheme can be formulated. If we set and , the third scheme can be formulated. If we set , the final scheme can be formulated.
4. Problem Formulation
In this paper, we formulate an ILP problem to assign modulation and coding scheme for each layer in terms of the sum of utilities under any given resource constraints. That is, we have to find out in order to following the total time constraints: and layer transmission constraints (1), (2), and (4). Since this formulation does not consider the nested dependency of SVC, it cannot solve the optimal solution yet. We present three lemmas to get an optimal solution.
Lemma 1. In the optimal solution of the multicast resource allocation problem in wireless networks with the encoding methods , if the last packet of layer is transmitted using modulation , the packets that have zero utility in layer use , and then it must be . That is, the following condition should be satisfied: with constraint of , (2).
Proof. We assume that two layers and use modulations and , respectively. If and , one can improve the utility by swapping and because the utility of packets of layer using is less than and equal to the utility of layer using .
Lemma 2. In the optimal solution of the multicast resource allocation problem in wireless networks with the encoding methods , if the last packet which has zero utility in layer is transmitted using modulation , the packets that have nonzero utilities in layer use ; then, it must be . That is, the following condition should be satisfied: with constraint of , (1).
Proof. We assume that packets which have zero utilities and packets which increase the utility linearly of layer use and , respectively: and . If , one can improve the utility by swapping and because the utility of is less than and equal to the utility of .
Lemma 3. Let be the set of users that can receive MCS . To accommodate all users, the base layer should be transmitted by the MCS :
Proof. The proof follows from the fact that all users have to access the base layer and the time resource required to fit the base layer will diminish with increasing modulation.
5. ILP Modeling
Lemma 4. For , if binary random variable has the following condition: where and are the elements of a constant vector and is a constant and is always larger than , conditional equation (11) is given as
Proof. We can prove it easily. Equation (12) means that should be 0 if , and it can be 1 or 0 otherwise. On the contrary to this, (13) means that should be 1 if , and it can be 1 or 0 otherwise. If we use these two equations, (12) and (13), we can guarantee condition (11). Using Lemma 4, the conditions in (1) and (2) are changed as follows.
Theorem 5. should be satisfied by
Proof. This can be easily proved by Lemma 4.
Theorem 6. should be satisfied by
Proof. This is can be easily proved by Lemma 4.
In the worst case, since our method utilizes the same domain as the existing method  to find out an optimal solution, the complexity obtained . is the complexity which is precalculated to find out the highest MCS to each node. is the complexity to solve and for all , , and . is the maximum number of slots and is the minimum size of a slot. The complexity of the proposed method is pseudopolynomial due to the factor related to the time resource and the number of nodes. Since the complexity is linearly proportional to the number of nodes, the network size does not deteriorate the performance in the proposed methods. Therefore, the complexity of the proposed method is acceptable.
6. Numerical Results
In this section, we present the numerical results for our proposed solution. We consider one base station with 14 mobile users distributed in the circular area from base station. The test is based on the 802.16 m evaluation methodology document  for a 3.5 MHz spectrum in 3.5 GHz range. We assume that there are four types of MCSs in the IEEE 802.16 m standard . Table 1 shows the MCSs we use in our test and the number of users who can support each MCS. We assume that, for every scheduling period, the fixed-size packet of 60 bits is transmitted in a wireless channel. Other various settings including MAC/PHY header, ACK, interframe space time, and others are not considered. This is because we aim to provide abstraction of important features of our solutions. Other existing researches [8, 10] are also not considered for it. If the setting is required, our solution can use it easily.
In order to analyze the features of our solution, we consider a single video session. Each video session has a fixed layer rate of 800 kb/s, and the number of layers in each session is 8. This is based on the standard of the SVC extension  of H.264/MPEG4-AVC. So, each layer can handle 400 packets in a scheduling period because the size of the layer is 30 Kbyte in a scheduling period. We set that and for based on .
We compare our solution with the fixed-slot solution which was solved by dynamic algorithm , as the scheduling varies period from 20 ms to 30 ms with interval 1.25 ms. The software package CPLEX is used to find the solution. Table 2 shows the size of a slot to transmit a packet in both solutions and the number of packets that can be transmitted by the method during a slot of the fixed-slot method.
Figure 4 shows the sum of utilities of two solutions. The proposed method enhances the sum of utilities by about 1.9–7.6% compared to the other method. The difference between the two solutions shows an increasing trend. This is because the proposed method assigns more time resource to the low MCSs compared to the other method by reducing the idle time. By detailed observation at 30 ms of frame period, we can understand why the proposed method can enhance the performance. Table 3 specifies the performance difference between the proposed solution and the fixed-size solution at 30 ms of frame period. The sum of utilities of our solution is 6950, while that of the fixed-slot solutions is 7478. Our solution is higher about 7.6%. This is because by eliminating idle time our solution provides second MCS with more slots than those provided by the fixed-slot solution even though both provide the transmission of all the layers.
In this paper, we considered and studied the resource allocation problem in SVC video multicast with AMC in wireless networks. First, we assume that all packets have equal length to consider the real video transmission environments. It is also assumed that each MCS has different slot length, which is the minimum time length required to transmit a packet with the corresponding MCS. We formulated a utility function as a piecewise function for ILP modeling using the existing results [11, 13]. Finally, we define ILP problem by proposing some lemmas and a theorem to formulate ILP problem. We provide numerical results to show performance difference with  under 802.16 m environments. The results show that our methodology enhances overall system throughput by eliminating radio resource waste.
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
This research was supported by the Basic Foundation of Korea (NRF) funded by the Ministry of Education, Science and Technology (2012R1A1A2007605).
S. Tang and P. R. Alface, “Impact of packet loss on H. 264 scalable video coding,” in Proceedings of the 5th International Conferences on Advances in Multimedia (MMEDIA '13), pp. 67–73, 2013.View at: Google Scholar
Z. Ma, Z. Liu, M. Xu, and Y. Wang, “Modeling the channel distortion of temporal scalable video,” Tech. Rep., Polytechnic Institute of New York University, 2009.View at: Google Scholar
R. Srinivasan, J. Zhuang, L. Jalloul, R. Novak, and J. Park, “IEEE 802.16 m evaluation methodology document (EMD),” IEEE 802.16 Broadband Wireless Access Working Group, 2008.View at: Google Scholar
I. B. W. A. W. Group, “IEEE Standard for local and metropolitan area networks, part 16: air interface for broadband wireless access systems, amendment 3: advanced air interface,” IEEE Std 802.16 mTM, 2011.View at: Google Scholar