Dynamic computing unloading and caching method and device for mobile edge cloud

By constructing the objective function in mobile edge computing and combining water injection allocation and channel inversion allocation algorithms, a joint strategy for computing offloading and cache is formulated, which solves the problem of lack of joint considerations for computing offloading and cache strategies in the existing technology, and improves the decision performance and total utility under heterogeneity of service preferences.

CN120256069AActive Publication Date: 2025-07-04XIONGAN GUOCHUANG CENT TECH CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202510740974.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-05
Publication Date
2025-07-04
Estimated Expiration
2045-06-05

AI Technical Summary

Technical Problem

The lack of joint consideration of computing offloading and service caching strategies in mobile edge computing in the prior art leads to poor computing performance, especially in the case of heterogeneous service preferences, which cannot meet the needs of computing-intensive tasks.

Method used

By building a mobile edge system, a computational offload model and a service cache model, establishing an objective function, combining the water injection allocation algorithm and a channel inversion allocation algorithm, formulating a joint strategy for computational offload and service cache, and optimizing the computational offload and cache strategies to meet the needs of isomorphic or heterogeneous service preferences.

Benefits of technology

It achieves the improvement of decision-making performance in the case of heterogeneous service preferences, improves the maximization of total utility, adapts to the limitations of limited storage resources of edge devices, and ensures the fairness and efficiency of computing offloading and caching strategies.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120256069A_ABST
    Figure CN120256069A_ABST
Patent Text Reader

Abstract

The invention provides a dynamic computing unloading and caching method and device for mobile edge clouds, and relates to the field of edge computing, and the method comprises the steps: building a target function of computing unloading and service caching according to a mobile edge system, a computing unloading model and a service caching model which are built in advance; and based on the service preference types of the plurality of mobile devices, determining a target time slice of each target task corresponding to the maximum value of the target function, and determining the target time slice of each target task corresponding to the maximum value of the target function as an optimal strategy for calculating unloading and service caching combination. According to the invention, the decision-making performance of service preference heterogeneous is improved, and the maximization of the total utility is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of edge computing. Specifically, it relates to a dynamic computing offloading and caching method and device for mobile edge cloud. Background Art

[0002] With the development of Internet technology and the popularization of mobile devices, mobile devices such as smartphones have become an indispensable and important tool in daily life. Although there are still certain limitations in its hardware capabilities, mobile devices are developing towards a more intelligent direction to provide efficient communication services and convenient computing services.

[0003] However, the limitations of mobile device hardware capabilities lead to the inability to meet the computing requirements of some computationally intensive tasks. The emerging mobile edge computing (MEC) technology has become the key technology to solve this bottleneck problem. By offloading tasks with higher computing requirements to the edge server rather than the mobile device for processing, and using the powerful computing capabilities of the edge server to speed up the computing speed, the task response latency can be reduced.

[0004] Compared with traditional communication-oriented networks, edge computing networks are built based on computing-driven communication. Existing computing offloading and service caching decision methods integrate wireless communication technology and computer technology to adapt to the complex environment and changing services in the edge scenario, but there are still the following disadvantages: 1. The research perspective is relatively single, only limited to the computing offloading strategy or service caching strategy, ignoring the mutual influence between the two, and unable to formulate a joint strategy.

[0005] 2. The formulation of the computing offloading strategy lacks practical significance. Current methods are all based on the assumption that specific data such as data and models related to processing tasks have been pre-deployed in the edge device. However, the resources of the edge device are limited, and users will generate heavy tasks in addition to light tasks. Therefore, it is obviously unrealistic to pre-deploy all possible task-specific data.

[0006] 3. The formulation of the service caching strategy lacks consideration of strategy fairness. In the case of heterogeneous service preferences, the request ratio of computing tasks, that is, the service popularity is not fixed and is affected by the computing offloading decision. The traditional channel-aware strategy makes the edge device tend to cache service data with good channel conditions, which will lead to unfairness of the caching strategy and thus reduce the overall computing performance. Summary of the Invention

[0007] The purpose of the embodiments of this application is to provide a dynamic computing offloading and caching method and device for mobile edge cloud, which solves the above problems existing in the prior art, improves the decision-making performance of heterogeneous service preferences, and realizes the maximization of the total utility.

[0008] In a first aspect, a dynamic computing offloading and caching method for a mobile edge cloud is provided, and the method may include: According to a pre-constructed mobile edge system, a computing offloading model, and a service caching model, an objective function for computing offloading and service caching is established; the mobile edge system includes a plurality of mobile devices and a plurality of edge servers; the objective function is defined for the processing time slice and data transmission speed of each task, and each task is a task offloaded by each mobile device; If multiple mobile devices have homogeneous service preferences, based on the water-filling allocation algorithm and the channel inversion allocation algorithm, determine the target time slice of each target task corresponding to the maximum value of the objective function; If multiple mobile devices have heterogeneous service preferences, decompose the optimization problem corresponding to the objective function to obtain a computing offloading strategy and a service caching strategy; based on the computing offloading strategy and the service caching strategy of each target task, determine a target cache set and a target task hit probability; based on the target cache set and the target task hit probability, determine the target time slice of each target task corresponding to the maximum value of the objective function; Determine the target time slice of each target task corresponding to the maximum value of the objective function as the optimal strategy for the combination of computing offloading and service caching.

[0009] In a possible implementation, the objective function is:

[0010]

[0011] Wherein, is the target time slice corresponding to mobile device n, is the data transmission speed of mobile device n, is the expected response delay, is the response delay threshold, is mobile device 's task offloading rate, is the size of the task.

[0012] In a possible implementation, when multiple mobile devices have homogeneous service preferences, the target time slice is expressed as:

[0013] Wherein, and respectively represent the optimal Lagrange multipliers related to the time-sharing constraint and the response delay constraint, and and is the data transmission speed of mobile device n, is the size of the task, is the task hit probability.

[0014] In a possible implementation, if multiple mobile devices are homogeneous in service preference, based on the water-filling allocation algorithm and the channel inversion allocation algorithm, determine the target time slots for each target task, including: Determine a first threshold according to the water-filling allocation algorithm, and determine a second threshold according to the channel inversion allocation algorithm; Based on the first threshold and the second threshold, determine the target time slots; When the target parameter is not less than the first threshold, determine the target time slot as: ; the target parameter is determined according to the Lagrange multiplier of the response delay constraint; When the target parameter is not greater than the second threshold, determine the target time slot as: ; where, is the Lagrange multiplier that satisfies the response delay constraint.

[0015] In a possible implementation, the Lagrange multiplier that satisfies the response delay constraint is expressed as:

[0016] where the target parameter .

[0017] In a possible implementation, the first threshold is expressed as: ; the second threshold is expressed as: .

[0018] In a possible implementation, based on the computation offloading strategy and service caching strategy of each target task, determine the target cache set and the target task hit probability, including: Based on the configured cache set and task hit probability, determine the target offloading vector and the target task hit probability; Based on the target task hit probability and the target offloading vector, update the cache set to obtain the target cache set.

[0019] In a possible implementation, based on the target task hit probability and the target offloading vector, update the cache set to obtain the target cache set, including: Adopt the cache set replacement strategy and the greedy service addition strategy to process the target task hit probability and the target offloading vector to obtain the target cache set.

[0020] Second aspect, a dynamic computing offloading and caching device for mobile edge cloud is provided, and the device may include: A construction unit, configured to establish an objective function of computing offloading and service caching according to a pre-constructed mobile edge system, a computing offloading model, and a service caching model; the mobile edge system includes a plurality of mobile devices and a plurality of edge servers; the objective function is defined for the processing time slice and data transmission speed of each task, and each task is a task offloaded by each mobile device; A determination unit, configured to, if multiple mobile devices have homogeneous service preferences, determine the target time slice of each target task corresponding to the maximum value of the objective function based on the water filling allocation algorithm and the channel inversion allocation algorithm; And, if multiple mobile devices have heterogeneous service preferences, decompose the optimization problem corresponding to the objective function to obtain a computing offloading strategy and a service caching strategy; determine a target cache set and a target task hit probability based on the computing offloading strategy and the service caching strategy of each target task; determine the target time slice of each target task corresponding to the maximum value of the objective function based on the target cache set and the target task hit probability; And determine the target time slice of each target task corresponding to the maximum value of the objective function as the optimal strategy for the combination of computing offloading and service caching.

[0021] This application can build a system based on the edge network in a real scenario, consider the interaction between the computing offloading strategy and the service caching strategy, formulate a joint strategy, and improve the total utility of the system. Realize dynamic data caching. After the user task data is offloaded, a certain amount of service-specific data is immediately cached to improve the subsequent service processing speed and adapt to the limitation of the limited storage resources of edge devices. The computing offloading strategy and the service caching strategy are alternately optimized. In the case of homogeneous service preferences, the two strategies are automatically decoupled, and the optimal strategy is selected according to the performance optimization formula; in the case of heterogeneous service preferences, on the premise of meeting the cache balance condition, alternately fix the computing offloading or service caching, and iteratively obtain the optimal joint decision by expanding the maximum offloading rate or replacing the cache service list to maintain the fairness of service processing. Description of the Drawings

[0022] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required to be used in the embodiments of the present application will be briefly introduced below. It should be understood that the following drawings only show some embodiments of the present application, and therefore should not be regarded as limiting the scope. For those of ordinary skill in the art, other related drawings can be obtained based on these drawings without creative efforts.

[0023] Figure 1 It is a schematic diagram of a dynamic computing offloading and caching method for mobile edge cloud provided by an embodiment of the present application; Figure 2 This is a flowchart of a dynamic computing offloading and caching method for mobile edge clouds provided by an embodiment of the present application; Figure 3 This is a schematic structural diagram of a dynamic computing offloading and caching device for mobile edge clouds provided by an embodiment of the present application. Detailed implementation manners

[0024] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments of the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.

[0025] For the convenience of understanding, the following terms involved in the embodiments of the present application are explained: A. Service preference isomorphism: It refers to the tendency to use the same or similar technical architectures, platforms, programming languages, etc. when designing, deploying, or selecting services.

[0026] B. Service preference heterogeneity: It refers to actively using different technologies, platforms, and methods in the system to provide diversified services.

[0027] C. Computing offloading is a technology that transfers some or all of the computing tasks on a mobile device to a cloud computing environment (especially edge devices close to users) for processing. It aims to solve the deficiencies of mobile devices in terms of resource storage, computing performance, and energy efficiency. By offloading tasks with high latency requirements and high computational intensity to edge servers, it can reduce power consumption, reduce latency, and enhance the user experience. Computing offloading involves multiple aspects such as offloading decision-making, resource allocation, and offloading system implementation, and is one of the key technologies in edge computing.

[0028] D. Service caching is a technology that temporarily stores data on the server side. By storing frequently requested data or web pages in the server's memory or hard disk, it can quickly respond to subsequent requests. It can reduce the server load, improve the user access speed, and avoid repeated computing or database access operations. Service caching includes various forms such as page caching, data caching, and object caching, and different caching strategies can be selected for implementation according to the application type and requirements.

[0029] E. Time Division Multiple Access (TDMA) is a multiple access technology in wireless communication. It divides time into non-overlapping time frames, and each time frame is further divided into multiple time slots. Each time slot is allocated to different users for data transmission or voice calls, thus enabling multiple users to share the same frequency resource.

[0030] F. The Water-Filling (WF) algorithm is a power allocation algorithm. Its core idea is to allocate available resources (such as power) according to the channel quality. The better the channel condition of a user or subcarrier, the more resources are allocated to it.

[0031] G. The Channel Inversion (CI) allocation algorithm is an adaptive power allocation method. Its core lies in the transmitter dynamically adjusting the transmission power according to the known Channel State Information (CSI) to ensure that the signal power received at the receiver remains constant.

[0032] Therefore, this application provides a dynamic computing offloading and caching method and device for mobile edge clouds, which solves the above problems existing in the prior art, improves the decision-making performance for heterogeneous service preferences, and realizes the maximization of the total utility.

[0033] The following describes the preferred embodiments of this application in conjunction with the accompanying drawings of the specification. It should be understood that the preferred embodiments described here are only used to illustrate and explain this application, and are not used to limit this application. And without conflict, the embodiments in this application and the features in the embodiments can be combined with each other.

[0034] Figure 2 It is a schematic flowchart of a dynamic computing offloading and caching method for mobile edge clouds provided by an embodiment of this application. As Figure 2 shown, this method may include: Step S210: Construct a mobile edge system, a computing offloading model, a service caching model, and an objective function.

[0035] Specifically: As shown in Figure 1 A. Mobile edge system: It may include N mobile devices, represented by the set N = {1,..., N}, a central server, an edge network access point (AP) connected to the edge server, and multiple edge servers; each mobile device can run various tasks in a mobile environment, and the task set is represented by S = {1,..., S}, assuming that these tasks are all static tasks. The tasks in the set S are all computationally intensive tasks and cannot be processed on local mobiles with limited computing and storage resources, and need to be offloaded to the edge server for processing.

[0036] There are two types of data involved in the mobile edge system: USD: Input data generated by mobile users, reflecting user characteristics (such as images, audio, sensor values, etc.).

[0037] SSD: The software architecture of the service, providing essential functions, interfaces, background information, etc. required for task processing (such as program executable files and databases, etc.).

[0038] The edge server obtains USD and SSD through the processes of computing offloading and service caching respectively. After obtaining them, it can process related tasks.

[0039] B. Computing offloading model: Both the mobile device and the edge network access point (AP) are equipped with single antennas to offload tasks and obtain USD. Assume this is a slow fading channel, and within the time window considered for computing offloading, the channel gain remains fixed. According to Shannon's formula, the spectral efficiency of the mobile device (in bits per second per hertz) is:

[0040] where, represents the uplink channel gain from the mobile device to the edge network access point, represents the transmit power, represents the variance of complex Gaussian white noise.

[0041] When the given system bandwidth is B, the uplink data transmission rate (in bits per second) is:

[0042] Based on time division multiple access (TDMA) and the allocation of technical radio resources, time slots are allocated specifically to the mobile device , denoted by , satisfying , to process the corresponding tasks within this time slot, where the time slot can be understood as a time period or a time window; for simplicity, assume that the size of each USD is (in bits). Given and , the task offloading rate of the mobile device (in tasks per second) is:

[0043] Each mobile device has a service preference, denoted by the vector , , where, Denote the mobile device Unloading task probability, satisfying . Assume that the edge server has deployed a preference learning algorithm and knows the service preferences of each mobile device. The mobile device For task The unloading rate is . Therefore, the total unloading rate of a single task is:

[0044] As the number of tasks increases, the unloading processes of each task will become independent of each other. Therefore, given the total unloading rate , the total service arrivals at the edge network access point (AP) can be approximated as a Poisson process with arrival rate being:

[0045] C. Service caching model: Service caching means that the SSDs are stored in the edge server. Let be the cache set, be a subset of S; where, it contains the indices of the cached services.

[0046] It should be noted that the task set S contains task data and service data for processing tasks; this cache set can be understood as the service data for processing related tasks.

[0047] For simplicity, assume that each SSD has the same size and the maximum number of cached services is fixed at . For comprehensiveness, consider the case where is much smaller than the total number of tasks, i.e., , where denotes the cardinality of the set . Based on the least frequently used (LFU) policy, count and cache the most popular services, i.e., use to represent the popularity vector, where represents the probability that task is unloaded, and the calculation formula is:

[0048] Furthermore, when , the cache set satisfies the following conditions: (1) The services in the cache set are more likely to be requested, i.e., .

[0049] (2) The number of caching services is always , that is . When is a constant and the arrival of the current task is independent of past tasks, the LFU policy is the optimal policy.

[0050] (3) Given a vector of service preferences for each mobile device and the offloading rate of the task, the service popularity vector does not change due to service arrivals. Therefore, after optimizing the cache set ,

[0051] D. Construct the objective function: When a task with USD is offloaded to the edge server, the task will be moved to a task queue that follows the first-in, first-out (FIFO) principle. At the moment when task s is ready to be computed, the edge server first searches for the corresponding SSD in its storage and sets it to the highest priority. If the SSD has been cached, the edge server immediately calls it to the computing unit of the edge server to compute task s; otherwise, the edge server will download the required SSD from the central server during the computing process, and the downloaded part will be removed after use.

[0052] Specifically, D1. Response delay analysis: Since the propagation delay between the edge server and the central server cannot be ignored, and the first computing rate (in tasks per second) of the central server is much greater than the second computing rate of the edge server, that is . For ease of processing, assume that the computing durations of the central server and the edge server follow and probability distributions respectively. Since the data volume of the computing result can be ignored and the transmission power of the edge network access point (AP) is significantly higher than that of the mobile device, for simplicity, the transmission delay of the computing result is ignored. Therefore, the expected response delay is represented by , can be expressed as:

[0053] where W represents the expected queuing delay of any task in the task queue, and T represents the expected computing delay of any task.

[0054] After that, based on the randomly selected first computing rate and the second computing rate , their corresponding hit probabilities are and respectively, to determine the expected response delay ; where Characterize the possibility that the requested SSD is in the cache set C .

[0055]

[0056] According to the task arrival rate following the Poisson distribution and the above-mentioned hyperexponential service time (the service time conforms to the hyperexponential distribution, briefly referred to as hyperexponential service time), a queuing model can be obtained, and its utilization rate is expressed as . When , according to the Pollaczek-Khintchine formula, a closed form is obtained:

[0057] Therefore, the expected response delay can be converted to:

[0058] D2. Optimization problem formulation: Based on the time division multiple access (TDMA) technology, formulate the function of maximizing the total utility of this system. For mobile devices adopt the widely used logarithmic utility function to represent:

[0059] Furthermore, when , add 1 to ensure that the utility is 0. Optimize it into a time-sharing constraint, that is, the time-sharing constraint is When, the optimization function is to maximize the sum of the utilities of all mobile devices, that is .

[0060] Conversely, considering the response delay constraint to ensure the quality of service of edge computing, the expected response delay does not exceed the response delay threshold , that is . Under the time-sharing constraint and the response delay constraint, the objective function of maximizing the total utility can be expressed as:

[0061] Among them, .

[0062] Step S220. Determine the target time slice based on the service preference types of multiple mobile devices

[0063] Specifically, the service preference types include service preference isomorphism and service preference heterogeneity

[0064] A. When the service preference types of multiple mobile devices are service preference isomorphism: Service preference isomorphism means that the service preferences of each mobile device are the same, that is . Under the condition of service preference isomorphism, the popularity vector is constant and independent of , eliminating the recursive relationship between . Therefore, and the hit probability can be optimized in advance. Set and , so we can get:

[0065] When , we can get:

[0066] Since , the above formula is a linear constraint and is feasible when to make it hold when . Based on convex optimization theory, the following properties can be obtained: (1) At least one constraint satisfies the equality relationship between the time-sharing constraint and the response delay constraint.

[0067] (2) The target time slice assigned to the mobile device can be expressed as:

[0068] where and represent the optimal Lagrangian multipliers related to the time-sharing constraint and the response delay constraint respectively, and .

[0069] Furthermore, the target time slice is determined in two ways: a1. Based on the water-filling allocation algorithm (WF), determine the target time slice; When ignoring the response delay constraint, according to the water-filling allocation algorithm, the target time slice can be simplified as:

[0070] where is the Lagrangian multiplier that satisfies the time-sharing constraint, that is . According to the complementary slackness condition and properties, it can be determined that if the response delay condition is satisfied, then and , so this formula is the optimal solution.

[0071] a2. When the time-sharing constraint is ignored, according to the channel inversion allocation algorithm, the target time slice can be simplified as follows: ,

[0072] where is the Lagrange multiplier that satisfies the response delay, that is . If the time-sharing constraint is satisfied, then and . Since this equation is the optimal solution.

[0073] According to the above analysis, in the case of isomorphic service preferences and a given optimal task hit probability , the first threshold and the second threshold are defined as:

[0074] where . The equal sign holds when .

[0075] The above process can be understood as following the following cases: (1) When , the target time slice is .

[0076] (2) When , the target time slice is .

[0077] (3) In other cases, the expression of the target time slice is , where and are strictly positive and satisfy the time-sharing constraint and the response delay constraint.

[0078] The joint decision algorithm steps for computing offloading and service caching under isomorphic service preferences are as follows: 1: Compare and , . If the conditions in (1) or (2) are met, then the target time slice end is or , and the execution ends; otherwise, jump to 2.

[0079] 2: Define The upper and lower bounds of are initialized to ; Define The upper and lower bounds of are initialized to .

[0080] 3: Start iterative update and until convergence: 4: Calculate , ; 5: Calculate according to ; 6: If , then , otherwise ; 7: If , then , otherwise .

[0081] Since the known optimal Lagrange multipliers and are in the following intervals: ,

[0082] Therefore, the upper bound of the total utility can be derived, denoted by for the optimal total utility based on , and its upper bound is:

[0083] where the equality holds always when . This upper bound can be achieved when does not violate the response delay constraint.

[0084] It should be noted that the upper bound of the optimal total utility for heterogeneous service preferences also satisfies this relationship.

[0085] B. When the service preference types of multiple mobile devices are heterogeneous service preferences: Heterogeneous service preferences mean that the service preferences of each mobile device are different, i.e., , and . Different from the case of homogeneous service preferences, heterogeneous service preferences lead to the optimal cache set (target cache set) and the optimal task hit probability (target task hit probability) cannot be determined in advance, and there is a recursive relationship between them.

[0086] Therefore, the optimization problem corresponding to the objective function is decomposed into two sub - problems: the computing offloading strategy and the service caching strategy. By alternately fixing and to achieve the optimization of both, iterative optimization is carried out until the optimal strategy is obtained.

[0087] b1. Computing offloading strategy: Let represent the -th cache set. Given , the computing offloading strategy is optimized to maximize the total utility. The task hit probability is introduced. Based on and , the optimal offloading vector (target offloading vector) can be expressed by the formula:

[0088] where ; the time - sharing constraint, response delay constraint and task hit probability constraint in this part are the cache balance conditions; Introducing into the total utility gives , and thus the formula for the task hit probability is expressed as:

[0089] After that, and are iteratively optimized, which can specifically include: b1 - 1: Given the cache set with the service index omitted and the task hit probability , solve .

[0090] Specifically, is expressed using the cache set and the task hit probability as:

[0091] where is a constant. Therefore, the cache balance condition is linear, that is, the cache balance condition can be expressed as:

[0092] Based on the above derivation, becomes a convex optimization problem. Therefore, the target offloading vector can be obtained through the derivation of optimization theory. First, the feasible range of is derived. According to , The value is obviously less than , given the cache set , there exists a unique probability such that the corresponding target offloading vector is equivalent to the target offloading vector under the service preference isomorphism, and the cache balance condition in

[0093] satisfies the following equation when .

[0094] In summary, to determine and solve the target offloading vector , the steps of the algorithm are as follows: 1: Given the cache set , according to , deduce the coefficient .

[0095] 2: Initialize the range of to .

[0096] 3: Iteratively update until convergence: 4: ; 5: Calculate the offloading vector set based on the joint computing offloading and service caching strategy algorithm under the service preference isomorphism; 6: Substitute and to deduce the left - hand side of Equation ; 7: If the left - hand side of the equation is positive, then , otherwise, .

[0097] Given the cache set , the upper bound of is when the corresponding target offloading vector follows the WF allocation algorithm to achieve the upper bound, where the optimal solution of is the optimal solution obtained when all mobile devices are . Based on the above inference, the service preference heterogeneity ratio is more likely to achieve a higher hit rate, thus optimizing the total utility. Therefore, the value range of can be obtained:

[0098] It can be obtained that, given a cache set and the task hit probability , within the range of , the target offloading vector has the following properties: (1) The cache balance condition always holds.

[0099] (2) There is at least one constraint that satisfies the equality between the time-sharing constraint and the response delay constraint.

[0100] (3) The target time slice assigned to the mobile device is:

[0101] where , and are the optimal Lagrange multipliers related to the time-sharing constraint, the response delay constraint, and the cache balance condition, respectively.

[0102] Furthermore, derive : Given any Lagrange multiplier , define as:

[0103] where, follows the structure of , that is:

[0104] According to the balance of the cache balance condition, it is obtained that , if and are known, then can be derived. Similarly, is known, and can be derived.

[0105] Under service preference heterogeneity, it can also be divided into the following two cases: When the response delay constraint is ignored, according to the water-filling allocation algorithm, the target time slice can be simplified, specifically expressed as:

[0106] where, is the Lagrange multiplier that satisfies the time-sharing constraint, that is . If the response delay constraint is satisfied, then the solution of is the optimal solution. At this time and 。

[0107] When the time-sharing constraint is ignored, according to the channel inversion allocation algorithm, the target time slice can be simplified , specifically expressed as:

[0108] Among them, is the Lagrange multiplier that satisfies the response delay constraint, that is . If the time-sharing constraint is satisfied, then the solution of is the optimal solution. At this time and .

[0109] Configure the third threshold and the fourth threshold as:

[0110] (1) When , the target time slice is .

[0111] (2) When , the target time slice is .

[0112] (3) In other cases, the expression of the target time slice is , where and are strictly positive and meet the time-sharing and response delay requirements.

[0113] The above process of iteratively optimizing and is simply: 1: Given , if and meet , then is updated to ; if is met, then is updated to . Otherwise, jump to 2.

[0114] 2: Define the upper and lower bounds of as , initialized to ; define the upper and lower bounds of as , initialized to .

[0115] 3: Start iterative updating and until convergence.

[0116] 4: Calculate and ; 5: According to Equation calculate ; 6: If , then , otherwise, ; 7: If , then , otherwise .

[0117] Furthermore, update using Newton's formula, i.e.:

[0118] where the denominator is the partial derivative of the function with respect to , .

[0119] The above updates of and are as follows: 1: Initialize the Lagrange multiplier to 0.

[0120] 2: Start iterative update until convergence.

[0121] 3: Given , update based on the update algorithm; 4: Given , update based on .

[0122] 5: After convergence, set to , and derive based on .

[0123] b1-2: Maximize the total utility by optimizing the task hit probability .

[0124] Derived from the derivative properties of , is the weighted sum of the three partial derivatives , and . Therefore, the target task hit probability satisfies the following conditions:

[0125] Among them, 、 、 and represent the algebraic expressions obtained in the derivation of the derivative property. Update by the gradient ascent method, that is: .

[0126] Since is a fixed step size, when is small enough, it can converge to . Based on the cache balance condition, set the task hit probability to , that is, the target task hit probability .

[0127] b2: Service cache policy: Given the vector , if the service cache set can increase the total utility, then update the service cache set to and return the value calculation offloading policy, that is:

[0128] Optimize the service cache policy by updating the cache policy ( is the update round). Based on the target task hit probability represented by in the current step, and the target offloading vector , the formula for updating the popularity vector is:

[0129] After that, update the cache set more quickly in the following two ways to obtain the target cache set: (1) Cache set replacement policy (CSR): Given , without considering the previous cache set , replace the cache set by selecting the first more popular services, and represent it with the service cache set :

[0130] Among them, , and .

[0131] (2) Greedy Service Addition Strategy (GSA): On the basis of maintaining the previous cache set, add the most popular service in the uncached set, denoted by as:

[0132] Given the cache set and the target offloading vector , if is satisfied, the updated service cache set satisfies Equation ; if not, the update process stops, i.e., the target cache set is obtained.

[0133] Based on the above conditions, it is possible to judge whether the new cache set meets the conditions before updating the offloading vector and hit probability. The GAS strategy can continue until the cache set is full without triggering the stop condition, i.e., |C| = C. Through verification, the performance of the CSR strategy is better than that of the GAS strategy, especially when the network environment is relatively good, because the CSR strategy is based on the entire cache set for replacement and update, but the computational performance requirements for the edge network are higher than those of the GAS strategy. Therefore, it can be selected according to the current network environment.

[0134] After that, according to the target cache set and the target task hit probability, the target time slice is determined.

[0135] Step S230: Determine the target time slice corresponding to the maximum value of the objective function for each target task as the optimal strategy for the combination of computing offloading and service caching.

[0136] A dynamic computing offloading and caching method for mobile edge cloud provided by this application. The method includes: establishing an objective function for computing offloading and service caching according to a pre-constructed mobile edge system, a computing offloading model, and a service caching model; if multiple mobile devices have homogeneous service preferences, determining the target time slices of each target task corresponding to the maximum value of the objective function based on the water-filling allocation algorithm and the channel inversion allocation algorithm; if multiple mobile devices have heterogeneous service preferences, decomposing the optimization problem corresponding to the objective function to obtain a computing offloading strategy and a service caching strategy; determining a target cache set and a target task hit probability based on the computing offloading strategy and the service caching strategy of each target task; determining the target time slices of each target task corresponding to the maximum value of the objective function based on the target cache set and the target task hit probability; and determining the target time slices of each target task corresponding to the maximum value of the objective function as the optimal strategy for the combination of computing offloading and service caching. This application can build a system based on the edge network in a real scenario, consider the interaction between the computing offloading strategy and the service caching strategy, formulate a combined strategy, and improve the total utility of the system. It realizes dynamic data caching. After the user task data is offloaded, a certain amount of service-specific data is immediately cached to improve the subsequent service processing speed and adapt to the limitation of the limited storage resources of edge devices. The computing offloading strategy and the service caching strategy are alternately optimized. In the case of homogeneous service preferences, the two strategies are automatically decoupled, and the optimal one is selected according to the performance optimization formula; in the case of heterogeneous service preferences, on the premise of meeting the cache balance condition, the computing offloading or the service caching is alternately fixed, and the optimal joint decision is obtained by expanding the maximum offloading rate or replacing the cache service list iteratively to maintain the fairness of service processing.

[0137] Corresponding to the above method, an embodiment of this application also provides a dynamic computing offloading and caching device for mobile edge cloud, as Figure 3 shown. The device includes: A construction unit 310, configured to establish an objective function for computing offloading and service caching according to a pre-constructed mobile edge system, a computing offloading model, and a service caching model; the mobile edge system includes multiple mobile devices and multiple edge servers; the objective function is defined for the processing time slice and data transmission speed of each task, and each task is the task offloaded by each mobile device; A determination unit 320, configured to, if multiple mobile devices have homogeneous service preferences, determine the target time slices of each target task corresponding to the maximum value of the objective function based on the water-filling allocation algorithm and the channel inversion allocation algorithm; Moreover, if multiple mobile devices are heterogeneous in service preferences, the optimization problem corresponding to the objective function is decomposed to obtain a computing offloading strategy and a service caching strategy; based on the computing offloading strategy and the service caching strategy of each target task, a target cache set and a target task hit probability are determined; based on the target cache set and the target task hit probability, the target time slice corresponding to the maximum value of the objective function for each target task is determined. Moreover, the target time slice corresponding to the maximum value of the objective function for each target task is determined as the optimal strategy for the combination of computing offloading and service caching.

[0138] The functions of the functional units of a dynamic computing offloading and caching device for mobile edge cloud provided in the above embodiments of the present application can be implemented by the above method steps. Therefore, the specific working processes and beneficial effects of each unit in a dynamic computing offloading and caching device for mobile edge cloud provided in the embodiments of the present application will not be elaborated herein.

[0139] The communication bus mentioned above may be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. This communication bus can be divided into an address bus, a data bus, a control bus, etc. For the sake of simplicity, only a thick line is used to represent it in the figure, but it does not mean that there is only one bus or one type of bus.

[0140] The communication interface is used for communication between the above electronic device and other devices.

[0141] The memory may include a Random Access Memory (RAM), and may also include a Non-Volatile Memory (NVM), such as at least one disk memory. Optionally, the memory may also be at least one storage device located far from the aforementioned processor.

[0142] The above-mentioned processor may be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it may also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.

[0143] Since the implementation manners and beneficial effects of the devices of the electronic device in the above embodiments for solving problems can be seen from Figure 2 the steps in the embodiments shown, therefore, the specific working process and beneficial effects of the electronic device provided in the embodiments of the present application will not be elaborated herein.

[0144] In another embodiment provided by the present application, there is also provided a computer program product containing instructions, which when running on a computer, causes the computer to execute any one of the methods for dynamic computing offloading and caching for mobile edge cloud in the above embodiments.

[0145] Those skilled in the art should understand that the embodiments in the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the embodiments in the embodiments of the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the embodiments in the embodiments of the present application can adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memories, CD-ROMs, optical memories, etc.) containing computer-usable program codes.

[0146] The embodiments in the embodiments of the present application are described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products in the embodiments of the present application. It should be understood that each process and / or block in the flowchart and / or block diagram can be implemented by computer program instructions, and the combination of the processes and / or blocks in the flowchart and / or block diagram can also be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing devices generate a device for implementing the specified functions in Figure 1 one process or multiple processes and / or blocks Figure 1 one block or multiple blocks.

[0147] These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to operate in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including an instruction device that implements the functions specified in one or more of the processes and / or blocks Figure 1 one or more of the processes and / or blocks Figure 1 specified in one or more of the blocks or blocks.

[0148] These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus, such that a series of operational steps are performed on the computer or other programmable apparatus to produce a computer-implemented process, whereby the instructions executed on the computer or other programmable apparatus provide steps for implementing the functions specified in one or more of the processes and / or blocks Figure 1 one or more of the processes and / or blocks Figure 1 specified in one or more of the blocks or blocks.

[0149] Unless otherwise defined, technical terms or scientific terms used in this application shall have the ordinary meanings as understood by those of ordinary skill in the art to which this invention belongs. The terms "first", "second" and similar terms used in this application do not denote any order, quantity or importance, but are only used to distinguish different components. Words such as "including" or "comprising" mean that the elements or items appearing before the word cover the elements or items listed after the word and their equivalents, without excluding other elements or items. Words such as "connected", "coupled" or "linked" are not limited to physical or mechanical connections, but may include electrical connections, whether direct or indirect. "Up", "down", "left", "right", etc. are only used to indicate relative positional relationships, and when the absolute position of the object being described changes, the relative positional relationship may also change accordingly.

[0150] Although the preferred embodiments in the embodiments of this application have been described, those skilled in the art can make additional changes and modifications once they learn the basic creative concepts. Therefore, the embodiments of this application are intended to be interpreted as including the preferred embodiments and all changes and modifications falling within the scope of the embodiments of this application.

[0151] Obviously, those skilled in the art can make various changes and variations to the embodiments in the embodiments of this application without departing from the spirit and scope of the embodiments in the embodiments of this application. Thus, if these modifications and variations of the embodiments in the embodiments of this application fall within the scope of the embodiments of this application and their equivalent technologies, the embodiments of this application are also intended to include these changes and variations.

Claims

1. A dynamic computing offloading and caching method for mobile edge clouds, characterized in that The method includes: Based on a pre-constructed mobile edge system, a computing offloading model, and a service caching model, establish an objective function for computing offloading and service caching; the mobile edge system includes multiple mobile devices and multiple edge servers; the objective function is defined for the processing time slice and data transmission speed of each task, and each task is the task offloaded by each mobile device; If multiple mobile devices have homogeneous service preferences, based on the water-filling allocation algorithm and the channel inversion allocation algorithm, determine the target time slice of each target task corresponding to the maximum value of the objective function; If multiple mobile devices have heterogeneous service preferences, decompose the optimization problem corresponding to the objective function to obtain a computing offloading strategy and a service caching strategy; based on the computing offloading strategy and the service caching strategy of each target task, determine a target cache set and a target task hit probability; based on the target cache set and the target task hit probability, determine the target time slice of each target task corresponding to the maximum value of the objective function; Determine the target time slice of each target task corresponding to the maximum value of the objective function as the optimal strategy for the combination of computing offloading and service caching.

2. The method according to claim 1, characterized in that, The objective function is: Among them, is the target time slice corresponding to mobile device n, is the data transmission speed of mobile device n, is the expected response delay, is the response delay threshold, is the mobile device 's task offloading rate, is the size of the task.

3. The method according to claim 1, wherein Under the condition that multiple mobile devices have homogeneous service preferences, the target time slice is expressed as: Among them, and respectively represent the optimal Lagrange multipliers related to time-sharing constraints and response delay constraints, and , is the data transmission speed of mobile device n, is the size of the task, is the task hit probability.

4. The method according to claim 3, characterized in that, If multiple mobile devices have homogeneous service preferences, based on the water-filling allocation algorithm and the channel inversion allocation algorithm, determine the target time slice of each target task, including: Determine a first threshold according to the water-filling allocation algorithm, and determine a second threshold according to the channel inversion allocation algorithm; Based on the first threshold and the second threshold, determine the target time slice; When the target parameter is not less than the first threshold, the target time slice is determined as: ; the target parameter is determined according to the Lagrange multiplier of the response delay constraint; When the target parameter is not greater than the second threshold, determine the target time slice as: ; where is the Lagrange multiplier that satisfies the response delay constraint.

5. The method according to claim 4, characterized in that The Lagrange multiplier satisfying the response delay constraint is expressed as: Among them, the target parameter .

6. The method according to claim 4, wherein The first threshold is expressed as: ; The second threshold is expressed as: .

7. The method according to claim 1, wherein Based on the computing offloading strategy and the service caching strategy of each target task, determine a target cache set and a target task hit probability, including: Based on the configured cache set and task hit probability, determine a target offloading vector and a target task hit probability; Based on the target task hit probability and the target offloading vector, update the cache set to obtain the target cache set.

8. The method according to claim 7, wherein Based on the target task hit probability and the target offloading vector, update the cache set to obtain the target cache set, including: Adopt a cache set replacement strategy and a greedy service addition strategy to process the target task hit probability and the target offloading vector to obtain the target cache set.

9. A dynamic computing offloading and caching device for mobile edge cloud, characterized in that, The device includes: A construction unit for establishing an objective function for computing offloading and service caching based on a pre-constructed mobile edge system, a computing offloading model, and a service caching model; the mobile edge system includes multiple mobile devices and multiple edge servers; the objective function is defined for the processing time slice and data transmission speed of each task, and each task is the task offloaded by each mobile device; A determination unit for, if multiple mobile devices have homogeneous service preferences, determining the target time slice of each target task corresponding to the maximum value of the objective function based on the water-filling allocation algorithm and the channel inversion allocation algorithm; Moreover, if multiple mobile devices are heterogeneous in service preferences, the optimization problem corresponding to the objective function is decomposed to obtain a computing offloading policy and a service caching policy; based on the computing offloading policy and the service caching policy of each target task, a target cache set and a target task hit probability are determined; based on the target cache set and the target task hit probability, the target time slices corresponding to the maximum value of the objective function for each target task are determined. Moreover, the target time slices corresponding to the maximum value of the objective function for each target task are determined as the optimal policy for the combination of computing offloading and service caching.

Citation Information

Patent Citations

  • Attention mechanism reinforcement learning-based edge network device caching method

    CN113411826A

  • Heterogeneous Internet of Vehicles edge computing unloading scheduling method based on multi-objective optimization

    CN114863683A

  • Task unloading and service caching joint optimization method based on mobile edge computing

    CN116233926A

  • Railway edge computing service caching and task unloading method and system

    CN120018201A

  • Distributed task offloading and computing resources management method based on energy harvesting

    US11956307B1