OPTIMAL RESOURCE ALLOCATION FOR LAYERED VIDEO MULTICASTING IN WIMAX

Real-time video disseminations over wireless links such as video telephony, video conferencing and mobile TV have become fast growing applications. In order to cope with the increasing users’ demand, a new scalable and efficient wireless distribution platform is needed. With numerous advantages such as QoS assurance, high data rate and wide coverage, WiMAX has been regarded as an ideal choice to provide ubiquitous access for multimedia applications. However, how to achieve effective layered video multicasting in WiMAX networks is a challenging issue. In this study, we propose a utility-based resource allocation mechanism for layered video multicasting. In the proposed approach, Application-Layer Forward Error Correction (AL-FEC) is employed to deal with inevitable packet loss. Thus, for each video layer, WiMAX base stations can jointly choose a proper Modulation-and-Coding Scheme (MCS) and AL-FEC overheads to transmit. Our goal is to maximize the system utility which comprises two important factors, system reward and resource usage. System reward represents the summation of video quality of all subscribers while resource usage denotes the consumed WiMAX resources in terms of time slots. To efficiently obtain the optimal solution, we propose two heuristic algorithms, namely genetic algorithm and Layered Policy Iteration (LPI) algorithm and compared their performance to the optimal solution found by exhaustive search. We demonstrate the performance of the approaches via extensive simulations. The simulation results show that the LPI algorithm can provide great service quality and utilize system resource effectively.


INTRODUCTION
With rapid advance in broadband wireless communication, real-time video disseminations over wireless links such as video telephony, video gaming and mobile TV have become fast growing applications. In order to cope with increasing users' demand, a new scalable and efficient wireless distribution platform is needed. Worldwide Interoperability for Microwave Access (WiMAX) (IEEE Std 802.16-2009 employs Orthogonal Frequency Division Multiple Access (OFDMA) with adaptive Modulation and Coding Scheme (MCS) capacity to achieve superior performance. Moreover, WiMAX MAC layer supports Multicast and Broadcast Service (MBS) and multiple traffic classes to guarantee Quality of Service (QoS). Thus, WiMAX networks have become an ideal choice to provide ubiquitous access for multimedia applications.
To transmit high-quality video over wireless medium, scalable video streams also play a key role. Scalable Video Coding (SVC) has been standardized and became an extension of the H.264/AVC standard (Schwarz et al., 2007). A SVC-encoded video is comprise of one base layer and multiple enhancement layers, which is also called "layered video". Based on SVC, WiMAX Base Stations (BSs) are capable of performing source rate Science Publications JCS adaptation according to rapid fluctuating wireless channel conditions. In WiMAX networks, multicasting is an efficient way to disseminate layered video to a group of Mobile Stations (MSs). In order to achieve desirable service quality and effective resource usage, an effective radio resource allocation mechanism for layered video multicasting is essential. But, such mechanism is not specified in the WiMAX standard.
In a wireless network, channel conditions of MSs vary considerably. This brings rigorous challenges to WiMAX BS. MSs that have poor channel conditions usually cannot correctly decode video data due to massive packet loss. As a consequence, the overall service quality would be significantly degraded. To overcome such inevitable packet loss, a typical approach is to select a more robust MCS which also lowers transmission rate. In this approach, all MSs can only receive video programs with low quality. Another approach is to use Application-Layer Forward Error Correction (AL-FEC) (Byers et al., 2002). The basic idea of AL-FEC is that k original data packets are encoded to n packets with n = k + h, where h> 0 denoted the number of redundant packets (For clarity, we use the term "AL-FEC overheads" in the rest of the paper). For video multicasting, a main advantage of AL-FEC is that n encoded packets have equal importance and therefore all the original packets can be recovered as long as k encoded packets are successfully received. In addition, the approximate decoding time of this approach is O(k) (Mitzenmacher, 2004) which is practical for mobile devices. However, as more AL-FEC overheads are added, more system resources are consumed. Thus, a desirable design should jointly adapt MCS and AL-FEC overheads so that video dissemination can be more effective.
Resource allocation for layered video multicasting over WiMAX has gained increasing attentions in the literature. Deb et al. (2008) modeled the multicast resource allocation problem as an optimization problem and presented a fast greedy algorithm to maximize total utility. Kuo et al. (2011) proposed a utility-based resource allocation scheme which firstly served all base layers and then offered additional enhancement layers to certain scheduled users by maximizing the marginal utility. However, reliability and throughput capacity of layered video multicasting could be further improved by collaborating with erasure coding (Ge et al., 2007). Wang et al. (2007) proposed an enhanced end-to-end system architecture for multicast and broadcast services in multiple BS scenarios and addressed several key issues such as synchronization, energy efficiency and robust video quality. In the proposed solution, video data is further encoded by Reed-Solomon codes and a crosslayer methodology is presented to jointly optimize spectrum efficiency and video quality. Huang et al. (2012) proposed a joint user scheduling and resource allocation algorithm (OLM) based on opportunistic multicasting. In the proposed algorithm, the base layer of a video program is served to all subscribers by minimizing resource usage while the enhancement layers are scheduled to a set of subscribers by maximizing transmission gain. In addition, an FEC rate adaptation scheme is also presented to approach theoretical performance. Nonetheless, these works does not provide desirable video quality to all subscribers since MCS and FEC code rate are separately selected.
In this study, we present a utility-based resource allocation mechanism for layered video multicasting in WiMAX networks. By adopting AL-FEC, WiMAX BSs are able to jointly choose a proper MCS as well as AL-FEC overheads to transmit each video layer. Our goal is to maximize the system utility which comprises two important factors, system reward and resource usage. System reward represents the summation of video quality of all subscribers while resource usage reflects consumed WiMAX resources. We propose two heuristic algorithms, namely genetic algorithm and Layered Policy Iteration (LPI) algorithm and compare their performance to the optimal solution found by exhaustive search. We demonstrate the performance of our approach via extensive simulations. The simulation results show that layered video multicasting service collaborating with AL-FEC can significantly improve the system utility, which is consistent with the previous results (Ge et al., 2007). More importantly, our LPI algorithm is more effective than the OLM algorithm (Huang et al., 2012).
The rest of this study is organized as follows. Section 2 describes the preliminaries of WiMAX multicast and broadcast service. Our approach is presented in section 3. Section 4 demonstrates the evaluations of the proposed approach via extensive simulations. Conclusions are finally drawn in section 5. Figure 1 illustrates the OFDMA frame structure in a Time Division Duplex (TDD) mode. An OFDMA frame consists of OFDMA symbols in the time dimension and sub-channels in the frequency domain. An allocable resource unit is a combination of OFDMA symbols and sub-channels and is referred to as a time slot in this study.

JCS
Each frame is further divided into downlink and uplink sub-frames separated by TTG and RTG gaps to prevent transmission collisions. In a downlink sub-frame, Multicast and Broadcast Service (MBS) is supported by either constructing a separate MBS OFDMA zone along with unicast service (Fig. 1) or allocating the whole subframe to MBS. Note that multiple MBS OFDMA zones in a sub-frame are also feasible. For each sub-frame, there is one MBS-MAP-IE included in DL-MAP. The MBS-MAP-IE specifies PHY configuration and location of each MBS OFDMA zone. The MBS-MAP is located at the head of the associated MBS OFDMA zone and contains multiple MAP-DATA-IEs. One MAP-DATA-IE specifies the multicast CID and MCS of one MBS burst. One MBS burst consists of MAC Packet Data Units (PDUs).
In this study, we focused on single-BS scenarios. The system architecture of layered video multicasting over single-BS is shown as Fig. 2. There are three main entities, video source, WiMAX BS and MSs. We assumed that each MS periodically measures and reports the channel information to the WiMAX BS. For each video layer, video data is assumed to be fragmented into fixed-size SDUs and encoded by Fountain codes (Mackay, 2005). Also, in a scheduled frame, a video layer is sent via one MBS burst. When a video program is subscribed, all video layers of the subscribed video program are sent from the video source to the BS via wired PHY medium. Then, the WiMAX BS allocates resource for each video layer by determining a combination of MCS and AL-FEC overheads. Once the allocation decision has been made for the entire frame, the scheduled frame is broadcasted to all MSs. Finally, MSs subscribing the same video program receive the video data by listening to the same multicast CIDs.

UTILITY-BASED RESOURCE ALLOCATION MECHANISM
To multicast an L-layer video program, the WiMAX BS needs to select L combinations of MCS and the number of redundant packets. In order to determine appropriate combinations of MCS and AL-FEC overheads, we proposed a Utility-based Resource Allocation Mechanism (URAM). For a video program, our system utility is determined by two factors, system reward and resource usage. System reward represents the summation of video quality of all subscribers while resource usage means the number of time slots used to transmit a video program. In the following sections, we firstly introduce the formulation of system reward and resource usage as well as the calculation of system utility. Then, we present three algorithms, namely exhaustive search, genetic algorithm and layered policy iteration, to maximize the system utility. The notations used in this study are shown in Table 1.

System Model
Let the number of users in a video program is N. The system reward R is the summation of reward gathered from each individual MS and is defined as follows: where, ‫݅ݎ‬ is the reward earned from an individual MS i. Let L be the total number of video layers in a video program and each video layer l has a reward value ‫.݈ݒ‬ The setting of reward value is an open question. The reward value of a video layer could be set based on importance or video quality of the video layer. In the performance evaluation, we will discuss the system performance influenced by different reward value settings. We assume that the reward is proportional to the number of decoded video layers. The reward of MS i is defined as: Here, we employ sigmoid function G(x) to model the reward earned from MS i. The sigmoid function G(x) is shown as follows: Total resource usage U The system utility L Total number of video layers ‫݈ݒ‬ The reward value of l th video layer P(i, l) The probability of l th video layer received by i th user ‫)݉,݀(ܮܲ‬ The packet loss rate given distance d and MCS m θ(l ) The percentage of AL-FEC overheads for transmitting l th video layer N t (l) The number of encoded packets of l th video layer N k (l) The number of original packets of l th video layer C(m) Number of bits per slot to MCS m N sypsl Number of carrier symbols per slot N bpsym (m) Number of bits per carrier symbol to MCS m r PHY (m) PHY layer code rate to MCS m Sr(l) The streaming rate of l th video layer where, a and b are constant parameters. Khan et al. (2009) showed that video quality is acceptable only if PSNR is higher than 27 dB which could be achieved when at least 94% video data is correctly received. Therefore, assuming that the reward of video layer l could be earned from MS I if ܲ(݅,݈)≥0.94 and thus we set the parameters of sigmoid function G(x), a and b, to 300 and -290. Figure 3 shows the curve of sigmoid function G(x) with parameters a = 300 and b = -290.
The decoding probability ܲ(݅,݈) is calculated by the following equations: (1 ( , )) * ( , ) where, ‫)݈݉,݅݀(ܮܲ‬ denotes the packet loss rate of video layer l for MS i and N t (l) denotes the total number of encoded packets of video layer l including ߠ(݈) percent of AL-FEC overheads. Since layered video has inherent decoding dependency, we also assume ܲ(݅,݈+1) = 0 if ܲ(݅,݈)<0.94. For MS i, the packet loss rate ‫)݈݉,݅݀(ܮܲ‬ varied with the distance with the WiMAX BS ݀݅ and the selected MCS ݈݉ used to transmit the video layer l. Equation (4) and (5) show the percentage of AL-FEC overheads ߠ(݈) also plays an important role to determine the decoding probability of video layer l. Next, we formulate the resource usage for multicasting a video program. Firstly, we need to understand how much video data can be transmitted in a single time slot. According the WiMAX specification, amount of data ܿ(݉) a time slot can carry in an OFDMA frame given a specific MCS m is: where, the code rate ‫)݉(ܻܪܲݎ‬ denotes the effective physical layer data rate for a given MCS m. Let ‫)݈(ݐܵ‬ be the streaming rate of video layer l and t be the video length transmitting in an OFDMA frame. Thus, for video layer l, the amount of data need to be transmitted in an OFDMA frame, ‫,)݈(ݏ‬ is calculated as follows: Then, the total number of time slots B for multicasting an L-layer video program is calculated by the following formula: Here, we introduce how to calculate the system utility U. Firstly, the system reward R and the resource usage B are normalized as follows: The normalized system reward ‫)ܴ(ݎܰ‬ and the normalized resource usage ‫)ܤ(ݎܰ‬ area value between 0 and 1. The system utility U is calculated as follows: where, β is a weight value. In the performance evaluation, we will select a proper weight β via simulations. A desirable algorithm is to yield the system utility U as closer to 1 as possible.

Exhaustive Search
Exhaustive search is a brute-force method. In this algorithm, we first generate all possible solutions and compute their system reward and required WiMAX resources. Given a bandwidth budget, the optimal Science Publications JCS solution which yields maximum system utility while the required WiMAX resources are lower than the bandwidth budget can be found by assessing all possible solutions. Although exhaustive search is able to find the optimal solution, however, the computational complexity of exhaustive search is really high. Therefore, exhaustive search is not a practical approach.

Genetic Algorithm
Next, we use Genetic Algorithm (GA) to reduce the computational complexity while retaining the search accuracy. In our GA-based algorithm, a chromosome represents combinations of MCS and AL-FEC overheads for a video program. Figure 4 shows the chromosome structure of this GA-based algorithm. A chromosome consisted of L genes and each gene had 10 bits which the first 3 bits denoted the selected MCS and the remaining 7 bits represented the percentage of AL-FEC overheads. For example, if a video layer is transmitted by the combination of the highest MCS and 81% AL-FEC overheads, the gene of the video layer will be encoded to 1111010001. Figure 5 shows the process of our GA-based algorithm. After initializing the population, we use the Equation (11) as the fitness function to select good chromosomes. Then the population could be improved through reproduction, crossover and mutation procedures. In crossover, exchanges of the MCS or AL-FEC overheads for a video layer may occur and therefore we set the probability of crossover and mutation to 1 and 0.02, respectively. In addition, the size of population is set to 200 and the maximum generation is 250.

Layered Policy Iteration
Since the GA-based algorithm may not able to find the optimal solution, we present a novel heuristic algorithm, Layered Policy Iteration (LPI). Figure 6 and 7 show the pseudo code of the LPI algorithm which consists of a resource allocation algorithm for a video layer (MURC) and a utility maximization algorithm for all video sessions along with a given resource constraint. In Fig. 6, for each video session, we first set the minimum consumed resources of each video layer to be the number of time slots required by the highest MCS (i.e., 64QAM) and no AL-FEC overhead (Lines 15 to 18). Due to layer decoding dependency, subscribers need to receive base layer before any enhancement layers. So, the base layer of each video session has the highest priority to be allocated (Line 19). Then, we check whether system bandwidth is enough to multicast the base layer of a video session (Lines 20 to 24). If so, for the base layer of a video session, we will perform the MURC algorithm to find the optimal combination of MCS and AL-FEC overheads which yields the highest system utility. Otherwise, the video session will be excluded. Please note that, in the MURC algorithm (Fig. 7), we limit lower MCS cannot pair with higher AL-FEC overheads so that execution time can be reduced greatly. Next, we allocate the system resources to the video session which yields the highest system utility (Lines 27 to 30) and find the optimal combination of MCS and AL-FEC overheads for next video layer (Lines 33 to 35). The above procedure is repeated until all of video layers had allocated or the system bandwidth ran out.

Simulation Parameters
In this study, we demonstrate the performance of our approaches via extensive simulations. In the simulations, a 10 MHz spectrum is considered and 600 time slots per frame are dedicated to WiMAX MBS service and we assume that the layered video has 5 layers which consist of one base layer of 150 kbps and four enhancement layers of 250 kbps. Table 2 summarizes the system parameters of the simulations. We use MATLAB to conduct the simulations by jointly adopting seven MCSs (QPSK 1/2, QPSK 3/4, 16QAM 1/2, 16QAM 3/4, 64QAM 1/2, 64QAM 2/3 and 64QAM 3/4) and AL-FEC overhead. According to the literature (Huang et al., 2012), the packet loss rate of various MCSs is shown in Fig. 8. More robust MCSs like QPSK 1/2 and QPSK 3/4 provide lower packet loss rate, however, their data rate could not support highquality video. Therefore, by adopting AL-FEC, we can select higher MCS to multicast layered video while overcome inevitable packet loss.
Since the weight β plays an important role in calculating the system utility, we conducted an experiment to determine an appropriate weight. The experiment result is given in Fig. 9. When β is set to 1, the reward per slot only is around 4. It is because the system utility does not consider resource usage at all and therefore the system resource cannot be utilized effectively. When β is set to between 0.5 and 0.9, the difference of results is insignificant. In this study, we treat the system reward as the primary target, thus we set β to 0.9 in the following simulations. In addition, since Fountain code is a rate less coding scheme, the number of AL-FEC overheads needed to successfully recover lost packets is uncertain. Thus, we employ LT code and conduct experiments to measure how many AL-FEC overheads we need to successfully decode the original data. We set four cases and the experiment of each case runs 100 times. The experiment results are shown in Table 3 which indicates that the number of AL-FEC overheads needed to successfully decode the original data is at least 20%. Kushwaha et al. (2008) also provided a similar result in their work. Based on this result, we set lower bound of AL-FEC overhead to 20% in the following simulations.

Simulation Results and Dissections
First, we investigate the influence of AL-FEC on the system performance via simulations. In the simulations, it is assumed there is a single video session and the WiMAX BS receives the channel information of MSs every 10 sec and calculates the best solution. The number of MS sis 20 and MS are randomly distributed. The simulation duration is 60 sec. The observed system utility is shown in Fig. 10. Clearly, it is observed that by adopting AL-FEC, the system utility improves 42%. The reasons are twofold. First, by adopting AL-FEC, the WiMAX BS can select the higher MCSs to transmit the video data and therefore the system throughput is increased greatly. Second, AL-FEC is able to effectively combat packet loss and achieve higher system reward.
Next, we compared the performance of the proposed algorithm, Layered Policy Iteration (LPI), with that of Exhaustive Search (ES) and Genetic Algorithm (GA). Figure 11 shows the performance of these three Science Publications JCS algorithms. The ES algorithm is guaranteed to find the optimal solution with the cost of high computation complexity. The GA-based algorithm yields slightly worse performance than that of the ES algorithm. By examining the solutions found by the GA-based algorithm, it is observed that the GA-based algorithm tends to consume more resource to get higher system reward. Finally, we observe that the LPI algorithm yields the same system utility as the ES algorithm. In other words, the LPI algorithm is able to obtain the optimal solution with less computation complexity. In Fig. 12, we also compared the LPI algorithm with the OLM algorithm (Huang et al., 2012). As observed in Fig. 12, the LPI algorithm increases 39% system utility than the OLM algorithm. It is because, in the OLM algorithm, only MSs that has strong channel conditions can correctly receive enhancement layers. Therefore, the LPI algorithm can provide better video multicasting service over WiMAX than the OLM algorithm.
In the following simulations, we investigate the performance of the LPI algorithm in multiple video session scenario. There are three sessions: Session1 has 5 MSs randomly distributed away from the BS between 100 and 600 meters; session 2 has 30 MSs randomly distributed away from 600 to 1000 meters; and session3 has 60 MSs randomly distributed away from 1000 to 1400 meters. We also simulate two cases of resource allocation: (1) The LPI algorithm and (2) round-robin. The total resources are limited between 130 and 170 time slots to observe the influence of two allocation cases on the system performance. The simulation results of two allocation cases are shown in Fig. 13 and 14, respectively. Since system resources are scarce, time slots of both two cases are totally consumed. In Fig. 13, the number of time slots allocated to different sessions by the LPI algorithm (Case 1) is in the order of session 3> session 2> session 1. It is because that the LPI algorithm tried to maximize the system utility and the video session with a large number of users had more chances to gain higher system utility. Therefore, the number of MSs is a key factor when the LPI algorithm is adopted to allocate resources to multiple video sessions. On the other hand, if time slots are allocated in a roundrobin manner (Case 2), each video session can obtain a part of resources as shown in Fig. 14. However, Case 1can gain more system reward than Case 2. Figure 15 shows the system reward of two allocation cases in multiple video session scenario. In Fig. 15, Case 1 yields more than 2% of system reward than Case 2 regardless of the resource limitations.
Finally, we investigate the performance of the LPI algorithm in the different reward-value settings. In the following simulations, there are two video sessions and both of them had 20 MSs. The MSs of session 1 are randomly distributed away from 100 to 700 meters while the MSs of session 2 are randomly distributed from 800 to 1400 meters. The resource budget is set to 100 time slots. We simulate three reward-value settings: (1) [20,20,20,20,20], (2) [40,20,20,10,10] and (3) [80,5,5,5,5]. Figure 16 shows the system reward with various reward-value settings. In Fig. 16, the system reward obtained from session 1 is larger than that obtained from session 2 in all reward cases. It is because the MSs of session 1 have a shorter distance to the BS and therefore they are able to correctly decode all video layers. In addition, the system reward obtained from session 2 is in the order of Case 3> Case 2> Case 1. It indicates the base layer can be received by most of the MSs since the LPI algorithm gives the highest priority to allocate the base layer of each video session and provides a proper combination of MCS and AL-FEC overheads used to transmit the base layer. Based on the above observations, we believe that the LPI algorithm is an efficient and effective scheme no matter how reward-value was set.

CONCLUSION
In this study, we present a utility-based resource allocation mechanism for layered video multicasting in WiMAX networks. Their goal is to optimize the system utility by considering two important factors, system reward and resource usage. System reward represents the summation of video quality of all subscribers while resource usage reflects consumed WiMAX resources. We propose two heuristic algorithms, namely genetic algorithm and Layered Policy Iteration (LPI) algorithm and compare their performance to the optimal solution found by exhaustive search. Our simulation results showed that layered video multicasting collaborating with AL-FEC could significantly enhance video quality and improve the system throughput. The LPI algorithm can provide better video multicasting service over WiMAX than the OLM algorithm (Huang et al., 2012) and, the LPI algorithm is an efficient and effective scheme no matter how reward-value was set.

ACKNOWLEDGEMENT
The researchers would like to thank the National Science Council of the Republic of China, Taiwan for financially supporting this research under Contract No. NSC 100-2221-E-194-012-MY3 and NSC 100-2221-E-194-027-MY3.

Author's Contributions
All authors equally contributed in this work.

Ethics
This article is original and contains unpublished material. The corresponding author confirms that all of the other authors have read and approved the manuscript and no ethical issues involved.