Electronic product unit type production line parallel debugging scheduling method under limited resources

By building a parallel debugging static scheduling method of unit production lines in the electronic product debugging environment, and using the ant colony algorithm to optimize the scheduling solution, the problems of low debugging resource utilization and high management cost are solved, and more efficient debugging resource utilization and Lower production costs.

CN119398366APending Publication Date: 2025-02-07UNIV OF ELECTRONICS SCI & TECH OF CHINA
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411255979.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-09
Publication Date
2025-02-07

AI Technical Summary

Technical Problem

In the debugging environment of complex electronic products, the debugging resource utilization rate and high management cost lead to low debugging efficiency, low degree of automation, and serious loss of experience and knowledge of debugging process.

Method used

By analyzing the priority and debugging equipment constraints in the electronic product debugging environment, a static scheduling method for parallel debugging of electronic products for unit production lines under limited resources is constructed, and the ant colony algorithm is used to optimize the scheduling scheme to minimize the maximum completion time.

Benefits of technology

It improves the utilization rate of electronic product debugging resources, reduces production cycle and production costs, maximizes the use of all resources of the product line, and reduces experience dependence and knowledge loss.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119398366A_ABST
    Figure CN119398366A_ABST
Patent Text Reader

Abstract

The invention discloses an electronic product unit type production line parallel debugging scheduling method under limited resources, and relates to the field of electronic product debugging task resource scheduling optimization. According to the method, constraint conditions such as priority and debugging equipment in an electronic product debugging environment are analyzed and researched, and the minimum completion time considering the switching cost of the electronic product is taken as a target model; an electronic product parallel debugging static scheduling method of a unit type production line under limited resources is constructed, and equipment composition of the unit production line and production line scheduling of workpieces to be tested in the unit production line are completed through the method. According to the method, the static scheduling model is studied in combination with the constraint and other characteristics of the electronic product, and then the ant colony algorithm is utilized to solve the static scheduling meeting the optimization target of minimizing the maximum completion time, so that the production cycle of the product is shortened in the production process of the electronic product, all resources of a product line are utilized to the maximum extent, and the production cost is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The patent of this invention relates to the field of resource scheduling optimization of electronic product debugging tasks, specifically a static scheduling method for parallel debugging tasks of electronic product unit production lines. Technical Background

[0002] Complex electronic products generally have the characteristics of small size, precise design, and high process parameters. Their debugging environment contains various debugging resources such as instruments and tooling, which can reach thousands. There are many types of interfaces and it is difficult to centrally control them, which leads to low debugging resource utilization and high management costs, which seriously restricts the efficiency of product debugging, resulting in high debugging difficulty, low degree of automation, high skill requirements for debugging personnel, strong dependence on experience, and serious loss of debugging process experience and knowledge. At the same time, the production characteristics of "multiple varieties, variable batches, and customization" are in line with the characteristics of the unit production model, and it is suitable to adopt the research ideas of unit production lines to carry out the research on debugging work, which can bring better results than traditional debugging production lines. In the actual debugging workshop, due to the resource constraint characteristics and priority characteristics of electronic products themselves, the debugging scheduling order is also a more difficult problem. Therefore, it is necessary to construct a static scheduling method for parallel debugging of electronic products for unit production lines under limited resources. This method completes the equipment composition of the unit production line and the static scheduling scheme for debugging tasks in the electronic product unit debugging workshop under limited resources. Summary of the invention

[0003] The present invention analyzes and studies the constraints such as priority and debugging equipment in the debugging environment of electronic products, and takes the minimization of completion time considering the switching cost of electronic products as the target model; constructs a static scheduling method for parallel debugging of electronic products in a unit production line under limited resources, and completes the equipment composition of the unit production line and the production line scheduling problem of the workpiece to be tested in the unit production line through this method.

[0004] The technical solution of the present invention is a parallel debugging and scheduling method for a unit production line of electronic products under limited resources, and the method comprises the following steps:

[0005] Step 1: According to the debugging characteristics of electronic products, establish a grouping model of products and constraints;

[0006] Determines the set of instrument resources required to debug the product. This matrix element is either "0" or "1": One element indicates whether a product needs a certain instrument resource. If it needs it, it is "1", and if it does not, it is "0". There are n resources in total. k1 and k2 represent two products.

[0007] Determines the task set included in the debugging product. The matrix elements are "0" or "1": One element indicates whether a product contains a certain debugging task, with a total of m tasks;

[0008] Determine the set of constraints that associate the debugging task with the required equipment:

[0009] RT k ={rt 11 ,rt 12 ,...,rt 1n ,rt 21 ,rt 22 ,...,rt 2n ,...,rt m1 ...,rt mn}, one element indicates the time required for a debugging instrument resource by a debugging task of the kth product, with a total of n resources and m tasks;

[0010] Step 2: Calculate the similarity coefficient matrix of process characteristics between products to obtain the fuzzy matrix;

[0011] Step 2.1: Calculate the similarity coefficient matrix;

[0012] During the formation of machine units, the components of the machines are stored in a binary matrix consisting of "0" and "1", where "1" represents that the two corresponding machines have the same components, and "0" represents that they do not. The similarity coefficient between the machines is defined as the ratio of the number of matching components of the two machines to the total number of components; the total number of components = matching number + non-matching number, the similarity coefficient matrix It is expressed by a mathematical formula as follows:

[0013]

[0014] in,

[0015]

[0016] Similarity coefficient matrix for:

[0017] in represents the similarity value of product i and product j for device e;

[0018] Step 2.2: Obtain the fuzzy matrix of process characteristics between products;

[0019] Step 3: Using the fuzzy matrix as input, a clustering algorithm is used to calculate the grouping of products, and then the equipment composition of the production line is obtained;

[0020] Step 3.1: Initialization;

[0021] The initial cluster center provides the starting point of the clustering algorithm, and the fuzzy matrix can help determine the rationality of the initial center. For example, you can choose a point with a lower similarity in the fuzzy matrix as the initial center to ensure the dispersion of the center;

[0022] Step 3.2: Calculate the membership matrix:

[0023] For each data point and each cluster center, calculate its membership value; the elements in the membership matrix represent the membership of the data point to the cluster center, calculate the membership of each data point to each cluster center according to the fuzzy matrix, and adjust the distance metric to reflect the fuzzy similarity;

[0024] Step 3.3: Update the cluster center;

[0025] The fuzzy matrix affects the weight of the membership and thus the location of the center, so the membership matrix is ​​used to update the cluster center in each iteration;

[0026] Step 3.4: Iteration;

[0027] Repeat steps 2 and 3 until convergence or the predetermined number of iterations is reached;

[0028] Step 3.5: Output;

[0029] The final membership matrix represents the degree to which each data point belongs to each cluster, and the main cluster to which each data point belongs is determined based on the membership matrix;

[0030] Step 4: Based on the debugging characteristics of electronic products, static scheduling modeling of parallel debugging tasks is carried out;

[0031] Determine the debugging instrument resource set: R = {r1, r2, r3, ..., r n}, where one element represents the number of debugging instrument resources. The product grouping is obtained according to step 3, and the production line configuration is obtained using the constraints of the products in the group, i.e., the debugging instrument resource set, where n represents the type of equipment;

[0032] Determine the debugging task set: T = {t 11 ,t 12 ,...,t 1m(1) ,t 21 ,t 22 ,...,t 2m(2) ,...,t d1 ,t d2 ,...,t dm(d)}, this set indicates that there are d products in total, of which t j1 ,t j2 ,...,t jm(j)It means that product j has m(j) debugging tasks. Suppose there are m tasks for these j products.

[0033]

[0034] Determine the resource task time matrix time ij :The rows represent debugging resources, and the columns represent debugging tasks. If a debugging task t in the jth product n(j) , occupy resources i The time is time ij ;

[0035] Determine the resource constraints set for the debugging task This set reflects the debugging resource constraint relationship for completing the debugging parameter task, which is composed of the resource task time matrix RT m*n T d The set of resources corresponding to all components greater than 0 in , which is 1 if greater than 0, otherwise 0;

[0036] Step 5: Determine the constraints and goals between debugging tasks and resources;

[0037] Step 5.1: Identify constraints;

[0038] Step 5.2: Determine your goals;

[0039] Step 6: Calculate the parallel scheduling scheme;

[0040] When using the ant colony scheduling algorithm to solve the workshop scheduling problem, some modifications are required because the workshop scheduling problem is different from the city path problem. In the traditional ant colony algorithm, it is often used to solve the city path problem, where the length of the optimal path is the length of the path taken by the optimal ant. However, in the workshop scheduling problem, due to the existence of machine constraints and process constraints, the calculation of the total completion time is not just a simple accumulation of the processing time of the process. Therefore, it is necessary to consider the characteristics of complex electronic products and design the process and equipment status table to accurately calculate the total completion time and assist in judging the busy or idle status of the machine. This set list contains the completed processes and the processing machines used, and is arranged in the order of the completion time of each process. Through this list, the algorithm can track the completion of each process to ensure that the optimal scheduling solution is found while considering the machine constraints and process constraints. At the same time, due to the priority constraints between projects in each different module, the search method of the traditional ant colony algorithm is not suitable for unit production line workshop scheduling, so it is necessary to design an effective constraint processing strategy to meet the requirements of priority constraints;

[0041] Step 6.1: Problem description parameters and control parameter initialization;

[0042] Step 6.2: Construct the solution space, establish the state matrix and resource scheduling matrix;

[0043] Step 6.3: Update pheromones;

[0044] The optimal value of pheromone volatilization is determined through experiments. The traditional ant colony algorithm updates pheromones based on the quality of the path, that is, the shorter the path, the more pheromones are updated. The scenario with priority constraints is not considered. For this problem, the correctness of the priority of the path can be considered as a factor in the pheromone update. That is, if a path is not only shorter but also correctly follows the priority constraints, then this path will get more pheromone increments than the average. If the current option violates the priority constraint, then the option is excluded or given a selection probability lower than the set threshold.

[0045] Step 6.4: Determine whether to terminate;

[0046] Determine whether the end condition is met, if so, go to step 6.5, otherwise go to step 6.2;

[0047] Step 6.5: Decode and calculate the completion time based on the results, and obtain the parallel scheduling Gantt chart;

[0048] The decoding process needs to meet the constraints described in step 5.1, update the start time and end time of each debugging task, and based on the fluctuation time required in step 5.2, continuously update the debugging end time of the resources occupied by the debugging task (indicating the most recent debugging end time of the resource), and thereby obtain the parallel scheduling Gantt chart; therefore, the completion time ET of all debugging tasks is expressed as:

[0049]

[0050] Where n is the total number of debugging tasks and m is the total number of resource types.

[0051] Furthermore, the specific method of step 2.2 is:

[0052] The similarity coefficient matrix is ​​transformed into similarity value, and then the fuzzy matrix is ​​generated. The specific steps are as follows:

[0053] Step 2.2.1: Similarity value conversion;

[0054] The similarity value is obtained by converting the similarity coefficient matrix The complement is obtained by subtracting the similarity coefficient from 1, because similarity and dissimilarity are complementary. The specific calculation formula is:

[0055] Step 2.2.2: Generate fuzzy matrix;

[0056] Fuzzy values ​​are usually mapped using a certain function. The common fuzzification method is the S-type fuzzy function. The specific calculation formula is: represents the fuzzy value after mapping, It represents the value after similarity conversion of the similarity coefficient. T represents the middle value of the membership degree at which the S-type function reaches, which is usually 0.5. K controls the steepness of the S-type function, also known as the slope of the curve, with a value between 0 and 1. exp{} represents exponential calculation. Finally, the fuzzy matrix FuzzyM is obtained.

[0057] Furthermore, the specific method of step 5.1 is:

[0058] Step 5.1.1: The time that the debugging task of the jth product occupies the ith debugging resource is time ij Fixed and equal to the sum of the debugging time of the task being debugged and the state preparation time of the debugging instrument, time ij =t (ij)test +t (ij)pre , where t (ij)test For resources i Debugging Tasks j The debugging time, t (ij)pre For resources i Debugging Tasks j Preparation time;

[0059] Step 5.1.2: Each resource can only debug one task at a time, that is, when one or more resources are occupied by a debugging task, they cannot be occupied by other tasks;

[0060] Step 5.1.3: Once the debugging task starts, it cannot be stopped:

[0061] Step 5.1.4: There are priority constraints between different debugging tasks;

[0062] Step 5.1.5: Determine the priority constraint input matrix and define the predecessor task matrix P m×m : indicates the debugging task set that must be completed before a certain debugging task is performed. If the debugging task is completed, i The prerequisite is that j , then P m×m (i,j)=1, otherwise TP m×m (i,j)=0; in the subsequent solution process, task t j The predecessor task set P tj The tasks in the list have all been debugged.

[0063] Step 5.1.6: The same product can perform multiple debugging tasks at the same time.

[0064] Furthermore, the specific method of step 5.2 is:

[0065] Step 5.2.1: Determine the debugging time fluctuation;

[0066] For random debugging time According to the fluctuation of the uncertainty value around the determined theoretical value, the fluctuation range of the uncertain parameter is ε, ε>0, and its fluctuation formula is as follows:

[0067]

[0068] where time ij Represents the debugging task t j In the resource i The debugging time required for debugging on the system; the probability distribution function of the uncertain parameter ξ∈N(0,1) and the normal distribution is as follows;

[0069]

[0070] Where x represents the integral variable;

[0071] Step 5.2.2: Determine the goal;

[0072] The goal of parallel debugging task scheduling under limited resources is to obtain the scheduling sequence with the shortest total debugging time, that is, to solve the shortest total debugging time under the premise of limited resources and completing all debugging tasks. The objective function ET is as follows:

[0073]

[0074] Furthermore, the specific method of step 6.1 is:

[0075] Step 6.1.1: Initialize the pheromone matrix, which is a unit matrix of n*m dimensions; the initial pheromone matrix is ​​used to store the pheromone concentration on the path, and the unit matrix indicates that the initial pheromone amount of all paths is equal at the beginning;

[0076] Step 6.1.2: Initialization of heuristic information;

[0077] This matrix is ​​usually an m-dimensional matrix, representing the device idle time matrix, which can characterize the real-time status of the device;

[0078] Step 6.1.3: Initialize the control parameters of the ant colony algorithm;

[0079] num_ants: The number of ants in the colony, which determines the breadth of the search space;

[0080] num_iterations: the number of iterations, which controls the overall running time of the ant colony algorithm;

[0081] pheromone_decay_rate: pheromone evaporation rate, indicating the rate at which pheromone evaporates in each iteration;

[0082] α: pheromone importance factor, which affects the weight of pheromone importance when ants choose paths;

[0083] β: Heuristic function importance factor, which affects the weight of the heuristic function importance when the ant chooses a path.

[0084] Furthermore, the specific method of step 6.2 is:

[0085] Step 6.2.1: Construct solution space;

[0086] X p =(t 1,1 p ,...,t 2,4 p ,...,t d,j p ) represents the coding rule of the ant colony algorithm, which means the position of the pth ant, t d,j p ∈T represents the jth task of the dth product, and 1≤j≤m(j), where any two elements represent different tasks, 1≤p≤num_ants, m represents the total number of tasks in the debugging task set, and num_ants represents the population size of the ant colony;

[0087] Debugging Tasks j Debugging solution j=1,2,...,n, j is the debugging task number, a j The total number of debugging task schemes for the debugging task; scheme The occupied resource set is n ji is the occupied resource set R ji The total number of resources, i = 1, 2, ..., a j ;

[0088] Step 6.2.2: Create a state matrix and resource scheduling matrix

[0089] Establish a task status matrix and a device status matrix. The task status matrix records the start and end time of the task, and the device status matrix records the start and end time of the device. The start time of each debugging task is and end time is The start time for each device is and end time is The task status matrix records the start and end time of the task, and the device status matrix records the start and end time of the device; the resource scheduling matrix records the resources occupied by each task at a specific point in time, and each element represents the amount of resources used by the task in a specific time period;

[0090] Randomly generate debugging resource scheduling matrix RM p :The matrix is ​​an n*m dimensional matrix, r ij represents the debugging instrument r required for the jth debugging task i , R.M. p The components in the jth column that are greater than 0 are the resources required for debugging, i.e., the debugging task resource constraint set. If the resource is not needed, the element is set to 0. The i-th row vector indicates the debug instrument r is used. i All debugging tasks, n represents the total number of resources, 1≤i≤m, m is the total number of debugging tasks.

[0091] Furthermore, in step 2.2.2, the value of T is 0.5, and the value of k is between 0-1.

[0092] The present invention first performs a cluster analysis on the products to complete the composition design of the unit production line, and then studies the static scheduling model based on the resource situation of the production line and the constraints of the electronic products themselves. Then, the ant colony algorithm is used to solve the static scheduling that satisfies the optimization goal of minimizing the maximum completion time, thereby reducing the production cycle of the products in the production process of electronic products, maximizing the use of all resources of the product line, and reducing production costs. BRIEF DESCRIPTION OF THE DRAWINGS

[0093] Figure 1 It is a flow chart of a specific implementation method of the method of the present invention;

[0094] Figure 2 Flowchart of algorithm for grouping electronic products;

[0095] Figure 3 Abstract model diagram of a debugging line for an electronic product unit;

[0096] Figure 4 To debug the scheduling algorithm flow chart;

[0097] Figure 5 It is a schematic diagram of the operation results of a specific implementation method of the present invention. DETAILED DESCRIPTION

[0098] The following is a detailed description of the embodiments of the present invention. Figure 1 ), this embodiment is implemented on the premise of the technical solution of the present invention, and provides a detailed implementation method and a specific operation process, but the protection scope of the present invention is not limited to the following embodiment.

[0099] The implementation process can be divided into the following steps:

[0100] Step 1:

[0101] Define the parameter symbols required for the grouping model. The parameter symbols and their meanings are as follows:

[0102] The instrument resource set required to debug the product:

[0103] The debugging product includes the following task sets:

[0104] Task and device association constraint set: RT k ={rt 11 ,rt 12 ,...,rt 1n ,rt 21 ,rt 22 ,...,rt 2n ,...,rt n1 ...,rt mn};

[0105] Step 2:

[0106] According to the resource set and task set established in step 1, the resource and task characteristic matrix is ​​constructed. Based on the Jaccard similarity coefficient theory, the fuzzy matrix of process characteristics between products is calculated according to the characteristic matrix. The specific calculation formula is as follows:

[0107]

[0108] Step 3:

[0109] According to the fuzzy matrix calculated in step 2, the Fuzzy C-Means (FCM) algorithm is used to obtain the grouping of products, and then the equipment composition of the unit production line is obtained;

[0110] A simple example verification is performed for the above grouping. The specific module and device input information for the verification of the above steps are as follows in Table 1:

[0111] Table 1 Module and resource information table

[0112] M1 M2 M3 M4 M5 M6 M7 M8 Module1 50 30 70 60 50 0 0 0 Module2 0 0 50 0 0 50 0 0 Module3 0 30 0 30 0 0 30 30 Module4 50 0 0 50 20 50 0 0 Module5 50 30 70 60 50 0 0 0 Module6 0 0 50 0 0 50 0 0 Module7 0 30 0 30 0 0 30 30 Module8 50 0 0 50 20 50 0 0

[0113] The clustering results for the above module information are shown in Table 2:

[0114] Table 2 Clustering results

[0115] Group Included Modules 0 Module1、Module5 1 Module2, Module4, Module6, Module8 2 Module3、Module7

[0116] The corresponding equipment arrangement results are shown in Table 3:

[0117] Table 3 Equipment arrangement results

[0118] Group Included Equipment 0 M1, M2, M3, M4, M5 1 M1, M3, M5, M6 2 M2, M4, M7, M8

[0119] Step 4:

[0120] Abstraction of electronic product unit debugging production line model: Taking the electronic product debugging line as the research object, it is abstracted into a multi-resource and multi-task model.

[0121] Abstraction of electronic product debugging line model: Taking the electronic product debugging line as the research object, it is abstracted into a multi-resource and multi-task model. Since one station has all the instruments that need to be debugged, one station is equivalent to a complete production line, that is, a test unit production line. One product contains multiple debugging items. One station debugs all debugging items of multiple products of the same type (such as 4 power amplifier products). The instrument is generally a single interface, the number of instruments is 1 by default, and it is fixed at a single station, and the product is switched through the switch matrix. ( Figure 3 )

[0122] Define the parameter symbols required for the model. The parameter symbols and their meanings are as follows:

[0123] Debug instrument resource set: R = {r1, r2, r3, ..., r n};

[0124] Debugging task set: T = {t 11 ,t 12 ,...,t 1m(1) ,t 21 ,t 22 ,...,t 2m(2) ,...,t d1 ,t d2 ,...,t dm(d)}, this set indicates that there are d products in total, of which t j1 ,t j2 ,...,t jm(j) It means that product j has m(j) debugging tasks. Suppose there are d products in total tasks;

[0125] Resource Task Time Matrix RTT n*m :The rows of the matrix represent debugging resources, the columns represent parameter debugging tasks, and each column represents the task that can be debugged by the debugging resource. j , occupy resources i time ij , then RTT n*m (i,j)=time ij , otherwise RTT n*m(i,j)=0;

[0126] Debugging Task Resource Constraint Set This set reflects the debugging resource constraint relationship for completing the debugging parameter task, which is composed of the resource task time matrix column vector t :j The set of resources corresponding to all components greater than 0 in ;

[0127] Represents the debugging task t j The start time of debugging;

[0128] Represents the debugging task t j End time of debugging;

[0129] ER i Indicates resource r i The latest debugging end time, each task should be changed after the start and end time of debugging is determined;

[0130] ET represents the completion time of all debugging tasks.

[0131] Step 5: Consider constraints to meet the characteristics of actual electronic product debugging

[0132] 1) The time that any debugging task occupies any debugging resource is fixed and equal to the debugging time of the task being debugged and the state preparation time of the debugging instrument;

[0133] time ij =t (ij)test +t (ij)pre

[0134] Among them, t (ij)test Resources i Debugging Tasks j The debugging time, t (ij)pre Resources i Debugging Tasks j preparation time.

[0135] 2) Each resource can only debug one task at a time; p =S p +T pl

[0136] 3) Once the debugging task starts, it cannot be stopped;

[0137] 4) There are some priority constraints between different debugging tasks. For example, most debugging items of the receiver are related to the sensitivity index, so the sensitivity index should be debugged before debugging other indicators.

[0138] Define the precursor task matrix TP m×m: indicates the debugging task set that must be completed before a certain debugging task is performed. If the debugging task is completed, i The prerequisite is that j ,but Otherwise TP m×m (i,j)=0. In the subsequent solution process, task t j The predecessor task set All tasks in have been debugged.

[0139] 5) When one or more resources are occupied by a debugging task, they cannot be occupied by other tasks

[0140] S qi -E pi ≥0,X pi =X qi =1,R pq =1

[0141] In formula (2), when debugging task p and debugging task q are executed on the same resource, and task p precedes task q, then R pq =1, otherwise R pq =0;

[0142] 6) The same product cannot perform multiple debugging tasks at the same time, that is, the start and end times of different debugging tasks under the same product have no intersection, and the forbidden time window method is used to represent

[0143] S sj >E ri or E sj <S ri

[0144] The above formula represents the same product under t r ,t s Two debugging tasks, if task t r The debugging time range is [S ri ,E ri ], then task t s Debugging cannot be done during this period, which can be regarded as its disabled time window, that is, it must be started before or after the disabled time window.

[0145] Due to various factors such as debugging network delay, worker skill level, instrument resource failure, etc., the debugging time of some or even all debugging tasks of the product may vary within a certain range. According to the fluctuation of the uncertainty value around the determined theoretical value, the fluctuation range of the uncertain parameter is ε (ε>0), and its fluctuation formula is as follows:

[0146]

[0147] where time ij Represents the debugging task t j In the resource i The debugging time required for debugging on the system. Combined with previous data research, the fluctuation distribution of debugging time obeys the standard normal distribution, that is, the uncertain parameter ξ∈N(0,1), and the probability distribution function of the normal distribution is shown below.

[0148]

[0149] Step 6.1: Problem description parameters and control parameter initialization

[0150] Step 6.1.1: Pheromone matrix initialization

[0151] The matrix is ​​usually an n*m-dimensional unit matrix;

[0152] Step 6.1.2: Heuristic Information Initialization

[0153] This matrix is ​​usually an m-dimensional matrix, representing the device idle time matrix, which can characterize the real-time status of the device;

[0154] Step 6.1.3: Initialization of ant colony algorithm control parameters

[0155] num_ants: The number of ants in the colony, which determines the breadth of the search space;

[0156] num_iterations: the number of iterations, which controls the overall running time of the ant colony algorithm;

[0157] pheromone_decay_rate: pheromone evaporation rate, indicating the rate at which pheromone evaporates in each iteration;

[0158] α: pheromone importance factor, which affects the weight of pheromone importance when ants choose paths;

[0159] β: Heuristic function importance factor, which affects the weight of the heuristic function importance when the ant chooses a path.

[0160] Step 6.2: Construct solution space, establish state matrix and resource scheduling matrix

[0161] Step 6.2.1: Construct solution space

[0162] X p =(t 1,1 p ,...,t 2,4 p ,...,t d,j p) represents the coding rule of the ant colony algorithm, which means the position of the pth ant, t d,j p ∈T represents the jth task of the dth product, and 1≤j≤m(j), where any two elements represent different tasks, 1≤p≤num_ants, m represents the total number of tasks in the debugging task set, and num_ants represents the population size of the ant colony;

[0163] Debugging Tasks j Debugging solution j=1,2,...,n, j is the debugging task number, a j The total number of debugging task schemes for the debugging task; scheme The occupied resource set is n ji is the occupied resource set R ji The total number of resources, i = 1, 2, ..., a j ;

[0164] Step 6.2.2: Create a state matrix and resource scheduling matrix

[0165] Establish the task status matrix and the device status matrix. The start time of each debugging task is S t j and end time is E t j , the start time of each device is S r j and end time is E r j ;

[0166] Randomly generate debugging resource scheduling matrix RM p :The matrix is ​​an n*m dimensional matrix, r ij represents the debugging instrument r required for the jth debugging task i , R.M. p The components in the jth column that are greater than 0 are the resources required for debugging, i.e., the debugging task resource constraint set. If the resource is not needed, the element is set to 0. The i-th row vector indicates the debug instrument r is used. i All debugging tasks, n represents the total number of resources, 1≤i≤m, m is the total number of debugging tasks;

[0167] Step 6.3: Update pheromones

[0168] Mainly refers to pheromone volatilization, and the optimal value of pheromone volatilization is determined through experiments

[0169] Step 6.4: Determine whether to terminate

[0170] Determine whether the end condition is met. If so, go to step 6.5; otherwise, go to step 6.2.

[0171] Step 6.5: Decode and calculate the completion time based on the results, and obtain the parallel scheduling Gantt chart

[0172] The decoding process needs to meet the constraints described in step 5.1, update the start time and end time of each debugging task, and based on the fluctuation time required in step 5.2, continuously update the debugging end time of the resources occupied by the debugging task (indicating the most recent debugging end time of the resource), and thus obtain the parallel scheduling Gantt chart, so the completion time ET of all debugging tasks is expressed as:

[0173]

[0174] Where n is the total number of debugging tasks and m is the total number of resource types.

[0175] According to the above steps, the scheduling results are analyzed. The first module of product grouping calculation is taken as an example. The input information of the module is shown in Table 4 below. The product scheduling results are shown in the figure below. Figure 5 .

[0176] Table 4 Module scheduling information input table

[0177] Task Name Priority M1 M2 M3 M4 M5 T1 0 0 12.73 0 0 0 T2 0 11.91 0 0 0 0 T3 1 0 0 0 9.93 0 T4 0 12.17 0 0 0 0 T5 1 0 8.17 0 0 0 T6 0 16.91 0 0 0 0 T7 0 4.01 0 0 0 0 T8 0 5.21 0 0 0 0 T9 0 0 0 0 5.85 0 T10 0 2.47 0 0 0 0 T11 0 1.57 0 0 0 0 T12 0 2.85 0 0 0 0 T13 0 8.67 0 0 0 0 T14 1 5.37 0 0 0 0 T15 0 1.53 0 0 0 0 T16 0 4.37 0 0 0 0 T17 0 5.13 0 0 0 0 T18 0 0 0 0 0 4.77 T19 0 0 0 11.57 0 0 T20 0 0 0 8.82 0 0

Claims

1. A method for parallel debugging and scheduling of electronic product unit production lines under limited resources, the method comprising the following steps: Step 1: According to the debugging characteristics of electronic products, establish a grouping model of products and constraints; Determines the set of instrument resources required to debug the product. This matrix element is either "0" or "1": One element indicates whether a product needs a certain instrument resource. If it needs it, it is "1", and if it does not, it is "0". There are n resources in total. k1 and k2 represent two products. Determines the task set included in the debugging product. The matrix elements are "0" or "1": One element indicates whether a product contains a certain debugging task, with a total of m tasks; Determine the set of constraints that associate the debugging task with the required equipment: RT k ={rt 11 ,rt 12 ,...,rt 1n ,rt 21 ,rt 22 ,...,rt 2n ,...,rt m1 ...,rt mn }, one element indicates the time required for a debugging instrument resource by a debugging task of the kth product, with a total of n resources and m tasks; Step 2: Calculate the similarity coefficient matrix of process characteristics between products to obtain the fuzzy matrix; Step 2.1: Calculate the similarity coefficient matrix; During the formation of machine units, the components of the machines are stored in a binary matrix consisting of "0" and "1", where "1" represents that the two corresponding machines have the same components, and "0" represents that they do not. The similarity coefficient between the machines is defined as the ratio of the number of matching components of the two machines to the total number of components; the total number of components = matching number + non-matching number, the similarity coefficient matrix It is expressed by a mathematical formula as follows: in, Similarity coefficient matrix for: in represents the similarity value of product i and product j for device e; Step 2.2: Obtain the fuzzy matrix of process characteristics between products; Step 3: Using the fuzzy matrix as input, a clustering algorithm is used to calculate the grouping of products, and then the equipment composition of the production line is obtained; Step 3.1: Initialization; The initial cluster center provides the starting point of the clustering algorithm, and the fuzzy matrix can help determine the rationality of the initial center. For example, you can choose a point with a lower similarity in the fuzzy matrix as the initial center to ensure the dispersion of the center; Step 3.2: Calculate the membership matrix: For each data point and each cluster center, calculate its membership value; the elements in the membership matrix represent the membership of the data point to the cluster center, calculate the membership of each data point to each cluster center according to the fuzzy matrix, and adjust the distance metric to reflect the fuzzy similarity; Step 3.3: Update the cluster center; The fuzzy matrix affects the weight of the membership and thus the location of the center, so the membership matrix is ​​used to update the cluster center in each iteration; Step 3.4: Iteration; Repeat steps 2 and 3 until convergence or the predetermined number of iterations is reached; Step 3.5: Output; The final membership matrix represents the degree to which each data point belongs to each cluster, and the main cluster to which each data point belongs is determined based on the membership matrix; Step 4: Based on the debugging characteristics of electronic products, static scheduling modeling of parallel debugging tasks is carried out; Determine the debugging instrument resource set: R = {r1, r2, r3, ..., r n }, where one element represents the number of debugging instrument resources. The product grouping is obtained according to step 3, and the production line configuration is obtained using the constraints of the products in the group, i.e., the debugging instrument resource set, where n represents the type of equipment; Determine the debugging task set: T = {t 11 ,t 12 ,...,t 1m(1) ,t 21 ,t 22 ,...,t 2m(2) ,...,t d1 ,t d2 ,...,t dm(d) }, this set indicates that there are d products in total, of which t j1 ,t j2 ,...,t jm(j) It means that product j has m(j) debugging tasks. Suppose there are m tasks for these j products. Determine the resource task time matrix time ij :The rows represent debugging resources, and the columns represent debugging tasks. If a debugging task t in the jth product n(j) , occupy resources i The time is time ij ; Determine the resource constraints set for the debugging task This set reflects the debugging resource constraint relationship for completing the debugging parameter task, which is composed of the resource task time matrix The set of resources corresponding to all components greater than 0 in , which is 1 if greater than 0, otherwise 0; Step 5: Determine the constraints and goals between debugging tasks and resources; Step 5.1: Identify constraints; Step 5.2: Determine your goals; Step 6: Calculate the parallel scheduling scheme; Step 6.1: Problem description parameters and control parameter initialization; Step 6.2: Construct the solution space, establish the state matrix and resource scheduling matrix; Step 6.3: Update pheromones; The optimal value for pheromone volatilization is determined through experiments; if a path is not only shorter but also correctly follows the priority constraint, then this path obtains more pheromone increments than the average value; if the current option violates the priority constraint, then the option is excluded or given a selection probability lower than the set threshold; Step 6.4: Determine whether to terminate; Determine whether the end condition is met, if so, go to step 6.5, otherwise go to step 6.2; Step 6.5: Decode and calculate the completion time based on the results, and obtain the parallel scheduling Gantt chart; The decoding process needs to meet the constraints described in step 5.1, update the start time and end time of each debugging task, and based on the fluctuation time required in step 5.2, continuously update the debugging end time of the resources occupied by the debugging task, and thus obtain the parallel scheduling Gantt chart; therefore, the completion time ET of all debugging tasks is expressed as: Where n is the total number of debugging tasks and m is the total number of resource types.

2. The method for parallel debugging and scheduling of electronic product unit production lines under limited resources as claimed in claim 1, characterized in that: The specific method of step 2.2 is: The similarity coefficient matrix is ​​transformed into similarity value, and then the fuzzy matrix is ​​generated. The specific steps are as follows: Step 2.2.1: Similarity value conversion; The similarity value is obtained by converting the similarity coefficient matrix The complement is obtained by subtracting the similarity coefficient from 1, because similarity and dissimilarity are complementary. The specific calculation formula is: Step 2.2.2: Generate fuzzy matrix; Fuzzy values ​​are usually mapped using a certain function. The common fuzzification method is the S-type fuzzy function. The specific calculation formula is: represents the fuzzy value after mapping, It represents the value after similarity conversion of the similarity coefficient, T represents the point at which the S-type function reaches the intermediate value of the membership, k controls the steepness of the S-type function, and exp{} represents exponential calculation; finally, the fuzzy matrix FuzzyM is obtained.

3. The method for parallel debugging and scheduling of electronic product unit production lines under limited resources as claimed in claim 1, characterized in that: The specific method of step 5.1 is: Step 5.1.1: The time that the debugging task of the jth product occupies the ith debugging resource is time ij Fixed and equal to the sum of the debugging time of the task being debugged and the state preparation time of the debugging instrument, time ij =t (ij)test +t (ij)pre , where t (ij)test For resources i Debugging Tasks j The debugging time, t (ij)pre For resources i Debugging Tasks j Preparation time; Step 5.1.2: Each resource can only debug one task at a time, that is, when one or more resources are occupied by a debugging task, they cannot be occupied by other tasks; Step 5.1.3: Once the debugging task starts, it cannot be stopped: Step 5.1.4: There are priority constraints between different debugging tasks; Step 5.1.5: Determine the priority constraint input matrix and define the predecessor task matrix P m×m : indicates the debugging task set that must be completed before a certain debugging task is performed. If the debugging task is completed, i The prerequisite is that j , then P m×m (i,j)=1, otherwise TP m×m (i,j)=0; in the subsequent solution process, task t j The predecessor task set P tj The tasks in the list have all been debugged. Step 5.1.6: The same product can perform multiple debugging tasks at the same time.

4. The method for parallel debugging and scheduling of electronic product unit production lines under limited resources as claimed in claim 1, characterized in that: The specific method of step 5.2 is: Step 5.2.1: Determine the debugging time fluctuation; For random debugging time According to the fluctuation of the uncertainty value around the determined theoretical value, the fluctuation range of the uncertain parameter is ε, ε>0, and its fluctuation formula is as follows: where time ij Represents the debugging task t j In the resource i The debugging time required for debugging on the system; the probability distribution function of the uncertain parameter ξ∈N(0,1) and the normal distribution is as follows; Where x represents the integral variable; Step 5.2.2: Determine the goal; The goal of parallel debugging task scheduling under limited resources is to obtain the scheduling sequence with the shortest total debugging time, that is, to solve the shortest total debugging time under the premise of limited resources and completing all debugging tasks. The objective function ET is as follows:

5. The method for parallel debugging and scheduling of electronic product unit production lines under limited resources as claimed in claim 1, characterized in that: The specific method of step 6.1 is: Step 6.1.1: Initialize the pheromone matrix, which is a unit matrix of n*m dimensions; the initial pheromone matrix is ​​used to store the pheromone concentration on the path, and the unit matrix indicates that the initial pheromone amount of all paths is equal at the beginning; Step 6.1.2: Initialization of heuristic information; This matrix is ​​usually an m-dimensional matrix, representing the device idle time matrix, which can characterize the real-time status of the device; Step 6.1.3: Initialize the control parameters of the ant colony algorithm; num_ants: The number of ants in the colony, which determines the breadth of the search space; num_iterations: the number of iterations, which controls the overall running time of the ant colony algorithm; pheromone_decay_rate: pheromone evaporation rate, indicating the rate at which pheromone evaporates in each iteration; α: pheromone importance factor, which affects the weight of pheromone importance when ants choose paths; β: Heuristic function importance factor, which affects the weight of the heuristic function importance when the ant chooses a path.

6. The method for parallel debugging and scheduling of electronic product unit production lines under limited resources as claimed in claim 1, characterized in that: The specific method of step 6.2 is: Step 6.2.1: Construct solution space; X p =(t 1,1 p ,...,t 2,4 p ,...,t d,j p ) represents the coding rule of the ant colony algorithm, which means the position of the pth ant. represents the jth task of the dth product, and 1≤j≤m(j), where any two elements represent different tasks, 1≤p≤num_ants, m represents the total number of tasks in the debugging task set, and num_ants represents the population size of the ant colony; Debugging Tasks j Debugging solution j=1,2,...,n, j is the debugging task number, a j The total number of debugging task schemes for the debugging task; scheme The occupied resource set is n ji is the occupied resource set R ji The total number of resources, i = 1, 2, ..., a j ; Step 6.2.2: Create a state matrix and resource scheduling matrix Establish a task status matrix and a device status matrix. The task status matrix records the start and end time of the task, and the device status matrix records the start and end time of the device. The start time of each debugging task is and end time is The start time for each device is and end time is The task status matrix records the start and end time of the task, and the device status matrix records the start and end time of the device; The resource scheduling matrix records the resources occupied by each task at a specific point in time, and each element represents the amount of resources used by the task in a specific time period; Randomly generate debugging resource scheduling matrix RM p :The matrix is ​​an n*m dimensional matrix, r ij represents the debugging instrument r required for the jth debugging task i , R.M. p The components in the jth column that are greater than 0 are the resources required for debugging, i.e., the debugging task resource constraint set. If the resource is not needed, the element is set to 0. The i-th row vector indicates the debug instrument r is used. i All debugging tasks, n represents the total number of resources, 1≤i≤m, m is the total number of debugging tasks.

7. The method for parallel debugging and scheduling of electronic product unit production lines under limited resources as claimed in claim 2, characterized in that: In step 2.2.2, the value of T is 0.5, and the value of k is between 0 and 1.