A mobile edge computing offloading method in multi-user Internet of Things networks
By using the Nash equilibrium and Stackelberg equilibrium methods, the computational complexity and resource utilization problems of the task offloading strategy in multi-user IoT networks are solved, the utility maximization under wireless channel competition is achieved, the participation of idle users is encouraged, and the task offloading strategy is optimized.
Patent Information
- Application Number
- CN202211686256.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-26
- Publication Date
- 2025-09-23
- Estimated Expiration
- 2042-12-26
AI Technical Summary
In existing technologies for multi-user IoT networks, centralized algorithms have high computational complexity, fail to fully utilize edge node resources, fail to consider wireless channel competition and user needs, and lack an incentive mechanism, resulting in task offloading strategies that cannot simultaneously maximize the utility of all parties.
The task offloading strategy is constructed by adopting Nash equilibrium and Stackelberg equilibrium. The optimal strategy is determined through the coordination between mobile user terminals and edge nodes, and an incentive mechanism is introduced to encourage idle users to participate in the sharing of computing resources.
In the absence of prior information, the task offloading strategy is optimized, and cloud, edge nodes and idle user resources are fully utilized to ensure maximum utility for all parties.
Smart Images

Figure CN116017574B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of mobile edge computing technology, and in particular to a mobile edge computing offloading method in a multi-user Internet of Things network. Background Art
[0002] With the rapid development of artificial intelligence (AI) technology, applications such as various interactive games have been applied to mobile electronic devices. However, due to hardware constraints, the computing resources and energy of mobile devices are limited, making it difficult for applications to run effectively and promptly. Therefore, mobile edge computing is considered a promising solution to this problem. However, current research has the following limitations:
[0003] 1. Centralized algorithms need to collect information from all users and calculate and control the offloading strategy of global tasks, which makes the central node have huge computational complexity. From the user's perspective, users may find better ways to offload strategies. Centralized strategies cannot meet the needs of all users.
[0004] 2. In mobile edge computing, since edge nodes and the cloud share computing power and wireless channels, mobile users need to decide on strategies for offloading tasks. However, some studies only consider the impact of wireless channel contention and fail to consider offloading between edge nodes. Furthermore, many studies fail to fully utilize the potential computing resources of edge nodes, such as by offloading tasks to idle user mobile devices through D2D technologies.
[0005] 3. The implementation of D2D technology depends heavily on the willingness of idle users to participate in tasks. Since computing resources and user needs are unpredictable, it is necessary to introduce incentive mechanisms to encourage user participation in task offloading. However, in task offloading scenarios, when mobile users have multiple options for offloading tasks, current research has not yet achieved a method that simultaneously maximizes the utility of both parties when offloading tasks from mobile users to idle users without relying on prior information. Summary of the Invention
[0006] The purpose of the present invention is to provide a mobile edge computing offloading method in a multi-user Internet of Things network, so as to provide a task offloading method that meets the needs of different users, can make full use of the computing resources of the cloud, edge nodes and idle users, and maximize the utility of all parties.
[0007] To achieve the above object, the present invention provides the following solutions:
[0008] In a first aspect, the present invention provides a method for offloading mobile edge computing in a multi-user Internet of Things network, the method comprising the following steps:
[0009] The mobile user terminal determines whether there is an optimal strategy that is better than the current task offloading strategy, and when there is, sends a request to update to the optimal strategy to the home edge node of the mobile user terminal;
[0010] The home edge node constructs a user terminal set requesting to update the task offloading policy based on the requests for updating to the optimal policy sent by different mobile user terminals included in the home edge node, and determines whether the user terminal set requesting to update the task offloading policy is an empty set to obtain a first judgment result;
[0011] If the first judgment result indicates no, determining a set of user terminals that are allowed to update the task offloading policy by using a Nash equilibrium method, and sending a signal allowing the task offloading policy to be updated to the mobile user terminals in the set of user terminals that are allowed to update the task offloading policy;
[0012] The mobile user terminal that receives the signal allowing the task offloading strategy to be updated updates the current task offloading strategy to the optimal strategy;
[0013] Return to the step of "the mobile user terminal determines whether there is an optimal strategy that is better than the current task offloading strategy, and when there is, sends a request to the home edge node of the mobile user terminal to update to the optimal strategy";
[0014] If the first judgment result indicates yes, performing Stackelberg equilibrium on the current task offloading strategy of the mobile user terminal whose current task offloading strategy is calculated by the idle user terminal, determining the optimal strategy for the idle user terminal to provide computing power to the mobile user terminal and the optimal strategy for the mobile user terminal to purchase the computing power of the idle user terminal, and sending a termination signal to each of the mobile user terminals included in the home edge node;
[0015] The current task offloading strategy is that the mobile user terminal that calculates the idle user terminal performs task offloading based on the optimal strategy of the idle user terminal providing computing power to the mobile user terminal and the optimal strategy of the unit price of the mobile user terminal purchasing the computing power of the idle user terminal;
[0016] The mobile user terminal for which the current task offloading policy is not calculated for the idle user terminal performs task offloading based on the current task offloading policy.
[0017] Optionally, the mobile user terminal determines whether there is an optimal strategy that is better than the current task offloading strategy, specifically including:
[0018] Mobile user terminal i initializes the current task offloading strategy to local computing;
[0019] The current task offloading policy is sent to the home edge node h(i) of mobile user terminal i, and the number of tasks of each edge node, the number of tasks of the cloud, and the number of mobile users shared by each channel are obtained from the home edge node h(i); the home edge node of the mobile user terminal is the edge node to which the mobile user terminal belongs;
[0020] Mobile user i determines the executable task offloading strategies based on the number of tasks on each edge node, the number of tasks on the cloud, and the number of mobile users shared by each channel, and selects the optimal strategy based on the utility of each task offloading strategy;
[0021] Based on the utility of the current task offloading strategy of the mobile user terminal i and the utility of the optimal strategy, determining whether the optimal strategy is better than the current task offloading strategy of the mobile user terminal i, and obtaining a second determination result;
[0022] If the second judgment result indicates yes, then the mobile user terminal i has an optimal strategy that is better than the current task offloading strategy;
[0023] If the second judgment result indicates no, then the mobile user terminal i does not have an optimal strategy that is better than the current task offloading strategy.
[0024] Optionally, the utility of the task offloading strategy is calculated as:
[0025] When the task offloading strategy is local computing, the utility of the task offloading strategy is the consumption of mobile user i during local computing:
[0026]
[0027] in, is the consumption of mobile user i during local computation, α i and β i are the weights of time cost and energy cost of mobile user i, R i The number of CPU cycles required to complete the task of mobile user i, f i is the computing power of the local device of mobile user i, P i Calculate the energy consumption per CPU cycle of the task of mobile user i for the local device;
[0028] When the task offloading strategy is calculated for the home edge node, the utility of the task offloading strategy is the consumption of mobile user terminal i when the home edge node calculates:
[0029]
[0030] Among them, Ch (i) is the consumption of mobile user terminal i when calculating the home edge node, h(i) is the home edge node of mobile user terminal i, Nh(i) is the number of tasks offloaded to the home edge node h(i), is the computing power of the edge node h(i), D i is the task size of mobile user i, r i is the data transmission rate of mobile user terminal i, M is the congestion parameter, U(i) is the number of mobile user terminals that select the same channel to transmit data with mobile user terminal i, and E i The energy consumed per unit task size when transmitting a task to mobile user terminal i;
[0031] When the task offloading strategy is calculated for the neighbor edge node, the utility of the task offloading strategy is the consumption of mobile user terminal i when the neighbor edge node calculates:
[0032]
[0033] Among them, C n(i) is the consumption of mobile user terminal i when calculating the neighbor edge node, n(i) is the neighbor edge node of mobile user terminal i, N n(i) is the number of tasks offloaded to the neighbor edge node n(i), is the computing power of neighbor edge node n(i), B h(i),n(i) represents the time taken for data to be transmitted from the home edge node h(i) to the neighbor edge node n(i); the neighbor edge node of the mobile user terminal is the edge node adjacent to the home edge node of the mobile user terminal;
[0034] When the task offloading strategy is cloud computing, the utility of the task offloading strategy is the consumption of mobile user i during cloud computing:
[0035]
[0036] in, is the consumption of mobile user i in cloud computing, N cloud is the number of tasks offloaded to the cloud, For the computing power of the cloud, is the time taken for data to be transmitted from the home edge node h(i) to the cloud;
[0037] When the task offloading strategy is calculated for idle client, the utility of the task offloading strategy is the consumption of mobile client i when idle client j is calculated:
[0038]
[0039] in, The consumption of mobile client i when calculating for idle client j, The optimal strategy for idle client j to provide computing power to mobile client i, ri ,jrepresents the rate at which data is transmitted from mobile user terminal i to idle user terminal j, O i Indicates the size of the result output after the task execution of mobile user i, r j,i represents the rate at which data is transmitted from idle user terminal j to mobile user terminal i, represents the optimal strategy for mobile user i to purchase the computing power of idle user j at a unit price, γ i Represents the payment weight constant.
[0040] Optionally, the method of determining the set of user terminals that are allowed to update the task offloading policy by adopting a Nash equilibrium method specifically includes:
[0041] The nth mobile user terminal in the user terminal set U requesting to update the task offloading policy is set as mobile user terminal n, and the value of n is initialized to 1;
[0042] When the current task offloading policy of the mobile user terminal n is calculated by the local device, the mobile user terminal n is added to the first intermediate set l;
[0043] When the mobile user terminal n requests to change the current task offloading strategy to idle user terminal computing, and the current task offloading strategy of the mobile user terminal n is home edge node computing, neighbor edge node computing, or cloud computing, the mobile user terminal n is added to the first intermediate set l;
[0044] When the mobile user terminal n requests to change the current task offloading strategy to the home edge node calculation or the neighbor edge node calculation, the mobile user terminal i will be added to the second intermediate set e;
[0045] When the mobile user terminal n requests to change the current task offloading strategy to cloud computing, the mobile user terminal n is added to the second intermediate set e;
[0046] When mobile user terminal n requests to change the current task offloading strategy to idle user terminal j calculation, and the current task offloading strategy of mobile user terminal n is local calculation or idle user terminal m calculation, the mobile user terminal is added to the third intermediate set k corresponding to idle user terminal j. j , m≠j;
[0047] Increment the value of n by 1, and return to step "when the current task offloading policy of mobile user terminal n is calculated by the local device, add mobile user terminal n to the first intermediate set l" until all mobile user terminals in the user terminal set U that request to update the task offloading policy of the home edge node are traversed;
[0048] From the first intermediate set l, the second intermediate set e and each third intermediate set k j A mobile client is randomly selected from each of the two and added to the set of clients that are allowed to update the task offloading strategy.
[0049] Optionally, performing Stackelberg equilibrium on the current task offloading strategy of the mobile user terminal whose current task offloading strategy is calculated by the idle user terminal to determine the optimal strategy for the idle user terminal to provide computing power to the mobile user terminal and the optimal strategy for the mobile user terminal to purchase the computing power of the idle user terminal at a unit price specifically includes:
[0050] when When , the optimal strategy for determining the idle user terminal to provide computing power to the mobile user terminal and the optimal strategy for the mobile user terminal to purchase the computing power of the idle user terminal are:
[0051]
[0052]
[0053] when When , the optimal strategy for determining the idle user terminal to provide computing power to the mobile user terminal and the optimal strategy for the mobile user terminal to purchase the computing power of the idle user terminal are:
[0054]
[0055]
[0056] Among them, α i is the weight of the time cost of mobile user i, R i The number of CPU cycles required to complete the task of mobile user i, ε j is the constant factor, k represents the parameter constant, γ i represents the payment weight constant, Represents the average of the maximum computing capabilities of all client terminals, The upper bound of the price per unit of computing power that mobile client i purchases from idle client j is: The optimal strategy for mobile client i to purchase the computing power of idle client j at a unit price, The optimal strategy for idle client j to provide computing power to mobile client i; f j,max is the maximum computing capacity of idle client j.
[0057] In a second aspect, the present invention provides a method for offloading mobile edge computing in a multi-user Internet of Things network, the method comprising the following steps:
[0058] Determine whether there is an optimal strategy that is better than the current task offloading strategy, and if so, send a request to the home edge node of the mobile user terminal to update to the optimal strategy;
[0059] When a signal allowing the task offloading policy to be updated is received, the current task offloading policy is updated to the optimal policy, and the process returns to the step of "determining whether there is an optimal policy that is better than the current task offloading policy, and if so, sending a request to the home edge node of the mobile user terminal to update to the optimal policy" until a termination signal sent by the home edge node is received;
[0060] When the current task offloading strategy is idle client computing, task offloading is performed based on the optimal strategy for idle client to provide computing power to mobile client and the optimal price for mobile client to purchase computing power from idle client.
[0061] When the current task offloading policy is not calculated for an idle client, the task is offloaded based on the current task offloading policy.
[0062] In a third aspect, the present invention provides an electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the aforementioned method when executing the computer program.
[0063] In a fourth aspect, the present invention provides a method for offloading mobile edge computing in a multi-user Internet of Things network, the method comprising the following steps:
[0064] Based on the requests for updating to the optimal policy sent by different mobile user terminals included in the edge node, a user terminal set requesting to update the task offloading policy is constructed, and whether the user terminal set requesting to update the task offloading policy is an empty set is determined to obtain a first judgment result;
[0065] If the first judgment result indicates no, determining a set of user terminals that are allowed to update the task offloading policy by using a Nash equilibrium method, and sending a signal allowing the task offloading policy to be updated to the mobile user terminals in the set of user terminals that are allowed to update the task offloading policy;
[0066] If the first judgment result indicates yes, the current task offloading strategy of the mobile user terminal whose current task offloading strategy is calculated by the idle user terminal is subjected to Stackelberg equilibrium, the optimal strategy for the idle user terminal to provide computing power to the mobile user terminal and the optimal strategy for the mobile user terminal to purchase the computing power of the idle user terminal are determined, and a termination signal is sent to each mobile user terminal included in the edge node.
[0067] In a fifth aspect, the present invention provides an electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the aforementioned method when executing the computer program.
[0068] According to the specific embodiments provided by the present invention, the present invention discloses the following technical effects:
[0069] The present invention discloses a mobile edge computing offloading method in a multi-user Internet of Things network. The method adopts a Nash equilibrium approach to reasonably solve the user task offloading problem in a mobile edge computing scenario with wireless channel competition, edge nodes, cloud computing resources and idle devices. Based on the Stackelberg equilibrium approach, the method achieves the maximum utility state for both parties when mobile user tasks are offloaded to idle users without relying on pre-information. BRIEF DESCRIPTION OF THE DRAWINGS
[0070] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0071] Figure 1 A schematic diagram of a task offloading scenario provided in Example 1 of the present invention;
[0072] Figure 2 A flowchart of a mobile edge computing offloading method in a multi-user Internet of Things network is provided for Example 1 of the present invention. DETAILED DESCRIPTION
[0073] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of the present invention.
[0074] The purpose of the present invention is to provide a mobile edge computing offloading method in a multi-user Internet of Things network, so as to provide a task offloading method that meets the needs of different users, can make full use of the computing resources of the cloud, edge nodes and idle users, and maximize the utility of all parties.
[0075] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, the present invention is further described in detail below with reference to the accompanying drawings and specific embodiments.
[0076] Example 1
[0077] The embodiment of the present invention provides a method for offloading mobile edge computing in a multi-user Internet of Things network. The method is applied to task offloading scenarios such as Figure 1 As shown, it includes user end, edge node ( Figure 1 BS1, BS2 and BS3) and Cloud ( Figure 1The edge node is connected to multiple user terminals, and the cloud is connected to multiple edge nodes. Among them, the user terminal with computing tasks that need to be offloaded is set as a mobile user terminal ( Figure 1 User1, user2, user3, user4), the user end without computing tasks is set as an idle user end ( Figure 1 idle user1 and idle user2 in ).
[0078] like Figure 2 As shown, the method includes the following steps:
[0079] The mobile user terminal determines whether there is an optimal strategy that is better than the current task offloading strategy (this step is based on Algorithm 1), and if so, sends a request to update to the optimal strategy to the home edge node of the mobile user terminal.
[0080] The home edge node constructs a user terminal set requesting to update the task offloading policy based on the requests for updating to the optimal policy sent by different mobile user terminals included in the home edge node, and determines whether the user terminal set requesting to update the task offloading policy is an empty set to obtain a first judgment result.
[0081] If the first judgment result indicates no, the Nash equilibrium method is used to determine the user terminal set allowed to update the task offloading policy (this step is based on Algorithm 2), and a signal allowing the task offloading policy to be updated is sent to the mobile user terminals in the user terminal set allowed to update the task offloading policy.
[0082] The mobile user terminal that receives the signal allowing the task offloading policy to be updated updates the current task offloading policy to the optimal policy.
[0083] Return to step "the mobile user terminal determines whether there is an optimal strategy that is better than the current task offloading strategy, and if so, sends a request to the home edge node of the mobile user terminal to update to the optimal strategy."
[0084] If the first judgment result indicates yes, the current task offloading strategy of the mobile user terminal whose current task offloading strategy is calculated by the idle user terminal is subjected to Stackelberg equilibrium, and the optimal strategy for the idle user terminal to provide computing power to the mobile user terminal and the optimal strategy for the mobile user terminal to purchase the computing power of the idle user terminal are determined (this step is based on algorithm three), and a termination signal is sent to each of the mobile user terminals included in the home edge node.
[0085] The current task offloading strategy is that the mobile user terminal of the idle user terminal calculation performs task offloading based on the optimal strategy of the idle user terminal providing computing power to the mobile user terminal and the optimal strategy of the mobile user terminal purchasing the computing power of the idle user terminal.
[0086] The mobile user terminal for which the current task offloading policy is not calculated for the idle user terminal performs task offloading based on the current task offloading policy.
[0087] Among them, Algorithm 1 specifically includes the following steps:
[0088] Step 101: Initialization Phase
[0089] Use s i (t) represents the task offloading strategy of mobile user i in time slot t. Mobile user i initializes the initial strategy as local calculation and sends its strategy information to the home edge node h(i), i.e., s i (0) = local. The number of tasks selected for offloading to each edge node and cloud and the number of users shared by each channel are obtained from the home edge node, and the initial values are all 0.
[0090] Step 102: Optimal strategy calculation phase for time slot t (t>0)
[0091] Mobile user i calculates the utility of choosing different offloading strategies and selects the optimal strategy Δ i (t), where the consumption of mobile user terminal i during local calculation is expressed as The consumption of mobile user terminal i when the home edge node is calculated is C h(i) , the consumption of mobile user i when the neighbor edge node calculates is C n(i) , the consumption of mobile user i during cloud computing is The consumption of mobile user terminal i when idle user terminal j is calculated is The various utility calculation methods are as follows:
[0092] where α i , β i are the weights of time cost and energy cost of mobile user i, R i The number of CPU cycles required to complete the task of mobile user i, f i is the computing power (CPU frequency) of the local device of mobile user terminal i, P i Calculate the energy consumption per CPU cycle of task i on mobile client for the local device.
[0093] Where h(i) is the home edge node of mobile user i, N h(i) is the number of tasks offloaded to the home edge node h(i), is the computing power of the edge node h(i), D i is the task size of mobile user i, r iis the data transmission rate of mobile user terminal i, M is the congestion parameter, U(i) is the number of mobile user terminals that select the same channel to transmit data with mobile user terminal i, and E i The energy consumed per unit task size when transmitting a task to mobile user i.
[0094] Among them, C n(i) is the consumption of mobile user terminal i when calculating the neighbor edge node, n(i) is the neighbor edge node of mobile user terminal i, N n(i) is the number of tasks offloaded to the neighbor edge node n(i), is the computing power of neighbor edge node n(i), B h(i),n(i) It represents the time taken for data to be transmitted from the home edge node h(i) to the neighbor edge node n(i); the neighbor edge node of the mobile user terminal is the edge node adjacent to the home edge node of the mobile user terminal.
[0095]
[0096] N cloud is the number of tasks offloaded to the cloud, For the computing power of the cloud, is the time taken for data to be transmitted from the home edge node h(i) to the cloud.
[0097] in, The optimal strategy for idle client j to provide computing power to mobile client i, r i,j represents the rate at which data is transmitted from mobile user terminal i to idle user terminal j, O i Indicates the size of the result output after the task execution of mobile user i, r j,i represents the rate at which data is transmitted from idle user terminal j to mobile user terminal i, represents the optimal strategy for mobile user i to purchase the computing power of idle user j at a unit price, γ i Represents the payment weight constant.
[0098] Step 103: Request the home edge node to update the policy to Δ i (t)
[0099] If the optimal strategy selected by mobile user i meets the conditions, that is, it is not empty and different from the current strategy, And Δ i (t)≠s i (t-1), then request the home edge node h(i) to update the strategy to Δ i (t), competition strategy update opportunity, waiting for the home edge node h(i) to return the response signal.
[0100] Step 104: Update the policy
[0101] If the mobile user terminal i receives the policy update permission from the home edge node h(i), it updates the currently selected policy si(t) = Δ i (t). If no opportunity to update the strategy is won, the strategy remains unchanged, s i (t) = s i (t-1).
[0102] Step 105: Update Information
[0103] Mobile user i receives the changes in the user strategy in this round of the model from its home edge node h(i), and updates the number of tasks selected for offloading to each edge node and cloud and the number of users shared by each channel.
[0104] Step 106: Receive a termination signal
[0105] If a termination signal is received, the mobile user terminal i stops selecting the strategy, and the current strategy si(t) is the uninstall strategy of the end user i.
[0106] If no termination signal is received, set t=t+1 and return to step 102 to continue searching for the optimal strategy.
[0107] Algorithm 2 specifically includes:
[0108] Step 201: At time slot t, the home edge node receives a request for policy update from a user set U. Initialize the user set allowed to update policy if Then execute step 202; if A termination signal is sent to all users.
[0109] Step 202: Initialize the first intermediate set Second intermediate set For edge node j, determine whether there is an update strategy involving the user terminal of the edge node. For edge node j, traverse each mobile user terminal i in the user set U and perform the following operations:
[0110] (1) If the policy of mobile user terminal i is local device and the mobile user's home edge node is the current edge node j, then add mobile user terminal i to the first intermediate set l;
[0111] (2) If mobile user terminal i requests to change the policy to an idle device, and the original policy of mobile user terminal i is the home edge node h(i), the neighbor edge node n(i), or the cloud, the user will also be added to the first intermediate set l;
[0112] (3) If the update strategy of mobile user terminal i is the current edge node j, regardless of whether the edge node is the home edge node of user i, mobile user terminal i will be added to the second intermediate set e;
[0113] (4) If edge node j is the home edge node of mobile user terminal i, and the requested update strategy of mobile user terminal i is cloud, mobile user terminal i will also be added to the second intermediate set e.
[0114] After traversing the edge nodes and the requesting user set, a mobile user a is randomly selected from the first intermediate set l and a mobile user b is randomly selected from the second intermediate set e. Users a and b are added to the user set μ that is allowed to update the policy and users a and b are deleted from U.
[0115] Step 203: Initialize the third intermediate set corresponding to each idle user terminal j For each idle user, traverse the request strategy to update each mobile user i in the user set U, and the operation is as follows:
[0116] If the original strategy of mobile client i is local computing or idle device, and the updated strategy is idle device j, then these strategies will not necessarily cover overlapping channels, but an idle device can only offload one task, so the mobile client is added to the third intermediate set k corresponding to idle client j. j .
[0117] The traversal ends, and similarly, from the third intermediate set k corresponding to each idle user end j j A mobile user terminal is randomly selected from each of them and added to μ.
[0118] Step 204: Steps 202 and 203 have considered all types of policy update requests, and finally send a signal to the users in the set μ to allow the update of the uninstallation policy.
[0119] Algorithm 3 specifically includes:
[0120] Step 301: Initialization information
[0121] Mobile user terminal i is the leader, and idle user terminal j is the follower. i,j represents the strategy of idle client j providing computing power (CPU frequency) to mobile client i, p i,j represents the price per unit of computing power purchased by mobile client i from idle client j, represents the consumption of mobile user terminal i, represents the utility function of the current idle client j.
[0122] The calculation formula is the same as that in step 102 of Algorithm 1 The formula is the same and will not be repeated here;
[0123] in Represents the average of the maximum computing power of all devices, ε j represents the constant factor, Idle user j accepts task D i The power of , k represents a parameter constant.
[0124] Step 303: Given p i,j , calculate the optimal strategy for idle client j
[0125] but For f i,j Convex function.
[0126] according to It can be seen that where fj ,max is the maximum computing capacity of idle client j.
[0127] Step 303: Determine the optimal strategy for mobile user terminal i
[0128] Will Bring in get
[0129] because but is a concave function
[0130] make get
[0131] Step 304: Stackelberg equilibrium
[0132] Mobile user terminal i strategy upper bound Exceed this value f i,j =f j,max , Only with the p i,j At this time, the Stackelberg equilibrium is reached as follows:
[0133] Mobile user terminal:
[0134] Idle client j:
[0135] Among them: (1) meet hour, and
[0136] (2) Satisfaction hour, and
[0137] Example 2
[0138] Embodiment 2 of the present invention provides a method for offloading mobile edge computing in a multi-user Internet of Things network, which is applied to Figure 1 The method includes the following steps:
[0139] Determine whether there is an optimal strategy that is better than the current task offloading strategy, and if so, send a request to the home edge node of the mobile user terminal to update to the optimal strategy.
[0140] When a signal allowing the task offloading policy to be updated is received, the current task offloading policy is updated to the optimal policy, and the process returns to the step of "determining whether there is an optimal policy that is better than the current task offloading policy, and if so, sending a request to update to the optimal policy to the home edge node of the mobile user terminal" until a termination signal sent by the home edge node is received.
[0141] When the current task offloading strategy is idle user terminal computing, task offloading is performed based on the optimal strategy of idle user terminals providing computing power to mobile user terminals and the optimal strategy of the unit price of mobile user terminals purchasing computing power from idle user terminals.
[0142] When the current task offloading policy is not calculated for an idle client, the task is offloaded based on the current task offloading policy.
[0143] Example 3
[0144] The present invention provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the method of embodiment 2 is implemented when the processor executes the computer program.
[0145] Example 4
[0146] The embodiment of the present invention provides a method for offloading mobile edge computing in a multi-user Internet of Things network, which is applied to Figure 1 For an edge node in the task offloading scenario shown, the method includes the following steps:
[0147] Based on the requests for updating to the optimal policy sent by different mobile user terminals included in the edge node, a user terminal set requesting to update the task offloading policy is constructed, and whether the user terminal set requesting to update the task offloading policy is an empty set is determined to obtain a first judgment result;
[0148] If the first judgment result indicates no, determining a set of user terminals that are allowed to update the task offloading policy by using a Nash equilibrium method, and sending a signal allowing the task offloading policy to be updated to the mobile user terminals in the set of user terminals that are allowed to update the task offloading policy;
[0149] If the first judgment result indicates yes, the current task offloading strategy of the mobile user terminal whose current task offloading strategy is calculated by the idle user terminal is subjected to Stackelberg equilibrium, the optimal strategy for the idle user terminal to provide computing power to the mobile user terminal and the optimal strategy for the mobile user terminal to purchase the computing power of the idle user terminal are determined, and a termination signal is sent to each mobile user terminal included in the edge node.
[0150] Example 5
[0151] The present invention provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the method of embodiment 4 is implemented when the processor executes the computer program.
[0152] According to the specific embodiments provided by the present invention, the present invention discloses the following technical effects:
[0153] The embodiments of the present invention adopt a distributed potential game theory method to reasonably solve the problem of user task offloading in mobile edge computing scenarios with wireless channel competition, edge nodes, cloud computing resources and idle devices. At the same time, based on the Stackelberg game, the present invention proposes an incentive mechanism to motivate the participation of idle users in this scenario and enable both parties to achieve a win-win satisfaction state.
[0154] The various embodiments in this specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the various embodiments can be referenced to each other.
[0155] This document uses specific examples to illustrate the principles and implementation methods of the present invention. The above examples are only intended to help understand the method and core concept of the present invention. At the same time, those skilled in the art will find that the specific implementation methods and application scopes may vary based on the concept of the present invention. In summary, the contents of this specification should not be construed as limiting the present invention.
Claims
1. A method for offloading mobile edge computing in a multi-user Internet of Things network, characterized in that: The method comprises the following steps: The mobile user terminal determines whether there is an optimal strategy that is better than the current task offloading strategy, and when there is, sends a request to update to the optimal strategy to the home edge node of the mobile user terminal; The home edge node constructs a user terminal set requesting to update the task offloading policy based on the requests for updating to the optimal policy sent by different mobile user terminals included in the home edge node, and determines whether the user terminal set requesting to update the task offloading policy is an empty set to obtain a first judgment result; If the first judgment result indicates no, determining a set of user terminals that are allowed to update the task offloading policy by using a Nash equilibrium method, and sending a signal allowing the task offloading policy to be updated to the mobile user terminals in the set of user terminals that are allowed to update the task offloading policy; The mobile user terminal that receives the signal allowing the task offloading strategy to be updated updates the current task offloading strategy to the optimal strategy; Return to step "the mobile user terminal determines whether there is an optimal strategy that is better than the current task offloading strategy, and when there is, sends a request to the home edge node of the mobile user terminal to update to the optimal strategy"; If the first judgment result indicates yes, performing Stackelberg equilibrium on the current task offloading strategy of the mobile user terminal whose current task offloading strategy is calculated by the idle user terminal, determining the optimal strategy for the idle user terminal to provide computing power to the mobile user terminal and the optimal strategy for the mobile user terminal to purchase the computing power of the idle user terminal, and sending a termination signal to each of the mobile user terminals included in the home edge node; The current task offloading strategy is that the mobile user terminal that calculates the idle user terminal performs task offloading based on the optimal strategy of the idle user terminal providing computing power to the mobile user terminal and the optimal strategy of the unit price of the mobile user terminal purchasing the computing power of the idle user terminal; The mobile user terminal whose current task offloading policy is not calculated for the idle user terminal performs task offloading based on the current task offloading policy; The method further comprises performing Stackelberg equilibrium on the current task offloading strategy of the mobile user terminal whose current task offloading strategy is calculated by the idle user terminal, and determining the optimal strategy for the idle user terminal to provide computing power to the mobile user terminal and the optimal strategy for the mobile user terminal to purchase the computing power of the idle user terminal at a unit price. when When , the optimal strategy for determining the idle user terminal to provide computing power to the mobile user terminal and the optimal strategy for the mobile user terminal to purchase the computing power of the idle user terminal are: when When , the optimal strategy for determining the idle user terminal to provide computing power to the mobile user terminal and the optimal strategy for the mobile user terminal to purchase the computing power of the idle user terminal are: Among them, α i is the weight of the time cost of mobile user i, R i The number of CPU cycles required to complete the task of mobile user i, ε j is the constant factor, k represents the parameter constant, γ i represents the payment weight constant, Represents the average of the maximum computing capabilities of all client terminals, The upper bound of the price per unit of computing power that mobile client i purchases from idle client j is: The optimal strategy for mobile client i to purchase the computing power of idle client j at a unit price, The optimal strategy for idle client j to provide computing power to mobile client i; f j,max is the maximum computing capacity of idle client j.
2. The mobile edge computing offloading method in a multi-user Internet of Things network according to claim 1 is characterized in that: The mobile user terminal determines whether there is an optimal strategy that is better than the current task offloading strategy, specifically including: Mobile user terminal i initializes the current task offloading strategy to local computing; The current task offloading policy is sent to the home edge node h(i) of mobile user terminal i, and the number of tasks of each edge node, the number of tasks of the cloud, and the number of mobile users shared by each channel are obtained from the home edge node h(i); the home edge node of the mobile user terminal is the edge node to which the mobile user terminal belongs; Mobile user i determines the executable task offloading strategies based on the number of tasks on each edge node, the number of tasks on the cloud, and the number of mobile users shared by each channel, and selects the optimal strategy based on the utility of each task offloading strategy; Based on the utility of the current task offloading strategy of the mobile user terminal i and the utility of the optimal strategy, determining whether the optimal strategy is better than the current task offloading strategy of the mobile user terminal i, and obtaining a second determination result; If the second judgment result indicates yes, then the mobile user terminal i has an optimal strategy that is better than the current task offloading strategy; If the second judgment result indicates no, then the mobile user terminal i does not have an optimal strategy that is better than the current task offloading strategy.
3. The mobile edge computing offloading method in a multi-user Internet of Things network according to claim 2, characterized in that: The utility of the task offloading strategy is calculated as: When the task offloading strategy is local computing, the utility of the task offloading strategy is the consumption of mobile user i during local computing: in, is the consumption of mobile user i during local computation, α i and β i are the weights of time cost and energy cost of mobile user i, R i The number of CPU cycles required to complete the task of mobile user i, f i is the computing power of the local device of mobile user i, P i Calculate the energy consumption per CPU cycle of the task of mobile user i for the local device; When the task offloading strategy is calculated for the home edge node, the utility of the task offloading strategy is the consumption of mobile user terminal i when the home edge node calculates: Among them, C h(i) is the consumption of mobile user terminal i when calculating the home edge node, h(i) is the home edge node of mobile user terminal i, N h(i) is the number of tasks offloaded to the home edge node h(i), is the computing power of the edge node h(i), D i is the task size of mobile user i, r i is the data transmission rate of mobile user terminal i, M is the congestion parameter, U(i) is the number of mobile user terminals that select the same channel to transmit data with mobile user terminal i, and E i The energy consumed per unit task size when transmitting a task to mobile user terminal i; When the task offloading strategy is calculated for the neighbor edge node, the utility of the task offloading strategy is the consumption of mobile user terminal i when the neighbor edge node calculates: Among them, C n(i) is the consumption of mobile user terminal i when calculating the neighbor edge node, n(i) is the neighbor edge node of mobile user terminal i, N n(i) is the number of tasks offloaded to the neighbor edge node n(i), is the computing power of neighbor edge node n(i), B h(i),n(i) represents the time taken for data to be transmitted from the home edge node h(i) to the neighbor edge node n(i); the neighbor edge node of the mobile user terminal is the edge node adjacent to the home edge node of the mobile user terminal; When the task offloading strategy is cloud computing, the utility of the task offloading strategy is the consumption of mobile user i during cloud computing: in, is the consumption of mobile user i in cloud computing, N cloud is the number of tasks offloaded to the cloud, For the computing power of the cloud, is the time taken for data to be transmitted from the home edge node h(i) to the cloud; When the task offloading strategy is calculated for idle client, the utility of the task offloading strategy is the consumption of mobile client i when idle client j is calculated: in, The consumption of mobile client i when calculating for idle client j, The optimal strategy for idle client j to provide computing power to mobile client i, r i,j represents the rate at which data is transmitted from mobile user terminal i to idle user terminal j, O i Indicates the size of the result output after the task execution of mobile user i, r j,i represents the rate at which data is transmitted from idle user terminal j to mobile user terminal i, represents the optimal strategy for mobile user i to purchase the computing power of idle user j at a unit price, γ i Represents the payment weight constant.
4. The method for offloading mobile edge computing in a multi-user Internet of Things network according to claim 1, characterized in that: The method of using Nash equilibrium to determine the set of user terminals that are allowed to update the task offloading policy specifically includes: The nth mobile user terminal in the user terminal set U requesting to update the task offloading policy is set as mobile user terminal n, and the value of n is initialized to 1; When the current task offloading policy of the mobile user terminal n is calculated by the local device, the mobile user terminal n is added to the first intermediate set l; When the mobile user terminal n requests to change the current task offloading strategy to idle user terminal computing, and the current task offloading strategy of the mobile user terminal n is home edge node computing, neighbor edge node computing, or cloud computing, the mobile user terminal n is added to the first intermediate set l; When the mobile user terminal n requests to change the current task offloading strategy to the home edge node calculation or the neighbor edge node calculation, the mobile user terminal i will be added to the second intermediate set e; When the mobile user terminal n requests to change the current task offloading strategy to cloud computing, the mobile user terminal n is added to the second intermediate set e; When mobile user terminal n requests to change the current task offloading strategy to idle user terminal j calculation, and the current task offloading strategy of mobile user terminal n is local calculation or idle user terminal m calculation, the mobile user terminal is added to the third intermediate set k corresponding to idle user terminal j. j , m≠j; Increment the value of n by 1, and return to step "When the current task offloading policy of mobile user terminal n is calculated by the local device, add mobile user terminal n to the first intermediate set l", until all mobile user terminals in the user terminal set U that request to update the task offloading policy of the home edge node are traversed; From the first intermediate set l, the second intermediate set e and each third intermediate set k j A mobile client is randomly selected from each of the two and added to the set of clients that are allowed to update the task offloading strategy.
5. A method for offloading mobile edge computing in a multi-user Internet of Things network, characterized in that: The method comprises the following steps: Based on the requests for updating to the optimal policy sent by different mobile user terminals included in the edge node, a user terminal set requesting to update the task offloading policy is constructed, and whether the user terminal set requesting to update the task offloading policy is an empty set is determined to obtain a first judgment result; If the first judgment result indicates no, determining a set of user terminals that are allowed to update the task offloading policy by using a Nash equilibrium method, and sending a signal allowing the task offloading policy to be updated to the mobile user terminals in the set of user terminals that are allowed to update the task offloading policy; If the first judgment result indicates yes, performing Stackelberg equilibrium on the current task offloading strategy of the mobile user terminal whose current task offloading strategy is calculated by the idle user terminal, determining the optimal strategy for the idle user terminal to provide computing power to the mobile user terminal and the optimal strategy for the mobile user terminal to purchase the computing power of the idle user terminal, and sending a termination signal to each mobile user terminal included in the edge node; The method further comprises performing Stackelberg equilibrium on the current task offloading strategy of the mobile user terminal whose current task offloading strategy is calculated by the idle user terminal, and determining the optimal strategy for the idle user terminal to provide computing power to the mobile user terminal and the optimal strategy for the mobile user terminal to purchase the computing power of the idle user terminal at a unit price. when When , the optimal strategy for determining the idle user terminal to provide computing power to the mobile user terminal and the optimal strategy for the mobile user terminal to purchase the computing power of the idle user terminal are: when When , the optimal strategy for determining the idle user terminal to provide computing power to the mobile user terminal and the optimal strategy for the mobile user terminal to purchase the computing power of the idle user terminal are: Among them, α i is the weight of the time cost of mobile user i, R i The number of CPU cycles required to complete the task of mobile user i, ε j is the constant factor, k represents the parameter constant, γ i represents the payment weight constant, Represents the average of the maximum computing capabilities of all client terminals, The upper bound of the price per unit of computing power that mobile client i purchases from idle client j is: The optimal strategy for mobile client i to purchase the computing power of idle client j at a unit price, The optimal strategy for idle client j to provide computing power to mobile client i; f j,max is the maximum computing capacity of idle client j.
6. An electronic device, characterized in that: The method comprises a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the method according to claim 5 when executing the computer program.