A slime mold algorithm-based intelligent scheduling method for electroplating production lines

By optimizing the product processing sequence of the electroplating production line using the slime mold algorithm, the problem of low efficiency in the electroplating production line was solved, and efficient production scheduling and emergency order processing were achieved, thereby improving the dynamic scheduling capability of the production line.

CN114971124BActive Publication Date: 2026-02-17GUANGXI UNIV FOR NATITIES
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111510000.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-10
Publication Date
2026-02-17
Estimated Expiration
2041-12-10

AI Technical Summary

Technical Problem

Existing electroplating production line scheduling methods are inefficient, unable to handle multiple batches of products with different processes, and cannot achieve dynamic scheduling or emergency insertion of new orders.

Method used

The slime mold algorithm is used to optimize the product processing sequence of the electroplating production line. By initializing the slime mold population, calculating fitness and weight, updating the slime mold position, generating the optimal scheduling sequence, and using a greedy strategy to execute the handling task, precise scheduling is achieved.

Benefits of technology

It improves the production efficiency of the electroplating production line, enables the insertion of emergency orders during normal production, reduces the deviation of actual processing time of products at the workstation, and achieves precise product handling and processing time consistency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114971124B_ABST
    Figure CN114971124B_ABST
Patent Text Reader

Abstract

The application provides a kind of electroplating production line intelligent scheduling method based on slime mold algorithm, comprising the following steps: S1: obtaining the product processing demand data of multiple products;S2: using slime mold algorithm to calculate the product processing demand data, obtain the scheduling sequence;S3: according to the request time of each station calculated based on the scheduling sequence, send the carrying request until the product carrying is completed and returns to step S1.The application uses slime mold algorithm to optimize the processing sequence of different process products, which can improve the production efficiency of electroplating production line;The travel of products and carrying vehicles is considered in advance, accurate scheduling can be realized, and in theory, the production products can be immediately transported after processing at each station, and the actual processing time deviation from the set processing time is zero;Only the processing sequence of products is scheduled, so orders that need to be processed urgently can be inserted in the normal production process.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to an intelligent scheduling method for electroplating production lines based on a slime mold algorithm. Background Technology

[0002] Electroplating production has its own unique characteristics. Once a product enters the production line, it must be processed according to a pre-set sequence of steps and times. The order of these steps cannot be changed, and the processing time for each step and the time interval between steps must not exceed the process requirements; otherwise, the product will be scrapped. Based on these characteristics, two commonly used methods are the fixed-route, cyclical scheduling method and the fuzzy control technology scheduling method based on fuzzy mathematics. The former pre-sets the transport vehicle's route and can only process one product at a time. For multiple batches of products with different processing technologies, it is necessary to stop and switch to another process after completing one, a process that can take tens of minutes or even several hours. Therefore, this scheduling method is extremely inefficient for multiple batches of products with different processes. The latter uses fuzzy control technology to transport products during production, enabling mixed production of products with different processes. However, production efficiency remains low, and the actual processing time for the same process at the same workstation varies significantly, making it difficult to control product quality. While these two commonly used scheduling methods are effective and feasible, they lack optimization, and product production efficiency needs further improvement. Furthermore, existing scheduling methods cannot achieve dynamic scheduling and cannot meet the demand for urgently inserting new order products during normal production. Summary of the Invention

[0003] To address the aforementioned technical problems, this invention provides an intelligent scheduling method for electroplating production lines based on a slime mold algorithm. This method optimizes the processing sequence of products using different processes using the slime mold algorithm, thereby improving the production efficiency of the electroplating production line.

[0004] The present invention is achieved through the following technical solutions.

[0005] This invention provides an intelligent scheduling method for electroplating production lines based on a slime mold algorithm, comprising the following steps:

[0006] S1: Obtain product processing requirements data for various products;

[0007] S2: Use the slime mold algorithm to calculate the product processing demand data and obtain the scheduling sequence;

[0008] S3: Calculate the request time for each workstation according to the scheduling sequence, and send a handling request based on the request time until the product handling is completed and return to step S1.

[0009] The product processing requirements data includes the processing sequence and processing time of various products at multiple workstations.

[0010] Workstations without product demand are set as virtual workstations; the value of a virtual workstation is -1.

[0011] Step S2 specifically involves the following steps:

[0012] S21: Initialization parameters and slime mold population;

[0013] S22: Calculate fitness based on the location of slime molds in the slime mold population;

[0014] S23: Calculate the weights after sorting the fitness scores;

[0015] S24: Update the optimal fitness value based on the fitness calculation results;

[0016] S25: Update the location of slime mold;

[0017] S26: Return to step S22 and iterate to the preset number of times, then output the location and fitness value of the slime mold with the highest fitness.

[0018] The parameters include the maximum number of iterations T, the size of the slime mold population N, the dimension d of the solution vector, and the search range [lb, ub] of the solution vector, where the dimension d is the number of processed products.

[0019] The slime mold population is initialized in the following way: N slime mold locations are randomly generated within the search range [lb, ub].

[0020] The fitness is calculated as follows:

[0021] First, use X′=sort(X,2) to convert the real number encoding of the slime mold position into an integer encoding, where sort(X,2) means sorting the slime mold position X by row, and X′ means the processing order of the product;

[0022] Then, according to X i The processing order of products in i = 1, 2, ..., N generates a scheduling table S. i Find the scheduling table S i The maximum completion time of each product is taken as the fitness value F of the i-th slime mold. i .

[0023] The weights are calculated as follows: the best fitness value is saved as bF, and the worst fitness value is saved as wF. The fitness weight of each slime mold individual is then calculated according to the following formula:

[0024]

[0025] Where F′ represents the position of an individual in the sorted population, and r represents a random number vector between 0 and 1.

[0026] Step S25 is performed in the following manner.

[0027] ① If the best fitness value bF is better than the global optimal fitness value DF, then update DF to bF and save the individual's position to the slime mold individual's best position Xb;

[0028] ② Update the slime mold position according to the following formula:

[0029]

[0030] p = tanh|F i -DF|

[0031]

[0032] vb = [-a, a]

[0033]

[0034] vc = [-b, b]

[0035] Where T represents the maximum number of iterations in the initialization parameters, t represents the current iteration number, r1, r2, r3 represent random numbers between 0 and 1, and X... A ,X B This represents the positions of two individuals randomly selected from the population;

[0036] ③ Check whether the updated slime mold location exceeds the boundary.

[0037] In step S3, the request time for each workstation is calculated based on the scheduling sequence, specifically through the following steps:

[0038] S31: Use a greedy strategy to process product Xb j The process route and processing time of ′,j=1,2,…,d are used to perform the material handling task;

[0039] S32: Determine product Xb j If there are any delayed transport processes, j = 1, 2, ..., d; if so, calculate the delay duration and add the delay duration to the start time of the delayed process and all processes preceding it, the transport time of the corresponding transport vehicle, and the idle time of the corresponding workstation; if not, proceed to the next step.

[0040] S33: Determine whether all products have been scheduled; if yes, output the scheduling table containing the requested time; if no, proceed to step S31.

[0041] The beneficial effects of this invention are as follows: using the slime mold algorithm to optimize the processing sequence of products with different processes can improve the production efficiency of the electroplating production line; the travel of products and transport vehicles is considered in advance, which can achieve precise scheduling. Theoretically, the products can be transported away immediately after processing at each workstation, and the actual processing time deviates from the set processing time by zero; only the processing sequence of products is scheduled, so orders that need to be processed urgently can be inserted into the normal production process. Attached Figure Description

[0042] Figure 1 This is a flowchart illustrating at least one embodiment of the present invention;

[0043] Figure 2 This is a schematic diagram of a production line in which at least one embodiment of the present invention is applied. Detailed Implementation

[0044] The technical solution of the present invention is further described below, but the scope of protection is not limited to what is described.

[0045] Example 1

[0046] like Figure 1 The intelligent scheduling method for an electroplating production line based on slime mold algorithm, as shown, includes the following steps:

[0047] S1: Obtain product processing requirements data for various products;

[0048] S2: Use the slime mold algorithm to calculate the product processing demand data and obtain the scheduling sequence;

[0049] S3: Calculate the request time for each workstation according to the scheduling sequence, and send a handling request based on the request time until the product handling is completed and return to step S1.

[0050] Example 2

[0051] Based on Example 1, the product processing requirement data includes the processing sequence and processing time of various products at multiple workstations.

[0052] Example 3

[0053] Based on Example 2, workstations without product demand are set as virtual workstations; the value of a virtual workstation is -1.

[0054] Example 4

[0055] Based on Example 1, step S2 specifically adopts the following steps:

[0056] S21: Initialization parameters and slime mold population;

[0057] S22: Calculate fitness based on the location of slime molds in the slime mold population;

[0058] S23: Calculate the weights after sorting the fitness scores;

[0059] S24: Update the optimal fitness value based on the fitness calculation results;

[0060] S25: Update the location of slime mold;

[0061] S26: Return to step S22 and iterate to the preset number of times, then output the location and fitness value of the slime mold with the highest fitness.

[0062] Example 5

[0063] Based on Example 4, the parameters include the maximum number of iterations T, the size of the slime mold population N, the dimension d of the solution vector, and the search range [lb, ub] of the solution vector, where the dimension d is the number of processed products.

[0064] Example 6

[0065] Based on Example 4, the slime mold population is initialized in the following way: N slime mold locations are randomly generated within the search range [lb, ub].

[0066] Example 7

[0067] Based on Example 4, fitness was calculated as follows.

[0068] First, use X′=sort(X,2) to convert the real number encoding of the slime mold position into an integer encoding, where sort(X,2) means sorting the slime mold position X by row, and X′ means the processing order of the product;

[0069] Then, according to X i The processing order of products in i = 1, 2, ..., N generates a scheduling table S. i Find the scheduling table S i The maximum completion time of each product is taken as the fitness value F of the i-th slime mold. i .

[0070] Example 8

[0071] Based on Example 4, the weights are calculated as follows: the best fitness value is saved as bF, the worst fitness value is saved as wF, and the fitness weight of each slime mold individual is calculated according to the following formula:

[0072]

[0073] Where F′ represents the position of an individual in the sorted population, and r represents a random number vector between 0 and 1.

[0074] Step S25 is performed in the following manner.

[0075] ① If the best fitness value bF is better than the global optimal fitness value DF, then update DF to bF and save the individual's position to the slime mold individual's best position Xb;

[0076] ② Update the slime mold position according to the following formula:

[0077]

[0078] p = tanh|F i -DF|

[0079]

[0080] vb = [-a, a]

[0081]

[0082] vc = [-b, b]

[0083] Where T represents the maximum number of iterations in the initialization parameters, t represents the current iteration number, r1, r2, r3 represent random numbers between 0 and 1, and X... A ,X B This represents the positions of two individuals randomly selected from the population;

[0084] ③ Check whether the updated slime mold location exceeds the boundary.

[0085] Example 10

[0086] Based on Example 1, in step S3, the request time for each workstation is calculated according to the scheduling sequence, specifically using the following steps:

[0087] S31: Use a greedy strategy to process product Xb j The process route and processing time of ′,j=1,2,…,d are used to perform the material handling task;

[0088] S32: Determine product Xb j If there are any delayed transport processes, j = 1, 2, ..., d; if so, calculate the delay duration and add the delay duration to the start time of the delayed process and all processes preceding it, the transport time of the corresponding transport vehicle, and the idle time of the corresponding workstation; if not, proceed to the next step.

[0089] S33: Determine whether all products have been scheduled; if yes, output the scheduling table containing the requested time; if no, proceed to step S31.

[0090] Example 11

[0091] Based on the above embodiments, the following steps are included:

[0092] Step S1: Set the processing route for each product, that is, set all the workstations required for the product and the processing order of each workstation, and set the workstations that are not used as virtual workstations;

[0093] Step S2: Set the processing time for each product, that is, set the processing time for the product at each workstation;

[0094] Step S3: Based on the set product processing requirements data, use the slime mold algorithm to optimize and obtain the optimal scheduling sequence;

[0095] Step S4: Generate a scheduling table based on the optimal scheduling sequence obtained from the slime mold algorithm;

[0096] Step S5: Calculate the requested time for each workstation based on the scheduling table;

[0097] Step S6: When each workstation reaches the corresponding requested time, a handling request is issued to the required handling vehicle. The handling vehicle that receives the handling request performs a complete action. This step is repeated until all products are handled.

[0098] Specifically, the rule for setting virtual workstations in step S1 is as follows: if the processing of a certain product does not require passing through a certain workstation, then that workstation is set as a virtual workstation for that product, represented by -1.

[0099] Specifically, the optimization using the slime mold algorithm in step S3 includes the following steps:

[0100] Step S3.1: Parameter initialization; wherein, the initialized parameters include: maximum number of iterations T, slime mold population size N, dimension d of the solution vector, and search range [lb, ub] of the solution vector, where dimension d is the number of processed products;

[0101] Step S3.2: Slime mold population initialization: Randomly generate N slime mold locations within the search range [lb, ub];

[0102] Step S3.3: Calculate the fitness F of the slime mold based on its location X: First, use formula (1) to convert the real number code of the slime mold location into an integer code;

[0103] X′=sort(X,2) (1)

[0104] Here, sort(X,2) means sorting the slime mold positions X by row, and X′ represents the processing order of the product; then, according to X... i The processing order of products in i = 1, 2, ..., N generates a scheduling table S. i Find the scheduling table S iThe maximum completion time of each product is taken as the fitness value F of the i-th slime mold. i ;

[0105] Step S3.4: Sort the fitness F in ascending order, take out the best fitness value and save it as bF, save the worst fitness value as wF, and calculate the fitness weight of slime mold individuals according to formula (2);

[0106]

[0107] Where F′ represents the position of an individual in the sorted population, and r represents a vector of random numbers between 0 and 1;

[0108] Step S3.5: If bF is better than the global optimal fitness value DF, then update DF to bF and save the individual's position to the slime mold individual's optimal position Xb;

[0109] Step S3.6: Update the slime mold position according to formula (3-8) and check whether the updated slime mold position exceeds the boundary;

[0110]

[0111] p = tanh|F i -DF| (4)

[0112]

[0113] vb = [-a, a] (6)

[0114]

[0115] vc = [-b, b] (8)

[0116] Where t represents the current iteration number, r1, r2, r3 represent random numbers between 0 and 1, and X A ,X B This represents the positions of two individuals randomly selected from the population;

[0117] Step S3.7: Determine if the maximum number of generations T has been reached; if yes, proceed to step S3.8; if no, proceed to step S3.3.

[0118] Step S3.8: Output the optimal location Xb of the slime mold individual and its fitness value.

[0119] Specifically, the generation of the scheduling table in step S4 includes the following steps:

[0120] Step S4.1: Discretize the optimal position Xb obtained by the slime mold algorithm into Xb' using formula (1);

[0121] Step S4.2: The transport vehicle uses a greedy strategy to move products Xb. j The process route and processing time of ′,j=1,2,…,d are used to carry out the handling task. That is, if three conditions are met: (1) the required handling vehicle is in an idle state; (2) the previous process of the product has been completed; (3) the workstation required for the next process of the product is in an idle state; then the required handling vehicle will perform a complete action to move the product from the current workstation to the workstation required for the next process for processing, until all processes of the product are completed.

[0122] Step S4.3: Determine product Xb j If there are any delayed transport processes, j = 1, 2, ..., d; if so, calculate the delay duration and add the delay duration to the start time of the delayed process and all processes before it, the transport time of the corresponding transport vehicle, and the idle time of the corresponding workstation; if not, proceed to step S4.4.

[0123] Step S4.4: Determine whether all products have been scheduled; if yes, proceed to step S4.5; if no, proceed to step S4.2.

[0124] Step S4.5: Output scheduling table S.

[0125] Specifically, in step S4, the scheduling table records eleven attributes: product number, process number, workstation number, workstation where the transport vehicle is located, workstation where the previous process is located, workstation required for the current process, transport vehicle idle time, transport vehicle loaded time, start time of the current process, completion time of the current process, and transport time of the current process. Among them, the transport vehicle idle time represents the movement time from the workstation where the transport vehicle is located to the workstation where the previous process is located; the transport vehicle loaded time represents the time it takes for the transport vehicle to move the product from the workstation where the previous process is located to the workstation required for the current process; the delay time of the current process can be obtained by subtracting the completion time of the current process from the transport time of the current process.

[0126] Specifically, the method for calculating the request time of each workstation in step S5 is as follows: for each row in the scheduling table S, the request time of the corresponding workstation = the start time of the current process - the load time of the transport vehicle - the idle time of the transport vehicle.

[0127] Specifically, performing a complete action in step S6 includes: the transport vehicle that receives the transport request switches from standby to working state, moves to the workstation that issued the transport request, lifts the product at that workstation, moves to the workstation required for the next process of the product, lowers the product for processing, and then the transport vehicle enters standby state.

[0128] Example 12

[0129] Based on the above embodiments, it is applied to, for example Figure 2The electroplating production line shown is comprised of various functional workstations, namely electroplating tanks. Transport vehicles are installed above the tanks to move products. Each transport vehicle is responsible for a portion of the workstations; for example, transport vehicle #1 handles workstations #1 to #5, transport vehicle #2 handles workstations #5 to #13, and so on. Workstation #5 is a handover point; transport vehicle #1 moves products to this station, and transport vehicle #2 moves them from this station to the next required workstation. During normal production, when a transport vehicle receives a request from a workstation, it executes a complete action: the vehicle moves to that workstation, lifts the product, moves it to the next required workstation, and then sets the product down. The vehicle then enters standby mode, awaiting the next request. If a transport vehicle reaches its last assigned workstation, it immediately moves one workstation to the left after setting down the product to avoid collisions with the next transport vehicle. The processing time for each workstation can be modified by the user according to process requirements. In this embodiment, there are 23 workstations and 5 transport vehicles. The handover points are workstations #5, #13, #15, and #18. Figure 1 The image shows the initial position of each transport vehicle when the electroplating production line is started. The transport vehicle takes 4 seconds to move one station and 7 seconds to lift and put down the product.

Claims

1. A smart scheduling method for an electroplating production line based on a slime mold algorithm, characterized in that: Includes the following steps: S1: Obtain product processing requirements data for various products; S2: Use the slime mold algorithm to calculate the product processing demand data and obtain the scheduling sequence; S3: Calculate the request time for each workstation according to the scheduling sequence, and send a handling request based on the request time until the product handling is completed and return to step S1; in: Step S2 specifically involves the following steps: S21: Initialization parameters and slime mold population; S22: Calculate fitness based on the location of slime molds in the slime mold population; S23: Calculate the weights after sorting the fitness scores; S24: Update the optimal fitness value based on the fitness calculation results; S25: Update the location of slime mold; S26: Return to step S22 and after iterating to the preset number of times, output the location and fitness value of the slime mold with the highest fitness. In step S3, the request time for each workstation is calculated based on the scheduling sequence, specifically through the following steps: S31: Use a greedy strategy to process products The process route and processing time are used to perform the handling tasks; S32: Product Judgment Are there any delayed transport processes? If so, calculate the delay duration and add the delay duration to the start time of the delayed process and all processes preceding it, the transport time of the corresponding transport vehicle, and the idle time of the corresponding workstation. If not, proceed to the next step. S33: Determine whether all products have been scheduled; if yes, output the scheduling table containing the requested time; if no, proceed to step S31. The product processing requirements data includes the processing sequence and processing time for various products at multiple workstations; the parameters include the maximum number of iterations. Size of slime mold population Dimension of the solution vector Search range of solution vectors , among which dimension To determine the quantity of processed products; the slime mold population is initialized in the following manner, within the search range. Internal random generation The location of the slime mold; The fitness is calculated as follows: First, use The real-valued encoding of the slime mold location is converted into an integer encoding, where, Indicates the location of slime mold Sort by row Indicates the product's processing sequence; Then, according to Generate a scheduling table for the processing sequence of products. Find the scheduling table The maximum completion time of each product is used as the first Fitness value of slime mold .

2. The intelligent scheduling method for electroplating production lines based on slime mold algorithm as described in claim 1, characterized in that: The weights are calculated using the following method, and the best fitness value is extracted and saved. The worst fitness value is saved as The fitness weights of slime mold individuals are calculated using the following formula: in, This indicates the position of an individual in the sorted population. This represents a vector of random numbers between 0 and 1.

3. The intelligent scheduling method for electroplating production lines based on slime mold algorithm as described in claim 1, characterized in that: Workstations without product demand are set as virtual workstations; the value of a virtual workstation is -1.

4. The intelligent scheduling method for electroplating production lines based on slime mold algorithm as described in claim 1, characterized in that: Step S25 is performed in the following manner. ① Determine the best fitness value Better than the global optimal fitness value Then Updated to and will obtain The location of the slime mold individual was saved to the optimal location of the slime mold individual. middle; ② Update the slime mold position according to the following formula: in, This represents the maximum number of iterations in the initialization parameters. Indicates the current iteration number. Represents a random number between 0 and 1. This represents the positions of two individuals randomly selected from the population; ③ Check whether the updated slime mold location exceeds the boundary.

Citation Information

Patent Citations

  • Method for constructing prediction model based on colibacillus algorithm

    CN110705640A

  • Business resource allocation method based on improved myxobacteria optimization algorithm

    CN113487171A