Heterogeneous bernoulli pipeline task scheduling method based on discrete particle swarm algorithm
By modeling the heterogeneous Bernoulli pipeline and optimizing it with the discrete particle swarm optimization algorithm, the task scheduling problem of the heterogeneous Bernoulli machine pipeline was solved, thereby improving the processing efficiency of the production line and optimizing the flexible manufacturing system.
Patent Information
- Application Number
- CN202310644588.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-02
- Publication Date
- 2025-12-12
- Estimated Expiration
- 2043-06-02
AI Technical Summary
The task scheduling problem of heterogeneous Bernoulli machine production lines has not been fully studied in the existing technology, resulting in low production line processing efficiency, especially in small-batch production in flexible manufacturing systems, where it is difficult to optimize the maximum completion time.
A discrete particle swarm optimization (DSO) algorithm is used to model a heterogeneous Bernoulli pipeline. The actual production time is calculated by using the periodic mapping coefficient, and the DSO algorithm is used to optimize the workpiece task allocation, thereby reducing the completion time of the production line system.
It improves the processing efficiency of heterogeneous Bernoulli production lines. Through high-precision transient analysis and task scheduling optimization, it reduces the overall completion time of the production line and improves the production efficiency and quality of flexible manufacturing systems.
Smart Images

Figure CN116719281B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application belongs to the field of production line task scheduling, and relates to a modeling analysis of a heterogeneous flow line based on a Bernoulli machine model and a discrete particle swarm task scheduling method for flexible small-batch production on the parallel heterogeneous production line. BACKGROUND
[0002] Since the concept of flexible manufacturing was first proposed in the 1960s, flexible manufacturing has been widely applied in various production workshops. In recent years, with the increasing emphasis of the country on intelligent manufacturing and the corresponding intelligent manufacturing strategies being introduced and promulgated, the influence of flexible manufacturing systems in the manufacturing industry has also been expanding. Flexible manufacturing has the characteristics of small batch, which makes part or even all of the production process be in a transient process. In industrial production, taking automobile manufacturing as an example, the manufacturing of the automobile itself will be divided into engine, chassis, body, interior and other parts for distributed production, and the production processes and cycles required by these parts when delivered to different factories for production may not be the same, so the research on heterogeneous parallel flow lines is necessary. However, the current research on the transient performance of flexible manufacturing systems is relatively preliminary. The task scheduling problem of the heterogeneous Bernoulli machine flow line handled by the present application has not been fully studied. SUMMARY
[0003] The technical problem to be solved by the heterogeneous Bernoulli flow line task scheduling method based on the discrete particle swarm algorithm disclosed in the present application is to model the heterogeneous Bernoulli machine flow line with a limited buffer and optimize the maximum completion time in all production lines through the scheduling and allocation of workpiece tasks to improve the processing efficiency of the production line. The present application has the following advantages: (1) the complex production state of the Bernoulli flow line is simplified and analyzed by the Markov method. (2) A cycle mapping coefficient is proposed for the heterogeneous flow line to realize the calculation of the real heterogeneous flow line production time. (3) Two kinds of discrete particles are used to ensure that the discrete particle swarm algorithm completes efficient convergence and reduces the completion time of the production line system.
[0004] The purpose of the present application is achieved by the following technical solutions:
[0005] The disclosed heterogeneous Bernoulli machine flow line task scheduling method based on a discrete particle swarm algorithm models a heterogeneous Bernoulli machine flow line manufacturing system with limited buffer zones, and realizes transient analysis of a plurality of Bernoulli machine flow line productions with limited workpieces. By constructing three auxiliary production lines, the state space dimension required for calculation of the state transition matrix in the Markov method is reduced under the premise of high precision, and the calculation efficiency is improved. Based on the heterogeneous flow line model, the processing time of the real heterogeneous production line is calculated through the period mapping coefficient, and the maximum completion time of all production lines in the production system is defined as the system completion time. By using the discrete particle swarm algorithm, the corresponding sub-particle position and speed change formula are designed for the total workpiece processing sequence of the heterogeneous production line and the processing quantity of each production line, and the particle is converged to the global optimal condition to search for a better solution around the current global optimal solution, and the search optimization of the task scheduling scheme for minimizing the system completion time is realized.
[0006] The disclosed heterogeneous Bernoulli machine flow line task scheduling method based on a discrete particle swarm algorithm comprises the following steps:
[0007] Step 1: Model the system of a heterogeneous Bernoulli machine flow line manufacturing system with limited buffer zones. The system is a flexible production line with an indefinite number of limited buffer zones and Bernoulli machines in series, and the structure of a single production line is that each two consecutive production machines have a limited capacity buffer zone between them, and there is no buffer zone after the end machine, which is by default of unlimited capacity. The system modeling includes determining the system structure, system parameters, system state, and production sequence. The system parameters include the structure of the heterogeneous production system, the system processing period and the period mapping coefficient, the Bernoulli machine reliability model, and the limited buffer zone parameters; the system state includes the Bernoulli machine starvation state, the Bernoulli machine blocking state, and the system running state. By distributing workpieces to each flow line and determining the processing sequence, the required processing period of each flow line is calculated.
[0008] Step 1.1: Determine the structure of the heterogeneous production system.
[0009] The system has L production lines, denoted as production line l, and expects to produce Q products in total, denoted as workpiece j. A single production line of the system is composed of M l Bernoulli machines and (M l -1) limited buffer zones. The Bernoulli machine is denoted by m i,l , and the limited buffer zone is denoted by b i,l .
[0010] Step 1.2: Determine the system processing period and the period mapping coefficient.
[0011] All Bernoulli machines on the same production line have the same and time-invariant processing period τ, and the time axis is segmented in units of processing period τ. Different production lines have different period mapping coefficients C l For production line l, the completion time satisfies: T l = C l nτ, where nτ is the total number of processing periods of the production line.
[0012] Step 1.3: Determine the Bernoulli machine reliability model.
[0013] All Bernoulli machines are subject to the Bernoulli machine reliability model: if Bernoulli machine m i,l , i = 1, 2,..., M, l = 1, 2,..., L, does not block or starve in the production of workpiece j, j = 1, 2,..., Q, product process, the probability of producing a workpiece by the Bernoulli machine in one processing period is p i,j,l , p i,j,l ∈(0,1). The probability of failing to produce a workpiece is defined as 1-p i,j,l . The parameter p i,j,l is defined as the efficiency of Bernoulli machine i on the lth line in producing workpiece j.
[0014] Step 1.4: Determine the Bernoulli machine starvation state.
[0015] In a processing period, if Bernoulli machine m i,l is in working state, i = 2, 3,..., M l , but the upstream finite buffer b i,l of Bernoulli machine m i-1,l , l = 1, 2,..., L, is empty at the end of the previous processing period, then the Bernoulli machine is in starvation state in the processing period.
[0016] Step 1.5: Determine the Bernoulli machine blocking state.
[0017] In a processing period, if Bernoulli machine m i,l is in working state, i = 2, 3,..., M l -1, l = 1, 2,..., L, but the downstream buffer b i,l of Bernoulli machine m i,l , l = 1, 2,..., L, is full at the end of the previous processing period, and the downstream Bernoulli machine m i,l of Bernoulli machine m i+1,l cannot extract a workpiece from the finite buffer for processing at the beginning of the processing period, then the Bernoulli machine is in blocking state in the processing period. Bernoulli machine m Ml cannot be in blocking state.
[0018] Step 1.6: Determine the finite buffer parameters.
[0019] Each buffer b i,l , i = 1, 2,..., M l -1, l = 1, 2,..., L, is characterized by a buffer capacity N i,l , N i,l ∈ (0, ∞).
[0020] Step 1.7: Determine the production order.
[0021] The workpieces j, j = 1, 2,..., Q, are produced in such a way that for each workpiece, all Bernoulli machines do not process subsequent workpieces before the end of the production of each workpiece. All production lines produce a total of Q workpieces.
[0022] Step 1.8: Determine whether the system belongs to the running state or the debugging state.
[0023] In the running state of the lth production line, a total of B l , l = 1, 2,..., L, workpieces are produced. When B l workpieces are produced, it marks the end of the production process of the production line. When all production lines produce a total of Q workpieces, the overall production process ends.
[0024] Step 2: According to the transient processing process of the workpieces in the production line, the number of machines processed in each cycle is represented in the form of a probability distribution, and the running state of the machine and the production line is also represented in the form of a probability distribution. The real-time running state of the machine is determined by defining the processing cycle of the machine, and the end-of-processing cycle and the completion time are defined to determine the end-of-running state of the production line.
[0025] The Bernoulli machine m i,l , i = 1, 2,..., M l , of the lth production line has completed j workpiece production, and the expected number of processing cycles of the production line has been processed. Among them, j(k) represents the workpiece whose processing order is the kth on the lth production line, j(k) ∈ [1, 2, 3,..., Q]. In the subsequent description, it is simply described as j, that is, the processing cycle is CT i,j,l .
[0026] Step 2.1: Define the end-of-processing cycle (CT l ).
[0027] For the end-of-processing cycle indicator CT l required for the production line, l = 1, 2,..., L, it is defined as the end-of-processing cycle indicator CT l required for the production line, l = 1, 2,..., L, it is defined as the end-of-processing cycle indicator CT lOne workpiece.
[0028] Step 2.2: Define the completion time (T) l )
[0029] T l The definition is: at the end of the l-th production line, machine M l B has been produced l The specific completion time of each workpiece, l = 1, 2, ..., L, is expressed as: T l =C l ·CT l C l Let be the cycle mapping coefficient for the l-th production line.
[0030] Step 3: For a single production line, construct a system consisting of M l Auxiliary production line 1 consists of 18 machines, where the number of workpieces supplied by auxiliary production line 1 is infinite, but the expected production efficiency of each machine is dynamically adjusted according to the finite number of processing tasks. Calculating the expected processing time for a finite number of production tasks on auxiliary production line 1 with an infinite number of production tasks is equivalent to directly calculating the expected processing time for a finite number of production tasks on the original production line model.
[0031] Based on the system model established in step 1, this production process exhibits "no aftereffect," meaning the state of the system in the next processing cycle depends only on the state of this current processing cycle. Therefore, the state transition of the production process is a Markov chain. Let f i,l (n)∈{0,1,...,B l}, i = 1, 2, ..., M l , where p represents the number of workpieces produced by the l-th line at the start of processing cycle n. i,j,l The efficiency of Bernoulli machine i on line l in producing workpiece j. At time n, the efficiency of Bernoulli machine m on line l. i,l The expected production probability is:
[0032]
[0033] In order to satisfy the vector dimension matching, add And order
[0034] Step 4: To calculate the relevant parameters of the production process of auxiliary production line 1 in Step 3, auxiliary production line 1 is further decomposed into M. l A single-machine production line, referred to as auxiliary production line 2, and M l -1 dual-machine production line, referred to as auxiliary production line 3. The Bernoulli machine efficiency in auxiliary production line 2 is... which produces a finite number of workpieces, is used to calculate the completion status of the single machine; the efficiency of the Bernoulli machine in the auxiliary production line 3 is and which produces an infinite number of workpieces, is used to calculate the status of the buffer.
[0035] Step 5: According to the auxiliary production line 2, auxiliary production line 3 in step 4, the parameters of the two auxiliary production lines are calculated using the Markov method. The state changes of the number of workpieces processed by the machine and the number of workpieces temporarily stored in the buffer with the increase of the cycle are confirmed by the Markov state transition matrix, and the parameters of the two production lines are iteratively updated according to the two state changes, including the efficiency of the Bernoulli machine in the auxiliary production line 2 and the efficiency of the Bernoulli machine in the auxiliary production line 3 and
[0036] Step 5.1: Let denote the probability that the finite buffer b i,l in the auxiliary production line 3 has d workpieces at the end of the processing cycle n, so that Let denote the probability that the Bernoulli machine in the auxiliary production line 2 has completed the production of d workpieces at the end of the processing cycle n of the lth line, so that Let and The initial conditions are:
[0037]
[0038]
[0039] Step 5.2: Let n = 1.
[0040] Step 5.3: Let for all i = 2, 3,..., M l , calculate
[0041] Step 5.4: Let Then, calculate in descending order of i = 1, 2,..., M l -1, that is, according to the following formula, first calculate Calculate
[0042]
[0043] Step 5.5: Let Then, for all i = 2, 3,..., M l, according to the following formula
[0044]
[0045] Step 5.6: For all i = 1, 2,..., M l -1, according to the following formula
[0046]
[0047] wherein, is the state transition probability matrix of the i-th buffer of the l-th production line in the auxiliary production line 3 at the processing cycle n, denoted as:
[0048]
[0049] wherein, c1 represents c2 represents
[0050] Step 5.7: For all i = 1, 2,..., M l , according to the following formula
[0051]
[0052] wherein, is the state transition probability matrix of the i-th Bernoulli machine of the l-th production line in the auxiliary production line 2 at the processing cycle n, denoted as:
[0053]
[0054] wherein, c3 represents
[0055] Step 5.8: Let n = n + 1, return to step 5.3 until the required number of processing cycles for prediction is reached.
[0056] Step 6: Based on the Bernoulli machine efficiency and the probability of the auxiliary production line 3 obtained in step 5, calculate the cycle CT l at which the l-th production line ends processing according to the following formula.
[0057] Calculate the cycle CT l at which the l-th production line ends processing according to the following formula:
[0058]
[0059] Step 7: To achieve the improvement of the heterogeneous flow line processing efficiency, the production line processing end index CT constructed in step 6 is used l For optimization target, the heterogeneous Bernoulli machine flow line task scheduling optimization problem is constructed.
[0060] When there are L production lines, each production line has M L Bernoulli machines and M L -1 finite buffer, given Q different workpieces, which are allocated to different production machines on different production lines with different processing efficiency p i,j,l . If the cycle mapping coefficient of each production line is C l , how to allocate Q workpieces to L production lines and confirm the corresponding processing order to make the overall completion time T shortest. The calculation formula of T is as follows:
[0061]
[0062] According to the above method, the overall completion time T is the shortest, that is, the heterogeneous Bernoulli machine flow line task scheduling optimization problem is constructed.
[0063] Step 8: According to the heterogeneous Bernoulli machine flow line task scheduling optimization problem constructed in step 7, the task content to be determined is the workpiece allocation between parallel production lines and the processing order arrangement in single production line, which belongs to discrete variable problem. Therefore, based on the discrete particle swarm algorithm, two kinds of particles are used to represent the total processing order of all production lines and the processing quantity of each production line, respectively, to search the solution set space to find the optimal combination to achieve the optimization target of reducing the overall completion time of the production system.
[0064] Step 8.1: Initialize the particle swarm. The number of particles is initialized as NP, and each particle is assigned with corresponding initial position x and velocity v. The initial position vector x is divided into x1 and x2. Wherein x1 represents the total processing order of all production lines, and the vector size is 1×n. x2 represents the processing quantity of each production line, and the vector size is 1×L. The total completion time T of the distributed flow line is f(x1,x2). For each position vector x1,x2, generate the corresponding random initial velocity vector v1,v2. The specific formula is as follows: v i,j =v min +θ·(v max -v min )i=1,2;j=1,2,...,NP.
[0065] Wherein v min is the preset minimum speed, v max is the preset maximum speed, and θ is a random number satisfying θ∈[0,1];
[0066] Step 8.2: Initialize individual optimal case pbest for each particle, where pbest records the optimal xi, x2 of the particle in the iteration. For the initial case, it satisfies:
[0067] x 1p,j = x 1,j , x 2p,j = x 2,j , j = 1, 2,..., NP.
[0068] Step 8.3: Initialize global optimal case gbest, where gbest records the optimal xi, x2 case of all particles in the iteration. For the initial case, it satisfies:
[0069]
[0070] Step 9: Start the iteration update of the particle swarm algorithm. Let the current iteration number be t, and the iteration termination number be G.
[0071] Step 9.1: Calculate the dynamic inertia weight w, the formula is:
[0072] w = w max - (w max - w min ) t / G
[0073] where w max is the maximum dynamic inertia weight, w min is the minimum dynamic inertia weight, t is the current iteration number, and G is the iteration termination number.
[0074] Step 9.2: Update the speed vector vi, v2 of each individual. The update formula is:
[0075]
[0076]
[0077] where β1 is the learning factor, and μ is a random number satisfying μ ∈ [0, 1].
[0078] Since xi, x2 are vectors representing discrete variables, is a discrete subtraction. The definition of this subtraction is as follows:
[0079] Let the two items of the discrete subtraction be X = [X1, X2,..., X n ], Y = [Y1, Y2,..., Y n ], and let the difference result be z. Then we have:
[0080]
[0081] Step 9.2: Boundary condition processing is performed on the speed of each individual to satisfy v min ≤v≤v max , and the speed is normalized to obtain the corresponding v 1s and v 2s . The normalization formula is:
[0082]
[0083] Step 10: For each x1 in the population, update its current position according to the individual historical optimal x 1p (t-1), i.e., the current processing sequence is adjusted to the processing sequence in the case of the shortest overall processing time in the particle history; for each x2 in the population, update its current position according to the individual historical optimal x 2p (t-1), i.e., the current number of processes on each production line is adjusted to the number of processes on each production line in the case of the shortest overall processing time in the particle history. By adjusting the particle to the individual historical optimal case, a better solution is searched around the suboptimal solution.
[0084] For each solution in the population, according to the corresponding x 1p (t-1), x 2p (t-1) and x1(t-1), x2(t-1), the transient position x1'(t), x'2(t) is obtained. For the x1 vector, by comparing each item of x 1p (t-1) and x1(t-1), if the value of a certain item x 1,j (t-1) is different from the value of x 1p,j (t-1), i.e., the processing sequences of the two are different and v 1s,j ≥ξ,ξ∈(0,1) satisfies the convergence condition, then the value of x' 1,j (t) is the value of x 1p,j (t-1) which retains the excellent processing sequence of the solution, otherwise x 1,j (t-1) remains unchanged. In each update, it is ensured that there is no repeated workpiece in the processing sequence. For the x2 vector, the updating method is the same as that of the x1 vector. After all items are updated, by randomly adding or subtracting to each item, it is ensured that the sum of all items is equal to the total number of workpieces.
[0085] Step 11: For each x1'(t) in the population, update its current position according to the global historical optimal x 1g (t-1), i.e., the current processing sequence is adjusted to the processing sequence in the case of the shortest overall processing time in the global history; for each x'2(t) in the population, update its current position according to the individual historical optimal x 2g(t-1) update its current position, i.e. to close the current number of each production line processing to the number of each production line processing in the case of the shortest global history overall processing time. By closing the particles to the global optimal case, a better solution is searched around the current global optimal solution.
[0086] Step 11.1: update the velocity vector v1' and v'2 of each individual, and perform boundary processing and normalization. The update formula is:
[0087]
[0088]
[0089] wherein β2 is a learning factor, and λ is a random number satisfying λ∈[0, 1].
[0090] The boundary condition of the velocity of each individual is processed to satisfy v min ≤v'≤v max , and the velocity is normalized to obtain the corresponding v 1s and v 2s . The normalization formula is:
[0091]
[0092] Step 11.2: for x1'(t), x'2(t), according to x 1g (t-1), x 2g (t-1) obtain x1(t), x2(t). The update mode is the same as step 10.
[0093] Step 12: compare the overall completion time values of the task allocation corresponding to the current particles, and select the combination with smaller completion time to update the production line processing order and the number of each factory processing corresponding to the individual history optimal solution pbest and the global optimal solution gbest of x1 and x2.
[0094]
[0095]
[0096]
[0097] Step 13: check whether t=G is satisfied. If not, then t=t+1, return to step 9 to continue calculation; if the termination condition is satisfied, then the discrete particle swarm algorithm is ended, and the optimal iteration diagram of the global optimal overall completion time of the discrete particle swarm algorithm is output, and the task scheduling result in the final global optimal case is output.
[0098] Further comprising step 14: through the task scheduling result in the final global optimal case determined by step 13, the task allocation of the total workpiece processing sequence of all production lines and the processing quantity of each production line under the heterogeneous Bernoulli production system is completed. Through calculating the corresponding production line parameter change, the system production transient process and the shortest overall completion time under the optimal case are obtained, the processing efficiency of the production system is improved, and the related engineering problems are solved.
[0099] Beneficial effects:
[0100] 1. The heterogeneous Bernoulli pipeline task scheduling method based on the discrete particle swarm algorithm disclosed in the present application is characterized in that: the heterogeneous pipeline with an indefinite number of Bernoulli machines and limited buffer zones is modeled, the transient performance of the system is predicted with high precision on the basis of the system modeling, the prediction problem is simplified by using three auxiliary lines, and the task scheduling efficiency of the heterogeneous Bernoulli pipeline is improved.
[0101] 2. The heterogeneous Bernoulli pipeline task scheduling method based on the discrete particle swarm algorithm disclosed in the present application is characterized in that: the task scheduling of the production line is performed by using the double-particle discrete particle swarm algorithm, the optimal case of the total workpiece processing sequence of all production lines and the processing quantity of each production line is searched respectively, and the task allocation is realized to minimize the overall completion time of the production system.
[0102] 3. The heterogeneous Bernoulli pipeline task scheduling method based on the discrete particle swarm algorithm disclosed in the present application is characterized in that: the method is an analytical method using the Markov state transition method, the real processing process of the Bernoulli processing machine model is approximated in the form of probability expectation, and the method has the characteristics of high efficiency and no random error.
[0103] 4. The heterogeneous Bernoulli pipeline task scheduling method based on the discrete particle swarm algorithm disclosed in the present application is characterized in that: the transient performance index predicted is used to reasonably plan the production process of the flexible discrete manufacturing system, the production efficiency and quality of the flexible discrete manufacturing system are improved, the production cost is saved, and the related engineering technical problems of the flexible discrete manufacturing system are solved. BRIEF DESCRIPTION OF DRAWINGS
[0104] Figure 1 It is a schematic diagram of the production system considered in the present application. The circles represent Bernoulli machines, the rectangles represent limited buffer zones, the hexagons represent different workpieces that need to be processed, and the arrows represent the direction of workpiece flow.
[0105] Figure 2 It is a system modeling flowchart proposed in the present application.
[0106] Figure 3 It is a schematic diagram of the auxiliary production line 1 proposed in the present application.
[0107] Figure 4 is a schematic diagram of the auxiliary production line 2 proposed by the present application.
[0108] Figure 5 is a schematic diagram of the auxiliary production line 3 proposed by the present application.
[0109] Figure 6 is a flow chart of the discrete particle swarm algorithm proposed by the present application.
[0110] Figure 7 is a schematic diagram of the individual encoding in the discrete particle swarm algorithm proposed by the present application.
[0111] Figure 8 is a schematic diagram of the method for updating x1 of the individual in the particle swarm algorithm proposed by the present application.
[0112] Figure 9 is a schematic diagram of the method for removing duplicates of x1 of the individual in the particle swarm algorithm proposed by the present application.
[0113] Figure 10 is a schematic diagram of the method for updating x2 of the individual in the particle swarm algorithm proposed by the present application.
[0114] Figure 11 is a schematic diagram of the method for updating x1 and x2 of the individual in the particle swarm algorithm proposed by the present application.
[0115] Figure 12 is a graph of the optimization iteration results of the global minimum completion time in Example 1 of the present application. DETAILED DESCRIPTION
[0116] In order to better illustrate the purposes and advantages of the present application, the content of the application will be further described below in combination with the drawings and examples.
[0117] Example 1:
[0118] As shown in Figure 2 , the present embodiment discloses a heterogeneous Bernoulli pipeline task scheduling method based on a discrete particle swarm algorithm, and the specific implementation steps are as follows:
[0119] Step 1: as Figure 1As shown, the system modeling of the heterogeneous Bernoulli machine flow line manufacturing system with limited buffer (hereinafter referred to as the system) is carried out. The system is a flexible production line with an indefinite number of limited buffers and Bernoulli machines in series. The structure of a single production line is that there is a limited capacity buffer between every two consecutive production machines, and there is no buffer after the end machine, which is by default of unlimited capacity. The system modeling includes determining the system structure, system parameters, system state, and production sequence. The system parameters include the structure of the heterogeneous production system, the system processing period and the period mapping coefficient, the Bernoulli machine reliability model, and the limited buffer parameters. The system state includes the Bernoulli machine starvation state, the Bernoulli machine blocking state, and the system running state. By assigning workpieces to each flow line and determining the processing sequence, the expected processing period required by each flow line is calculated. The overall modeling process is as shown in Figure 2 .
[0120] Step 1.1: Determine the structure of the heterogeneous production system.
[0121] For the system, five production lines are set, denoted as production line l, and a total of 100 products are expected to be produced, denoted as workpiece j. A single production line of the system is composed of M l Bernoulli machines and (M l -1) limited buffers. Among them, production lines 1 and 2 are composed of 5 machines, production lines 3 and 4 are composed of 4 machines, and production line 5 is composed of 3 machines. The Bernoulli machine is denoted by m i,l , and the limited buffer is denoted by b i,l .
[0122] Step 1.2: Determine the system processing period and the period mapping coefficient.
[0123] All Bernoulli machines on the same production line have the same and time-invariant processing period τ. The time axis is segmented in units of processing period τ. Different production lines have different period mapping coefficients C l . In this example, the C l of production lines 1-5 is: [4.03.85.04.84.2]. For production line l, the completion time satisfies: T l = C l nτ, where nτ is the total processing period number of the production line.
[0124] Step 1.3: Determine the Bernoulli machine reliability model.
[0125] All Bernoulli machines follow the Bernoulli machine reliability model: if the Bernoulli machine m i,l , i = 1, 2,..., M lp, l = 1,2,...,5, the probability that the Bernoulli machine produces one workpiece in one processing cycle i,j,l , p i,j,l ∈(0,1). At the same time, the probability that the Bernoulli machine fails to produce one workpiece is 1-p i,j,l . The parameter p i,j,l is defined as the efficiency of the Bernoulli machine i on the lth line to produce workpiece j. In the present example, p i,j,l ∈(0.7,1).
[0126] Step 1.4: Determine the starvation state of the Bernoulli machine.
[0127] In one processing cycle, if the Bernoulli machine m i,l is in working state, i = 2,3,...,M l -1, l = 1,2,...,5, but the upstream buffer b i,l of the Bernoulli machine m i-1,l , l = 1,2,...,5, is empty at the end of the previous processing cycle, then the Bernoulli machine is in starvation state in the processing cycle.
[0128] Step 1.5: Determine the blocking state of the Bernoulli machine.
[0129] In one processing cycle, if the Bernoulli machine m i,l is in working state, i = 2,3,...,M l -1, l = 1,2,...,5, but the downstream buffer b i,l of the Bernoulli machine m i,l , l = 1,2,...,5, is full at the end of the previous processing cycle, and the downstream Bernoulli machine m i,l of the Bernoulli machine m i+1,l is unable to extract workpiece from the finite buffer for processing at the beginning of the processing cycle, then the Bernoulli machine is in blocking state in the processing cycle. The Bernoulli machine m Ml cannot be in blocking state.
[0130] Step 1.6: Determine the finite buffer parameters.
[0131] Each buffer b i,l , i = 1,2,...,M l -1, l = 1,2,...,5, is characterized by buffer capacity N i,l , N i,l ∈[1,2,3].
[0132] Step 1.7: Determine the production sequence.
[0133] Workpieces j, j = 1, 2,..., 100, for each workpiece, all Bernoulli machines do not process subsequent other workpieces before the end of each workpiece production. All production lines produce a total of 100 workpieces.
[0134] Step 1.8: Determine whether the system belongs to the running state or the debugging state.
[0135] In the running process state of the lth production line, a total of B l , l = 1, 2,..., 5, workpieces are produced. When B l workpieces are produced, it marks the end of the production process of the production line. When all production lines produce a total of 100 workpieces, the overall production process ends.
[0136] Step 2: According to the transient processing process of the workpieces in the production line, the number of machines processed in each cycle is represented in the form of a probability distribution, and the running state of the machine and the production line is also represented in the form of a probability distribution. The real-time running state of the machine is determined by defining the machine processing cycle, and the end-of-processing cycle and the completion time are defined to determine the end-of-running state of the production line.
[0137] The Bernoulli machine m i,l , i = 1, 2,..., M l of the lth production line completes the production of j workpieces, and the system has been processed for an expected number of cycles. Among them, j(k) represents the workpiece whose processing order is the kth on the lth production line, j(k) ∈ [1, 2, 3,..., 100]. In the subsequent description, it is simply referred to as j, that is, the processing cycle is CT i,j,l .
[0138] Step 2.1: Define the end-of-processing cycle (CT l ).
[0139] For the end-of-processing cycle indicator CT l required by the present application, l = 1, 2,..., 5, it is defined as the end-of-processing cycle of the lth production line, that is, the end-of-processing cycle of the machine M l at the end of the lth production line has produced B l workpieces.
[0140] Step 2.2: Define the completion time (T l )
[0141] The definition of T l is: the specific completion time of the machine M l at the end of the lth production line has produced B l workpieces, l = 1, 2,..., 5. Its expression is: T l = C l · CT l where C l is the lth line cycle mapping coefficient.
[0142] Step 3: For a single line, as shown in Figure 3 , construct an auxiliary line 1 consisting of M l machines, where the workpiece supply number of the auxiliary line 1 is infinite, but the expected production efficiency of each machine is dynamically adjusted according to the limited processing task. By calculating the expected processing completion time required for the limited production task on the auxiliary line 1 with infinite production tasks, it is equivalent to directly calculating the processing completion time expectation of the limited production task on the original production line model.
[0143] According to the system model established in step 1, this production process has "no aftereffect", that is, the state of the next processing cycle of the system is only related to the state of this processing cycle. Therefore, this random process is a Markov chain. Let f i,l (n) ∈ {0, 1,..., B l}, i = 1, 2,..., M l , represent the number of workpieces produced by the lth line at the beginning of the processing cycle n. p i,j,l is the efficiency of Bernoulli machine i producing workpiece j on the lth line. At time n, the Bernoulli machine m i,l on the lth production line has an expected production probability of:
[0144]
[0145] where, to match the dimension of the vector, increase and let
[0146] Step 4: As shown in Figure 4 and Figure 5 , to realize the related parameter calculation of the production process of the auxiliary line 1 in step 3, further decompose the auxiliary line 1 into M l single-machine production lines, called auxiliary line 2, and M l -1 double-machine production lines, called auxiliary line 3. Where the Bernoulli machine efficiency in auxiliary line 2 is which produces a limited number of workpieces, used to calculate the processing completion state of a single machine; the efficiency of the Bernoulli machine in auxiliary line 3 is and which produces an infinite number of workpieces, used to calculate the state of the buffer
[0147] Step 5: According to the auxiliary production line 2, auxiliary production line 3 described in step 4, using Markov method to calculate the parameters of the two auxiliary production lines. Through the Markov state transition matrix to confirm the state changes of the number of workpieces completed by machine processing and the number of workpieces temporarily stored in the buffer zone with the growth of the cycle, and according to the two state changes to iteratively update the parameters of the two production lines, the parameters include the efficiency of the Bernoulli machine in the auxiliary production line 2 and the efficiency of the Bernoulli machine in the auxiliary production line 3 and
[0148] Step 5.1: Let represent the probability that the finite buffer zone b i,l in the auxiliary production line 3 has d workpieces at the end of the processing cycle n, so that Let represent the probability that the Bernoulli machine in the auxiliary production line 2 completes the production of d workpieces at the end of the processing cycle n in the lth line, so that and The initial conditions are:
[0149]
[0150]
[0151] Step 5.2: Let n = 1.
[0152] Step 5.3: Let For all i = 2, 3,..., M l , calculate
[0153] Step 5.4: Let Then, according to i = 1, 2,..., M l in descending order, calculate That is, according to the following formula, first calculate Finally, calculate
[0154]
[0155] Step 5.5: Let Then, for all i = 2, 3,..., M l , calculate
[0156]
[0157] Step 5.6: For all i = 1, 2,..., Ml -1, calculated as follows
[0158]
[0159] wherein, is the state transition probability matrix of the i-th buffer in the l-th production line in the auxiliary production line 3 at the processing cycle n, denoted as:
[0160]
[0161] wherein, c1 represents c2 represents
[0162] Step 5.7: for all i = 1, 2,..., M l , calculated as follows
[0163]
[0164] wherein, is the state transition probability matrix of the i-th Bernoulli machine in the l-th production line in the auxiliary production line 2 at the processing cycle n, denoted as:
[0165]
[0166] wherein, c3 represents
[0167] Step 5.8: let n = n + 1, return to step 5.3 until the required number of processing cycles for prediction is reached.
[0168] Step 6: based on the Bernoulli machine efficiency and the probability in the auxiliary production line 3 obtained in step 5, calculate the cycle CT l at which the l-th production line ends processing according to the following formula.
[0169]
[0170] Step 7: to achieve the improvement of the processing efficiency of the heterogeneous flow line, taking the production line processing end index CT l constructed in step 6 as the optimization target, construct the heterogeneous Bernoulli machine flow line task scheduling optimization problem.
[0171] When there are L production lines in total, each production line has M L Bernoulli machines and M L-1 limited buffer, given Q different workpieces, assigned to different production machines on different production lines, have different processing efficiency p i,j,l . If the cycle mapping coefficient of each production line is C l , how to allocate Q workpieces to L production lines and confirm the corresponding processing order to make the overall completion time T shortest. The calculation formula of T is as follows:
[0172]
[0173] According to the above method, the overall completion time T is the shortest, that is, the heterogeneous Bernoulli machine flow line task scheduling optimization problem is constructed.
[0174] Step 8: According to the heterogeneous Bernoulli machine flow line task scheduling optimization problem constructed in step 7, the basic flow is as shown in Figure 6 The task content to be determined is the workpiece allocation between parallel production lines and the processing order arrangement in single production line, which belongs to discrete variable problem. Therefore, based on the discrete particle swarm algorithm, two kinds of particles are used to represent the total processing order of all production lines and the processing quantity of each production line, respectively, and the solution set space is searched to find the optimal combination to achieve the optimization goal of reducing the overall completion time of the production system.
[0175] Step 8.1: Initialize the particle swarm. The number of particles is initialized to 40, and each particle is assigned with a corresponding initial position x and velocity v. The initial position vector x is divided into x1 and x2, and the definition form is as follows: Figure 7 A simple example is shown, where Figure 7 represents that there are 10 workpieces to be allocated to 3 production lines, and the subsequent Figures 8-11 are all simple examples with this parameter. x1 represents the total processing order of all production lines, and in this specific example, the vector size is 1x100. x2 represents the processing quantity of each factory, and in this specific example, the vector size is 1x5. The total completion time T of the distributed flow line is f(x1, x2). For each position vector x1, x2, generate a corresponding random initial velocity vector v1, v2. The specific formula is as follows:
[0176] v i,j =v min +θ·(v max -v min )i=1,2;j=1,2,...,40.
[0177] Where v min is the preset minimum speed, v max is the preset maximum speed, and θ is a random number satisfying θ∈[0,1];
[0178] Step 8.2: Initialize individual optimal case pbest for each particle, where pbest records the optimal xi, x2 of the particle in the iteration. For the initial case, it satisfies:
[0179] x 1p,j = x 1,j , x 2p,j = x 2,j , j = 1, 2,..., 40.
[0180] Step 8.3: Initialize global optimal case gbest, where gbest records the optimal xi, x2 case of all particles in the iteration. For the initial case, it satisfies:
[0181]
[0182] Step 9: Start the iteration update of the particle swarm algorithm. Let the current iteration number be t, and the iteration termination number be 40.
[0183] Step 9.1: Calculate the dynamic inertia weight w, the formula is:
[0184] w = w max - (w max - w min ) t / G
[0185] where w max is the maximum dynamic inertia weight, w min is the minimum dynamic inertia weight, t is the current iteration number, and G is the iteration termination number.
[0186] Step 9.2: Update the speed vector vi, v2 of each individual. The update formula is:
[0187]
[0188]
[0189] where β1 is the learning factor β1 = 1.5, and μ is a random number satisfying μ ∈ [0, 1].
[0190] In particular, since xi, x2 are both vectors representing discrete variables, is a discrete subtraction. The definition of this subtraction is as follows: Let the two items of the discrete subtraction be X = [X1, X2,..., X n ], Y = [Y1, Y2,..., Y n ], and let the difference result be z. Then we have:
[0191]
[0192] Step 9.2: Apply boundary conditions to the velocity of each individual to satisfy v min ≤v≤v max The velocity is then normalized to obtain the corresponding v. 1s With v 2s The normalization formula is:
[0193]
[0194] Step 10: For each x1 in the population, based on the individual's historical best x 1p (t-1) Update its current position, that is, move the current processing order closer to the processing order that minimizes the overall processing time of this particle's history; for each x2 in the population, based on the individual's historical optimal x 2p (t-1) Update its current position, that is, move the current processing count of each production line closer to the processing count of each production line when the overall processing time of the particle's history is the shortest. By moving the particle closer to the best case in its individual history, we can search for better solutions around the suboptimal solution.
[0195] like Figure 8 As shown in the simple example, for each solution in the population, according to the corresponding x 1p (t-1), x 2p By comparing x1(t-1) with x1(t-1) and x2(t-1), we obtain the transient positions x1'(t) and x'2(t). For the x1 vector, by comparing x... 1p For each term of (t-1) and x1(t-1), if a certain term x 1,j The value of (t-1) and x 1p,j The values of (t-1) are different, meaning the processing order is different and v 1s,j If x1' ≥ ξ, ξ∈(0,1) satisfies the convergence condition, then x1', j (t) The value of this term is x 1p,j The value of (t-1) preserves the processing order of the best solution; otherwise, x is kept unchanged. 1,j (t-1) remains unchanged. During each update, as... Figure 9 As shown, ensure that no duplicate workpieces appear in the processing sequence. The update method for vector x2 is the same as for vector x1. After all items are updated, as shown... Figure 10 As shown, by randomly adding or subtracting each item, we ensure that the sum of all items equals the total number of items.
[0196] Step 11: For each x1'(t) in the population, calculate the global historical best x 1g (t-1) Update its current position, that is, move the current processing order closer to the processing order that minimizes the overall processing time in the global history; for each x'2(t) in the population, according to the individual's historical best x 2g(t-1) update its current position, i.e. to close the current number of each production line processing to the number of each production line processing in the case of the shortest global history overall processing time. By closing the particles to the global optimal case, a better solution is searched around the current global optimal solution.
[0197] Step 11.1: update the velocity vector v1' and v'2 of each individual, and perform boundary processing and normalization. The update formula is:
[0198]
[0199]
[0200] wherein β2 is a learning factor β2 = 1.5, and λ is a random number satisfying λ ∈ [0, 1].
[0201] The boundary condition of the velocity of each individual is processed to satisfy v min ≤ v' ≤ v max , and the velocity is normalized to obtain the corresponding v 1s and v 2s . The normalization formula is:
[0202]
[0203] Step 11.2: for x1'(t), x'2(t), according to x 1g (t-1), x 2g (t-1), obtain x1(t), x2(t). As shown in the simple example, the update mode is the same as step 10. Figure 11
[0204] Step 12: compare the overall completion time values of the task allocation corresponding to the current particles, and select the combination with smaller completion time to update the production line processing order and the number of each factory processing corresponding to the individual history optimal solution pbest and the global optimal solution gbest of x1 and x2.
[0205]
[0206]
[0207]
[0208] Step 13: check whether t = G is satisfied. If not, t = t + 1, return to step 9 to continue calculation; if the termination condition is satisfied, the discrete particle swarm algorithm is ended, as shown in the figure, the optimization iteration diagram of the global optimal overall completion time of the discrete particle swarm algorithm is output, and the task scheduling result in the final global optimal case is obtained. Figure 12
[0209] Further comprising step 14: through the task scheduling result in the final global optimal case determined by step 13, complete the task allocation of the total workpiece processing sequence and the processing quantity of each production line under the heterogeneous Bernoulli production system. By calculating the corresponding production line parameter change, the system production transient process and the shortest overall completion time in the optimal case are obtained, the processing efficiency of the production system is improved, and related engineering problems are solved.
[0210] The above specific description further details the purpose and technical solution of the application, and the above description is only a specific embodiment of the application and does not limit the protection scope of the application. Any modification, equivalent replacement, improvement, etc. within the spirit and principles of the application shall be included in the protection scope of the application.
Claims
1. A heterogeneous Bernoulli pipeline task scheduling method based on discrete particle swarm optimization algorithm, characterized in that: Includes the following steps, Step 1: Model the heterogeneous Bernoulli machine production line manufacturing system with finite buffers. The system is a flexible production line consisting of a variable number of finite buffers and Bernoulli machines sequentially arranged. Each production line has a finite-capacity buffer between every two consecutive production machines, with no buffer after the last machine (defaulting to infinite capacity). System modeling includes determining the system structure, system parameters, system states, and production sequence. System parameters include the heterogeneous production system structure, system processing cycle and cycle mapping coefficient, Bernoulli machine reliability model, and finite buffer parameters. System states include Bernoulli machine starvation state, Bernoulli machine blockage state, and system operating state. By allocating workpieces to each production line and determining the processing sequence, calculate the expected processing cycle required for each production line. Step 2: Based on the transient processing of the workpiece on the production line, the number of items processed by the machine in each cycle is represented by a probability distribution, and the operating status of the machine and the production line is also represented by a probability distribution; the real-time operating status of the machine is determined by defining the machine processing cycle, and the production line's end-of-run status is determined by defining the processing end cycle and completion time. Step 3: For a single production line, construct a system consisting of M l Auxiliary production line 1 consists of 10 machines, where the number of workpieces supplied by auxiliary production line 1 is infinite, but the expected production efficiency of each machine is dynamically adjusted according to the finite processing tasks. Calculating the expected processing time required for finite production tasks on auxiliary production line 1 with infinite production tasks is equivalent to directly calculating the expected processing time of finite production tasks on the original production line model. Step 4: To calculate the relevant parameters of the production process of auxiliary production line 1 in Step 3, auxiliary production line 1 is further decomposed into M. l A single-machine production line, referred to as auxiliary production line 2, and M l -1 dual-machine production line, referred to as auxiliary production line 3; The Bernoulli machine efficiency in auxiliary production line 2 is... It produces a limited number of workpieces to calculate the processing completion status of a single machine; The efficiency of the Bernoulli machine in auxiliary production line 3 is and It produces an unlimited number of workpieces to calculate the state of the buffer. Step 5: Based on the auxiliary production line 2 and auxiliary production line 3 described in Step 4, calculate the parameters of auxiliary production line 2 and auxiliary production line 3 using the Markov method; confirm the state changes of the number of workpieces processed by the machine and the number of workpieces temporarily stored in the buffer as the cycle increases through the Markov state transition matrix; iteratively update the parameters of the two production lines based on the two state changes, including the efficiency of the Bernoulli machine in auxiliary production line 2. Efficiency of the Bernoulli machine in auxiliary production line 3 and Step 6: Bernoulli machine efficiency in auxiliary production line 3 based on the result obtained in Step 5. Sum of probabilities Calculate the cycle time CT of the end of processing on the l-th production line. l ; Step 7: To improve the processing efficiency of the heterogeneous production line, the processing completion index CT of the production line constructed in Step 6 is used. l To optimize the objective, a task scheduling optimization problem for a heterogeneous Bernoulli machine pipeline is constructed. Step 8: Based on the heterogeneous Bernoulli machine pipeline task scheduling optimization problem constructed in Step 7, the task content that needs to be determined is the allocation of workpieces between parallel production lines and the arrangement of processing sequence within a single production line, which is a discrete variable problem. Therefore, based on the discrete particle swarm optimization algorithm, two types of sub-particles are used to represent the total processing sequence of all workpieces on all production lines and the processing quantity of each production line, respectively. The solution space is searched to find the optimal combination to achieve the optimization goal of reducing the overall completion time of the production system. Step 9: Begin iterative updates using the particle swarm optimization algorithm; let the current iteration number be t, and the iteration termination number be G; Step 10: For each x1 in the population, based on the individual's historical best x 1p (t-1) Update its current position, that is, move the current processing order closer to the processing order that minimizes the overall processing time of this particle's history; for each x2 in the population, based on the individual's historical optimal x 2p (t-1) Update its current position, that is, move the current processing number of each production line closer to the processing number of each production line when the overall processing time of the particle's history is the shortest; by moving the particle closer to the individual historical best case, we can search for better solutions around the suboptimal solution; Step 11: For each x'1(t) in the population, calculate the global historical best x 1g (t-1) Update its current position, that is, move the current processing order closer to the processing order that minimizes the overall processing time in the global history; for each x'2(t) in the population, according to the individual's historical best x 2g (t-1) Update its current position, that is, move the current processing number of each production line closer to the processing number of each production line in the case of the shortest overall processing time in the global history; by moving the particles closer to the global optimal case, we can search for better solutions around the current global optimal solution. Step 12: Compare the overall completion time values of the task allocation corresponding to each particle at present, and select the combination with the smaller completion time to update the production line processing order and the processing quantity of each factory corresponding to the individual historical best solution pbest and global best solution gbest of x1 and x2. Step 13: Check if t = G is satisfied; if not, return to step 9 to continue calculation if t = t + 1; if the termination condition is met, end the discrete particle swarm optimization algorithm, output the optimization iteration graph of the global optimal overall completion time of the discrete particle swarm optimization algorithm, and finally the task scheduling result under the global optimal condition.
2. The heterogeneous Bernoulli pipeline task scheduling method based on discrete particle swarm optimization algorithm as described in claim 1, characterized in that: It also includes step 14, which uses the task scheduling result determined in step 13 under the final global optimal condition to complete the task allocation of the total processing sequence of all production lines and the processing quantity of each production line under the heterogeneous Bernoulli production system; by calculating the corresponding changes in production line parameters, the system production transient process and the shortest overall completion time under the optimal condition are obtained, thereby improving the processing efficiency of the production system.
3. The heterogeneous Bernoulli pipeline task scheduling method based on discrete particle swarm optimization algorithm as described in claim 1 or 2, characterized in that: Step 1 is implemented as follows: Step 1.1: Determine the structure of the heterogeneous production system; The system has L production lines, denoted as production line l, and aims to produce a total of Q products, denoted as workpiece j. Each production line in the system is represented by M. l Tibernouli machines and (M l The Bernoulli machine consists of m finite buffers (-1) and m... i,l This indicates that the finite buffer is composed of b i,l express; Step 1.2: Determine the system processing cycle and cycle mapping coefficient; All Bernoulli machines on the same production line have the same time-invariant processing cycle τ, and the time axis is segmented in units of processing cycle τ; different production lines have different cycle mapping coefficients C. l For production line l, its completion time satisfies: T l =C l nτ, where nτ is the total number of processing cycles of the production line; Step 1.3: Determine the reliability model of the Bernoulli machine; All Bernoulli machines follow the Bernoulli machine reliability model: if the Bernoulli machine m i,l Let i = 1, 2, ..., M, l = 1, 2, ..., L. During the production of workpiece j, j = 1, 2, ..., Q, the Bernoulli machine neither experiences blockage nor starvation. The probability that the machine produces one workpiece in one processing cycle is p. i,j,l p i,j,l ∈(0,1); the probability of failing to produce a workpiece is defined as 1-p. i,j,l ; parameter p i,j,l The efficiency of Bernoulli machine i on line l in producing workpiece j is defined as the efficiency of the production of workpiece j by Bernoulli machine i on line l. Step 1.4: Determine the starvation state of the Bernoulli machine; If Bernoulli machine m i,l In working state, i = 2, 3, ..., M l But Bernoulli's machine m i,l Upstream finite buffer b i-1,l If l = 1, 2, ..., L, and the machine is empty at the end of the previous processing cycle, then the Bernoulli machine is in a state of starvation during that processing cycle. Step 1.5: Determine the blocking state of the Bernoulli machine; If Bernoulli machine m i,l In working state, i = 2, 3, ..., M l -1, l=1,2,...,L, but Bernoulli's machine m i,l Downstream buffer b i,l Let l = 1, 2, ..., L, and the process was full in the previous processing cycle, and the Bernoulli machine m i,l Downstream Bernoulli machines m i+1,l If a workpiece cannot be retrieved from the limited buffer for processing at the start of the processing cycle, the Bernoulli machine is blocked during that cycle. It will not be in a blocked state; Step 1.6: Determine the parameters of the finite buffer; Each buffer b i,l i = 1, 2, ..., M l -1, l = 1, 2, ..., L, given the buffer capacity N i,l Characterization, N i,l ∈(0,∞); Step 1.7: Determine the production sequence; For workpiece j, j = 1, 2, ..., Q, for each workpiece, all Bernoulli machines do not process any subsequent workpieces before the production of that workpiece is completed; all production lines produce a total of One workpiece; Step 1.8: Determine whether the system is in a running state or a debugging state; During the operation of the l-th production line, there are a total of B... l Let l = 1, 2, ..., L, be the number of workpieces produced; when B l The production process of a production line ends when a workpiece is produced; the overall production process ends when all production lines have produced a total of Q workpieces.
4. The heterogeneous Bernoulli pipeline task scheduling method based on discrete particle swarm optimization algorithm as described in claim 3, characterized in that: Step 2 is implemented as follows: Bernoulli machine on production line l i,l i = 1, 2, ..., M l Let j(k) be the expected number of processing cycles completed by the production line when j workpieces are produced; where j(k) represents the workpiece with the k-th processing order on the l-th production line, j(k)∈[1,2,3,...,Q]; and is referred to as j in subsequent descriptions, i.e., the processing cycle is CT. i,j,l ; Step 2.1: Define the machining end cycle (CT) l ); The processing completion cycle index CT required for the production line l Let l = 1, 2, ..., L, and let M be the end machine of the l-th production line. l B has been produced l One workpiece; Step 2.2: Define the completion time (T) l ) T l The definition is: at the end of the l-th production line, machine M l B has been produced l The specific completion time of each workpiece, l = 1, 2, ..., L; its expression is: T l =C l ·CT l C l The cycle mapping coefficient for the l-th production line; Step 3 is implemented as follows: Based on the system model established in step 1, this production process exhibits "no aftereffect," meaning that the state of the system in the next processing cycle depends only on the state of this current processing cycle; therefore, the state transition of the production process is a Markov chain; let f i,l (n)∈{0,1,...,B l }, i = 1, 2, ..., M l , represents the number of workpieces produced by the l-th line at the start of processing cycle n; p i,j,l The efficiency of Bernoulli machine i on line l in producing workpiece j; at time n, the efficiency of Bernoulli machine m on line l. i,l The expected production probability is: In order to satisfy the vector dimension matching, add And order 5. The heterogeneous Bernoulli pipeline task scheduling method based on discrete particle swarm optimization algorithm as described in claim 4, characterized in that: Step 5 is implemented as follows: Step 5.1: Let This represents the finite buffer b in auxiliary production line 3 at the end of processing cycle n. i,l What is the probability of having d workpieces? make This indicates that at the end of processing cycle n, the Bernoulli machine in auxiliary production line 2... The probability of completing the production of d workpieces is such that... and The initial conditions are: Step 5.2: Let n = 1; Step 5.3: Let For all i = 2, 3, ..., M l Calculate according to the following formula Step 5.4: Let Then, according to i = 1, 2, ..., M l -1 in descending order calculation That is, calculate according to the following formula first. calculate Step 5.5: Let Then, for all i = 2, 3, ..., M l Calculate according to the following formula Step 5.6: For all i = 1, 2, ..., M l -1, calculated according to the following formula in, In processing cycle n, the state transition probability matrix of the i-th buffer of the l-th production line in auxiliary production line 3 is expressed as: Where c1 represents c2 indicates Step 5.7: For all i = 1, 2, ..., M l Calculate according to the following formula in, The state transition probability matrix for the i-th Bernoulli machine on the l-th production line in auxiliary production line 2 during processing cycle n is shown below: Where c3 represents Step 5.8: Let n = n + 1, return to step 5.3, until the predicted number of processing cycles is reached.
6. The heterogeneous Bernoulli pipeline task scheduling method based on discrete particle swarm optimization algorithm as described in claim 5, characterized in that: In step 6, Calculate the cycle time CT of the end of processing on the l-th production line. l The formula is as follows: In step 7, There are L production lines in total, and each production line has M... L A Bernoulli machine and M L Given a finite buffer of -1 and Q distinct workpieces, each with different processing efficiencies p when assigned to different production machines on different production lines. i,j,l If the cycle mapping coefficient for each production line is C l How to allocate Q workpieces to L production lines and determine the corresponding processing sequence to minimize the overall completion time T; The formula for calculating T is as follows: The task scheduling optimization problem of constructing a heterogeneous Bernoulli machine pipeline is to minimize the overall completion time T using the above method.
7. The heterogeneous Bernoulli pipeline task scheduling method based on discrete particle swarm optimization algorithm as described in claim 6, characterized in that: Step 8 is implemented as follows: Step 8.1: Initialize the particle swarm; initialize the number of particles to NP, and assign each particle a corresponding initial position x and velocity v; the initial position vector x is divided into x1 and x2; where x1 represents the overall processing sequence of all workpieces on all production lines, and the vector size is 1×n; x2 represents the processing quantity of each production line, and the vector size is 1×L; then the total completion time of the distributed assembly line is T=f(x1,x2); generate corresponding random initial velocity vectors v1 and v2 for each position vector x1,x2; the specific formula is as follows: v i,j =v min +θ·(v max -v min ), i = 1, 2; j = 1, 2, ..., NP. Where v min v is the preset minimum speed. max The preset maximum speed is given by θ, which is a random number satisfying θ∈[0,1]. Step 8.2: Initialize the individual optimal case pbest for each particle, where pbest records the optimal x1 and x2 of the particle in the iteration; for the initial case, the following condition is satisfied: x 1p,j =x 1,j ,x 2p,j =x 2,j ,j=1,2,...,NP. Step 8.3: Initialize the global optimal case gbest, where gbest records the optimal x1 and x2 states for all particles during iterations; for the initial case, the following conditions must be met:
8. The heterogeneous Bernoulli pipeline task scheduling method based on discrete particle swarm optimization algorithm as described in claim 7, characterized in that: Step 9 is implemented as follows: Step 9.1: Calculate the dynamic inertia weight w, using the following formula: w=w max -(w max -w min )t / G Among them, w max For the maximum dynamic inertia weight, w min Let G be the minimum dynamic inertia weight, t be the current iteration number, and G be the iteration termination number. Step 9.2: Update the velocity vectors v1 and v2 for each individual; the update formula is: Where β1 is the learning factor, and μ is a random number satisfying μ∈[0,1]; Since x1 and x2 are both vectors representing discrete variables, This is discrete subtraction; the definition of this subtraction is as follows: Let the two terms of discrete subtraction be X = [X1, X2, ..., X...]. n ],Y=[Y1,Y2,…,Y n Let the difference be z; then we have: Step 9.2: Apply boundary conditions to the velocity of each individual to satisfy v min ≤v≤v max The velocity is then normalized to obtain the corresponding v. 1s With v 2s The normalization formula is:
9. The heterogeneous Bernoulli pipeline task scheduling method based on discrete particle swarm optimization algorithm as described in claim 8, characterized in that: Step 10 is implemented as follows: For each solution in the population, according to the corresponding x 1p (t-1), x 2p By comparing x1(t-1) with x2(t-1), we obtain the transient positions x'1(t) and x'2(t); for the x1 vector, by comparing x 1p For each term of (t-1) and x1(t-1), if a certain term x 1,j The value of (t-1) and x 1p,j The values of (t-1) are different, meaning the processing order is different and v 1s,j If x' ≥ ξ, ξ∈(0,1) satisfies the convergence condition, then x' 1,j The value of (t) is x 1p,j The value of (t-1) preserves the processing order of the best solution; otherwise, x is kept unchanged. 1,j (t-1) remains unchanged; during each update, ensure that no duplicate workpieces appear in the processing sequence; for vector x2, update in the same way as vector x1; after all items are updated, ensure that the sum of all items equals the total number of workpieces by randomly adding or subtracting each item, and search for better solutions around suboptimal solutions by bringing particles closer to the individual's historical best situation.
10. The heterogeneous Bernoulli pipeline task scheduling method based on discrete particle swarm optimization algorithm as described in claim 7, characterized in that: Step 11 is implemented as follows: Step 11.1: Update the velocity vectors v'1 and v'2 of each individual and perform boundary processing and normalization; the update formula is: Where β2 is the learning factor, and λ is a random number satisfying λ∈[0,1]; Apply boundary conditions to the velocity of each individual to satisfy v min ≤v'≤v max The velocity is then normalized to obtain the corresponding v. 1s With v 2s The normalization formula is: Step 11.2: For x'1(t) and x'2(t), according to x 1g (t-1),x 2g (t-1) yields x1(t) and x2(t); the update method is the same as in step 10; In step 12, the production line processing sequence and the processing quantity of each factory corresponding to the individual historical optimal solution pbest and the global optimal solution gbest of x1 and x2 are updated according to the following formula;
Citation Information
Patent Citations
Method for predicting transient performance of flexible discrete manufacturing system with special buffer area
CN111273624A
Distributed system scheduling optimization method based on unreliable machine and limited buffer area
CN113222446A