A workflow optimization scheduling method based on improved ciona savignii algorithm
By improving the tunic algorithm and combining failure factors and chaos theory to optimize population initialization and updating, the reliability and latency issues of workflow scheduling in edge computing are solved, and efficient and reliable task scheduling is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HANGZHOU DIANZI UNIV
- Filing Date
- 2022-10-14
- Publication Date
- 2026-06-26
AI Technical Summary
Existing workflow scheduling algorithms suffer from low reliability, high latency, long task processing time, and poor adaptability to multi-task processing in edge computing. They are also prone to getting stuck in local searches, resulting in slow convergence.
The improved tunic algorithm optimizes population initialization and individual updates by defining a failure factor and fitness function for workflow scheduling, combining chaos theory with update algorithms, thereby improving global search speed and enhancing the algorithm's reliability and convergence.
It achieves efficient and reliable task scheduling in edge computing environments, reduces server latency, improves the robustness of task processing and global search capabilities, and obtains the optimal workflow scheduling scheme.
Smart Images

Figure CN115562833B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of mobile edge computing environment technology, and in particular relates to a workflow optimization scheduling method based on an improved tunic algorithm. Background Technology
[0002] In recent years, edge computing has gained significant traction in the technology field due to its outstanding performance in practical data processing, low operating costs, and good adaptability. However, edge computing still faces many challenges in data acquisition and processing. With evolving user demands, applications on user devices require stringent quality of service standards, i.e., reliability requirements; and handling data transmitted from the internet and other applications requires substantial network, processing, and memory resources. Edge computing operations are typically planned by offloading computationally heavy tasks from edge-based devices to edge-based servers. Servers are prone to failure when sharing and processing resources, and these failures significantly impact the reliability of workflow scheduling. Furthermore, because different task requirements correspond to various resource devices, problems such as slow service response times, long task processing times, incompatibility with multitasking, and heterogeneous resources lead to low service efficiency in task offloading strategies.
[0003] How to propose a task scheduling strategy with high reliability and low latency is an important issue. Most current workflow scheduling algorithms have limitations due to their inherent behavior, such as getting stuck in local search and failing to obtain an approximate global solution, as well as slow convergence speed. They have many shortcomings when dealing with complex problems.
[0004] This study addresses the problems existing in current workflow scheduling algorithms, aiming to improve their effectiveness, overcome their shortcomings, and enhance their convergence speed. Summary of the Invention
[0005] The first objective of this invention is to address the shortcomings of current workflow scheduling by providing a workflow optimization scheduling method based on an improved *Turtle of the Sea* algorithm. This method considers the latency and reliability issues in workflow scheduling, defines a workflow scheduling failure factor using a reliability model, and uses the weighted sum of latency and failure factor as a fitness function to evaluate workflow scheduling schemes. Furthermore, the *Turtle of the Sea* algorithm is improved by selecting the optimal population from multiple generated populations during population initialization using the population's standard deviation. When updating individuals in the population, chaos theory is combined with the update algorithm, using chaotic mapping to replace different methods of pseudo-random sequences. A chaotic mechanism is proposed to update the leader and followers, improving the algorithm's global search speed in the potential search region, increasing the speed of the algorithm's search towards the optimal workflow scheduling scheme, minimizing edge server latency, and improving task scheduling reliability, ultimately obtaining the optimal workflow scheduling scheme.
[0006] To address the existing technical problems, the technical solution of the present invention is as follows:
[0007] A workflow optimization scheduling method based on an improved tunic algorithm includes the following steps:
[0008] Step (1): Define the workflow and server in the edge environment.
[0009] The workflow executed on the system is a directed acyclic graph (DAG) G = {T, E}.
[0010] Step (2): Establish a time model.
[0011] Step (3): Establish a reliability model.
[0012] Step (4): Establish a failure model.
[0013] Step (5): Encode the server locations assigned to all tasks in the workflow to generate a scheduling sequence.
[0014] Step (6): Initialize the population.
[0015] Step (7): Fitness calculation.
[0016] Step (8): The workflow scheduling scheme is updated iteratively to construct the optimal workflow scheduling scheme. The specific steps are as follows:
[0017] Step (8.1): Initialize the leader, followers, and food.
[0018] Step (8.2): Update the chaos map.
[0019] Step (8.3): Update the individual salps.
[0020] Step (8.4): Determine if the termination condition has been met. If the workflow scheduling scheme reaches the maximum number of iterations Q, terminate the iteration and output the optimal workflow scheduling scheme; otherwise, return to step (8.2).
[0021] A second object of the present invention is to provide a computer-readable storage medium having a computer program stored thereon, which, when executed in a computer, causes the computer to perform the method described thereon.
[0022] A second object of the present invention is to provide a computing device including a memory and a processor, wherein the memory stores executable code, and the processor executes the executable code to implement the method described herein.
[0023] Compared with the prior art, the present invention has the following beneficial effects:
[0024] Efficiency: This invention improves the structure of the original algorithm by modifying the population initialization strategy during population initialization. It utilizes the fitness standard deviation to statistically analyze individual populations, balancing exploration and development during the search process. More importantly, when updating the population, it classifies individuals and uses a chaotic mechanism to update individuals of different categories, improving the algorithm's convergence speed and global search mobility, achieving globally robust optimization. Therefore, this invention uses an improved tunic algorithm to iteratively explore the search space and ultimately obtain the optimal workflow scheduling scheme.
[0025] Robustness: This invention comprehensively considers the impact of time and reliability on workflow scheduling schemes when searching for such schemes. To reduce the failure rate, a failure factor (SFF) is set using a reliability model, and its weighted function with time is used as a fitness function to evaluate workflow scheduling schemes. This improves both the execution efficiency and the robustness of workflow execution. Attached Figure Description
[0026] Figure 1 A system framework diagram of a workflow optimization scheduling method based on an improved tunic algorithm provided by this invention;
[0027] Figure 2 The flowchart of a workflow optimization scheduling method based on an improved tunic algorithm provided by this invention is shown below.
[0028] Figure 3 This is a graph showing the changes in chaotic mapping values in the algorithm of this invention;
[0029] Figure 4 This is a comparison chart of the latency of the present invention and three other algorithms under different fitness weights;
[0030] Figure 5 This is a comparison chart of the reliability of the present invention and three other algorithms under different fitness weights;
[0031] Figure 6 This is a comparison chart of the convergence of the present invention with the other three algorithms; Detailed Implementation
[0032] The following detailed description, in conjunction with the accompanying drawings, will further illustrate the present invention.
[0033] Figure 1 A system framework diagram for a workflow optimization scheduling method based on the tunic algorithm in a mobile edge environment is presented. First, a workflow is generated based on the tasks sent by users to the edge server. Second, a fitness function is established by modeling the system. Then, the workflow scheduling algorithm of this invention is used to generate a workflow scheduling scheme that satisfies the constraints. Finally, tasks are moved to the corresponding servers for execution according to the scheduling scheme.
[0034] See Figure 2 The diagram shows a workflow optimization scheduling method based on the tunic algorithm in a mobile edge environment according to the present invention, which specifically includes the following steps:
[0035] Step (1): Define the workflow and server in the edge environment.
[0036] The workflow executed on the system is a directed acyclic graph (DAG) G = {T, E}, where T = {t1, t2, ..., t}. n} represents the set of tasks, where n is the number of tasks; E = {t} i , t j d ij |t i , t j Let ∈T, i≠j} be a set of directed edges, representing the dependencies between tasks, and the subsequent task t j In its precursor mission t i Execute after completion, d ij Represents task t i With task t j The amount of data transferred between them.
[0037] Let t entry This indicates a mission without a precursor mission, t exit This indicates a task that has no successor. Task t i The set of predecessor and successor tasks is specifically represented as follows:
[0038] PRED(t i )={t j |t j ∈T,(t i , t jEquation (1) ∈ E
[0039] SUCC(t i )={t k |t k ∈T,(t i , t k Equation (2) ∈ E
[0040] Since edge servers provide computing services for workflows, the server set S = {s1, s2, ..., s} can be obtained. m}, where m represents the number of servers. The computing power of the edge servers is VM = {vm1, vm2, ..., vm}. n The bandwidth between the servers is:
[0041]
[0042] vb ij Indicates server s i With server s j The bandwidth between servers. When i = j, the bandwidth between servers is 0, i.e., v ij =0.
[0043] Step (2): Establish a time model.
[0044] The server's processing speed determines the time required to execute a single task, and is also related to the amount of data carried by the task. Therefore, task t i On server s j The execution time is:
[0045]
[0046] Where, size(t) i ) indicates the amount of data in the task.
[0047] Transmission time is the time spent transferring data from the predecessor task to the successor task, and it is related to the amount of data transferred between tasks and the bandwidth between servers. Therefore, when task t... j Assigned to server s l Its predecessor task is assigned to server s k The specific calculation of transmission time is as follows:
[0048]
[0049] Among them, when task t i With t j When scheduling is performed on the same server, i.e., when k=l, the transmission time is 0.
[0050] When task t iAfter all the precursor missions are completed, mission t i Execution begins, and the server to which the task is assigned is available. Let ST(t) i s j ) and FT(t i s j ) for task t i On server s j The start and end times of the execution.
[0051] Task t entry This indicates a task without a predecessor task, which resides on server s. j The start time of the above execution is:
[0052] ST tentry s j ) = avail(s i Equation (6)
[0053] Among them, avail(s j ) indicates server s j The time available to perform the task.
[0054] For missions with a precursor mission, mission t i On server s j The start and end times of the above execution are calculated as follows:
[0055]
[0056] FT(t i s j )=ET(t i s j )+ST(t i s j Equation (8)
[0057] The total time required for workflow W to be scheduled is:
[0058]
[0059] Step (3): Establish a reliability model.
[0060] Workflow reliability is the probability that a server correctly completes its assigned tasks. Since permanent failures can only be recovered by replacing the processor, while transient failures only occur for a short period, this invention primarily focuses on transient failures. Transient failures in DAG-based workflow tasks follow a Poisson distribution. Workflow reliability includes both the reliability of server execution and the reliability of communication links.
[0061] Let server s k The failure rate is a constant λj Then task t i On server s k The reliability of the execution is:
[0062]
[0063] When task t i On server s k Running on the precursor mission t j On server s l When running on the platform, set For server s k With server s l The failure rate of the communication link between them, then task t i With the precursor mission t j The reliability of communication is:
[0064]
[0065] Task t i The reliability depends on the servers running the task. k The link with the transmission predecessor task is calculated as follows:
[0066]
[0067] Therefore, the reliability of workflow W is:
[0068]
[0069] Step (4): Establish a failure model.
[0070] Since the failure rate is inversely proportional to the system reliability, the reliability model can be simplified by establishing a failure model, which is the dual model of the reliability model.
[0071] When the failure rate is low, the system reliability is high. Therefore, the scheduling failure factor SFF(W) of workflow W is defined, and its specific calculation is as follows:
[0072]
[0073] To maximize the system's reliability, i.e., maximize Rel(W), we need to minimize the scheduling failure factor, i.e., minimize SFF(W).
[0074] Step (5): Encode the server locations assigned to all tasks in the workflow to generate a scheduling sequence.
[0075] In a workflow, there are n tasks and m servers. The server assigned to each task in the workflow is recorded, and each *Urinaria* represents a workflow scheduling scheme. Let X0 represent a *Urinaria*, x... i Represents task t i The assigned server location. The scheduling scheme is as follows:
[0076] X0 = [x1x2…x] n Equation (15)
[0077] Step (6): Initialize the population.
[0078] Initializing the population affects the algorithm's search efficiency towards the optimal workflow scheduling scheme. A good initial population can enhance the algorithm's ability to explore the optimal workflow scheduling scheme and reduce the algorithm's search time. The population is initialized by calculating the initial population standard deviation, appropriately balancing exploration and development during the algorithm's search process, thus improving the algorithm's diversity. First, multiple random populations are generated. Then, the standard deviation of each generated population is calculated and compared with the average standard deviation of the population. The population with the highest standard deviation is selected as the initial population. For a single population, a random method is used to initialize the population. The initial tunicate population contains randomly generated workflow scheduling schemes. The specific initialization steps are as follows:
[0079] Step (6.1): Iterate through all tasks in the workflow and provide the server with [lb] i ub i If the numbering is performed within the specified range, then the server location assigned to each task in the Sea Scabbard is:
[0080] x i =rand(ub i -lb i )+lb i Equation (16)
[0081] Among them, ub i Represents task t i The upper bound of the selected server number, ub i ≤m, lb i Represents task t i The lower bound of the selected server number, lb i ≥1, where the upper and lower bounds represent the range of selected server numbers. rand(ub i -lb i This indicates that a random value is generated between the upper and lower bounds.
[0082] Step (6.2): After assigning a position to each task according to the above operation, we obtain an initialized tunicate, that is, an initial individual x.
[0083] Initialize a population of tunicates as a matrix P = [X1, X2, ..., X...]. N ] T The population size is N, and T represents the transpose. Repeat the above steps until L populations are generated.
[0084] Step (6.3): For population P, the specific calculation of the standard deviation for each individual is as follows:
[0085]
[0086] in, This represents the average value across all individuals, calculated as follows:
[0087]
[0088] Therefore, the mean standard deviation of population P is:
[0089]
[0090] Among them, X i This represents the i-th individual in the population.
[0091] Compare the mean standard deviations of all populations avg(std(P)) and select the population with the highest mean standard deviation as the initial population P for the entire algorithm.
[0092] Step (7): Fitness calculation.
[0093] The fitness is defined by the total execution time and reliability of the workflow. The smaller the fitness, the better the workflow scheduling scheme. The specific calculation is as follows:
[0094] F(W)=φTIME(W)+(1-φ)SFF(W) Formula (20)
[0095] Step (8): The workflow scheduling scheme is updated iteratively to construct the optimal workflow scheduling scheme. The specific steps are as follows:
[0096] Step (8.1): Initialize the leader, followers, and food.
[0097] After fitness calculation, the salps in the population are sorted in ascending order based on their fitness. (After sorting, the initial...) The individual is the leader, and the rest are followers. Let the best individual up to the current iteration be the food FD, and its initial value be the individual with the lowest fitness.
[0098] Step (8.2): Update the chaos map.
[0099] Chaos represents a pseudo-random behavior in nonlinear deterministic systems. One-dimensional chaotic mappings are the most direct way to generate chaotic motion. Using chaotic mappings in algorithms can effectively improve the efficiency and performance of searching for optimal workflow scheduling schemes. A chaotic mapping t generates a chaotic sequence in the range (0, 1), and is updated at iteration number q+1 by the following formula:
[0100]
[0101] The initial value of the chaotic mapping t is set to 0.6. q represents the current iteration number, and Q represents the maximum iteration number. The dynamic graph of the chaotic mapping value at different iteration numbers is shown below. Figure 3 As shown.
[0102] Step (8.3): Update salps individuals. Divide the individuals in the population into leaders and followers, traverse all salps individuals in the population and update them individually, so that the algorithm searches towards the optimal workflow scheduling scheme.
[0103] Step (8.3.1): Iterate through all individuals and determine whether each individual is the leader. If so, proceed to step (8.3.2); otherwise, proceed to step (8.3.3).
[0104] Step (8.3.2): Update the leader. Update the leader based on the food FD information. For individual X i A random number rd is generated uniformly in the range [0, 1]. If rd < 0.5, the leader position is updated using equation (22); otherwise, the leader position is updated using equation (24).
[0105]
[0106] in, Represents individual X i The location information of the j-th task in FD j This indicates the task location information corresponding to the food FD, ub j With lb j This represents the upper and lower bounds of the server number selected for the j-th task. c2 is a random number generated randomly in the range [0, 1].
[0107] c1 represents the coefficient parameter, which balances the algorithm's exploration of the optimal workflow scheduling scheme. The specific updates are as follows:
[0108]
[0109] Where δ is a constant equal to 8.
[0110]
[0111] in, This represents the j-th task of a randomly selected individual in the population.
[0112] Step (8.3.3): Update followers.
[0113] In the algorithm, the leader changes position around the food source, and followers gradually follow the other individuals in changing positions throughout the iterations, guiding them towards the optimal workflow scheduling scheme. The position changes of the followers are related to the coefficient parameter c. t Relevant to individual X i The specific updates are as follows:
[0114]
[0115] Among them, X α With x β It refers to a random individual in the population.
[0116] coefficient parameter c t The coefficient parameter, related to the chaotic mapping, balances the algorithm's exploration of the optimal workflow scheduling scheme. The specific updates are as follows:
[0117]
[0118] Where ε is a constant equal to 0.8.
[0119] Step (8.3.4): Fitness comparison.
[0120] After obtaining the location of a new individual in the population, calculate its fitness and compare it with the fitness of the original individual. If it is worse than the original individual, the individual remains unchanged and step (8.4) is executed. If it is better than the original individual, the new individual is used to replace the original individual, and a new population is finally obtained. Then, it is determined whether there is an individual with a better location than the food location. If so, the new individual is used to replace the food location and step (8.4) is executed. Otherwise, step (8.4) is executed directly.
[0121] Step (8.4): Determine if the termination condition has been met. If the workflow scheduling scheme reaches the maximum number of iterations Q, terminate the iteration and output the optimal workflow scheduling scheme; otherwise, return to step (8.2).
[0122] To demonstrate the effectiveness of the method of this invention, comparisons were made with the heterogeneous earliest completion time algorithm HEFT, a multi-objective genetic algorithm NSGA-II, and a differential evolution algorithm DEWS in terms of latency and reliability. The HEFT algorithm assigns the task with the highest rank value to the server, thereby minimizing its earliest completion time. The NSGA-II algorithm divides individuals into different non-dominated layers through a fitness function, directing the search towards elite solutions to obtain the optimal individual. The DEWS algorithm uses mutation as a search mechanism and selection as a selection operation to direct the search towards the desired region in the search space.
[0123] The experiment used the IntelliJ IDEA platform as the simulation platform. The specific experimental environment was as follows: operating system was Win10 64-bit, processor was AMD-5600X, and memory was 16GB. Workflows were generated using a DAG random generation method. The number of tasks in each workflow followed a Poisson distribution with a parameter of 30. The task sizes in the workflow followed a uniform distribution between 1KB and 10KB, and the computational load of the tasks followed a uniform distribution between 1GHz and 10GHz. The average server bandwidth was bw = 10MHz, the computing power was 4GHz, the transmission rate was 80Mb / s, the number of edge servers ranged from [10,30], the memory was 8GB, and the failure rate was within [10...]. -3 10 -4 The weights are uniformly distributed within the interval. The algorithm of this invention uses a weight factor φ = [0, 0.3, 0.5, 0.7, 1] and sets the number of iterations to 800.
[0124] Figure 4 The latency of workflow scheduling schemes generated by various algorithms under different fitness weights was compared. In this experiment, the number of successor tasks in the workflow was 30, and the number of servers was fixed at 20. The latency of each algorithm decreased as the weight value increased. This is because when the weight increases, the fitness function F(W) = φTIME(W) + (1-φ)SFF(W) is more inclined to search in the direction of latency optimization, thereby reducing the latency of the final workflow scheduling scheme. When the fitness weight is the same, the present invention has a lower latency than the other algorithms. In the scheduling process, the algorithm of the present invention classifies individuals in the population and uses different methods to search the search space for leaders and followers. The leader changes its position around the food source, and the followers gradually follow the leader in the iteration process. By developing and utilizing the space around the food source, the tunicate individuals can move effectively in the search space. In addition, by recording the optimal individual in the iteration process, the global convergence of the algorithm is guaranteed, thus obtaining a workflow scheduling scheme with optimal fitness.
[0125] Figure 5The reliability of workflow scheduling schemes generated by various algorithms under different fitness weights was compared. It was found that the reliability of each algorithm decreases as the weight value increases. This is because when the weight increases, the fitness function F(W) = φTIME(W) + (1-φ)SFF(W) is more inclined to search towards latency optimization rather than reliability optimization, thus leading to a gradual decrease in reliability. Under the same fitness weight, this invention has an advantage over other algorithms, consistently exhibiting superior reliability with the same number of nodes. The reason for the superior fitness of this invention lies in calculating the standard deviation of individuals in each population to obtain the average standard deviation of the entire population. By comparing L populations, the optimal initial population is obtained, enhancing the system's global search capability and refining the local search. Simultaneously, by improving the efficiency and performance of the algorithm in searching for the optimal workflow scheduling scheme, the chaotic mapping is converted into chaotic parameters and combined with the updates of leaders and followers in the population, improving the efficiency and performance of the algorithm in searching for the optimal workflow scheduling scheme. This reduces system latency while ensuring system reliability, leading to the optimal scheduling scheme.
[0126] Figure 6 The convergence rates of the various algorithms were compared. In this experiment, the fitness weight was 0.7. It can be seen that the fitness of the algorithm of this invention after convergence is better than that of the other algorithms, and the fitness is also better than that of the other algorithms under the same number of iterations. This is because the algorithm of this invention modifies the population initialization strategy based on the idea of calculating the initial population standard deviation, based on the original standard tunic algorithm. It accurately grasps the balance between exploration and development during the search process, thereby improving its diversity. Furthermore, the effectiveness of chaotic mapping is utilized in the population individual update. The study focuses on enhancing and improving the performance and convergence speed of the algorithm. By combining chaotic parameters with the population individual update, the global search capability of the algorithm is enhanced, and the fitness value of its optimal workflow scheduling scheme after the search is better than that of the other algorithms.
[0127] Table 1 shows the fitness comparison of each algorithm at different iteration numbers.
[0128]
Claims
1. A workflow optimization scheduling method based on an improved tunic algorithm, characterized in that... Includes the following steps: Step (1): Define the workflow and servers in the edge environment; Step (2): Establish a time model; Step (3): Establish a reliability model; Step (4): Establish a failure model; Step (5): Encode the server locations assigned to all tasks in the workflow to generate a scheduling sequence; Specifically: The number of tasks in a workflow is The number of servers is Record the server assigned to each task in the workflow; each slug represents a workflow scheduling scheme; let It represents a sea squirt. Indicates task Given the assigned server location, the scheduling scheme is as follows: Equation (15) Step (6): Initialize the population; Step (6.1): Iterate through all tasks in the workflow to prepare for the server's operation. If the range is numbered, then the server location assigned to each task in the Sea Scabbard is: Equation (16) in, Indicates task The upper bound of the selected server number, , Indicates task The lower bound of the selected server number, The upper and lower bounds indicate the range of the selected server IDs; This indicates that a random value is generated between the upper and lower bounds; Step (6.2): After assigning a position to each task according to the above operations, an initialized tunicate is obtained, that is, an initial individual. ; Initialize a population of tunicates as a matrix The number of individuals in the population is , Indicate transpose; repeat the above steps until generated. Individual populations; Step (6.3): For the population The specific calculation of the standard deviation for each individual is as follows: Equation (17) in, This represents the average value across all individuals, calculated as follows: Equation (18) Therefore population The mean standard deviation is: Equation (19) in, Indicates the first in the population Individual; Compare the mean standard deviation of all populations The population with the highest mean standard deviation is selected as the initial population for the entire algorithm. ; Step (7): Fitness calculation; Fitness is defined as being determined by the total execution time and reliability of the workflow, and is calculated as follows: Equation (20) in Indicates workflow. Indicates the weighting factor. This represents the total time required for workflow scheduling. Indicates the scheduling failure factor of the workflow; Step (8): Continuously update the workflow scheduling scheme through iteration to construct the optimal workflow scheduling scheme; the specific steps are as follows: Step (8.1): Initialize the leader, followers, and food; After fitness calculation, the salps in the population are sorted in ascending order of fitness, with a first... The leader is one individual, and the rest are followers; the best individual up to the current iteration number is the food. The initial value is the individual with the lowest fitness. Step (8.2): Update the chaos map; Chaotic mapping exist Generate a chaotic sequence within the range, and in the number of iterations... Updated using the following formula: Equation (21) in This represents the current iteration number. This represents the maximum number of iterations. Step (8.3): Update the individual Salicornia; Step (8.3.1): Iterate through all individuals and determine whether each individual is the leader. If so, proceed to step (8.3.2); otherwise, proceed to step (8.3.3). Step (8.3.2): Update the leader; The leader's renewal is affected by food Location information has an impact; for individuals ,exist Generate a random number uniformly within the range ,like If the leader position is updated, then use equation (24) to update the leader position; otherwise, use equation (25) to update the leader position. Equation (24) in, Represents an individual The first in Location information for each task. Indicates food The corresponding task location information in the middle. and Indicates the first The upper and lower bounds of the server number selected for each task; In order to be in A random number generated within the specified range; The coefficient parameters represent the algorithm's exploration of the optimal workflow scheduling scheme, and the specific updates are as follows: Equation (22) in, It is a constant; Equation (25) in, Represents the first individual randomly selected from the population. One task; Step (8.3.3): Update followers; Throughout the iteration process, followers gradually change positions to follow the other individuals, guiding them towards the optimal workflow scheduling scheme; the follower position change is related to the coefficient parameters. Relevant to individuals The specific updates are as follows: Equation (26) in, and A random individual within the population; The coefficient parameter, related to the chaotic mapping, can balance the algorithm's exploration of the optimal workflow scheduling scheme. The specific updates are as follows: Equation (23) in, It is a constant; Step (8.3.4): Fitness comparison; After obtaining the location of a new individual in the population, calculate its fitness and compare it with the fitness of the original individual. If it is worse than the original individual, the individual remains unchanged and step (8.4) is executed; if it is better than the original individual, the new individual is used to replace the original individual, and a new population is obtained. Then, it is determined whether there is an individual with a better location than the food location. If so, the new individual is used to replace the food location and step (8.4) is executed. Otherwise, step (8.4) is executed directly. Step (8.4): Determine whether the termination condition has been met; If the workflow scheduling scheme reaches the maximum number of iterations If the iteration fails, the iteration terminates and the optimal workflow scheduling scheme is output; otherwise, the process returns to step (8.2).
2. The method according to claim 1, characterized in that... Step (1) specifically involves: The workflow executed on the system is a directed acyclic graph (DAG). It means that, among them Represents a set of tasks. Indicates the number of tasks; A set of directed edges represents the dependencies and execution order between tasks, and subsequent tasks. Only in the precursor mission Execute after completion. Indicates task With the task Data transfer volume between them; make This indicates a mission without a precursor mission. A task that has no successor. Precursor mission collection With the set of subsequent tasks They are represented as follows: Equation (1) Equation (2) Because edge servers provide computing services for workflows, the server set is... ,in Indicates the number of servers; computing power of edge servers. The bandwidth between the servers is: Equation (3) in Indicates server With server Bandwidth between; when At that time, the bandwidth between servers was 0, that is... .
3. The method according to claim 2, characterized in that... Step (2) specifically involves: The server's processing speed determines the time required to execute a single task, and is also related to the amount of data carried by the task. Therefore, the task... On the server The execution time is: Equation (4) in, This indicates the amount of data in the task; Transmission time is the time it takes to transfer data from the predecessor task to the successor task, and it is related to the amount of data transferred between tasks and the bandwidth between servers; therefore, when a task... Assigned to server Its predecessor task is assigned to the server. The specific calculation of transmission time is as follows: Equation (5) Among them, when the task and When scheduling is performed on the same server, i.e. At that time, the transmission time is 0; When the task After all the precursor missions are completed, the mission Execution begins, and the server to which the task is assigned is available; assume... and For the task On the server The start and end times of the execution; Command Mission This indicates a task without a predecessor task, which is located on the server. The start time of the above execution is: Equation (6) in, Indicates server The time available to perform the task; For missions with a precursor mission, the mission... On the server The start and end times of the above execution are calculated as follows: Equation (7) Equation (8) Workflow The total time required for scheduling is: Equation (9).
4. The method according to claim 3, characterized in that... Step (3) specifically involves: Transient failures in DAG-based workflow tasks follow a Poisson distribution; workflow reliability includes the reliability of server execution and the reliability of communication links. Set up server The failure rate is constant. Then the task On the server The reliability of the execution is: Equation (10) When the task On the server Running, precursor mission On the server When running on the above, set For server With server The failure rate of the communication link between them, then the task With the precursor mission The reliability of communication is: Equation (11) Task The reliability depends on the server running the task. The link with the transmission predecessor task is calculated as follows: Equation (12) Therefore, workflow The reliability is: Equation (13).
5. The method according to claim 4, characterized in that... Step (4) specifically involves: Since the failure rate is inversely proportional to the system reliability, the reliability model can be simplified by establishing a failure model, which is the dual model of the reliability model. When the failure rate is low, the system reliability is high; therefore, a workflow is defined. scheduling failure factor The specific calculation is as follows: Equation (14) To maximize the reliability of the system, i.e. To maximize, we need to minimize the scheduling failure factor, i.e. Minimum.
6. A computer-readable storage medium having a computer program stored thereon, which, when executed in a computer, causes the computer to perform the method of any one of claims 1-5.
7. A computing device comprising a memory and a processor, wherein the memory stores executable code, and the processor, when executing the executable code, implements the method of any one of claims 1-5.