A loading and unloading scene scheduling optimization method considering double resource constraints
By optimizing the dual-constraint material loading and unloading scheduling of workers and machine resources through an improved ant colony algorithm, the problems of worker fatigue and low production efficiency are solved, and efficient production with low worker fatigue is achieved in complex manufacturing workshops.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHINA UNIV OF GEOSCIENCES (WUHAN)
- Filing Date
- 2022-11-15
- Publication Date
- 2026-05-01
AI Technical Summary
Existing technologies, when considering the material loading and unloading scheduling problem with constraints on worker and machine resources, have failed to effectively reduce worker fatigue and improve production efficiency, especially in complex manufacturing workshop environments where workers move between machines more frequently and experience higher levels of fatigue.
An improved ant colony algorithm is adopted, combined with the dual constraints of worker and machine resources. The optimization objective is to minimize the maximum completion time and the fatigue of workers due to frequent turnover between machines. A scheduling problem model for loading and unloading scenarios is constructed, and the optimal or near-optimal scheduling solution and Gantt chart are output.
While ensuring a reasonable maximum completion time, the number of times workers move between machines is reduced, worker fatigue is decreased, and production efficiency is improved. Furthermore, the improved ant colony algorithm optimizes the scheduling scheme, significantly improving the smooth operation of workshop production.
Smart Images

Figure CN115983423B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of workshop production scheduling, specifically involving a scheduling optimization method for loading and unloading scenarios that considers dual resource constraints. Background Technology
[0002] With the increasing prevalence of personalized demands, the production environment in manufacturing workshops is becoming increasingly complex, characterized by uncertainties in the production environment and diverse allocation of workshop resources. For actual factories, scheduling scenarios are almost constant, such as material loading and unloading in industrial parks, beveling, and component assembly in workshops.
[0003] In actual material handling workshops, there are various types of auxiliary loading and unloading machines, each with different functions. For example, flame cutting machines are used to cut raw materials. Each worker needs to control these machines to perform initial processing on the raw materials, turning them into usable parts. Loading and unloading of some materials requires specific machines, thus highlighting the constraint of machine flexibility. It's worth noting that some loading and unloading operations can be considered as not requiring machines; workers only need to use tools to assist. In this case, the number of tools is large, and there is no shortage of tools, but the workstation space still presents a constraint. During the workpiece preparation phase, hooks are typically used to load various raw materials onto the machine. After processing, the workpiece is unloaded. During this period, the machine cannot be used for the next process. Therefore, it's necessary to consider not only the workpiece processing cycle but also the workpiece loading and unloading preparation time to better suit the actual processing environment. During the workpiece preparation stage, the machine is also occupied. Workers need to control the workpiece on the machine to prepare for processing and cannot leave the machine to proceed to the next process. The worker-machine selection process involves multiple highly interconnected sub-processes. Workers have varying levels of proficiency with different machines, and the processing time for each workpiece differs across the available machine set. A trade-off must be made between proficiency and processing time to minimize time wastage for subsequent workpieces. Furthermore, the movement between different machines generates significant fatigue for workers, leading to decreased work efficiency.
[0004] In material handling scenarios, the scheduling of workers and machines is crucial. In the production of a batch of parts, each workpiece follows a specific process route, requiring a series of steps to fulfill production requirements. However, current research on resource-constrained material handling scheduling problems in practical applications is relatively rare. Most studies build models in idealized workshop environments, primarily considering machine resources while neglecting worker resources. Furthermore, when considering scheduling problems with these resource constraints, the impact of worker workload is not adequately taken into account.
[0005] Therefore, using machine resources and worker resources as dual resource constraints in the scheduling model to improve production efficiency while reducing worker fatigue to some extent is a technical problem that urgently needs to be solved. Summary of the Invention
[0006] The main technical problem to be solved by this invention is to provide a material loading and unloading scheduling optimization method that considers dual resource constraints. Under the premise of ensuring a reasonable maximum completion time, this method reduces the number of times workers move between machines, thereby improving production efficiency while also reducing worker fatigue to a certain extent.
[0007] To achieve the above objectives, the technical solution adopted by this invention is: a scheduling optimization method for loading and unloading scenarios considering dual resource constraints. The dual resource constraints are reflected in the fact that the loading and unloading scheduling process is simultaneously constrained by both machine and worker resources, requiring the design of rules for rational resource allocation, including the following steps:
[0008] S1: Obtain scheduling parameters in the loading and unloading scenario. The scheduling parameters include: total number of workers, total number of machines, worker proficiency coefficient for each machine, total number of workpieces, number of fixed processes for each workpiece, and processing time for each process of each workpiece on each selectable machine.
[0009] S2: Set constraints that consider worker resources and machine resources, with the optimization objectives of minimizing the maximum completion time and minimizing worker fatigue from frequent turnover between machines. Construct a scheduling problem model for loading and unloading scenarios based on the scheduling parameters, constraints, and optimization objectives.
[0010] S3: The improved ant colony algorithm is used to solve the scheduling problem model of the loading and unloading scenario, output the optimal or near-optimal scheduling solution of the loading and unloading scenario, and output a Gantt chart for display.
[0011] Furthermore, the improved ant colony algorithm is used to solve the material loading / unloading scenario scheduling problem model, outputting the optimal or near-optimal scheduling solution for the material loading / unloading scenario, and displaying it in a Gantt chart. Specifically, this includes:
[0012] A1. Initialize the ant colony size and related parameters, including heuristic information factor and pheromone volatility coefficient;
[0013] A2. Initialize the pheromone matrix and assign initial pheromone values to each process sub-path;
[0014] A3. Randomly initialize the position for each ant and record it in its respective taboo list;
[0015] A4. Iterate through the calculations for each ant and calculate the next node to be visited based on the state transition strategy;
[0016] A5. Update the respective contraindication lists;
[0017] A6. Determine if the taboo list is full. If not, return to A4; if yes, proceed to the next step A7.
[0018] A7. Calculate the minimum and maximum completion times for the current generation, and update the global pheromone according to the pheromone update strategy;
[0019] A8. Determine if the current state is trapped in a local optimum. If yes, continue with A9; otherwise, proceed to A10.
[0020] A9. Update the local pheromone using the variable neighborhood concept, and continue with step A10;
[0021] A10. Based on the best individual from the previous generation, establish a disjunction graph of the machine and worker during processing, obtain the critical path from the disjunction graph, allocate more pheromones as rewards to the process nodes on the critical path, and continue to step A11.
[0022] A11. Determine whether the termination condition has been met, i.e., the maximum number of ant colony iterations has been reached. If not, jump to A3; if yes, continue to A12.
[0023] A12. The program ends, outputting the optimal or near-optimal scheduling solution and displaying the Gantt chart.
[0024] The technical solution provided by this invention has the following beneficial effects:
[0025] This invention establishes a scheduling problem model for loading and unloading scenarios that considers dual resource constraints. The model aims to simultaneously minimize the maximum completion time and minimize worker fatigue during frequent machine turnover. It also considers production scenarios with preparation time and improves the ant colony algorithm using a critical path optimization method. By solving the scheduling problem model for loading and unloading scenarios using the improved ant colony algorithm, and considering minimizing the maximum completion time, it can select a solution with relatively low worker fatigue, which is conducive to the smooth operation of workshop production and has significant practical application value. Attached Figure Description
[0026] The present invention will be further described below with reference to the accompanying drawings and embodiments. In the accompanying drawings:
[0027] Figure 1 This is an execution flowchart of a material loading and unloading scenario scheduling optimization method considering dual resource constraints according to the present invention.
[0028] Figure 2 This is the overall flowchart of the improved ant colony algorithm of this invention;
[0029] Figure 3 This is an example of the disjunction graph construction with critical paths in this invention;
[0030] Figure 4 This is the neighborhood structure movement strategy of the present invention;
[0031] Figure 5 It is a machine-workpiece Gantt chart solved by a greedy algorithm;
[0032] Figure 6 This is a worker-workpiece Gantt chart solved by a greedy algorithm;
[0033] Figure 7 This is the worker-machine movement and turnover information obtained by the greedy algorithm;
[0034] Figure 8 This invention provides a machine-workpiece Gantt chart obtained using the improved ant colony algorithm.
[0035] Figure 9 This invention provides a worker-workpiece Gantt chart obtained using the improved ant colony algorithm.
[0036] Figure 10 This is the worker-machine movement and turnover information obtained by the improved ant colony algorithm of this invention. Detailed Implementation
[0037] To provide a clearer understanding of the technical features, objectives, and effects of the present invention, specific embodiments of the present invention will now be described in detail with reference to the accompanying drawings.
[0038] refer to Figure 1 Considering that the material loading and unloading scheduling process is constrained by both machine and worker resources, this invention provides a material loading and unloading scenario scheduling optimization method that considers dual resource constraints, including the following steps:
[0039] S1: Obtain scheduling parameters in the loading and unloading scenario. The scheduling parameters include: total number of workers, total number of machines, worker proficiency coefficient for each machine, total number of workpieces, number of fixed processes for each workpiece, and processing time for each process of each workpiece on each selectable machine.
[0040] S2: Set constraints that consider worker resources and machine resources, with the optimization objectives of minimizing the maximum completion time and minimizing worker fatigue from frequent turnover between machines. Construct a scheduling problem model for loading and unloading scenarios based on the scheduling parameters, constraints, and optimization objectives.
[0041] S3: The improved ant colony algorithm is used to solve the scheduling problem model of the loading and unloading scenario, output the optimal or near-optimal scheduling solution of the loading and unloading scenario, and output a Gantt chart for display.
[0042] The constraints set, taking into account worker and machine resources, specifically include:
[0043] The next process for the same workpiece can only begin after the previous process is completed;
[0044] At any given time, only one worker can control one machine to complete a single process.
[0045] At any given time, a machine can only process one step.
[0046] At any given time, a worker can only control one machine.
[0047] Each process has a set of optional processing machines, and the time may vary;
[0048] Each worker has a different level of proficiency with each machine, and this proficiency affects the processing time.
[0049] Each process requires preparation time, which is not affected by proficiency, but varies depending on the workpiece.
[0050] The mathematical expression for the material loading / unloading scheduling problem model constructed based on constraints and scheduling parameters is as follows:
[0051] min F1=min{max(C k )},k∈(1,2,...,m)
[0052]
[0053] S i,j+1,k,r ≥E i,j,k,r ,i∈(1,2,...,n), j∈(1,2,...,n i -1), k∈(1, 2, ..., m), r∈(1, 2, ..., w)
[0054]
[0055]
[0056]
[0057] S i,j,k,r ≥0,i∈(1,2,...,n),j∈(1,2,...,n i ), k∈(1, 2, ..., m), r∈(1, 2, ..., w)
[0058] The scheduling problem model for the loading and unloading scenario is described as follows: There are w workers in the workshop, W = {W1, W2, ..., W...} w These workers can operate m machines M = {M1, M2, ..., M}. m For n workpieces to be produced, J = {J1, J2, ..., J...} n} Loading or unloading, each workpiece J i Includes a fixed n i Steps F1 represents the maximum completion time, indicating the end time of the machine that finished processing the latest; F2 is the average number of machine switches for the worker; additionally, the worker's proficiency with each machine varies, assuming a proficiency matrix of Φ, and each worker's W... r Proficiency coefficient Φ for each machine r ={Φ r,1 , Φ r,2 , ..., Φ r,m The skill level of different workers in operating different machines is a constant; M i,j M is the optional machine set for the process, and M i,j ∈M, C k C represents the completion time of the last process on machine k. r T represents the completion time of the last process assigned to worker r at the end of the processing phase; under normal processing conditions, T i,j,k This indicates that process O is performed on machine k. i,j Processing time, T i,j,k,r This indicates that worker r operates the processing steps on machine k. i,j The actual processing time, in the scheduling case with setup time, P i,j,k This indicates that process O is performed on machine k. i,j The preparation time, and this preparation time is the actual preparation time, which does not change with differences in worker skill level; S i,j,k,r This indicates that worker r performs process O on machine k. i,j Start processing time, E i,j,k,r This indicates that worker r performs process O on machine k. i,j Processing end time; X i,j,k,r Let X be a decision variable. If worker r is working on machine k in the current process, then X... i,j,k,r =1, otherwise 0; It is a decision variable regarding whether preparation time is required between two consecutive processing steps on a machine k. When process O i,j If it belongs to the same workpiece as the previous process, then A preparation time needs to be set; otherwise, it should be 0. r This refers to the number of times each worker switches processing machines before the end of the entire processing cycle.
[0059] After the material loading and unloading scenario scheduling problem model is constructed, this invention uses the ant colony algorithm to solve the material loading and unloading scenario scheduling problem model. This invention utilizes the advantages of swarm intelligence in solving production scheduling problems, such as fast solution speed. The parameters of the algorithm are adjusted according to the characteristics of the problem, the iteration and local search process of the algorithm are controlled step by step, and the problems of the algorithm are analyzed and improved.
[0060] The Ant Colony Algorithm (ACO), proposed by Italian scholar M. Dorigo, is characterized by positive feedback, self-organization, and parallelism. Its solution process simulates the foraging behavior of ant colonies in nature. Based on the algorithm's adaptive path selection characteristic, it is a highly efficient intelligent optimization algorithm. Each ant releases pheromones along its path while searching for food, exchanging information with other passing ants. Experiments have shown that the shorter the path from the ant nest to the food source, the more likely an ant is to traverse it, resulting in a higher pheromone concentration on that path. Higher pheromone concentrations increase the likelihood of ants choosing that path, and subsequent ants further encourage this choice. Through this pheromone exchange mechanism, ants often find the relatively shortest path after a period of searching. Ants communicate indirectly through pheromones; each individual influences the behavior of others by altering the environment, thus forming a positive feedback mechanism. Ant colony optimization has been successfully applied in various optimization fields and has also performed well in combinatorial optimization, such as the production scheduling problem and the traveling salesman problem.
[0061] However, this type of mechanism also has some problems, which means that sometimes the results obtained are not optimal solutions. Generally, the following problems exist:
[0062] First, the algorithm is prone to getting trapped in local optima. Ant colony optimization (ACO) exhibits positive feedback; during iteration, when updating pheromones, ants leave more pheromones on paths traversed by better solutions, leading more ants to choose those paths, resulting in even more pheromones. This cycle repeats, rapidly increasing the perceived quality of initial solutions and guiding the algorithm towards local optima. Ultimately, the algorithm easily gets trapped in local optima and struggles to escape, leading to low-quality solutions. Second, ACO convergence is slow. During initialization, the pheromone values on each sub-path are set to the same value, causing ants to choose the next node more randomly. This results in initially low-quality or overly diverse solutions found by each ant, leading to slow initial convergence and a slow search for the optimal or near-optimal solution. Furthermore, certain aspects of the algorithm require optimization. Because ant colony optimization (ACO) involves many parameters, and these parameters are interconnected and coupled (e.g., heuristic information weighting factors and pheromone weighting factors), real-world experiments often rely more on personal experience and trial-and-error. Inappropriate parameter configuration can weaken the algorithm's optimization ability. While a tabu list is used to preserve tabu nodes in each iteration, this mechanism is prone to deadlock, reducing the number of effective ants in the population and lowering the overall optimization efficiency. Finally, there is a trade-off between population diversity and convergence speed—two contradictory sub-objectives. More concentrated individual distribution leads to lower population diversity, reducing the algorithm's exploration ability. Conversely, more dispersed individuals result in better diversity and, consequently, better optimization. While the pheromone positive feedback mechanism can improve convergence speed, it can also cause the algorithm to get stuck in a subset of candidate solutions earlier. Therefore, positive feedback reduces population diversity and hinders the algorithm's global optimization ability.
[0063] Based on the above analysis, this invention improves the ant colony algorithm and uses the improved ant colony algorithm to solve the scheduling problem model of the loading and unloading scenario, outputting the optimal or near-optimal scheduling solution for the loading and unloading scenario, and displaying it in a Gantt chart.
[0064] refer to Figure 2 The solution steps of the improved ant colony algorithm are as follows:
[0065] A1. Initialize the ant colony size and related parameters, including heuristic information factor and pheromone volatility coefficient;
[0066] A2. Initialize the pheromone matrix and assign initial pheromone values to each process sub-path;
[0067] A3. Randomly initialize the position for each ant and record it in its respective taboo list;
[0068] A4. Iterate through the calculations for each ant and calculate the next node to be visited based on the state transition strategy;
[0069] A5. Update the respective contraindication lists;
[0070] A6. Determine if the taboo list is full. If not, return to A4; if yes, proceed to the next step A7.
[0071] A7. Calculate the minimum and maximum completion times for the current generation, and update the global pheromone according to the pheromone update strategy;
[0072] A8. Determine if the current state is trapped in a local optimum. If yes, continue with A9; otherwise, proceed to A10.
[0073] A9. Update the local pheromone using the variable neighborhood concept, and continue with step A10;
[0074] A10. Based on the best individual from the previous generation, establish a disjunction graph of the machine and worker during processing, obtain the critical path from the disjunction graph, allocate more pheromones as rewards to the process nodes on the critical path, and continue to step A11.
[0075] A11. Determine whether the termination condition has been met, i.e., the maximum number of ant colony iterations has been reached. If not, jump to A3; if yes, continue to A12.
[0076] A12. The program ends, outputting the optimal scheduling solution (or near-optimal solution) and a Gantt chart display.
[0077] Based on the above algorithm flow, the improvements of this invention to the ant colony algorithm are mainly reflected in the following aspects:
[0078] 1. Encoding method
[0079] This invention uses a three-vector encoding method. First, the final scheduling sequence obtained from the problem needs to be represented in some way. Vector representation is generally used, as it is not only convenient and intuitive but also beneficial for problem solving. This paper improves the ant colony algorithm by using vector representation to represent the scheduling solution of the problem. The specific processing sequence is represented as π = (π1, π2, ..., π). n ,), each element π in the solution iEach workpiece number represents an optimal workpiece processing sequence, and repeated workpiece numbers represent different processes for the same workpiece. Machine sequences and worker sequences are defined in a similar way and correspond one-to-one with the processing sequences, represented by machine and worker numbers. Each solution consists of three vectors: processing sequence, machine sequence, and worker sequence. For example, {1, 3, 2} in the first column represents worker 2 controlling machine 3 to process the first process of workpiece 1. Based on these three vectors, machine-workpiece Gantt charts and worker-workpiece Gantt charts can be used to intuitively display the entire scheduling process. Specific examples are shown in the test examples section.
[0080] Table 1 Encoding Method
[0081] Processing sequence 1 3 4 2 3 1 4 2 3 Machine sequence 3 1 2 4 1 3 4 2 3 worker sequence 2 1 2 1 2 1 1 2 1
[0082] 2. Initialization of the pheromone matrix
[0083] In the ant colony optimization process, the pheromone matrix must first be initialized to facilitate rapid algorithm startup and faster finding of a feasible solution. Then, it automatically optimizes based on this initialization to ultimately find the optimal solution. Traditional ant colony algorithms use an indiscriminate initialization method for the pheromone matrix, meaning the pheromone content on each path is the same. This slows down the optimization startup process; an unbalanced pheromone distribution strategy should be adopted. A pheromone matrix L of size (N+1)×(N+1) is established, where N represents the total number of steps. The extra dimension is because there are initially no steps. From step zero to step N, there are N+1 sub-paths. Based on each sub-path L... i,j The corresponding two adjacent processes O a1,b1 and O a2,b2 Weighted average processing time on each available machine During initialization, pheromones are distributed unevenly, and the specific distribution formula is as follows:
[0084]
[0085]
[0086] In the above formula, Represents subpath L i,j The initial pheromone values on the subpath L are: Q is a constant, c is a random value within (0, 1), and the subpath L is a random value within (0, 1). i,j In this context, i and j represent two processes, assuming they correspond to two adjacent processes O. a1,b1 and O a2,b2 M a1,b1 and M a2,b2 These are the optional machine sets corresponding to these two processes, T a1,b1,k and T a2,b2,kDo not calculate the weighted average processing time for these two processes on machine k. It is calculated based on the average processing time of each of the two steps in the sub-path. The shorter the weighted average processing time, the more pheromones will be allocated, and the greater the likelihood that the ant will choose that sub-path. This helps the algorithm find a relatively good result in the early stages of the solution process, thus speeding up the optimization process.
[0087] 3. State transition strategy
[0088] For the ant colony algorithm, when an ant iterates and chooses a path, it needs to select the next path node based on the current path node. This requires calculating the probability of selecting the next step based on the state transition formula. Furthermore, during this process, each ant marks the paths it has already traversed, so these corresponding nodes do not need to be visited again. When an ant has visited all the step path nodes, a scheduling solution is completed. The state transition probability formula is as follows:
[0089]
[0090]
[0091] Assuming the initial ant population set is A, a tabu list N needs to be set for each ant a∈A. a In the above formula, τ i,j (t) represents the path L at time t. i,j The pheromone concentration on the surface, η i,j This represents the heuristic information along the path, pTime represents the average processing time of a certain operation of the candidate workpiece on the processing machine set, and q is a constant. Based on these two variables, heuristic information η can be designed. i,j α and β are two parameters used to adjust the weights between pheromones and heuristic information, calculated according to the formula. This indicates that ant a selects subpath L. i,j The probability. Each ant will choose the next step according to the above strategy in each iteration, until all steps have been selected, the entire processing task is completed and a feasible solution is obtained.
[0092] 4. Pheromone update formula
[0093] The core of the ant colony algorithm's proper functioning lies in the pheromone mechanism. The pheromone in the entire algorithm process mainly comes from two sources: the residual value after past pheromone evaporation and the current pheromone increment. The specific pheromone update formula is designed as follows:
[0094] τ i,j (t+1)=(1-ρ)·τ i,j (t)+ρ·Δτ i,j (t), 0≤ρ≤1
[0095]
[0096] τ i,j (t)∈[τ min , τ max ]
[0097] In the above formula, ρ represents the pheromone evaporation coefficient, and τ i,j (t+1) and τ i,j (t) represents the sub-path L at times t+1 and t, respectively. i,j The pheromone content on the surface, Δτ i,j (t) represents the pheromone increment value at each iteration, which is determined based on the minimum to maximum completion time C at the current moment. max (t) and the current process j (i.e., O) a2,b2 The candidate machine set M (see Formula 6 for details) a2,b2 The average normalized preparation time is obtained from the above. Indicates process O a2,b2 The normalized values of setup time and maximum completion time on machine k, i.e., the normalized setup time, where γ represents the weighting factor, taking values between (0, 1), and τ... max and τ min This represents the upper and lower bounds of the pheromone value. Throughout the algorithm's solution process, γ is continuously increased. This is to use a greedy search approach in the early stages to quickly find a relatively good solution and accelerate the algorithm's startup. In the later stages, to ensure finding the optimal solution, the weight of the maximum completion time is increased, allowing the algorithm to move beyond the greedy search approach. Furthermore, the pheromone value does not increase indefinitely; the algorithm defines upper and lower bounds for the pheromone value, and keeps these boundary values unchanged when the maximum and minimum values are reached.
[0098] 5. Design of pheromone volatility coefficient
[0099] In the experiment, the pheromone evaporation coefficient ρ was a value between 0 and 1. However, analysis of actual scheduling problems reveals that to improve the initial optimization speed of the algorithm, and considering the initial pheromone matrix settings, a higher evaporation rate for pheromones is necessary in the early stages. This accelerates the gradual increase in the difference between pheromones on each path, improving the algorithm's convergence speed. However, as the algorithm progresses, the pheromone evaporation rate should decrease to improve the algorithm's search accuracy, facilitating escape from local optima and ultimately finding the optimal solution. Therefore, the pheromone evaporation rate is designed using the following formula:
[0100] ρ=c x 0 < c < 1
[0101]
[0102]
[0103] In the above formula, c and q are constants, Iter represents the current iteration number of the ant, and maxIter represents the total number of iterations in the entire solution process. The pheromone evaporation coefficient ρ can be dynamically adjusted based on the ratio x of Iter and maxIter. As the algorithm iterates, the value of x continuously increases, causing the evaporation coefficient ρ to continuously decrease and eventually become smooth, simulating the pheromone evaporation process from fast to slow. Furthermore, during this pheromone update process, the algorithm may converge prematurely, finding an approximate optimal solution, which is not the desired result. Therefore, a local convergence judgment method is needed. If the algorithm gets stuck in a local optimum before it terminates, the algorithm can escape the local optimum by increasing the pheromone evaporation rate at a certain point. τ i,j (t) represents the sub-path L at time t. i,j The pheromone content on the surface Indicates the current subpath L i,j The average pheromone level in the vicinity of a node, if it is related to τ i,j If the difference in (t) is too large, it will lead to L i,j The pheromones at certain locations evaporate more quickly, until they fall below the average pheromone level in the surrounding area. This strategy effectively ensures solution diversity throughout the solution process, increasing the probability of finding the optimal solution.
[0104] 6. Local Optimality Determination
[0105] As the algorithm iterates, the tabu list storing completed steps gradually becomes full. When the tabu list contains all the steps in the entire step set, the algorithm arrives at a feasible solution. This solution may cause ants in subsequent generations to become trapped in it, resulting in a local optimum. This phenomenon is caused by the positive feedback mechanism of pheromones in the ant colony algorithm. When the pheromone content on a path is relatively high, ants in each iteration will tend to follow that path. Therefore, to avoid local optima, a pheromone threshold needs to be defined, as follows:
[0106]
[0107] The above formula defines two local convergence determination strategies. The first strategy is based on the current process path L. i,j The pheromone value τ i,j (t) exceeds the average pheromone level of its surrounding area The first is d times (d=10 in the experiment), the second is path L. i,j The pheromone value on the surface reaches the maximum pheromone value τ. maxLet Iter be the current iteration number, and {Iter, Iter+1, ..., Iter+N-1} represent the next N consecutive iterations, including the current iteration. However, regardless of the local convergence determination strategy, this situation must be maintained for N consecutive iterations (in the experiment, the total number of iterations maxIter = 500, N = 10) to basically determine whether the algorithm is trapped in a local optimum or has found the optimal solution, requiring it to jump out and continue searching on other paths until the algorithm terminates.
[0108] 7. Critical Path Solution Optimization
[0109] During each iteration of pheromone updates, the uncertainty inherent in swarm intelligence algorithms leads to varying convergence speeds, resulting in significant differences in the time required for convergence each time. To address this issue, this invention considers combining critical paths with scheduling strategies. Based on the optimal solution obtained in the previous iteration, a disjunctive graph of the machine and worker during processing is established. On this basis, one or more critical paths are determined, and more pheromones are allocated as rewards to the process nodes on the critical paths.
[0110] like Figure 3 As shown, the experimental results Figure 8 and Figure 9 For example, based on three rules—the process sequence requirements between workpieces, the processing sequence requirements of different processes on various machines, and the processing sequence of different processes by different workers—a complete disjunction graph is constructed. The corresponding critical paths are then solved based on this graph. Two critical paths can be found in the graph:
[0111] (1) S→O 41 →O 31 →O 11 →O 33 →O 34 →E;
[0112] (2) S→O 51 →O 32 →O 33 →O 34 →E:
[0113] Then, pheromone updates are performed on the other nodes along the two paths above, excluding nodes S and E, to increase the pheromone content and improve the convergence speed of the algorithm.
[0114] 8. Variable Neighborhood Local Search Strategy
[0115] Local search strategies have two main functions:
[0116] (1) Based on the pheromone content in the area near a certain sub-path node, the present invention mainly considers two types of closed regions (8-closed region and 24-closed region, i.e. 3*3 region and 5*5 region centered on the node), and calculates the average value of sub-path pheromone in the nearby region as the basic condition for judging local convergence.
[0117] (2) Set up a neighborhood structure to update and mutate the solution, ensuring solution diversity. During the ant colony algorithm's solution process, multiple sub-path nodes will maintain high pheromone levels for extended periods; therefore, these process nodes can be identified as key process nodes, and can be addressed using... Figure 4 The strategy is to update the sequence of key local processes:
[0118] Figure 4 The medium gray fill represents the key process. Based on the pheromone value of the key process, the key processes at the beginning and end are moved inward, and the key processes in the middle are moved inward. This can generate a variety of local approximate optimal solutions. Based on these solutions, the calculation continues to approach the optimal solution step by step.
[0119] The above eight strategies constitute the core process of the improved ant colony algorithm, which are formulated according to the characteristics of the problem. Next, we will conduct experiments on the improved ant colony algorithm and greedy algorithm of this invention, observe the experimental results, and analyze them.
[0120] Test example:
[0121] (1) The process schedule is shown in Table 2. M1-M5 represent loading or unloading machines, M6 represents machines that do not require a machine and can be loaded and unloaded using tools, but it requires a workstation. This workstation cannot support multiple processes loading or unloading at the same time, so it should also be marked as a machine resource, which is also helpful for the display of the Gantt chart. ∞ indicates that operation is not allowed on this machine or workstation.
[0122] Table 2 Processing Schedule
[0123]
[0124] (2) The process preparation schedule is shown in Table 3:
[0125] Table 3. Process Preparation Schedule
[0126]
[0127] (3) The worker's proficiency coefficient with the machine is shown in Table 4:
[0128] Table 4. Worker's proficiency with machines.
[0129]
[0130] Test results:
[0131] (1) The result obtained by the greedy algorithm is as follows:
[0132] The algorithm allocates workpieces based on workers' proficiency with each machine, prioritizing workers with higher proficiency for workpieces with longer processing times, and workers with lower proficiency for workpieces with shorter processing times. First, using the idle-first scheduling rule, several near-optimal solutions were obtained through numerical examples. This primarily employs a greedy strategy of allocating workpieces when idle. For both workers and machines, the algorithm first selects the optimal machine-worker combination for a given process, typically the process with the highest proficiency and the longest processing time. This ensures that proficiency will not be a major factor affecting completion time when processing subsequent shorter processes. A near-optimal solution obtained based on this rule is shown in Table 5.
[0133] Table 5 shows the approximate optimal solutions obtained by the greedy algorithm.
[0134] 1 4 3 6 7 5 3 4 6 1 7 3 4 2 1 7 3 1 4 2 3 5 6 4 2 1 5 3 4 2 6 1 3 5 1 2 3 4 2 3 1 4 1 4 2 1 3 4 2 1 3
[0135] The final Gantt chart result Figure 5 , Figure 6 , Figure 7 As shown, the white portion represents the preparation time:
[0136] For this scheduling scheme, the two final considerations are: maximum completion time of 24 and average number of worker movements between machines of 4. Since the maximum completion time is given priority and the number of movements is taken as the secondary objective, the fatigue of worker movement will increase. This is also the case in actual scheduling, where a trade-off must be made between two conflicting objectives. The quality of the final solution largely depends on the degree to which the optimization process of the algorithm fits the actual problem.
[0137] (2) The solution results of the ant colony algorithm based on critical path optimization are shown in Table 6:
[0138] Table 6. Solution results of ant colony algorithm based on critical path optimization
[0139] 7 6 5 4 3 7 2 1 3 3 7 1 4 6 3 1 4 1 2 6 4 3 4 6 5 2 3 1 5 2 1 4 5 2 1 3 2 4 4 3 1 4 2 4 3 2 3 2 4 1 3
[0140] The algorithm is set with an ant colony size of 100 and 1000 iterations. The data remains constant, but necessary parameters of the ant colony algorithm are adjusted to obtain an optimal result, as shown below. The algorithm is then repeated 20 times, and the average result is compared with the previous results. Figure 8 , 9 As shown in Figure 10.
[0141] After solving the problem using the algorithm, the maximum completion time was found to be 19, and the average worker turnover was 4. Although there was no significant change in the number of worker turnovers, the experiment also yielded results from the completely dominated greedy algorithm, with a maximum completion time of 21 and an average turnover of 3.5. However, since worker fatigue was set as a secondary objective, the scheduling strategy with the minimum maximum completion time was prioritized, and the experimental results show a significant improvement in optimizing the maximum completion time. Furthermore, after repeating the experiment 20 times, a scheduling solution with a maximum completion time of 19 was found in each experiment, and the solution converged on average in 387 iterations, indicating a relatively good experimental performance.
[0142] The results obtained from the two methods show that the improved ant colony algorithm based on critical path optimization has a certain improvement in solving the scheduling optimization problem of material loading and unloading scenarios. In actual experiments, I tested a dataset of 22 workpieces and 92 processes, which can reduce the maximum completion time by about 8%. However, the fatigue levels of workers are very similar. Under the condition that the fatigue levels of workers are similar due to frequent turnover between different machines, the maximum completion time can be reduced to a large extent. Therefore, it has great application value in practical applications and has certain guiding significance for material loading and unloading in actual industrial parks.
[0143] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or system. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or system that includes that element.
[0144] The sequence numbers of the above embodiments of the present invention are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments. In the unit claims listing several devices, several of these devices may be embodied by the same hardware item. The use of the terms first, second, and third, etc., does not indicate any order and can be interpreted as identifiers.
[0145] The above are merely preferred embodiments of the present invention and do not limit the scope of the patent. Any equivalent structural or procedural transformations made based on the description and drawings of the present invention, or direct or indirect applications in other related technical fields, are similarly included within the scope of patent protection of the present invention.
Claims
1. A scheduling optimization method for loading and unloading scenarios considering dual resource constraints, characterized in that, Includes the following steps: S1: Obtain scheduling parameters in the loading and unloading scenario. The scheduling parameters include: total number of workers, total number of machines, worker proficiency coefficient for each machine, total number of workpieces, number of fixed processes for each workpiece, and processing time for each process of each workpiece on each selectable machine. S2: Set constraints that consider worker resources and machine resources, with the optimization objectives of minimizing the maximum completion time and minimizing worker fatigue from frequent turnover between machines. Construct a scheduling problem model for loading and unloading scenarios based on the scheduling parameters, constraints, and optimization objectives. S3: An improved ant colony algorithm is used to solve the loading / unloading scenario scheduling problem model, outputting the optimal or near-optimal scheduling solution for the loading / unloading scenario, and displaying it in a Gantt chart. Specifically, this includes: A1. Initialize the ant colony size and related parameters, including heuristic information factor and pheromone volatility coefficient; A2. Initialize the pheromone matrix and assign initial pheromone values to each process sub-path; A3. Randomly initialize the position for each ant and record it in its respective taboo list; A4. Iterate through the calculations for each ant and calculate the next node to be visited based on the state transition strategy; A5. Update the respective contraindication lists; A6. Determine if the taboo list is full. If not, return to A4; if yes, proceed to the next step A7. A7. Calculate the minimum and maximum completion times for the current generation, and update the global pheromone according to the pheromone update strategy; A8. Determine if the current state is trapped in a local optimum. If yes, continue with A9; otherwise, proceed to A10. A9. Update the local pheromone using the variable neighborhood concept, and continue with step A10; A10. Based on the best individual from the previous generation, establish a disjunction graph of the machine and worker during processing, obtain the critical path from the disjunction graph, allocate more pheromones as rewards to the process nodes on the critical path, and continue to step A11. A11. Determine whether the termination condition has been met, i.e., the maximum number of ant colony iterations has been reached. If not, jump to A3; if yes, continue to A12. A12. The program ends, outputting the optimal scheduling solution or near-optimal solution and displaying the Gantt chart.
2. The material loading / unloading scenario scheduling optimization method according to claim 1, characterized in that, The constraints include: The next process for the same workpiece can only begin after the previous process is completed; At any given time, only one worker can control one machine to complete a single process. At any given time, a machine can only process one step. At any given time, a worker can only control one machine. Each process has a set of optional processing machines, and the time may vary; Each worker has a different level of proficiency with each machine, and this proficiency affects the processing time. Each process requires preparation time, which is not affected by proficiency, but varies depending on the workpiece.
3. The material loading / unloading scenario scheduling optimization method according to claim 1, characterized in that, The mathematical expression for the scheduling problem model in the material loading and unloading scenario is as follows: , The model for the material loading and unloading scenario scheduling problem is described as follows: The workshop has... one worker These workers can control Taiwanese machine right One workpiece awaiting production Loading or unloading, each workpiece Includes fixed Steps ; This represents the maximum completion time, indicating the end time of the processing on the last machine to finish processing. Let be the average number of machine switches a worker makes; furthermore, workers have varying levels of proficiency with each machine, assuming a proficiency matrix of . each worker Proficiency level for each machine The proficiency of different workers in operating different machines is a constant; For the optional machine set of the process, and , Indicates machine The completion time of the final processing step in the upper processing. This indicates that the work is assigned to the worker at the end of the processing. The completion time of the final process; under normal processing conditions, Indicates in the machine Upper processing steps Processing time, Indicates workers Operating the machine Upper processing steps The actual processing time Indicates in the machine Previous process The preparation time is the actual preparation time and does not change with the difference in worker skill level. Indicates workers In the machine Upper processing steps The start time of processing Indicates workers In the machine Upper processing steps The processing end time; As a decision variable, if there are workers in the current process. In the machine Upward processing, Otherwise, it is 0; It is a machine The decision variable for whether preparation time is required between two consecutive processing steps is when the process... If it belongs to the same workpiece as the previous process, then A preparation time needs to be set; otherwise, it should be 0. This refers to the number of times each worker switches processing machines before the end of the entire processing cycle.
4. The material loading / unloading scenario scheduling optimization method according to claim 1, characterized in that, After the step of constructing the material loading and unloading scenario scheduling problem model, the method further includes: encoding the feasible solutions of the material loading and unloading scenario scheduling problem model, where each solution consists of three vectors: processing sequence, machine sequence, and worker sequence.
5. The material loading / unloading scenario scheduling optimization method according to claim 1, characterized in that, The initial pheromone matrix adopts an unbalanced pheromone distribution strategy, and the specific distribution formula is as follows: In the above formula, Representing subpaths The initial pheromone level on the surface. It is a constant. The subpath is a random value, taking the value between (0, 1). In and This represents two processes, assuming they correspond to two adjacent processes. and , and These are the optional machine sets corresponding to these two processes. and Don't worry about these two processes on the machine. The processing time on the above, the weighted average processing time It is calculated based on the average processing time of each of the two processes in the sub-path.
6. The material loading / unloading scenario scheduling optimization method according to claim 1, characterized in that, The calculation formula for the state transition strategy is as follows: Assume the initial ant colony set is It is necessary to provide for each ant Set a taboo list In the above formula express Time Path The concentration of pheromones on the surface This represents the heuristic information along the path. This represents the average processing time of a certain operation on the machine set for the candidate workpiece. Given a constant, heuristic information can be designed based on these two variables. , and These are two parameters used to adjust the weight between pheromones and heuristic information, calculated according to the formula. Ants Select subpath The probability of.
7. The material loading / unloading scenario scheduling optimization method according to claim 1, characterized in that, The calculation formula for the pheromone update strategy is as follows: In the above formula Represents the pheromone volatility coefficient. and Represent and Time Sub-path The pheromone content on the surface The pheromone increment value at each iteration is determined based on the minimum and maximum completion times at the current moment. and the current process Candidate machine set The average normalized preparation time is obtained from the above. Indicate process In the machine The normalized values of preparation time and maximum completion time, i.e., the normalized preparation time. This represents the weighting factor, with values between (0, 1). and Indicates the upper and lower bounds of pheromones.
8. The material loading / unloading scenario scheduling optimization method according to claim 7, characterized in that, The pheromone volatility coefficient The calculation formula is as follows: In the above formula, , It is a constant. This represents the current iteration number of the ant. This represents the total number of iterations in the entire solution process. express Time Sub-path The pheromone content on the surface Indicates the current subpath The average pheromone level in the vicinity of a node.
9. The material loading / unloading scenario scheduling optimization method according to claim 1, characterized in that, The conditions for determining local optima are as follows: The above formula defines two local convergence determination strategies. The first is based on the current process path. On the pheromone value Exceeding the average pheromone level in its vicinity of The second type is the path. The pheromone level on the surface reached its maximum value. , Let the current iteration algebra be... Represents the continuum containing the current algebra generation.
Citation Information
Patent Citations
Dual-resource constraint flexible job shop scheduling method for reducing worker load
CN121119611A