Virtual reality-oriented multicast video transmission QoE optimization method
Through edge computing-assisted multicast network virtual video transmission system model and dual sliding window method, combined with the improved linear upper bound confidence algorithm, the network pressure problem caused by 360° video transmission in virtual reality is solved, and efficient video clip selection and cache strategy is realized, which significantly improves the user experience quality.
Patent Information
- Application Number
- CN202411710786.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-27
- Publication Date
- 2025-02-28
- Estimated Expiration
- 2044-11-27
AI Technical Summary
In virtual reality, 360° video transmission has differentiated data transmission needs due to different viewing ports of users, which brings greater transmission pressure to the network, which may lead to poor network service quality and user experience quality.
A multicast video transmission QoE optimization method for virtual reality is proposed. Through the multicast network virtual video transmission system model assisted by edge computing, the optimization problem with QoE value as the optimization goal is constructed. The dual sliding window method and the improved linear upper bound confidence algorithm are used to realize the optimization selection and cache strategy of video clips.
It effectively optimizes the quality of user experience, improves the QoE of multicast video transmission, reduces latency, and performs better in low bandwidth environments.
Smart Images

Figure CN119545113A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of video transmission, and in particular to a multicast video transmission QoE optimization method for virtual reality. Background Art
[0002] With the rapid development of Internet and Internet of Things technologies, new services such as immersive extended reality are emerging in the new generation of wireless networks and are widely penetrating into personal applications and other applications. The communication perception computing integration technology allocates network resources and computing resources according to the business, forms a cross-layer synaesthesia computing fusion design and unified orchestration management, and reasonably allocates computing tasks in combination with real-time status, forming a mutually beneficial symbiotic architecture with integrated data processing, integrated resource allocation and integrated service realization. It is the main supporting technology for realizing high-speed, large-capacity and low-latency video transmission of extended reality and virtual reality services.
[0003] The transmission of 360° videos in virtual reality leads to differentiated data transmission requirements due to different user viewing viewpoints, which brings greater transmission pressure to the network and may cause deterioration of network service quality and user experience quality. Summary of the invention
[0004] The present invention provides a multicast video transmission QoE optimization method for virtual reality, constructs an optimization problem with QoE value as the target, proposes an edge computing-assisted multicast network caching strategy, and realizes the optimization and improvement of user experience quality.
[0005] The present invention provides a multicast video transmission QoE optimization method for virtual reality, based on an edge computing-assisted multicast network virtual video transmission system model, wherein the multicast network virtual video transmission system model includes a cloud server, a wireless base station including an edge computing server, and a D2D multicast network composed of mobile devices; the method includes:
[0006] S1. According to the multicast network virtual video transmission system model, an optimization problem is constructed with the QoE value as the optimization target and the edge computing server and user cache, transmission delay and computing delay as constraints;
[0007] S2, determining a new video segment optimization selection method, so that the user can choose to join the group with the most video cache resources by calculating the resource coverage, and obtain the optimal cache strategy through the double sliding window method to achieve optimized video segment selection;
[0008] S3. Convert the non-convex nonlinear QoE optimization problem into a multi-armed bandit problem, and apply the improved linear upper bound confidence algorithm to obtain an approximate optimal solution.
[0009] Furthermore, in the multicast network virtual video transmission system model,
[0010] The edge computing server serves users who are watching the same video within the coverage of the current base station by providing video data and assisting users in computing. Users will offload tasks that require a large amount of computing resources and are sensitive to delay to the edge computing server. Users who are closer to the edge computing server will have a higher priority in obtaining videos or computing resources from the edge computing server. Users who are outside the set range can obtain video resources from these intermediate users who are watching the same video or have finished watching the current video, and offload computing tasks to these intermediate users, and indirectly obtain video resources and computing resources through these intermediate users.
[0011] Users watching the same video within the range of the base station are connected to the edge computing server or other users through the D2D multicast network; all users are divided into several groups of different sizes, which are interconnected through the D2D network. In each group, one user acts as the group scheduling center. The user acting as the group scheduling center is between other users in the group and the edge computing server, requests videos from the edge computing server, and forwards the video data to other users in the same group.
[0012] Furthermore, the step S1 comprises:
[0013] The video resolution is defined in the QoE model as:
[0014]
[0015] Use ω i,j ∈{0, 1} indicates whether the currently loaded tile is in the user's field of view. i,j =1, it means the i-th th The jth video th The block is within the user's field of view. Conversely, if the prediction is wrong and is not within the user's field of view, then ω i,j =0;
[0016] The QoE model defines the video clip quality change rate as:
[0017]
[0018] Define the time the user waits for the video to load as:
[0019]
[0020] Among them, T latency (i)+T finish time(i)-Δt means that the download time and calculation time of the current video, i.e. the i-th video, should be less than the playback time of the previous video, i.e. the i-1th video, when the required resolution is selected, so that the current video, i.e. the i-th video, can be played on time; if the download time and calculation time are greater than the playback time of the previous video, it will cause video freeze;
[0021] The QoE of a single user is defined as the weighted sum of the above three indicators:
[0022]
[0023] Among them, λ, μ, ν are weight factors, which respectively represent the importance of the above three indicators;
[0024] If the user chooses to obtain video clips from the edge computing server, the video will be transmitted between groups through the D2D network. The group leader selects the video resolution based on the channel quality and requests the video from the cloud server or edge computing server, and then forwards the received video clips to other users and other groups in the group. At this time, the formula that represents the delay time of the video playback of users in the group is added as follows:
[0025]
[0026] The QoE evaluation formula can be obtained:
[0027] QoE=5.67×I Q -6.72×I R +0.17-4.95×I T -F T
[0028] Finally, the QoE objective function is modeled as:
[0029]
[0030] Among them, C1 and C2 limit the total size of the tile to not be larger than the cache capacity of the MEC server and the cache capacity of the user; C3 and C4 represent the total delay of a single user device processing task, including transmission delay and calculation delay as well as the total delay of transmitting data blocks between users; C5 indicates that the coding rate of the tile must fall within the given set.
[0031] Furthermore, in the QoE model,
[0032] The size of a complete 360° video data can be expressed by the following formula:
[0033]
[0034] In the video library storing virtual reality videos on the cloud server, select a 360° video and divide the video into n consecutive segments. The time length Δt of each segment is fixed. Each video segment is divided into m spatial tiles, each of which can be independently encoded and sent to the user. N} is defined as the set of supported resolution versions, where X k It is k th The encoding bit rate of the resolution level is expressed as v(X k ) indicates the resolution is X k The size of the tiles;
[0035] By adding r i,j ∈X represents fragment i th Medium th The resolution allocated on the block, i.e. the requested fragment i th The size will be The cache capacity of the edge computing server is D MEC , whose goal is to pre-cache the tiles that should be cached based on FoV prediction; i,j,k It is represented as the cache decision of the MEC server. If the resolution of the i-th segment of the cached video is k th J th Tile, then c i,j,k =1, otherwise c i,j,k =0;
[0036] When modeling the wireless connection between users and base stations, large-scale path loss and shadowing effects are used; when modeling the wireless connection between users, free space path loss and multipath effects are used; the expected transmission delay for downloading tile i from the edge computing server or group is T latency , when downloading tiles from the edge computing server, the transmission delay is:
[0037]
[0038] When downloading tiles from a group, the transmission delay is:
[0039]
[0040] Among them, P i is the transmission power, is the channel gain, N is the noise power, N People is the number of users.
[0041] Furthermore, in step S3, the QoE objective function of the optimization target is composed of the video clip picture quality, the video quality change rate, and the video delay time, and the optimization problem of step S1 is modified to obtain the profit value of the multi-armed slot machine:
[0042] R t =5.67·(Q t +D t )-6.72·F T -0.17·S t
[0043]
[0044] Among them, Q t Represents the picture quality of the video clip, including the picture quality in two sliding windows; S t is the switching frequency, which is used to measure the change in video quality when different video segments are played; Represents the coverage of two sliding windows.
[0045] Furthermore, in step S2, the video segment optimization selection method includes:
[0046] S21, group selection algorithm: set a time slot of size L, and at each time Δt, obtain the prediction of each video segment in the time slot (Δt, Δt+l) through FoV prediction; sort the adjacent groups: assuming that the number of groups is M, the average transmission rate T of sending video tiles to users by group latency Arrange in descending order. If there are not multiple groups with the same speed, select the group with the fastest download speed. If there are multiple groups with the same speed, select these groups and calculate the prediction results c obtained by FoV prediction. i, j , k Compare with the existing video tiles in these groups and get the coverage C of the video segment tiles of each group i Assuming the current playback time is t, these groups are divided into groups according to the tile coverage of multiple video segments in the time period (Δt, Δt+l) Add them up, sort them in descending order, and select the group with the highest coverage rate to join;
[0047] S22. Video segment selection method: Combining sliding window and internal buffer D USER , the current video is divided into n tiles, and two sliding windows are set: a sliding window W of size w and a sliding window V of size v; let x be the currently played segment, as the video plays and the user pauses / fast-forwards, the sliding window W will be dynamically updated according to the video playback, and the starting positions of the two windows W and V always overlap; before starting to transmit the next part of the video segment, the user will check the tiles that make up the video segment within the sliding window V, that is, in each video segment, whether all the tiles that the user will see from the perspective have been downloaded, and use vs i,j,k To indicate the download status of the tile, if the download is complete, v s i,j,k =1, otherwise v s i,j,k =0.
[0048] Furthermore, the step S3 comprises:
[0049] In the improved linear upper bound confidence algorithm, the initialization and in, It is used to store the quadratic cumulative sum of the feature vector of the current action. When the action is selected, the feature vector x t Added to , used to update the parameter estimates of the linear model; It is used to store the feature vector of the current action and the cumulative sum of the rewards. When the action is selected, the feature vector x t Multiply by the corresponding reward r t (i,j) and is added to In, it is used to update the parameter estimates of the linear model; at initialization, is the identity matrix, is a zero vector; at each time slot t, the video clip of the group with the highest expected reward is selected for caching to maximize the overall QoE; after each action is performed, the system receives a feedback reward r t (i,j), used to update A k (i,j) and b k (i,j):
[0050]
[0051] Among them, r t (i,j) is the feedback on the effect of the current action, x t is a feature vector, which contains context information;
[0052] According to the group selection method and the video segment selection method, context information is obtained and the feature vector x is constructed. t ,For each tile, it is divided into a rendered 3D version and a 2D version that has not been rendered.,Each tile selected to be played represents an arm, indicating the action of each user at the current step; represents the action selected at time t, k represents the kth tile, i=0 represents obtaining from the edge computing server, i=1 represents obtaining from the group; j=0 represents obtaining the 2D version, which needs to be rendered, j=1 represents obtaining the 3D version, which does not need to be rendered; selecting an arm is equivalent to selecting the behavior of caching a tile from somewhere, and the expected reward of each arm is predicted and maximized by the algorithm, and the confidence upper bound corresponding to each "arm" is That is:
[0053]
[0054] Among them, R t For profit, is the parameter vector, is the corresponding covariance matrix, α is the parameter controlling exploration, M max is the maximum number of people that the current group can serve. It consists of two parts, namely the predicted expected reward and the uncertainty term; the first part is to use the linear model parameter vector θ t and x t R t The larger the value, the more likely this arm is to be selected; the latter is an estimate of the uncertainty of the action, quantifying the confidence interval of the feature vector on the action; select the action a with the highest confidence upper bound t implement:
[0055]
[0056] Execute action a t , calculate the current reward r t (i,j), and update the corresponding parameter vector and the covariance matrix After each parameter update, the Action t , maximize the cumulative reward R t .
[0057] The present invention also provides a multicast video transmission QoE optimization device for virtual reality, based on an edge computing-assisted multicast network virtual video transmission system model, wherein the multicast network virtual video transmission system model includes a cloud server, a wireless base station including an edge computing server, and a D2D multicast network composed of mobile devices; the device includes:
[0058] A construction module is used to construct an optimization problem with a QoE value as an optimization target and edge computing servers and user caches, transmission delays, and computing delays as constraints according to the multicast network virtual video transmission system model;
[0059] A selection module is used to determine a new video segment optimization selection method so that users can choose to join the group with the most video cache resources by calculating resource coverage, and obtain the optimal cache strategy through a double sliding window method to achieve optimized video segment selection;
[0060] The computing module is used to convert the non-convex nonlinear QoE optimization problem into a multi-armed bandit problem, and apply the improved linear upper bound confidence algorithm to obtain an approximate optimal solution.
[0061] The present invention also provides a computer device, comprising a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the above method when executing the computer program.
[0062] The present invention also provides a computer-readable storage medium on which a computer program is stored, and the computer program implements the steps of the above method when executed by a processor.
[0063] The beneficial effects of the present invention are:
[0064] In the present invention, the edge computing-assisted multicast network 360° video transmission system is first considered, and an optimization problem is constructed with the QoE value as the optimization target and the edge computing server and user cache, transmission delay and computing delay as constraints. Secondly, a new video clip optimization selection method is proposed. Users choose to join the group with the most video cache resources by calculating the resource coverage, and the optimal cache strategy is obtained through the double sliding window method to achieve optimized video clip selection. Finally, the non-convex nonlinear QoE optimization problem is converted into a multi-armed bandit problem, and the improved linear upper bound confidence algorithm is used to solve it to obtain an approximate optimal solution. Compared with the existing benchmark solution, the linear upper bound confidence algorithm of the multi-armed bandit problem used in the present invention can achieve higher user QoE and lower latency, thereby optimizing and improving the quality of user experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0065] Figure 1 The figure is a flow chart of the QoE optimization method of multicast video transmission for virtual reality of the present invention.
[0066] Figure 2 It is a structural schematic diagram of the multicast network virtual video transmission system model in the present invention.
[0067] Figure 3 This is a first schematic diagram of the video clip selection method of the double sliding windows in the present invention.
[0068] Figure 4 A second selection diagram of the video clip selection method of the double sliding windows in the present invention.
[0069] Figure 5 Schematic diagram of the relationship between the average learning reward value and the time slot in the present invention.
[0070] Figure 6 It is a schematic diagram of the relationship between the available bandwidth and the average QoE value of the user in the present invention.
[0071] Figure 7 It is a schematic diagram of the relationship between available bandwidth and cache hit rate in the present invention.
[0072] Figure 8 Schematic diagram of the relationship between available bandwidth and average user delay in the present invention.
[0073] Fig. 9 It is a structural schematic diagram of the QoE optimization device for multicast video transmission oriented to virtual reality of the present invention.
[0074] Fig.10 It is a schematic diagram of the internal structure of the computer device in the present invention.
[0075] The realization of the purpose, functional features and advantages of the present invention will be further explained in conjunction with embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION
[0076] It should be understood that the specific embodiments described herein are only used to explain the present invention, and are not used to limit the present invention.
[0077] 360° video transmission in virtual reality has differentiated data transmission requirements due to different user viewing viewports, which brings great transmission pressure to the network and may cause the network service quality and user experience quality to deteriorate. Compared with the network service quality model, the user experience quality model integrates the influencing factors at the service level, user level, and environmental level. It is a subjective measure of the overall quality of the network and can better reflect the overall feeling and satisfaction of the user during video transmission. Therefore, the present invention provides a multicast video transmission QoE optimization method for virtual reality based on the video transmission evaluation modeling mechanism and its optimization of user experience quality.
[0078] The present invention discloses a QoE optimization method for multicast video transmission for virtual reality, constructs an optimization problem with QoE value as the target, proposes a video clip selection method with dual sliding windows assisted by edge computing, and realizes the optimization and improvement of user experience quality. First, considering the multicast network 360° video transmission system assisted by edge computing, an optimization problem with QoE value as the optimization target and edge computing server and user cache, transmission delay and calculation delay as constraints is constructed. Secondly, a new video clip optimization selection method is proposed, and the user chooses to join the group with the most video cache resources by calculating the resource coverage, and the optimal cache strategy is obtained by the dual sliding window method to achieve optimized video clip selection. Finally, the non-convex nonlinear QoE optimization problem is converted into a multi-armed bandit problem, and the improved linear upper bound confidence algorithm is applied to solve it to obtain an approximate optimal solution. Compared with the existing benchmark scheme, the linear upper bound confidence algorithm of the present invention considering the application of the multi-armed bandit problem can achieve higher user QoE and lower delay.
[0079] Specifically, Figure 1 As shown, the present invention provides a multicast video transmission QoE optimization method for virtual reality, based on an edge computing-assisted multicast network virtual video transmission system model, wherein the multicast network virtual video transmission system model includes a cloud server, a wireless base station including an edge computing server, and a D2D multicast network composed of mobile devices.
[0080] The method comprises:
[0081] S1. According to the multicast network virtual video transmission system model, an optimization problem is constructed with QoE value as the optimization target and edge computing server and user cache, transmission delay and computing delay as constraints.
[0082] (1) Multicast network virtual video transmission system model
[0083] like Figure 2As shown in the figure, a model of edge computing-assisted multicast network virtual video transmission system is constructed, which consists of three parts: cloud server, wireless base station including edge computing server, and D2D multicast network composed of mobile devices. The edge computing server located at the wireless base station serves users who watch the same video within the coverage of the current base station by providing video data and assisting user calculations. Users can offload tasks that require a lot of computing resources and are sensitive to delays to the edge computing server to achieve faster processing. Users who are closer to the edge computing server (base station) will have a higher priority to obtain videos or computing resources from the edge computing server. Users who are farther away can obtain video resources from these intermediate users who are watching the same video or have finished watching the current video, and offload the computing tasks to these intermediate users, and indirectly obtain video resources and computing resources through these intermediate users.
[0084] The edge computing server is deployed in the wireless base station, which allows users to obtain video resources more quickly. Users watching the same video within the base station range can connect to the edge computing server or other users through the D2D multicast network. The distances between users are different. In order to allow users who are far away from the edge computing server to quickly obtain video resources and obtain as many computing resources as possible, the users are divided into several groups of different sizes, which are connected to each other through the D2D network. In each group, a user acts as the group scheduling center, similar to the "group leader" of the group. These users are between other users in the group and the edge computing server (base station). They request videos from the edge computing server and forward the video data to other users in the same group. The edge computing server can share the computing tasks of users who are closer to it; for users who are far away from the edge computing server, they can obtain video resources from other devices in the group and share the computing tasks of users in the group.
[0085] When watching an XR video, the user first sends a request to the edge computing server. This request is mainly used to query whether the edge computing server has cached the video data and obtain information about other users who are watching the same video. After receiving the information returned by the edge computing server, the current user can choose to obtain the video data from the edge computing server (cloud server) or from another user, depending on the user's distance from the edge computing server. If you choose to obtain data from the edge computing server, there will be two situations: (1) the edge computing server has cached the video data and the user can obtain it from the edge computing server; (2) the edge computing server has not cached the video data and the user needs to access the cloud server through the core network to obtain the video data. If you choose to obtain data from the group, the user will join the nearest group through the D2D network, obtain the video clip from the group, and can offload the computing task to the edge computing server or other user devices in the group to reduce the user's computing load.
[0086] (2) Virtual Reality Video Transmission Modeling
[0087] Constructing an optimization problem: When a user selects a video to start playing, he can choose to obtain video data from an edge computing server or cloud server, or obtain data from other members in the same group. The video can be transmitted flexibly. The size of a complete 360° video data can be expressed by the following formula:
[0088]
[0089] Assume that a virtual reality video library is stored on a cloud server. Select a 360° video and divide the video into n consecutive segments. The time length Δt of each segment is fixed. In addition, each video segment is divided into m spatial tiles, each of which can be independently encoded and sent to the user. N} is defined as the set of supported resolution versions, where X k It is k th The encoding bit rate of the resolution level can be expressed as v(X k ) indicates the resolution is X k Finally, by changing r i,j ∈X represents fragment i th Medium th The resolution allocated on the block, i.e. the requested fragment i th The size will be The cache capacity of the edge computing server is D MEC , whose goal is to pre-cache the tiles that should be cached based on FoV prediction. i,j,kIt is represented as the cache decision of the MEC server. If it decides to cache the resolution k in the i-th segment of the video th J th Tile, then c i,j,k =1, otherwise c i,j,k = 0. This can be regarded as r i,j complement, for example, if c i,j,k = 1, the user will watch the video with k th The resolution of the video tile j.
[0090] When modeling the wireless connection between users and base stations, large-scale path loss and shadowing effects are used; when modeling the wireless connection between users, free space path loss and multipath effects can be used. The expected transmission delay for downloading tile i from the edge computing server or group is T latency , when downloading tiles from the edge computing server, the transmission delay is:
[0091]
[0092] When downloading tiles from a group, the transmission delay is:
[0093]
[0094] Among them, P i is the transmission power, is the channel gain, N is the noise power, N People is the number of users.
[0095] Using x i,j,k ∈{0,1} to represent the calculation of the tile. When x i,j,k =1 means processing tiles at the edge computing server; when x i,j,k = 0 means processing tiles in the currently joined group. The computing power of the edge computing server and the group are represented by f MEC and f c The time required for all block projection rendering of the i-th video segment can be expressed as:
[0096]
[0097] For VR video users, QoE is mainly affected by three factors: (1) video clip quality (2) video clip quality change rate (3) video delay time. Video clip quality is determined by the resolution of the video clip, and its impact on QoE follows a logarithmic law. In this article's QoE model, the video resolution is defined as:
[0098]
[0099] The widely used FoV prediction method (based on the statistical ARMA model prediction method) still has some prediction bias. i,j ∈{0, 1} to indicate whether the currently loaded tile is in the user's field of view. i,j =1, it means the i-th th The jth video th The block is within the user's field of view. Conversely, if the prediction is wrong and is not within the user's field of view, then ω i,j =0.
[0100] Another key indicator for measuring user QoE is the video clip quality change rate, which is calculated by comparing the difference between the current resolution and the previous resolution. The absolute value of the result is usually taken to make it positive. This indicator helps to understand the fluctuations in user experience. The video clip quality change rate is defined as:
[0101]
[0102] The video delay time is used as the last indicator. If the current video has been played and the next video has not been loaded, that is, the user's playback buffer is empty, it will cause the video to freeze. The time the user waits for the video to load is defined as:
[0103]
[0104] Among them, T latency (i)+T finish time (i)-Δt means that when the required resolution is selected, the download time and calculation time of the current video (the i-th video) should be less than the playback time of the previous video (the i-1th video), so that the current video (the i-th video) can be played on time. If the download time and calculation time are greater than the playback time of the previous video, it will cause video freezes, affecting the user experience.
[0105] The QoE of a single user is defined as the weighted sum of the above three indicators:
[0106]
[0107] Among them, λ, μ, and ν are weight factors, representing the importance of these three indicators respectively.
[0108] If the user chooses to obtain video clips from the edge computing server, the video will be transmitted between groups through the D2D network. The group leader selects the video resolution based on the channel quality and requests the video from the cloud server or edge computing server, and then forwards the received video clips to other users in the group and other groups. In this case, add the formula that represents the delay time of the video playback of users in the group:
[0109]
[0110] The QoE evaluation formula can be obtained:
[0111] QoE=5.67×I Q -6.72×I R +0.17-4.95×I T -F T
[0112] In summary, the QoE objective function is modeled as:
[0113] Max QoE = 5.67 × I Q -6.72×I R +0.17-4.95×I T -F T
[0114]
[0115] Among them, C1 and C2 limit the total size of the tile to not be larger than the cache capacity of the MEC server and the cache capacity of the user; C3 and C4 represent the total delay of a single user device processing task, including transmission delay and calculation delay as well as the total delay of transmitting data blocks between users; C5 indicates that the coding rate of the tile must fall within the given set.
[0116] S2. Determine a new video segment optimization selection method so that users can choose to join the group with the most video cache resources by calculating resource coverage, and obtain the optimal cache strategy through a double sliding window method to achieve optimized video segment selection.
[0117] (1) Convert the optimization problem in step S1 into a multi-armed bandit problem
[0118] A complex video transmission environment requires choosing among multiple caching strategies to maximize the group QoE. To solve this problem, the optimization problem in step S1 is transformed into a multi-armed bandit problem. Consider each caching strategy as an optional "action", and each selection of a caching strategy is equivalent to pulling a different lever in a slot machine game to try to get the maximum reward. This analogy helps us simplify the complexity of the original problem into a series of discrete choices. According to Section 3, the QoE objective function of the optimization target consists of the video clip picture quality, the video quality change rate, and the video delay time. In order to enable the improved upper bound confidence algorithm to solve this problem, the optimization problem is partially modified to obtain the payoff value of the multi-armed bandit:
[0119] R t =5.67·(Q t +D t )-6.72·F T -0.17·S t
[0120]
[0121] Among them, Q t Represents the picture quality of the video clip, including the picture quality in two sliding windows; S t is the switching frequency, which is used to measure the change in video quality when different video segments are played; It represents the coverage of the two sliding windows.
[0122] (2) Video segment selection method based on double sliding windows
[0123] In the designed system model, when multiple 360° video users request the same video content, because they are watching the same type of video, their viewports are basically similar, and similar data transmission content will be generated. Through the multicast network, these users can share video content with each other, achieving lower latency and significant bandwidth savings. Therefore, a video clip selection method based on dual sliding windows is proposed. This method has two steps, such as Figure 3 , 4 shown.
[0124] The first step is the group selection algorithm: set a time slot of size L, and at each time Δt, obtain the prediction of each video segment in the time slot (Δt, Δt+l) through FoV prediction. Then sort the adjacent groups: Assuming the number of groups is M, the average transmission rate T of sending video tiles to users by group latencyIf there are not multiple groups with the same speed, select the group with the fastest download speed; if there are multiple groups with the same speed, select these groups and calculate the prediction results c obtained by FoV prediction. i,j,k Compare with the existing video tiles in these groups and get the coverage C of the video segment tiles of each group i Assuming the current playback time is t, these groups are divided according to the tile coverage of multiple video segments in the time period (Δt, Δt+l) Add them together, sort in descending order, and select the group with the highest coverage to join:
[0125]
[0126] The second step is the video segment selection method: combining the sliding window and the internal buffer D USER . The current video is divided into n tiles, and two sliding windows, one large and one small, are set: a sliding window W of size w and a sliding window V of size v (in units of video segments, w>v). Let x be the currently playing segment. As the video plays and the user pauses / fast-forwards, the sliding window W will be dynamically updated according to the video playback. The starting positions of the two windows W and V always overlap. Before starting to transmit the next part of the video segment, the user will check the tiles that make up the video segment within the range of the sliding window V, that is, in each video segment, whether all the tiles that the user is about to see have been downloaded, and use v to update the size of the sliding window V. s i,j,k To indicate the download status of the tile, if the download is complete, v s i,j,k =1, otherwise v s i,j,k =0.
[0127] S3. Convert the non-convex nonlinear QoE optimization problem into a multi-armed bandit problem, and apply the improved linear upper bound confidence algorithm to obtain an approximate optimal solution.
[0128] By solving the problem with the improved Linear Upper Confidence Bound (LinUCB), this algorithm can process contextual information including user features, item features, and cross-features, thereby finding a better balance between exploration and utilization. And a key feature of this method is that it can update parameters in real time, allowing the algorithm to adapt to the changing environment.
[0129] In the improved LinUCB, initialize and in, It is used to store the quadratic cumulative sum of the feature vector of the current action. When the action is selected, the feature vector x t Added to , used to update the parameter estimates of the linear model; It is used to store the feature vector of the current action and the cumulative sum of the rewards. When the action is selected, the feature vector x t Multiply by the corresponding reward r t (i,j) and is added to , used to update the parameter estimates of the linear model. At initialization, is the identity matrix, is a zero vector, which means that each arm is independent of each other at the beginning and has no prior correlation. As the iterations proceed and more data is collected, and is updated to reflect the correlation between features and better estimate the potential value of each decision. At each time slot t, the video clip of the group with the highest expected reward is selected for caching to maximize the overall QoE. After each action is performed, the system receives a feedback reward r t (i,j), used to update A k (i,j) and b k (i,j):
[0130]
[0131] Among them, r t (i, j) is the feedback on the effect of the current action, reflecting the actual performance of the action. Through the feedback of rewards, the algorithm can understand the performance of different actions in different contexts, and gradually learn to choose the optimal action. t is a feature vector containing context information.
[0132] By combining the group selection method and the video segment selection method with the LinUCB algorithm, the context features are obtained by using the group selection method and the video segment selection method, and are integrated into the feature vector of the LinUCB algorithm, thereby optimizing the allocation of cache resources. According to the group selection method and the video segment selection method, context information is obtained and the feature vector x is constructed. t For each tile, it is assumed that there are two versions, namely the rendered 3D version and the unrendered 2D version. In the above model, each tile selected to be played represents an "arm", which represents the action of each user at the current step, that is, whether the current video clip is obtained from the edge computing server or from the group, and what version is obtained. Represents the action selected at time t, k represents the kth tile, i=0 represents obtaining from the edge computing server, i=1 represents obtaining from the group; j=0 represents obtaining the 2D version, which needs to be rendered, and j=1 represents obtaining the 3D version, which does not need to be rendered. Selecting an "arm" is equivalent to choosing to cache a tile from somewhere, and the expected reward of each "arm" (such as cache hit rate, bandwidth saving or improved QoE, etc.) is predicted and maximized by the algorithm. The confidence upper bound corresponding to each "arm" is That is:
[0133]
[0134] Among them, R t For profit, is the parameter vector, is the corresponding covariance matrix, α is the parameter controlling exploration, M max It is the maximum number of people that the current group can serve. It consists of two parts, namely the predicted expected reward and the uncertainty term. The first part is to use the linear model parameter vector θ t and x t R t The larger the value, the more likely this arm is to be selected; the latter is an estimate of the uncertainty of the action, quantifying the confidence interval of the feature vector on the action. Select the action a with the highest confidence upper bound t implement:
[0135]
[0136] Execute action a t , calculate the current reward r t (i,j), and update the corresponding parameter vector and the covariance matrix After each parameter update, the Action t , maximize the cumulative reward R t In the video segment selection and group selection problems, the LinUCB algorithm can help determine the optimal caching strategy to improve the overall QoE.
[0137] The examples of the present invention are specifically described as follows. The system simulation uses Python's jupyter notebook, and the edge computing-assisted multicast 360° video transmission network is implemented using the parameters in the table.
[0138]
[0139]
[0140] The number of users randomly distributed within the base station range is considered to be 30 to 60. These users are unevenly distributed in 6 groups according to the videos they watch. The computing power of the user end is 10Mbps and the cache capacity is 2G. There are 5 videos, each video is divided into 100 video segments, and each video segment consists of 32 tiles. Tiles are available in 2D and 3D versions. 2D tiles have 4 resolutions to choose from, and their corresponding bit rates are X = {8, 16, 24, 32} Mbps. The size of the compiled 3D tile is twice the size of the 2D tile. The popularity of the tile follows the Zipf distribution with a parameter of 0.7. For the edge computing server, its computing power is 500Mps and its cache capacity is 50G. The positioning performance of the proposed algorithm is compared with the following UCB algorithm:
[0141] 1) Combinatorial Upper Confidence Bound (CUCB) algorithm.
[0142] 2) Conversational Upper Confidence Bound (ConsUCB) algorithm.
[0143] And two common alternative algorithms are introduced:
[0144] 1) Least Recently Used (LRU) algorithm: The LRU algorithm is a commonly used cache replacement algorithm that prioritizes replacing the least recently used data to make room for the latest data.
[0145] 2) Least Recently Used (LFU) algorithm: The LFU algorithm is another cache replacement algorithm that prioritizes replacing the least frequently accessed data to make room for the most frequently accessed data.
[0146] Figure 5 is the average learning reward value under different UCB algorithms. Compared with CUCB and ConsUCB algorithms, LinUCB algorithm can iterate to better performance faster and has the highest average learning reward value, which shows that it has learned the optimal strategy the fastest among the three algorithms, that is, LinUCB provides the best decision in the problem of edge computing server cache video selection. Although ConsUCB and CUCB also show learning ability, their performance is relatively poor.
[0147] Figure 6The QoE scores of users watching videos under different bandwidths are between 1 and 5. The LinUCB algorithm is significantly ahead of the LRU algorithm. When the difference is the largest, the user QoE value of the LinUCB algorithm is nearly twice that of the LRU algorithm, and it basically remains ahead by 1.5 to 2. For the CUCB algorithm, which ranks second in performance, the user QoE value of the LinUCB algorithm is about 10% better. As the bandwidth increases, the QoE scores of all algorithms also increase. Higher bandwidth usually means faster loading time, less buffering, and higher video quality, leading to a better user experience. The LinUCB algorithm has the highest score across the entire bandwidth range, which shows that the algorithm is the most effective in caching decisions, especially in low-bandwidth environments, where the LinUCB algorithm performs much better than other algorithms, indicating that the algorithm's group selection and segment selection can better meet user needs in D2D networks under resource-constrained conditions. As traditional caching strategies, LFU and LRU have low QoE scores when the bandwidth is low, but their performance improves as the bandwidth increases. In high-bandwidth scenarios, their performance is close to that of CUCB, indicating that these traditional strategies can still provide a reasonable user experience when resources are sufficient.
[0148] Figure 7 The QoE scores of users watching videos under different bandwidths are between 1 and 5. The LinUCB algorithm is significantly ahead of the LRU algorithm. When the difference is the largest, the user QoE value of the LinUCB algorithm is nearly twice that of the LRU algorithm, and it basically remains ahead by 1.5 to 2. For the CUCB algorithm, which ranks second in performance, the user QoE value of the LinUCB algorithm is about 10% better. As the bandwidth increases, the QoE scores of all algorithms also increase. Higher bandwidth usually means faster loading time, less buffering, and higher video quality, leading to a better user experience. The LinUCB algorithm has the highest score across the entire bandwidth range, which shows that the algorithm is the most effective in caching decisions, especially in low-bandwidth environments, where the LinUCB algorithm performs much better than other algorithms, indicating that the algorithm's group selection and segment selection can better meet user needs in D2D networks under resource-constrained conditions. As traditional caching strategies, LFU and LRU have low QoE scores when the bandwidth is low, but their performance improves as the bandwidth increases. In high-bandwidth scenarios, their performance is close to that of CUCB, indicating that these traditional strategies can still provide a reasonable user experience when resources are sufficient.
[0149] Figure 8The average delay when users watch videos under different bandwidth conditions. As network bandwidth increases, video data can be transmitted faster, thereby reducing waiting time and improving the user's viewing experience. The average user delays of the LinUCB algorithm and the CUCB algorithm are almost the same, but are still smaller than the LRU algorithm. The average delay of the LinUCB algorithm is about 50% of the LRU algorithm. The LRU algorithm and the LFU algorithm show similar performance. They have higher latency at low bandwidths but their performance improves significantly as bandwidth increases. The CUCB algorithm outperforms the LRU algorithm and the LFU algorithm, probably because it is more effective in managing caches in a way that reduces latency. The LinUCB algorithm's method of personalized caching strategy based on user context and predicted video slice requests can more effectively utilize MEC server resources and D2D communications. It can better handle initial video content requests by effectively predicting which tiles are needed and caching them appropriately, and make better decisions to cache video clips with more viewing needs on edge computing servers, thereby reducing the delay of video download transmission. And select the best group to join based on the predicted user FoV, ensuring that tiles are available within the user group to minimize the use of remote edge computing servers. The above methods bring users smoother video playback, less buffering and higher video quality.
[0150] like Fig. 9 As shown, the present invention also provides a multicast video transmission QoE optimization device for virtual reality, based on an edge computing-assisted multicast network virtual video transmission system model, the multicast network virtual video transmission system model includes a cloud server, a wireless base station including an edge computing server, and a D2D multicast network composed of mobile devices; the device includes:
[0151] Construction module 1 is used to construct an optimization problem with QoE value as the optimization target and edge computing server and user cache, transmission delay and computing delay as constraints according to the multicast network virtual video transmission system model;
[0152] Selection module 2 is used to determine a new video segment optimization selection method, so that the user can choose to join the group with the most video cache resources by calculating the resource coverage, and obtain the optimal cache strategy through the double sliding window method to achieve optimized video segment selection;
[0153] The computing module 3 is used to convert the non-convex nonlinear QoE optimization problem into a multi-armed bandit problem, and apply the improved linear upper bound confidence algorithm to solve it to obtain an approximate optimal solution.
[0154] In one embodiment, in the multicast network virtual video transmission system model,
[0155] The edge computing server serves users who are watching the same video within the coverage of the current base station by providing video data and assisting users in computing. Users will offload tasks that require a large amount of computing resources and are sensitive to delay to the edge computing server. Users who are closer to the edge computing server will have a higher priority in obtaining videos or computing resources from the edge computing server. Users who are outside the set range can obtain video resources from these intermediate users who are watching the same video or have finished watching the current video, and offload computing tasks to these intermediate users, and indirectly obtain video resources and computing resources through these intermediate users.
[0156] Users watching the same video within the range of the base station are connected to the edge computing server or other users through the D2D multicast network; all users are divided into several groups of different sizes, which are interconnected through the D2D network. In each group, one user acts as the group scheduling center. The user acting as the group scheduling center is between other users in the group and the edge computing server, requests videos from the edge computing server, and forwards the video data to other users in the same group.
[0157] In one embodiment, building block 1 includes:
[0158] The video resolution is defined in the QoE model as:
[0159]
[0160] Use ω i,j ∈{0, 1} indicates whether the currently loaded tile is in the user's field of view. i,j =1, it means the i-th th The jth video th The block is within the user's field of view. Conversely, if the prediction is wrong and is not within the user's field of view, then ω i,j =0;
[0161] The QoE model defines the video clip quality change rate as:
[0162]
[0163] Define the time the user waits for the video to load as:
[0164]
[0165] Among them, T latency (i)+T finish time(i)-Δt means that the download time and calculation time of the current video, i.e. the i-th video, should be less than the playback time of the previous video, i.e. the i-1th video, when the required resolution is selected, so that the current video, i.e. the i-th video, can be played on time; if the download time and calculation time are greater than the playback time of the previous video, it will cause video freeze;
[0166] The QoE of a single user is defined as the weighted sum of the above three indicators:
[0167]
[0168] Among them, λ, μ, ν are weight factors, which respectively represent the importance of the above three indicators;
[0169] If the user chooses to obtain video clips from the edge computing server, the video will be transmitted between groups through the D2D network. The group leader selects the video resolution based on the channel quality and requests the video from the cloud server or edge computing server, and then forwards the received video clips to other users and other groups in the group. At this time, the formula that represents the delay time of the video playback of users in the group is added as follows:
[0170]
[0171] The QoE evaluation formula can be obtained:
[0172] QoE=5.67×I Q -6.72×I R +0.17-4.95×I T -F T
[0173] Finally, the QoE objective function is modeled as:
[0174] Max QoE = 5.67 × I Q -6.72×I R +0.17-4.95×I T -F T
[0175]
[0176] Among them, C1 and C2 limit the total size of the tile to not be larger than the cache capacity of the MEC server and the cache capacity of the user; C3 and C4 represent the total delay of a single user device processing task, including transmission delay and calculation delay as well as the total delay of transmitting data blocks between users; C5 indicates that the coding rate of the tile must fall within the given set.
[0177] In one embodiment, in the QoE model,
[0178] The size of a complete 360° video data can be expressed by the following formula:
[0179]
[0180] In the video library storing virtual reality videos on the cloud server, select a 360° video and divide the video into n consecutive segments. The time length Δt of each segment is fixed. Each video segment is divided into m spatial tiles, each of which can be independently encoded and sent to the user. N} is defined as the set of supported resolution versions, where X k It is k th The encoding bit rate of the resolution level is expressed as v(X k ) indicates the resolution is X k The size of the tiles;
[0181] By adding r i,j ∈X represents fragment i th Medium th The resolution allocated on the block, i.e. the requested fragment i th The size will be The cache capacity of the edge computing server is D MEC , whose goal is to pre-cache the tiles that should be cached based on FoV prediction; i,j,k It is represented as the cache decision of the MEC server. If the resolution of the i-th segment of the cached video is k th J th Tile, then c i,j,k =1, otherwise c i,j,k =0;
[0182] When modeling the wireless connection between users and base stations, large-scale path loss and shadowing effects are used; when modeling the wireless connection between users, free space path loss and multipath effects are used; the expected transmission delay for downloading tile i from the edge computing server or group is T latency , when downloading tiles from the edge computing server, the transmission delay is:
[0183]
[0184] When downloading tiles from a group, the transmission delay is:
[0185]
[0186] Among them, P i is the transmission power, is the channel gain, N is the noise power, N People is the number of users.
[0187] In one embodiment, in the selection module 2, the QoE objective function of the optimization target is composed of the video clip picture quality, the video quality change rate, and the video delay time, and the optimization problem of step S1 is modified to obtain the profit value of the multi-armed slot machine:
[0188] R t =5.67·(Q t +D t )-6.72·F T -0.17·S t
[0189]
[0190]
[0191] Among them, Q t Represents the picture quality of the video clip, including the picture quality in two sliding windows; S t is the switching frequency, which is used to measure the change in video quality when different video segments are played; Represents the coverage of two sliding windows.
[0192] In one embodiment, in the selection module 2, the video segment optimization selection method includes:
[0193] The group selection unit includes a group selection algorithm: a time slot of size L is set, and at each time Δt, the prediction of each video segment in the time slot (Δt, Δt+l) is obtained through FoV prediction; adjacent groups are sorted: assuming that the number of groups is M, the average transmission rate T of sending video tiles to users by group is latency Arrange in descending order. If there are not multiple groups with the same speed, select the group with the fastest download speed. If there are multiple groups with the same speed, select these groups and calculate the prediction results c obtained by FoV prediction. i,j,k Compare with the existing video tiles in these groups and get the coverage C of the video segment tiles of each group i Assuming the current playback time is t, these groups are divided into groups according to the tile coverage of multiple video segments in the time period (Δt, Δt+l) Add them up, sort them in descending order, and select the group with the highest coverage rate to join;
[0194] A video segment selection unit, including a video segment selection method: combining a sliding window and an internal buffer D USER, the current video is divided into n tiles, and two sliding windows are set: a sliding window W of size w and a sliding window V of size v; let x be the currently played segment, as the video plays and the user pauses / fast-forwards, the sliding window W will be dynamically updated according to the video playback, and the starting positions of the two windows W and V always overlap; before starting to transmit the next part of the video segment, the user will check the tiles that make up the video segment within the sliding window V, that is, in each video segment, whether all the tiles that the user will see from the perspective have been downloaded, and use v s i,j,k To indicate the download status of the tile, if the download is complete, v s i,j,k =1, otherwise v s i,j,k =0.
[0195] In one embodiment, the calculation module 3 includes:
[0196] In the improved linear upper bound confidence algorithm, the initialization and in, It is used to store the quadratic cumulative sum of the feature vector of the current action. When the action is selected, the feature vector x t Added to , used to update the parameter estimates of the linear model; It is used to store the feature vector of the current action and the cumulative sum of the rewards. When the action is selected, the feature vector x t Multiply by the corresponding reward r t (i,j) and is added to In, it is used to update the parameter estimates of the linear model; at initialization, is the identity matrix, is a zero vector; at each time slot t, the video clip of the group with the highest expected reward is selected for caching to maximize the overall QoE; after each action is performed, the system receives a feedback reward r t (i,j), used to update A k (i,j) and b k (i,j):
[0197]
[0198] Among them, r t (i, j) is the feedback on the effect of the current action, x t is a feature vector, which contains context information;
[0199] According to the group selection method and the video segment selection method, context information is obtained and the feature vector x is constructed. t,For each tile, it is divided into a rendered 3D version and a 2D version that has not been rendered.,Each tile selected to be played represents an arm, indicating the action of each user at the current step; represents the action selected at time t, k represents the kth tile, i=0 represents obtaining from the edge computing server, i=1 represents obtaining from the group; j=0 represents obtaining the 2D version, which needs to be rendered, j=1 represents obtaining the 3D version, which does not need to be rendered; selecting an arm is equivalent to selecting the behavior of caching a tile from somewhere, and the expected reward of each arm is predicted and maximized by the algorithm, and the confidence upper bound corresponding to each "arm" is That is:
[0200]
[0201] Among them, R t For profit, is the parameter vector, is the corresponding covariance matrix, α is the parameter controlling exploration, M max is the maximum number of people that the current group can serve, It consists of two parts, namely the predicted expected reward and the uncertainty term; the first part is to use the linear model parameter vector θ t and x t R t The larger the value, the more likely this arm is to be selected; the latter is an estimate of the uncertainty of the action, quantifying the confidence interval of the feature vector on the action; select the action a with the highest confidence upper bound t implement:
[0202]
[0203] Execute action a t , calculate the current reward r t (i,j), and update the corresponding parameter vector and the covariance matrix After each parameter update, the Action t , maximize the cumulative reward R t .
[0204] The above modules and units are used to execute the steps in the above multicast video transmission QoE optimization method for virtual reality. The specific implementation method thereof is described in the above method embodiment and will not be repeated here.
[0205] like Figure 3As shown, the present invention also provides a computer device, which can be a server, and its internal structure can be as shown in Figure 3 As shown. The computer device includes a processor, a memory, a network interface and a database connected through a system bus. Among them, the processor designed by the computer is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store all data required for the process of the multicast video transmission QoE optimization method for virtual reality. The network interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, the multicast video transmission QoE optimization method for virtual reality is implemented.
[0206] Those skilled in the art will understand that Figure 3 The structure shown in is merely a block diagram of a portion of the structure related to the present application solution and does not constitute a limitation on the computer device to which the present application solution is applied.
[0207] An embodiment of the present application further provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, any of the above-mentioned multicast video transmission QoE optimization methods for virtual reality is implemented.
[0208] Those of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing related hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media provided in this application and used in the embodiments may include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (SSRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.
[0209] It should be noted that, in this article, the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, device, article or method including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or also includes elements inherent to such process, device, article or method. In the absence of further restrictions, an element defined by the sentence "includes a ..." does not exclude the presence of other identical elements in the process, device, article or method including the element.
[0210] The above description is only a preferred embodiment of the present invention, and does not limit the patent scope of the present invention. Any equivalent structure or equivalent process transformation made by using the contents of the present invention specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present invention.
Claims
1. A method for optimizing QoE of multicast video transmission for virtual reality, characterized in that: A multicast network virtual video transmission system model based on edge computing assistance, the multicast network virtual video transmission system model includes a cloud server, a wireless base station including an edge computing server, and a D2D multicast network composed of mobile devices; the method includes: S1. According to the multicast network virtual video transmission system model, an optimization problem is constructed with the QoE value as the optimization target and the edge computing server and user cache, transmission delay and computing delay as constraints; S2, determining a new video segment optimization selection method, so that the user can choose to join the group with the most video cache resources by calculating the resource coverage, and obtain the optimal cache strategy through the double sliding window method to achieve optimized video segment selection; S3. Convert the non-convex nonlinear QoE optimization problem into a multi-armed bandit problem, and apply the improved linear upper bound confidence algorithm to obtain an approximate optimal solution.
2. The virtual reality-oriented multicast video transmission QoE optimization method according to claim 1, characterized in that: In the multicast network virtual video transmission system model, The edge computing server serves users who are watching the same video within the coverage area of the current base station by providing video data and assisting user computing; Users will offload tasks that require a lot of computing resources and are sensitive to delays to the edge computing server. Users who are closer to the edge computing server will have a higher priority in obtaining videos or computing resources from the edge computing server. Users outside the set range can obtain video resources from these intermediate users who are watching the same video or have finished watching the current video, and offload computing tasks to these intermediate users, and indirectly obtain video resources and computing resources through these intermediate users; Users watching the same video within the range of the base station are connected to the edge computing server or other users through the D2D multicast network; all users are divided into several groups of different sizes, which are interconnected through the D2D network. In each group, one user acts as the group scheduling center. The user acting as the group scheduling center is between other users in the group and the edge computing server, requests videos from the edge computing server, and forwards the video data to other users in the same group.
3. The virtual reality-oriented multicast video transmission QoE optimization method according to claim 2 is characterized in that: The step S1 comprises: The video resolution is defined in the QoE model as: Use ω i,j ∈{0, 1} indicates whether the currently loaded tile is in the user's field of view. i,j =1, it means the i-th th The jth video th The block is within the user's field of view. Conversely, if the prediction is wrong and is not within the user's field of view, then ω i,j =0; The QoE model defines the video clip quality change rate as: Define the time the user waits for the video to load as: Among them, T latency (i)+T finishtime (i)-Δt means that the download time and calculation time of the current video, i.e. the i-th video, should be less than the playback time of the previous video, i.e. the i-1th video, when the required resolution is selected, so that the current video, i.e. the i-th video, can be played on time; if the download time and calculation time are greater than the playback time of the previous video, it will cause video freeze; The QoE of a single user is defined as the weighted sum of the above three indicators: Among them, λ, μ, ν are weight factors, which respectively represent the importance of the above three indicators; If the user chooses to obtain video clips from the edge computing server, the video will be transmitted between groups through the D2D network. The group leader selects the video resolution based on the channel quality and requests the video from the cloud server or edge computing server, and then forwards the received video clips to other users and other groups in the group. At this time, the formula that represents the delay time of the video playback of users in the group is added as follows: The QoE evaluation formula can be obtained: QoE=5.67×I Q -6.72×I R +0.17-4.95×I T -F T Finally, the QoE objective function is modeled as: Max QoE=5.67×I Q -6.72×I R +0.17-4.95×I T -F T Among them, C1 and C2 limit the total size of the tile to not be larger than the cache capacity of the MEC server and the cache capacity of the user; C3 and C4 represent the total delay of a single user device processing task, including transmission delay and calculation delay as well as the total delay of transmitting data blocks between users; C5 indicates that the coding rate of the tile must fall within the given set.
4. The method for optimizing QoE of multicast video transmission for virtual reality according to claim 3, characterized in that: In the QoE model, The size of a complete 360° video data can be expressed by the following formula: In the video library storing virtual reality videos on the cloud server, select a 360° video and divide the video into n consecutive segments. The time length Δt of each segment is fixed. Each video segment is divided into m spatial tiles, each of which can be independently encoded and sent to the user. N } is defined as the set of supported resolution versions, where X k It is k th The encoding bit rate of the resolution level is expressed as v(X k ) indicates the resolution is X k The size of the tiles; By adding r i,j ∈X represents fragment i th Medium th The resolution allocated on the block, i.e. the requested fragment i th The size will be The cache capacity of the edge computing server is D MEC , whose goal is to pre-cache the tiles that should be cached based on FoV prediction; i,j,k It is represented as the cache decision of the MEC server. If the resolution of the i-th segment of the cached video is k th J th Tile, then c i,j,k =1, otherwise c i,j,k =0; When modeling wireless connections between users and base stations, large-scale path loss and shadowing effects are used; when modeling wireless connections between users, free space path loss and multipath effects are used; The expected transmission delay for downloading tile i from the edge computing server or group is T latency , when downloading tiles from the edge computing server, the transmission delay is: When downloading tiles from a group, the transmission delay is: Among them, P i is the transmission power, is the channel gain, N is the noise power, N People is the number of users.
5. The method for optimizing QoE of multicast video transmission for virtual reality according to claim 4, characterized in that: In step S2, the QoE objective function of the optimization target is composed of the video clip picture quality, the video quality change rate, and the video delay time. The optimization problem of step S1 is modified to obtain the profit value of the multi-armed slot machine: R t =5.67·(Q t +D t )-6.72·F T -0.17·S t Among them, Q t Represents the picture quality of the video clip, including the picture quality in two sliding windows; S t is the switching frequency, which is used to measure the change in video quality when different video segments are played; Represents the coverage of two sliding windows.
6. The method for optimizing QoE of multicast video transmission for virtual reality according to claim 5, characterized in that: In step S2, the video segment optimization selection method includes: S21, group selection algorithm: set a time slot of size L, and at each time Δt, obtain the prediction of each video segment in the time slot (Δt, Δt+l) through FoV prediction; sort the adjacent groups: assuming that the number of groups is M, the average transmission rate T of sending video tiles to users by group latency Arrange in descending order. If there are not multiple groups with the same speed, select the group with the fastest download speed. If there are multiple groups with the same speed, select these groups and calculate the prediction results c obtained by FoV prediction. i,j,k Compare with the existing video tiles in these groups and get the coverage C of the video segment tiles of each group i Assuming the current playback time is t, these groups are divided into groups according to the tile coverage of multiple video segments in the time period (Δt, Δt+l) Add them up, sort them in descending order, and select the group with the highest coverage rate to join; S22. Video segment selection method: Combining sliding window and internal buffer D USER , the current video is divided into n tiles, and two sliding windows are set: a sliding window W of size w and a sliding window V of size v; let x be the currently played segment, as the video plays and the user pauses / fast-forwards, the sliding window W will be dynamically updated according to the video playback, and the starting positions of the two windows W and V always overlap; before starting to transmit the next part of the video segment, the user will check the tiles that make up the video segment within the sliding window V, that is, in each video segment, whether all the tiles that the user will see from the perspective have been downloaded, and use v s i,j,k To indicate the download status of the tile, if the download is complete, v s i,j,k =1, otherwise v s i,j,k =0.
7. The method for optimizing QoE of multicast video transmission for virtual reality according to claim 6, characterized in that: The step S3 comprises: In the improved linear upper bound confidence algorithm, the initialization and in, It is used to store the quadratic cumulative sum of the feature vector of the current action. When the action is selected, the feature vector x t Added to , used to update the parameter estimates of the linear model; It is used to store the feature vector of the current action and the cumulative sum of the rewards. When the action is selected, the feature vector x t Multiply by the corresponding reward r t (i,j) and is added to In, it is used to update the parameter estimates of the linear model; at initialization, is the identity matrix, is a zero vector; at each time slot t, the video clip of the group with the highest expected reward is selected for caching to maximize the overall QoE; after each action is performed, the system receives a feedback reward r t (i,j), used to update A k (i,j) and b k (i,j): r t (i,j)=R t , Among them, r t (i, j) is the feedback on the effect of the current action, x t is a feature vector, which contains context information; According to the group selection method and the video segment selection method, context information is obtained and the feature vector x is constructed. t ,For each tile, it is divided into a rendered 3D version and a 2D version that has not been rendered.,Each tile selected to be played represents an arm, indicating the action of each user at the current step; represents the action selected at time t, k represents the kth tile, i=0 represents obtaining from the edge computing server, i=1 represents obtaining from the group; j=0 represents obtaining the 2D version, which needs to be rendered, j=1 represents obtaining the 3D version, which does not need to be rendered; selecting an arm is equivalent to selecting the behavior of caching a tile from somewhere, and the expected reward of each arm is predicted and maximized by the algorithm, and the confidence upper bound corresponding to each "arm" is That is: Among them, R t For profit, is the parameter vector, is the corresponding covariance matrix, α is the parameter controlling exploration, M max is the maximum number of people that the current group can serve, It consists of two parts, namely the predicted expected reward and the uncertainty term; the first part is to use the linear model parameter vector θ t and x t R t The larger the value, the more likely this arm is to be selected; the latter is an estimate of the uncertainty of the action, quantifying the confidence interval of the feature vector on the action; select the action a with the highest confidence upper bound t implement: Execute action a t , calculate the current reward r t (i,j), and update the corresponding parameter vector and the covariance matrix After each parameter update, the Action t , maximize the cumulative reward R t .
8. A multicast video transmission QoE optimization device for virtual reality, characterized in that: A multicast network virtual video transmission system model based on edge computing assistance, the multicast network virtual video transmission system model includes a cloud server, a wireless base station including an edge computing server, and a D2D multicast network composed of mobile devices; the device includes: A construction module is used to construct an optimization problem with a QoE value as an optimization target and edge computing servers and user caches, transmission delays, and computing delays as constraints according to the multicast network virtual video transmission system model; A selection module is used to determine a new video segment optimization selection method so that users can choose to join the group with the most video cache resources by calculating resource coverage, and obtain the optimal cache strategy through a double sliding window method to achieve optimized video segment selection; The computing module is used to convert the non-convex nonlinear QoE optimization problem into a multi-armed bandit problem, and apply the improved linear upper bound confidence algorithm to obtain an approximate optimal solution.
9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.
Citation Information
Patent Citations
Video cache updating method for adaptive code rate selection in mobile edge computing
CN113114756A