A GPU-based video intelligent fragmentation transmission scheduling method and system
By constructing a video segmentation transmission graph and generating an initial solution sequence through reinforcement learning, combined with GPU parallel computing and hierarchical clustering evaluation, the transmission order of video segments is optimized, solving the problems of low bandwidth utilization and high latency in traditional solutions, and achieving efficient and stable video transmission.
Patent Information
- Application Number
- CN202511526521.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-24
- Publication Date
- 2026-03-03
- Estimated Expiration
- 2045-10-24
AI Technical Summary
Traditional video segmentation transmission scheduling schemes lack a global view of network topology and traffic requirements, resulting in low bandwidth utilization, high transmission latency, and an inability to adapt to the semantic relevance of video segments, thus affecting video transmission efficiency and user experience.
By constructing a video segmentation transmission graph, leveraging the high parallel processing capabilities of GPUs and reinforcement learning to generate an initial solution sequence, and combining a hierarchical clustering evaluation algorithm to optimize the transmission order, an optimal solution sequence is generated, achieving efficient transmission of video segments.
It improves video transmission efficiency, reduces latency and stuttering, enhances user experience, and strengthens the system's adaptability under high concurrency and complex network conditions.
Smart Images

Figure CN121000896B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of video transmission technology, specifically relating to a video smart unit (VSU) transmission scheduling method and system based on a graphics processing unit (GPU). Background Technology
[0002] With the globalization of online services such as high-definition and ultra-high-definition video and live streaming, the amount of video data that needs to be transmitted over wide area networks (WANs) has exploded. However, WAN construction and maintenance costs are high, and network operators need to maximize bandwidth utilization to accommodate massive traffic while ensuring efficiency. The order in which video segments are transmitted directly affects transmission efficiency and the user's viewing experience.
[0003] Traditional traffic management solutions have significant limitations: on the one hand, scheduling strategies relying on distributed protocols lack a global view of network topology and traffic demand, making it difficult to make optimal global routing decisions and unable to adapt to the semantic relevance of video segments; on the other hand, although software-defined networking improves routing flexibility, existing solutions lack a fine-grained scheduling mechanism for the characteristics of video segments when faced with a large number of video transmission requests under high concurrency, making it difficult to quickly determine the optimal transmission order, resulting in low bandwidth utilization and high transmission latency.
[0004] To address this, this solution proposes an intelligent scheduling method that combines video segmentation characteristics with efficient computing power. By using reinforcement learning to perceive the network state, the attributes of the VSU to be transmitted, and the transmission completion status, it defines actions and reward mechanisms and trains to generate an initial solution sequence. Compared to methods that reorder the initial random sequence based on Gaussian weights, this method achieves a higher degree of fit between the initial solution sequence and transmission requirements, reducing the amount of subsequent optimization computation. Simultaneously, through clustering dimensionality reduction and noise reduction, mean and standard deviation screening, and dynamic multi-round clustering, compared to the element-by-element comparison, single extreme value screening, and evaluation of reduction algorithms, this method achieves efficient processing of large-scale computation results, improved reliability of optimal solutions, and accurate discovery of global optimal solutions, thereby optimizing the transmission process and ensuring video smoothness. Summary of the Invention
[0005] Purpose of the invention: The purpose of this invention is to provide a GPU-based video intelligent segmentation transmission scheduling method and system. By optimizing the transmission order of video intelligent segments (VSU) and combining the high parallel processing capability of the GPU, the effective transmission of all video segments can be achieved in the shortest possible time, thereby improving video transmission efficiency and user experience.
[0006] Technical solution: The GPU-based intelligent video fragmentation and transmission scheduling method of this invention specifically includes the following steps:
[0007] (1) Construct a video segmentation transmission graph, where nodes represent transmission devices, edges represent the transmission paths of VSUs, paths are associated with multi-dimensional feature information of media content, and the number of VSUs that each node can transmit simultaneously is limited.
[0008] (2) Analyze the content characteristics of VSUs and classify them into VSUs of different complexities based on the differences in characteristics;
[0009] (3) Generate an initial solution sequence based on reinforcement learning. By sensing the network state, the attributes of the VSU to be transmitted and the transmission completion information, define a reasonable action and reward mechanism, and generate an initial solution sequence that meets the transmission requirements after training.
[0010] (4) For VSUs of different complexities, different transformation methods are used to process the initial solution sequence to generate multiple different solution sequences, forming a solution sequence set, while maintaining the relative order of dependent VSUs.
[0011] (5) Input the solution sequence set into the GPU, set the corresponding thread allocation strategy according to the computing scale, calculate the execution time of each initial solution sequence in the solution sequence set, and store the relevant results;
[0012] (6) The results calculated by each thread block are evaluated using a hierarchical clustering evaluation algorithm. The optimal solution is selected through dynamic clustering. The optimal solution corresponds to the transmission order that achieves the minimum completion time of all VSU transmissions.
[0013] (7) The solution sequence and optimal solution generation process are optimized by using a dynamic threshold iteration strategy. Different convergence conditions are set for VSUs with different complexities. When the stopping threshold is met, the initial solution sequence corresponding to the optimal solution is output as the optimal scheduling order for all VSU transmissions.
[0014] Furthermore, the multi-dimensional feature information of the path-associated media content in step (1) includes transmission time, semantic attributes, and content features.
[0015] Furthermore, the implementation process of step (1) is as follows:
[0016] Given M transmission devices and N VSUs to be transmitted, the transmission graph has M nodes and N edges, where the nodes... The number of VSUs transmitting simultaneously is expressed as , ,side The corresponding VSU transfer time is expressed as , ,and .
[0017] Furthermore, the implementation process of step (2) is as follows:
[0018] Content features of texture complexity and motion vector magnitude for each VSU are extracted using a lightweight CNN. VSUs are then categorized into "high complexity" and "low complexity" classes, and labeled accordingly. .
[0019] Furthermore, the implementation process of step (3) is as follows:
[0020] The state is defined as the current network state, including the bandwidth utilization of each node. ,load The set of intelligent video fragments to be transmitted and their attributes, including transmission time. And the completion status of the transferred VSUs. , ;
[0021] An action is defined as selecting a VSU from the set of VSUs to be transmitted and assigning it a transmission node, i.e., an action space. ;
[0022] The comprehensive reward function is designed as follows:
[0023]
[0024] in, , , , These are weighting coefficients used to control the importance of the four sub-rewards in the final evaluation; It is an indicator used to measure the difference between actual transmission time and theoretically optimal transmission time. It is an indicator that checks whether the playback order of all video segment pairs conforms to the rules. The reward metric is calculated based on the variance of the load on each server. It is an indicator that measures the distance between the current scheduling scheme and the center of the historical best solution set; finally, the initial solution sequence is generated through reinforcement learning training.
[0025] Furthermore, the aforementioned Calculated based on the difference between the current VSU completion time and the theoretical optimal time. This is the delayed reward coefficient;
[0026] The D is the set of VSU dependencies. It depends on the reward coefficient;
[0027] The , Let Variance be the load variance of each node. This is a resource balancing reward coefficient, used to promote load balancing among transmission nodes;
[0028] The ,in, The Euclidean distance between the current solution sequence and the historical best cluster center. The adaptation coefficients enhance the correlation between the solution sequence and the optimal solution space.
[0029] Furthermore, the implementation process of step (4) is as follows:
[0030] The initial solution sequence is input into the GPU, and differentiated neighborhood operator transformations are used for VSUs of different complexities to generate solution sequence sets: the elements are edge numbers. High-complexity VSUs use 10 neighborhood transformations to generate diverse solution sequences and avoid local optima; low-complexity VSUs use 3 neighborhood transformations to reduce invalid computations while maintaining the relative order of dependent VSUs.
[0031] Furthermore, the implementation process of step (5) is as follows:
[0032] Define the number of threads and the size of the thread block: ,in For the number of thread blocks, The number of threads in each thread block. The number of edges in the transmission graph; allocate dedicated thread blocks for high-complexity fragments and shared thread blocks for low-complexity fragments;
[0033] Array definition and memory allocation: The `order` array exists in global memory, representing the initial order of input for a single thread, with a size of `EDGE_NUM`; the `limit_nodes` array is the limit on the number of VSUs that each node can transmit simultaneously, with a size of `NODE_NUM`; the `vsu_attrs` array contains the attributes of the edges, including left and right nodes, transmission duration, semantic attributes, and content complexity markers, and is a structure; the `output` array stores the optimal solution value within each thread block, with a size of `numBlock`; the `thread_per_time` array stores the solution values calculated by all threads within a thread block, with a size of `threadPerBlock`.
[0034] The method for calculating thread execution time is as follows: Input the solution sequence set into the thread block, with each thread corresponding to an initial solution sequence. Calculate the execution time of this sequence synchronously. For high-complexity partitioning, accurately calculate the start time s(e) under the influence of dependencies, using the formula: , The transmission time required for each data packet; for low-complexity fragmentation, the dependency check is simplified, only the direct predecessor is considered, the calculation is accelerated, and the calculation result is stored in thread_per_time, and the optimal result of the thread block is stored in the output array.
[0035] Furthermore, the implementation process of step (6) is as follows:
[0036] The method for selecting the optimal solution through dynamic clustering is as follows: divide the optimal results of the thread blocks in the output array into... Calculate the mean of each cluster. and standard deviation Remove the mean The clustering is performed, and the results within the remaining clusters are sorted a second time. The weighted average of the top 10% of the results after sorting is calculated, and the solution sequence corresponding to the minimum value is the optimal solution.
[0037] The present invention discloses a GPU-based intelligent video fragmentation and transmission scheduling system, comprising:
[0038] Video Segment Transmission Graph Construction Module: Constructs a video segment transmission graph. Nodes in the graph represent transmission devices, and the edges formed by two nodes represent the transmission paths of intelligent video segmentation. The paths are associated with transmission time, semantic attributes, and content feature information, and the number of VSUs transmitted simultaneously by each node is recorded.
[0039] VSU Complexity Classification Module: Analyzes the content features of VSU and classifies them into different complexity categories based on feature differences, providing a basis for subsequent differentiated processing;
[0040] Reinforcement learning initial solution sequence generation module: Based on reinforcement learning, it generates an initial solution sequence by sensing the network state, the attributes of the VSU to be transmitted, and the transmission completion status, defining reasonable actions and reward mechanisms, and generating an initial solution sequence that meets the transmission requirements after training;
[0041] Solution sequence set construction module: For VSUs of different complexities, different transformation methods are used to process the initial solution sequence to generate multiple different solution sequences, which constitute the solution sequence set, while maintaining the relative order of dependent VSUs;
[0042] The GPU solving module for solution sequence sets inputs the solution sequence set into the GPU, sets the corresponding thread allocation strategy according to the computing scale, calculates the execution time of each initial solution sequence in the solution sequence set, and stores the relevant results;
[0043] Hierarchical clustering optimal solution generation module: The hierarchical clustering evaluation algorithm is used to evaluate the results calculated by each thread block, and the optimal solution is selected through dynamic clustering. The optimal solution corresponds to the transmission order that achieves the minimum completion time of all VSU transmissions.
[0044] Dynamic threshold optimal solution iteration module: The solution sequence and optimal solution generation process are optimized through dynamic threshold iteration strategy. Different convergence conditions are set for VSUs with different complexities. When the stopping threshold is met, the initial solution sequence corresponding to the optimal solution is output as the optimal scheduling order for all VSU transmissions.
[0045] Beneficial effects: Compared with the prior art, the beneficial effects of the present invention are as follows:
[0046] Improve transmission efficiency: Construct a transmission graph, generate solution sequences using deep learning, and combine GPU parallel computing and hierarchical clustering to shorten the overall transmission time and solve the high concurrency latency problem;
[0047] Optimize viewing experience: Deep learning ensures the transmission of critical content, GPU accelerates processing, hierarchical clustering optimizes the transmission order, reduces buffering and stuttering, and improves video smoothness;
[0048] Enhanced scenario adaptability: GPUs are adapted to high concurrency, deep learning has the ability to learn and adjust autonomously, and hierarchical clustering is used to mine the global optimal solution, so as to flexibly deal with complex networks. Attached Figure Description
[0049] Figure 1 Here is a flowchart of a GPU-based intelligent video fragmentation and transmission scheduling method;
[0050] Figure 2 Here is a flowchart of the hierarchical clustering evaluation algorithm;
[0051] Figure 3 This is a comparison chart of GPU and CPU performance for still video.
[0052] Figure 4 A comparison chart of GPU and CPU for dynamic video;
[0053] Figure 5 This is a comparison chart of the optimal quality of reduction and hierarchical clustering algorithms;
[0054] Figure 6 A comparison chart showing the improvement in quality between reduction and hierarchical clustering algorithms;
[0055] Figure 7 A comparison chart showing the optimization factor of hierarchical clustering completion time between reduction and hierarchical clustering algorithms. Detailed Implementation
[0056] The present invention will now be described in further detail with reference to the accompanying drawings.
[0057] like Figure 1 As shown, this invention proposes a GPU-based intelligent video fragmentation and transmission scheduling method, the specific implementation process of which is as follows:
[0058] Step 1: Construct a video segmentation transmission graph, where nodes represent transmission devices, edges represent the transmission path of Video Smart Segment (VSU), the path is associated with information such as transmission time, semantic attributes, and content characteristics, and the limit on the number of VSUs that each node can transmit simultaneously is recorded.
[0059] The signal transmission graph is constructed as follows: Assuming there are M transmission devices and N VSUs to be transmitted, nodes represent transmission devices (such as CDN nodes and edge nodes), and the edge formed by two nodes represents the transmission path of the Video Smart Slice (VSU). Then the transmission graph has M nodes and N edges, where the nodes... The number of VSUs that can transmit simultaneously is expressed as , side The corresponding VSU transfer time is expressed as follows: , ,and Each edge is also associated with the semantic attributes of VSU (such as playback timestamps and dependencies) and content features (such as texture complexity and motion vector amplitude).
[0060] Step 2: Analyze the content characteristics of VSUs and classify them into VSUs of different complexities based on the differences in characteristics.
[0061] A lightweight CNN is used to extract features such as texture complexity and motion vector magnitude from each VSU, classifying VSUs into two categories: "high complexity" (e.g., games, sports footage) and "low complexity" (e.g., still images, news broadcasts), and labeled accordingly. .
[0062] Step 3: Generate an initial solution sequence based on reinforcement learning. By sensing information such as network state, VSU attributes to be transmitted, and transmission completion status, define reasonable actions and reward mechanisms, and generate an initial solution sequence that meets the transmission requirements after training.
[0063] The state is defined as the current network state (including the bandwidth utilization of each node). ,load The set of Video Smart Units (VSUs) to be transmitted and their attributes (covering transmission time) ), and the completion status of the transferred VSUs. ( The action is defined as selecting a VSU from the set of VSUs to be transmitted and assigning it a transmission node, i.e., the action space. The comprehensive reward function is designed as a number. ,in, , , , The weighting coefficient is used to control the importance of the four sub-rewards in the final evaluation. Calculated based on the difference between the current VSU completion time and the theoretical optimal time. This is the delayed reward coefficient; D is the set of VSU dependencies. It depends on the reward coefficient; , , where is the variance of the load on each node. This is a resource balancing reward coefficient, used to promote load balancing among transmission nodes; ,in , where is the Euclidean distance between the current solution sequence and the historical best cluster center. The adaptation coefficients enhance the correlation between the solution sequence and the optimal solution space.
[0064] Finally, a deep reinforcement learning algorithm (such as PPO, DDPG) is used to train the policy network. Maximize cumulative reward G through interaction with the environment. ( Generate an initial solution sequence.
[0065] Step 4: For VSUs of different complexities, use differentiated transformation methods to process the initial solution sequence, generate multiple different solution sequences, form a solution sequence set, and at the same time maintain the relative order of dependent VSUs.
[0066] The initial solution sequence is input into the GPU, and differentiated neighborhood operator transformations are applied for VSUs of different complexities to generate multiple initial solution sequences with different element distributions, forming a solution sequence set. The elements represent edge numbers, and the transformation method is as follows: for high-complexity partitions, 10 neighborhood operator transformations (such as random swaps and insertion operations) are performed to generate diverse solution sequences; for low-complexity partitions, only 3 transformations are performed to reduce invalid computations; at the same time, the relative order of VSUs with dependencies is maintained when moving elements, taking into account VSU dependencies.
[0067] Step 5: Input the solution sequence set into the GPU, set the corresponding thread allocation strategy according to the computing scale, calculate the execution time of each initial solution sequence in the solution sequence set, and store the relevant results;
[0068] Based on the computational scale of the solution sequence set, a thread allocation strategy is set in the GPU to calculate the time required to execute each initial solution sequence in the solution sequence set; the thread allocation strategy includes: defining the number of threads and the thread block size: ,in For the number of thread blocks, The number of threads in each thread block. The number of edges in the transmission graph is specified. Dedicated thread blocks (enabled double-precision floating-point calculation) are allocated for high-complexity partitions, while shared thread blocks (enabled single-precision floating-point calculation + shared memory caching) are allocated for low-complexity partitions. Array definitions and memory allocation: the `order` array exists in global memory, representing the initial order of input for a single thread, with a size of `EDGE_NUM`; the `limit_nodes` array limits the number of VSUs that can be transmitted simultaneously for each node, with a size of `NODE_NUM`; the `vsu_attrs` array contains edge attributes, including left and right nodes, transmission duration, semantic attributes, and content complexity markers, and is a structure; the `output` array stores the optimal solution value within each thread block, with a size of `numBlock`; the `thread_per_time` array stores the solution values calculated by all threads within a thread block, with a size of `threadPerBlock`; the method for calculating thread execution time is as follows: the solution sequence set is input into the thread block, each thread corresponds to an initial solution sequence, and the execution time of this sequence is calculated synchronously: for high-complexity partitions, the start time `s(e)` under the influence of dependencies is calculated precisely, using the formula... For low-complexity partitioning, dependency checking is simplified (only direct predecessors are considered), and computation is accelerated. The computation results are stored in thread_per_time, and the optimal result of the thread block is stored in the output array.
[0069] Step 6: Use a hierarchical clustering evaluation algorithm to evaluate the results calculated by each thread block, and select the optimal solution through dynamic clustering. The optimal solution corresponds to the transmission order that achieves the minimum completion time of all VSU transmissions.
[0070] like Figure 2 As shown, the specific process of the hierarchical clustering evaluation algorithm in step 6 is as follows: First, the first layer of clustering is performed, dividing all the optimal results of thread blocks stored in the array output into k clusters according to their numerical range. The number of clusters k is set to the square root of the number of thread blocks numBlock, i.e. Then calculate the mean of each cluster. and standard deviation Next, the second screening stage begins, where the mean is removed by setting a threshold. Greater than 1.5 times the minimum cluster mean (1.5 × min ( The clustering of VSUs is performed, retaining only the cluster containing the potential optimal solution. The results in the remaining clusters are then sorted a second time. Finally, the optimal solution is determined by selecting the top 10% of the results after the second sorting and calculating a weighted average (where the weight is inversely proportional to the result value, i.e., the smaller the value, the greater the weight). In the final result, the solution sequence corresponding to the minimum value is the optimal solution. This optimal solution corresponds to the transmission order that achieves the minimum completion time for all VSU transmissions.
[0071] Step 7: Optimize the solution sequence and optimal solution generation process through a dynamic threshold iteration strategy. Set differentiated convergence conditions for VSUs with different complexities. When the stopping threshold is met, output the initial solution sequence corresponding to the optimal solution as the optimal scheduling order for all VSU transmissions.
[0072] First, high-complexity and low-complexity fragments are divided based on an initial threshold. A unified iterative process is adopted for the two types of fragments. The division boundary is adjusted through multiple iterations until the difference in the fragment results in consecutive iterations reaches the convergence criterion. At the same time, the threshold is dynamically adapted to the real-time network bandwidth. When the bandwidth fluctuates, the division fineness is adjusted accordingly. In this way, while ensuring iterative convergence, efficiency and optimality of solution are balanced.
[0073] This invention also provides a GPU-based intelligent video fragmentation and transmission scheduling system, comprising:
[0074] Video Segment Transmission Graph Construction Module: Constructs a video segment transmission graph. Nodes in the graph represent transmission devices, and the edges formed by two nodes represent the transmission paths of intelligent video segmentation. The paths are associated with transmission time, semantic attributes, and content feature information, and the number of VSUs transmitted simultaneously by each node is recorded.
[0075] VSU Complexity Classification Module: Analyzes the content features of VSU and classifies them into different complexity categories based on feature differences, providing a basis for subsequent differentiated processing;
[0076] Reinforcement learning initial solution sequence generation module: Based on reinforcement learning, it generates an initial solution sequence by sensing the network state, the attributes of the VSU to be transmitted, and the transmission completion status, defining reasonable actions and reward mechanisms, and generating an initial solution sequence that meets the transmission requirements after training;
[0077] Solution sequence set construction module: For VSUs of different complexities, different transformation methods are used to process the initial solution sequence to generate multiple different solution sequences, which constitute the solution sequence set, while maintaining the relative order of dependent VSUs;
[0078] The GPU solving module for solution sequence sets inputs the solution sequence set into the GPU, sets the corresponding thread allocation strategy according to the computing scale, calculates the execution time of each initial solution sequence in the solution sequence set, and stores the relevant results;
[0079] Hierarchical clustering optimal solution generation module: The hierarchical clustering evaluation algorithm is used to evaluate the results calculated by each thread block, and the optimal solution is selected through dynamic clustering. The optimal solution corresponds to the transmission order that achieves the minimum completion time of all VSU transmissions.
[0080] Dynamic threshold optimal solution iteration module: The solution sequence and optimal solution generation process are optimized through dynamic threshold iteration strategy. Different convergence conditions are set for VSUs with different complexities. When the stopping threshold is met, the initial solution sequence corresponding to the optimal solution is output as the optimal scheduling order for all VSU transmissions.
[0081] Ten video clips from different scenarios were selected as experimental subjects. Five clips were high-complexity segments (containing fast-moving dynamic scenes, such as sports events and traffic-heavy sections), and five clips were low-complexity segments (mainly static or slowly changing scenes, such as indoor meetings with fixed camera positions and natural scenery). The video durations were 1 minute, 2 minutes, 3 minutes, 4 minutes, and 5 minutes, respectively. The strategy of this invention and the traditional CPU processing method were compared in experiments on the ten video clips. After executing steps 2 and 3, an initial solution sequence was generated for each video clip. The initial solution sequence for the high-complexity segments was {1, 2, 3, 4, 5} (corresponding to durations of 1-5 minutes), and the initial solution sequence for the low-complexity segments was {6, 7, 8, 9, 10} (corresponding to durations of 1-5 minutes). Step 4 transformed the positions of elements in the initial solution sequences, generating five solution spaces for each video clip. Each solution space contained five initial solution sequences with different element distributions, forming a solution sequence set. Step 5 sets the GPU's thread block count and thread count to 5, i.e., numBlock = threadPerBlock = 5. The solution sequence set is input into each thread block, and each thread in the thread block calculates the time required to execute each initial solution sequence in the solution sequence set (covering the entire process time, including data transfer and iterative calculations). Step 6: The algorithm evaluates the results calculated by each thread block, comparing the total processing time of this invention with the traditional CPU processing method and the optimal processing time (i.e., the shortest time to achieve the target accuracy).
[0082] like Figure 3 , Figure 4As shown, in terms of total processing time, this invention reduces processing time by approximately 60% compared to traditional CPUs. Furthermore, the percentage reduction in total processing time increases with video length, with a more significant improvement in optimization for a 5-minute video compared to a 1-minute video. In terms of optimal processing time, this invention reduces processing time by nearly 98% compared to traditional CPUs. Especially in processing long videos with highly complex segmentation, the dynamic threshold adaptively balances iterative efficiency and accuracy, avoiding the time loss caused by redundant calculations in traditional methods, resulting in a more prominent advantage. Specifically, the optimal processing time for a 5-minute highly complex video is reduced by approximately 98.5% compared to traditional CPUs.
[0083] Eleven video clips from different scenarios were selected as experimental subjects. Five clips were high-complexity segments (including fast-moving scenes such as sports events and densely trafficked roads, corresponding to durations of 1-5 minutes), and six clips were low-complexity segments (including static / slowly changing scenes such as indoor meetings with fixed camera positions and natural scenery, one clip each ranging from 1-5 minutes in length, plus one additional clip of the same type). The video durations were 1 minute, 2 minutes, 3 minutes, 4 minutes, and 5 minutes, respectively. The deep learning-based initial solution sequence generation strategy of this invention was used to compare it with the traditional GPU strategy of directly generating initial solution sequences based on Gaussian distribution weight sequences (except for the initial solution sequence generation method, all other processes and parameters were the same, including generating 5 solution spaces for each video and 5 initial solution sequences with different element distributions within each solution space to form a solution sequence set; setting the number of GPU thread blocks and threads to 5, with the threads calculating the total process time). Finally, the quality of the two strategies was evaluated using an algorithm. This invention, by generating initial solution sequences randomly with a Gaussian distribution, improved the quality by an average of approximately 22%.
[0084] Ten video clips from different scenarios were selected as experimental subjects. Five clips were high-complexity segments (including fast-moving dynamic scenes such as sports events and densely trafficked roads), and five clips were low-complexity segments (including static or slowly changing scenes such as indoor meetings with fixed cameras and natural scenery). The video durations for both types of segments were 1 minute, 2 minutes, 3 minutes, 4 minutes, and 5 minutes, respectively. A comparative experiment was conducted on these ten video clips using the hierarchical clustering evaluation algorithm of this invention and the traditional reduction algorithm. Except for the algorithm used for final result evaluation, all other experimental methods (such as initial solution sequence generation, solution space construction, GPU thread block and thread number settings, and overall process time calculation) remained consistent. Finally, the total processing time and optimal processing time (i.e., the shortest time to achieve the target accuracy) of the two processing methods were evaluated and compared using the two algorithms. Except for the final evaluation algorithm, all other methods were consistent, comparing the two processing methods. Figures 5 to 7 As shown, the hierarchical clustering evaluation algorithm improves quality by 6.1% and reduces time by approximately 34%.
[0085] The above content merely illustrates the technical concept of the present invention and should not be construed as limiting the scope of protection of the present invention. Any modifications made based on this technical solution fall within the scope of protection of the technical concept proposed in this invention and are included in the claims of this invention.
Claims
1. A GPU-based intelligent video fragmentation and transmission scheduling method, characterized in that, Includes the following steps: (1) Construct a video segmentation transmission graph, where nodes represent transmission devices, edges represent the transmission paths of video intelligent segmentation VSUs, paths are associated with multi-dimensional feature information of media content, and the number of VSUs that each node can transmit simultaneously is limited. (2) Analyze the content characteristics of VSUs and classify them into VSUs of different complexities based on the differences in characteristics; (3) Generate an initial solution sequence based on reinforcement learning. By sensing the network state, the attributes of the VSU to be transmitted and the transmission completion information, define a reasonable action and reward mechanism, and generate an initial solution sequence that meets the transmission requirements after training. (4) For VSUs of different complexities, different transformation methods are used to process the initial solution sequence to generate multiple different solution sequences, forming a solution sequence set, while maintaining the relative order of dependent VSUs. (5) Input the solution sequence set into the GPU, set the corresponding thread allocation strategy according to the computing scale, calculate the execution time of each initial solution sequence in the solution sequence set, and store the relevant results; (6) The results calculated by each thread block are evaluated using a hierarchical clustering evaluation algorithm. The optimal solution is selected through dynamic clustering. The optimal solution corresponds to the transmission order that achieves the minimum completion time of all VSU transmissions. (7) The solution sequence and optimal solution generation process are optimized by using a dynamic threshold iteration strategy. Different convergence conditions are set for VSUs with different complexities. When the stopping threshold is met, the initial solution sequence corresponding to the optimal solution is output as the optimal scheduling order for all VSU transmissions. The implementation process of step (2) is as follows: Content features of texture complexity and motion vector magnitude for each VSU are extracted using a lightweight CNN. VSUs are then categorized into "high complexity" and "low complexity" classes, and labeled accordingly. ; The implementation process of step (3) is as follows: The state is defined as the current network state, including the bandwidth utilization of each node. ,load The set of intelligent video fragments to be transmitted and their attributes, including transmission time. And the completion status of the transferred VSUs. , ; An action is defined as selecting a VSU from the set of VSUs to be transmitted and assigning it a transmission node, i.e., an action space. ; The comprehensive reward function is designed as follows: ; in, , , , These are weighting coefficients used to control the importance of the four sub-rewards in the final evaluation; It is an indicator used to measure the difference between actual transmission time and theoretically optimal transmission time. It is an indicator that checks whether the playback order of all video segment pairs conforms to the rules. The reward metric is calculated based on the variance of the load on each server. It is an indicator that measures the distance between the current scheduling scheme and the center of the historical best solution set; finally, the initial solution sequence is generated through reinforcement learning training. The implementation process of step (4) is as follows: The initial solution sequence is input into the GPU, and differentiated neighborhood operator transformations are used for VSUs of different complexities to generate solution sequence sets: the elements are edge numbers. High-complexity VSUs use 10 neighborhood transformations to generate diverse solution sequences and avoid local optima; low-complexity VSUs use 3 neighborhood transformations to reduce invalid computations while maintaining the relative order of dependent VSUs. The implementation process of step (5) is as follows: Define the number of threads and the size of the thread block: ,in For the number of thread blocks, The number of threads in each thread block. The number of edges in the transmission graph; allocate dedicated thread blocks for high-complexity fragments and shared thread blocks for low-complexity fragments; Array definition and memory allocation: The `order` array exists in global memory, representing the initial order of input for a single thread, with a size of `EDGE_NUM`; the `limit_nodes` array is the limit on the number of VSUs that each node can transmit simultaneously, with a size of `NODE_NUM`; the `vsu_attrs` array contains the attributes of the edges, including left and right nodes, transmission duration, semantic attributes, and content complexity markers, and is a structure; the `output` array stores the optimal solution value within each thread block, with a size of `numBlock`; the `thread_per_time` array stores the solution values calculated by all threads within a thread block, with a size of `threadPerBlock`. The method for calculating thread execution time is as follows: Input the solution sequence set into the thread block, with each thread corresponding to an initial solution sequence. Calculate the execution time of this sequence synchronously. For high-complexity partitioning, accurately calculate the start time s(e) under the influence of dependencies, using the formula: , The transmission time required for each data packet; for low-complexity fragmentation, the dependency check is simplified, only the direct predecessor is considered, the calculation is accelerated, and the calculation result is stored in thread_per_time, and the optimal result of the thread block is stored in the output array; The implementation process of step (6) is as follows: The method for selecting the optimal solution through dynamic clustering is as follows: divide the optimal results of the thread blocks in the output array into... Calculate the mean of each cluster. and standard deviation Remove the mean The clustering is performed, and the results within the remaining clusters are sorted a second time. The weighted average of the top 10% of the results after sorting is calculated, and the solution sequence corresponding to the minimum value is the optimal solution.
2. The GPU-based intelligent video fragmentation and transmission scheduling method according to claim 1, characterized in that, The multidimensional feature information of the path-related media content mentioned in step (1) includes transmission time, semantic attributes, and content features.
3. The GPU-based intelligent video fragmentation and transmission scheduling method according to claim 1, characterized in that, The implementation process of step (1) is as follows: Given M transmission devices and N VSUs to be transmitted, the transmission graph has M nodes and N edges, where the nodes... The number of VSUs transmitting simultaneously is expressed as , ,side The corresponding VSU transfer time is expressed as , ,and .
4. The GPU-based intelligent video fragmentation and transmission scheduling method according to claim 1, characterized in that, The Calculated based on the difference between the current VSU completion time and the theoretical optimal time. This is the delayed reward coefficient; The D is the set of VSU dependencies. It depends on the reward coefficient; The , Let Variance be the load variance of each node. This is a resource balancing reward coefficient, used to promote load balancing among transmission nodes; The ,in, The Euclidean distance between the current solution sequence and the historical best cluster center. The adaptation coefficients enhance the correlation between the solution sequence and the optimal solution space.
5. A GPU-based intelligent video fragmentation transmission scheduling system employing the method described in any one of claims 1 to 4, characterized in that, include: Video Segment Transmission Graph Construction Module: Constructs a video segment transmission graph. Nodes in the graph represent transmission devices, and the edges formed by two nodes represent the transmission paths of intelligent video segmentation. The paths are associated with transmission time, semantic attributes, and content feature information, and the number of VSUs transmitted simultaneously by each node is recorded. VSU Complexity Classification Module: Analyzes the content features of VSU and classifies them into different complexity categories based on feature differences, providing a basis for subsequent differentiated processing; Reinforcement learning initial solution sequence generation module: Based on reinforcement learning, it generates an initial solution sequence by sensing the network state, the attributes of the VSU to be transmitted, and the transmission completion status, defining reasonable actions and reward mechanisms, and generating an initial solution sequence that meets the transmission requirements after training; Solution sequence set construction module: For VSUs of different complexities, different transformation methods are used to process the initial solution sequence to generate multiple different solution sequences, which constitute the solution sequence set, while maintaining the relative order of dependent VSUs; The GPU solving module for solution sequence sets inputs the solution sequence set into the GPU, sets the corresponding thread allocation strategy according to the computing scale, calculates the execution time of each initial solution sequence in the solution sequence set, and stores the relevant results; Hierarchical clustering optimal solution generation module: The hierarchical clustering evaluation algorithm is used to evaluate the results calculated by each thread block, and the optimal solution is selected through dynamic clustering. The optimal solution corresponds to the transmission order that achieves the minimum completion time of all VSU transmissions. Dynamic threshold optimal solution iteration module: The solution sequence and optimal solution generation process are optimized through dynamic threshold iteration strategy. Different convergence conditions are set for VSUs with different complexities. When the stopping threshold is met, the initial solution sequence corresponding to the optimal solution is output as the optimal scheduling order for all VSU transmissions.
Citation Information
Patent Citations
Wide area network information transmission scheduling method and system based on GPU
CN118677855A