A Crowdsourcing Resource Scheduling Method for Industrial Control Software Based on Adaptive Genetic Algorithm

By employing a multi-level optimization strategy based on an adaptive genetic algorithm, the problems of low efficiency and insufficient resource utilization in crowdsourced resource scheduling for industrial control software are solved. This approach optimizes resource allocation and skill matching, improves scheduling efficiency and resource utilization, and is suitable for complex engineering scheduling scenarios.

CN120631759BActive Publication Date: 2026-04-03BEIJING INST OF TECH
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-06-03
Publication Date
2026-04-03

AI Technical Summary

Technical Problem

Existing crowdsourced resource scheduling methods for industrial control software suffer from low scheduling efficiency, insufficient resource utilization, difficulty in adapting to complex and ever-changing scenarios, and problems such as premature convergence or slow convergence in the later stages due to fixed genetic algorithm parameters.

Method used

A multi-level optimization strategy based on adaptive genetic algorithm is adopted. By constructing a multi-dimensional constrained optimization model and combining task dependencies and resource constraints, the crossover and mutation probabilities are designed to achieve a balance between global search and local optimization, and generate a scheduling scheme that meets multiple constraints.

Benefits of technology

It enhances the global optimization capability of the scheduling scheme, shortens the total project duration, improves resource utilization and scheduling efficiency, is suitable for complex engineering scheduling scenarios, and enhances the stability and efficiency of project execution.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120631759B_ABST
    Figure CN120631759B_ABST
Patent Text Reader

Abstract

A crowdsourcing resource scheduling method for industrial control software based on an adaptive genetic algorithm is presented, comprising task scheduling modeling, resource constraint definition, task dependency construction, and dynamic scheduling strategy formulation. By introducing an adaptive mechanism, the crossover and mutation rates in the genetic algorithm are adjusted to adapt to the search requirements at different stages, thereby improving optimization efficiency and solution diversity. This method designs a crowdsourcing resource scheduling optimization process specifically tailored to the characteristics of industrial control software, effectively handling complex scheduling problems with multiple tasks, multiple constraints, and limited resources. Compared to traditional static scheduling strategies, this invention significantly shortens the testing cycle, improves resource utilization and task completion rate, and is particularly suitable for large-scale, multi-skilled, and complex task dependency scenarios in industrial control software crowdsourcing, demonstrating promising application prospects and widespread application value.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of project scheduling optimization, specifically to a crowdsourced resource scheduling method for industrial control software based on an adaptive genetic algorithm. Background Technology

[0002] Existing crowdsourced resource scheduling methods for industrial control software (MS-RCPSP) generally suffer from low scheduling efficiency, insufficient resource utilization, and difficulty in adapting to complex and changing scenarios. Traditional methods are mostly based on static programming or heuristic strategies, lacking sufficient global search and local optimization capabilities, leading to scheduling results easily getting trapped in local optima in large-scale tasks and multi-skill resource environments. Genetic algorithms (GA), as a global optimization method, possess strong search capabilities, but fixed parameter settings often result in excessively rapid early convergence or slow convergence in later stages, affecting scheduling performance. In summary, designing a new method to solve the crowdsourced resource scheduling problem for industrial control software is urgently needed. Furthermore, introducing an optimization strategy based on adaptive genetic algorithms can effectively solve the MS-RCPSP problem, thereby improving the overall performance and efficiency of crowdsourced resource scheduling for industrial control software. Summary of the Invention

[0003] This invention provides a crowdsourcing resource scheduling method for industrial control software based on an adaptive genetic algorithm. It aims to overcome the shortcomings of existing crowdsourcing resource scheduling processes in terms of complex resource allocation, skill matching, and task dependency handling by introducing an adaptive genetic evolution mechanism, thereby improving the global optimization capability and convergence performance of the scheduling scheme.

[0004] The technical solution adopted in this invention is as follows:

[0005] A crowdsourced resource scheduling method based on multi-level stochastic particle swarm optimization includes the following steps:

[0006] Step 1: Construct a multi-dimensional constraint-optimized resource scheduling model. First, a multi-dimensional resource scheduling optimization model is constructed, combining task dependencies, resource constraints, and skill matching requirements. The model adopts a multi-objective optimization framework, aiming to simultaneously minimize project duration and maximize resource utilization efficiency. By introducing constraints such as resource availability, task execution order, and skill requirement matching, the scheduling scheme ensures that it not only meets basic operational requirements but also optimizes the time and resource allocation efficiency of the entire project process.

[0007] Step 2: Design a dynamic adjustment strategy for the adaptive genetic algorithm. In the early stages of the algorithm, a high crossover and mutation rate is used to achieve broad search space coverage and avoid getting trapped in local optima. In the later stages of the algorithm, these parameters are gradually reduced to focus on fine-tuning local optima. By combining task characteristics and real-time fitness feedback, parameters can be intelligently adjusted at different scheduling stages to improve the algorithm's search efficiency and accuracy.

[0008] Step 3: Introduce multi-level constraint integration and objective function optimization. By integrating factors such as task execution time, resource consumption, and task dependencies, a unified fitness evaluation framework is constructed, and the scheduling scheme is verified and optimized under multiple constraints. Under this framework, the objective function does not only focus on a single optimization objective, but also ensures that the final result achieves optimal performance in multiple dimensions by balancing the conflicts between different objectives, while satisfying constraints such as resource allocation, task order, and skill matching.

[0009] Step 4: Generate a scheduling scheme and perform multi-level performance verification. After algorithm optimization, a specific task scheduling scheme is generated by decoding the optimal solution in the genetic algorithm, and the start time, end time, and resource allocation of each task are calculated. Next, multi-level scheme verification is performed to ensure that all constraints, such as resource constraints, task dependencies, and skill matching, are satisfied. Simultaneously, by comparing with other scheduling methods (such as traditional heuristic methods or other optimization algorithms), the system evaluates the advantages of this method in solving the crowdsourcing resource scheduling problem in industrial control software, and verifies its applicability and superiority in complex scenarios.

[0010] Step 1: Construct a multi-dimensional constrained optimization resource scheduling model. The specific steps are as follows:

[0011] Step 1.1: Define four important index sets: task index set, resource index set, time index set, and skill index set. The specific definitions are as follows:

[0012] Task Index: T = {t1, t2, ... t} n} represents all tasks to be scheduled, where t i For task i.

[0013] Resource Index: R = {r1, r2, ... r} n} represents all available resources, where r j For resource j.

[0014] Time index: Γ = {t0, t1, ... t} k} represents a point in time in the project, with the time interval from t0 (start time) to t k (End time)

[0015] Skill Index: S = {s1, s2, ... s} p} represents all skills, where s p For skill p.

[0016] Step 1.2: Define the model input parameters, which consist of six parts: resource set R, task set T, skill plan S, number of tasks N, number of resources M, and number of skills P. The resource set R contains all available resources; the task set T contains all tasks that need to be scheduled; the skill plan S contains all skills required for task execution; the number of tasks N is the total number of tasks in the project; the number of resources M is the total number of resources in the project; and the number of skills P is the total number of skills in the project.

[0017] Resource set: R = {R1, R2, ... R} m} represents all available resources.

[0018] Task set: T = {T1, T2, ..., T} n} represents all tasks to be scheduled.

[0019] Skill Plan: P = {P1, P2, ... P} n} represents the skill plan required for each task.

[0020] Number of tasks: N = |T|, which is the total number of tasks.

[0021] Resource quantity: M = |R|, which is the total number of resources.

[0022] Number of skills: P = |S|, which is the total number of skills.

[0023] Step 1.3: Define the variables related to the scheduling task, which include seven parts, namely the task duration D(T). i ), Task start time S(T) i Skill requirements K(T) i ,S j Resource control level L(R) i ,S j ), Prerequisite task set P(T) i );

[0024] Task duration: D(T) i ), indicating task T i The execution duration.

[0025] Task start time: S(T) i ), indicating task T i The start time of execution.

[0026] Skill Requirements: K(T)i ,S j ), indicating task T i Skill S j Requirements.

[0027] Resource mastery level: L(T) i ,S j ), indicating task T i Skill S j The level of mastery.

[0028] Prerequisite task set: P(T) i ), indicating task T i The set of prerequisite tasks.

[0029] Step 1.4: Define the decision variables, which consist of two parts: the allocation variable x. jr and execution variable y jrt :

[0030]

[0031] Assignment variable x jr It is a binary decision variable used to indicate whether to perform task T. j Allocate to resource R r ; Execution variable y jrt Used to represent resource R at time t r Execute task T? j ;

[0032] Step 1.5: Construct the objective function. The core of this step is to optimize the project's completion time (Makespan) by constructing the objective function. The objective function describes the maximum completion time of all tasks in the project, i.e., the total project duration. The specific definition is as follows:

[0033] Minimize max{s j +d j ,j∈J}

[0034] In both the exploration and development phases, task priority weights are adjusted based on task importance to make the optimization objectives more adaptable to the optimization needs of different phases.

[0035]

[0036] Where w1+w2=1, and w1 and w2 are dynamically adjusted according to the stage;

[0037] Step 1.6: Constructing Constraints. A series of constraints need to be introduced into the model to ensure the feasibility of task scheduling and the rationality of resource allocation. These constraints include the following categories:

[0038] The task priority constraints are as follows:

[0039]

[0040] This constraint ensures that task T j Only in all its prerequisite tasks T j Start after completion.

[0041] Skill matching constraints are as follows:

[0042]

[0043] This constraint ensures that the allocated resources R r Task T must be satisfied j Required skills S k Proficiency requirements

[0044] The unique assignment constraint is as follows:

[0045]

[0046] This constraint stipulates that each task can only be assigned to one resource for execution.

[0047] The resource usage restrictions are as follows:

[0048]

[0049] This constraint ensures that each resource can only process one task at a time.

[0050] The range of variable values ​​is constrained as follows:

[0051]

[0052] These constraints define the range of values ​​for the variables, making the construction of solutions reasonable;

[0053] Step 1.7: Setting a Multi-Level Optimization Strategy. To improve the optimization performance of the genetic algorithm, this method adopts a multi-level optimization strategy, dividing the algorithm into an exploration phase and an development phase. In these two phases, the algorithm aims to broadly search the solution space and refine the solution quality. The specific strategy is as follows:

[0054] Exploration Phase: In the exploration phase, the goal of the genetic algorithm is to extensively search the solution space and avoid early convergence to local optima. To achieve this, higher crossover and mutation probabilities are used to increase the diversity of the solution space. The operations in this phase include:

[0055] Crossover: Suppose we have two parent individuals, P1 and P2, with gene sequences G1 and G2 respectively. Crossover generates two offspring individuals, C1 and C2, by exchanging genes at a specific location. The crossover formula is as follows:

[0056] C1=Crossover(P1,P2)C2=Crossover(P2,P1)

[0057] The crossover operation is based on a certain probability P. c ,Right now:

[0058] P c =probability of crossover

[0059] Mutation operation: The mutation operation randomly alters the genes of an individual, increasing the diversity of solutions and avoiding getting trapped in local optima. The mutation operation formula is as follows:

[0060] M(x)=x+Δx whereΔx~u(-δ,δ)

[0061] Where Δx represents the amount of variation, usually according to a certain probability P m Mutation

[0062] P m =probablity of mutation

[0063] Development Phase: After the exploration phase, the algorithm enters the development phase, which focuses on fine-tuning the region near the current optimal solution. This phase gradually reduces the mutation and crossover probabilities, enhancing the algorithm's local search capabilities and thus accelerating convergence to the global optimum. The specific operations are as follows:

[0064] Crossover operation: During the development phase, the crossover operation is more refined, with a crossover probability P' c It is gradually reduced, and is usually set to:

[0065] P' c =P c -α where α∈[0,1]

[0066] The crossover method remains the same: select two parent individuals and exchange them to generate offspring individuals.

[0067] Mutation operation: Mutation probability P' m The mutation rate is gradually reduced during the development phase, and mutation operations become more cautious to avoid excessively perturbing the current optimal solution. The mutation probability is set to:

[0068] P' m =P m -β whereβ∈[0,1]

[0069] Fitness evaluation and selection: During the development phase, the fitness of individuals is evaluated to determine which individuals will be selected for the next generation. Assuming the fitness function is f(x), individuals are selected for reproduction based on the value of the fitness function. Selection operations typically employ strategies such as roulette wheel selection, bidding selection, or tournament selection to ensure that individuals with higher fitness are more likely to enter the next generation. The selection probability P... select (x) can be represented as:

[0070]

[0071] Where, x i Let f(x) represent individual i. i The value represents the fitness of the individual, and N is the size of the population.

[0072] Phase transition criteria: The transition between the exploration and development phases can be dynamically based on the following criteria:

[0073] Number of iterations: When a certain number of iterations I is reached max At this point, it automatically switches to the development phase. The iteration count is I. explore Conditions met:

[0074]

[0075] Fitness change rate: If the fitness value does not improve significantly after multiple iterations, the system will determine that the search has become saturated and will automatically enter the development phase.

[0076] Dynamic adjustment mechanism: By analyzing the changing trends of fitness distribution, the timing of the transition is flexibly adjusted according to the performance of the particle swarm to ensure the sufficiency of the search during the exploration phase.

[0077] Step 2: Introducing an adaptive inertia weight adjustment strategy. In the optimization process of genetic algorithms, crossover and mutation operations are key factors affecting search efficiency and solution quality. This method introduces an adaptive crossover and mutation probability adjustment strategy to balance the contradiction between global search and local search, aiming to improve the algorithm's performance in complex scheduling problems. The specific steps are as follows:

[0078] Step 2.1, Adaptive Crossover Probability Adjustment: In the initial stage of the genetic algorithm, the crossover operation is used to enhance the diversity of the population. Therefore, a higher crossover probability P is initially adopted. c This ensures broad coverage of the solution space during the exploration process. As the algorithm iterates, the crossover probability gradually decreases, causing the population to converge towards the optimal solution region. The formula for adjusting the crossover probability is as follows:

[0079]

[0080] Among them, P c(t) represents the crossover probability at the current iteration t; P c0 α is the initial crossover probability; T is the maximum number of iterations; α is a parameter that controls the deceleration rate of the crossover probability.

[0081] Step 2.2, Adaptive Mutation Probability Adjustment: The role of mutation in genetic algorithms is to increase the diversity of solutions and avoid the trap of local optima. To improve the efficiency of mutation operations, this method uses a higher mutation probability P in the early stages of the algorithm. m The mutation probability is gradually reduced as the iteration progresses, allowing for fine-tuning when the solution is close to optimal. The formula for decreasing the mutation probability is as follows:

[0082]

[0083] Among them, P m (t) represents the mutation probability at the current iteration t; P m0 is the initial mutation probability; T is the maximum number of iterations; β is a parameter that controls the deceleration rate of the crossover probability;

[0084] Step 2.3, Fitness Detection and Adaptive Adjustment Mechanism: To further improve the convergence and stability of the genetic algorithm, an adaptive mechanism is adopted to monitor and dynamically adjust the crossover and mutation probabilities in real time. By analyzing the changing trend of the fitness function, when the improvement of the fitness function decreases or after a certain number of iterations, the change in fitness Δf(t) is used to determine whether the crossover and mutation probabilities need to be adjusted.

[0085] Δf(t)=f(t)-f(t-1)

[0086] If Δf(t) is less than the preset threshold ε, it means that the optimization of the solution is close to saturation. At this time, the intensity of crossover and mutation operations can be appropriately reduced to improve the accuracy of local search and enhance the stability of the algorithm.

[0087] Step 3: Implement adaptive genetic algorithm optimization within a multi-level optimization framework. The exploration phase involves randomly initializing the population and broadly searching for potential high-quality scheduling solutions. The development phase focuses on the region surrounding the current excellent solution, performing local fine-tuning to gradually improve the quality of the scheduling solution. Through the coordinated efforts of the exploration and development phases, the algorithm's global search capability and local convergence performance are effectively enhanced. The specific steps are as follows:

[0088] Step 3.1, Population Initialization: Randomly generate an initial population. Each individual is encoded by a gene to represent the task scheduling order, as defined below:

[0089] Chromosome j =RandomPermutation(N),j=1,2...P

[0090] Where N is the number of tasks and P is the population size; and the initial crossover probability P is set. c0 With the initial mutation probability P m0 ;

[0091] Step 3.2, Genetic Operation Execution: Selection is performed based on the fitness function, using roulette wheel or tournament methods to determine parents; crossover and mutation operations are performed with dynamic probabilities P. c (t), P m (t) is performed, and the specific adjustment formula is as follows:

[0092]

[0093] Among them, P c0 P m0 Let t be the initial probability, t be the current generation, T be the maximum number of iterations, and α and β be control parameters.

[0094] Step 3.3, Fitness Assessment and Winner Selection: Using the fitness function

[0095]

[0096] Assess individual quality and select a new generation based on fitness. If an individual with fitness better than the current global optimum exists, update the global optimum and gradually guide the population toward the optimal scheduling scheme.

[0097] Step 4: Generate and validate the scheduling scheme. The task scheduling order is determined by decoding chromosome gene sequences, the start and end times of each task are calculated, and the scheduling scheme is verified to meet multiple constraints such as resource allocation, task dependency, and skill matching. The optimization effect is evaluated by comparing it with traditional methods to verify its superiority and applicability in complex resource-constrained environments. The specific steps are as follows:

[0098] Step 4.1: Generate a scheduling plan: In this stage, the execution order of tasks is determined based on the gene arrangement order in an individual's chromosomes; the start time S of each task is calculated step by step according to the order. i Completion Time C i The formula is as follows:

[0099]

[0100] C i =S i +D i

[0101] Where P i Let D be the set of all prerequisite tasks for task i. iLet EarliestAvailable(i) represent the duration of task i, and EarliestAvailable(i) represent the earliest time that task i can start under the condition that resources are available.

[0102] Step 4.2, Verify Constraints: Resource Constraint Check: Ensure that at any time point t, for each resource r, the following is satisfied:

[0103]

[0104] Where Γ(r,t) represents the set of tasks using resource r at time t, Cap r This represents the maximum capacity of resource r;

[0105] Prerequisite constraints for tasks: For any task pair (i,j) with dependencies, the following must be satisfied:

[0106] C i ≤S j

[0107] That is, task j can only begin after all the preceding tasks i have been completed;

[0108] Skill matching constraint: When resource r is allocated to task i, it must satisfy the skill level q that the task i possesses. r,s Skills not lower than those required for the task i,s ,Right now:

[0109]

[0110] Skills(i) represents the set of skills associated with task i.

[0111] Advantages and benefits of the present invention

[0112] This invention proposes a resource scheduling method for crowdsourcing industrial control software based on an adaptive genetic algorithm. Addressing issues such as resource heterogeneity and complex task dependencies in the crowdsourcing process, it incorporates an adaptive genetic evolution strategy and designs an optimization algorithm that includes exploration and development phases. This method dynamically adjusts genetic parameters to comprehensively optimize resource allocation, skill matching, and task priority relationships, effectively improving scheduling quality and shortening the total project duration (makespan). This invention is applicable to crowdsourcing projects for industrial control software and other complex engineering scheduling scenarios. It can significantly enhance project execution stability and efficiency while improving resource utilization, providing effective technical support for improving productivity and economic benefits. Attached Figure Description

[0113] Figure 1 This is a flowchart of a crowdsourcing resource scheduling method for industrial control software based on an adaptive genetic algorithm, according to the present invention.

[0114] Figure 2 It is a topology diagram of task dependencies and resource constraints in the crowdsourcing resource scheduling of industrial control software. Detailed Implementation

[0115] The present invention will now be described in detail with reference to the accompanying drawings and examples.

[0116] An adaptive genetic algorithm-based crowdsourcing resource scheduling method for industrial control software is proposed. Based on a crowdsourcing resource scheduling problem with 5 task nodes and several dependencies (structure information shown in Table 1), an adaptive genetic algorithm is constructed to solve for the optimal scheduling scheme of resources and tasks within a finite time unit. The specific implementation plan includes the following contents and steps:

[0117] Table 1 shows the structural information of a crowdsourcing resource scheduling system.

[0118]

[0119]

[0120]

[0121] Step 1: Construct a multi-dimensional constrained optimization resource scheduling model. The specific steps are as follows:

[0122] Step 1.1: Define four important index sets: task index set, resource index set, time index set, and skill index set. The specific definitions are as follows:

[0123] Task Index: T = {t1, t2, ... t} n} represents all tasks to be scheduled, where t i For task i.

[0124] Resource Index: R = {r1, r2, ... r} n} represents all available resources, where r j For resource j.

[0125] Time index: Γ = {t0, t1, ... t} k} represents a point in time in the project, with the time interval from t0 (start time) to t k (End time)

[0126] Skill Index: S = {s1, s2, ... s} p} represents all skills, where s p For skill p.

[0127] Step 1.2: Define the model input parameters, which consist of six parts: resource set R, task set T, skill plan S, number of tasks N, number of resources M, and number of skills P. The resource set R contains all available resources; the task set T contains all tasks that need to be scheduled; the skill plan S contains all skills required for task execution; the number of tasks N is the total number of tasks in the project; the number of resources M is the total number of resources in the project; and the number of skills P is the total number of skills in the project.

[0128] Resource set: R = {R1, R2, ... R} m} represents all available resources.

[0129] Task set: T = {T1, T2, ..., T} n} represents all tasks to be scheduled.

[0130] Skill Plan: P = {P1, P2, ... P} n} represents the skill plan required for each task.

[0131] Number of tasks: N = |T|, which is the total number of tasks.

[0132] Resource quantity: M = |R|, which is the total number of resources.

[0133] Number of skills: P = |S|, which is the total number of skills.

[0134] Step 1.3: Define the variables related to the scheduling task, which include seven parts, namely the task duration D(T). i ), Task start time S(T) i Skill requirements K(T) i ,S j Resource control level L(R) i ,S j ), Prerequisite task set P(T) i );

[0135] Task duration: D(T) i ), indicating task T i The execution duration.

[0136] Task start time: S(T) i ), indicating task T i The start time of execution.

[0137] Skill Requirements: K(T) i ,S j ), indicating task T i Skill S j Requirements.

[0138] Resource mastery level: L(T) i ,S j ), indicating task T i Skill S j The level of mastery.

[0139] Prerequisite task set: P(T) i ), indicating task T i The set of prerequisite tasks.

[0140] Step 1.4: Define decision variables, which consist of two parts, describing the allocation of tasks and resources, and the execution status of tasks at specific points in time:

[0141] Assign decision variable: x ij ∈{0,1}, representing task T i Should it be allocated to resource R? j .

[0142] Decision variable: y ijk ∈{0,1}, representing task T i Is it at time point T? k Resource R j implement.

[0143]

[0144] Step 1.5: Construct the optimization objective function. The core of this step is to optimize the project's completion time (Makespan) by constructing the objective function. The objective function describes the maximum completion time of all tasks in the project, i.e., the total project duration. The specific definition is as follows:

[0145]

[0146] In both the exploration and development phases, task priority weights are adjusted based on task importance to make the optimization objectives more adaptable to the optimization needs of different phases.

[0147] Exploration Phase: Task priority weight is set to the reciprocal of task duration.

[0148]

[0149] Development phase: Task priority weight is set to the task duration.

[0150]

[0151] The optimization objective is:

[0152]

[0153] Step 1.6: Establishing Constraints. A series of constraints need to be introduced into the model to ensure the feasibility of the task and the rational allocation of resources. These constraints include the following categories:

[0154] The task priority constraints are as follows:

[0155]

[0156] This constraint ensures that task T i Only in all its prerequisite tasks T k Start after completion.

[0157] Skill matching constraints are as follows:

[0158]

[0159] This constraint ensures that the allocated resources R j The skill level is sufficient to meet the requirements of Task T i Skill S l The proficiency requirement and unique assignment constraint are as follows:

[0160]

[0161] This constraint ensures that each task T i It can only be assigned to one resource R j ,

[0162] The resource usage restrictions are as follows:

[0163]

[0164] This constraint ensures that each resource R j At any point T k Only one task can be executed.

[0165] Step 1.7: Setting a Multi-Level Optimization Strategy. To improve the optimization performance of the genetic algorithm, this method adopts a multi-level optimization strategy, dividing the algorithm into an exploration phase and an development phase. In these two phases, the algorithm aims to broadly search the solution space and refine the solution quality. The specific strategy is as follows:

[0166] Exploration Phase: In the exploration phase, the goal of the genetic algorithm is to extensively search the solution space and avoid early convergence to local optima. To achieve this, higher crossover and mutation probabilities are used to increase the diversity of the solution space. The operations in this phase include:

[0167] Crossover: Suppose we have two parent individuals, P1 and P2, with gene sequences G1 and G2 respectively. Crossover generates two offspring individuals, C1 and C2, by exchanging genes at a specific location. The crossover formula is as follows:

[0168] C1=Crossover(P1,P2) C2=Crossover(P2,P1)

[0169] The crossover operation is based on a certain probability P. c ,Right now:

[0170] P c =probability of crossover

[0171] Mutation operation: The mutation operation randomly alters the genes of an individual, increasing the diversity of solutions and avoiding getting trapped in local optima. The mutation operation formula is as follows:

[0172] M(x)=x+Δx whereΔx~u(-δ,δ)

[0173] Where Δx represents the amount of variation, usually according to a certain probability P m Mutation

[0174] P m =probablity of mutation

[0175] Development Phase: After the exploration phase, the algorithm enters the development phase, which focuses on fine-tuning the region near the current optimal solution. This phase gradually reduces the mutation and crossover probabilities, enhancing the algorithm's local search capabilities and thus accelerating convergence to the global optimum. The specific operations are as follows:

[0176] Crossover operation: During the development phase, the crossover operation is more refined, with a crossover probability P' c It is gradually reduced, and is usually set to:

[0177] P' c =P c -α where α∈[0,1]

[0178] The crossover method remains the same: select two parent individuals and exchange them to generate offspring individuals.

[0179] Mutation operation: Mutation probability P' m The mutation rate is gradually reduced during the development phase, and mutation operations become more cautious to avoid excessively perturbing the current optimal solution. The mutation probability is set to:

[0180] P' m =P m -β whereβ∈[0,1]

[0181] Fitness evaluation and selection: During the development phase, the fitness of individuals is evaluated to determine which individuals will be selected for the next generation. Assuming the fitness function is f(x), individuals are selected for reproduction based on the value of the fitness function. Selection operations typically employ strategies such as roulette wheel selection, bidding selection, or tournament selection to ensure that individuals with higher fitness are more likely to enter the next generation. The selection probability P... select (x) can be represented as:

[0182]

[0183] Where, x i Let f(x) represent individual i. i The value represents the fitness of the individual, and N is the size of the population.

[0184] Phase transition criteria: The transition between the exploration and development phases can be dynamically based on the following criteria:

[0185] Number of iterations: When a certain number of iterations I is reached max At this point, it automatically switches to the development phase. The iteration count is I. explore Conditions met:

[0186]

[0187] Fitness change rate: If the fitness value does not improve significantly after multiple iterations, the system will determine that the search has become saturated and will automatically enter the development phase.

[0188] Dynamic adjustment mechanism: By analyzing the changing trends of fitness distribution, the timing of the transition is flexibly adjusted according to the performance of the particle swarm to ensure the sufficiency of the search during the exploration phase.

[0189] Step 2: Introducing an adaptive inertia weight adjustment strategy. In the optimization process of genetic algorithms, crossover and mutation operations are key factors affecting search efficiency and solution quality. This method introduces an adaptive crossover and mutation probability adjustment strategy to balance the contradiction between global search and local search, aiming to improve the algorithm's performance in complex scheduling problems. The specific steps are as follows:

[0190] Step 2.1, Adaptive Crossover Probability Adjustment: In the initial stage of the genetic algorithm, the crossover operation is used to enhance the diversity of the population. Therefore, a higher crossover probability P is initially adopted. c This ensures broad coverage of the solution space during the exploration process. As the algorithm iterates, the crossover probability gradually decreases, causing the population to converge towards the optimal solution region. The formula for adjusting the crossover probability is as follows:

[0191]

[0192] Among them, P c(t) represents the crossover probability at the current iteration t; P c0 α is the initial crossover probability; T is the maximum number of iterations; α is a parameter that controls the deceleration rate of the crossover probability.

[0193] Step 2.2, Adaptive Mutation Probability Adjustment: The role of mutation in genetic algorithms is to increase the diversity of solutions and avoid the trap of local optima. To improve the efficiency of mutation operations, this method uses a higher mutation probability P in the early stages of the algorithm. m The mutation probability is gradually reduced as the iteration progresses, allowing for fine-tuning when the solution is close to optimal. The formula for decreasing the mutation probability is as follows:

[0194]

[0195] Among them, P m (t) represents the mutation probability at the current iteration t; P m0 is the initial mutation probability; T is the maximum number of iterations; β is a parameter that controls the deceleration rate of the crossover probability;

[0196] Step 2.3, Fitness Detection and Adaptive Adjustment Mechanism: To further improve the convergence and stability of the genetic algorithm, an adaptive mechanism is adopted to monitor and dynamically adjust the crossover and mutation probabilities in real time. By analyzing the changing trend of the fitness function, when the improvement of the fitness function decreases or after a certain number of iterations, the change in fitness Δf(t) is used to determine whether the crossover and mutation probabilities need to be adjusted.

[0197] Δf(t)=f(t)-f(t-1)

[0198] If Δf(t) is less than the preset threshold ε, it means that the optimization of the solution is close to saturation. At this time, the intensity of crossover and mutation operations can be appropriately reduced to improve the accuracy of local search and enhance the stability of the algorithm.

[0199] Step 3: Implement adaptive genetic algorithm optimization within a multi-level optimization framework. The exploration phase involves randomly initializing the population and broadly searching for potential high-quality scheduling solutions. The development phase focuses on the region surrounding the current excellent solution, performing local fine-tuning to gradually improve the quality of the scheduling solution. Through the coordinated efforts of the exploration and development phases, the algorithm's global search capability and local convergence performance are effectively enhanced. The specific steps are as follows:

[0200] Step 3.1, Population Initialization: Randomly generate an initial population. Each individual is encoded by a gene to represent the task scheduling order, as defined below:

[0201] Chromosome j =RandomPermutation(N),j=1,2...P

[0202] Where N is the number of tasks and P is the population size; and the initial crossover probability P is set. c0 With the initial mutation probability P m0 ;

[0203] Step 3.2, Genetic Operation Execution: Selection is performed based on the fitness function, using roulette wheel or tournament methods to determine parents; crossover and mutation operations are performed with dynamic probabilities P. c (t), P m (t) is performed, and the specific adjustment formula is as follows:

[0204]

[0205] Among them, P c0 P m0 Let t be the initial probability, t be the current generation, T be the maximum number of iterations, and α and β be control parameters.

[0206] Step 3.3, Fitness Assessment and Winner Selection: Using the fitness function

[0207]

[0208] Assess individual quality and select a new generation based on fitness. If an individual with fitness better than the current global optimum exists, update the global optimum and gradually guide the population toward the optimal scheduling scheme.

[0209] Step 4: Generate and validate the scheduling scheme. The task scheduling order is determined by decoding chromosome gene sequences, the start and end times of each task are calculated, and the scheduling scheme is verified to meet multiple constraints such as resource allocation, task dependency, and skill matching. The optimization effect is evaluated by comparing it with traditional methods to verify its superiority and applicability in complex resource-constrained environments. The specific steps are as follows:

[0210] Step 4.1: Generate a scheduling plan: In this stage, the execution order of tasks is determined based on the gene arrangement order in an individual's chromosomes; the start time S of each task is calculated step by step according to the order. i Completion Time C i The formula is as follows:

[0211]

[0212] C i =S i +D i

[0213] Where P i Let D be the set of all prerequisite tasks for task i. iLet EarliestAvailable(i) represent the duration of task i, and EarliestAvailable(i) represent the earliest time that task i can start under the condition that resources are available.

[0214] Step 4.2, Verify Constraints: Resource Constraint Check: Ensure that at any time point t, for each resource r, the following is satisfied:

[0215]

[0216] Where Γ(r,t) represents the set of tasks using resource r at time t, Cap r This represents the maximum capacity of resource r;

[0217] Prerequisite constraints for tasks: For any task pair (i,j) with dependencies, the following must be satisfied:

[0218] C i ≤S j

[0219] That is, task j can only begin after all the preceding tasks i have been completed;

[0220] Skill matching constraint: When resource r is allocated to task i, it must satisfy the skill level q that the task i possesses. r,s Skills not lower than those required for the task i,s ,Right now:

[0221]

[0222] Skills(i) represents the set of skills associated with task i.

Claims

1. A crowdsourcing resource scheduling method for industrial control software based on an adaptive genetic algorithm includes the following steps: Step 1: Construct a multi-dimensional constraint optimization resource scheduling model. First, a multi-dimensional resource scheduling optimization model is constructed, combining task dependencies, resource constraints, and skill matching requirements. The model adopts a multi-objective optimization framework, aiming to minimize project duration and maximize resource utilization efficiency simultaneously. By introducing constraints such as resource availability, task execution order, and skill requirement matching, the scheduling scheme is ensured to not only meet basic operational requirements but also optimize the time and resource allocation efficiency of the entire project process. Step 2: Design a dynamic adjustment strategy for the adaptive genetic algorithm. In the early stage of the algorithm, a wide search space coverage is achieved through a high crossover and mutation rate to avoid getting trapped in local optima. In the later stage of the algorithm, these parameters are gradually reduced to focus on the fine optimization of local optima. By combining task characteristics and real-time fitness feedback, the parameters can be intelligently adjusted at different scheduling stages to improve the search efficiency and accuracy of the algorithm. The specific steps include: Step 2.1, Adaptive Crossover Probability Adjustment: In the early stages of the genetic algorithm, the crossover operation is used to enhance the diversity of the population; therefore, a higher crossover probability is adopted initially. This ensures broad coverage of the solution space during the exploration process; as the algorithm iterates, the crossover probability gradually decreases, causing the population to converge towards the optimal solution region; the formula for adjusting the crossover probability is as follows: , in, For the current iteration Yes, the crossover probability; The initial crossover probability; This represents the maximum number of iterations. Parameters used to control the deceleration rate of the crossover probability; Step 2.2, Adaptive Mutation Probability Adjustment: The role of mutation operation in genetic algorithms is to increase the diversity of solutions and avoid the trap of local optima. To improve the efficiency of mutation operation, this method adopts a higher mutation probability in the early stages of the algorithm. As the iteration progresses, the mutation probability is gradually reduced to allow for fine-tuning when approaching the optimal solution. The formula for decreasing the mutation probability is as follows: , in, For the current iteration The probability of mutation at that time; The initial mutation probability; This represents the maximum number of iterations. Parameters used to control the deceleration rate of the crossover probability; Step 2.3, Fitness Detection and Adaptive Adjustment Mechanism: To further improve the convergence and stability of the genetic algorithm, an adaptive mechanism is adopted to monitor and dynamically adjust the crossover and mutation probabilities in real time. By analyzing the changing trend of the fitness function, when the improvement of the fitness function decreases or the iteration reaches a certain number of iterations, the change in fitness is observed. Used to determine whether crossover and mutation probabilities need to be adjusted: , like Less than the preset threshold If the result is positive, it indicates that the optimization of the solution is close to saturation. At this point, the intensity of crossover and mutation operations should be reduced to improve the accuracy of local search and enhance the stability of the algorithm. Step 3: Introduce multi-level constraint integration and objective function optimization; By integrating task execution time, resource consumption, and task dependency factors, a unified fitness evaluation framework is constructed, and the scheduling scheme is verified and optimized under multiple constraints; Under this framework, the objective function does not only focus on a single optimization objective, but also ensures that the final result can achieve the best performance in multiple dimensions by balancing the conflicts between different objectives, while satisfying the constraints of resource allocation, task order, and skill matching. Step 4: Generate a scheduling scheme and perform multi-level performance verification. After the algorithm optimization is completed, the optimal solution in the genetic algorithm is decoded to generate a specific task scheduling scheme, and the start time, end time, and resource allocation of each task are calculated. Then, multi-level scheme verification is performed to ensure that resource constraints, task dependencies, and skill matching constraints are all met. At the same time, by comparing with other scheduling methods, the system evaluates the advantages of this method in solving the resource scheduling problem of crowdsourcing in industrial control software, and verifies its applicability and superiority in complex scenarios.

2. The crowdsourcing resource scheduling method for industrial control software based on adaptive genetic algorithm according to claim 1, characterized in that: The resource scheduling model constructed in step 1, which integrates task dependency, resource constraints, and skill matching, adopts a multi-objective optimization framework to minimize project duration and maximize resource utilization. This model ensures the rationality and efficiency of the scheduling scheme by integrating task order and resource availability constraints. Its advantages lie in improving resource utilization, shortening construction period, and flexibly responding to complex scheduling environments, providing decision-makers with optimized scheduling solutions, and effectively improving the resource scheduling efficiency of industrial control software crowdsourcing testing. The specific steps are as follows: Step 1.1: Define four important index sets: task index set, resource index set, time index set, and skill index set. The specific definitions are as follows: Task Index: , represents all tasks to be scheduled, where For the task ; Resource Index: , represents all available resources, where For resources ; Time Index: This indicates a point in time in the project, with the time interval starting from... (Start Time) to (End time); Skill Index: , represents all skills, among which For skills ; Step 1.2: Define the model input parameters, which consist of six parts, namely the resource set. Task Set Skills Program Number of tasks Resource quantity Number of skills The resource collection It contains all available resources; a collection of tasks. It includes all tasks that need to be scheduled; skill plan It contains all the skills required to perform the task; Number of tasks This is the total number of tasks in the project; Resource quantity This refers to the total number of resources in the project; the number of skills. It is the total number of skills in the project; Resource Collection: This represents all available resources; Task Collection: This represents all tasks awaiting scheduling; Skills Plan: This indicates the skill plan required for each task; Number of tasks: That is, the total number of tasks; Resource quantity: That is, the total number of resources; Number of skills: That is, the total number of skills; Step 1.3: Define the variables related to the scheduling task, which includes seven parts, namely the task duration. Task start time Skill Requirements Resource control level Prerequisite task set ; Task duration: , indicating task The execution duration; Task start time: , indicating task The start time of execution; Skill requirements: , indicating task skills Requirements; Resource control level: , indicating task skills The level of mastery; Prerequisite tasks: , indicating task The set of prerequisite tasks; Step 1.4: Define decision variables, which consist of two parts, describing the allocation of tasks and resources, and the execution status of tasks at specific points in time: Assign decision variables: , indicating task Is it assigned to a resource? ; Decision variables: , indicating task Is it at a certain point in time? Resources implement; ; ; Step 1.5: Construct the optimization objective function. The core of this step is to optimize the project's completion time (Makespan) by constructing the objective function. The objective function describes the maximum completion time of all tasks in the project, i.e., the total project duration, and is defined as follows: , In both the exploration and development phases, task priority weights are adjusted based on task importance to make the optimization objectives more adaptable to the optimization needs of different phases. Exploration Phase: Task priority weight is set to the reciprocal of task duration. , Development phase: Task priority weight is set to the task duration. , The optimization objective is: , Step 1.6: Establish constraints. A series of constraints need to be introduced into the model to ensure the feasibility of the task and the rational allocation of resources. These constraints include the following categories: The task priority constraints are as follows: , This constraint ensures the task Only in all its prerequisite tasks Start after completion. Skill matching constraints are as follows: , This constraint ensures the allocation of resources The skill level is sufficient to meet the task requirements. skills Proficiency requirements The unique assignment constraint is as follows: , This constraint ensures that each task It can only be assigned to one resource , The resource usage restrictions are as follows: , This constraint ensures that every resource at any point in time Only one task can be executed. Step 1.7: Setting a Multi-Level Optimization Strategy. To improve the optimization performance of the genetic algorithm, this method adopts a multi-level optimization strategy, dividing the algorithm into an exploration phase and an development phase. In these two phases, the algorithm aims to broadly search the solution space and refine the solution quality, respectively. The specific strategies are as follows: Exploration Phase: In the exploration phase, the goal of the genetic algorithm is to extensively search the solution space and avoid early convergence to local optima. To achieve this goal, a larger crossover and mutation probability is used to increase the diversity of the solution space. The operations in this phase include: Crossover operation: Suppose we have two parent individuals and Their gene sequences are respectively and Crossover generates two offspring by exchanging genes at a specific location. and The crossover operation formula is as follows: , The crossover operation is based on a certain probability. ,Right now: , Mutation operation: The mutation operation randomly alters the genes of an individual, increasing the diversity of solutions and avoiding getting trapped in local optima; the mutation operation formula is as follows: , in Represents the amount of variation, according to a certain probability. Mutation , Development Phase: After the exploration phase, the algorithm enters the development phase, which focuses on fine-tuning the region near the current optimal solution. During this phase, the mutation and crossover probabilities are gradually reduced to enhance the algorithm's local search capabilities, thereby accelerating convergence to the global optimum. The specific operations are as follows: Crossover operations: During the development phase, crossover operations are more refined, with crossover probabilities... It was gradually reduced and set to: , The method of crossover is still to select two parent individuals and exchange them to generate offspring individuals; Mutation operation: Mutation probability During the development phase, the mutation rate is gradually reduced, and mutation operations become more cautious to avoid excessively perturbing the current optimal solution. The mutation probability is set to: , Fitness evaluation and selection operations: During the development phase, the fitness of individuals is evaluated to determine which individuals will be selected for the next generation. Assume the fitness function is... Individuals are selected for reproduction based on the fitness function value. The selection operation employs roulette wheel selection, bidding selection, or tournament selection strategies to ensure that individuals with higher fitness are more likely to enter the next generation. The selection probability... It can be represented as: , in, Represents an individual , This indicates the fitness of the individual. Population size; Phase transition criteria: The transition between the exploration and development phases is dynamically based on the following criteria: Number of iterations: When a certain number of iterations is reached... At this point, it automatically switches to the development phase; at this time, the number of iterations... Conditions met: , Fitness change rate: If the fitness value does not improve significantly after multiple iterations, the system will determine that the search has become saturated and will automatically enter the development phase. Dynamic adjustment mechanism: By analyzing the changing trends of fitness distribution, the timing of the transition is flexibly adjusted according to the performance of the particle swarm to ensure the sufficiency of the search during the exploration phase.

3. The crowdsourcing resource scheduling method for industrial control software based on adaptive genetic algorithm according to claim 1, characterized in that: Step 3 implements adaptive genetic algorithm optimization within a multi-level optimization framework. The exploration phase involves randomly initializing the population and extensively searching for potential high-quality scheduling solutions. The development phase focuses on the region surrounding the current excellent solution, performing local fine-tuning to gradually improve the quality of the scheduling solution. Through the synergistic cooperation between the exploration and development phases, the algorithm's global search capability and local convergence performance are effectively enhanced. The specific steps are as follows: Step 3.1, Population Initialization: Randomly generate an initial population. Each individual is encoded by a gene to represent the task scheduling order, as defined below: , in, For the number of tasks, The population size is set; the initial crossover probability is also set. With initial mutation probability ; Step 3.2, Genetic Operation Execution: Selection is performed based on the fitness function, using roulette wheel or tournament methods to determine parents; crossover and mutation operations are performed using dynamic probabilities. , The specific adjustment formula is as follows: , , in, , The initial probability, For the current algebra, The maximum number of iterations. , For control parameters; Step 3.3, Fitness Assessment and Winner Selection: Using the fitness function , Assess individual quality and select a new generation based on fitness. If an individual with fitness better than the current global optimum exists, update the global optimum and gradually guide the population toward the optimal scheduling scheme.

4. The crowdsourcing resource scheduling method for industrial control software based on adaptive genetic algorithm according to claim 1, characterized in that: Step 4 generates and verifies the scheduling scheme. This involves determining the task scheduling order by decoding chromosome gene sequences, calculating the start and end times of each task, and verifying whether the scheduling scheme meets multiple constraints related to resource allocation, task dependency, and skill matching. The optimization effect is evaluated by comparing it with traditional methods to verify its superiority and applicability in complex resource-constrained environments. The specific steps are as follows: Step 4.1: Generating a Scheduling Plan: In this stage, the execution order of tasks is determined based on the gene arrangement order in an individual's chromosomes; the start time of each task is calculated step by step according to the order. Completion Time The formula is as follows: , , in For the task The set of all prerequisite tasks, For the task Duration, This indicates that the task is performed under the condition that resources are available. The earliest time that can begin; Step 4.2, Verify Constraints: Resource Constraint Check: Ensure that at any given time point... For each resource ,satisfy: , in Indicates time Resources are in use The task set, Representing resources Maximum capacity; Task prerequisite constraints: For any pair of tasks with dependencies... It must meet the following requirements: , That is, the task Only in all prerequisite tasks You can only begin after this is completed; Skill matching constraints: resources Assigned to task At that time, the skill level they have mastered must be met. Skills not lower than those required for the task ,Right now: , in Indicates task The set of skills associated with it.