A multi-user multi-access point MEC task offloading scheduling method and device

By constructing an objective function with energy consumption and latency penalties and multi-dimensional constraint checks in mobile edge computing, the convergence and stability problems of particle swarm optimization algorithm in multi-user, multi-access-point environments are solved, achieving efficient adaptation and stability improvement of task offloading strategies.

CN120434708BActive Publication Date: 2026-04-17GUANGZHOU MARITIME INST
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
GUANGZHOU MARITIME INST
Filing Date
2025-05-08
Publication Date
2026-04-17

AI Technical Summary

Technical Problem

In existing technologies for mobile edge computing with multiple users and multiple access points, particle swarm optimization algorithms struggle to effectively model explicit optimization constraints on task completion latency, and particle out-of-bounds behavior is not suppressed, resulting in poor convergence and stability of the optimization process, making it difficult to meet the task response requirements in complex network environments.

Method used

By constructing an objective function for total system energy consumption and latency penalty terms, user selection matrix and computing resource allocation matrix are introduced as collaborative optimization variables. Latency constraints are modeled using penalty terms, and a multi-dimensional constraint checking and correction mechanism is combined to coordinate the out-of-bounds issues of discrete and continuous variables, thereby improving the adaptability and stability of the task offloading strategy.

Benefits of technology

It significantly enhances scheduling robustness and service quality in multi-user, multi-access-point environments, improves the feasibility and stability of task offloading solutions, reduces task completion latency, and adapts to task processing needs in complex network environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120434708B_ABST
    Figure CN120434708B_ABST
Patent Text Reader

Abstract

This invention relates to a task offloading scheduling method and apparatus for multi-user, multi-access point (MEC) systems. The task offloading scheduling method of this invention includes: initializing the number of particles, their velocity vectors, and the task offloading scheme; calculating the fitness of the current particle swarm population and its corresponding fitness based on cascaded channel information and noise power, combined with the position vectors of the particle swarm population, and updating the particle swarm population to obtain the updated population; then, checking the constraints on the updated particle position vectors to obtain a particle swarm population that meets the constraints, and determining whether its position vectors satisfy the iteration threshold: if yes, offloading allocation is performed based on the optimal position vector, completing the scheduling; if not, the fitness is recalculated. The task offloading scheduling method of this invention significantly suppresses the out-of-bounds problem in the particle swarm optimization process and improves the scheduling robustness and quality of service of multi-user, multi-access point task offloading.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of resource scheduling in mobile edge computing, and in particular to a task offloading and scheduling method, a task offloading and scheduling device, and a mobile edge computing system for multi-user multi-access point (MEC). Background Technology

[0002] Driven by the digital revolution, applications such as high-definition video, semantic recognition, virtual reality, and smart homes have flourished, leading to an exponential increase in the demand for computing power from terminal devices. However, terminal devices, especially mobile devices, are limited by battery capacity, computing resources, and network transmission speeds, making it difficult to handle complex computing tasks. Therefore, Mobile Edge Computing (MEC) technology has emerged. MEC deploys computing resources (such as edge servers) at the network edge, enabling users' mobile devices to offload all or part of their computing tasks to nearby edge servers, which then perform the computation or processing and return the results to the user, effectively reducing the energy consumption and response latency of user devices. However, in situations with multiple concurrent users and multiple access points on the edge server, it is difficult to determine the optimal low-energy task allocation scheme using simple preset rules.

[0003] To address this, traditional techniques typically employ mathematical programming methods to model the energy consumption optimization problem in multi-user, multi-access point (MEC) systems, including integer programming and convex optimization, aiming to minimize system energy consumption while meeting resource constraints and latency requirements. However, since this type of problem is NP-hard, traditional methods often struggle to obtain feasible solutions within a finite timeframe when dealing with scenarios involving large numbers of users and access points. These methods suffer from slow convergence speeds and a tendency to get trapped in local optima, making it difficult to meet the real-time and computational efficiency requirements of practical systems.

[0004] Based on this, existing technologies generally employ heuristic algorithms, such as genetic algorithms, ant colony optimization, and particle swarm optimization (PSO), to address energy consumption optimization problems in MEC systems. PSO, in particular, simulates particles in a search space, continuously adjusting their flight speed and position based on individual and collective experience to gradually approach the optimal solution. In the MEC scenario, each particle represents a task offloading and access point allocation strategy. The algorithm evaluates the total system energy consumption using a fitness function to determine particle performance, and continuously optimizes the task allocation scheme through operations such as initializing the population, recording individual and global optimal values, and iteratively updating speed and position, ultimately outputting the task offloading and access strategy with the minimum energy consumption.

[0005] However, when applying Particle Swarm Optimization (PSO) to MEC systems, existing technologies face challenges in complex optimization scenarios involving multiple users and access points. Task completion latency is typically a composite function of multiple parameters, including computational resource allocation and transmission rate, making it difficult to explicitly model as a feasible boundary constraint and to directly correct the boundary. Furthermore, existing technologies often only optimize the offloading relationship between users and access points, and to simplify the design of optimization variables and constraints, they generally model task allocation behavior as discrete variables, failing to consider continuous variables such as the dynamic allocation of computational resources. This results in an inaccurate reflection of the coupling relationship between task completion latency and computational resource allocation. Consequently, when dealing with applications with high service quality requirements or highly heterogeneous tasks, the generated offloading strategies may suffer from excessively high execution latency and unstable task response.

[0006] Furthermore, existing particle swarm optimization (PSO) algorithms, when facing multi-user, multi-access point (MEC) task offloading joint optimization problems, are prone to allocation out-of-bounds errors when discrete variables are simultaneously subject to row and column constraints within the two-dimensional scheduling matrix. This can lead to continuous variables also experiencing out-of-bounds errors during allocation, causing the particle swarm's position to exceed the search space boundary after updating, resulting in fitness failure and infeasibility of solutions. Consequently, these issues severely impact the convergence and stability of the optimization process. Therefore, when applying PSO to multi-user, multi-access point MEC offloading optimization problems, existing technologies suffer from difficulties in converting task completion delays into explicit optimization constraints and the unsuppressed particle out-of-bounds behavior. Summary of the Invention

[0007] Based on this, the purpose of the present invention is to provide a task offloading and scheduling method for multi-user multi-access point (MEC).

[0008] A task offloading and scheduling method for multi-user, multi-access point (MEC) systems includes the following steps:

[0009] S1. Initialize the number of particles, the velocity vector of the particles, and the task unloading scheme to obtain the initial particle swarm population; wherein, the task unloading scheme includes a user selection matrix and a computing resource allocation matrix;

[0010] S2. Based on the cascaded channel information and noise power between the user and the access point, and combined with the current task offloading scheme of the particle swarm population, calculate the objective function value composed of energy consumption and latency penalty to obtain the current particle swarm population and its corresponding fitness; wherein, the objective function composed of energy consumption and latency penalty is subject to several constraints, including computational resource limitation constraints, unique task access constraints, access point capacity constraints, and binary constraint of task offloading variables.

[0011] S3. Update the particle swarm based on the current particle swarm population and its corresponding fitness to obtain the updated particle swarm population.

[0012] S4. Perform constraint checks on the task unloading scheme in the updated particle swarm population to obtain a particle swarm population that meets the constraints; wherein, the constraint check is used to sequentially check and correct the out-of-bounds constraints of computing resource allocation, unique task access constraints, and access point capacity constraints.

[0013] S5. Determine whether the globally optimal task unloading scheme of the particle swarm population that meets the constraints satisfies the iteration threshold: if yes, complete the iteration, unload and allocate the user's computing tasks according to the globally optimal task unloading scheme, and complete the unloading and scheduling of the user's tasks; if no, repeat step S2.

[0014] The task offloading and scheduling method for multi-user, multi-access point (MEC) networks described in this invention, compared to existing technologies, constructs an objective function composed of total system energy consumption and latency penalty terms, introduces user selection matrix (discrete variable) and computing resource allocation matrix (continuous variable) as co-optimization variables, and models and replaces the maximum latency constraint of tasks by introducing penalty terms. This avoids the problem that latency constraints are difficult to directly correct during the optimization process, thereby enabling the optimization process to simultaneously focus on task allocation and resource scheduling. This significantly enhances the adaptability of the offloading strategy to latency-sensitive tasks and improves the scheduling robustness and service quality in complex multi-user, multi-access point network environments.

[0015] Meanwhile, this invention addresses the problems of logical overlap and conflict of discrete variables caused by the simultaneous restriction of rows and columns of the user selection matrix in the task offloading scheme, as well as the problem of boundary overflow of the computing resource allocation matrix during particle update. By sequentially checking and correcting the boundary overflow of computing resource constraints, unique task access constraints, and access point capacity constraints, this invention effectively coordinates the conflict relationship between multiple constraints, ensures the feasibility and stability of the task offloading solution, significantly suppresses the problems of non-convergence and solution failure caused by boundary overflow during particle swarm optimization, and improves the convergence speed and stability of particle swarm in multi-user, multi-access point MEC task offloading allocation.

[0016] Furthermore, for the first In the particle swarm population of the next iteration Task unloading scheme for each particle The specific calculation expression of the objective function consisting of energy consumption and time delay penalty is as follows:

[0017]

[0018] In the formula, Indicates the first The particle in the first The fitness of the task unloading scheme in the next iteration. Indicates the first The particle in the first The task offloading scheme for the next iteration, i.e., the particle position vector, includes the user selection matrix and the computational resource allocation matrix, and its specific representation is as follows:

[0019]

[0020]

[0021] In the formula, Indicates the first The particle in the first The user selection matrix of the next iteration, its elements Select elements for uninstallation; These represent the total number of users and the total number of access points, respectively.

[0022] For the first The particle in the first The computational resource allocation matrix of the next iteration, its elements Allocate elements to resources;

[0023] Indicates the first The total energy consumption of the system corresponding to each particle is specifically calculated as follows:

[0024]

[0025] In the formula, Indicates the first The user selected the first The energy consumption of each access point during task unloading. Indicates the first The computational complexity coefficient for each user's task; Indicates the locally calculated energy consumption coefficient; Indicates the first Task length per user; Indicates the first The computing frequency of a user's local device;

[0026] Indicates the first Uplink overhead coefficient for each user; For the first The device transmit power of each user; Indicates the first The user and the first The transmission rate between access points is calculated as follows:

[0027]

[0028] In the formula, Indicates the first Channel bandwidth allocated to each access point; Indicates noise power; For the first The user and the first The cascaded channel information between access points, i.e., the cascaded channel gain, is calculated as follows:

[0029]

[0030] In the formula, This represents the path loss constant; Indicates the first The user and the first The distance between access points; For small-scale fast fading channel gain;

[0031] Indicates the delay penalty. As a penalty factor; Indicates the first Maximum tolerable latency for a user's task; Indicates the first The total execution latency of a user task is calculated as follows:

[0032]

[0033] In the formula, Indicates the first The user and the first The latency of connecting to each access point.

[0034] Accordingly, this invention constructs an optimization objective function by coordinating the total system energy consumption and latency penalty term, and uses the user selection matrix and computing resource allocation matrix in the particle position vector as joint optimization variables. This allows the particle to simultaneously optimize task scheduling and resource allocation strategies in the search space, thereby adaptively adjusting the computing frequency allocation of the edge server to different users. This enables the unloaded task to obtain dynamic processing capabilities, thereby reducing task completion latency and improving the robustness and latency guarantee of task processing in complex scenarios such as multi-task heterogeneity and dynamic changes in access point load.

[0035] Furthermore, for the first In the particle swarm population of the next iteration Task unloading scheme for each particle In its first The update rule for the next iteration is expressed as follows:

[0036]

[0037] In the formula, Indicates the first Is the user in the [number]th ... In the next iteration, the task will be unloaded to the [number]th [item]. The access point, i.e. the th access point User selection matrix of individual particles Corresponding elements ;

[0038] To obey A random variable that is uniformly distributed across an interval; To allow users to select elements of the matrix The corresponding velocity components; For the Sigmoid function;

[0039] Indicates the first The particle in the first The computational resource allocation matrix for the next iteration; To be compatible with the computing resource allocation matrix The corresponding velocity component.

[0040] Accordingly, this invention introduces the Sigmoid function to map the velocity components during the update process of the user selection matrix, thereby achieving probabilistic modeling of the user selection matrix update behavior. Combined with a random perturbation judgment mechanism, this enhances the strategy diversity of the particle swarm during the search process, avoids search instability caused by jitter or premature convergence, and ultimately strengthens the global exploration capability and convergence stability of the particle swarm in a complex search space with multiple users and multiple access points.

[0041] Furthermore, for the first In the particle swarm population of the next iteration The velocity vector corresponding to each particle In its first The update rule for the next iteration is expressed as follows:

[0042]

[0043] In the formula, Indicates the first The particle in the first The next iteration and the user selection matrix The corresponding velocity components; Indicates the first The particle in the first The next iteration and the computational resource allocation matrix The corresponding velocity components; The learning factor represents the individual's extreme value; A random factor for an individual's extreme value, which follows Uniform distribution; The optimal task unloading solution for each individual;

[0044] The learning factor represents the group's extreme value; The random factor representing the extreme value of the population follows a set rule. Uniform distribution; For the first The globally optimal task unloading scheme for the next iteration;

[0045] For the current number The particle in the first The adaptive inertia weight for the next iteration is calculated as follows:

[0046]

[0047] In the formula, and These represent the minimum and maximum values ​​of the inertia weight; Indicates the first The maximum fitness of all particles in the next iteration; Indicates the first The average fitness of all particles in the next iteration.

[0048] Accordingly, this invention introduces a task unloading scheme that includes individual and group extreme values ​​as guidance during the velocity vector update process, and combines it with adaptive inertial weights to effectively balance the global exploration and local convergence capabilities in the particle search process, thereby improving the convergence speed and global search performance of the optimization process and enhancing the stability and search efficiency of the algorithm in complex solution spaces with multiple constraints.

[0049] Furthermore, the constraint check includes the following sub-steps:

[0050] S401. Check whether the computing frequency allocated to all users by each access point complies with the computing resource allocation constraints: if yes, proceed to the next sub-step S402; if no, perform normalization correction processing and proceed to the next sub-step S402, the specific correction being as follows:

[0051]

[0052] In the formula, Indicates the first The maximum available computing frequency resources for each access point;

[0053] S402. Check whether the user selection matrix in the task unloading scheme of all particles satisfies the task unique access constraint: if yes, proceed to the next sub-step S403; if no, further determine the corresponding particle. Any user in the user selection matrix That is, the first Row selection:

[0054] If particles In the user selection matrix, a certain user If no access point is selected, the Sigmoid function is used to evaluate the user's settings. Map the corresponding velocity vectors to obtain the connection probability vectors, and then use the user selection matrix corresponding to the maximum probability value. The elements are set to 1, and the rest are set to 0; for any particle In the User selection matrix of the next iteration elements The correction is as follows:

[0055]

[0056] In the formula, This indicates the item retrieved by its maximum index. Indicates the first The particle in the first The velocity components corresponding to the user selection matrix in the next iteration The row element;

[0057] If in the user selection matrix of a particle, a certain user If multiple access points are selected, the sigmoid function is used to apply the changes to the user. The corresponding velocity vector is mapped, and the mapping result is compared with the user selection matrix. Perform element-wise multiplication and find the user selection matrix corresponding to the maximum value in the product result. The elements are set to 1, and the rest are set to 0; for any particle The element-corrected representation of the user selection matrix is ​​as follows:

[0058]

[0059] (.) represents the Sigmoid function; This represents Hadamard convolution (which is the element-wise multiplication of two vectors or matrices). Indicates the first The particle in the first The velocity components corresponding to the user selection matrix in the next iteration The row element; Indicates the first The particle in the first User selection matrix of the next iteration The row element;

[0060] Next, after the correction is completed, proceed to the next sub-step S403;

[0061] S403. Check whether the user selection matrix in the task unloading scheme of all particles satisfies the access point capacity constraint: if yes, complete the constraint check and set the current particle swarm population to a particle swarm population that meets the constraint; if not, further determine the corresponding particle... Any access point in the user selection matrix That is, the first Column allocation:

[0062] If particles In the user selection matrix, access point If the number of users allocated exceeds the maximum number of users allowed by the access point, then the sigmoid function is used to adjust the access point. The corresponding velocity vector is mapped, and the mapping result is element-wise multiplied with the user-selected matrix to obtain the product result.

[0063] Next, select the access point. Among the users, the indices corresponding to several minimum values ​​in the product result that are equal in number to the number of allowed users exceeding the access point are selected as an index set, the specific calculation of which is as follows:

[0064]

[0065] In the formula, Access point The corresponding set of indices has a total of indivual, The number of users allowed beyond the access point is specifically represented as: ; Indicates the first The particle in the first The velocity components corresponding to the user selection matrix in the next iteration The element in the j-th column; Indicates the first The particle in the first User selection matrix of the next iteration The element in the j-th column; This represents the maximum number of users allowed to access point j.

[0066] Next, the elements in the user selection matrix corresponding to the index set are transferred to the local execution task to complete the access point capacity constraint correction, which is specifically represented as follows: .

[0067] Accordingly, this invention performs out-of-bounds checks and corrections on the constraints of computing resource allocation, unique task access, and access point capacity in sequence. It designs a normalized redistribution mechanism and a task repair strategy based on probability mapping for continuous and discrete variables, respectively. This effectively solves the problems of solution infeasibility, constraint conflict, and fitness failure caused by variable out-of-bounds during particle update, and improves the feasibility of task unloading solutions, constraint compatibility, and overall convergence stability of the algorithm.

[0068] A task offloading and scheduling device for a multi-user multi-access point (MEC) includes a particle swarm initialization unit, a fitness calculation unit, a particle swarm update unit, a constraint checking unit, and an iteration condition judgment unit.

[0069] The particle swarm initialization unit is used to initialize the number of particles, the velocity vector of the particles, and the task unloading scheme to obtain an initial particle swarm population; wherein, the task unloading scheme includes a user selection matrix and a computing resource allocation matrix.

[0070] The fitness calculation unit is used to calculate the objective function value composed of energy consumption and latency penalty based on the cascaded channel information and noise power between the user and the access point, and in combination with the current task offloading scheme of the particle swarm population, to obtain the current particle swarm population and the corresponding fitness; wherein, the objective function composed of energy consumption and latency penalty is subject to several constraints, including computing resource limitation constraints, unique task access constraints, access point capacity constraints, and binary constraint of task offloading variables.

[0071] The particle swarm update unit is used to update the particle swarm based on the current particle swarm population and the corresponding fitness, so as to obtain the updated particle swarm population.

[0072] The constraint checking unit is used to check the constraint terms of the task unloading scheme in the updated particle swarm population to obtain a particle swarm population that meets the constraints; wherein, the constraint checking is used to check and correct the out-of-bounds constraints of computing resource allocation, unique task access constraints, and access point capacity constraints in sequence.

[0073] The iteration condition judgment unit is used to determine whether the globally optimal task unloading scheme of the particle swarm population that meets the constraints satisfies the iteration threshold: if yes, the iteration is completed, and the user's computing tasks are unloaded and allocated according to the globally optimal task unloading scheme to complete the unloading and scheduling of user tasks; if no, the fitness calculation unit is called again.

[0074] A multi-user, multi-access-point mobile edge computing system includes a base station and a task offloading and scheduling device that is communicatively connected to the base station;

[0075] The base station is equipped with several access points that are communicatively connected to the edge computing server. These access points are used to receive offload requests corresponding to computing tasks from user equipment, and to calculate the cascaded channel information and noise power between each user and each access point based on the computing task and its corresponding computing requirements. The information is then sent to the task offload scheduling device.

[0076] The task offloading scheduling device is the task offloading scheduling device of the multi-user multi-access point MEC described above.

[0077] To better understand and implement this invention, the following detailed description is provided in conjunction with the accompanying drawings. Attached Figure Description

[0078] Figure 1 A simplified diagram illustrating signal transmission in a mobile edge computing system;

[0079] Figure 2 This is a simplified structural diagram of the task offloading and scheduling device for a multi-user, multi-access point (MEC) system as described in this invention.

[0080] Figure 3 This is a simplified flowchart illustrating the task offloading and scheduling method for multi-user multi-access point MEC described in this invention.

[0081] Figure 4 This is a schematic diagram illustrating a comparison curve between the present invention and existing strategies such as all-local computation, all-remote computation, and random selection. Detailed Implementation

[0082] To address the problems of existing technologies using particle swarm optimization (PSO) for task offloading in MEC (Multi-access Edge Computation), such as difficulty in translating latency into explicit optimization constraints and the lack of suppression of particle out-of-bounds behavior, this invention initializes the particle swarm population by first determining the number of particles, their velocity connections, and the task offloading scheme. Then, based on the cascaded channel information and noise power between the user and the access point, and combined with the current particle swarm population's task offloading scheme, the objective function value consisting of energy consumption and latency penalties is calculated as the particle fitness, thus obtaining the current particle swarm population and its corresponding fitness. Finally, based on the current particle swarm population and its corresponding fitness... The fitness calculation inertia weight is used to update the particle velocity vector and task unloading scheme based on the inertia weight, resulting in an updated particle swarm population. A constraint check is performed on the task unloading schemes in the updated particle swarm population. If the constraint conditions are not met, the positions of the relevant particles are corrected. If the constraint conditions are met, it is further determined whether the current particle swarm population meets the iteration termination condition. If it does, the current task unloading scheme is output as the optimal solution to guide the user in allocating access points and computing resources for computational tasks. If it does not meet the condition, the process returns and continues with fitness calculation and subsequent optimization steps until convergence is achieved.

[0083] Accordingly, this invention constructs an objective function by jointly integrating the total system energy consumption with the task execution delay penalty term, thereby indirectly constructing delay constraints through the penalty term. Furthermore, it introduces a user selection matrix (discrete variable) and a computing resource allocation matrix (continuous variable) for collaborative optimization. This not only improves the adaptability of the offloading strategy to delay-sensitive tasks, but also further enhances the scheduling robustness of the system in complex network environments.

[0084] Furthermore, by introducing a multi-dimensional constraint term checking and correction mechanism, this invention effectively suppresses the out-of-bounds behavior that particles may exhibit during the iteration process, significantly improving the convergence stability and solution feasibility of the particle swarm algorithm in the MEC scenario.

[0085] Based on the above design, this invention proposes a task offloading and scheduling method for multi-user multi-access point MEC, and based on this method, proposes a task offloading and scheduling device for multi-user multi-access point MEC.

[0086] Please see Figure 1 , Figure 1 This is a simplified diagram of signal transmission in a mobile edge computing system.

[0087] A multi-user, multi-access point mobile edge computing system includes a user equipment 100, a base station 101, and a task offloading and scheduling device 102 of the multi-user, multi-access point (MEC) system described in this invention, which is communicatively connected to the base station.

[0088] The user equipment 100 is used to generate computing tasks, such as data processing, video streaming, IoT sensor data, etc., and send the computing tasks and corresponding computing requirements to the base station 101.

[0089] The base station 101 is provided with several access points 1011 (APs) that are connected to the edge computing server. These APs are used to calculate the cascaded channel information and noise power between each user and each access point according to the computing task and the corresponding computing requirements, and send them to the task offloading scheduling device 102 of the multi-user multi-access point MEC described in this invention.

[0090] Please also refer to Figure 2 and Figure 3 , Figure 2 This is a simplified structural diagram of the task offloading and scheduling device for a multi-user, multi-access point (MEC) system according to the present invention. Figure 3 This is a simplified flowchart illustrating the task offloading and scheduling method for multi-user multi-access point MEC described in this invention.

[0091] The task offloading and scheduling device 102 of the multi-user multi-access point MEC includes a particle swarm initialization unit 1, a fitness calculation unit 2, a particle swarm update unit 3, a constraint check unit 4, and an iteration condition judgment unit 5.

[0092] The particle swarm initialization unit 1 is used to execute step S1: initialize the number of particles, the velocity vector of the particles, and the task unloading scheme to obtain the initial particle swarm population.

[0093] Specifically, the particle swarm includes a task unloading scheme and particle velocity vectors, which are specifically represented as follows:

[0094]

[0095] In the formula, This represents the number of particles in the swarm, used to determine the coverage of the search space. Its default value is 50, which can be adjusted according to actual needs. This invention does not specifically limit this value.

[0096] Indicates the first The task unloading scheme of each particle in the 0th iteration, i.e., the particle's position vector, includes the user selection matrix and the computational resource allocation matrix, and its specific representation is as follows:

[0097]

[0098]

[0099] In the formula, Indicates the first The user selection matrix for particles in the 0th iteration is a set of binary variables, whose elements are... For unloading selection elements, used to indicate the first... Do individual users choose to uninstall the task to the first...? One access point; These represent the total number of users and the total number of access points, respectively.

[0100] For the first The computational resource allocation matrix for each particle in the 0th iteration, its elements For resource allocation elements, used to represent the first The edge server of the access point is assigned to the first... The frequency of task computation for each user, i.e., the allocated computing resources.

[0101] Among them, the user selection matrix and computational resource allocation matrix The initial value can be generated by a random variable that follows a certain distribution, such as a uniform distribution or a normal distribution. It can also be set by combining historical statistics or prior information of the system. In order to ensure that the initialization process has sufficient diversity and adaptability, thereby improving the coverage effect of the search space, different initialization methods can be adopted. This invention does not make specific limitations on this.

[0102] Indicates the first The velocity vector of a particle in the 0th iteration is used to control the movement trend of the particle in the multidimensional search space, the dimension of which is consistent with the task unloading scheme; for discrete variables, i.e. user selection matrix, the components of the velocity vector can be represented as the probability of state switching; for continuous variables, i.e. computational resource allocation matrix, the components of the velocity vector can be represented as the change in the particle's current position.

[0103] The initial value of the velocity vector can be generated by a random variable that follows a specific distribution (such as uniform distribution, normal distribution, etc.), or it can be assigned a value based on heuristic information. The specific choice can be made according to the actual deployment scenario. This invention does not impose specific limitations on the initialization method of velocity.

[0104] The fitness calculation unit 2 is used to perform step S2: based on the cascaded channel information and noise power between the user and the access point, and combined with the current particle swarm population's task offloading scheme, calculate the objective function value composed of the corresponding energy consumption and time delay penalty, and obtain the current particle swarm population and the corresponding fitness.

[0105] Specifically, for the first The particle in the first The task offloading scheme of the next iteration The specific calculation expression of the objective function consisting of energy consumption and time delay penalty is as follows:

[0106]

[0107] In the formula, Indicates the first The particle in the first The fitness of the task unloading scheme in the next iteration; Indicates the first The total energy consumption of the system corresponding to each particle is specifically calculated as follows:

[0108]

[0109] In the formula, Indicates the first The user selected the first The energy consumption of each access point during task unloading. Indicates the first The computational complexity coefficient of a user's task can be predefined by the task type or obtained through static analysis of the task. This represents the locally calculated energy consumption factor, and its default value is [value missing]. ; Indicates the first The task length for each user is either recorded directly when the task is generated or calculated from the size of the input data, and the unit is the total number of bits. Indicates the first The computing frequency of a user’s local device can be obtained from hardware performance parameters or read through the device information interface.

[0110] Indicates the first The uplink overhead coefficient for each user is used to compensate for the overhead of non-ideal factors such as control signaling and retransmissions in the actual link. It is usually set to a value of [value missing]. ; For the first The device transmit power of each user; Indicates the first The user and the first The transmission rate between access points is calculated as follows:

[0111]

[0112] In the formula, Indicates the first Channel bandwidth allocated to each access point; Indicates noise power; For the first The user and the first The cascaded channel information between access points, i.e., the cascaded channel gain, is calculated as follows:

[0113]

[0114] In the formula, This represents the path loss constant, which defaults to 0.1. Indicates the first The user and the first The distance between access points is specifically calculated based on the geometric positional relationship between the user equipment and the access point, or it can be obtained by inverse calculation from the signal strength. This invention does not specifically limit the method of calculating the distance. The gain of a small-scale fast fading channel follows a complex Gaussian distribution with mean 0 and variance 1, i.e. It is used to simulate the random amplitude fluctuations caused by the superposition of signals after they have traveled through different propagation paths in a multipath environment.

[0115] In the case of edge offloading, since access point servers are typically connected to a fixed power supply, their allocated computing resources... It is not included in the system energy consumption, that is, it does not participate. The calculation.

[0116] Indicates the delay penalty. As a penalty factor, the default. The unit is joules per second by default, and it is used to quantify the latency cost caused by exceeding the maximum tolerable latency of the task into an equivalent energy consumption term; Indicates the first The maximum tolerable latency for a user's task. Adaptive values ​​can be set according to specific task types or according to the application's Quality of Service (QoS) requirements;

[0117] Indicates the first The total execution latency of a user task is calculated as follows:

[0118]

[0119] In the formula, Indicates the first The user and the first The latency of connecting to each access point.

[0120] The objective function consisting of energy consumption and latency penalty has several constraints to ensure the feasibility of the task offloading scheme and the reasonable scheduling of system resources. These constraints include computing resource limitation constraints, unique task access constraints, access point capacity constraints, and binary constraints of task offloading variables.

[0121] The computing resource constraints are used to ensure access points To prevent resource overload, the total computing resources allocated to all users shall not exceed their maximum computing capacity. The expression for this is as follows:

[0122]

[0123] In the formula, Indicates the first The maximum available computing frequency resources for each access point can be preset through system hardware parameters or set by the edge server operator. This means that the node with the number 0 is excluded from the set of access point numbers, that is, the computing resource consumption of local devices is not considered, and only the actual deployed edge servers are constrained;

[0124] The unique access constraint for the task is used to ensure that each user's task must select one and only one compute node (local or access point) to perform task offloading, avoiding abnormal situations such as multiple connections or no allocation. Its expression is as follows:

[0125]

[0126] The access point capacity constraint limits the maximum number of users that can access each access point simultaneously at any given time, reflecting the connection capacity and wireless resource scheduling capability of the edge device. Its expression is as follows:

[0127]

[0128] In the formula, Indicates the first The maximum number of users allowed to access a single access point can be preset through system hardware parameters or set by the edge server operator.

[0129] The binary constraint on the task unloading variable is used to ensure that the task unloading selection variable conforms to Boolean logic, and its expression is as follows:

[0130]

[0131] The particle swarm update unit 3 is used to perform step S3: update the particle swarm according to the current particle swarm population and the corresponding fitness to obtain the updated particle swarm population.

[0132] Specifically, for the first The particle in the first The current task offloading scheme in the next iteration In its first The update rule for the next iteration is expressed as follows:

[0133]

[0134] In the formula, Indicates the first Is the user in the [number]th ... In the next iteration, the task will be unloaded to the [number]th [item]. The access point, i.e. the th access point User selection matrix of individual particles Corresponding elements ; To allow users to select elements of the matrix The corresponding velocity component is used to represent this element. The switching probability; To obey A random variable that is uniformly distributed across an interval; This is the Sigmoid function, used to map velocity values ​​to switching probabilities;

[0135] Indicates the first The particle in the first The computational resource allocation matrix for the next iteration; To be compatible with the computing resource allocation matrix The corresponding velocity components, each of which is used to control the computational resource allocation matrix. The direction and extent of the update.

[0136] Among them, for the first The particle in the first The velocity vector of the next iteration In its first The update rule for the next iteration is expressed as follows:

[0137]

[0138] In the formula, Indicates the first The particle in the first The next iteration and the user selection matrix The corresponding velocity components; Indicates the first The particle in the first The next iteration and the computational resource allocation matrix The corresponding velocity components; This is an individual cognitive term used to represent the particle's own thinking; The learning factor represents the individual extreme value and is used to control the step size by which a particle approaches its historical best position vector. Its initial value is 1.5 by default. A random factor for individual extreme values ​​is used to introduce search perturbations to prevent getting trapped in local optima; it follows... Uniform distribution; The optimal task unloading scheme for an individual is used to represent the i-th particle in the current iteration of the particle swarm population. The task unloading scheme for each particle when it obtains the minimum fitness in the historical iterations will be updated after each fitness calculation.

[0139] This is a social term used to represent information sharing and cooperation among particles; The learning factor, representing the group extremum, is used to control the step size by which a particle approaches the optimal position vector among all particles in history. The random factor representing the extreme value of the population follows a set rule. Uniform distribution; For the first The global optimal task unloading scheme for the next iteration is used to represent the task unloading scheme that obtains the minimum fitness among all particles in the particle swarm population in the current iteration. It will be updated once after each fitness calculation.

[0140] For inertia, For the current number The particle in the first The adaptive inertia weight in the next iteration is used to control the search breadth of the particle in the search space. The value of the inertia weight is adaptively adjusted by the current particle's fitness function value, and its specific calculation is expressed as follows:

[0141]

[0142] In the formula, and These are the minimum and maximum values ​​of the inertia weight, used to control the range of the solution space search. Their default values ​​are 0.4 and 0.8. Indicates the first The maximum fitness of all particles in the next iteration is used to represent the fitness of the worst particle. Indicates the first The average fitness of all particles in the next iteration.

[0143] Accordingly, when the fitness of a particle is greater, the adaptive inertial weight will expand the search range, thereby encouraging the particle to jump towards the optimal solution; when the fitness of a particle is smaller, the adaptive inertial weight will narrow the search range, thereby guiding the particle to converge locally.

[0144] The constraint checking unit 4 is used to perform step S4: to check the constraint terms of the task unloading scheme in the updated particle swarm population and obtain a particle swarm population that meets the constraints.

[0145] Specifically, the constraint check is used to sequentially check and correct out-of-bounds constraints on computing resource allocation, unique task access, and access point capacity constraints, and includes the following sub-steps:

[0146] S401. Check whether the computing frequency allocated to all users by each access point complies with the computing resource allocation constraints: if yes, proceed to the next sub-step S402; if no, perform normalization correction processing and proceed to the next sub-step S402, the specific correction being as follows:

[0147]

[0148] S402. Check whether the user selection matrix in the task unloading scheme of all particles satisfies the unique access constraint of the task: if yes, proceed to the next sub-step S403; if no, further determine the corresponding particle. Any user in the user selection matrix That is, the first Row selection:

[0149] If particles In the user selection matrix, a certain user If no access point is selected (i.e., the sum of the elements in this row is 0), then the Sigmoid function is used to apply the error to the user. Map the corresponding velocity vectors to obtain the connection probability vectors, and then use the user selection matrix corresponding to the maximum probability value. The elements are set to 1, and the rest are set to 0; for any particle In the User selection matrix of the next iteration elements The correction is as follows:

[0150]

[0151] In the formula, This indicates the maximum value index retrieval item, used to extract the column index corresponding to the largest element in the velocity row components mapped by the sigmoid function. ; The first part used to represent the user selection matrix The velocity row component corresponding to the row vector;

[0152] If in the user selection matrix of a particle, a certain user If multiple access points are selected (the sum of the elements in this row is greater than 1), then the sigmoid function will be used to apply the data to the user. The corresponding velocity vector is mapped, and the mapping result is compared with the user selection matrix. Perform element-wise multiplication and find the user selection matrix corresponding to the maximum value in the product result. The elements are set to 1, and the rest are set to 0; for any particle The element-corrected representation of the user selection matrix is ​​as follows:

[0153]

[0154] (.) represents the Sigmoid function; This represents Hadamard convolution, which is the element-wise multiplication of two vectors or matrices. Indicates the first The particle in the first The velocity components corresponding to the user selection matrix in the next iteration The row element; Indicates the first The particle in the first User selection matrix of the next iteration The element in the i-th row;

[0155] Next, after the correction is completed, the next sub-step S403 is executed.

[0156] S403. Check whether the user selection matrix in the task unloading scheme of all particles satisfies the access point capacity constraint: if yes, complete the constraint check and set the current particle swarm population to a particle swarm population that meets the constraint; if not, further determine the corresponding particle... Any access point in the user selection matrix That is, the first Column allocation:

[0157] If particles In the user selection matrix, access point There are more users assigned than the maximum number of users allowed to access the access point (the sum of the elements in this column exceeds...). Then, the sigmoid function is used to access the point. The corresponding velocity vector is mapped, and the mapping result is multiplied element-wise (Hadamard) with the user-selected matrix to obtain the product result;

[0158] Next, select the access point. Among the users, the indices corresponding to several minimum values ​​in the product result that are equal in number to the number of allowed users exceeding the access point are selected as an index set, the specific calculation of which is as follows:

[0159]

[0160] In the formula, Access point The corresponding index set is used to represent the index of the user selection matrix. The column has several row indexes, the total number of which is indivual, The number of users allowed beyond the access point is specifically represented as: ; Indicates the first The particle in the first The velocity components corresponding to the user selection matrix in the next iteration The element in the j-th column; Indicates the first The particle in the first User selection matrix of the next iteration The element in the j-th column; This represents the maximum number of users allowed to access point j. This indicates the minimum value index retrieval item, used to extract the row index corresponding to the smallest element in the product result. Since the elements of the velocity vector are usually not strictly zero, and even if they are close to zero, they can still maintain a reasonable probability distribution after being mapped by the Sigmoid function, the user's selection of elements with a value of 0 in the matrix will not affect the subsequent constraint correction.

[0161] Next, the elements in the user selection matrix corresponding to the index set are transferred to the local execution task to complete the access point capacity constraint correction. The specific calculation is as follows:

[0162]

[0163] Accordingly, when correcting access point capacity constraints, this invention only applies to users already allocated to the current access point (i.e., ...). In cases where the connection probability after Sigmoid mapping is used, excess users are selected to ensure the rationality of the correction logic and the physical consistency of the allocation action.

[0164] The iteration condition judgment unit 5 is used to execute step S5: determine whether the globally optimal task unloading scheme of the particle swarm population that meets the constraints satisfies the iteration threshold; if yes, then complete the iteration, unload and allocate the user's computing tasks according to the globally optimal task unloading scheme, and complete the unloading and scheduling of the user's tasks; if no, then re-call the fitness calculation unit 2.

[0165] Specifically, the judgment expression for the iteration threshold is as follows:

[0166]

[0167] In the formula, This represents the absolute difference between the fitness value of the globally optimal task unloading scheme in the current iteration and the fitness value of the globally optimal task unloading scheme in the previous iteration. It is used to determine the magnitude of the change in the globally optimal solution and thus whether it has converged. The iteration threshold is used to determine whether the global fitness is stable between consecutive iterations. The smaller the value, the more stringent the convergence judgment. The default value in this invention is 0.01, but it can also be customized according to the accuracy requirements of the task. This invention does not specifically limit it.

[0168] It should be noted that, in order to prevent the particle swarm from failing to converge but continuing to run in extreme cases, a maximum number of iterations can be introduced as an additional termination condition on the basis of the above, thereby improving the efficiency and stability of the algorithm. This invention does not specifically limit the choice of the iteration termination condition introduced.

[0169] Compared with existing technologies, this invention constructs the total system energy consumption and task execution latency as joint optimization objectives, and uses the task offloading selection matrix (discrete variable) and the computing resource allocation matrix (continuous variable) as collaborative optimization variables, so that the particle swarm algorithm can simultaneously seek optimization in both task scheduling and computing resource allocation dimensions, thereby generating a high-quality task offloading strategy that can simultaneously meet energy efficiency and latency constraints.

[0170] Meanwhile, in order to solve the out-of-bounds problem caused by the expansion of the range of continuous variables during collaborative optimization, and the task allocation overlap conflict caused by the dual row and column constraints of multi-user multi-access point offloading decision in the two-dimensional scheduling matrix, this invention significantly improves the feasibility of particle update results and the overall convergence stability of the algorithm in the multi-user multi-access point MEC environment by sequentially checking and correcting three types of constraints: computing resource limitation, unique task access, and access point capacity.

[0171] Please also refer to Figure 4 , Figure 4 This is a schematic diagram illustrating the comparison curves between the present invention and existing strategies such as all-local computing, all-remote computing, and random selection. The offloading scheduling method proposed in this invention maintains a low total system energy consumption level even when the number of users gradually increases.

[0172] Based on the same inventive concept, this application also provides an electronic device, which can be a server, a desktop computing device, or a mobile computing device (e.g., a laptop computing device, a handheld computing device, a tablet computer, a netbook, etc.). This device includes one or more processors and a memory, wherein the processor is used to execute a program to implement the task offloading and scheduling method of the multi-user multi-access point (MEC) according to embodiments of the present invention; the memory is used to store computer programs executable by the processor.

[0173] Based on the same inventive concept, this application also provides a computer-readable storage medium corresponding to the aforementioned embodiment of a task offloading scheduling method for a multi-user multiple access point (MEC) system. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, implements the steps of the task offloading scheduling method for a multi-user multiple access point (MEC) system described in any of the above embodiments.

[0174] This application may take the form of a computer program product implemented on one or more storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing program code. Computer storage media include permanent and non-permanent, removable and non-removable media, and information storage can be implemented by any method or technology. Information may be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to: phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transfer medium that can be used to store information accessible by a computing device.

[0175] The embodiments described above are merely examples of several implementations of the present invention, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the invention. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of the present invention, and the present invention also intends to include these modifications and variations.

Claims

1. A method for task offloading scheduling of multi-user multi-access point MEC, characterized in that, Includes the following steps: S1. Initialize the number of particles, the velocity vector of the particles, and the task unloading scheme to obtain the initial particle swarm population; wherein, the task unloading scheme includes a user selection matrix and a computing resource allocation matrix; S2. Based on the cascaded channel information and noise power between the user and the access point, and combined with the current task offloading scheme of the particle swarm population, calculate the objective function value composed of energy consumption and latency penalty to obtain the current particle swarm population and its corresponding fitness; wherein, the objective function composed of energy consumption and latency penalty is subject to several constraints, including computational resource limitation constraints, unique task access constraints, access point capacity constraints, and binary constraint of task offloading variables. S3. Update the particle swarm based on the current particle swarm population and its corresponding fitness to obtain the updated particle swarm population. S4. Perform constraint checks on the task unloading scheme in the updated particle swarm population to obtain a particle swarm population that meets the constraints; wherein, the constraint check is used to sequentially check and correct the out-of-bounds constraints of computing resource allocation, unique task access constraints, and access point capacity constraints. S5. Determine whether the globally optimal task unloading scheme of the particle swarm population that meets the constraints satisfies the iteration threshold: if yes, complete the iteration, unload and allocate the user's computational tasks according to the globally optimal task unloading scheme, and complete the unloading and scheduling of the user's tasks; if no, repeat step S2; wherein, the globally optimal task unloading scheme is used to represent the task unloading scheme that obtains the minimum fitness among all particles in the particle swarm population in the current iteration.

2. The task offloading and scheduling method for multi-user multi-access point MEC according to claim 1, characterized in that, For the In the particle swarm population of the next iteration Task unloading scheme for each particle The specific calculation expression of the objective function consisting of energy consumption and time delay penalty is as follows: In the formula, Indicates the first The particle in the first The fitness of the task unloading scheme in the next iteration. Indicates the first The particle in the first The task offloading scheme for the next iteration, i.e., the particle position vector, includes the user selection matrix and the computational resource allocation matrix, and its specific representation is as follows: In the formula, Indicates the first The particle in the first The user selection matrix of the next iteration, its elements Select elements for uninstallation; These represent the total number of users and the total number of access points, respectively. For the first The particle in the first The computational resource allocation matrix of the next iteration, its elements Allocate elements to resources; Indicates the first The total energy consumption of the system corresponding to each particle is specifically calculated as follows: In the formula, Indicates the first The user selected the first The energy consumption of each access point during task unloading. Indicates the first The computational complexity coefficient for each user's task; Indicates the locally calculated energy consumption coefficient; Indicates the first Task length per user; Indicates the first The computing frequency of a user's local device; Indicates the first Uplink overhead coefficient for each user; For the first The device transmit power of each user; Indicates the first The user and the first The transmission rate between access points is calculated as follows: In the formula, Indicates the first Channel bandwidth allocated to each access point; Indicates noise power; For the first The user and the first The cascaded channel information between access points, i.e., the cascaded channel gain, is calculated as follows: In the formula, This represents the path loss constant; Indicates the first The user and the first The distance between access points; For small-scale fast fading channel gain; Indicates the delay penalty. As a penalty factor; Indicates the first Maximum tolerable latency for a user's task; Indicates the first The total execution latency of a user task is calculated as follows: In the formula, Indicates the first The user and the first The latency of connecting to each access point.

3. The task offloading and scheduling method for multi-user multi-access point MEC according to claim 2, characterized in that, For the In the particle swarm population of the next iteration Task unloading scheme for each particle In its first The update rule for the next iteration is expressed as follows: In the formula, Indicates the first Is the user in the [number]th ... In the next iteration, the task will be unloaded to the [number]th [item]. The access point, i.e. the th access point User selection matrix of individual particles Corresponding elements ; To obey A random variable that is uniformly distributed across an interval; To allow users to select elements of the matrix The corresponding velocity components; For the Sigmoid function; Indicates the first The particle in the first The computational resource allocation matrix for the next iteration; To be compatible with the computing resource allocation matrix The corresponding velocity component.

4. The task offloading and scheduling method for multi-user multi-access point MEC according to claim 3, characterized in that, For the In the particle swarm population of the next iteration The velocity vector corresponding to each particle In its first The update rule for the next iteration is expressed as follows: In the formula, Indicates the first The particle in the first The next iteration and the user selection matrix The corresponding velocity components; Indicates the first The particle in the first The next iteration's computational resource allocation matrix The corresponding velocity components; The learning factor represents the individual's extreme value; A random factor for an individual's extreme value, which follows Uniform distribution; The optimal task unloading solution for each individual; The learning factor represents the group's extreme value; The random factor representing the extreme value of the population follows a set rule. Uniform distribution; For the first The globally optimal task unloading scheme for the next iteration; For the current number The particle in the first The adaptive inertia weight for the next iteration is calculated as follows: In the formula, and These represent the minimum and maximum values ​​of the inertia weight; Indicates the first The maximum fitness of all particles in the next iteration; Indicates the first The average fitness of all particles in the next iteration.

5. The task offloading and scheduling method for multi-user multi-access point MEC according to claim 4, characterized in that, The constraint check includes the following sub-steps: S401. Check whether the computing frequency allocated to all users by each access point complies with the computing resource allocation constraints: if yes, proceed to the next sub-step S402; if no, perform normalization correction processing and proceed to the next sub-step S402, the specific correction being as follows: In the formula, Indicates the first The maximum available computing frequency resources for each access point; S402. Check whether the user selection matrix in the task unloading scheme of all particles satisfies the task unique access constraint: if yes, proceed to the next sub-step S403; if no, further determine the corresponding particle. Any user in the user selection matrix That is, the first Row selection: If particles In the user selection matrix, a certain user If no access point is selected, the Sigmoid function is used to evaluate the user's settings. Map the corresponding velocity vectors to obtain the connection probability vectors, and then use the user selection matrix corresponding to the maximum probability value. The elements are set to 1, and the rest are set to 0; for any particle In the User selection matrix of the next iteration elements The correction is as follows: In the formula, This indicates the item retrieved by its maximum index. Indicates the first The particle in the first The velocity components corresponding to the user selection matrix in the next iteration The row element; If in the user selection matrix of a particle, a certain user If multiple access points are selected, the sigmoid function is used to apply the changes to the user. The corresponding velocity vector is mapped, and the mapping result is compared with the user selection matrix. Perform element-wise multiplication and find the user selection matrix corresponding to the maximum value in the product result. The elements are set to 1, and the rest are set to 0; for any particle The element-corrected representation of the user selection matrix is ​​as follows: (.) represents the Sigmoid function; This represents Hadamard convolution, which is the element-wise multiplication of two vectors or matrices. Indicates the first The particle in the first The velocity components corresponding to the user selection matrix in the next iteration The row element; Indicates the first The particle in the first User selection matrix of the next iteration The row element; Next, after the correction is completed, proceed to the next sub-step S403; S403. Check whether the user selection matrix in the task unloading scheme of all particles satisfies the access point capacity constraint: if yes, complete the constraint check and set the current particle swarm population to a particle swarm population that meets the constraint; if not, further determine the corresponding particle... Any access point in the user selection matrix That is, the first Column allocation: If particles In the user selection matrix, access point If the number of users allocated exceeds the maximum number of users allowed by the access point, then the sigmoid function is used to adjust the access point. The corresponding velocity vector is mapped, and the mapping result is element-wise multiplied with the user-selected matrix to obtain the product result. Next, select the access point. Among the users, the indices corresponding to several minimum values ​​in the product result that are equal in number to the number of allowed users exceeding the access point are selected as an index set, the specific calculation of which is as follows: In the formula, Access point The corresponding set of indices has a total of indivual, The number of users allowed beyond the access point is specifically represented as: ; Indicates the first The particle in the first The velocity components corresponding to the user selection matrix in the next iteration The element in the j-th column; Indicates the first The particle in the first User selection matrix of the next iteration The element in the j-th column; This represents the maximum number of users allowed to access point j. Next, the elements in the user selection matrix corresponding to the index set are transferred to the local execution task to complete the access point capacity constraint correction, which is specifically represented as follows: .

6. A task offloading and scheduling device for a multi-user, multi-access point (MEC) system, characterized in that, It includes a particle swarm initialization unit, a fitness calculation unit, a particle swarm update unit, a constraint checking unit, and an iteration condition judgment unit; The particle swarm initialization unit is used to initialize the number of particles, the velocity vector of the particles, and the task unloading scheme to obtain an initial particle swarm population; wherein, the task unloading scheme includes a user selection matrix and a computing resource allocation matrix. The fitness calculation unit is used to calculate the objective function value composed of energy consumption and latency penalty based on the cascaded channel information and noise power between the user and the access point, and in combination with the current task offloading scheme of the particle swarm population, to obtain the current particle swarm population and the corresponding fitness; wherein, the objective function composed of energy consumption and latency penalty is subject to several constraints, including computing resource limitation constraints, unique task access constraints, access point capacity constraints, and binary constraint of task offloading variables. The particle swarm update unit is used to update the particle swarm based on the current particle swarm population and the corresponding fitness, so as to obtain the updated particle swarm population. The constraint checking unit is used to check the constraint terms of the task unloading scheme in the updated particle swarm population to obtain a particle swarm population that meets the constraints; wherein, the constraint checking is used to check and correct the out-of-bounds constraints of computing resource allocation, unique task access constraints, and access point capacity constraints in sequence. The iteration condition judgment unit is used to determine whether the globally optimal task unloading scheme of the particle swarm population that meets the constraints satisfies the iteration threshold: if yes, the iteration is completed, and the user's computational tasks are unloaded and allocated according to the globally optimal task unloading scheme to complete the unloading and scheduling of user tasks; if no, the fitness calculation unit is called again; wherein, the globally optimal task unloading scheme is used to represent the task unloading scheme that obtains the minimum fitness among all particles in the particle swarm population in the current iteration.

7. The task offloading and scheduling device for a multi-user, multi-access point (MEC) system according to claim 6, characterized in that, For the In the particle swarm population of the next iteration Task unloading scheme for each particle The specific calculation expression of the objective function consisting of energy consumption and time delay penalty is as follows: In the formula, Indicates the first The particle in the first The fitness of the task unloading scheme in the next iteration. Indicates the first The particle in the first The task offloading scheme for the next iteration, i.e., the particle position vector, includes the user selection matrix and the computational resource allocation matrix, and its specific representation is as follows: In the formula, Indicates the first The particle in the first The user selection matrix of the next iteration, its elements Select elements for uninstallation; These represent the total number of users and the total number of access points, respectively. For the first The particle in the first The computational resource allocation matrix of the next iteration, its elements Allocate elements to resources; Indicates the first The total energy consumption of the system corresponding to each particle is specifically calculated as follows: In the formula, Indicates the first The user selected the first The energy consumption of each access point during task unloading. Indicates the first The computational complexity coefficient for each user's task; Indicates the locally calculated energy consumption coefficient; Indicates the first Task length per user; Indicates the first The computing frequency of a user's local device; Indicates the first Uplink overhead coefficient for each user; For the first The device transmit power of each user; Indicates the first The user and the first The transmission rate between access points is calculated as follows: In the formula, Indicates the first Channel bandwidth allocated to each access point; Indicates noise power; For the first The user and the first The cascaded channel information between access points, i.e., the cascaded channel gain, is calculated as follows: In the formula, This represents the path loss constant; Indicates the first The user and the first The distance between access points; For small-scale fast fading channel gain; Indicates the delay penalty. As a penalty factor; Indicates the first Maximum tolerable latency for a user's task; Indicates the first The total execution latency of a user task is calculated as follows: In the formula, Indicates the first The user and the first The latency of connecting to each access point.

8. The task offloading and scheduling device for a multi-user, multi-access point (MEC) system according to claim 7, characterized in that, For the In the particle swarm population of the next iteration Task unloading scheme for each particle In its first The update rule for the next iteration is expressed as follows: In the formula, Indicates the first Is the user in the [number]th ... In the next iteration, the task will be unloaded to the [number]th [item]. The access point, i.e. the th access point User selection matrix of individual particles Corresponding elements ; To obey A random variable that is uniformly distributed across an interval; To allow users to select elements of the matrix The corresponding velocity components; For the Sigmoid function; Indicates the first The particle in the first The computational resource allocation matrix for the next iteration; To be compatible with the computing resource allocation matrix The corresponding velocity components; Among them, for the first In the particle swarm population of the next iteration The velocity vector corresponding to each particle In its first The update rule for the next iteration is expressed as follows: In the formula, Indicates the first The particle in the first The next iteration and the user selection matrix The corresponding velocity components; Indicates the first The particle in the first The next iteration's computational resource allocation matrix The corresponding velocity components; The learning factor represents the individual's extreme value; A random factor for an individual's extreme value, which follows Uniform distribution; The optimal task unloading solution for each individual; The learning factor represents the group's extreme value; The random factor representing the extreme value of the population follows a set rule. Uniform distribution; For the first The globally optimal task unloading scheme for the next iteration; For the current number The particle in the first The adaptive inertia weight for the next iteration is calculated as follows: In the formula, and These represent the minimum and maximum values ​​of the inertia weight; Indicates the first The maximum fitness of all particles in the next iteration; Indicates the first The average fitness of all particles in the next iteration.

9. The task offloading and scheduling device for a multi-user, multi-access point (MEC) system according to claim 8, characterized in that, The constraint check includes the following sub-steps: S401. Check whether the computing frequency allocated to all users by each access point complies with the computing resource allocation constraints: if yes, proceed to the next sub-step S402; if no, perform normalization correction processing and proceed to the next sub-step S402, the specific correction being as follows: In the formula, Indicates the first The maximum available computing frequency resources for each access point; S402. Check whether the user selection matrix in the task unloading scheme of all particles satisfies the task unique access constraint: if yes, proceed to the next sub-step S403; if no, further determine the corresponding particle. Any user in the user selection matrix That is, the first Row selection: If particles In the user selection matrix, a certain user If no access point is selected, the Sigmoid function is used to evaluate the user's settings. Map the corresponding velocity vectors to obtain the connection probability vectors, and then use the user selection matrix corresponding to the maximum probability value. The elements are set to 1, and the rest are set to 0; for any particle In the User selection matrix of the next iteration elements The correction is as follows: In the formula, This indicates the item retrieved by its maximum index. Indicates the first The particle in the first The velocity components corresponding to the user selection matrix in the next iteration The row element; If in the user selection matrix of a particle, a certain user If multiple access points are selected, the sigmoid function is used to apply the changes to the user. The corresponding velocity vector is mapped, and the mapping result is compared with the user selection matrix. Perform element-wise multiplication and find the user selection matrix corresponding to the maximum value in the product result. The elements are set to 1, and the rest are set to 0; for any particle The element-corrected representation of the user selection matrix is ​​as follows: (.) represents the Sigmoid function; This represents Hadamard convolution, which is the element-wise multiplication of two vectors or matrices. Indicates the first The particle in the first The velocity components corresponding to the user selection matrix in the next iteration The row element; Indicates the first The particle in the first User selection matrix of the next iteration The element in the i-th row; Next, after the correction is completed, proceed to the next sub-step S403; S403. Check whether the user selection matrix in the task unloading scheme of all particles satisfies the access point capacity constraint: if yes, complete the constraint check and set the current particle swarm population to a particle swarm population that meets the constraint; if not, further determine the corresponding particle... Any access point in the user selection matrix That is, the first Column allocation: If particles In the user selection matrix, access point If the number of users allocated exceeds the maximum number of users allowed by the access point, then the sigmoid function is used to adjust the access point. The corresponding velocity vector is mapped, and the mapping result is element-wise multiplied with the user-selected matrix to obtain the product result. Next, select the access point. Among the users, the indices corresponding to several minimum values ​​in the product result that are equal in number to the number of allowed users exceeding the access point are selected as an index set, the specific calculation of which is as follows: In the formula, Access point The corresponding set of indices has a total of indivual, The number of users allowed beyond the access point is specifically represented as: ; Indicates the first The velocity components of the particles in the (t+1)th iteration corresponding to the user-selected matrix. The element in the j-th column; Indicates the first The particle in the first User selection matrix of the next iteration The element in the j-th column; This represents the maximum number of users allowed to access point j. Next, the elements in the user selection matrix corresponding to the index set are transferred to the local execution task to complete the access point capacity constraint correction, which is specifically represented as follows: .

10. A multi-user, multi-access-point mobile edge computing system, characterized in that, This includes base stations and task offloading and scheduling devices that communicate with the base stations; The base station is equipped with several access points that communicate with the edge computing server. These access points are used to receive offload requests corresponding to computing tasks from user equipment, and to calculate the cascaded channel information and noise power between each user and each access point based on the computing task and its corresponding computing requirements. The information is then sent to the task offload scheduling device. The task offloading scheduling device is the task offloading scheduling device for a multi-user multi-access point MEC as described in any one of claims 6-9.

Citation Information

Patent Citations

  • Calculation unloading method based on PSO-DE algorithm

    CN113590211A

  • Task unloading method for edge computing

    CN114564304A