Academia.eduAcademia.edu

QoE-Aware Resource Allocation for Small Cells

2018, 2018 IEEE Global Communications Conference (GLOBECOM)

In this paper, we study the problem of Quality of Experience (QoE) aware resource allocation in wireless systems. In particular, we consider application-aware joint Bandwidth-Power allocation for a small cell. We optimize a QoE metric for multiuser video streaming in a small cell that maintains a trade-off between maximizing the playback rate of each user and ensuring proportional fairness (PF) among users. We formulate the application-driven joint bandwidth-power allocation as a non-convex optimization problem. However, we develop a polynomial complexity algorithm, and we show that the proposed algorithm achieves the optimal solution of the proposed optimization problem. Simulation results show that the proposed QoE-aware algorithm significantly improves the average QoE. Moreover, it outperforms the weighted sum rate allocation which is the state-of-the-art physical resource allocation scheme.

QoE-Aware Resource Allocation for Small Cells arXiv:1808.05675v1 [cs.IT] 16 Aug 2018 Anis Elgabli, Ali Elghariani*, Vaneet Aggarwal, Mark Bell Purdue University, West Lafayette IN 47907 *University of Tripoli Abstract—In this paper, we study the problem of Quality of Experience (QoE) aware resource allocation in wireless systems. In particular, we consider application-aware joint Bandwidth-Power allocation for a small cell. We optimize a QoE metric for multi-user video streaming in a small cell that maintains a trade-off between maximizing the playback rate of each user and ensuring proportional fairness (PF) among users. We formulate the application-driven joint bandwidth-power allocation as a non-convex optimization problem. However, we develop a polynomial complexity algorithm, and we show that the proposed algorithm achieves the optimal solution of the proposed optimization problem. Simulation results show that the proposed QoE-aware algorithm significantly improves the average QoE. Moreover, it outperforms the weighted sum rate allocation which is the state-of-the-art physical resource allocation scheme. Index Terms—QoE, Video streaming, Bandwidth-Power allocation, non-convex optimization I. I NTRODUCTION Video streaming is the dominant contributor to the cellular traffic. Currently, video streaming accounts for 50% of cellular traffic and it is expected to to grow to 75% of the mobile data traffic by the year of 2020 [1]. This increase has forced service providers to enhance their infrastructures to support high-quality video streaming. Despite these efforts, users frequently experience low Quality-of-Experience (QoE) metrics such as choppy videos and playback stalls [2]. In the modern video coding, the video is divided into chunks with L second duration each. Each chunk is either encoded into N independent versions with different qualities, or encoded into ordered layers, i.e, one base layer (Layer 0) with the lowest playable quality, and multiple enhancement layers (Layer i >0) that further improve the chunk quality. As an example of the former technique is H.264/MPEG-4 AVC (Advanced Video Coding) which was standardized in 2003 [3]. Moreover, an example that represents the layered encoding technique is Scalable Video Coding (SVC) which was standardized in 2007 as an extension to H.264 [4]. In both encoding techniques, the video is available at different rates, and a rate adaptation logic needs to make a decision about the quality of the next few chunks to request based on the current buffer and/or bandwidth prediction. The recent adoption of the open standard MPEG-DASH [5] has made Adaptive Bit Rate (ABR) streaming the most popular video streaming solution. Commercial systems such as Apple’s HLS [6], Microsoft’s Smooth Streaming [7], and Adobe’s HDS [8] are all ABR streaming algorithms. In recent studies, researchers have investigated various approaches for making streaming decisions, for example, by using control theory [9], [10], Markov Decision Process [11], machine learning [12], client buffer information [13], and data-driven techniques [14], [15], [16]. However, all of these rate adaptation techniques resides at the application layer of the client. Hence, the client decides based on the bandwidth prediction and/or the current buffer size what rate should next chunk of the video be fetched at. Therefore, the wireless base station provides no help in ensuring a certain rate to the client. In this paper, we still assume that each user is running his/her own rate adaptation logic at the application layer to adapt to the network changes. The QoE aware resource allocation algorithm proposed in this paper does not replace the application layer rate adaptation technique that runs at the client side. However, it allows the base station (BS) to consider the application requirements in assigning the resources. Therefore, the physical layer resources (bandwidth and power) can be allocated such that the average QoE among users is maximized. In this paper, driven by the following aspects; (i) most of the cellular traffic is video, (ii) the video is available at a specific set of rates which is a discrete in nature, and (iii) the new paradigm of a small cell in which a small BS with low power and more customizability resides in a small place can serve few users, we propose a video QoE-Aware bandwidthpower allocation algorithm for a small cell scenario. To motivate our problem, consider a scenario in which U users are connected to a small cell and watching videos. The videos are encoded into N + 1 rates; r0 , r1 , ..., rN . If a user cannot achieve a rate of r0 , then the user will run into rebuffering which significantly degrades the user’s QoE. The user’s QoE is generally evaluated by the mean opinion score (MOS) [17], [18], which practically ranges, e.g., from 1 to 4.5. Moreover, video MOS is shown to be bound logarithmic with respect to the Quality of Service (QoS) parameter [19], [20]. The QoS parameter in video streaming is the video playback rate. Therefore, the increase in the QoE is more significant when switching from rate rn−1 to rn compared to switching from rn to rn+1 . Hence, in the case of multiple users connected to a small cell scenario, pushing a large number of users to the rate rn is more preferable than just increasing the rates of only a few users to rates higher than rn at the cost of dropping the rates of the majority of users to rates below rn . This strategy improves the playback rate of each user and ensures proportional fairness among users. In the physical layer, utility-based resource allocation in wireless networks that ensures fairness among users with different application requirements was studied in [21]. However, the authors in [21] assumes that the traffic of the users with hard QoS are available at a single rate which is not true for the modern videos. Moreover, all users are sharing a single total rate which does not hold when the users are experiencing different channels. The authors of [22] proposed a QoE-based proportional fairness utility function in which a continuously differentiable MOS function is maximized based on relaxing the discrete constraints to simplify the problem. In contrast to the previous work, we exploit the discrete nature of the available video rates and show that the non-convex optimization problem is solvable in polynomial time. In this paper, we first formulate the joint bandwidth-power allocation for a video traffic in a multi-user small cell scenario as a non-convex optimization problem. The objective is to optimize a QoE metric that maintains a trade-off between maximizing the playback rate of each user and ensuring proportional fairness among all users. Secondly, we develop a novel algorithm that solves this problem optimally in a polynomial time complexity. Finally, we compare our proposed algorithm with the weighted sum rate, which is the state-ofthe-art physical resource allocation technique. Moreover, we show that our algorithm outperforms the weighted sum rate in terms of avoiding rebuffering times and maintaining high QoE for more users. II. S YSTEM M ODEL Consider a single cell wireless network as shown in Fig. 1, with U users, u ∈ U = {1, 2, 3, . . . , U }. A spectrum of a total bandwidth, B, is available for the downlink transmissions from the Base Station (BS) or Access Point (AP) to all users. Each user is allocated a downlink portion of the spectrum for online video steaming. This spectrum is assumed to be flat fading and can be divided into distinct and non-overlapping channels of unequal bandwidths, so that the users share the available spectrum through a frequency division manner. Let pu and bu represent the allocated transmit power and channel bandwidth of the BS to serve the u-th user. The received SNR at the u-th user is SNRu = pNuoHbuu , and according to the Shannon theorem, the channel capacity, Cu , of the u-th user is: Cu = bu log(1 + pNuoHbuu ), where No stands for the power spectral density of additive white Gaussian noise (AWGN), and Hu denotes the channel power of the link between the BS and the u-th user, which can be modeled based on both large-scale and small-scale fading effects as follows: Hu = |αu hu |2 (1) where hu represents the small scale fading which is modeled as CN (0, 1). αu represents the p large scale propagation effect (c/dm for the u-th user with αu = u ). du is the relative distance between the u-th user and the base station, m is the path loss exponent which is typically between 1.6 and 4 depending on the environment, and c is a constant related to User 1 internet Video Server BS/AP User u User U Fig. 1: A small cell with multi users streaming in the downlink the propagation loss and antenna gains. Large scale fading that results from shadowing can be modeled as a log normal distribution for the u-th user channel, but since in this paper we focus on a small cell such as the one located inside a building, the shadowing effect can be ignored. In this model, we assume that each user watches a video which is divided into C chunks with L-second duration each. This video is encoded at one of the N +1 playback rates, r0 , · · · rN . Higher playback rate leads to a better QoE. However, higher playback rate requires more physical resources (Bandwidth and Power). We denote B , {bu | bu , [b1 , b2 , . . . , bU ]} as the bandwidth allocation, P , {pu | pu , [p1 , p2 , . . . , pU ]} as the Power allocation III. P ROBLEM F ORMULATION In this section, we describe our problem formulation. Let Inu be the decision variable of the n-th rate and u-th user, i.e,  Inu = 1, if the u-th user is a candidate to the n-th rate Inu = 0, otherwise (2) n ∈ {0....N } Our objective function is a weighted sum of the decision variables. Let λn be the weight of the n-th rate. In order to prefer pushing all the users to the n-th rate over any other choice that is pushing some users to the higher rates with the cost of dropping the rate of others to below the n-th rate, the weights should satisfy the following constraint. λn > U · N X λk (3) k=n+1 Equation (3) states that the utility that is achieved by pushing a user to the n-th rate if possible is higher than the utility that is achieved by pushing all other users to rates > n-th rate. Therefore, maximizing this objective will maximize the playback rate of each user subjected to ensuring proportional fairness among users. The overall optimization problem is formulated as follows: U N X X Inu (4) λn Maximize n=0 u=1 subject to   γpu |αu hu |22 ) ≥ r0 , ∀u I0u = 1 bu log(1 + N o bu candidate to this rate level. Note, the candidacy of user 1 to rate r0 is formally stated by constraint (11): (5) argmax b2 log(1 + b1 ,b2 ,p1 ,p2   γpu |αu hu |22 u ) ≥ rn , ∀u, n = 1...N Inu = In−1 · 1 bu log(1 + N o bu (6) X pu ≤ Pmax subject to b1 log(1 + (7) γp2 |α2 h2 |22 ) N o b2 γp1 |α1 h1 |22 ) ≥ r0 N o b1 (10) (11) p1 + p2 ≤ Pmax (12) b1 + b 2 ≤ B (13) u X bu ≤ B (8) u Inu ∈ {0, 1}, n = 1...N, u (9) Where 1(x > y) = {1, if x > y, and 0 otherwise}, γ ∈ (0, 1] is the rate to the capacity gap, and λ0,··· ,N must satisfy (3). (u) Constraint (5) states that I0 is equal to 1 only if there is a bandwidth-power allocation such that the user u achieves a (u) rate ≥ r0 . Constraint (6) states that In , ∀u, n > 0 is equal to 1 only if the user u is a candidate to the immediate lower rate (u) (In−1 ) and there is a bandwidth-power allocation such that the user u achieves a rate ≥ rn . (7) and (8) are the total power and bandwidth constraints. Finally, (9) is the non-convexity (u) constraint on the feasible set of In , ∀u, n. Therefore, the optimization problem (4)-(9) is a non-convex. In the next section, we will describe a novel algorithm that can solve this problem optimally in polynomial complexity. Since we already know that user 1 is a candidate to the 0th rate, there must be a bandwidth-power allocation such that the constraint (11) is satisfied. By solving the optimization problem (10-13), we find whether user 2 is a candidate to this rate or not. Remark The bandwidth-power allocation for both user 1 and user 2 obtained by solving (10-13) overweights the previous decision when considering only user 1. In general, solving the allocation problem at the u-th user and n-th rate overweights the previous allocation of all users. Now, for the u-th user and 0-th rate, we need to solve the following optimization problem: argmax bu log(1 + B,P (14) subject to bk log(1 + IV. P ROPOSED A LGORITHM In this section, we explain the proposed algorithm which is listed in Table. I. We process rate levels in order such that when making the n-th rate level decisions, we only consider users who were candidates to the (n − 1)-th rate level. i.e, u = 1, otherwise, the constraint we consider a user u if In−1 (6) will be violated. Let’s index the users according to their channel gains where the user with the highest channel gain is given the index 1, and the user with the lowest channel gain is given the index U . We start with rate r0 by considering only user 1. Then we check if the user 1 is allocated the whole bandwidth and power (b1 = B, and p1 = Pmax ), would he/she be able to γp |h |2 achieve the 0-th rate. i.e, If b1 log(1 + N1o b11 2 ) ≥ r0 , then (1) the user is a candidate to the 0-th rate, and thus I0 = 1. Otherwise, no user will be a candidate to this rate and the algorithm should terminate. In general if the u-th user is not a candidate to the n-th rate, every user ∈ {u + 1, . . . , U } will not be a candidate to rate levels ≥ n-th rate. Hence the algorithm proceeds by checking the possibility of finding candidate users to the next rate among users 1 to u − 1. If (1) user 1 is a candidate to the 0-th rate (i.e I0 = 1), we solve the following optimization problem to find if user 2 can also be a candidate to the rate r0 given that user 1 is already a γpu |αu hu |22 ) N o bu γpk |αk hk |22 ) ≥ r0 , ∀k < u N o bk u−1 X pk + pu ≤ Pmax (15) (16) k=1 u−1 X bk + bu ≤ B (17) k=1 γp |α h |2 If bu log(1 + uNoubu u 2 ) ≥ r0 , then the u-th user is a candidate to this rate, otherwise, all users (u, . . . , U ) will not be considered for all rates. In order to generalize the case to any rate > r0 , let’s first k define rm to be the maximum rate < rn for which the user k is a candidate. Then to find out if the u-th user is a candidate to the n-th rate, we solve the following optimization problem: argmax bu log(1 + B,P γpu |αu hu |22 ) N o bu (18) subject to bk log(1 + γpk |αk hk |22 k ) ≥ rm , ∀k = 1...U, 6= u N o bk U X k=1,6=u pk + pu ≤ Pmax (19) (20) TABLE I: Proposed Algorithm U X b k + bu ≤ B (21) k=1,6=u γp |α h |2 If bu log(1 + uNoubu u 2 ) ≥ rn , then the u-th user is a candidate to the n-th rate, otherwise, it is not a candidate to any rate ≥ rn . This means that we exclude all users (u, . . . , U ) for all rates ≥ rn . Finally, solving the optimization problem (18)-(21) for the highest rate N (rN ) and for the last user that is a candidate to the rate N − 1 yield the optimal solution to the original problem described in (4-9). Next, we proof the optimality of the proposed algorithm in solving the optimization problem described in (4)-(9). (u) (u) Lemma 1: Given (I0 , · · · , In−1 , ∀u ∈ {1, · · · , U }), the execution of the algorithm PU for the n-th rate decisions yields the maximum value of u=1 Inu . In other words, the proposed algorithm obtains the maximum number of users at rate n as compared to any feasible algorithm which has the same rate decisions of every user up to the rate level n − 1. Proof : We first note that using the proposed algorithm, the user us is skipped at the n-th rate level. i.e, the decision variable of the n-th rate and user us is equal to 0 (Inus = 0) in two scenarios, which are described as follows. Case 1: If the user us is not a candidate to the (n−1)-th rate. us i.e, In−1 = 0, no other feasible algorithm can increase the rate of this user, us , to the n-th rate level due to the violation of the constraint (6). Case 2: There is no feasible bandwidth-power allocation such that constraints (19-21) are satisfied and bus log(1 + γpus |hus |22 ) ≥ rn N o b us Skips which are due to Case 1 are the same for any feasible algorithm. Thereby, we do not consider skips that are of Case 1. On the other hand, for the skips of Case 2, we note that the proposed algorithm starts with the user that has the highest channel gain since this user can achieve the n-th rate with the lowest resources if that is feasible. Therefore, if there is no bandwidth-power allocation such that this user can achieve the n-th rate, there will be no other user can achieve this rate. The algorithm proceeds in descending order with respect to the channel gains. Hence, if user us is skipped at the n-th rate level, any algorithm would have skipped a user or more with an index u ≤ us . However, skipping user us as compared to user u ≤ us allows for more bandwidth-power to increase the quality of users with higher channel gains. i.e since user us has lower channel gain, he/she needs more resources than user u ≤ us to reach rate rn . Therefore, skipping the user us offers more resources to the remaining users. Thus, we see that the number of n-th rate skips in any feasible algorithm can be no less than the proposed algorithm.  ∗ Theorem 1: Up to a given rate N ≥ 0, if Inu is the decision variable of the n-th rate and u-th user (n ≤ N ) that is found ′ by the proposed algorithm, and Inu is the decision variable of the n-th rate and u-th user that is found by any other feasible 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Input: r0,··· ,N : set of the rates, {1, ...., U }: set of the users, B, Pmax , Hk ∀k, N0 , γ Output: pu and bu ∀u = 1, . . . , U u = 0, I u = 0 Initialize : rm n for n = 0 : N U = {1, ...., U } While (U in not empty) u ← index of the user with maximum channel gain ∈ U Solve the optimization problem defined by Eqs(18-21) u Hu ) ≥ rn ) , then if (bu log(1 + γp No b k u =r Inu = 1, rm n U = U − {u} else Ink = 0, ∀k ∈ U U =φ endif endWhile end algorithm such that all constraints (5-9) are satisfied, then the following holds when λ’s satisfy (3). N X n=0 λn U X u=1 ′ Inu ≤ N X n=0 λn U X Inu ∗ (22) u=1 In other words, the proposed algorithm achieves the optimal solution of the optimization problem (4-9) when λ’s satisfy (3). Proof : First, the constraint (3) on λ0,··· ,N imposes a strict priority on the rate levels. Therefore, pushing 1 user to the rate rn yields higher utility than pushing all the other users to rates > rn . Hence, processing rates in their order and sequentially finding the maximum users served at rates 0 to N in their order will yield the optimal solution to the proposed problem. Lemma 1 proves that the proposed algorithm achieves the maximum number of users at the rate n ≤ N given the decisions of all rates up to the rate n − 1. Projecting that on rate r0 , we conclude that the algorithm finds the maximum number of users that can be served at rate r0 . Given the r0 decision which is optimal, running the algorithm for r1 will produce the optimal rate decisions for both r0 and r1 . Hence, continuing this way up to the rate rN will yield the optimal solution of all rates and users up to the rate N and that concludes the proof. V. N UMERICAL R ESULTS In this section, we provide simulation results for the studied scenario of a single small cell multiuser with video streaming in the downlink. We consider the case of 5 users downloading a video of length 1 minute. The video is divided into 60 chunks, each chunk is of 1 second duration. The video is encoded into 5 rate levels [r1 , r2 , r3 , r4 , r5 ] which are [0.5, 1, 1.5, 2, 2.5] Mbps, respectively. A user streams with rate 1 (r1 ) means that it can span a range from 0.5 Mbps to less than 1 Mbps, and it streams with rate 2 (r2 ), means that it can span a range between 1 Mbps to less than 1.5 100 rate 0 rate 1 rate 2 rate 3 rate 4 rate 5 90 80 70 60 Rate % Mbps, and so on for the other rate levels. We add rate level 0 (r0 ) to represent the case when the user cannot achieve the basic rate (r1 ). The path loss and the Rayleigh fading effects are both considered in the downlink. The path loss gain is computed based on the path loss exponent of 2. The maximum available bandwidth at the BS is 20 MHz and the maximum power is 10 watt. The noise PSD, No , is taken as 10−9 for SNR calculation. For the sake of performance comparison with other algorithms, we compare our algorithm with the weighted sum rate maximization when window size, T , is 1 and 5. The environment of a small cell is considered such that a low mobility scenario can be studied. The channel is considered slowly fading with coherence time that can span a one complete video chunk. Since the proposed algorithm explicitly consider the fairness in the formulation (no weight based on the history is needed), we solve the optimization once per chunk. However, for weighted sum algorithms, in order to ensure fairness among users per chunk we solve the optimization problem 40 time per chunk. In this experiment, the users’ distance from the BS is randomly generated between 5m and 80m and the whole simulation experiment is repeated 100 times. Fig. 2 shows the rate percentage across all users and all video rates (0.5, 1, 1.5, 2, 2.5 Mbps) averaged over all repeated simulations. From this figure, it can be said that users with the proposed algorithm spend less percentage of time experiencing rate 0 level ( i.e. < 0.5 Mbps), which is represented by the dark blue color in Fig. 2, as compared to the weighted sum rate algorithms. This is an advantage of the proposed algorithm from the point of view of the users’ QoE. Moreover, the advantage of the proposed algorithm can also be seen in the rate levels 1,2,3, and 4, in which users spend more percentage of time experiencing these rates compared to the other algorithms. The only situation when other algorithms outperform the proposed algorithm is in achieving the rate level 5. However, this advantage comes at the cost of making users experience the rate r0 for more than 30% of the time. The importance of our algorithm is that it reduces the number of time users run below the basic rate, i.e, it minimizes the probability of rebuffing which otherwise significantly degrades the QoE. To further analyze the above experiment, we consider a one particular case when the users 1 to 5 are located at distances 30, 35, 40, 55, 60 meters from the BS, respectively. Fig. 3 shows the CDF of the rate achieved by all users. This figure demonstrates the superiority of the proposed algorithm in guaranteeing a satisfactory rate level for video streaming most of the times, even for the users with the furthest distance from the BS (e.g. users 4 and 5). On the average, our algorithm can guarantee the basic rate or higher for 90% of the time. While on the other hand, users based on the weighted sum rate algorithm suffers to reach the basic rate for about 30 − 40% of the time, on the average. In particular, if we consider users 1 and 5 for all algorithms, we can see from Fig. 3-a that user 1, which is the closest to the BS, can stream with the basic 50 40 30 20 10 0 weighted sum, T=1 weighted sum, T=5 Proposed Algorithm Fig. 2: Rate level percentages across all users and all videos rates rate or higher for 97%, 89% , and 53% of the time based on the proposed algorithm, weighted sum rate (T = 5), and weighted sum rate (T = 1), respectively. Similarly, from Fig (3)-e, it can be depicted that user 5, which is the furthest user from the BS, can stream with the basic rate or higher for 78%, 40% , and 40% of the time based on the proposed algorithm, weighted sum rate (T = 5), and weighted sum rate (T = 1), respectively. Similar to the observation we made above in Fig (2), the advantage of the weighted sum rate techniques in Fig’s. 3-c,-d,-e in achieving better rate levels (> 1.5 Mbps) for users 3, 4, and 5 does not prevent these users from suffering for a noticeable percentage of time. The objective function in (4) represents the QoE metric in this work. The higher the value of this objective function, the higher the playback rate of each user with guaranteeing proportional fairness among all users. Note that the values of λn in (4) are chosen to satisfy (3), and thus, the values of λ0 , . . . , λ4 are chosen, for this simulation experiment, as [13310, 1210, 110, 10, 1], respectively. This choice of λ0 , . . . , λ4 tells that pushing more users to the basic rate level achieves significantly higher objective than pushing one user to the highest rate. Fig. 4 plots the CDF of the objective function for all the considered algorithms. It can be clearly observed that the proposed algorithm significantly outperforms the other algorithms. VI. C ONCLUSION In this paper, we formulate the joint bandwidth-power allocation for a small cell and video traffic as a non-convex optimization problem whose objective is to optimize the QoE metric that maintains a trade-off between maximizing the playback rate of each user and ensuring users’ proportional fairness (PF). We developed a novel algorithm that solves this User1 User2 User4 User5 1 0.9 0.9 0.9 0.9 0.8 0.8 0.8 0.8 0.8 0.7 0.7 0.7 0.7 0.7 0.6 0.6 0.6 0.6 0.6 CDF(r) 0.5 0.5 0.5 CDF(r) 1 CDF(r) 1 0.9 CDF(r) User3 1 Proposed Algo weighted sum rate T=5 weighted sum rate T=1 CDF(r) 1 0.5 0.5 0.4 0.4 0.4 0.4 0.4 0.3 0.3 0.3 0.3 0.3 0.2 0.2 0.2 0.2 0.2 0.1 0.1 0.1 0.1 0.1 0 0 0.5 1 1.5 2 2.5 rate r in Mbps (a) 3 0 0 0.5 1 1.5 2 2.5 rate r in Mbps (b) 3 0 0 0.5 1 1.5 2 2.5 rate r in Mbps (c) 3 0 0 0.5 1 1.5 2 2.5 rate r in Mbps (d) 3 0 0 0.5 1 1.5 2 2.5 rate r in Mbps (e) 3 Fig. 3: CDF of the achieved rate for all Users CDF of Objective Function 1 [6] [7] [8] [9] Proposed Algo weighted sum rate window=5 weighted sum rate window=1 0.9 0.8 [10] 0.7 CDF 0.6 [11] 0.5 [12] 0.4 [13] 0.3 0.2 [14] 0.1 0 1 2 3 4 5 Objective Function 6 7 8 [15] 4 x 10 Fig. 4: CDF of the objective function value [16] problem optimally in a polynomial time complexity. Simulation results show that the proposed algorithm outperforms the weighted sum rate in terms of maintaining a high QoE for all users. [17] R EFERENCES [1] “Ericsson Mobility Report on the pulse of the networked society,” Jun. 2016. [2] X. K. Zou, J. Erman, V. Gopalakrishnan, E. Halepovic, R. Jana, X. Jin, J. Rexford, and R. K. Sinha, “Can accurate predictions improve video streaming in cellular networks?” in Proceedings of the 16th International Workshop on Mobile Computing Systems and Applications. ACM, 2015, pp. 57–62. [3] “H.264/MPEG-4 AVC,” http://handle.itu.int/11.1002/1000/6312. [4] H. Schwarz, D. Marpe, and T. Wiegand, “Overview of the scalable video coding extension of the h.264/avc standard,” IEEE Transactions on Circuits and Systems for Video Technology, vol. 17, no. 9, pp. 1103– 1120, Sept 2007. [5] “MPEG-DASH,” http://goo.gl/QxtpZ9. [18] [19] [20] [21] [22] “Apple HTTP Live Streaming,” https://goo.gl/6yYWg. “Microsoft Smooth Streaming,” http://goo.gl/TQHWL. “Adobe HTTP Dynamic Streaming,” http://goo.gl/IZWE8d. X. Yin, A. Jindal, V. Sekar, and B. Sinopoli, “A Control-Theoretic Approach for Dynamic Adaptive Video Streaming over HTTP,” in Proc. ACM SIGCOMM, 2015. K. Miller, D. Bethanabhotla, G. Caire, and A. Wolisz, “A ControlTheoretic Approach to Adaptive Video Streaming in Dense Wireless Networks,” IEEE Trans. Multimedia, vol. 17, no. 8, 2015. D. Jarnikov and T. Özçelebi, “Client intelligence for adaptive streaming solutions,” Sig. Proc.: Image Comm., vol. 26, no. 7, 2011. M. Claeys, S. Latré, J. Famaey, and F. D. Turck, “Design and Evaluation of a Self-Learning HTTP Adaptive Video Streaming Client,” IEEE Communications Letters, vol. 18, no. 4, 2014. T.-Y. Huang, R. Johari, N. McKeown, M. Trunnell, and M. Watson, “A buffer-based approach to rate adaptation: Evidence from a large video streaming service,” in Proc. ACM SIGCOMM, 2014. X. Liu, F. Dobrian, H. Milner, J. Jiang, V. Sekar, I. Stoica, and H. Zhang, “A Case for a Coordinated Internet Video Control Plane,” in Proc. ACM SIGCOMM, 2012. A. Ganjam, F. Siddiqui, J. Zhan, X. Liu, I. Stoica, J. Jiang, V. Sekar, and H. Zhang, “C3: Internet-Scale Control Plane for Video Quality Optimization,” in Proc. NSDI, 2015. Y. Sun, X. Yin, J. Jiang, V. Sekar, F. Lin, N. Wang, T. Liu, and B. Sinopoli, “CS2P: Improving Video Bitrate Selection and Adaptation with Data-Driven Throughput Prediction,” in Proc. ACM SIGCOMM, 2016. S. Singh, J. G. Andrews, and G. de Veciana, “Interference shaping for improved quality of experience for real-time video streaming,” IEEE Journal on Selected Areas in Communications, vol. 30, no. 7, pp. 1259– 1269, 2012. I. Rec, “P. 800: Methods for subjective determination of transmission quality,” International Telecommunication Union, Geneva, 1996. A. Saul and G. Auer, “Multiuser resource allocation maximizing the perceived quality,” EURASIP Journal on Wireless Communications and Networking, vol. 2009, no. 1, p. 341689, 2009. B. Li, S. Li, C. Xing, Z. Fei, and J. Kuang, “A qoe-based ofdm resource allocation scheme for energy efficiency and quality guarantee in multiuser-multiservice system,” in Globecom Workshops (GC Wkshps), 2012 IEEE. IEEE, 2012, pp. 1293–1297. W.-H. Kuo and W. Liao, “Utility-based resource allocation in wireless networks,” IEEE Transactions on Wireless Communications, vol. 6, no. 10, 2007. Y. H. Cho, H. Kim, S.-H. Lee, and H. S. Lee, “A qoe-aware proportional fair resource allocation for multi-cell ofdma networks,” IEEE Communications Letters, vol. 19, no. 1, pp. 82–85, 2015.