A collaborative service network resource management method based on a generalized service model
Through the collaborative service network resource management method based on generalized business models, the resource allocation between IoT devices is optimized, and the resource allocation optimization problem in the existing technology is solved, and the optimal decision with the lowest energy consumption of the system is achieved and the satisfaction of complex business needs is achieved.
Patent Information
- Application Number
- CN202210888498.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-27
- Publication Date
- 2025-06-13
- Estimated Expiration
- 2042-07-27
AI Technical Summary
The prior art is difficult to effectively optimize resource allocation among IoT devices, especially in terms of bandwidth, power allocation and device scheduling, which cannot meet complex and changeable future business needs.
The collaborative service network resource management method based on a generalized business model is adopted to determine the equipment and number of sub-tasks through device scheduling decisions, optimize the total delay and energy consumption of the system, allocate bandwidth and transmit power, and converge to the optimal decision through iterative optimization algorithm.
It realizes optimal bandwidth, power distribution and equipment scheduling in multi-IoT device systems, reduces system energy consumption and meets complex and variable business needs.
Smart Images

Figure CN115334668B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of wireless communication, and particularly relates to a collaborative service network resource management method based on a generalized service model. Background Art
[0002] With the rapid development of Internet of Things (IoT) devices, the overall network delay and energy consumption have increased rapidly. In addition, IoT devices are limited by computing power and battery capacity and cannot handle compute-intensive / latency-sensitive tasks. Relying on multi-access edge computing technology, IoT devices can process compute-intensive applications by offloading tasks to base stations with stronger computing power. In addition, collaborative services in which IoT devices share network resources and cooperate with each other to complete tasks are expected to be a promising solution. However, this raises the problem of complex resource allocation optimization among a large number of IoT devices, and it is necessary to optimize the uplink and downlink bandwidth, device-to-device communication bandwidth, device power allocation, and device scheduling in the network to reduce the total system energy consumption.
[0003] Although the prior art has explored device-to-device resource sharing models and task flow models, it has not extensively studied the joint optimization of bandwidth allocation, power allocation, and device scheduling, especially the generalization of service models. Future services will be more complex and variable, and existing service models will not be able to meet future service requirements.
[0004] Therefore, a more generalized service model is needed to cope with various future services. Based on the generalized service model, optimize the channel bandwidth allocation and power allocation in the network, determine the device scheduling decision, and obtain the optimal decision that minimizes the system energy consumption. Summary of the Invention
[0005] The technical problem to be solved by the present invention is to provide a collaborative service network resource management method based on a generalized service model in view of the deficiencies of the above-mentioned prior art.
[0006] To achieve the above technical objectives, the technical solution adopted by the present invention is as follows:
[0007] A collaborative service network resource management method based on a generalized service model, the model is centered on services and faces the overall service. The device and the number of devices for executing subtasks are determined through device scheduling decisions, representing the subtask topology structure of the task, including five types of subtasks - upload, download, device-to-device transmission, computing, and temporary caching, representing the requirements of the total system delay, energy consumption, device bandwidth, and transmit power allocation.
[0008] A collaborative service network resource management method based on a generalized service model, the method is implemented based on a collaborative service network resource management system, and the method includes:
[0009] Step 1: When a series of services arrive, the system acquires the types of all subtasks, the internal relevance of subtasks in each service, and the data size of subtasks.
[0010] Step 2: The Internet of Things devices perform bandwidth allocation and power allocation to obtain the energy consumption of each device for processing each subtask in this iteration.
[0011] Step 3: Based on the energy consumption obtained in Step 2, perform Internet of Things device scheduling.
[0012] Step 4: Repeat the above Steps 1 - 3 in the next iteration until the collaborative service network resource management algorithm converges. At this time, the decisions on bandwidth and power allocation and device scheduling are the optimal decisions for collaborative service network resource management.
[0013] To optimize the above technical solution, the specific measures taken also include:
[0014] When the above system processes each service, the service is divided into several different types of subtasks according to different requirements of the service. Combining linear, tree - type, and Figure 3 types of basic task - flow model topologies to describe the internal relevance between subtasks. Assign an Internet of Things device to process each subtask, and each Internet of Things device will not process two or more subtasks simultaneously.
[0015] During the process of the system processing services, bandwidth, power are allocated to devices, and the subtasks that the devices need to process are determined until the collaborative service network resource management algorithm converges. The devices obtain the optimal strategy that minimizes the system energy consumption and perform bandwidth, power allocation, and device scheduling according to this strategy.
[0016] The bandwidth allocation described in Step 2 above includes: uplink bandwidth, downlink bandwidth, and device - to - device bandwidth allocation.
[0017] And the initialization method of the allocation coefficients of uplink bandwidth, downlink bandwidth, and device - to - device bandwidth is:
[0018] Perform uniform allocation according to the number of devices N, that is, the initial values of the allocation coefficients a, b, γ of uplink, downlink, and device - to - device communication bandwidth are:
[0019] The initialization method of the power allocation coefficient for the power allocation described in Step 2 above is:
[0020] Distribute the total power P sum equally to each device, that is, the power initialization of the device satisfies
[0021] In step 2, perform uplink bandwidth, downlink bandwidth, and device-to-device bandwidth allocation, including the following steps:
[0022] Step 2.1: Given downlink bandwidth allocation coefficients b = {b 1 ,..., b N}, device-to-device communication bandwidth allocation coefficients γ = {γ 1 ,…, γ N}, power allocation coefficients p = {p 1 ,…, p N}, and initial device scheduling x = {x 1 ,…, x N};
[0023] Use the energy consumption f 0 (a) related to uplink transmission as the objective function, with the constraint that the processing time of all subtasks does not exceed the specified threshold T and the sum of uplink bandwidth allocation coefficients does not exceed 1;
[0024] Step 2.2: Add a logarithmic barrier function to the objective function f 0 (a);
[0025] The logarithmic barrier function satisfies the formula: Convert the objective function to t a f 0 (a)+φ(a);
[0026] where t a >0 is a parameter to determine the approximation accuracy;
[0027] Step 2.3: Given the initial value of the uplink bandwidth allocation coefficient Calculate the gradient of the objective function t a f 0 (a)+φ(a) and set the gradient equal to 0 to obtain the update formula for the uplink bandwidth allocation coefficient t a ▽f 0 (a)+▽φ(a)=0;
[0028] Step 2.4: Update the parameter t a =μ a t a , where μ a >1.
[0029] Step 2.5: Repeat steps 2.2 - 2.4 until the value of the objective function t a f 0 (a)+φ(a) converges, and at this time, obtain the uplink bandwidth allocation strategy for this iteration;
[0030] Step 2.6: Given the uplink bandwidth allocation coefficient a of the uplink bandwidth allocation policy obtained in Step 2.5 * ={a 1 ,…,a N}, the power allocation coefficient p = {p 1 ,...,p N}, the device-to-device communication bandwidth allocation coefficient γ = {γ 1 ,...,γ N}, and the initial device scheduling x = {x 1 ,...,x N}, as given in Step 2.1, with the energy consumption f 0 (b) related to downlink transmission as the objective function, subject to the constraint that the processing time of all subtasks does not exceed the specified threshold T and the sum of the downlink bandwidth allocation coefficients does not exceed 1;
[0031] Step 2.7: Add a logarithmic barrier function to the objective function f 0 (b), and the logarithmic barrier function satisfies the formula: Convert the objective function to t b f 0 (b)+φ(b);
[0032] where t b >0 is a parameter determining the approximation accuracy;
[0033] Step 2.8: Given the initial value of the downlink bandwidth allocation coefficient Calculate the gradient of the objective function t b f 0 (b)+φ(b) and set the gradient equal to 0 to obtain the update formula for the downlink bandwidth allocation coefficient t b ▽f 0 (b)+▽φ(b)=0;
[0034] Step 2.9: Update the parameter t b =μ b t b , where μ b >1;
[0035] Step 2.10: Repeat Steps 2.7 - 2.9 until the value of the objective function t b f 0 (b)+φ(b) converges, and at this time, the downlink bandwidth allocation policy for this iteration is obtained;
[0036] Step 2.11: Given the uplink bandwidth allocation coefficient a of the uplink bandwidth allocation policy obtained in Step 2.5 * ={a 1 ,...,a N}, the downlink bandwidth allocation coefficient b of the downlink bandwidth policy obtained in step 2.10 * ={b 1 ,...,b N},the power allocation coefficient p = {p 1 ,...,p N} and the initial device scheduling x = {x 1 ,...,x N},as given in step 2.1, with the energy consumption f 0 (γ) related to device-to-device communication transmission as the objective function, subject to the constraint that the processing time of all subtasks does not exceed the specified threshold T and the sum of the device-to-device communication bandwidth allocation coefficients does not exceed 1;
[0037] Step 2.12: Add a logarithmic barrier function to the objective function f 0 (γ), and the logarithmic barrier function satisfies the formula: Convert the objective function to t γ f 0 (γ)+φ(γ);
[0038] where t γ > 0 is a parameter to determine the approximation accuracy;
[0039] Step 2.13: Given the initial value of the device-to-device communication bandwidth allocation coefficient Calculate the gradient of the objective function t γ f 0 (γ)+φ(γ) and set the gradient equal to 0 to obtain the update formula for the downlink bandwidth allocation coefficient t γ ▽f 0 (γ)+▽φ(γ)=0;
[0040] Step 2.14: Update the parameter t γ =μ γ t γ , where μ γ > 1;
[0041] Step 2.15: Repeat steps 2.12 - 2.14 until the value of the objective function t γ f 0 (γ)+φ(γ) converges, and at this time, the device-to-device communication bandwidth allocation policy for this iteration is obtained.
[0042] In step 2, the method of power allocation includes the following steps:
[0043] Step 2.16: Given the uplink bandwidth allocation coefficient a of the uplink bandwidth allocation policy obtained in step 2.5 * ={a 1 ,...,aN}, the downlink bandwidth allocation coefficient b of the downlink bandwidth allocation policy obtained in step 2.10 * = {b 1 ,..., b N}, the device-to-device communication bandwidth allocation coefficient γ of the device-to-device communication bandwidth allocation policy obtained in step 2.15 * = {γ 1 ,…, γ N}, the device initial scheduling x = {x 1 ,..., x N} is given in step 2.1, with the power-related energy consumption f 0 (p) as the objective function, and the processing time of all subtasks not exceeding the specified threshold T and the total transmission power of the device not exceeding the threshold P sum as the constraints;
[0044] Step 2.17: Add a logarithmic barrier function to the objective function f 0 (p), and the logarithmic barrier function satisfies the formula: Convert the objective function to t p f 0 (p)+φ(p);
[0045] where t p > 0 is a parameter to determine the approximation accuracy;
[0046] Step 2.18: Given the initial value of the power allocation coefficient of the device P sum as the total power of all devices in the network, calculate the gradient of the objective function t p f 0 (p)+φ(p) and set the gradient equal to 0 to obtain the update formula for the power allocation coefficient
[0047] Step 2.19: Update the parameter t p = μ p t p , where μ p > 1;
[0048] Step 2.20: Repeat steps 2.17 - 2.19 until the value of the objective function t p f 0 (p)+φ(p) converges, and at this time, the device power allocation policy for this iteration is obtained.
[0049] In step 3, the device scheduling steps include:
[0050] Step 3.1: Construct a coefficient matrix E. The number of rows and columns of the matrix is N. The rows and columns of the matrix are composed of devices and subtasks respectively. Each element in the matrix is the energy consumption c generated by the device processing the subtask i,j constituted;
[0051] Step 3.2: Transform the coefficient matrix by subtracting the minimum element in each row from each element in the row;
[0052] Step 3.3: Transform the coefficient matrix by subtracting the minimum element in each column from each element in the column;
[0053] Step 3.4: Use the minimum number of horizontal and vertical lines to cover all zero elements in the coefficient matrix, that is, mark the rows and columns corresponding to the minimum horizontal and vertical lines. If the number is equal to N, all subtask-device pairs where all zero elements are in different rows and different columns are the device scheduling strategies for this iteration; otherwise, continue to execute Step 3.5;
[0054] Step 3.5: Find the minimum element in the unmarked rows and columns in Step 3.4, and subtract this element from all elements in the unmarked rows and columns; for all elements marked twice, that is, elements where both the row and the column are marked, add this minimum element;
[0055] Step 3.6: Repeat Steps 3.4 - 3.5 until the device scheduling strategy for this iteration is obtained.
[0056] The present invention has the following beneficial effects:
[0057] By using the method of joint network resource allocation and device scheduling, the energy consumption of each device processing each subtask is obtained, and in a multi-IoT device system including multiple different services, optimal decisions on bandwidth, power allocation, and device scheduling are made. BRIEF DESCRIPTION OF THE DRAWINGS
[0058] Figure 1 is the system model diagram of the specific implementation manner of the present invention;
[0059] Figure 2 is the overall flowchart of the specific implementation manner of the present invention;
[0060] Figure 3 is the flowchart of the bandwidth allocation method in the present invention;
[0061] Figure 4 is the flowchart of the power allocation method in the present invention;
[0062] Figure 5 is the flowchart of the device scheduling method in the present invention;
[0063] Figure 6 are three basic task flow topologies. Detailed implementation manners
[0064] The embodiments of the present invention will be further described in detail below with reference to the accompanying drawings.
[0065] A collaborative service network resource management method based on a generalized service model, where the model is business-centered and faces the overall business. Through device scheduling decisions, the devices and the number of devices for executing subtasks are determined, and the subtask topology structure representing the tasks is included, which contains five types of subtasks - upload, download, device-to-device transmission, computing, and temporary caching, representing the requirements of the total system delay, energy consumption, device bandwidth, and transmit power allocation. The method is implemented based on a collaborative service network resource management system. In the embodiments, a network resource management system for video stream transmission processing is considered, such as Figure 1 As shown, when the system processes each service, the service is divided into several different types of subtasks according to different requirements of the service. Combining three basic task flow topology structures, the internal relevance between subtasks is described, and an Internet of Things device is assigned to process each subtask, and each Internet of Things device will not process two or more subtasks simultaneously. During the process of processing the service, the system starts to allocate bandwidth, power, and determine the subtasks that the device needs to process until the collaborative service network resource management algorithm converges. The device obtains the optimal strategy that minimizes the system energy consumption and performs bandwidth, power allocation, and device scheduling according to this strategy.
[0066] The collaborative service network resource management method of the present invention based on a generalized service model, see Figure 2 , specifically, a method of jointly allocating network resources and device scheduling is adopted during implementation, such as Figure 3 , Figure 4 and Figure 5 As shown, the collaborative service network resource management method includes:
[0067] Step 1: When a series of services arrive, the system obtains the types of all subtasks, the internal relevance between subtasks in each service, and the data sizes of the subtasks.
[0068] Step 2: The device performs bandwidth and power allocation to obtain the energy consumption of each device for processing each subtask in this iteration.
[0069] Step 3: Based on the energy consumption obtained in Step 2, device scheduling is performed.
[0070] Step 4: Repeat the above Steps 1 - 3 in the next iteration until the algorithm converges. At this time, the decisions on bandwidth and power allocation and device scheduling are the optimal decisions for collaborative service network resource management.
[0071] Specifically during implementation, the methods for allocating uplink bandwidth, downlink bandwidth, and device-to-device bandwidth in the above Step 2 are specifically as follows:
[0072] Step 2.1: Given the downlink bandwidth allocation coefficient \(b = \{b 1 ,...,b N \}\), the device-to-device communication bandwidth allocation coefficient \(\gamma=\{\gamma 1 ,…,\gamma N \}\), the power allocation coefficient \(p = \{p 1 ,...,p N \}\), and the initial device scheduling \(x = \{x 1 ,...,x N \}\), use the energy consumption \(f 0 (a)\) related to uplink transmission as the objective function, with the constraint that the processing time of all subtasks does not exceed the specified threshold \(T\) and the sum of the uplink bandwidth allocation coefficients does not exceed 1.
[0073] Step 2.2: Add a logarithmic barrier function to the objective function \(f 0 (a)\). The logarithmic barrier function is the negative logarithm of the constraint conditions and then sum over all constraints, that is, the logarithmic barrier function satisfies the formula: The objective function is transformed into \(t a f 0 (a)+\varphi(a)\), where \(t a >0\) is a parameter to determine the approximation accuracy.
[0074] Step 2.3: Given the initial value of the uplink bandwidth allocation coefficient Calculate the gradient of the objective function \(t a f 0 (a)+\varphi(a)\) and set the gradient equal to 0 to obtain the update formula for the uplink bandwidth allocation coefficient
[0075] Step 2.4: Update the parameter \(t a =\mu a t a , where \(\mu a >1\).
[0076] Step 2.5: Repeat Steps 2.2 - 2.4 until the value of the objective function \(t a f 0 (a)+\varphi(a)\) converges. At this time, the uplink bandwidth allocation strategy for this iteration is obtained.
[0077] Step 2.6: Given the uplink bandwidth allocation coefficient \(a * =\{a 1 ,...,a N \}\) obtained in Step 2.5 and the power allocation coefficient \(p = \{p 1 ,...,p N}, the device - to - device communication bandwidth allocation coefficient γ={γ 1 ,...,γ N} and the initial device scheduling x={x 1 ,…,x N} are given as in Step 2.1, with the energy consumption f 0 (b) related to downlink transmission as the objective function, subject to the constraint that the processing time of all subtasks does not exceed the specified threshold T and the sum of downlink bandwidth allocation coefficients does not exceed 1.
[0078] Step 2.7: Add a logarithmic barrier function to the objective function f 0 (b). The logarithmic barrier function is the negative logarithm of the constraint conditions and then sum over all constraints, that is, the logarithmic barrier function satisfies the formula: The objective function is transformed into t b f 0 (b)+φ(b), where t b >0 is a parameter determining the approximation accuracy.
[0079] Step 2.8: Given the initial value of the downlink bandwidth allocation coefficient Calculate the gradient of the objective function t b f 0 (b)+φ(b) and set the gradient equal to 0 to obtain the update formula for the downlink bandwidth allocation coefficient
[0080] Step 2.9: Update the parameter t b =μ b t b , where μ b >1.
[0081] Step 2.10: Repeat Steps 2.7 - 2.9 until the value of the objective function t b f 0 (b)+φ(b) converges. At this time, the downlink bandwidth allocation strategy for this iteration is obtained.
[0082] Step 2.11: Given the uplink bandwidth allocation coefficient a * ={a 1 ,…,a N} obtained in Step 2.5, the downlink bandwidth allocation coefficient b * ={b 1 ,…,b N} obtained in Step 2.10, the power allocation coefficient p={p 1 ,…,p N} and the initial device scheduling x={x 1 ,…,x N} As given in step 2.1, the energy consumption f associated with device-to-device communication transmission 0 (γ) is used as the objective function, with the constraints that the processing time of all subtasks does not exceed the specified threshold T and the sum of the device-to-device communication bandwidth allocation coefficients does not exceed 1.
[0083] Step 2.12: For the objective function f 0 (γ) Add a logarithmic barrier function. The logarithmic barrier function is the negative of the constraint condition and then the logarithmic function and the sum of all constraints. That is, the logarithmic barrier function satisfies the formula: The objective function is converted to t γ f 0 (γ)+φ(γ), where t γ >0 is a parameter that determines the accuracy of the approximation.
[0084] Step 2.13: Given the initial value of the device-to-device communication bandwidth allocation coefficient Calculate the objective function t γ f 0 The gradient of (γ)+φ(γ) and setting the gradient equal to 0, we get the updated formula for the downlink bandwidth allocation coefficient
[0085] Step 2.14: Update parameter t γ =μ γ t γ , where μ γ >1.
[0086] Step 2.15: Repeat steps 2.12-2.14 until the objective function t γ f 0 The value of (γ)+φ(γ) converges, and the device-to-device communication bandwidth allocation strategy for this iteration is obtained.
[0087] In specific implementation, the power allocation method in step 2 above is specifically as follows:
[0088] Step 2.16: Given the uplink bandwidth allocation coefficient a obtained in step 2.5 * ={a 1 ,…,a N}, the downlink bandwidth allocation coefficient b obtained in step 2.10 * = {b 1 ,…,b N}, the device-to-device communication bandwidth allocation coefficient γ obtained in step 2.15 * ={γ 1 ,…,γ N}, device initial scheduling x = {x 1 ,…,x N}According to what is given in step 2.1, with the power-related energy consumption f 0 (p) as the objective function, and the processing time of all subtasks not exceeding the specified threshold T and the total transmission power of the device not exceeding the threshold P sum as the constraints.
[0089] Step 2.17: Add a logarithmic barrier function to the objective function f 0 (p). The logarithmic barrier function is the negative logarithm of the constraint conditions and then sum over all constraints, that is, the logarithmic barrier function satisfies the formula: The objective function is converted to t p f 0 (p)+φ(p), where t p >0 is a parameter to determine the approximation accuracy.
[0090] Step 2.18: Given the initial value of the power allocation coefficient of the device P sum is the total power of all devices in the network. Calculate the gradient of the objective function t p f 0 (p)+φ(p) and set the gradient equal to 0 to obtain the update formula for the power allocation coefficient
[0091] Step 2.19: Update the parameter t p =μ p t p , where μ p >1.
[0092] Step 2.20: Repeat steps 2.17 - 2.19 until the value of the objective function t p f 0 (p)+φ(p) converges. At this time, the device power allocation strategy for this iteration is obtained.
[0093] In specific implementation, the initialization methods of the uplink bandwidth, downlink bandwidth, and device-to-device bandwidth allocation coefficient in the above step 2 are specifically as follows:
[0094] Allocate evenly according to the number of devices N, that is, the allocation coefficients a, b, γ of the uplink / downlink / device-to-device communication bandwidth are initialized to satisfy
[0095] In specific implementation, the initialization method of the power allocation coefficient in the above step 2 is specifically as follows:
[0096] Allocate the total power P sum equally to each device, that is, the power initialization of the device satisfies
[0097] In specific implementation, the device scheduling method in step 3 is specifically as follows:
[0098] Step 3.1: According to step 2, construct a coefficient matrix E. The number of rows and columns of the matrix is N, which are composed of devices and subtasks respectively. Each element in the matrix is the energy consumption c generated by the device processing the subtask. i,j Constitute.
[0099] Step 3.2: Transform the coefficient matrix, and subtract the minimum element of each row from each element in the row.
[0100] Step 3.3: Subtract the minimum element of each column from each element in the column.
[0101] Step 3.4: Use the minimum number of horizontal and vertical lines to cover all zero elements in the coefficient matrix, that is, mark the rows and columns corresponding to the minimum horizontal and vertical lines. If the number is equal to the number of rows (columns) N, then all subtask-device pairs where all zero elements are in different rows and different columns are the device scheduling strategies for this iteration; otherwise, continue to execute step 3.5.
[0102] Step 3.5: Find the minimum element in the unmarked rows and columns in step 3.4, and subtract this element from all elements in the unmarked rows and columns; for all elements marked twice, that is, elements where both the row and the column are marked, add this minimum element.
[0103] Step 3.6: Repeat steps 3.4 - 3.5 until the device scheduling strategy for this iteration is obtained.
[0104] As Figure 1 Shown, consider a video stream transmission processing network resource management system composed of N Internet of Things devices and a base station. In the whole system, each Internet of Things device n ∈ {1,..., N} can offload the number of bits of the computing task to the base station for remote processing or process it locally.
[0105] The process of providing a service can be regarded as executing a task, and each task can be decomposed into multiple subtasks. Let I k Represent the number of subtasks obtained by decomposing task k.
[0106] The embodiments of the present invention consider five types of subtasks, which are listed as follows.
[0107] Type 1 (download): The Internet of Things device downloads data from a remote server through the Internet and the base station, and the base station transmits the data to the device through downlink transmission.
[0108] Type 2 (upload): The Internet of Things device transmits information to the Internet through the base station by uplink transmission.
[0109] Type III (Device-to-Device Transmission): An IoT device transmits data to another IoT device in a device-to-device communication manner.
[0110] Type IV (Computation): The number of computing task bits is processed by an IoT device or a base station.
[0111] Type V (Temporary Caching): Data is temporarily retained in the buffer of the device.
[0112] As Figure 6 shown, the inherent relevance between subtasks can be described by three basic topologies - linear, tree, and graph. In this system, given a task k consisting of I k subtasks, the I k subtasks are executed according to a specific logical topology.
[0113] Task k can be executed collaboratively by IoT devices, and each IoT device can execute any one of the I k subtasks.
[0114] Using a binary indicator variable x n,i,k,j,up ∈ {0, 1}, x n,i,k,down ∈ {0, 1}, x n,i,k,cpu ∈ {0, 1}, x n,i,k,buf ∈ {0, 1}, x n,i,k,d2d ∈ {0, 1} to indicate whether the type of the i-th subtask of task k processed on IoT device n is upload, download, computation, caching, or device-to-device communication.
[0115] Given k, n, and i, the sum of x n,i,k,j,up , x n,i,k,down , x n,i,k,cpu , x n,i,k,buf and x n,i,k,d2d is 1. The set of binary variables is denoted as x.
[0116] Use a triple φ k,i = (ω k,i , α k,i , β k,i ) to represent the parameters describing the i-th subtask of task k, where ω k,i , α k,i , β k,i represent the computing workload, the sizes of the input data and output data of the i-th subtask of task k, respectively.
[0117] Use a lower triangular matrix where H k,i,g = {0, 1}, 1 ≤ g < i ≤ I k , to describe the inherent relevance between subtasks when processing task k.
[0118] If subtask i requires the output data of subtask g, then H k,i,g = 1; otherwise, H k,i,g = 0.
[0119] Let h k and Γ k represent the small-scale channel fading and the large-scale channel fading respectively, and let η and d n represent the path loss exponent and the distance between the base station and device n respectively.
[0120] The channel power gain between the base station and device n is the product of the squared modulus of the large-scale channel fading and the small-scale channel fading and the negative power of the path loss exponent of the distance between the base station and device n, that is, the channel power gain between the base station and device n is calculated as follows:
[0121]
[0122] Let d n,m represent the distance between device n and device m. The channel power gain between device n and device m is the product of the squared modulus of the large-scale channel fading and the small-scale channel fading and the negative power of the path loss exponent of the distance between device n and device m, that is, the channel power gain between device n and device m is calculated as follows:
[0123]
[0124] Let W U , W D and W d2d represent the total bandwidth of the uplink / downlink / device-to-device communication respectively. Let a n , b n , γ n represent the bandwidth allocation coefficients of the uplink / downlink / device-to-device communication of a device n. The uplink / downlink / device-to-device communication bandwidth occupied by a device n is the product of the bandwidth allocation coefficient of the uplink / downlink / device-to-device communication and the total bandwidth of the uplink / downlink / device-to-device communication respectively. That is, the uplink / downlink / device-to-device communication bandwidth occupied by a device n can be expressed as a n W U , b n W D , γ n W d2d , satisfying that the sum of the bandwidth allocation coefficients of the uplink / downlink / device-to-device communication of N Internet of Things devices is less than or equal to 1 respectively, and the bandwidth allocation coefficient of the uplink / downlink / device-to-device communication of a device n belongs to the interval from 0 to 1, that is, the constraint satisfies the following formula:
[0125]
[0126] When device n processes task k, the feasible data rate R of the uplink n,k,up is the product of the uplink bandwidth occupied by device n and a logarithmic function with base 2 and argument 1 plus the signal-to-noise ratio. The signal power is the product of the channel power gain between the base station and device n and the transmit power p of device n n The noise power is the product of the uplink bandwidth occupied by device n and the noise power spectral density N 0 That is, the calculation of the feasible data rate of the uplink satisfies the following formula:
[0127]
[0128] When device n processes task k, the feasible data rate R of the downlink n,k,down is the product of the downlink bandwidth occupied by device n and a logarithmic function with base 2 and argument 1 plus the signal-to-noise ratio. The signal power is the product of the channel power gain between the base station and device n and the transmit power of device n, and the noise power is the product of the downlink bandwidth occupied by device n and the noise power spectral density N 0 That is, the calculation of the feasible data rate of the downlink satisfies the following formula:
[0129]
[0130] When device n processes task k, the feasible data rate R of device-to-device communication n,k,d2d is the product of the device-to-device communication bandwidth occupied by device n and a logarithmic function with base 2 and argument 1 plus the signal-to-noise ratio. The signal power is the product of the channel power gain between device n and device m and the transmit power of device n, and the noise power is the product of the device-to-device communication bandwidth occupied by device n and the noise power spectral density N 0 That is, the calculation of the feasible data rate of device-to-device communication satisfies the following formula:
[0131]
[0132] The total transmit power of N devices is less than or equal to the threshold P sum , that is, the total power satisfies the following formula:
[0133]
[0134] With τ n,k,down , τ n,k,up , τ n,k,cpu , τ n,k,buf , τ n,k,d2dDenotes the time spent on subtasks related to downlink transmission, uplink transmission, computing, caching data, and device-to-device communication in processing a task. For task k processed on device n, the time spent on downlink transmission is the ratio of the output data volume of the i-th subtask to the downlink transmission speed, multiplied by the binary indicator variable representing downlink transmission, and finally summed over I k subtasks. That is, the calculation of the time consumed by downlink transmission satisfies the following formula:
[0135]
[0136] The time spent on uplink transmission is the ratio of the output data volume of the i-th subtask to the uplink transmission speed, multiplied by the binary indicator variable representing uplink transmission, and finally summed over I k subtasks. That is, the calculation of the time spent on uplink transmission satisfies the following formula:
[0137]
[0138] When device n processes the subtasks related to computing in task k, if the time requirement of task k cannot be met, the computing of these subtasks will be performed by the base station. Therefore, the time spent on computing consists of two parts. The first part is the ratio of the computing data volume of the i-th subtask to the computing capacity R BS,cpu of the base station, multiplied by the binary indicator variable representing computing, and finally summed over I k subtasks. The second part is the ratio of the computing data volume of the i-th subtask to the computing capacity R n,k,cpu of device n, multiplied by the binary indicator variable representing computing, and finally summed over I k subtasks. Finally, the two parts are summed up. That is, the calculation of the time spent on computing data satisfies the following formula:
[0139]
[0140] The time spent on temporarily caching data is the ratio of the output data volume of the i-th subtask to the temporary caching capacity R n,k,buf of device n, multiplied by the binary indicator variable representing temporary caching, and finally summed over I k subtasks. That is, the calculation of the time spent on temporary caching satisfies the following formula:
[0141]
[0142] The time spent on device-to-device communication for transmitting data is the ratio of the output data volume of the i-th subtask to the device-to-device communication transmission speed, multiplied by the binary indicator variable representing device-to-device communication, and finally summed over I kThe sum of subtasks, that is, the calculation of the time spent on device-to-device communication transmission satisfies the following formula:
[0143]
[0144] The time spent on processing a task k should be less than or equal to the latency tolerance T, that is, the time spent on processing a task k satisfies the following formula:
[0145] τ n,k,down +τ n,k,cpu +τ n,k,up +τ n,k,buf +τ n,k,d2d ≤T
[0146] For a task k, the energy consumption of processing a download subtask is equal to the time τ consumed by downlink transmission n,k,down multiplied by the unit energy consumption e of device n for downloading data from the Internet n,down , and summed over N devices, that is, the energy consumption E of the download subtask k,down The calculation satisfies the following formula:
[0147]
[0148] For a task k, the energy consumption of processing an upload subtask is equal to the time τ consumed by uplink transmission n,k,up multiplied by the unit energy consumption e of device n for uploading data to the Internet n,up , and summed over N devices, that is, the energy consumption E of the upload subtask k,up The calculation satisfies the following formula:
[0149]
[0150] For a task k, the energy consumption of processing a computing subtask is equal to the time spent by the base station for computing data multiplied by the unit energy consumption e of the base station for processing computing data BS,cpu and the time spent by device n for computing data multiplied by the unit energy consumption e of device n for processing computing data n,cpu , and summed over N devices, that is, the energy consumption E of the computing subtask k,cpu The calculation satisfies the following formula:
[0151]
[0152] For a task k, the energy consumption of processing a caching subtask is equal to the time τ spent on temporarily caching data n,k,buf multiplied by the unit energy consumption e of device n for temporarily caching data n,buf , and summed over N devices, that is, the energy consumption E of the caching subtask k,buf The calculation satisfies the following formula:
[0153]
[0154] For a task k, the energy consumption of the device - to - device communication - related sub - task is equal to the time τ spent on transmitting data in device - to - device communication n,k,d2d and the channel power gain |h n,m,k | 2 between device n and device m, as well as the power p n of device n. Summing over N devices, the energy consumption E of the caching - related sub - task is k,d2d calculated to satisfy the following equation:
[0155]
[0156] The energy consumption (denoted as E k ) for processing a task k is the sum of the energy consumptions of the download - related / upload - related / computing - related / caching - related / device - to - device communication - related sub - tasks. That is, the energy consumption for processing a task k is calculated to satisfy the following equation:
[0157] E k = E k,down + E k,up + E k,cpu + E k,buf + E k,d2d
[0158] Based on minimizing the system energy consumption and satisfying the corresponding constraints, bandwidth and power allocation are performed. The objective function is to minimize the sum of the energy consumptions of all tasks (the total number of tasks is denoted as K), and satisfy the constraints that the time spent on processing a task k should not exceed the threshold T, the sum of the uplink / downlink / device - to - device communication bandwidth optimization variables allocated to each device should not exceed 1, and the total transmit power of the device should not exceed the threshold P sum 、x takes the value of 0 or 1, that is, the system satisfies the following equation:
[0159]
[0160] s.t. τ n,k,down + τ n,k,cpu + τ n,k,up + τ n,k,buf + τ n,k,d2d ≤ T,
[0161]
[0162]
[0163]
[0164]
[0165] x ∈ {0, 1}.
[0166] Given the downlink bandwidth allocation coefficients \(b = \{b 1 ,\ldots,b N \}\), the device - to - device communication bandwidth allocation coefficients \(\gamma=\{\gamma 1 ,\ldots,\gamma N \}\), the power allocation coefficients \(p = \{p 1 ,\ldots,p N \}\), and the initial device scheduling \(x=\{x 1 ,\ldots,x N \}\), with as the objective function, and the processing time of all subtasks not exceeding the specified threshold \(T\) and the sum of the uplink bandwidth allocation coefficients not exceeding \(1\), that is, \(\tau n,k,down +\tau n,k,cpu +\tau n,k,up +\tau n,k,buf +\tau n,k,d2d \leq T\) and as constraints. Add the barrier function to the objective function , and the objective function is transformed into Given the initial value of the uplink bandwidth allocation coefficient Calculate the gradient of the objective function and set the gradient equal to \(0\) to obtain the update formula for the uplink bandwidth allocation coefficient Update the parameter \(t a =\mu a t a \), where \(\mu a >1\). Repeat the above steps until the value of the objective function converges. At this time, the uplink bandwidth allocation strategy for this iteration is obtained.
[0167] Given the uplink bandwidth allocation strategy \(a * =\{a 1 ,\ldots,a N \}\) obtained in this iteration, given the power allocation coefficients \(p = \{p 1 ,\ldots,p N \}\), the device - to - device communication bandwidth allocation coefficients \(\gamma=\{\gamma 1 ,\ldots,\gamma N \}\) and the initial device scheduling \(x=\{x 1 ,\ldots,x N \}\), with as the objective function, and the processing time of all subtasks not exceeding the specified threshold \(T\) and the sum of the downlink bandwidth allocation coefficients not exceeding \(1\), that is, \(\tau n,k,down +\tau n,k,cpu +\tau n,k,up +\tau n,k,buf +\tau n,k,d2d \leq T\) and is a constraint. For the objective function Add a barrier function The objective function is transformed into Given the initial value of the uplink bandwidth allocation coefficient Calculate the objective function Calculate the gradient of and set the gradient equal to 0 to obtain the update formula for the uplink bandwidth allocation coefficient Update the parameter t b = μ b t b , where μ b > 1. Repeat the above steps until the value of the objective function converges. At this time, the optimal downlink bandwidth allocation strategy for this iteration is obtained.
[0168] Given the uplink bandwidth allocation strategy a obtained in this iteration * = {a 1 ,..., a N}, the downlink bandwidth allocation strategy b * = {b 1 ,..., b N}, the power allocation coefficient p = {p 1 ,..., p N} and the initial device scheduling x = {x 1 ,..., x N}, taking as the objective function, with the processing time of all subtasks not exceeding the specified threshold T and the sum of the device-to-device communication bandwidth allocation coefficients not exceeding 1, that is, τ n,k,down + τ n,k,cpu + τ n,k,up + τ n,k,buf + τ n,k,d2d ≤ T and as constraints. For the objective function Add a barrier function The objective function is transformed into Given the initial value of the device-to-device communication bandwidth allocation coefficient Calculate the objective function Calculate the gradient of and set the gradient equal to 0 to obtain the update formula for the device-to-device communication bandwidth allocation coefficient Update the parameter t γ = μ γ t γ , where μ γ > 1. Repeat the above steps until the value of the objective function converges. At this time, the device-to-device communication bandwidth allocation strategy for this iteration is obtained.
[0169] Given the uplink bandwidth allocation strategy a obtained in this iteration* = {a 1 ,..., a N}, downlink bandwidth allocation policy b * = {b 1 ,..., b N}, device - to - device communication bandwidth allocation policy γ * = {γ 1 ,..., γ N}, device initial scheduling x = {x 1 ,..., x N}, taking as the objective function, with the processing time of all subtasks not exceeding the specified threshold T and the total transmission power of the device not exceeding the threshold P sum , that is, τ n,k,down + τ n,k,cpu + τ n,k,up + τ n,k,buf + τ n,k,d2d ≤ T and as constraints.
[0170] For the objective function add a barrier function The objective function is transformed into Given the initial value of the power allocation coefficient of the device Calculate the gradient of the objective function and set the gradient equal to 0 to obtain the update formula for the power allocation coefficient Update the parameter t p = μ p t p , where μ p > 1. Repeat the above steps until the value of the objective function converges. At this time, the power allocation policy for this iteration is obtained.
[0171] According to the bandwidth and power allocation policies of this iteration, construct a coefficient matrix E. The number of rows and columns of the matrix is N, which are composed of devices and subtasks respectively. Each element in the matrix is the energy consumption c i,jComposition. Transform the coefficient matrix by subtracting the minimum element in each row from each element in that row, and then subtracting the minimum element in each column from each element in that column. Use the minimum number of horizontal and vertical lines to cover all the zero elements in the coefficient matrix, that is, mark the rows and columns corresponding to the minimum number of horizontal and vertical lines. If the number is equal to the number of rows (columns) N, then all the sub-task-device pairs where the zero elements are in different rows and different columns are the device scheduling strategy for this iteration; otherwise, find the minimum element in the unmarked rows and columns, and subtract this element from all the elements in the unmarked rows and columns; for all the elements marked twice, that is, the elements where both the row and the column are marked, add this minimum element. Repeat the above steps until the device scheduling strategy for this iteration is obtained.
[0172] According to the bandwidth allocation strategy, power allocation strategy, and device scheduling strategy obtained in this iteration, calculate the value of the objective function. Repeat the above steps until the objective function value converges.
[0173] The above is only the preferred embodiment of the present invention, and the protection scope of the present invention is not limited to the above embodiments. All technical solutions within the idea of the present invention belong to the protection scope of the present invention. It should be noted that for those of ordinary skill in the art in this technical field, several improvements and refinements made without departing from the principle of the present invention should be regarded as within the protection scope of the present invention.
Claims
1. A collaborative service network resource management method based on a generalized service model, characterized in that, the model is business-centered and faces the overall business. It determines the devices and the number of devices for executing subtasks through device scheduling decisions, represents the subtask topology structure of tasks, and includes five types of subtasks - upload, download, device-to-device transmission, computing, and temporary caching, representing the requirements of the total system delay, energy consumption, device bandwidth, and transmit power allocation; the method is implemented based on a collaborative service network resource management system, characterized in that the method includes: Step 1: When a series of services arrive, the system obtains the types of all subtasks, the internal correlation of subtasks in each service, and the data size of the subtasks; Step 2: The Internet of Things devices perform bandwidth allocation and power allocation to obtain the energy consumption of each device for processing each subtask in this iteration; Step 3: Based on the energy consumption obtained in Step 2, perform Internet of Things device scheduling; Step 4: Repeat the above Steps 1 - Step 3 in the next iteration until the collaborative service network resource management algorithm converges. At this time, the decisions on bandwidth and power allocation and device scheduling are the optimal decisions for collaborative service network resource management.
2. A collaborative service network resource management method based on a generalized service model according to claim 1, characterized in that, when the system processes each service, it divides the service into several different types of subtasks according to different requirements of the service, combines the three basic task flow model topologies of linear, tree, and graph to describe the internal correlation between subtasks, allocates an Internet of Things device to process each subtask, and each Internet of Things device does not process two or more subtasks simultaneously; During the process of the system processing services, it allocates bandwidth, power to the devices, and determines the subtasks that the devices need to process until the collaborative service network resource management algorithm converges. The devices obtain the optimal strategy that minimizes the system energy consumption and perform bandwidth, power allocation, and device scheduling according to this strategy.
3. A collaborative service network resource management method based on a generalized service model according to claim 1, characterized in that, the bandwidth allocation in Step 2 includes: uplink bandwidth, downlink bandwidth, and device-to-device bandwidth allocation; and the initialization method of the uplink bandwidth, downlink bandwidth, and device-to-device bandwidth allocation coefficients is: Uniformly allocate according to the number of devices N, that is, the initial values of the allocation coefficients a, b, and γ for the uplink, downlink, and device-to-device communication bandwidth are:
4. A collaborative service network resource management method based on a generalized service model according to claim 1, characterized in that, the initialization method of the power allocation coefficient for power allocation in Step 2 is: Divide the total power P sum equally among each device, i.e., the power initialization of the device satisfies 5. A collaborative service network resource management method based on a generalized service model according to claim 1, characterized in that, in Step 2, performing uplink bandwidth, downlink bandwidth, and device-to-device bandwidth allocation includes the following steps: Step 2.1: Given the downlink bandwidth allocation coefficient \(b = \{b 1 , \ldots, b N \}\), the device-to-device communication bandwidth allocation coefficient \(\gamma=\{\gamma 1 , \ldots, \gamma N \}\), the power allocation coefficient \(p = \{p 1 , \ldots, p N \}\), and the initial device scheduling \(x=\{x 1 , \ldots, x N \}\); The energy consumption f related to uplink transmission 0 (a) Taking the processing time of all subtasks not exceeding a specified threshold T and the sum of uplink bandwidth allocation coefficients not exceeding 1 as constraints, with it as the objective function; Step 2.2: For the objective function f 0 (a) Add a logarithmic barrier function; The logarithmic barrier function satisfies the formula: Convert the objective function to t a f 0 (a) + φ(a); where t a > 0 is a parameter for determining the approximation accuracy; Step 2.3: Given the initial value of the uplink bandwidth allocation coefficient Calculate the objective function t a f 0 Calculate the gradient of (a) + φ(a) and set the gradient equal to 0 to obtain the update formula for the uplink bandwidth allocation coefficient Step 2.4: Update parameter t a = μ a t a , where μ a > 1; Step 2.5: Repeat Step 2.2 - Step 2.4 until the value of the objective function t a f 0 (a) + φ(a) converges, and at this time, the uplink bandwidth allocation strategy for this iteration is obtained; Step 2.6: Given the uplink bandwidth allocation coefficient a of the uplink bandwidth allocation policy obtained in Step 2.5 * = {a 1 , …, a N}, power allocation coefficient p = {p 1 , …, p N}, device-to-device communication bandwidth allocation coefficient γ = {γ 1 , …, γ N} and device initial scheduling x = {x 1 , …, x N}, as given in Step 2.1, with the energy consumption f 0 (b) related to downlink transmission as the objective function, subject to the constraint that the processing time of all subtasks does not exceed the specified threshold T and the sum of downlink bandwidth allocation coefficients does not exceed 1; Step 2.7: For the objective function f 0 (b) Add a logarithmic barrier function, and the logarithmic barrier function satisfies the formula: Convert the objective function to t b f 0 (b) + φ(b); where t b > 0 is a parameter for determining the approximation accuracy; Step 2.8: Given the initial value of the downlink bandwidth allocation coefficient Calculate the objective function t b f 0 The gradient of (b) + φ(b) and set the gradient equal to 0 to obtain the update formula for the downlink bandwidth allocation coefficient Step 2.9: Update parameter t b = μ b t b , where μ b > 1; Step 2.10: Repeat Step 2.7 - Step 2.9 until the value of the objective function t b f 0 (b) + φ(b) converges, and at this time, the downlink bandwidth allocation strategy for this iteration is obtained; Step 2.11: Given the uplink bandwidth allocation coefficient a of the uplink bandwidth allocation policy obtained in Step 2.5 * = {a 1 , …, a N}, the downlink bandwidth allocation coefficient b of the downlink bandwidth policy obtained in Step 2.10 * = {b 1 , …, b N}, the power allocation coefficient p = {p 1 , …, p N} and the initial device scheduling x = {x 1 , …, x N}, as given in Step 2.1, with the energy consumption f 0 (γ) related to device-to-device communication transmission as the objective function, and the constraint that the processing time of all subtasks does not exceed the specified threshold T and the sum of the device-to-device communication bandwidth allocation coefficients does not exceed 1; Step 2.12: Add a logarithmic barrier function to the objective function f 0 (γ), where the logarithmic barrier function satisfies the formula: Convert the objective function to t γ f 0 (γ)+φ(γ); where t γ > 0 is a parameter for determining the approximation accuracy; Step 2.13: Given the initial value of the device-to-device communication bandwidth allocation coefficient Calculate the objective function t γ f 0 Calculate the gradient of f(γ)+φ(γ) and set the gradient equal to 0 to obtain the update formula for the downlink bandwidth allocation coefficient Step 2.14: Update the parameter t γ = μ γ t γ , where μ γ > 1; Step 2.15: Repeat Step 2.12 - Step 2.14 until the value of the objective function t γ f 0 (γ) + φ(γ) converges, and at this time, the device - to - device communication bandwidth allocation strategy for this iteration is obtained.
6. A collaborative service network resource management method based on a generalized service model according to claim 1, characterized in that, in Step 2, the method of power allocation includes the following steps: Step 2.16: Given the uplink bandwidth allocation coefficient a of the uplink bandwidth allocation policy obtained in Step 2.5 * ={a 1 ,…,a N}, the downlink bandwidth allocation coefficient b of the downlink bandwidth allocation policy obtained in Step 2.10 * ={b 1 ,…,b N}, the device - to - device communication bandwidth allocation coefficient γ of the device - to - device communication bandwidth allocation policy obtained in Step 2.15 * ={γ 1 ,…,γ N}, the initial device scheduling x = {x 1 ,…,x N} given in Step 2.1, with the power - related energy consumption f 0 (p) as the objective function, and the processing time of all subtasks not exceeding the specified threshold T and the total transmission power of the device not exceeding the threshold P sum as the constraints; Step 2.17: Add a logarithmic barrier function to the objective function f 0 (p). The logarithmic barrier function satisfies the formula: Convert the objective function to t p f 0 (p) + φ(p); where t p > 0 is a parameter for determining the approximation accuracy; Step 2.18: Given the initial value of the power distribution coefficient of the device P sum is the total power of all devices in the network, calculate the objective function t p f 0 (p)+φ(p) and set the gradient equal to 0 to obtain the update formula for the power distribution coefficient Step 2.19: Update the parameter t p = μ p t p , where μ p > 1; Step 2.20: Repeat Step 2.17 - Step 2.19 until the value of the objective function t p f 0 (p) + φ(p) converges, and at this time, the device power allocation strategy for this iteration is obtained.
7. A collaborative service network resource management method based on a generalized service model according to claim 1, characterized in that, In step 3, the device scheduling steps include: Step 3.1: Construct a coefficient matrix E. The number of rows and columns of the matrix is N. The rows and columns of the matrix are composed of devices and subtasks respectively. Each element in the matrix is composed of the energy consumption c generated by the device processing the subtask i,j constitute; Step 3.2: Transform the coefficient matrix by subtracting the minimum element in each row from each element in that row; Step 3.3: Transform the coefficient matrix by subtracting the minimum element in each column from each element in that column; Step 3.4: Use the minimum number of horizontal and vertical lines to cover all zero elements in the coefficient matrix, that is, mark the rows and columns corresponding to the minimum number of horizontal and vertical lines. If the number is equal to N, then all subtask-device pairs where all zero elements are in different rows and different columns are the device scheduling strategy for this iteration; otherwise, continue to execute step 3.5; Step 3.5: Find the minimum element in the unmarked rows and columns in step 3.4, and subtract this element from all elements in the unmarked rows and columns; for all elements marked twice, that is, elements where both the row and the column are marked, add this minimum element; Step 3.6: Repeat steps 3.4 - 3.5 until the device scheduling strategy for this iteration is obtained.