Resource allocation method and device for cloud edge-end integrated architecture, equipment, storage medium and product
By generating topological relationships of directed acyclic graphs in the cloud edge-end integrated architecture and determining decision variables, and generating resource allocation strategies for cloud and edge layers, the delay problem caused by top-down resource allocation methods is solved, and efficient resource allocation and system response are achieved.
Patent Information
- Application Number
- CN202411653213.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-18
- Publication Date
- 2025-02-28
AI Technical Summary
The top-down resource allocation method in the prior art may lead to delay in data acquisition and affect the response speed of the entire system. Especially in industrial scenarios, resource allocation is not only a problem of mixed integer nonlinear planning, but also involves a non-deterministic problem of the complexity of polynomials, making it impractical to find the exact optimal solution within a finite time.
By generating topological relationships of directed acyclic graphs in the cloud edge-end integrated architecture, mapping sensor nodes and virtual host nodes to the virtual node set, centralized decision variables in the cloud layer and decentralized decision variables in the edge layer are determined, resource allocation strategies for cloud layer and edge layer are generated based on these variables, and directed acyclic graph topological relationships are updated to obtain the target resource allocation strategy.
This method can identify common requests from multiple applications, and by performing the required tasks only once and sharing the results between applications, saving resources, improving resource utilization efficiency, reducing redundant calculations, and improving system response speed.
Smart Images

Figure CN119544511A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of industrial Internet technology, and in particular to resource allocation methods, devices, equipment, storage media and products for a cloud-edge-end integrated architecture. Background Art
[0002] The goal of cloud-edge resource allocation is to maximize the application requirements of physical sensors and actuators at the sensor layer while ensuring operating costs. However, the cloud-edge-end integrated architecture in industrial scenarios forces data to be obtained and shared from the underlying physical sensors and actuators. This bottom-up resource demand is often dynamically changing and needs to be adjusted according to the real-time status of the underlying equipment and production needs. The top-down resource allocation method of existing technologies may cause delays in data acquisition and affect the response speed of the entire system. Secondly, the resource allocation of cloud-edge-end integrated architecture in industrial scenarios is not only a mixed integer nonlinear programming (MINP) problem, but also a non-deterministic problem (NPC) of polynomial complexity. This is because these problems usually involve highly complex variables and constraints, uncertainty factors, real-time requirements, multi-objective optimization, dynamically changing environments, limited computing resources, and rapid growth in the scale of problems. These factors work together to make it impractical to find an exact optimal solution in a limited time, so it is necessary to rely on heuristics or approximations to quickly obtain feasible solutions to adapt to the rapid changes and high efficiency requirements in industrial environments. Conventional cloud computing models hinder the rapid search for optimal solutions when the number of virtual nodes and applications grows, resulting in delays in edge layer applications.
[0003] The above contents are only used to assist in understanding the technical solution of the present application and do not constitute an admission that the above contents are prior art. Summary of the invention
[0004] The main purpose of this application is to provide a resource allocation method, device, equipment, storage medium and product for a cloud-edge integrated architecture, aiming to solve the technical problem that a top-down resource allocation approach may cause delays in data acquisition and affect the response speed of the entire system.
[0005] To achieve the above objectives, the present application proposes a resource allocation method for a cloud-edge-device integrated architecture, the method comprising:
[0006] Generate the topological relationship of a directed acyclic graph based on the arrival time and time span in the cloud-edge-end integration architecture;
[0007] Map the sensor node set and the virtual host node set to the virtual node set to obtain a virtual node sensor node mapping matrix and a virtual node host mapping matrix;
[0008] Determining cloud layer centralized decision variables and edge layer decentralized decision variables through the virtual node sensor node mapping matrix and the virtual node host mapping matrix;
[0009] Obtaining a cloud layer resource allocation strategy based on the cloud layer centralized decision variables, and obtaining an edge layer resource allocation strategy based on the edge layer decentralized decision variables;
[0010] The directed acyclic graph topological relationship is updated based on the cloud layer resource allocation strategy and the edge layer resource allocation strategy to obtain a target resource allocation strategy, and resource allocation is performed according to the target resource allocation strategy.
[0011] In one embodiment, the step of obtaining a cloud resource allocation strategy based on the cloud centralized decision variable includes:
[0012] Record the current request time, and when the buffer reaches the application, judge the current request time to determine the current request cycle;
[0013] When the current request period has not expired, a cloud layer resource allocation strategy is generated according to the allocated cloud layer centralized decision variables.
[0014] In one embodiment, after the step of judging the current request time and determining the current request period when the buffer reaches the application, the method further includes:
[0015] When the current request cycle has expired, detecting the remaining energy value of the virtual node to determine the virtual node corresponding to the preset energy value;
[0016] Allocating each current resource request to a virtual node corresponding to the preset energy value;
[0017] or,
[0018] Determine a candidate queue for each resource request, and respectively determine a preset queue for each resource request, and respectively determine a virtual node according to the preset queue;
[0019] The cloud layer centralized decision variables are updated according to the virtual nodes, and a cloud layer resource allocation strategy is generated according to the updated cloud layer centralized decision variables.
[0020] In one embodiment, the step of obtaining the edge layer resource allocation strategy based on the edge layer decentralized decision variables includes:
[0021] Storing resource requests of virtual nodes in a first-in-first-out queue, and determining pending resource requests according to the time of joining the queue;
[0022] When the pending resource request is being processed and the queue is blocked, determining the data update time according to the edge layer distributed decision variables and the virtual node data update time;
[0023] Determine the processing capacity of the virtual node, and obtain the virtual node processing time according to the processing load of the virtual node and the processing capacity of the virtual node;
[0024] An edge layer resource allocation strategy is determined based on the data update time, the edge layer decentralized decision variables, and the virtual node processing time.
[0025] In one embodiment, the step of determining the edge layer resource allocation strategy based on the data update time, the edge layer distributed decision variables and the virtual node processing time includes:
[0026] Determine a target transmission virtual node determined by the virtual node according to the allocation request, and determine a bandwidth rate between the virtual nodes;
[0027] Obtaining an end time of a single cycle according to the target transmission virtual node, the bandwidth rate, the virtual node processing time, the data update time and the edge layer distributed decision variable;
[0028] Obtain the last data update time in the single cycle according to the data update time, the edge layer distributed decision variables and the data update time in the previous decision window;
[0029] The edge layer resource allocation strategy is determined according to the end time of the single cycle and the last data update time.
[0030] In one embodiment, the step of updating the directed acyclic graph topology relationship based on the cloud layer resource allocation strategy and the edge layer resource allocation strategy to obtain the target resource allocation strategy includes:
[0031] Determine the freshness of the data according to the time difference between the request service time of the virtual node in a single cycle and the last data update time in the single cycle;
[0032] When the freshness of the data is a preset freshness, determining the target resource allocation utility according to the utility amount obtained by the virtual node request;
[0033] The directed acyclic graph topology is updated based on the target resource allocation utility, the cloud layer centralized decision variables, and the edge layer decentralized decision variables to a target resource allocation strategy.
[0034] In addition, to achieve the above-mentioned purpose, the present application also proposes a resource allocation device for a cloud-edge-end integrated architecture, and the resource allocation device for the cloud-edge-end integrated architecture includes:
[0035] The node topology module is used to generate the topological relationship of the directed acyclic graph based on the arrival time and time span in the cloud-edge-end integration architecture;
[0036] A node mapping module is used to map the sensor node set and the virtual host node set to the virtual node set to obtain a virtual node sensor node mapping matrix and a virtual node host mapping matrix;
[0037] A resource decision module, used to determine cloud layer centralized decision variables and edge layer decentralized decision variables through the virtual node sensor node mapping matrix and the virtual node host mapping matrix;
[0038] A resource allocation module, configured to obtain a cloud layer resource allocation strategy based on the cloud layer centralized decision variables, and to obtain an edge layer resource allocation strategy based on the edge layer decentralized decision variables;
[0039] The resource allocation module also updates the directed acyclic graph topology based on the cloud layer resource allocation strategy and the edge layer resource allocation strategy to obtain a target resource allocation strategy, and performs resource allocation according to the target resource allocation strategy.
[0040] In addition, to achieve the above-mentioned objectives, the present application also proposes a resource allocation device for a cloud-edge-end integrated architecture, the device comprising: a memory, a processor, and a computer program stored on the memory and executable on the processor, the computer program being configured to implement the steps of the resource allocation method for the cloud-edge-end integrated architecture as described above.
[0041] In addition, to achieve the above-mentioned purpose, the present application also proposes a storage medium, which is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by the processor, the steps of the resource allocation method of the cloud-edge-terminal integrated architecture as described above are implemented.
[0042] In addition, to achieve the above-mentioned objectives, the present application also provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, it implements the steps of the resource allocation method of the cloud-edge-end integrated architecture as described above.
[0043] One or more technical solutions proposed in this application have at least the following technical effects: generating a topological relationship of a directed acyclic graph according to the arrival time and time span in the cloud-edge integrated architecture; mapping the sensor node set and the virtual host node set to the virtual node set to obtain a virtual node sensor node mapping matrix and a virtual node host mapping matrix; determining the cloud layer centralized decision variables and the edge layer decentralized decision variables through the virtual node sensor node mapping matrix and the virtual node host mapping matrix; obtaining a cloud layer resource allocation strategy based on the cloud layer centralized decision variables, and obtaining an edge layer resource allocation strategy based on the edge layer decentralized decision variables; updating the directed acyclic graph topological relationship based on the cloud layer resource allocation strategy and the edge layer resource allocation strategy to obtain a target resource allocation strategy, and performing resource allocation according to the target resource allocation strategy, being able to identify common requests from multiple applications, saving resources by executing the required tasks only once, and sharing the results between applications. This optimization is achieved through centralized cloud layer computing, using directed acyclic graphs for task scheduling and data sharing, reducing redundant computing, and improving resource utilization efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0044] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.
[0045] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0046] Figure 1 A flowchart diagram of a resource allocation method for a cloud-edge-device integrated architecture provided in Example 1 of the present application;
[0047] Figure 2 A schematic diagram of an integrated architecture provided for an implementation example of a resource allocation method for a cloud-edge-device integrated architecture of the present application;
[0048] Figure 3 A flowchart diagram of the second embodiment of the resource allocation method for the cloud-edge-device integrated architecture of the present application is provided;
[0049] Figure 4 A flowchart diagram of the resource allocation method for the cloud-edge-device integrated architecture provided in Example 3 of the present application;
[0050] Figure 5 A schematic diagram of the module structure of a resource allocation device of a cloud-edge-device integrated architecture according to an embodiment of the present application;
[0051] Figure 6 This is a schematic diagram of the device structure of the hardware operating environment involved in the resource allocation method of the cloud-edge-end integrated architecture in the embodiment of the present application.
[0052] The purpose, features and advantages of this application will be further described in conjunction with the embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION
[0053] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of the present application and are not used to limit the present application.
[0054] In order to better understand the technical solution of the present application, a detailed description will be given below in conjunction with the accompanying drawings and specific implementation methods.
[0055] The main solution of the embodiment of the present application is: generate a topological relationship of a directed acyclic graph according to the arrival time and time span in the cloud-edge integrated architecture; map the sensor node set and the virtual host node set to the virtual node set to obtain a virtual node sensor node mapping matrix and a virtual node host mapping matrix; determine the cloud layer centralized decision variables and the edge layer decentralized decision variables through the virtual node sensor node mapping matrix and the virtual node host mapping matrix; obtain a cloud layer resource allocation strategy based on the cloud layer centralized decision variables, and obtain an edge layer resource allocation strategy based on the edge layer decentralized decision variables; update the directed acyclic graph topological relationship based on the cloud layer resource allocation strategy and the edge layer resource allocation strategy to obtain a target resource allocation strategy, and perform resource allocation according to the target resource allocation strategy.
[0056] In this embodiment, for ease of expression, the following description is made using a resource allocation device that identifies a cloud-edge integrated architecture as the execution entity.
[0057] Since the existing technology is based on traditional cloud computing, the integrated architecture composed of cloud, sensors and edge devices can usually run virtually. The resource allocation between them is achieved by allocating different virtual nodes through application requests. This allocation scheme can be classified as mixed integer nonlinear programming. The integrated architecture includes cloud layer, edge layer and sensor layer. The cloud layer is mainly cloud nodes, the edge layer is mainly edge node gateways, and the sensor layer is mainly physical sensors and actuator nodes. However, virtual nodes will dynamically allocate and adjust resources according to the needs of the applications they carry. This scheme is a top-down resource allocation mode from the cloud layer to the edge layer, and the top-down resource allocation method may cause delays in data acquisition and affect the response speed of the entire system.
[0058] The present application provides a solution, by generating the topological relationship of a directed acyclic graph according to the arrival time and time span in the cloud-edge integrated architecture; mapping the sensor node set and the virtual host node set to the virtual node set to obtain the virtual node sensor node mapping matrix and the virtual node host mapping matrix; determining the cloud layer centralized decision variables and the edge layer decentralized decision variables through the virtual node sensor node mapping matrix and the virtual node host mapping matrix; obtaining the cloud layer resource allocation strategy based on the cloud layer centralized decision variables, and obtaining the edge layer resource allocation strategy based on the edge layer decentralized decision variables; updating the directed acyclic graph topological relationship based on the cloud layer resource allocation strategy and the edge layer resource allocation strategy to obtain the target resource allocation strategy, and performing resource allocation according to the target resource allocation strategy, it is possible to identify common requests from multiple applications, save resources by executing the required tasks only once, and sharing the results between applications. This optimization is achieved through centralized cloud layer computing, using directed acyclic graphs for task scheduling and data sharing, reducing redundant computing, and improving resource utilization efficiency.
[0059] It should be noted that the execution subject of this embodiment can be a computing service device with data processing, network communication and program running functions, such as a tablet computer, a personal computer, a mobile phone, etc., or an electronic device capable of realizing the above functions, a resource allocation device of a cloud-edge-end integrated architecture, etc. The following takes the resource allocation device of a cloud-edge-end integrated architecture as an example to illustrate this embodiment and the following embodiments.
[0060] Based on this, the embodiment of the present application provides a resource allocation method for a cloud-edge-end integrated architecture, referring to Figure 1 , Figure 1 This is a flow chart of the first embodiment of the resource allocation method for the cloud-edge-device integrated architecture of the present application.
[0061] In this embodiment, the resource allocation method of the cloud-edge-device integrated architecture includes steps S10 to S50:
[0062] Step S10, generating a topological relationship of a directed acyclic graph according to the arrival time and time span in the cloud-edge-end integrated architecture.
[0063] It should be noted that the cloud-edge integrated architecture includes sensors, virtual node hosts, and virtual host nodes, among which the virtual node hosts include cloud nodes and edge nodes.
[0064] It should be understood that the integrated architecture in the current prior art is as follows Figure 2 As shown in the figure, the cloud layer mainly consists of cloud nodes, the edge layer mainly consists of edge node gateways, and the sensor layer mainly consists of physical sensors and actuator nodes.
[0065] Since the edge nodes (EN) and cloud nodes (CN) are deployed on their respective physical hosts, the above three-layer integrated architecture is transparent and is handled by the typical cloud and edge computing virtualization model, which involves building virtual nodes in the overlay layer on sensor nodes (SN), edge nodes, and cloud nodes, respectively.
[0066] The expression formulas of cloud node (CN), edge node (EN) and sensor node (SN) are as follows:
[0067] CN=<PS、TM、BW、GL>
[0068] EN=<PS、TM、BW、GL>
[0069] SN=<PS、TM、BW、SU、DU、RE、SA、GL>
[0070] Where PS is the processing speed, TM is the total memory, BW is the bandwidth, GL is the node coordinate position, SU is the list of sensor units, DU is the list of drive units, RE is the remaining energy, and SA is the wireless sensor and actuator network.
[0071] A virtual node runs on the edge or cloud layer and can coordinate a group of cloud nodes, edge nodes or sensor nodes, representing a computing entity implemented by software. The definition of a virtual node is as follows:
[0072] VN=<PP,TM,BW,GL,NNRV,NRV,PL,TL,DUpTm,LU>
[0073] Where PP is the processing power, TM is the total memory, BW is the bandwidth, GL is the location coordinates, NNRV is the list of provided values required by non-negotiable applications, NRV is the list of provided values required by negotiable applications, PL is the local processing load required to respond to application requests, TL is the transmission load of output data, DUpTm is the time required to perform data updates, and LU is the list of underlying nodes.
[0074] In the specific implementation, the K sensor nodes in the cloud-edge integrated architecture can be defined as a SNS as follows:
[0075] SNS={k|k∈N,k∈K}
[0076] Define a set of H virtual node hosts (cloud nodes or edge nodes) as HS, as follows:
[0077] HS={h|h∈N,h∈H}
[0078] Define a set of I virtual nodes as VNS, as follows:
[0079] VNS={i|i∈N,i∈I}
[0080] Define J requests of any virtual node as request list RL, as follows:
[0081] RL={j|j∈N,j∈J}
[0082] Define the set ATSS formed by the arrival time and time span in the cloud-edge-end integration architecture, and any directed edge from vertex a to vertex b. Where a is the arrival time, b is the time span, and a is before b, so as to establish the topological sorting of the directed acyclic graph, as follows:
[0083] ATSS={(a,b)|a,b∈RL,a≠b}
[0084] Define the directed graph DG as an application as follows:
[0085] DG=(RL,ATSS)
[0086] The directed graph DG contains only direct precedence relations, that is, if RL = (1, 2, 3) and but
[0087] Step S20, mapping the sensor node set and the virtual host node set to the virtual node set, to obtain a virtual node sensor node mapping matrix and a virtual node host mapping matrix.
[0088] It should be noted that the virtual node sensor node mapping matrix is a matrix obtained by mapping the sensor node set to the virtual node set, and the virtual node host mapping matrix is a matrix obtained by mapping the virtual host node to the virtual node set.
[0089] In the specific implementation, define the set SPC of all P cycles and the set SPC of cycles starting from p=1 1 , SPC and SPC 1 It is expressed as:
[0090] SPC={p|p∈N,p <P}
[0091] SPC 1 ={p|p∈N + ,p <P}
[0092] The resource provisioning function is modeled in the same way as the existing solution, where the virtual nodes are instantiated and allocated on their hosts EN or CN, and the expression is as follows:
[0093] f phy-vir (SNS,HS)=VNS,VNSN ik ,VNHM ih
[0094] The resource provisioning function maps the SNS and HS sets to VNS, which is the output virtual node × sensor node mapping (VNSN ik ) and virtual node × host mapping (VNHM ih ) matrix. The matrix VECM ih and VNSN ik The usage level of each host of each virtual node and each sensor node of each virtual node is stored separately, ranging from 0% to 100%. This matrix is also the input parameter for cloud-edge resource allocation.
[0095] Step S30 , determining cloud layer centralized decision variables and edge layer decentralized decision variables through the virtual node sensor node mapping matrix and the virtual node host mapping matrix.
[0096] It should be noted that the cloud layer centralized decision variables are decision variables used for cloud layer resource allocation, which express whether to allocate virtual node i to request j in a single cycle, and can make the cloud layer more global when allocating resources. The edge layer decentralized decision variables are decision variables used for edge layer resource allocation, including whether to decide whether virtual node i performs data update in a single cycle, and real-valued decision variables, which represent the start time of each cycle of virtual node i, and can make the edge layer more local when allocating resources.
[0097] In a specific implementation, when an application arrives or the execution of the current resource allocation decision is completed, a time review decision needs to be made. This embodiment divides the decision into P cycles so that the virtual nodes can be requested to correspond to the divided cycles. Each virtual node considers the same number of cycles P, and each cycle p has a start time, an end time, and a duration. The time and duration of different virtual nodes are different. Therefore, the decision variables are determined as cloud-layer centralized decision variables and edge-layer decentralized decision variables, where the cloud-layer centralized decision variables are The decentralized decision variables at the edge layer are and Among them, i belongs to VNS, j belongs to RL, and p belongs to SPC.
[0098] is a binary value that expresses whether virtual node i is assigned to request j in cycle p. These requests are generally processed in a single cycle. When i and j have the same value, each cycle p′>p The value must also be equal to 1. Therefore, whenever an allocation occurs, it cannot be revoked or re-allocated during the remainder of the decision window. When p is 0, is 0.
[0099] is a binary variable, representing whether virtual node i performs data update in period p. When p is 0, is 0.
[0100] is a real-valued decision variable, which indicates the start time of each cycle p in virtual node i. When p is 0, is 0.
[0101] Since it is unrealistic to solve the resource allocation problem of any size in an optimal way in polynomial time, the resource allocation calculation can be implemented at the edge or in the cloud. When the scope of resource allocation is implemented at the cloud, it is more global; when implemented at the edge, it is more local. Therefore, it is necessary to calculate an approximate solution through a heuristic algorithm.
[0102] Step S40, obtaining a cloud layer resource allocation strategy based on the cloud layer centralized decision variables, and obtaining an edge layer resource allocation strategy based on the edge layer decentralized decision variables.
[0103] It should be noted that the cloud layer resource allocation strategy and the edge layer resource allocation strategy correspond to the resource allocation schemes in the cloud layer and the edge layer respectively.
[0104] In the specific implementation, cloud-based centralized computing, The decision is made to allocate resources for the initialization without receiving any demand. The purpose of this stage is to allow the cloud layer to predict and pre-allocate resources before the specific demand of the application arrives, so as to prepare for the upcoming request, thereby reducing the response time and resource usage. and At this stage, DAG can change dynamically, and virtual nodes i and cycles p can be calculated based on real-time data. Tasks can be prioritized and scheduled to ensure that key tasks are executed first, improving the efficiency of industrial production. It can also reduce the need to transmit data to the cloud and reduce latency.
[0105] Step S50: updating the directed acyclic graph topology relationship based on the cloud layer resource allocation strategy and the edge layer resource allocation strategy, obtaining a target resource allocation strategy, and performing resource allocation according to the target resource allocation strategy.
[0106] It should be noted that the target resource allocation strategy refers to an implementation plan that can make resource allocation more efficient and maximize the utility of resource allocation when allocating resources.
[0107] In a specific implementation, the directed acyclic graph topology relationship is updated according to the cloud layer resource allocation strategy and the edge layer resource allocation strategy, and the node allocation relationship in the directed acyclic graph can be updated. and The nodes in the directed acyclic graph are allocated, and the node resource allocation relationship in the directed acyclic graph is updated according to the energy value of the virtual node in the directed acyclic graph or the shortest queue, so as to obtain the node queue after the resource allocation is updated, and the resources are allocated according to the target resource allocation strategy.
[0108] This embodiment provides a resource allocation method for a cloud-edge-end integrated architecture, which generates a topological relationship of a directed acyclic graph according to the arrival time and time span in the cloud-edge-end integrated architecture; maps a sensor node set and a virtual host node set to a virtual node set to obtain a virtual node sensor node mapping matrix and a virtual node host mapping matrix; determines a cloud layer centralized decision variable and an edge layer decentralized decision variable through the virtual node sensor node mapping matrix and the virtual node host mapping matrix; obtains a cloud layer resource allocation strategy based on the cloud layer centralized decision variable, and obtains an edge layer resource allocation strategy based on the edge layer decentralized decision variable; updates the directed acyclic graph topological relationship based on the cloud layer resource allocation strategy and the edge layer resource allocation strategy to obtain a target resource allocation strategy, and performs resource allocation according to the target resource allocation strategy, which can identify common requests from multiple applications, save resources by executing the required tasks only once, and sharing the results between applications. This optimization is achieved through centralized cloud layer computing, using directed acyclic graphs for task scheduling and data sharing, reducing redundant computing and improving resource utilization efficiency.
[0109] Based on the first embodiment of the present application, in the second embodiment of the present application, the same or similar contents as those in the above-mentioned embodiment 1 can be referred to the above introduction, and will not be repeated in the following. Figure 3 , step S40 also includes steps S401 to S402:
[0110] Step S401: Record the current request time, and when the buffer reaches the application, judge the current request time to determine the current request cycle.
[0111] It should be noted that the request time refers to the time currently recorded by the running timer, and the request cycle refers to the resource allocation cycle in which the current request time is located during the resource request process.
[0112] Step S402: when the current request period has not expired, generating a cloud resource allocation strategy according to the allocated cloud centralized decision variables.
[0113] It is understandable that the time detection can be performed on the current request cycle to determine whether the current request cycle has expired. If it has not expired, a specific cloud resource allocation strategy can be obtained according to the allocation cloud centralized decision variables.
[0114] In the specific implementation, When making decisions, it is possible to allocate initialization without receiving any demand. The purpose is to predict and pre-allocate resources in advance before the specific demand of the application arrives, and to prepare for the upcoming resource requests, thereby reducing the resource contention of the response time. At this time, it is possible to define an empty unique topological sorting algorithm and an adjacency list data structure and run a timer, whose time is provided as a parameter to the algorithm, and define the software service used by the application for the user. Therefore, when buffering the arriving application, the application's requests are modeled as vertices connected by acyclic directed edges, thus forming a directed acyclic graph task scheduling system.
[0115] In a feasible embodiment, after the step of judging the current request time and determining the current request cycle when the buffer reaches the application, the step further includes:
[0116] When the current request cycle has expired, detecting the remaining energy value of the virtual node to determine the virtual node corresponding to the preset energy value;
[0117] Allocating each current resource request to a virtual node corresponding to the preset energy value;
[0118] or,
[0119] Determine a candidate queue for each resource request, and respectively determine a preset queue for each resource request, and respectively determine a virtual node according to the preset queue;
[0120] The cloud layer centralized decision variables are updated according to the virtual nodes, and a cloud layer resource allocation strategy is generated according to the updated cloud layer centralized decision variables.
[0121] In the specific implementation, the application entry point visits all applications that arrive at the beginning of the current cycle. The application entry first checks whether its timer has expired. If the timer has expired, it starts to make relevant variables. The decision variable There are two ways to allocate the virtual node with the highest remaining energy value to each request, namely the energy balance rule and the queue time reduction rule. The energy balance rule allocates the virtual node with the highest remaining energy value to each request. The queue time reduction rule allocates the virtual node with the shortest queue to each request.
[0122] This embodiment adopts a hybrid approach of edge computing and cloud computing, so that the hybrid distributed architecture has better scalability in terms of processing virtual nodes and the number of applications supported. This is achieved through distributed computing at the edge layer, which allows data to be processed close to where the data is generated, reducing data transmission time and improving the response speed and processing power of the system. The decision node does not need to have information about the entire scene, but can use locally available information to make fast localized decisions. This method is achieved by implementing resource allocation and data processing at the edge layer, reducing dependence on centralized information and enhancing the flexibility and robustness of the system.
[0123] Based on the above embodiments of the present application, the contents in the third embodiment of the present application that are the same or similar to those in the above embodiment 1 can refer to the above introduction and will not be described in detail later. Figure 4 , step S40 also includes steps S403 to S406:
[0124] Step S403: storing the resource requests of the virtual nodes in a first-in-first-out queue, and determining the resource requests to be processed according to the time of joining the queue.
[0125] It should be understood that resource requests can be stored in a first-in-first-out queue in chronological order, and when processing resource requests, they can be processed sequentially according to the order in which the resource requests are arranged in the first-in-first-out queue.
[0126] Step S404: when the pending resource request is being processed and the queue is blocked, determining the data update time according to the edge layer distributed decision variables and the virtual node data update time.
[0127] It should be understood that when a pending resource request makes a resource request, the queue status in the queue can be detected to determine whether the queue is blocked. When the queue is blocked, the time it takes to update the data can be determined based on the edge layer distributed decision variables and the virtual node data update time.
[0128] Step S405: Determine the processing capacity of the virtual node, and obtain the virtual node processing time according to the processing load of the virtual node and the processing capacity of the virtual node.
[0129] It should be understood that each virtual node has a different degree of processing capability, which is directly related to the resource requests that the current virtual node can process. Therefore, the virtual node processing time can be obtained based on the virtual node processing load and the virtual node processing capability.
[0130] Step S406: determining an edge layer resource allocation strategy based on the data update time, the edge layer distributed decision variables and the virtual node processing time.
[0131] It should be understood that when determining the edge layer allocation strategy, the edge layer resource allocation strategy can be determined based on the data, edge layer distributed decision variables, and virtual node resources.
[0132] In the specific implementation, it is possible to and Make decisions. At this stage, the DAG can change dynamically. The virtual node i and cycle p can be based on real-time data. This distributed computing can prioritize and schedule tasks to ensure that critical tasks are executed first and improve the efficiency of industrial production. It can also reduce the need to transmit data to the cloud and reduce latency. Therefore, it is possible to obtain a reference to the data service provided by the virtual node and start the data service. This service provides data for one request at a time. A first-in, first-out queue of infinite size is formed, and the virtual node iterates for each independent request from different application entrances. When deleting an independent request from the queue, the virtual node considers the priority restrictions between independent requests to avoid the next request to be removed from the queue from being unable to execute due to queue blocking. Decision and The rules include avoiding negative utility rule and maximum utility rule. The avoiding negative utility rule stipulates that the data will be updated whenever the current data freshness provided by the virtual node is greater than the data freshness threshold of the independent demand; the maximum utility rule stipulates that data update is always performed.
[0133] In a feasible embodiment, the step of determining the edge layer resource allocation strategy based on the data update time, the edge layer distributed decision variables and the virtual node processing time includes:
[0134] Determine a target transmission virtual node determined by the virtual node according to the allocation request, and determine a bandwidth rate between the virtual nodes;
[0135] Obtaining an end time of a single cycle according to the target transmission virtual node, the bandwidth rate, the virtual node processing time, the data update time and the edge layer distributed decision variable;
[0136] Obtain the last data update time in the single cycle according to the data update time, the edge layer distributed decision variables and the data update time in the previous decision window;
[0137] The edge layer resource allocation strategy is determined according to the end time of the single cycle and the last data update time.
[0138] In the specific implementation, it can be Defined as auxiliary expressions for each equation, the objective function is defined as follows:
[0139]
[0140] It must be greater than or equal to 0. Once a virtual network is allocated for a request, it cannot be revoked or reallocated during the remainder of the decision window. In addition, since our objective function has a recursive term, it is necessary to consider period 0 as a virtual period. Period 0 does not allow virtual networks to be allocated and data updated. In addition, the start time of period 0 is set to the start time of the current decision window, so it is a relative time of 0.
[0141] Then the time it takes to update the data is UDT i p , as shown below:
[0142]
[0143] UDT i Indicates the data update time at virtual node i.
[0144] Then the processing capacity of virtual node i is PC i , as shown below:
[0145]
[0146] PC h Indicates the host processing capacity of the cloud node or edge node. When the period is zero, no processing is done.
[0147] Then the time required for virtual node i to execute the internal program to satisfy request j is the processing time As shown below:
[0148]
[0149] Among them, PL i The processing load generated by virtual node i each time a task is assigned to a request.
[0150] Then the transmission time is TMT i p , as shown below:
[0151]
[0152] Where i belongs to VNS, j belongs to RL, and p belongs to SPC. Virtual node c is the transmission destination after virtual node i is assigned request a. The time required for each transmission of output data is equal to the transmission load TL of virtual node i. i and the bandwidth BW between virtual nodes i and c ic The rate between.
[0153] Then the end time of each period p of the virtual node is As shown below:
[0154]
[0155] So is the last data update time of virtual node i in a given period p, as shown below:
[0156]
[0157] This is the highest time value of data update of virtual node i in the current decision window period p and the previous periods. i Indicates the last data update time of virtual node i in the previous decision window.
[0158] In a feasible embodiment, the step of updating the directed acyclic graph topology relationship based on the cloud layer resource allocation strategy and the edge layer resource allocation strategy to obtain the target resource allocation strategy includes:
[0159] Determine the freshness of the data according to the time difference between the request service time of the virtual node in a single cycle and the last data update time in the single cycle;
[0160] When the freshness of the data is a preset freshness, determining the target resource allocation utility according to the utility amount obtained by the virtual node request;
[0161] The directed acyclic graph topology is updated based on the target resource allocation utility, the cloud layer centralized decision variables, and the edge layer decentralized decision variables to a target resource allocation strategy.
[0162] In the specific implementation, let the data freshness be DF i p , the data freshness of virtual node i during period p is the time difference between two moments. The first moment is the moment when virtual node i will provide request service during the current period p, and the second moment is In the best case, virtual node i has just updated data i during the current period p, so the two moments are equal and the data freshness is zero. As shown below:
[0163]
[0164] So is the formal utility. When the data freshness DF of virtual node i in a given time period p i pWhen DF is zero, the utility of i is the maximum value 100%, that is, data update occurs during this period. We assume that DF i p The value is higher than the data freshness threshold DFT of request j j , then DF i p The value is useless, so in this case the utility is the minimum value of 0%. This is shown below:
[0165]
[0166] At this time, the objective function of maximizing the utility of resource allocation is The value of represents the utility obtained by allocating virtual node i to request j in period p. This scheme seeks to maximize the resource allocation utility as the final result, so as to and Make decisions and determine by Determine ATSS and update the task scheduling system of the directed acyclic graph.
[0167] This embodiment introduces the concept of data freshness and uses it as an important factor in resource allocation decisions. By maximizing data freshness and resource allocation utility, the proposal ensures the real-time and accuracy of data. This is achieved through the negative utility avoidance rules and maximum utility rules proposed in edge layer distributed computing, which ensure the timeliness of data updates and maximized utility, optimize processing based on lower computing power consumption, quickly search for the optimal solution, and reduce the latency of edge layer applications. This is achieved through a combination of cloud layer centralized computing and edge layer distributed computing, which work together to achieve fast response and efficient resource allocation, achieved through optimization algorithms and data structures, ensuring efficient operation even in resource-constrained environments.
[0168] It should be noted that the above examples are only used to understand the present application and do not constitute a limitation on the resource allocation method of the cloud-edge-terminal integrated architecture of the present application. More simple transformations based on this technical concept are all within the scope of protection of the present application.
[0169] This application also provides a resource allocation device for a cloud-edge-end integrated architecture, please refer to Figure 5 , the resource allocation device of the cloud-edge-end integrated architecture includes:
[0170] The node topology module 10 is used to generate a topological relationship of a directed acyclic graph according to the arrival time and time span in the cloud-edge-end integrated architecture;
[0171] A node mapping module 20 is used to map the sensor node set and the virtual host node set to the virtual node set to obtain a virtual node sensor node mapping matrix and a virtual node host mapping matrix;
[0172] A resource decision module 30, configured to determine cloud layer centralized decision variables and edge layer decentralized decision variables through the virtual node sensor node mapping matrix and the virtual node host mapping matrix;
[0173] A resource allocation module 40, configured to obtain a cloud layer resource allocation strategy based on the cloud layer centralized decision variables, and to obtain an edge layer resource allocation strategy based on the edge layer decentralized decision variables;
[0174] The resource allocation module 40 also updates the directed acyclic graph topology relationship based on the cloud layer resource allocation strategy and the edge layer resource allocation strategy to obtain a target resource allocation strategy, and performs resource allocation according to the target resource allocation strategy.
[0175] In one embodiment, the resource allocation module 40 is also used to record the current request time, and when the buffer reaches the application, the current request time is judged to determine the current request cycle; when the current request cycle has not expired, a cloud resource allocation strategy is generated according to the allocated cloud centralized decision variables.
[0176] In one embodiment, the resource allocation module 40 is also used to detect the remaining energy value of the virtual node when the current request cycle has expired, and determine the virtual node corresponding to the preset energy value; allocate each current resource request to the virtual node corresponding to the preset energy value; or determine the candidate queue of each resource request, and respectively determine the preset queue of each resource request, and determine the virtual node according to the preset queue; update the cloud layer centralized decision variable according to the virtual node, and generate a cloud layer resource allocation strategy according to the updated cloud layer centralized decision variable.
[0177] In one embodiment, the resource allocation module 40 is also used to store the resource requests of the virtual node in a first-in-first-out queue, and determine the pending resource requests based on the time of joining the queue; when the pending resource requests are processed and the queue is blocked, determine the data update time based on the edge layer distributed decision variables and the virtual node data update time; determine the processing capacity of the virtual node, and obtain the virtual node processing time based on the processing load of the virtual node and the processing capacity of the virtual node; determine the edge layer resource allocation strategy based on the data update time, the edge layer distributed decision variables and the virtual node processing time.
[0178] In one embodiment, the resource allocation module 40 is also used to determine the target transmission virtual node determined by the virtual node according to the allocation request, and determine the bandwidth rate between the virtual nodes; obtain the end time of a single cycle according to the target transmission virtual node, the bandwidth rate, the virtual node processing time, the data update time and the edge layer distributed decision variables; obtain the last data update time in the single cycle according to the data update time, the edge layer distributed decision variables and the data update time in the previous decision window; determine the edge layer resource allocation strategy according to the end time of the single cycle and the last data update time.
[0179] In one embodiment, the resource allocation module 40 is also used to determine the freshness of the data based on the time difference between the request service time of the virtual node in a single cycle and the last data update time in the single cycle; when the freshness of the data is a preset freshness, determine the target resource allocation utility according to the utility obtained by the virtual node request; based on the target resource allocation utility, the cloud layer centralized decision variables and the edge layer decentralized decision variables, update the directed acyclic graph topology relationship to the target resource allocation strategy.
[0180] The resource allocation device of the cloud-edge-end integrated architecture provided by the present application adopts the resource allocation method of the cloud-edge-end integrated architecture in the above-mentioned embodiment, which can solve the technical problem that the top-down resource allocation method may cause delays in data acquisition and affect the response speed of the entire system. Compared with the prior art, the beneficial effects of the resource allocation device of the cloud-edge-end integrated architecture provided by the present application are the same as the beneficial effects of the resource allocation method of the cloud-edge-end integrated architecture provided by the above-mentioned embodiment, and the other technical features in the resource allocation device of the cloud-edge-end integrated architecture are the same as the features disclosed in the above-mentioned embodiment method, which will not be repeated here.
[0181] The present application provides a resource allocation device for a cloud-edge-end integrated architecture, and the resource allocation device for the cloud-edge-end integrated architecture includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the resource allocation method for the cloud-edge-end integrated architecture in the above-mentioned embodiment one.
[0182] Reference below Figure 6, which shows a schematic diagram of the structure of a resource allocation device suitable for implementing a cloud-edge-end integrated architecture in an embodiment of the present application. The resource allocation device of the cloud-edge-end integrated architecture in the embodiment of the present application may include but is not limited to mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Descriptions), PMPs (Portable Media Players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Figure 6 The resource allocation device of the cloud-edge-end integrated architecture shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0183] like Figure 6 As shown, the resource allocation device of the cloud-edge-end integrated architecture may include a processing device 1001 (e.g., a central processing unit, a graphics processor, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM: Read Only Memory) 1002 or a program loaded from a storage device 1003 to a random access memory (RAM: Random Access Memory) 1004. In RAM1004, various programs and data required for the operation of the resource allocation device of the cloud-edge-end integrated architecture are also stored. The processing device 1001, ROM1002, and RAM1004 are connected to each other via a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to the I / O interface 1006: input devices 1007 including, for example, a touch screen, a touchpad, a keyboard, a mouse, an image sensor, a microphone, an accelerometer, a gyroscope, etc.; output devices 1008 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; storage devices 1003 including, for example, a magnetic tape, a hard disk, etc.; and communication devices 1009. The communication device 1009 can allow the resource allocation device of the cloud-edge-end integrated architecture to communicate wirelessly or wired with other devices to exchange data. Although the figure shows a resource allocation device of a cloud-edge-end integrated architecture with various systems, it should be understood that it is not required to implement or have all the systems shown. More or fewer systems may be implemented or provided alternatively.
[0184] In particular, according to the embodiments disclosed in the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present application include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device, or installed from a storage device 1003, or installed from a ROM 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiment disclosed in the present application are executed.
[0185] The resource allocation device of the cloud-edge-end integrated architecture provided by the present application adopts the resource allocation method of the cloud-edge-end integrated architecture in the above-mentioned embodiment, which can solve the technical problem that the top-down resource allocation method may cause delays in data acquisition and affect the response speed of the entire system. Compared with the prior art, the beneficial effects of the resource allocation device of the cloud-edge-end integrated architecture provided by the present application are the same as the beneficial effects of the resource allocation method of the cloud-edge-end integrated architecture provided by the above-mentioned embodiment, and the other technical features in the resource allocation device of the cloud-edge-end integrated architecture are the same as the features disclosed in the method of the previous embodiment, which will not be repeated here.
[0186] It should be understood that the various parts disclosed in this application can be implemented by hardware, software, firmware or a combination thereof. In the description of the above embodiments, specific features, structures, materials or characteristics can be combined in any one or more embodiments or examples in a suitable manner.
[0187] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
[0188] The present application provides a computer-readable storage medium having computer-readable program instructions (i.e., computer programs) stored thereon, and the computer-readable program instructions are used to execute the resource allocation method of the cloud-edge-terminal integrated architecture in the above-mentioned embodiment.
[0189] The computer-readable storage medium provided in the present application may be, for example, a USB flash drive, but is not limited to electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, systems or devices, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, system or device. The program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination of the above.
[0190] The above-mentioned computer-readable storage medium may be included in the resource allocation device of the cloud-edge-end integrated architecture; or it may exist independently without being assembled into the resource allocation device of the cloud-edge-end integrated architecture.
[0191] The computer-readable storage medium carries one or more programs. When the one or more programs are executed by the resource allocation device of the cloud-edge-end integrated architecture, the resource allocation device of the cloud-edge-end integrated architecture:
[0192] Generate the topological relationship of a directed acyclic graph based on the arrival time and time span in the cloud-edge-end integration architecture;
[0193] Map the sensor node set and the virtual host node set to the virtual node set to obtain a virtual node sensor node mapping matrix and a virtual node host mapping matrix;
[0194] Determining cloud layer centralized decision variables and edge layer decentralized decision variables through the virtual node sensor node mapping matrix and the virtual node host mapping matrix;
[0195] Obtaining a cloud layer resource allocation strategy based on the cloud layer centralized decision variables, and obtaining an edge layer resource allocation strategy based on the edge layer decentralized decision variables;
[0196] The directed acyclic graph topological relationship is updated based on the cloud layer resource allocation strategy and the edge layer resource allocation strategy to obtain a target resource allocation strategy, and resource allocation is performed according to the target resource allocation strategy.
[0197] Computer program code for performing the operations of the present application may be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0198] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present application. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0199] The modules involved in the embodiments described in this application may be implemented by software or hardware, wherein the name of the module does not constitute a limitation on the unit itself in some cases.
[0200] The readable storage medium provided by the present application is a computer-readable storage medium, which stores computer-readable program instructions (i.e., computer programs) for executing the resource allocation method of the above-mentioned cloud-edge-end integrated architecture, and can solve the technical problem that the top-down resource allocation method may cause delays in data acquisition and affect the response speed of the entire system. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided by the present application are the same as the beneficial effects of the resource allocation method of the cloud-edge-end integrated architecture provided by the above-mentioned embodiment, which will not be repeated here.
[0201] The present application also provides a computer program product, including a computer program, which, when executed by a processor, implements the steps of the resource allocation method for the cloud-edge-end integrated architecture as described above.
[0202] The computer program product provided by this application can solve the technical problem that the top-down resource allocation method may cause delays in data acquisition and affect the response speed of the entire system. Compared with the prior art, the beneficial effects of the computer program product provided by this application are the same as the beneficial effects of the resource allocation method of the cloud-edge-end integrated architecture provided in the above embodiment, which will not be repeated here.
[0203] The above descriptions are only some embodiments of the present application, and are not intended to limit the patent scope of the present application. All equivalent structural changes made using the contents of the present application specification and drawings under the technical concept of the present application, or direct / indirect applications in other related technical fields are included in the patent protection scope of the present application.
Claims
1. A resource allocation method for a cloud-edge-end integrated architecture, characterized in that: The resource allocation method of the cloud-edge-end integrated architecture includes: Generate the topological relationship of a directed acyclic graph based on the arrival time and time span in the cloud-edge-end integration architecture; Map the sensor node set and the virtual host node set to the virtual node set to obtain a virtual node sensor node mapping matrix and a virtual node host mapping matrix; Determining cloud layer centralized decision variables and edge layer decentralized decision variables through the virtual node sensor node mapping matrix and the virtual node host mapping matrix; Obtaining a cloud layer resource allocation strategy based on the cloud layer centralized decision variables, and obtaining an edge layer resource allocation strategy based on the edge layer decentralized decision variables; The directed acyclic graph topological relationship is updated based on the cloud layer resource allocation strategy and the edge layer resource allocation strategy to obtain a target resource allocation strategy, and resource allocation is performed according to the target resource allocation strategy.
2. The method according to claim 1, characterized in that The step of obtaining a cloud resource allocation strategy based on the cloud centralized decision variable comprises: Record the current request time, and when the buffer reaches the application, judge the current request time to determine the current request cycle; When the current request period has not expired, a cloud layer resource allocation strategy is generated according to the allocated cloud layer centralized decision variables.
3. The method according to claim 2, characterized in that After the step of judging the current request time and determining the current request cycle when the buffer reaches the application, the method further includes: When the current request cycle has expired, detecting the remaining energy value of the virtual node to determine the virtual node corresponding to the preset energy value; Allocating each current resource request to a virtual node corresponding to the preset energy value; or, Determine a candidate queue for each resource request, and respectively determine a preset queue for each resource request, and respectively determine a virtual node according to the preset queue; The cloud layer centralized decision variables are updated according to the virtual nodes, and a cloud layer resource allocation strategy is generated according to the updated cloud layer centralized decision variables.
4. The method according to claim 1, characterized in that The step of obtaining the edge layer resource allocation strategy based on the edge layer decentralized decision variables comprises: Storing resource requests of virtual nodes in a first-in-first-out queue, and determining pending resource requests according to the time of joining the queue; When the pending resource request is being processed and the queue is blocked, determining the data update time according to the edge layer distributed decision variables and the virtual node data update time; Determine the processing capacity of the virtual node, and obtain the virtual node processing time according to the processing load of the virtual node and the processing capacity of the virtual node; An edge layer resource allocation strategy is determined based on the data update time, the edge layer decentralized decision variables, and the virtual node processing time.
5. The method according to claim 4, characterized in that The step of determining the edge layer resource allocation strategy based on the data update time, the edge layer distributed decision variables and the virtual node processing time comprises: Determine a target transmission virtual node determined by the virtual node according to the allocation request, and determine a bandwidth rate between the virtual nodes; Obtaining an end time of a single cycle according to the target transmission virtual node, the bandwidth rate, the virtual node processing time, the data update time and the edge layer distributed decision variable; Obtain the last data update time in the single cycle according to the data update time, the edge layer distributed decision variables and the data update time in the previous decision window; The edge layer resource allocation strategy is determined according to the end time of the single cycle and the last data update time.
6. The method according to claim 1, characterized in that The step of updating the directed acyclic graph topology relationship based on the cloud layer resource allocation strategy and the edge layer resource allocation strategy to obtain the target resource allocation strategy includes: Determine the freshness of the data according to the time difference between the request service time of the virtual node in a single cycle and the last data update time in the single cycle; When the freshness of the data is a preset freshness, determining the target resource allocation utility according to the utility amount obtained by the virtual node request; The directed acyclic graph topology is updated based on the target resource allocation utility, the cloud layer centralized decision variables, and the edge layer decentralized decision variables to a target resource allocation strategy.
7. A resource allocation device for a cloud-edge-device integrated architecture, characterized in that: The device comprises: The node topology module is used to generate the topological relationship of the directed acyclic graph based on the arrival time and time span in the cloud-edge-end integration architecture; A node mapping module is used to map the sensor node set and the virtual host node set to the virtual node set to obtain a virtual node sensor node mapping matrix and a virtual node host mapping matrix; A resource decision module, used to determine cloud layer centralized decision variables and edge layer decentralized decision variables through the virtual node sensor node mapping matrix and the virtual node host mapping matrix; A resource allocation module, configured to obtain a cloud layer resource allocation strategy based on the cloud layer centralized decision variables, and to obtain an edge layer resource allocation strategy based on the edge layer decentralized decision variables; The resource allocation module also updates the directed acyclic graph topology based on the cloud layer resource allocation strategy and the edge layer resource allocation strategy to obtain a target resource allocation strategy, and performs resource allocation according to the target resource allocation strategy.
8. A resource allocation device for a cloud-edge-end integrated architecture, characterized in that: The device includes: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program is configured to implement the steps of a resource allocation method for a cloud-edge-end integrated architecture as described in any one of claims 1 to 6.
9. A storage medium, characterized in that: The storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, the steps of the resource allocation method of the cloud-edge-end integrated architecture as described in any one of claims 1 to 6 are implemented.
10. A computer program product, characterized in that The computer program product includes a computer program, which, when executed by a processor, implements the steps of the resource allocation method for the cloud-edge-end integrated architecture as described in any one of claims 1 to 6.