Parallel test task scheduling method for distributed test system of multi-target equipment

Through the parallel test task scheduling method of multi-objective equipment distributed testing system, the problems of long test time and low resource utilization in traditional testing methods are solved, shortening test time and improving resource utilization, and improving the efficiency of equipment testing system.

CN120336197AActive Publication Date: 2025-07-18NAVAL AVIATION UNIV

Patent Information

Application Number
CN202510819953.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-19
Publication Date
2025-07-18
Estimated Expiration
2045-06-19

AI Technical Summary

Technical Problem

Traditional equipment testing methods have long testing time and low resource utilization, which cannot meet the needs of modern equipment testing systems.

Method used

The parallel test task scheduling method of multi-objective equipment distributed testing system is adopted, and the equipment parallel test task scheduling model is described through mathematical methods, the constraint relationship between test tasks and resources is determined, the fitness function is designed, and the improved gray wolf optimization algorithm MIGWO is used for solution, so as to shorten the test time and improve the resource utilization rate.

Benefits of technology

It significantly shortens the testing time, improves resource utilization, and improves testing efficiency and resource balance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120336197A_ABST
    Figure CN120336197A_ABST
Patent Text Reader

Abstract

The invention relates to a parallel test task scheduling method for a multi-target equipment distributed test system, and belongs to the technical field of scheduling methods. The invention provides a parallel test task scheduling method for a multi-target equipment distributed test system and aims to solve the problems that current equipment models are continuously increased, the number and complexity of equipment test tasks are obviously increased, a traditional test method is long in test time and low in resource utilization rate, and equipment test requirements at the current stage cannot be met. The method can obviously shorten the test time and improve the resource utilization rate, and comprises the following steps: step 1, describing an equipment parallel test task scheduling model by adopting a mathematical method; step 2, determining a constraint relationship of the test task on test time sequence and resources and a constraint condition satisfied between the test task and the test resources; 3, determining a fitness function corresponding to the test time and the resource utilization balance degree, and designing an overall fitness function; and step 4, solving the fitness function.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a test task scheduling method, specifically a parallel test task scheduling method for a multi-target equipment distributed test system, belonging to the technical field of scheduling methods. Background Art

[0002] With the continuous development of technology, various high and new technologies have been continuously applied to modern equipment, putting forward higher requirements for the equipment test system. With the rapid development of network technology, the networked equipment test system has become the development trend of the equipment test system. Among them, the equipment distributed test system is an equipment test system that connects test devices and test computers distributed at different nodes based on the network to achieve functions such as resource sharing, collaborative work, and centralized management. The equipment distributed test system can better solve problems such as low versatility, poor scalability, and high resource occupation in the equipment test system, and has become one of the development trends of the current equipment test system.

[0003] For the equipment distributed test system, due to the ability to achieve resource sharing through the network, the richness of instrument resources has been greatly improved. Traditional serial testing is to complete tests one by one for test tasks, and the next test task must wait for the current test task to be completed before it can be tested, resulting in a significant increase in test time and serious idleness of instrument resources, which obviously cannot meet the needs of the current development of the equipment test system. Summary of the Invention

[0004] In view of the continuous increase in the number of current equipment models, the number and complexity of equipment test tasks have increased significantly, and the traditional test method not only has a long test time but also low resource utilization rate, which cannot meet the current equipment test needs. The present invention provides a parallel test task scheduling method for a multi-target equipment distributed test system, which can significantly shorten the test time and improve the resource utilization rate.

[0005] To achieve the above object, the present invention adopts the following technical solutions: A parallel test task scheduling method for a multi-target equipment distributed test system, which is characterized in that it includes the following steps: Step 1: Use a mathematical method to describe the equipment parallel test task scheduling model; Step 2: Determine the constraint relationships existing in the test tasks in terms of test timing and resources in the parallel test task scheduling model in Step 1, and the constraint conditions satisfied between the test tasks and test resources; Step 3: Determine the fitness functions corresponding to the test time and the resource utilization balance degree, measure the importance of the two optimization objectives, and design the overall fitness function; Step 4: Solve the fitness function in Step 3; Furthermore, the equipment parallel test task scheduling model in step 1 includes a test task set, a test resource set, a task-resource association matrix, a task constraint matrix, a task time set, a task solution set, and a task scheduling sequence; Among them, the test task set is expressed as: , The individual test tasks represent equipment of different models; The test resource set is expressed as: , The individual test resources represent different test instruments; The task-resource association matrix is expressed as: , where is a matrix, representing the test resources required by different test tasks during testing. If test task has a test solution and occupies test resource , then ; if it does not occupy this resource, The task constraint matrix is expressed as: , is a matrix that describes the time constraint relationship between different test tasks and can reflect the execution order of test tasks. If , it means that test task is executed before test task ; otherwise , it means that there is no time constraint relationship between test task and test task ; The task time set is expressed as: , represents the time required for test task to complete the test; The task solution set is expressed as: The task solution set represents the selectable solutions for test task ; Each test resource can implement the testing of multiple tasks, and each test task can select different test resources to complete the test. Therefore, the scheduling scheme for parallel test task scheduling is not unique; The task scheduling sequence is expressed as: , is a way to express the scheduling scheme of test task on test resource , is a A matrix where the rows represent different test resources and the columns represent the steps of parallel testing. , Take between, indicating that at the th step, the test resource is occupied by the test task . If is 0, it means that the test resource at the th step is not occupied, and the test task at the th step is executed before the test task at the th step. Each element of the matrix represents the number of a test task at a certain time point. Furthermore, there are different constraint relationships in terms of test timing and resources among some of the test tasks in step 2. The constraint relationships among the test tasks are divided into the following three categories: Furthermore, there are different constraint relationships in terms of test timing and resources among some of the test tasks in step 2. The constraint relationships among the test tasks are divided into the following three categories: (1) Resource-related: Let , be two test tasks, and the resources required for testing are , respectively. If there is no intersection between the resources , , then , are resource-independent; otherwise, they are resource-related. (2) Control-related: Let , be two test tasks. If the test of can determine whether is tested together, then is control-related to ; otherwise, it is called control-independent. (3) Data-related: Let , be two test tasks. If , are input and output to each other, then , are data-related. Furthermore, the following three constraint conditions need to be satisfied between the test tasks and the test resources in step 2: (1) At most one test task can occupy the same test resource at the same time. (2) When the current test task is being executed, the occupied resources will be continuously occupied by this task until the test task ends. (3) The test scheme selected by the test task at the same time is unique. Furthermore, step 3 includes the following steps: Step 3.1: Determine the objective function according to the constraint conditions in step 2. Objective function: , Basic constraint conditions: The test tasks with higher task priorities are tested first, that is , ; Resource conflicts are avoided between two test tasks being tested simultaneously, that is , ; Among them, represents the total execution time of the test tasks, represents the average utilization rate of the test resources; is the test task scheduling test scheme, is the test task in the test task scheduling scheme the serial number; is the test task in the serial number requires the test resources to be used; Step 3.2. Design a fitness function according to the total execution time of the test tasks in Step 3.1 : , In the formula: represents the completion time of all tasks tested in series, and the fitness function The larger it is, the shorter the total execution time of the test tasks; Step 3.3. Design a fitness function according to the average utilization rate of the test resources in Step 3.1 : , In the formula: represents the total time occupied by the test task on the resource , represents the minimum value of the total time occupied among all resources, and the fitness function The larger it is, the more balanced the resource utilization; Step 3.4. Design an overall fitness function according to the fitness function in Step 3.2 and the fitness function in Step 3.3 : , In the formula: , are constants, which are set according to test experience or actual test requirements; Furthermore, Step 4 is solved using the improved grey wolf optimization algorithm MIGWO; Furthermore, Step 4 specifically includes the following steps: Step 4.1. Initial parameter setting: Initialize the population, and according to the task constraint matrix in Step 1 , the task-resource association matrix , randomly generate a task scheduling sequence that meets the conditions ; Step 4.2. Initial population differentiation: Divide the initial population in Step 4.1 into two initial sub-populations with the same number according to and two fitness functions. The two initial sub-populations carry out independent evolution according to the fitness functions and respectively; Step 4.3. Update the individuals in the two initial sub-populations in Step 4.2: Calculate the fitness values of the individuals in the two initial sub-populations in Step 4.2 respectively, sort them according to the fitness value, and select the top three individuals with the highest fitness value in each sub-population as , , wolves. Sort the remaining individuals according to the current fitness value and divide them into three intervals with roughly the same number; Individuals in the interval with low fitness value are crossed with the individual with the highest fitness value by PBX; individuals in the interval with medium fitness value are crossed with the second individual with the highest fitness value by PBX, and individuals in the interval with high fitness value are crossed with the third individual with the highest fitness value by PBX; check the generated new individuals, delete the repeated tasks, and re-insert the untested tasks into the unoccupied resources to make the new individuals meet the requirements of the task scheduling sequence requirements; The top three individuals with the highest fitness value are used as elite individuals and reserved for the next cycle; Step 4.4. Neighborhood search: Merge the updated individuals in the two populations in Step 4.3. A random number between [0, 1] is generated for each individual in the merged new population and compared with value. The value is also a randomly generated number between [0, 1]. If it is greater than value, perform the first type of neighborhood structure search , if it is less than value, perform the second type of neighborhood structure search . Calculate the overall fitness value of the new individuals after performing the neighborhood search and the original individuals in the population, and retain the individuals with the higher overall fitness value. Check whether the maximum number of cycles has been reached. If so, jump to Step 4.6; otherwise, jump to Step 4.5; Step 4.5, Elite Merging: Divide the population after neighborhood search into two new populations of the same size according to two fitness functions. Then, merge the individuals in the two new populations with the top 3 elite individuals with the highest fitness values reserved in Step 4.3, and go to Step 4.3 for the next loop; Step 4.6, Determine the Optimal Result: Stop the loop, calculate the overall fitness value of all individuals after neighborhood search, select the individual with the highest overall fitness value as the final optimization result, and record and save the fitness value and task scheduling sequence of this individual; Furthermore, the task scheduling sequence in Step 4.1 is generated using an encoding method, and the specific process is as follows: Task scheduling sequence Generation method for the first column: In the resource set select resources in the order from to . According to the task-resource association matrix , randomly select a task from the tasks that occupy resources, determine all the resources occupied by this task , fill the corresponding positions in the corresponding rows of all the occupied resources in the first column of the task scheduling sequence with the task numbers , and delete all the occupied resources of the task from the resource set; Delete the tasks already selected in the first column of the task scheduling sequence from the task set , regenerate a resource set with full resources, and then generate the second column for the task scheduling sequence . The generation methods for the second column and subsequent columns are the same as that for the first column. Therefore, repeat the generation process of the first column until the task set is empty, indicating that all test tasks have participated in the test, and fill the remaining positions of the task scheduling sequence with 0; Task may include test scenarios. Each test scenario occupies different resources and time, but when executing the test task , only one test scenario can be selected. To facilitate the solution, the method for generating the task scheduling sequence remains basically the same, and the task association matrix and task set are improved to meet the requirements; If in the test tasks, task includes test scenarios, the improved task set is: , represents the th test scenario of the test task , and the improved task association matrix is Matrix, as shown below: , When generating the task scheduling sequence, if task is randomly selected from the tasks that occupy resources , it is necessary to delete all tasks from task to in the task set. At the same time, all columns from the to in the task resource association matrix are set to 0, indicating that task has been selected to avoid subsequent repeated execution of this task; Further, the PBX crossover in step 4.3 is specifically as follows: Cross the individual with a low fitness value with wolves, cross the individual with a medium fitness value with wolves, and cross the individual with a high fitness value with wolves to improve the overall fitness value of the population and increase the diversity of the population. The specific crossover process is as follows: Select several positions of the excellent individual, inherit the selected positions to the same positions of the executing individual, and insert the remaining unfinished tasks into the unoccupied resources in sequence from the first column according to the resource occupation relationship until a new individual that meets the task scheduling requirements is generated; Further, the first neighborhood structure search in step 4.4 is specifically as follows: Randomly select an individual from each of the two populations, randomly select a column of the two individuals for exchange, check the two new individuals after the exchange, delete the tasks that repeat the exchanged column, and insert the missing tasks into the unoccupied resources in sequence from the first column to generate a new individual that meets the task scheduling requirements; Further, the second neighborhood structure search in step 4.4 is specifically as follows: Randomly select an individual from each of the two populations, randomly select a column of one individual and insert it into the column before the same position column of the other individual, delete the last column of the inserted individual, and perform the same operation on both individuals. Check the two new individuals after the insertion, delete the tasks that repeat the inserted column, and insert the missing tasks into the unoccupied resources in sequence from the first column to generate a new individual that meets the task scheduling requirements.

[0006] The parallel test task scheduling method for the multi-objective equipment distributed test system proposed by the present invention introduces a dual-objective optimization mechanism, with the "total execution time of test tasks" and "resource utilization balance degree" as the optimization objectives. The initial population is divided into two sub-groups, which independently evolve based on different fitness functions, namely speedup ratio and average resource utilization rate, respectively, solving the problem that the traditional single-objective optimization algorithm cannot take into account resource balance. Aiming at the limitation that the traditional Grey Wolf Optimization Algorithm (GWO) is only applicable to continuous optimization problems, a discretization improvement method is proposed. Through coding design, crossover operation and neighborhood search strategy, it is applied to the parallel test task scheduling problem. A coding method in matrix form is designed for the parallel test task scheduling of the equipment distributed test system, and the discrete update of individuals is realized in combination with the PBX crossover operation to ensure that the generated scheduling scheme meets the actual task constraints, significantly shortening the test time and improving the resource utilization rate. BRIEF DESCRIPTION OF THE DRAWINGS

[0007] Figure 1 is the flow chart of the present invention; Figure 2 is the flow chart of the MIGWO algorithm; Figure 3 is the schematic diagram of the PBX crossover process; Figure 4 is the fitness of the new population 1 convergence curve graph; Figure 5 is the fitness of the new population 2 convergence curve graph; Figure 6 is the comparison graph of the maximum fitness values of three algorithms ; Figure 7 is the comparison graph of the maximum fitness values of three algorithms ; Figure 8 is the comparison graph of the maximum fitness values of three algorithms ; Figure 9 is the Gantt chart of the optimal scheduling sequence of the MIGWO algorithm; Figure 10 is the Gantt chart of the optimal scheduling sequence of the GWO algorithm; Figure 11 is the Gantt chart of the optimal scheduling sequence of the GA algorithm. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0008] The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments of the present invention. All other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.

[0009] Example 1. A parallel test task scheduling method for a multi-target equipment distributed test system, and the specific process is as follows Figure 1 shown, including the following steps: Step 1: Use a mathematical method to describe the equipment parallel test task scheduling model; Step 2: Determine the constraint relationships existing in the test tasks in terms of test timing and resources in the parallel test task scheduling model in Step 1, and the constraint conditions satisfied between the test tasks and test resources; Step 3: Determine the fitness functions corresponding to the test time and the resource utilization balance degree, measure the importance of the two optimization objectives, and design the overall fitness function; Step 4: Solve the fitness function in Step 3.

[0010] Among them, the equipment parallel test task scheduling model in Step 1 includes a test task set, a set of test resources, a task-resource association matrix, a task constraint matrix, a task time set, a task solution set, and a task scheduling sequence; Among them, the test task set is expressed as: , The \(n\) test tasks represent different models of equipment; The set of test resources is expressed as: , The \(m\) test resources represent different test instruments; The task-resource association matrix is expressed as: , is an \(n\times m\) matrix, indicating the test resources required by different test tasks during testing. If the test task has a test solution and occupies the test resource , then , if it does not occupy this resource, ; The task constraint matrix is expressed as: , is an \(n\times n\) matrix, describing the constraint relationships in time between different test tasks, and can reflect the execution order of test tasks. If , it means that the test task is executed before the test task , otherwise , it means that there is no time constraint relationship between the test task and the test task ; The task time set is expressed as: , Represents a test task The time required to complete the test; The task solution set is expressed as: , the task solution set represents the test task The options available; Each test resource can test multiple tasks, and each test task can select different test resources to complete the test. Therefore, the scheduling scheme for parallel test task scheduling is not unique; The task scheduling sequence is expressed as: , It is a test task In testing resources The way to express the scheduling plan on is a The matrix, rows represent different test resources, and columns represent the steps of parallel testing. , Pick Between, indicating Steps occupy test resources Test tasks ,if is 0, indicating Step Testing Resources Not occupied, The test task of step 1 is The test task of the first step is executed first, and each element of the matrix represents the number of a test task at a certain time point.

[0011] Among them, in step 2, some test tasks have different constraints on test timing and resources. The constraints between test tasks are divided into the following three categories: (1) Resource related: , There are two test tasks. The resources required for testing are , If the resource , There is no intersection between them, so it is called , Resource-independent, otherwise resource-dependent; (2) Control related: , For two test tasks, if The test can determine If they are tested together, Control related to ; Otherwise, it is called control irrelevant; (3) Data related: , For two test tasks, if , take each other as input and output, then , they are data-related.

[0012] Among them, the following three constraint conditions need to be satisfied between the test tasks and test resources in step 2: (1) At most one test task can occupy the same test resource at the same time; (2) When the current test task is executing, the occupied resources will be continuously occupied by this task until the test task ends; (3) The test scheme selected by the test task at the same time is unique.

[0013] Among them, step 3 includes the following steps: Step 3.1: Determine the objective function according to the constraint conditions in step 2: Objective function: , Basic constraint conditions: The test task with a higher task priority is tested first, that is , ; Two test tasks tested simultaneously avoid resource conflicts, that is , ; Among them, represents the total execution time of the test task, represents the average utilization rate of the test resource; is the task scheduling test scheme, is the test task in the test task scheduling scheme sorting number; is the test task in sorting number requires the test resources to be used; Step 3.2: Design the fitness function according to the total execution time of the test task in step 3.1 : , In the formula: represents the completion time of all tasks tested serially, and the larger the fitness function , the shorter the total execution time of the test task; Step 3.3: Design the fitness function according to the average utilization rate of the test resources in step 3.1 : , In the formula: represents the test task on the resource The total time occupied above represents the minimum value of the total time occupied among all resources, and the fitness function The larger it is, the more balanced the resource utilization is; Step 3.4. According to the fitness function in Step 3.2 and the fitness function in Step 3.3 design the overall fitness function : , In the formula: , are constants, which are set according to test experience or actual test requirements.

[0014] Among them, Step 4 is solved by using the improved grey wolf optimization algorithm MIGWO.

[0015] Among them, as Figure 2 shown, Step 4 specifically includes the following steps: Step 4.1. Initial parameter setting: Initialize the population, and according to the task constraint matrix in Step 1 , the task-resource association matrix , randomly generate a task scheduling sequence that meets the conditions ; Step 4.2. Initial population differentiation: Divide the initial population in Step 4.1 into two initial sub-populations with the same number according to and the two fitness functions. The two initial sub-populations carry out independent evolution according to the fitness functions and respectively; Step 4.3. Update the individuals in the two initial sub-populations in Step 4.2: Calculate the fitness values of the individuals in the two initial sub-populations in Step 4.2 respectively, sort them according to the size of the fitness values, and select the top three individuals with the highest fitness values in each sub-population as , , wolves. Sort the remaining individuals according to the current fitness values and divide them into three intervals with roughly the same number; Individuals in the interval with low fitness values are crossed with the individual with the highest fitness value by PBX; individuals in the interval with medium fitness values are crossed with the individual with the second highest fitness value by PBX, and individuals in the interval with high fitness values are crossed with the individual with the third highest fitness value by PBX; Check the generated new individuals, delete the repeated tasks, and re-insert the untested tasks into the unoccupied resources to make the new individuals meet the requirements of the task scheduling sequence requirements; The top three individuals with the highest fitness values are used as elite individuals and reserved for the next cycle; Step 4.4, Neighborhood Search: Merge the updated individuals in the two populations in Step 4.3. For each individual in the new population after merging, generate a random number between [0, 1], and compare it with value. The value is also a randomly generated number between [0, 1]. If it is greater than the value, perform the first type of neighborhood structure search , if it is less than the value, perform the second type of neighborhood structure search . Calculate the overall fitness value of the new individuals after performing the neighborhood search and the original individuals in the population, and retain the individuals with the higher overall fitness value. Check whether the maximum number of iterations is reached. If so, jump to Step 4.6; otherwise, jump to Step 4.5; Step 4.5, Elite Merging: Divide the population after completing the neighborhood search into two new populations with the same number according to the two fitness functions. Merge the individuals in the two new populations with the top 3 elite individuals with the highest fitness values retained in Step 4.3 respectively, and then go to Step 4.3 for the next iteration;

[0016] Among them, the task scheduling sequence in Step 4.1 is generated by using the encoding method, and the specific process is as follows: The generation method of the first column of the task scheduling sequence: Select resources in the resource set in the order from to to . According to the task-resource association matrix , randomly select a task from the tasks that occupy the resources, determine all the resources occupied by this task , fill the corresponding positions of the corresponding rows of all the occupied resources in the first column of the task scheduling sequence with the task numbers , and delete all the occupied resources of the task from the resource set; Delete the tasks already selected in the first column of the task scheduling sequence from the task set , regenerate a full-resource resource set, and then generate the second column for the task scheduling sequence . The generation methods of the second column and subsequent columns are the same as that of the first column. Therefore, repeat the generation process of the first column until the task set is empty, indicating that all test tasks have participated in the test, and fill the remaining positions of the task scheduling sequence with 0; Task May include test scenarios, and each test scenario occupies different resources and time. However, when executing the test task , only one test scenario can be selected. For the convenience of solving, the method for generating the task scheduling sequence remains basically unchanged, and the task association matrix and task set are improved to meet the requirements; If in the test task, task includes test scenarios, the improved task set is: , represents the th test scenario of test task . The improved task association matrix is matrix, as shown below: , When generating the task scheduling sequence, if task is randomly selected from the tasks that occupy resources , all tasks from task to in the task set need to be deleted. At the same time, all columns from the th to th in the task resource association matrix are set to 0, indicating that task has been selected to avoid subsequent repeated execution of this task.

[0017] Among them, as Figure 3 shown, the PBX crossover in step 4.3 is specifically as follows: Cross the individual with a low fitness value with wolf, the individual with a medium fitness value with wolf, and the individual with a high fitness value with wolf to improve the overall fitness value of the population and increase the diversity of the population. The specific crossover process is: select several positions of the excellent individual, inherit the selected positions to the same positions of the executing individual, and insert the remaining unfinished tasks into the unoccupied resources in turn according to the resource occupation relationship starting from the first column until a new individual that meets the task scheduling requirements is generated.

[0018] Among them, the first neighborhood structure search described in step 4.4 is specifically as follows: randomly select an individual from each of the two populations, randomly select a column of the two individuals for exchange, check the two new individuals after the exchange, delete the tasks that repeat with the exchanged column, and insert the missing tasks into the unoccupied resources in turn starting from the first column to generate a new individual that meets the task scheduling requirements; Among them, the second neighborhood structure search described in step 4.4 The specific steps are as follows: Randomly select one individual from each of the two populations, randomly select a column of one individual and insert it into the column immediately before the same-position column of the other individual, delete the last column of the individual to be inserted, perform the same operation on both individuals, check the two new individuals after insertion, delete the tasks that are repeated with the inserted column, and insert the missing tasks into the unoccupied resources in sequence starting from the first column to generate new individuals that meet the task scheduling requirements.

[0019] Example 2. The improved grey wolf optimization algorithm MIGWO is used to verify the step 4 in Example 1.

[0020] To verify the performance of the MIGWO algorithm, according to the data processed from a certain typical equipment test experiment, a comparison is made between the grey wolf optimization algorithm (GWO algorithm) and the genetic algorithm (GA algorithm). Here, only the coding method of the GWO algorithm is modified. The simulation environment configuration is shown in Table 1.

[0021] Table 1 Simulation environment configuration , In this experiment, there are a total of 28 test tasks, which are represented by respectively. If represents the test task and precedes the test task in execution, then the constraints between tasks in this example are: , , ; There are a total of 9 test resources, which are represented by respectively. The test tasks, test schemes, and test task durations are shown in Table 2, where each task has at most 3 schemes, represented by 1 - 3, and the unit of test time is seconds.

[0022] Table 2 Test tasks, schemes, resources, and time , In the experiment, the population sizes of the MIGWO algorithm, GWO algorithm, and GA algorithm are all set to 200, and the number of iterations is 50 times. Among them, the crossover probability of the GA algorithm is 0.7, and the mutation probability is 0.6.

[0023] According to the above experimental data, the simulation results of the MIGWO algorithm, GWO algorithm, and GA algorithm are as follows: (1) The convergence curves of the two populations in the MIGWO algorithm Respectively simulate the experimental situations of the two populations evolving according to different optimization objectives in the MIGWO algorithm. Figure 4 represents the fitness of the new population 1 in the MIGWO algorithm flowchart convergence curve, The x-axis represents the number of iterations, and the y-axis represents the fitness value. The three curves in the figure respectively represent the maximum, median, and minimum fitness values among all individuals in the new population 1 of each generation.

[0024] It can be seen from Figure 4 that the fitness values of all individuals in the new population 1 finally converge to the maximum value, and the convergence speed of the entire population is relatively fast. Although the situation of falling into the local optimal solution occurs during the iteration process, it quickly jumps out of the local optimal solution.

[0025] Figure 5 represents the fitness convergence curve of the new population 2 in the MIGWO algorithm flow chart, the x-axis represents the number of iterations, and the y-axis represents the fitness value. The three curves in the figure respectively represent the maximum, median, and minimum fitness values among all individuals in the new population 2 of each generation.

[0026] It can be seen from Figure 5 that the fitness values of all individuals in the new population 2 finally converge to the maximum value, and the convergence speed of the entire population is relatively fast, and the ability to jump out of the local optimal solution is also strong.

[0027] Combining the convergence situations of the two populations, it can be seen that the convergence speeds of both populations are relatively fast, and the ability to jump out of the local optimal solution is strong. As the number of iterations increases continuously, the fitness values of all individuals in both populations reach the maximum value, achieving the effect of double-objective optimization. The fitness of the individuals in the new population 1 converges to 3.440, and the total test execution time converted is 116 seconds. The fitness of the individuals in the new population 2 converges to 0.9709, that is, the average resource utilization rate reaches 97.09%.

[0028] (2)Comparison curve graphs of three algorithms Simulations are carried out on the MIGWO algorithm, GWO algorithm, and GA algorithm, and comparisons are made from three aspects: the maximum fitness , the maximum fitness , and the overall maximum fitness . See Figures 6 - 8 . Among them, the MIGWO algorithm calculates the , , and values of all individuals in the new population 4 in the MIGWO algorithm flow chart, and selects the , and maximum value; Since the GWO algorithm and the GA algorithm can only optimize single-objectives, the overall fitness is used as the optimization objective to calculate the , and values of all individuals in each generation of the population, and select the , and maximum value among all individuals.

[0029] Figure 6 is the comparative curve graph of the maximum values of the fitness of the three algorithms changing with the number of iterations. It can be seen from the figure that the final convergence result of the maximum value of the fitness of the MIGWO algorithm is better than that of the GWO algorithm and the GA algorithm, and the convergence speed and the ability to jump out of the local optimal solution of the MIGWO algorithm are better than those of the GWO algorithm and the GA algorithm.

[0030] Figure 7 is the comparative curve graph of the maximum values of the fitness of the three algorithms changing with the number of iterations. It can be seen from the figure that the MIGWO algorithm has almost found the maximum value of the fitness since the beginning of the iteration. The speed of finding the optimal solution is significantly faster than that of the GWO and GA algorithms, and the situation where the GWO algorithm and the GA algorithm fall into the local optimum multiple times does not occur. From the perspective of the final convergence results of the three algorithms, the final convergence result of the maximum value of the fitness of the MIGWO algorithm is better than that of the GWO algorithm and the GA algorithm, indicating that the average resource utilization rate of the optimal scheduling sequence obtained by the MIGWO algorithm is higher than that of the GWO and GA algorithms under the same test conditions.

[0031] Figure 8 is the comparative curve graph of the maximum values of the fitness of the three algorithms changing with the number of iterations. It can be seen from the figure that although all three algorithms can reach convergence relatively quickly as the number of iterations increases, the convergence speed of the MIGWO algorithm is faster, and the final convergence result of the maximum value of the fitness of the MIGWO algorithm is better than that of the GWO and GA algorithms, indicating that under the same test conditions, the overall effect of the optimal scheduling sequence obtained by the MIGWO algorithm is better than that of the optimal scheduling sequences obtained by the GWO and GA algorithms.

[0032] Combined with Figures 6 - 8 analysis, the MIGWO algorithm is superior to the GWO algorithm and the GA algorithm in terms of convergence speed, and its ability to jump out of the local optimal solution is significantly enhanced. In terms of fitness , fitness and overall fitness In terms of the maximum value, the MIGWO algorithm outperforms the GWO algorithm and the GA algorithm. The reason why the fitness maximum value curves of the GWO algorithm and the GA algorithm fluctuate greatly, and the final optimization results of the GWO and GA algorithms are inferior to those of the MIGWO algorithm is that in this paper, the overall fitness is used as the optimization objective of the GWO algorithm and the GA algorithm. The overall fitness has a large weight in the fitness function , so the fitness and the overall fitness are basically optimized synchronously. However, there is a certain contradictory relationship between the two optimization objectives of the fitness and the fitness , and synchronous optimization cannot be guaranteed. Due to the mutual influence relationship between the two optimization objectives during the optimization process, the extensiveness and freedom of the search cannot be guaranteed, and the probability of finding the optimal solution is reduced, resulting in the maximum values of both fitness functions being lower than those of the MIGWO algorithm, and thus the maximum value of the overall fitness value is lower than that of the MIGWO algorithm.

[0033] (3) Comparison of the scheduling schemes of the three algorithms Here, the optimal scheduling sequence is selected for all three algorithms. The selection method is as follows: The MIGWO algorithm takes the individual corresponding to the maximum value of the overall fitness among all individuals in the new population 4 after iteration as the optimal task scheduling sequence. The GWO algorithm and the GA algorithm use the overall fitness function as the optimization objective and take the individual corresponding to the maximum value of the overall fitness among all individuals in the population after iteration as the optimal task scheduling sequence.

[0034] The Gantt chart of the optimal task scheduling sequence of the MIGWO algorithm is as follows Figure 9 shown. The horizontal axis of the Gantt chart represents time, with the unit of seconds, and the vertical axis represents resources. Each rectangle represents a test task.

[0035] The total execution time of the test tasks for the optimal scheduling sequence of the MIGWO algorithm is 116 seconds, and the average resource utilization rate is 97.09%. Under the same experimental conditions, considering the existence of the scheme set, the calculation method for the total execution time of the test tasks of the serial test optimal scheduling sequence is: For each test task, select the test scheme with the least test time, add up the execution times of all test tasks, and calculate that the total execution time of the test tasks under serial test is 399 seconds. Compared with the serial test, the total execution time of the test tasks of the MIGWO algorithm is reduced by 283 seconds, and the test efficiency is increased by 70.9%. The test efficiency calculation formula is as follows , In the formula, is the total execution time of the test tasks of the serial test optimal scheduling sequence, is the total execution time of the test tasks for the optimal scheduling sequence of the MIGWO algorithm.

[0036] The Gantt chart of the optimal task scheduling sequence of the GWO algorithm is as follows Figure 10 shown: The total execution time of the test tasks for the optimal scheduling sequence of the GWO algorithm is 119 seconds, and the average resource utilization rate is 86.86%. Compared with the MIGWO algorithm, the total execution time of the test tasks of the GWO algorithm increases by 3 seconds, and the average resource utilization rate decreases by 10.23%.

[0037] The Gantt chart of the optimal task scheduling sequence of the GA algorithm is as follows Figure 11 shown: The total execution time of the test tasks for the optimal scheduling sequence of the GA algorithm is 118 seconds, and the average resource utilization rate is 88.69%. Compared with the MIGWO algorithm, the total execution time of the test tasks of the GA algorithm increases by 2 seconds, and the average resource utilization rate decreases by 8.4%.

[0038] In summary, the MIGWO algorithm proposed in this application has certain advantages in terms of convergence speed and the ability to jump out of local optimal solutions compared with the GWO algorithm and the GA algorithm; from the perspective of the optimal scheduling sequence, the MIGWO algorithm has significantly improved both in terms of the total execution time of the test tasks and the average resource utilization rate compared with the traditional serial test method, and there is still a certain improvement compared with the GWO algorithm and the GA algorithm, fully verifying the good test effect of the MIGWO algorithm in parallel test task scheduling.

[0039] Compared with the GWO algorithm and the genetic algorithm, the method proposed in this application has the following advantages: (1) Significantly shorten the test time: Experimental data show that in the scenario of 28 test tasks and 9 test resources, the total time-consuming of the serial test is 399 seconds, while the total time-consuming after optimization by the MIGWO algorithm is only 116 seconds. Compared with the currently commonly used serial test, the efficiency is improved by 70.9%. Compared with the GWO algorithm (119 seconds) and the genetic algorithm (118 seconds), the MIGWO algorithm reduces the test time by 3 seconds and 2 seconds respectively, verifying its advantage in time optimization.

[0040] (2) Improve resource utilization: Experimental data show that the MIGWO algorithm improves the average resource utilization rate to 97.09%, while the GWO and GA algorithms are 86.86% and 88.69% respectively. The improvement of resource balance reduces the instrument idle time and lowers the test cost.

[0041] (3) Enhanced convergence speed and robustness: Through the dual-population independent evolution and neighborhood search strategy, the MIGWO algorithm has a faster convergence speed and can effectively jump out of the local optimum for comparison Figure 6The fluctuation ranges of GWO and GA in China. For example, the fitness function (speedup ratio) converges to 3.440 in MIGWO, while GWO and GA only reach 3.387 and 3.395, indicating that its global optimization ability is stronger.

[0042] Finally, it should be noted that the above are only the preferred embodiments of the present invention and are not used to limit the present invention. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art can still modify the technical solutions recorded in the foregoing embodiments or perform equivalent replacements on some of the technical features. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

Claims

1. A parallel test task scheduling method for a multi-target equipment distributed test system, characterized in that: It includes the following steps: Step 1: Describe the parallel test task scheduling model of the equipment using mathematical methods; Step 2: Determine the constraint relationships existing in the test tasks in terms of test timing and resources in the parallel test task scheduling model in Step 1, as well as the constraint conditions satisfied between the test tasks and test resources; Step 3: Determine the fitness functions corresponding to the test time and the resource utilization balance degree, measure the importance of the two optimization objectives, and design the overall fitness function; Step 4: Solve the fitness function in Step 3.

2. A parallel test task scheduling method for a multi-target equipment distributed test system according to claim 1, characterized in that: The parallel test task scheduling model of the equipment in Step 1 includes a test task set, a test resource set, a task-resource association matrix, a task constraint matrix, a task time set, a task solution set, and a task scheduling sequence; Among them, the test task set is represented as: , test tasks represent equipment of different models; The set of the described test resources is represented as: , where the test resources represent different test instruments; The task-resource association matrix is expressed as: , is a matrix representing the test resources required by different test tasks during testing. If the test task has a test plan and occupies the test resource , then . If it does not occupy the resource, ; The task constraint matrix is expressed as: , is a matrix that describes the constraint relationship in time between different test tasks and can reflect the execution order of the test tasks. If , it means that test task is executed before test task , otherwise , it means that there is no constraint relationship in time between test task and test task . The task time set is represented as: , represents the test task the time required to complete the test; The task solution set is represented as: , the task solution set represents alternative solutions for the test task ; Each test resource can implement the testing of multiple tasks, and each test task can select different test resources to complete the test. Therefore, the scheduling scheme of the parallel test task is not unique; The task scheduling sequence is expressed as: , is a way to express the scheduling scheme of the test task on the test resource . It is a matrix, where the rows represent different test resources and the columns represent the steps of parallel tests. , Taking between, it means that at the th step, the test resource is occupied by the test task . If is 0, it means that the test resource is not occupied at the th step, and the test task at the th step is executed before the test task at the th step. Each element of the matrix represents the number of a certain test task at a certain time point.

3. A parallel test task scheduling method for a multi-objective equipment distributed test system according to claim 1 or 2, characterized in that: In Step 2, there are different constraint relationships in terms of test timing and resources between some test tasks. The constraint relationships between test tasks are divided into the following three categories: (1)Resource related: Suppose and are two test tasks, and the resources required for testing are between and . If there is no intersection between the resources and , then and are said to be resource-independent, otherwise they are resource-related; (2)Control related: Suppose and are two test tasks. If the test of can determine whether to be tested together, then is said to be control-related to ; otherwise, it is called control-independent. (3)Data dependency: Suppose and are two test tasks. If and take each other as input and output, then and are data-dependent; In Step 2, the following three constraint conditions need to be satisfied between the test tasks and test resources: (1) At most one test task can occupy the same test resource at the same time; (2) When the current test task is executing, the occupied resource will be continuously occupied by this task until the test task ends; (3) The test solution selected by the test task at the same time is unique.

4. A parallel test task scheduling method for a multi-target equipment distributed test system according to claim 3, characterized in that: Step 3 includes the following steps: Step 3.1: Determine the objective function according to the constraint conditions in Step 2; Objective function: , Basic constraint conditions: Test tasks with high task priorities are tested first, i.e., , ; Two test tasks tested simultaneously avoid resource conflicts, namely , ; Among them, represents the total execution time of the test task, represents the average utilization rate of the test resources; is the test task scheduling test plan, is the test task in the test task scheduling plan the sequence number; is the test task in the test resources required under the sequence number; Step 3.2: Design a fitness function based on the total execution time of the test tasks in Step 3.1 : , In the formula: represents the completion time of all task serial tests, and the fitness function The larger it is, the shorter the total execution time of the test tasks; Step 3.3: Design a fitness function based on the average utilization rate of the test resources in Step 3.1 : , In the formula: represents the total time occupied by the test task on the resource and represents the minimum value of the total time occupied among all resources. The larger the fitness function is, the more balanced the resource utilization is; Step 3.

4. Design the overall fitness function according to the fitness function in Step 3.2 and the fitness function in Step 3.3 : ,​ In the formula: , are constants, which are set according to test experience or actual test requirements.

5. A parallel test task scheduling method for a multi-target equipment distributed test system according to claim 3, characterized in that: Step 4 uses the improved grey wolf optimization algorithm MIGWO for solution.

6. A parallel test task scheduling method for a multi-target equipment distributed test system according to claim 5, characterized in that: Step 4 specifically includes the following steps: Step 4.

1. Initial parameter setting: Initialize the population, and according to the task constraint matrix in Step 1 , the task-resource association matrix , randomly generate a task scheduling sequence that meets the conditions ; Step 4.2, Initial population differentiation: Divide the initial population in Step 4.1 into two initial sub-populations of the same size according to and two fitness functions. The two initial sub-populations carry out independent evolution according to the fitness functions and respectively; Step 4.

3. Update the individuals in the two initial sub-populations in Step 4.2: Calculate the fitness values of the individuals in the two initial sub-populations in Step 4.2 respectively, sort them according to the fitness value, and select the top three individuals with the highest fitness values in each sub-population as 、 、 wolves. Sort the remaining individuals according to the current fitness value and divide them into three intervals with roughly the same number of individuals; Individuals in the interval with low fitness values and the individual with the first fitness value perform PBX crossover; individuals in the middle fitness interval perform PBX crossover with the individual with the second fitness value, and individuals in the high fitness interval perform PBX crossover with the individual with the third fitness value; the generated new individuals are checked, duplicate tasks are deleted, and untested tasks are reinserted into the unoccupied resources to make the new individuals meet the task scheduling sequence requirements; the top three individuals in terms of fitness are used as elite individuals and retained for the next iteration; The top three individuals in terms of fitness are used as elite individuals and retained for the next iteration; Step 4.4, Neighborhood Search: Combine the updated individuals in the two populations in Step 4.

3. Generate a random number between [0, 1] for each individual in the new population after combination, and compare it with value. The value is also a randomly generated number between [0, 1]. If it is greater than the value, perform the first type of neighborhood structure search ; if it is less than the value, perform the second type of neighborhood structure search. Calculate the overall fitness value of the new individuals after performing the neighborhood search and the original individuals in the population, and retain the individuals with higher overall fitness value. Check whether the maximum number of iterations is reached. If so, jump to Step 4.6; otherwise, jump to Step 4.

5. Step 4.5: Elite merging: Divide the population after neighborhood search into two new populations with the same number according to the two fitness functions. The individuals in the two new populations are respectively merged with the top 3 elite individuals with the retained fitness values in Step 4.3, and then go to Step 4.3 for the next cycle; Step 4.6: Determine the optimal result: Stop the cycle, calculate the overall fitness value of all individuals after neighborhood search, select the individual with the highest overall fitness value as the final optimization result, and record and save the fitness value and task scheduling sequence of this individual.

7. A parallel test task scheduling method for a multi-target equipment distributed test system according to claim 6, characterized in that: The task scheduling sequence in step 4.1 is generated by an encoding method, and the specific process is as follows: The task scheduling sequence The generation method of the first column: In the resource set select resources in the order from to , and according to the task-resource association matrix , randomly select a task from the tasks that occupy resources , determine all the occupied resources of this task , fill the corresponding positions of the corresponding rows of all the occupied resources in the first column of the task scheduling sequence with the task numbers , and delete all the occupied resources of the task from the resource set; The task scheduling sequence Delete the tasks already selected in the first column from the task set to regenerate a resource set with full resources. Then, for the task scheduling sequence generate the second column. The generation method for the second column and subsequent columns is the same as that for the first column. Therefore, repeat the first column generation process until the task set is empty, indicating that all test tasks have participated in the test. The remaining positions in the task scheduling sequence are filled with 0s; If in the test task, the task includes types of test scenarios, the improved task set is: , represents the th type of test scenario of the test task, and the improved task correlation matrix is matrix, as shown below: , When generating a task scheduling sequence, if a task is randomly selected from the tasks occupying resources , it is necessary to delete all tasks from task to in the task set. At the same time, all columns from column to in the task-resource association matrix are set to 0, indicating that task has been selected to avoid subsequent repeated execution of this task.

8. A parallel test task scheduling method for a multi-target equipment distributed test system according to claim 6, characterized in that: The PBX crossover in Step 4.3 is specifically as follows: Individuals with low fitness values and wolves are crossed, individuals with medium fitness values and wolves are crossed, individuals with high fitness values and wolves are crossed to improve the overall fitness value of the population and increase the diversity of the population. The specific crossing process is as follows: Select several positions of excellent individuals, inherit the selected positions to the same positions of the executing individuals, and insert the remaining unfinished tasks into the unoccupied resources in turn starting from the first column according to the resource occupancy relationship until new individuals that meet the requirements of task scheduling are generated.

9. A parallel test task scheduling method for a multi-target equipment distributed test system according to claim 6, characterized in that: The first neighborhood structure search described in step 4.4 Specifically: randomly select an individual from each of the two populations, randomly select a column of the two individuals for exchange, check the two new individuals after the exchange, delete the tasks that repeat the exchanged column, and insert the missing tasks into the unoccupied resources in sequence starting from the first column to generate new individuals that meet the task scheduling requirements.

10. A parallel test task scheduling method for a multi-objective equipment distributed test system according to claim 6, characterized in that: The second neighborhood structure search described in step 4.4 Specifically, randomly select an individual from each of the two populations, randomly select a column of one individual and insert it into the column immediately before the same position column of the other individual, delete the last column of the inserted individual, perform the same operation on both individuals, check the two new individuals after insertion, delete the tasks that are repeated with the inserted column, and insert the missing tasks into the unoccupied resources in sequence starting from the first column to generate new individuals that meet the task scheduling requirements.

Citation Information

Patent Citations

  • Test program set generation method and system

    CN115390798A

  • Parallel test task scheduling method based on improved adaptive genetic algorithm

    CN115617690A

  • Parallel test scheduling method for large aircraft cable test system based on operation line simulation

    CN119514914A

  • Utilizing a genetic algorithm in applying objective functions to determine distribution times for electronic communications

    US20200327419A1

  • Cloud computing task allocation method and apparatus, device, and storage medium

    WO2019196127A1

Cited By

  • Multifunctional low-frequency test equipment

    CN120909267A