Intelligent scheduling method for preventive maintenance unrelated parallel machines
By hybridizing discrete particle swarm optimization and multi-neighborhood search to optimize the allocation of workpieces and machines and the timing of preventive maintenance, the problems of low machine utilization and waste of maintenance resources in the scheduling of unrelated parallel machines are solved, and efficient production scheduling and cost reduction and efficiency improvement are achieved.
Patent Information
- Application Number
- CN202310388037.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-04-12
- Publication Date
- 2025-10-14
- Estimated Expiration
- 2043-04-12
AI Technical Summary
Existing technologies are unable to efficiently solve the scheduling problems of unrelated parallel machines and preventive maintenance, resulting in low machine utilization, low production efficiency and waste of maintenance resources. Traditional algorithms are difficult to solve, making it difficult to obtain a satisfactory scheduling solution in a short period of time.
A hybrid discrete particle swarm algorithm combined with a multi-neighborhood search algorithm is used to establish a scheduling model that minimizes the maximum completion time. Particles are represented by dual coding strings. The particle swarm position update and neighborhood search are combined to optimize the allocation of workpieces and machines and the timing of preventive maintenance.
Obtain high-quality scheduling solutions in a shorter time, reduce machine maintenance frequency, improve production efficiency and reduce costs, while ensuring production stability and machine reliability.
Smart Images

Figure CN116243674B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of production scheduling technology, namely, areas such as system intelligent optimization, production planning and scheduling that require intelligent optimization algorithms, and specifically to an intelligent scheduling method combining preventive maintenance of unrelated parallel machines. Background Art
[0002] Production scheduling is a crucial component of intelligent manufacturing and crucial for manufacturing enterprises to adjust resource allocation, reduce costs, and improve efficiency. The unrelated parallel machine scheduling problem overcomes resource constraints, allowing workpieces to be processed by any machine in the resource pool. This problem better reflects the actual manufacturing process and is widely applicable not only in multi-processor task scheduling, equipment scheduling, and transportation, but also in physical manufacturing applications such as semiconductor wafer manufacturing and automotive assembly lines. The processing time of workpieces on unrelated parallel machines depends on the matching between the workpiece and the machine: the processing times of the same workpiece on different machines are independent of each other. Therefore, it is a particularly challenging type of parallel machine scheduling problem and has been proven to be NP-hard. Properly scheduling preventive maintenance activities during production scheduling can effectively reduce equipment failure rates and facilitate control of production progress by eliminating unplanned downtime. However, in the unrelated parallel machine scheduling problem involving preventive maintenance, the processing times of the same workpiece on different machines vary, resulting in different degradation of the workpiece's service life. In this situation, blindly implementing periodic maintenance for all machines not only reduces machine utilization and production system efficiency but also leads to wasted maintenance resources. Therefore, coordinating the relationship between preventive maintenance and unrelated parallel machine scheduling has positive significance in improving the flexibility of production systems and reducing costs and increasing efficiency for enterprises.
[0003] Current research on the integration of unrelated parallel machines with preventive maintenance focuses primarily on optimization objectives and algorithms. Compared to traditional periodic maintenance, age-based machine maintenance can effectively reduce over- and under-maintenance of machines, ensuring smooth machine operation during production while also ensuring production efficiency. This reduces the economic costs associated with maintenance, shortens the overall manufacturing cycle, and enhances a company's market competitiveness. Furthermore, for NP-hard problems such as unrelated parallel machines, the constraints involved are complex and the solution space is relatively discrete. Solving these problems using precise algorithms, such as branch-and-price algorithms, is challenging and requires significant design costs. Therefore, designing an intelligent optimization algorithm that can efficiently solve these problems and achieve an acceptable near-optimal solution is a valuable research issue in this field. Summary of the Invention
[0004] Purpose of the invention:
[0005] The present application aims at the problems in the background art, and proposes a hybrid discrete particle swarm algorithm for unrelated parallel machine scheduling with preventive maintenance to solve the problem that classical particles cannot search optimization in discrete solution space.
[0006] Technical scheme:
[0007] The present application proposes an intelligent scheduling method for unrelated parallel machines with preventive maintenance, comprising the following steps:
[0008] Step 1: Obtain scheduling workpiece and machine parameter information, including: workpiece number n, machine number m, processing time of each workpiece on each machine p ij , shape parameter α and size parameter β in machine reliability function, and maintenance time duration;
[0009] Step 2: Use the parameter information obtained in step 1 to establish an unrelated parallel machine scheduling integrated model with preventive maintenance, taking minimizing the maximum completion time as the optimization objective;
[0010] Step 3: Solve the unrelated parallel machine scheduling integrated model with preventive maintenance in step 2 by using the discrete particle swarm algorithm combined with the multi-neighborhood search algorithm, update the particle position in the discrete particle swarm algorithm through the position update model, and obtain the local optimal particle individual and the global optimal particle individual;
[0011] Step 4: Update the local optimal particle individual and the global optimal particle individual in step 3 by using the particle individual update method;
[0012] Step 5: After the position of each particle in step 3 is updated, perform multi-neighborhood search operation on the updated particle individual in step 4 to obtain the final solution P″ g ;
[0013] Step 6: Determine whether the current iteration number e reaches the preset maximum iteration number G PSO_MAX of the particle swarm, if yes, output the final solution P″ g obtained after step 5 as the optimal solution of the algorithm, and terminate the whole algorithm; otherwise, return to step 3 to continue the population optimization operation.
[0014] Further, the parameter information in step 1 includes: workpiece number n, machine number m, processing time of each workpiece on each machine p ij , shape parameter α and size parameter β in machine reliability function, and maintenance time duration;
[0015] Further, the establishment method of the unrelated parallel machine scheduling integrated model in step 2 is:
[0016] Step 2.1: Use the two-parameter Weibull distribution function ρ j (u) to machine M j Modeling of failure patterns;
[0017] Step 2.2: Based on the properties of the Weibull function, we can get the machine M j Reliability function R j (u);
[0018] Step 2.3: According to reliability theory, get the machine M j The critical reliability threshold δ j (u); According to the relevant properties of non-homogeneous Poisson distribution, we can get M j The cumulative number of failures H j (u);
[0019] Step 2.4: Minimize the maximum completion time C by properly allocating workpieces to machines max The integrated scheduling model of unrelated parallel machines is obtained, and the execution time of maintenance operations is determined to ensure the continuous availability of the machine during the workpiece processing; the integrated scheduling model of unrelated parallel machines is:
[0020] minC max =max(C ij )
[0021] Among them, the completion time of each machine is C ij Equal to machine M j The product of the cumulative number of failures and maintenance time H j (u)×D PM With the machine M j The sum of the workpiece processing times.
[0022] Furthermore, the constraints of the unrelated parallel machine scheduling integration model in step 2 are:
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
[0030] Where i is the workpiece index value, and its value range is i=1, 2, ..., n; j is the machine index value, j=1, 2, ..., m; k is the machine PM number index value, k=1, 2, ..., N; C ij is the maximum completion time of job i on machine j; K is a maximum positive number; is the starting processing time of workpiece i on machine j; p ij D is the processing duration of workpiece i on machine j; jk is the duration of the kth PM operation on machine j; t F is the penalty time for machine failure; H j is the cumulative number of failures of machine x; u fj ,u bj are the initial service life of the workpiece when it is processed on machine j and the terminal service life after the workpiece is processed; α and β are the shape parameter and size parameter of the failure rate function respectively; δ j is the critical reliability threshold of machine j; x ij is the decision variable for workpiece processing. If workpiece i is processed on machine j, then x ij =1, otherwise x ij =0;y j is the decision variable for machine maintenance. If PM operation is performed on machine j, then y j =1, otherwise y j =0.
[0031] Furthermore, the discrete particle swarm optimization algorithm steps in step 3 are:
[0032] Step 3.1: Initialize parameters;
[0033] Step 3.2: Use the dual encoding string to characterize the solution and initialize the population. Each particle in the population consists of the workpiece allocation encoding string JV and the machine allocation encoding string MV;
[0034] Step 3.3: Calculate the objective function value and fitness value of each particle;
[0035] Step 3.4: Set the fitness function value corresponding to the individual particle initialized in step 3.3 to the individual extreme value of the particle, using Indicates that; will have the minimum C max The individual values of are set to global extreme values, using Said that and Store in the elite solution set Ω;
[0036] Step 3.5: Perform a global search operation through the discrete particle swarm algorithm and update the position of the particles through the position update model.
[0037] Furthermore, the position update model in step 3.5 is:
[0038]
[0039] In the above formula, Indicates the position of the e+1 generation of particles, and the value of e ranges from [1,G PSO_MAX ], ω, c1, c2 are the inertia weight factor, particle individual learning factor and particle global learning factor respectively, ω, c1, c2∈[0,1], f1, f2, f3 are three discrete optimization operators.
[0040] Furthermore, the calculation process of the location update model is as follows:
[0041] Step 1: Update the position of individual particles in the solution space through the particle's own information flow mechanism;
[0042]
[0043] In formula (10), Represents the information flow mechanism of the particle itself, where: r is a random number between (0,1);
[0044] Step 2: Update the optimal individual particle through the individual experience and cognition process of the particle;
[0045]
[0046] In formula (11), Represents the individual experience and cognitive process of particles. The operation is implemented by randomly selecting particle p1 and the current individual optimal particle from the particle population popsize. Let p1 and The workpiece allocation code strings are JV1 and JV2, and the machine allocation code strings are MV1 and MV2;
[0047] Step 3: Update the global optimal particle individual through the global optimal information sharing process of particles;
[0048]
[0049] In formula (13), It represents the global optimal information sharing process of particles, and performs adjustment operations based on the global optimal particle position.
[0050] Furthermore, the particle individual update method in step 4 is: in the current iteration process, after executing the complete search strategy for the particles, according to the set objective function, select the particle individual with the maximum fitness in the current particle population and the global optimal particle individual in the e-1th iteration process For comparison, if Then the current global optimal particle individual and local optimal particle individuals At the same time, it is stored in the elite solution set Ω; if Then the current global optimal particle The value of is assigned to the local optimal particle individual At the same time, clear the current elite solution set Ω, store the new optimal particle in Ω, and complete the current iteration process. and , and ensure that the particles stored in the elite solution set Ω are the global optimal particles.
[0051] Furthermore, the steps of the multi-neighborhood search operation in step 5 are:
[0052] ①, Initialize the neighborhood search strategy parameters: Set the maximum neighborhood search depth G NS_MAX ;
[0053] ②, take any particle P in the particle population popsize g , P g According to the NS1 search strategy, a neighborhood search is performed to obtain the improved solution P′ g , and improve the solution P′ g Counted as the current optimal solution P″ g ;
[0054] ③. Calculate the solution P″ g The corresponding objective function value is used to minimize the maximum completion time as the objective function value to calculate P″ g With P g If P″ g C max Value ratio P g Small, it means that the solution quality is improved after the neighborhood search NS1 operation, and the elite set Ω is used by P″ g Replace, the neighborhood search depth increases by one; otherwise, the P″ obtained after the NS1 operation g As the input solution of NS2, the neighborhood search depth increases by one;
[0055] ④. Determine whether the maximum neighborhood search depth G is met NS_MAX If satisfied, stop searching and output the current optimal solution; if not satisfied, continue NS2 search operation;
[0056] ⑤、P" obtained in step ③ g Perform neighborhood search according to NS2 operation, and let the solution obtained after NS2 operation be P″' g , and P″′ g Solve P″ with input gFor comparison, if C max The value is reduced, and the elite set Ω in step ③ is replaced by P″' g Replace, the neighborhood search depth increases by one;
[0057] ⑥, determine whether the termination condition is met, if the maximum neighborhood search depth G is reached NS_MAX , then output the final solution P″' g Otherwise, jump to step ②.
[0058] Furthermore, the NS1 operation is: swapping all workpieces in pairs, if the p of the two workpieces after each swap is ij The sum decreases and the C of machine m max If there is no increase compared to before the swap, confirm the execution of NS1 operation;
[0059] The NS2 operation is as follows: set the machine with the maximum completion time as the key machine, randomly select any workpiece in the key machine and insert it into the machine with the minimum completion time, select the minC in the current scheduling set max With maxC max Machine, set maxC max The workpieces on the machine are moved sequentially to minC max If the current scheduling plan C can be reduced max , then accept the NS2 operation and output the final optimized scheduling plan.
[0060] Beneficial effects:
[0061] Compared with the prior art, the present invention has the following beneficial technical effects:
[0062] 1. This paper redefines the position and velocity update formulas used in the classic particle swarm algorithm. It uses a global search mechanism composed of three discrete optimization operators to update particles in the discrete solution space. This global search mechanism enables particles to freely reach any point in the solution space, improving the algorithm's search efficiency and solution quality.
[0063] 2. This invention uses a hybrid discrete particle swarm optimization algorithm, combined with the advantages of a neighborhood search algorithm in local search processes, to improve the algorithm's convergence. When solving the problem of scheduling unrelated parallel machines for preventive maintenance, a satisfactory scheduling solution can be obtained in a relatively short time. Compared to periodic maintenance, it can effectively reduce the frequency of machine maintenance, achieving the goal of reducing costs and increasing efficiency while ensuring production efficiency.
[0064] 3. In terms of optimization target design, the present invention combines the characteristics of modern manufacturing and assembly industries, taking minimizing the maximum completion time as the optimization target, which is closer to the actual production situation, ensuring the stability and efficiency of production while ensuring the reliability of the machine.
[0065] 4. The hybrid discrete particle swarm optimization algorithm proposed in the present invention can be applied to the scheduling of unrelated parallel machines, and can also use job shops and flexible manufacturing workshops as scheduling backgrounds, and has good application robustness. BRIEF DESCRIPTION OF THE DRAWINGS
[0066] Figure 1 It is a dispatch route diagram;
[0067] Figure 2 It is the algorithm flow chart;
[0068] Figure 3 It is a coding and decoding diagram;
[0069] Figure 4 This is a schematic diagram of the update process based on the particles themselves;
[0070] Figure 5 This is a schematic diagram of the update process based on the optimal individual particle;
[0071] Figure 6 This is a schematic diagram of the update process based on the global optimal particle individual;
[0072] Figure 7 Comparison chart of optimized scheduling results between periodic maintenance and age-related maintenance under different processing scales;
[0073] Figure 8 Gantt charts of two preventive maintenance strategies at a scale of 20*5. DETAILED DESCRIPTION
[0074] The present invention will be described in detail below with reference to the accompanying drawings and embodiments of the present invention.
[0075] When solving the problem of scheduling unrelated parallel machines with preventive maintenance, heuristic algorithms, such as genetic algorithms, are commonly used. However, due to their complex topological structure design, they suffer from slow convergence, difficulty converging to the global optimal solution, and multiple control parameters. Therefore, a large number of iterations are often required to find a satisfactory solution. The particle swarm algorithm, on the other hand, updates particle positions by guiding the global and local optimal particles, gradually leading to local convergence. It has the advantages of good convergence and high robustness. However, few existing studies have designed discrete particle swarm algorithms specifically for scheduling unrelated parallel machines with preventive maintenance. Therefore, there is an urgent need for a discrete particle swarm algorithm that can directly perform global optimization in a discrete solution space, tailored to the characteristics of the problem.
[0076] This application proposes a preventive maintenance scheduling method for unrelated parallel machines based on a hybrid discrete particle swarm. First, a description of the scheduling problem and related assumptions are established. Based on this, a mathematical model is constructed to minimize the maximum completion time. Using the classical particle swarm algorithm as a foundation, a discrete particle swarm algorithm is designed to solve the model, tailored to the nature of the problem. Specifically, a failure probability distribution function for each machine is established based on its failure characteristics, and an integrated scheduling strategy combining preventive maintenance with unrelated parallel machines is specified. Subsequently, a corresponding mathematical model is constructed based on the characteristics of the unrelated parallel machine problem. At the algorithm design level, a dual encoding string consisting of a JV encoding string containing the workpiece encoding and an MV encoding string containing the machine encoding is used to characterize the particles and randomly generate the initial population; a global search mechanism composed of a variety of operation operators is used to search the discrete solution space for optimization; the particle positions are updated with the help of the particle swarm position update mechanism and the individual extreme values and global extreme values in the optimization mechanism; after the individual extreme values and the global optimal solution are updated, a detailed search is performed on the neighborhood of the current global optimal solution, and the global optimal solution obtained by the search replaces the current optimal solution, and the particle population is updated; after the particle population is updated, the search continues until the search termination condition is reached; finally, the obtained global optimal solution is decoded to obtain the current optimal solution.
[0077] To describe the problem more intuitively, assume that there are 20 workpieces that need to be processed on 5 unrelated parallel machines. The scheduling goal is to assign a machine to each workpiece and determine the processing sequence on its machine, as well as determine the timing of preventive maintenance. The scheduling diagram is shown as follows: Figure 1 shown.
[0078] Further make reasonable assumptions about the scheduling environment, including:
[0079] (1) At time 0, all workpieces can be processed and all machines are in an available state.
[0080] (2) There is no processing priority between workpieces, that is, each workpiece has the same probability of being processed.
[0081] (3) The processing duration includes the installation preparation time.
[0082] (4) Processing is non-preemptive. Once processing of each workpiece begins, the processing process cannot be interrupted.
[0083] (5) After each PM operation, the machine age is reset to 1, which means that the machine is fully maintained and the repaired machine can be put into use immediately.
[0084] (6) Workpiece processing and PM operations on each machine cannot be performed simultaneously.
[0085] Relevant parameters and decision variables include:
[0086] Index value:
[0087]
[0088] Parameter:
[0089]
[0090] Decision variable:
[0091]
[0092] An intelligent scheduling method for unrelated parallel machines combined with preventive maintenance, the steps are:
[0093] Step 1: Obtain scheduling workpiece and machine parameter information: including the number of workpieces n, the number of machines m, the processing time of each workpiece on each machine p ij , the shape parameter α and the size parameter β in the machine reliability function, the maintenance time duration;
[0094] Step 2: Use the parameter information obtained in step 1 to obtain the machine failure distribution function and reliability function according to the performance degradation data of the machine, and establish an unrelated parallel machine scheduling integrated model combined with preventive maintenance with the optimization objective of minimizing the maximum completion time;
[0095] The establishment steps of the unrelated parallel machine scheduling integrated model combined with preventive maintenance are:
[0096] Step 2.1: Use the two-parameter Weibull distribution function ρ j (u) to model the failure law of machine M j ;
[0097] The parameter Weibull distribution has good statistical properties and can effectively model the failure law of the machine. Let machine M j obeys the Weibull distribution failure function ρ j (u), its expression is as follows:
[0098] ρ j (u) = αβu β-1
[0099] Where, α is the shape parameter, β is the size parameter, and u is the cumulative value of the equipment processing time.
[0100] Step 2.2: According to the properties of the Weibull function, obtain the reliability function R j (u) of machine M j ;
[0101] Subsequently, considering the actual degradation process of the machine, as the number of workpieces processed by the machine increases and the time of machine involvement in processing extends, the service age of the machine decreases and the failure rate increases, ρ j The parameter β in (u) is greater than 1, and according to the nature of the Weibull function, the degradation process of the machine is a non-homogeneous Poisson process,
[0102] The reliability function R j (u) of the machine is expressed as follows:
[0103]
[0104] Step 2.3: According to the reliability theory, the critical reliability threshold δ j (u) of the machine M j is obtained, and according to the related properties of the non-homogeneous Poisson distribution, the cumulative failure number H j (u) on M j is obtained.
[0105] The calculation method of the critical reliability threshold δ j (u) is as follows:
[0106]
[0107] Where D PM is the duration of preventive maintenance operation; t F is the penalty time of machine failure.
[0108] According to the related properties of the non-homogeneous Poisson distribution, the cumulative failure number H j (u) on M j can be expressed as formula (1):
[0109]
[0110] Step 2.4: Through reasonable allocation between workpieces and machines, the maximum completion time C max is minimized to obtain an unrelated parallel machine scheduling integrated model, and the execution time of maintenance operation is determined to ensure the continuous availability of the machine during workpiece processing.
[0111] In the unrelated parallel machine scheduling problem of preventive maintenance, the completion time C ij of each machine is equal to the product of the cumulative failure number H j (u) on the machine M j and the maintenance time D PM and the processing time of the workpiece on the machine M j , so the scheduling goal is to minimize the maximum completion time C max, and determine the execution time of maintenance operations to ensure the continuous availability of the machine during the workpiece processing. Maximum completion time C max Also known as the total completion time, that is, the time it takes for the machine to complete the processing of all workpieces. Minimize the maximum completion time C max The expression is as follows:
[0112] minC max =max(C ij )
[0113] Among them, C ij For workpiece J i On machine M j The completion time on .
[0114] The constraints of the integrated model for scheduling unrelated parallel machines combined with preventive maintenance are as follows:
[0115] Constraint (2) ensures that a machine cannot process multiple workpieces at the same time. Constraint (3) is the single processing constraint of the workpiece.
[0116]
[0117]
[0118] Constraint (4) on J i In M j The time relationship of the above processing is calculated, where K is a very large positive number.
[0119]
[0120] Constraint (5) is the machine age constraint
[0121]
[0122] The constraint is the machine reliability constraint, that is, at any processing moment, the reliability of the machine is not lower than its failure threshold
[0123] Constraints (7) to (8) are the value ranges of each decision variable.
[0124]
[0125]
[0126] Step 3: The discrete particle swarm optimization algorithm is combined with the multi-neighborhood search algorithm to solve the unrelated parallel machine scheduling integrated model combined with preventive maintenance proposed in step 2;
[0127] The discrete particle swarm optimization algorithm is combined with the multi-neighborhood search algorithm to solve the flowchart of unrelated parallel machine scheduling combined with preventive maintenance. Figure 2 shown.
[0128] Step 3.1: Initialize parameters:
[0129] Set the population size of the individual particles in the algorithm to popsize and the maximum number of iterations of the external loop to G PSO_MAX , Neighborhood search maximum search depth G NS_MAX , particle individual learning factor c1, particle group learning factor c2.
[0130] Step 3.2: Use the dual encoding string to characterize the solution and initialize the population. Each particle in the population consists of the workpiece allocation encoding string JV and the machine allocation encoding string MV;
[0131] Taking n=10, m=3 as an example, the specific encoding and decoding process is as follows Figure 3 shown.
[0132] The unrelated parallel machine scheduling problem combined with preventive maintenance consists of two sub-problems: workpiece sorting and machine scheduling. To ensure the feasibility of the generated solution, a double coding string is usually used to encode the individual particles and represent the solution to the problem. Popsize particles are randomly generated using a double-chain real number encoding method. Each particle consists of a workpiece allocation coding string JV and a machine allocation coding string MV. For the unrelated parallel machine scheduling problem with n workpieces that need to be processed on m machines, the encoding operation is as follows: let the initial population size in the discrete particle swarm algorithm be popsize, and the pth particle x in the population be p The solution consists of two code strings: the workpiece code string JV and the machine code string MV. The JV code string is a one-dimensional code whose length is equal to the number of workpieces n. The real-valued variables within the code string represent the selected workpiece code [1, n]. The MV code string is a one-dimensional code whose length is equal to the number of workpieces n. The real-valued variables within the code string represent the selected processing machine for the workpiece, with a value range of [1, m]. Initialize the particle population so that the particles are evenly distributed throughout the solution space.
[0133] Step 3.3: Calculate the objective function value and fitness value of each particle;
[0134] First, perform heuristic decoding on the particles in the initial population popsize and schedule preventive maintenance. Then, use the maximum completion time described in step 2.4 as the fitness function to evaluate each individual particle in the initial population popsize and calculate the fitness value of each particle. The calculated particle fitness value determines the distribution position of the particle in the solution space.
[0135] The specific steps of the heuristic decoding of the particle and the arrangement of the preventive maintenance activities are as follows:
[0136] Considering that the timing and frequency of the preventive maintenance operation vary with the machining position of the workpiece, and further affect the optimization target value, the spatial complexity in the decoding process is greatly increased. In order to avoid the influence of the excessively large solution space of the algorithm on the subsequent optimization, the heuristic decoding mechanism based on the longest machining time priority rule is used: first, the machining machine of each workpiece is determined according to the machine allocation vector; in order to reduce the number of preventive maintenance operations, the longest machining time priority rule is used to sort the workpieces, and the machining machine M j The machining sequence of all the workpieces is determined, and the maximum completion time in step 2.4 is used as the fitness function to evaluate the solution quality represented by each particle in popsize. Finally, the timing of the preventive maintenance operation is selected according to the machine reliability function in step 2.2 and the calculation formula of the machine failure threshold in step 2.3.
[0137] The strategy for arranging the preventive maintenance is as follows: during the scheduling process, if the workpiece J i is arranged to be machined on the machining machine M j , and the reliability of M j is lower than the machine reliability threshold δ j of M j , the preventive maintenance operation needs to be performed on M jk before the workpiece is machined.
[0138] Step 3.4: store the global optimal particle individual and the local optimal particle individual in the elite solution set Ω.
[0139] Set the fitness function value corresponding to the particle individual initialized in step 3.3 to the individual extreme value of the particle, and use to represent; set the individual with the minimum C max value to the global extreme value, and use to represent. Store and to the elite solution set Ω.
[0140] Step 3.5: perform the global search operation by the discrete particle swarm algorithm, and update the position of the particle by the position update model.
[0141] The traditional vector calculation method is replaced by vector bit operations based on discrete solution space, which not only retains the original information exchange mode between particles of the algorithm, but also updates the flow mechanism of the optimal individual information. Since the particle swarm algorithm is difficult to balance the relationship between global search and local search during the iteration process, it is easy for the particle swarm algorithm to fall into local optimality. A discrete particle swarm position update method suitable for solving unrelated parallel machines is adopted as its global search method. This search method realizes the optimization of the discrete domain by defining the interactive operation of two coding strings. In order to avoid the rapid convergence of particles in the population and the premature convergence of the algorithm, a global position update operation is defined. The specific operation is shown in formula (9). Formula (9) is composed of three operations: formula (10), (11), and (12):
[0142] Particles perform a global position update operation in the solution space according to the following model:
[0143]
[0144] In the above formula, Indicates the position of the e+1 generation of particles, and the value of e ranges from [1,G PSO_MAX ], ω, c1, c2 are inertia weight factors, particle individual learning factors and particle global learning factors respectively, ω, c1, c2∈[0,1]. f1, f2, f3 are discrete optimization operators. Take 10 workpieces being processed on 3 machines as an example,
[0145] Formula (9) is composed of the following three parts, and the particle update process is composed of the following three parts:
[0146] Step 1: Update the position of individual particles in the solution space through the particle's own information flow mechanism;
[0147]
[0148] In formula (10), Represents the information flow mechanism of the particle itself, where r is a random number between (0,1). Figure 4 The specific operation method shown is: the JV encoding string randomly exchanges the positions of two different encoding points, and the MV encoding string randomly selects a machine different from the real-valued variable for replacement.
[0149] Step 2: Update the optimal individual particle through the individual experience and cognition process of the particle;
[0150]
[0151] In formula (11), Represents the individual experience and cognitive process of particles. The operation is implemented by randomly selecting particle p1 and the current individual optimal particle from the particle population popsize. Let p1 and The workpiece allocation code strings are JV1 and JV2, and the machine allocation code strings are MV1 and MV2.
[0152] like Figure 5 As shown, the workpiece allocation code string is subjected to a continuous code segment exchange operation, the continuous code segments selected in JV1 are placed in the same position of JV2, and the offspring individuals are generated. Finally, the workpiece code string is subjected to conflict detection, and a corresponding mapping relationship is established based on the values of the selected code points. When the conflict code in the offspring individual is encountered, it is mapped to other codes to generate the JV code string of the new particle individual.
[0153] For the MV code string, an adaptive mapping crossover operator is used for the MVs corresponding to the above two JV code strings. Specifically, the adaptive cross-mapping process is performed as follows: a one-dimensional random number code string RV equal to the dimension of the workpiece is randomly generated, and the value range of the real-valued variables of the code points in RV is a random number generated within (0,1).
[0154] Let p be the adaptive adjustment factor of the machine code string, which is calculated as shown in formula (12):
[0155]
[0156] In formula (12), p max is the particle with the maximum fitness in the population, p min is the particle with the minimum fitness in the population, iter is the number of iterations, and gen is the current number of iterations.
[0157] If the random number in the random number encoding string RV is less than p, copy The corresponding machine sequence is encoded into MV1. Compared to the traditional crossover method based on code position, this adaptive crossover mapping method can adaptively control the required crossover probability according to the actual situation during the particle iteration process. Setting the adaptive adjustment factor of the machine code string helps improve the algorithm's global optimization ability. In the later stages of particle evolution, it helps to enhance its local search ability and increase the probability of ultimately obtaining the global optimal solution. Generate an adaptive mapping crossover operation on the machine allocation code string.
[0158] Step 3: Update the global optimal particle individual through the global optimal information sharing process of particles;
[0159]
[0160] In formula (13), The global optimal information sharing process of the particle is adjusted according to the global optimal particle position.
[0161] As shown in Figure 6 , the implementation method is to randomly select a particle p1 in a particle population popsize and a global optimal particle gB e ; the workpiece allocation code string of p1 and gB e is respectively set as JV1 and JV2, a plurality of code point positions in JV1 are randomly selected, the code points are reserved and a temporary JV code string is generated, the code points in JV2 which are the same as the temporary JV individual are deleted, and the remaining code points are sequentially placed in the temporary JV code string. new The same adaptive cross mapping operation is performed on the machine allocation code string MV as in . The newly generated workpiece code string and the machine allocation code string constitute a new particle, and the position updating mechanism of the discrete particle swarm is designed.
[0162] The global optimization feature designed by the application is that: the global optimization operation based on the discrete space is designed by fully considering the discrete characteristics of the solution space distribution of the unrelated parallel machines, the traditional position updating operation process is replaced by the vector bit operation specific to the discrete space based on the improvement of the optimization mechanism of the classical particle swarm algorithm, from the information flow level, the discrete optimization operator designed still retains the information exchange and flow mechanism specific to the original algorithm, and is natural for the expression of the discrete problem and easy to be embedded with other algorithms.
[0163] Step 4: the local optimal particle individual and the global optimal particle individual stored in the elite solution set Omega in step 3.4 are updated by the particle individual updating method:
[0164] The particle individuals in popsize are encoded to generate an initial particle population popsize. The maximum iteration number G PSO_MAX of the particle swarm cycle and the maximum search depth G NS_MAX of the neighborhood search are set. The fitness function value of the particle is calculated, the individual with the maximum fitness in the initial particle population popsize is selected as the initial value of the global optimal particle individual and the local optimal particle individual , and the particle iteration link is started.
[0165] The particle stored in the elite solution set Omega is optimized: in the current iteration process e, the particle is executed according to the complete local search strategy in step 3.5, the particle individual with the maximum fitness in the current particle population is selected according to the objective function set in step 2.4 and the global optimal particle individual in the e-1 iteration process For comparison. Then the current global optimal particle individual and local optimal particle individuals At the same time, it is stored in the elite solution set Ω; if Then the current global optimal particle The value of is assigned to the local optimal particle individual At the same time, clear the current elite solution set Ω, store the new optimal particle in Ω, and complete the current iteration process. and , and ensure that the particles stored in the elite solution set Ω are the global optimal particles.
[0166] Step 5: After the global position of each particle is updated through step 3, the global optimal particle stored in the elite solution set Ω in step 4 is Perform multi-neighborhood search operations, including insert and interchange operations.
[0167] Introducing a neighborhood search mechanism based on key machines, building upon the global search, further improves solution quality and ensures the algorithm can quickly find near-optimal solutions within the solution space. This algorithm retains the classic particle swarm optimization's advantages of good convergence and divergence and simple design. However, the solution space of uncorrelated parallel machines is widely distributed, with extreme points located at the bottom of a single or multiple peaks in the solution space, placing extremely high demands on the algorithm's search quality and efficiency. The particle swarm optimization mechanism relies solely on the individual and global optimal particles to update the entire solution space, which can easily lead the optimization process into local optima, resulting in poor solution quality. To mitigate the shortcomings of the particle swarm algorithm, a multi-neighborhood search operation is introduced.
[0168] Neighborhood search is an update mechanism that perturbs a given solution to generate a new solution. It possesses strong local development capabilities and can systematically improve the quality of candidate solutions through sophisticated neighborhood structure design. The design of the neighborhood structure influences the degree to which information near the current solution is utilized, which in turn affects the quality and efficiency of the final solution. Among various neighborhood designs, when minimizing the maximum makespan is the optimization objective, selecting key machines in the current scheduling plan is an effective means of optimizing makespan.
[0169] Compared with other commonly used neighborhood structures, the exchange operation Interchange and insert operation can guide the algorithm to find the best solution in a more compact solution space, which is beneficial to improve the algorithm's optimization speed and convergence performance, and balance the algorithm's global search and local search capabilities. max The neighborhood search operation is divided into two parts: NS1 and NS2:
[0170] NS1: Interchange operation. The processing machines exchange all workpieces in pairs. If the p of the two workpieces after each exchange is ij The sum decreases and the C of machine m max If there is no increase compared to before the interchange, the Interchange operation is confirmed.
[0171] NS2: Insert operation. Assume that the machine with the maximum completion time is the key machine, randomly select any workpiece from the key machine and insert it into the machine with the minimum completion time. Select the minC in the current scheduling set. max With maxC max Machine, set maxC max The workpieces on the machine are moved sequentially to minC max If the current scheduling plan C can be reduced max , then accept the Insert operation and output the final optimized scheduling plan.
[0172] The specific operation process of neighborhood search is as follows:
[0173] ①, Initialize the neighborhood search strategy parameters: Set the maximum neighborhood search depth G NS_MAX ;
[0174] ②, take any particle P in the particle population popsize g , P g According to the NS1 search strategy, a neighborhood search is performed to obtain the improved solution P′ g , and improve the solution P′ g Counted as the current optimal solution P″ g ;
[0175] ③. Calculate the solution P″ g The corresponding objective function value is used, and the maximum completion time proposed in step 2.4 is used as the objective function value to calculate P″ g With P g If P″ g C max Value ratio P g Small, it means that the solution quality is improved after the neighborhood search NS1 operation, and the elite set Ω in step 4 is replaced by P″ g Replace, the neighborhood search depth increases by one; otherwise, the P″ obtained after the NS1 operation g As the input solution of NS2, the neighborhood search depth increases by one.
[0176] ④. Determine whether the maximum neighborhood search depth G is met NS_MAXIf satisfied, stop searching and output the current optimal solution; if not satisfied, continue NS2 search operation.
[0177] ⑤、P" obtained in step ③ g Perform neighborhood search according to NS2 operation, and let the solution obtained after NS2 operation be P"' g , and P"′ g Solve P with input g For comparison, if C max The value is reduced, and the elite set Ω in step ③ is replaced by P"′ g Replace, the neighborhood search depth increases by one.
[0178] ⑥, determine whether the termination condition is met. If the maximum neighborhood search depth G is reached NS_MAX , then output the final solution P"′ g Otherwise, jump to step ②.
[0179] Step 6: Determine whether the termination condition of the maximum number of iterations of the outer loop is met: Determine whether the current number of iterations e reaches the preset maximum number of iterations of the particle swarm G PSO_MAX If so, the final solution P"' obtained after step 5 is g Output the optimal solution of the algorithm and terminate the entire algorithm; otherwise, return to step 3 to continue the population optimization operation.
[0180] Example:
[0181] Parameter design:
[0182] In order to verify the effectiveness of the proposed HDPSO algorithm in solving the UPMSP problem and the superiority of the proposed age-based maintenance strategy compared to periodic maintenance, a large number of computational experiments were conducted. All tests were conducted on an Intel Core i5-10500 CPU 3.10GHz, RAM 8.00GB, Win10 64-bit operating system, and compiled using MATLAB 2017b. The main parameters of the proposed algorithm include popsize, G PSO_MAX and G NS_MAX There are three types of parameters. Through the Taguchi parameter verification of the example, we know that when popsize=100, G PSO_MAX =7×10 4 , G NS_MAX The algorithm performs best when =50, so subsequent experiments are calculated with the above parameter settings.
[0183] The optimization performance of the proposed preventive maintenance strategy is compared with that of the fixed-period maintenance strategy. Combined with the characteristics of the unrelated parallel machine scheduling problem, the case parameters are appropriately adjusted and set as follows: the workpiece processing time follows the normal distribution of (1,100)h, the maintenance duration follows the normal distribution of (1,10)h, and the fixed-period maintenance time t F =10h, the time interval between two periodic maintenance is 10h; Weibull function parameters α=3, β=100; the problem scale is set as n={20,50,100}, m={5,10,20}, a total of 9 types, 10 examples are randomly generated for each scale, and a total of 90 examples are used for comparative testing.
[0184] Evaluation indicators:
[0185] To illustrate the advantages of the age-based maintenance strategy over the fixed-period maintenance strategy, G is set as the evaluation index. G represents the percentage deviation between the total duration of PM operation under the fixed-period maintenance strategy and the total duration of PM operation under the age-based maintenance strategy, which can be calculated as follows:
[0186]
[0187] Figure 7 The following is a comparison chart of the optimized scheduling results of periodic maintenance and preventive maintenance under different processing scales. Taking the 20×5 scale as an example, the Gantt charts of the traditional periodic maintenance scheduling strategy and the preventive maintenance scheduling strategy described in this invention are drawn as follows: Figure 8 shown.
[0188] Result analysis:
[0189] from Figure 7 Analysis shows that in a small-scale case with 10 workpieces, the scheduling optimization results using the fixed-period maintenance strategy have a slight advantage over the age-based maintenance strategy. However, as the workpiece size increases, the age-based maintenance strategy's advantage becomes increasingly apparent. In a 50×5 scale case, the age-based maintenance strategy performed 25 times, an 80% reduction compared to the traditional fixed-period maintenance strategy. The age-based maintenance strategy also reduced total maintenance time by 91 hours compared to the fixed-period maintenance strategy. In a large-scale case with 100×5 workpieces, the age-based maintenance strategy performed 75 times, a 93.33% reduction compared to the fixed-period maintenance strategy, and reduced maintenance time by 101.35%. The analysis results indicate that the advantages of the proposed age-based maintenance strategy increase with larger job sizes, and this advantage increases with a decreasing ratio between n and m.
[0190] While periodic maintenance can consistently maintain a high level of machine availability and thus extend its lifespan, adopting this maintenance strategy when the machine's processing time is uncertain will inevitably lead to unnecessary over-maintenance. Preventive maintenance, on the other hand, allows timely maintenance operations when the machine is on the verge of failure. Compared to periodic maintenance, preventive maintenance can avoid wasting maintenance resources while ensuring processing quality and efficiency. Therefore, it is necessary to select maintenance timing based on the machine's degradation trajectory during actual processing.
[0191] In summary, when processing workpieces of different sizes, the preventive maintenance strategy proposed in the present invention has a smaller maintenance number and frequency than the fixed-cycle maintenance strategy. The preventive maintenance is more closely aligned with the actual degradation process of the machine, which is conducive to coordinating the dominant relationship between unrelated parallel machine scheduling and preventive maintenance in terms of processing time, improving the performance of the production system and helping enterprises save maintenance resources and costs while ensuring production efficiency.
[0192] The specific embodiments described herein are merely illustrative of the spirit of the present invention. Persons skilled in the art may make various modifications, additions, or substitutions to the described specific embodiments without departing from the spirit of the present invention or exceeding the scope of the appended claims.
Claims
1. An intelligent scheduling method for unrelated parallel machines combined with preventive maintenance, characterized in that: The steps are: Step 1: Get the scheduled workpiece and machine parameter information: Step 2: Using the parameter information obtained in step 1, establish an integrated scheduling model for unrelated parallel machines combined with preventive maintenance with the optimization goal of minimizing the maximum completion time; Step 3: The discrete particle swarm algorithm is combined with the multi-neighborhood search algorithm to solve the unrelated parallel machine scheduling integrated model combined with preventive maintenance in step 2. The particle positions in the discrete particle swarm algorithm are updated through the position update model to obtain the local optimal particle individual and the global optimal particle individual; Step 4: Update the local optimal particle individual and the global optimal particle individual in step 3 through the particle individual update method; Step 5: After the position of each particle is updated in step 3, a multi-neighborhood search operation is performed on the particle individuals updated in step 4 to obtain the final solution. ; Step 6: Determine the current number of iterations Whether the preset maximum number of particle swarm iterations has been reached If so, the final solution obtained after step 5 is Output as the optimal solution of the algorithm and terminate the entire algorithm; Otherwise, return to step 3 to continue the population optimization operation; The parameter information in step 1 includes: number of workpieces , number of machines , the processing time of each workpiece on each machine , shape parameters in machine reliability function With size parameters , the duration of maintenance; The method for establishing the scheduling integration model of unrelated parallel machines in step 2 is: Step 2.1: Use the two-parameter Weibull distribution function To the machine Modeling of failure patterns; Step 2.2: Based on the properties of the Weibull function, we can get the machine Reliability function ; Machine reliability function The expression is as follows: ; Step 2.3: According to the reliability theory, get the machine Critical reliability threshold ; According to the relevant properties of non-homogeneous Poisson distribution, we can get The cumulative number of failures on ; Critical reliability threshold The calculation method is: ; in, Duration of preventive maintenance operations; Penalty time for machine failure; According to the relevant properties of the non-homogeneous Poisson distribution, we can get The cumulative number of failures on It can be expressed as: ; Machine The initial service life when processing a workpiece and the terminal service life after completing the processing of this workpiece; Step 2.4: Minimize the maximum completion time by properly allocating workpieces to machines The integrated scheduling model of unrelated parallel machines is obtained, and the execution time of maintenance operations is determined to ensure the continuous availability of the machine during the workpiece processing; the integrated scheduling model of unrelated parallel machines is: ; The completion time of each machine Equal to machine The product of the cumulative number of failures and maintenance time With the machine The sum of the workpiece processing time; The discrete particle swarm algorithm steps in step 3 are: Step 3.1: Initialize parameters; Step 3.2: Use the dual encoding string to characterize the solution and initialize the population. Each particle in the population consists of the workpiece allocation encoding string JV and the machine allocation encoding string MV; Step 3.3: Calculate the objective function value and fitness value of each particle; Step 3.4: Set the fitness function value corresponding to the individual particle initialized in step 3.3 to the individual extreme value of the particle, using Represents; will have minimized The individual values of are set to global extreme values, using Said that and Store to elite solution set middle; Step 3.5: Perform a global search operation through the discrete particle swarm algorithm and update the position of the particles through the position update model.
2. The intelligent scheduling method for unrelated parallel machines combined with preventive maintenance according to claim 1, characterized in that: The constraints of the unrelated parallel machine scheduling integration model in step 2 are: ; Where, Is the workpiece index value, the value range is ; is the machine index value, ; The index value of the number of PM times of the machine, ; For workpiece In the machine Maximum completion time on ; K is a very large positive number; For workpiece In the machine The starting processing time on For workpiece In the machine duration of processing on For machines On the first The duration of the PM operation; Penalty time for machine failure; is the cumulative number of failures of machine x; are the shape parameter and size parameter of the failure rate function respectively; For machines Critical reliability threshold of is the decision variable of workpiece processing. If the workpiece Select the machine If processing is performed on ,otherwise ; is the decision variable for machine maintenance. Execute PM operation, then ,otherwise .
3. The intelligent scheduling method for unrelated parallel machines combined with preventive maintenance according to claim 1, characterized in that: The position update model in step 3.5 is: In the above formula, , indicating the particle The position of the generation, The value range is , They are inertia weight factor, particle individual learning factor and particle global learning factor, , There are three discrete optimization operators.
4. The intelligent scheduling method for unrelated parallel machines combined with preventive maintenance according to claim 3, characterized in that: The calculation process of the position update model is as follows: Step 1: Update the position of individual particles in the solution space through the particle's own information flow mechanism; ; In formula (10), Represents the information flow mechanism of the particle itself, where: is a random number between (0,1); Step 2: Update the optimal individual particle through the individual experience and cognition process of the particle; ; In formula (11), Represents the individual experience and cognitive process of particles. The operation is implemented by Randomly select particles and the current individual optimal particle ; Set up and The workpiece allocation code string is 、 , the machine assigned code string is ; Step 3: Update the global optimal particle individual through the global optimal information sharing process of particles; ; In formula (13), It represents the global optimal information sharing process of particles, and performs adjustment operations based on the global optimal particle position.
5. The intelligent scheduling method for unrelated parallel machines combined with preventive maintenance according to claim 1, characterized in that: The particle individual update method in step 4 is: in the current iteration process, after executing the complete search strategy for the particles, according to the set objective function, select the particle individual with the maximum fitness in the current particle population With the The global optimal particle individual in the iterative process For comparison, if , then the current global optimal particle individual and local optimal particle individuals Elite solution set in; if , then the current global optimal particle The value of is assigned to the local optimal particle individual , and clear the current elite solution set , store the new optimal particle in , complete the current iteration process and Updates and ensure elite solution collection The particles stored in are the global optimal particles.
6. The intelligent scheduling method for unrelated parallel machines combined with preventive maintenance according to claim 1, characterized in that: The steps of the multi-neighborhood search operation in step 5 are: ①. Initialize neighborhood search strategy parameters: set the maximum neighborhood search depth ; ②、Get particle population Any particle ,Will according to Search strategy performs neighborhood search to obtain improved solutions , and will improve the solution Counted as the current optimal solution ; ③Calculation solution The corresponding objective function value is used to minimize the maximum completion time. and If the value of of Value Ratio Small, it means that the neighborhood search After the operation, the solution quality is improved, and the elite set use Replace, the neighborhood search depth increases by one; otherwise, it will go through After the operation As The input solution of the neighborhood search depth increases by one; ④. Determine whether the maximum neighborhood search depth is met , if satisfied, stop searching and output the current optimal solution; If not satisfied, continue Search operation; ⑤、The solution obtained in step ③ according to Operation to search the neighborhood, set The solution obtained after the operation is , and Solution with input For comparison, if The value is reduced, and the elite set in step ③ use Replace, the neighborhood search depth increases by one; ⑥, determine whether the termination condition is met, if the maximum neighborhood search depth is reached , then output the final solution Otherwise, jump to step ②.
7. The intelligent scheduling method for unrelated parallel machines combined with preventive maintenance according to claim 6, characterized in that: described The operation is: swap all workpieces in pairs. If the two workpieces are The sum is reduced and the machine of If there is no increase compared to before the swap, the execution is confirmed. operate; described The operation is: set the machine with the maximum completion time as the key machine, randomly select any workpiece in the key machine and insert it into the machine with the minimum completion time, select the workpiece in the current scheduling set and Machine, will The workpieces on the machine are moved sequentially If the current scheduling plan can be reduced , then accept Operation, output the final optimized scheduling plan.
Citation Information
Patent Citations
Parallel task scheduling method based on particle swarm optimization algorithm
CN113778654A