Method for balancing human-robot collaborative assembly line considering fatigue
By improving the artificial fish swarm algorithm and using fuzzy correlation entropy analysis, the task allocation and resource scheduling of the human-machine collaborative assembly line are optimized, which solves the impact of worker fatigue on efficiency and achieves a more efficient and balanced assembly line.
Patent Information
- Application Number
- CN202311693726.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-07
- Publication Date
- 2026-02-03
- Estimated Expiration
- 2043-12-07
AI Technical Summary
Existing human-machine collaborative assembly line balancing issues, especially in batch product assembly scenarios, fail to effectively reduce the impact of worker fatigue on work efficiency when considering task allocation and resource scheduling, leading to increased problem complexity.
An improved artificial fish swarm algorithm is adopted, combined with a dynamic human fatigue model and fuzzy correlation entropy analysis, to optimize task allocation and resource scheduling in human-machine collaborative assembly lines. The artificial fish speed mechanism is optimized through particle swarm optimization, and an asymptotic neighborhood search strategy is introduced to screen Pareto optimal solutions, thereby reducing worker fatigue and improving task balance.
It effectively reduced worker fatigue, improved the efficiency of the assembly process and the balance of task allocation, optimized the resource utilization of batch assembly lines, and reduced the workload of workers.
Smart Images

Figure CN117707066B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of management science and technology, and more specifically, to a solution for the problem of balancing human-machine collaborative assembly lines considering fatigue. Background Technology
[0002] Collaborative robots are a new type of robot that ensures worker safety. They can perform tasks alongside workers at the same workstation without physical separation. Human-robot collaboration combines the flexibility of human operations with the mechanical strength, endurance, and accuracy of robot operations, providing significant advantages for product assembly. The assembly line balancing problem with collaborative robots (CRALBP) is an important approach to studying how to leverage the respective strengths of humans and collaborative robots. A well-planned assembly line layout and task allocation can effectively save time and costs, while the introduction of collaborative robots can reduce the workload of workers and benefit their health.
[0003] The current CRALBP problem not only needs to consider task allocation, but also how to rationally schedule resources, allocate workers and collaborative robots to workstations, and determine the assembly mode of the task (manual processing, robot processing, and human-robot collaborative processing). Therefore, its model building is relatively complex. In addition, in the scenario of mass production assembly, considering the impact of fatigue on worker efficiency further increases the complexity of the problem. Summary of the Invention
[0004] This invention provides a method for balancing human-machine collaborative assembly lines that takes fatigue into account, in order to solve the balancing problem of human-machine collaborative assembly lines.
[0005] To achieve the above objectives, the technical solution of the present invention is as follows:
[0006] A method for balancing a human-machine collaborative assembly line considering fatigue includes the following steps:
[0007] S1: Obtain the time data, initial cycle time, batch assembly quantity, and assembly constraint relationship for different processes using different assembly modes, and convert the task assembly constraint relationship into a task assembly constraint matrix. Import the above data and the task assembly constraint relationship matrix.
[0008] S2: Import system parameters, including: initial visual field of the fish swarm algorithm, crowding factor δ, and population size N. fish Visual field factor α, number of predation attempts n try Individual learning factor c1, group learning factor c2, optimal solution learning factor c3, iteration number (Iteration);
[0009] S3: Establish the initial population and initial save file;
[0010] Based on the task assembly constraint matrix and the assembly time for different processes using different assembly modes, obtain N. fish A human-machine collaborative assembly scheme containing assembly line task information, assembly mode information, and workstation information is used as the initial population, and the Pareto optimal scheme is extracted into the archive Q.
[0011] S4: Initialize the velocity matrix
[0012] The velocity mechanism information of the artificial fish is stored in the velocity matrix V, where V is a 1×N matrix. fish The matrix stores N fish The velocity information of the artificial fish. The velocity of the a-th artificial fish consists of NT velocity components v. ab Composed of, v a =[v a1 … v ab …v aNT ] T ,a∈(1,2,…,N fish ), b∈(1,2,…,NT), the velocity component information of artificial fish a at position b is stored in v ab In the middle, element v abip This indicates the probability that an artificial fish a will choose to complete task i in assembly mode p at position b of its chromosome sequence.
[0013] Initialize the velocity matrix, for each v ab Each element v in abip Give a random number between [0,1], and then let v ab The element v in the assembly mode p cannot complete task i. abip The value is 0, indicating that the velocity matrix initialization is complete.
[0014] S5: Start iteration. Combining the speed mechanism of artificial fish, optimize the initial population using an improved artificial fish swarm algorithm, and use the progressive neighborhood search method to perform local search for the found optimal solution.
[0015] S6: After performing step S5 on all artificial fish, compare the optimal solution found by the algorithm with the solution in Q using Pareto relation, retain the non-dominated solutions and enter them into Q, and update the velocity matrix of the artificial fish.
[0016] S7: Generate N based on the velocity matrix of the artificial fish. fish Each solution is used as a new population;
[0017] S8: After the iteration is complete, output the Pareto optimal solution set in the archive;
[0018] S9: Use fuzzy correlation entropy analysis on the obtained Pareto optimal solution set to obtain the optimal solution under the premise of no preference of the decision-maker;
[0019] A further preferred technical solution provided by the present invention is:
[0020] Step S3 specifically includes:
[0021] S31: Establish a feasible task sequence based on the task assembly constraint matrix;
[0022] S32: Based on the feasible task sequence and task assembly constraints constructed in S31, establish a feasible assembly mode sequence;
[0023] S33: Based on the feasible task sequence and assembly mode sequence in S32, establish a workstation sequence with the initial cycle time as the time constraint;
[0024] S34: Integrate the feasible task sequence, assembly mode sequence, and workstation sequence into a feasible solution sequence, and calculate the completion time, cost, total fatigue, and fatigue smoothness of the feasible solution sequence.
[0025] S35: Cyclic steps S31-S34N fish Next, establish the initial population;
[0026] S36: Perform Pareto dominance sorting on the initial population to obtain the Pareto rank and crowding degree of each feasible solution;
[0027] S37: Perform Pareto dominance sorting on the initial population and put the human-machine cooperative schemes with Pareto level 1 into the archive Q.
[0028] Another preferred technical solution provided by the present invention is:
[0029] Step S34 specifically includes:
[0030] S341: Based on a dynamic human fatigue model, calculate the fatigue level of workers when assembling each product; update the time for workers to complete the corresponding operation for each product based on the fatigue level of workers when assembling each product; calculate the manual completion time for each worker based on the time for workers to complete the corresponding operation for each product.
[0031] S342: The workstation's operation time formula is wt m =Max{ht m ,rt m}, wt m This refers to the working time of workstation m, ht m It is the manual completion time of workstation m, rt mThe completion time of the collaborative robot at workstation m; the operation time (T) of product k is defined. k The expression for the longest workstation on the assembly line is: The completion time (T) of a batch of products is the sum of the processing times of individual products, where S is the set of workstations and NP is the quantity of products in the batch. The expression is:
[0032] S343: Cost W includes labor costs, collaborative robot purchase costs, and workstation and supporting facility purchase costs. The calculation formula is: W = T·NS·e cost +T·NH·w cost +T·NR·c cost NS represents the number of workstations, NH represents the number of workers, NR represents the number of robots, and e cost w is the depreciation cost per unit time for workstation equipment. cost For labor costs, c cost The depreciation cost per unit time for collaborative robots;
[0033] S344: Total fatigue F sum This indicates the workload undertaken by the worker throughout the assembly process, calculated using the following formula:
[0034]
[0035]
[0036] In the above formula, F h Let t be the fatigue level of the h-th worker. h Let h be the working time of the h-th worker in the entire assembly process, e be the Euler number, η be the dynamic parameter describing the characteristics of the worker's dynamic work, θ be the parameter describing the cumulative rate of fatigue, and H be the set of workers.
[0037] S345: Fatigue smoothness (ST) is an important indicator used to measure the evenness of the workload assigned to each worker. The smaller the fatigue smoothness, the more evenly the workload is assigned to each worker. The calculation process is as follows:
[0038] F max =Max{F h}
[0039]
[0040] In the above formula, F max NR represents the fatigue level of the worker who undertakes the most tasks during the entire assembly process, and NR is the number of workers.
[0041] A further preferred technical solution provided by the present invention is:
[0042] Step 341 specifically includes:
[0043] First, calculate the worker's assembly time t for the first product, based on a dynamic human fatigue model: F = 1 - e -ηθt Calculate the fatigue level F of workers at each workstation when they complete the assembly of the first product, where η is a dynamic parameter describing the characteristics of the worker's dynamic work, and θ describes the rate of fatigue accumulation.
[0044] Then, based on the worker's level of fatigue, the formula is used: T k =T0(1+δθ(ln(1+F(t)))) calculates the operation time and completion time ht for each worker to complete the subsequent product assembly. m T k Let Tk represent the assembly time when the worker assembles the k-th product, T0 represent the assembly time when the worker's fatigue level is 0, and the parameter δ describes the effect of fatigue on time. The calculation formula is as follows:
[0045] A further preferred technical solution provided by the present invention is:
[0046] Step S5 specifically includes:
[0047] S51: Randomly adopt swarming and tailing behaviors for the artificial fish individuals in the initial population. Let Random be a random number between [0,1]. When Random<=0.5, adopt swarming behavior; when >0.5, adopt tailing behavior. If the artificial fish's swarming and tailing behaviors are successful, adopt the asymptotic neighborhood search method for the location of the excellent artificial fish and add the obtained location of the excellent artificial fish to the archive Q. If it fails, the artificial fish adopt predation behavior.
[0048] S52: The artificial fish engages in predation behavior. A new solution is generated based on the artificial fish's speed mechanism as the predation location. If the found solution is no worse than the original one, the predation is successful. For the found excellent artificial fish locations, an asymptotic neighborhood search method is used, adding the locations found through local search to the archive Q. If n... try If the location of the artificial fish found in each subsequent hunting attempt is worse than the original location, it means that the artificial fish has failed to hunt and will randomly select a location.
[0049] Another further preferred technical solution provided by the present invention is:
[0050] In step S51, the progressive neighborhood search method is specifically as follows:
[0051] S511: Import the current solution, let Qtask = Qmod = [], i3 = 1.
[0052] S512: Perform a single-point insertion operation on the solution task sequence, determine the Pareto dominance relationship between the new solution and the original solution. If the new solution is not dominated by the original solution, it means that the location of the artificial fish has search value, and add the new solution to Qtask.
[0053] The specific process for performing a single-point insertion operation on the solution task sequence is as follows: find tasks with direct preorder and direct postorder and add them to the candidate task set. Randomly select one task from the set and delete that task and all subsequent tasks from the candidate task set. The next task selection will be carried out from the updated candidate task set. Then, randomly select an insertion point from its direct preorder and direct postorder and insert the task, keeping the order of other tasks unchanged. To ensure efficiency, the insertion point cannot be on either side of the selected task.
[0054] S513: If the new solution found is dominated by the original solution, output Qtask and execute S514; otherwise, go to step S512.
[0055] S514: Read the i3rd solution of Qtask.
[0056] S515: Perform a single-point mutation operation on the assembly mode sequence of the solution, determine the Pareto dominance relationship between the new solution and the original solution, and if the new solution is not dominated by the original solution, add the new solution to Qmod.
[0057] A single-point mutation operation is performed on the assembly mode sequence of the solution. The specific process is as follows: based on the assembly mode constraints of the task, find the tasks that can be completed by multiple assembly modes and put them into the candidate task set. Randomly select the assembly mode of a task from the latter half as the mutation point, delete the task and the subsequent tasks from the candidate task set. The next task selection will be selected from the updated candidate task set, and then its assembly mode will be mutated into other feasible assembly modes.
[0058] A further preferred technical solution provided by the present invention is:
[0059] Step S6 specifically includes:
[0060] S61: Import V k Archive Q, parent population and set a = 1.
[0061] S62: Read v from generation k V a Read the a-th artificial fish from the parent population and set b = 1.
[0062] S63: Read the task i and assembly mode p corresponding to the artificial fish at position b.
[0063] S64: c1 is the individual learning factor, r is a random number in the interval [0,1], i1 is the current iteration number, and iteration is the number of algorithm iterations.
[0064] S65:b=b+1.
[0065] S66: Determine if b is greater than NT. If yes, set b = 1 and go to step S67; otherwise, go to step S63.
[0066] S67: Read the task i selected at position b in Q and the corresponding assembly mode p, and calculate n. bip n bip Let Q be the number of times the artificial fish in Q selects assembly mode p to complete task i at position b.
[0067] S68: c2 is the group learning factor.
[0068] S69: b = b + 1.
[0069] S610: Determine if b is greater than NT. If yes, set b = 1 and proceed to step S71; otherwise, proceed to step S67.
[0070] S611: Perform fuzzy correlation entropy analysis on Q to obtain gbest.
[0071] S612: Read the task i selected at position b in gbest and the corresponding assembly mode p.
[0072] S613: c3 is the optimal solution learning factor, which is saved. arrive
[0073] S614: b = b + 1.
[0074] S615: Determine if b is greater than NT. If yes, set b = 1 and go to step S76; otherwise, go to step S72.
[0075] S616: Save arrive save To V k+1 .
[0076] S617: Let a = a + 1.
[0077] S618: Determine if a is greater than N fish If so, output V k+1 Otherwise, proceed to step S62.
[0078] A further preferred technical solution provided by the present invention is:
[0079] Step S7 specifically includes:
[0080] S71: Import V k Let a = 1, and the parent population is [].
[0081] S72: From V k Read from Let b = 1.
[0082] S73: From Read from Based on the assembly constraints, find the task i that can be executed at the current position b and add it to the task candidate set. Retrieve feasible assembly modes p for task i in the task candidate set, and add all feasible solutions that execute task i using assembly mode p to the candidate set.
[0083] S74: Based on the probability, let the a-th solution of the parent population at position b choose to execute task i in assembly mode p. The probability is calculated by taking the corresponding v in the candidate set. abip Divide by all v in the candidate set abip The sum is obtained.
[0084] S75: b = b + 1.
[0085] S76: Determine if b is greater than NT. If yes, it means that the chromosome of artificial fish a has been generated. Save the a-th chromosome to the parent population and go to step S77. Otherwise, go to step S73.
[0086] S77: a = a + 1.
[0087] S78: Determine if a is greater than N fish If yes, output the parent population; otherwise, go to step S72.
[0088] A further preferred technical solution provided by the present invention is:
[0089] Step S9 specifically includes:
[0090] S91: Map all objective function value sequences to a fuzzy set, and modify the relative membership function. The modified relative membership function is as follows:
[0091]
[0092] In the above formula, μ i (X j ) is f i (X j The corresponding membership value, 0≤μ i (X j )≤1. ; f i,lb =βf i,min ,in β and β are the upper and lower bound factors, respectively. 0 < β ≤ 1, and f i,max and f i,min Let f be the maximum and minimum values of the i-th objective function, respectively; i (X j Let X be the i-th objective function value of the artificial fish j. j Let j be the artificial fish, i be the index of the objective function, and j be the index of the artificial fish.
[0093] S92: For two fuzzy sets A and B, find their information entropy E(A) and E(B):
[0094]
[0095]
[0096] In the above formula, K is the normalization factor, usually n is the number of objective functions;
[0097] S93: Find the fuzzy correlation entropy E between fuzzy sets A and B. B (A) and E A (B)
[0098]
[0099]
[0100] S94: Calculate the fuzzy correlation entropy coefficient γ(A;B) between fuzzy sets A and B. The calculation formula is as follows:
[0101]
[0102] In the above formula, γ is the fuzzy correlation entropy coefficient, which describes the similarity between the solution and the optimal solution. As a standard for fitness evaluation, the solution with the largest fuzzy correlation entropy coefficient is the optimal solution under the premise of no preference.
[0103] The beneficial effects of this invention are:
[0104] This invention focuses on batch assembly processes that allow humans and collaborative robots to perform parallel and collaborative tasks simultaneously at workstations. It selects batch completion time, cost, fatigue smoothness, and total fatigue as optimization objectives, and quantifies these objectives. A human-robot collaborative assembly line optimization method considering fatigue accumulation is proposed, and the balance problem of the human-robot collaborative assembly line is solved. Addressing the impact of worker fatigue on work efficiency on the assembly line, the total fatigue and fatigue smoothness of the workers on the assembly line are used as optimization objectives to reduce worker fatigue during the assembly process, while also considering the impact of fatigue on worker efficiency during long-term assembly.
[0105] This invention improves the performance of the artificial fish swarm algorithm. First, it designs an artificial fish velocity mechanism incorporating particle swarm optimization principles, optimizing the feeding direction of each artificial fish based on both individual and group experience, thus addressing the slow convergence speed of the algorithm. Second, it introduces a progressive neighborhood search strategy to expand the neighborhood space of optimal feeding positions for each artificial fish, performing simultaneous breadth and depth searches to enhance algorithm performance. Finally, it employs Pareto dominance sorting and an archiving mechanism to select and preserve superior individuals. Compared to other traditional algorithms, the improved algorithm demonstrates enhanced optimization capabilities.
[0106] This invention uses Pareto dominance to compare feasible solutions to obtain a Pareto optimal solution set. Then, it uses fuzzy correlation entropy analysis to compare the Pareto optimal solution set to obtain the optimal solution under the premise of no decision-maker preference. Attached Figure Description
[0107] Figure 1 A flowchart illustrating a solution to the problem of balancing human-machine collaborative assembly lines considering fatigue, provided by this invention;
[0108] Figure 2 A flowchart of an improved artificial fish swarm algorithm provided as an example of the present invention;
[0109] Figure 3 This is a flowchart illustrating the overall speed update process in an example of the present invention.
[0110] Figure 4 This is a flowchart illustrating the overall process of progressive neighborhood search in an example of the present invention. Detailed Implementation
[0111] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0112] Combination Figures 1 to 3 The present invention is described in detail below:
[0113] A method for balancing a human-machine collaborative assembly line considering fatigue includes the following steps:
[0114] S1: Obtain the time data, initial cycle time, batch assembly quantity, and assembly constraint relationship for different processes using different assembly modes, and convert the task assembly constraint relationship into a task assembly constraint matrix. Import the above data and the task assembly constraint relationship matrix.
[0115] S2: Import system parameters, including: initial visual field of the fish swarm algorithm, crowding factor δ, and population size N. fish Visual field factor α, number of predation attempts n try Individual learning factor c1, group learning factor c2, optimal solution learning factor c3, iteration number (Iteration);
[0116] S3: Establish the initial population and initial save file;
[0117] Based on the task assembly constraint matrix and the assembly time for different processes using different assembly modes, obtain N. fish A human-machine collaborative assembly scheme containing assembly line task information, assembly mode information, and workstation information is used as the initial population, and the Pareto optimal scheme is extracted into the archive Q.
[0118] Step S3 specifically includes:
[0119] S31: Establish a feasible task sequence based on the task assembly constraint matrix;
[0120] S32: Based on the feasible task sequence and task assembly constraints constructed in S31, establish a feasible assembly mode sequence;
[0121] S33: Based on the feasible task sequence and assembly mode sequence in S32, establish a workstation sequence with the initial cycle time as the time constraint;
[0122] S34: Integrate the feasible task sequence, assembly mode sequence, and workstation sequence into a feasible solution sequence, and calculate the completion time, cost, total fatigue, and fatigue smoothness of the feasible solution sequence.
[0123] Step S34 specifically includes:
[0124] S341: Based on a dynamic human fatigue model, calculate the fatigue level of workers when assembling each product; update the time for workers to complete the corresponding operation for each product based on the fatigue level of workers when assembling each product; calculate the manual completion time for each worker based on the time for workers to complete the corresponding operation for each product.
[0125] Step 341 specifically includes:
[0126] First, calculate the worker's assembly time t for the first product, based on a dynamic human fatigue model: F = 1 - e -ηθt Calculate the fatigue level F of workers at each workstation when they complete the assembly of the first product, where η is a dynamic parameter describing the characteristics of the worker's dynamic work, and θ describes the rate of fatigue accumulation.
[0127] Then, based on the worker's level of fatigue, the formula is used: T k =T0(1+δθ(ln(1+F(t)))) calculates the operation time and completion time ht for each worker to complete the subsequent product assembly. m T k Let Tk represent the assembly time when the worker assembles the k-th product, T0 represent the assembly time when the worker's fatigue level is 0, and the parameter δ describes the effect of fatigue on time. The calculation formula is as follows:
[0128] S342: The workstation's operation time formula is wt m =Max{ht m ,rt m}, wt m This refers to the working time of workstation m, ht m It is the manual completion time of workstation m, rt m The completion time of the collaborative robot at workstation m; the operation time (T) of product k is defined. k The expression for the longest workstation on the assembly line is: The completion time (T) of a batch of products is the sum of the processing times of individual products, where S is the set of workstations and NP is the quantity of products in the batch. The expression is:
[0129] S343: Cost W includes labor costs, collaborative robot purchase costs, and workstation and supporting facility purchase costs. The calculation formula is: W = T·NS·e cost +T·NH·w cost +T·NR·c cost NS represents the number of workstations, NH represents the number of workers, NR represents the number of robots, and e cost w is the depreciation cost per unit time for workstation equipment. cost For labor costs, c cost The depreciation cost per unit time for collaborative robots;
[0130] S344: Total fatigue F sum This indicates the workload undertaken by the worker throughout the assembly process, calculated using the following formula:
[0131]
[0132]
[0133] In the above formula, F h Let t be the fatigue level of the h-th worker. hLet h be the working time of the h-th worker in the entire assembly process, e be the Euler number, η be the dynamic parameter describing the characteristics of the worker's dynamic work, θ be the parameter describing the cumulative rate of fatigue, and H be the set of workers.
[0134] S345: Fatigue smoothness (ST) is an important indicator used to measure the evenness of the workload assigned to each worker. The smaller the fatigue smoothness, the more evenly the workload is assigned to each worker. The calculation process is as follows:
[0135] F max =Max{F h}
[0136]
[0137] In the above formula, F max NR represents the fatigue level of the worker who undertakes the most tasks during the entire assembly process, and NR is the number of workers.
[0138] S35: Cyclic steps S31-S34N fish Next, establish the initial population;
[0139] S36: Perform Pareto dominance sorting on the initial population to obtain the Pareto rank and crowding degree of each feasible solution;
[0140] S37: Perform Pareto dominance sorting on the initial population and put the human-machine cooperative schemes with Pareto level 1 into the archive Q.
[0141] S4: Initialize the velocity matrix
[0142] The velocity mechanism information of the artificial fish is stored in the velocity matrix V, where V is a 1×N matrix. fish The matrix stores N fish The velocity information of the artificial fish. The velocity of the a-th artificial fish consists of NT velocity components v. ab Composed of, v a =[v a1 … v ab …v aNT ] T ,a∈(1,2,…,N fish ), b∈(1,2,…,NT), the velocity component information of artificial fish a at position b is stored in v ab In the middle, element v abip This indicates the probability that an artificial fish a will choose to complete task i in assembly mode p at position b of its chromosome sequence.
[0143] Initialize the velocity matrix, for each v ab Each element v in abip Give a random number between [0,1], and then let vab The element v in the assembly mode p cannot complete task i. abip The value is 0, indicating that the velocity matrix initialization is complete.
[0144] S5: Start iteration. Combining the speed mechanism of artificial fish, optimize the initial population using an improved artificial fish swarm algorithm, and use the progressive neighborhood search method to perform local search for the found optimal solution.
[0145] Step S5 specifically includes:
[0146] S51: Randomly adopt swarming and tailing behaviors for the artificial fish individuals in the initial population. Let Random be a random number between [0,1]. When Random<=0.5, adopt swarming behavior; when >0.5, adopt tailing behavior. If the artificial fish's swarming and tailing behaviors are successful, adopt the asymptotic neighborhood search method for the location of the excellent artificial fish and add the obtained location of the excellent artificial fish to the archive Q. If it fails, the artificial fish adopt predation behavior.
[0147] Step S51 specifically includes:
[0148] S511: Import the current solution, let Qtask = Qmod = [], i3 = 1.
[0149] S512: Perform a single-point insertion operation on the solution task sequence, determine the Pareto dominance relationship between the new solution and the original solution. If the new solution is not dominated by the original solution, it means that the location of the artificial fish has search value, and add the new solution to Qtask.
[0150] The specific process for performing a single-point insertion operation on the solution task sequence is as follows: find tasks with direct preorder and direct postorder and add them to the candidate task set. Randomly select one task from the set and delete that task and all subsequent tasks from the candidate task set. The next task selection will be carried out from the updated candidate task set. Then, randomly select an insertion point from its direct preorder and direct postorder and insert the task, keeping the order of other tasks unchanged. To ensure efficiency, the insertion point cannot be on either side of the selected task.
[0151] S513: If the new solution found is dominated by the original solution, output Qtask and execute S514; otherwise, go to step S512.
[0152] S514: Read the i3rd solution of Qtask.
[0153] S515: Perform a single-point mutation operation on the assembly mode sequence of the solution, determine the Pareto dominance relationship between the new solution and the original solution, and if the new solution is not dominated by the original solution, add the new solution to Qmod.
[0154] A single-point mutation operation is performed on the assembly mode sequence of the solution. The specific process is as follows: based on the assembly mode constraints of the task, find the tasks that can be completed by multiple assembly modes and put them into the candidate task set. Randomly select the assembly mode of a task from the latter half as the mutation point, delete the task and the subsequent tasks from the candidate task set. The next task selection will be selected from the updated candidate task set, and then its assembly mode will be mutated into other feasible assembly modes.
[0155] S516: If the new solution found is dominated by the original solution, proceed to step S517; otherwise, go to step S515.
[0156] S517: i3 = i3 + 1. If i3 is greater than the number of solutions in Qtask, output Qmod; otherwise, go to step S514.
[0157] S52: The artificial fish engages in predation behavior. A new solution is generated based on the artificial fish's speed mechanism as the predation location. If the found solution is no worse than the original one, the predation is successful. For the found excellent artificial fish locations, an asymptotic neighborhood search method is used, adding the locations found through local search to the archive Q. If n... try If the location of the artificial fish found in each subsequent hunting attempt is worse than the original location, it means that the artificial fish has failed to hunt and will randomly select a location.
[0158] S6: After performing step S5 on all artificial fish, compare the optimal solution found by the algorithm with the solution in Q using Pareto relation, retain the non-dominated solutions and enter them into Q, and update the velocity matrix of the artificial fish.
[0159] Step S6 specifically includes:
[0160] S61: Import V k Archive Q, parent population and set a = 1.
[0161] S62: Read v from generation k V a Read the a-th artificial fish from the parent population and set b = 1.
[0162] S63: Read the task i and assembly mode p corresponding to the artificial fish at position b.
[0163] S64: c1 is the individual learning factor, r is a random number in the interval [0,1], i1 is the current iteration number, and iteration is the number of algorithm iterations.
[0164] S65:b=b+1.
[0165] S66: Determine if b is greater than NT. If yes, set b = 1 and go to step S67; otherwise, go to step S63.
[0166] S67: Read the task i selected at position b in Q and the corresponding assembly mode p, and calculate n. bip n bip Let Q be the number of times the artificial fish in Q selects assembly mode p to complete task i at position b.
[0167] S68: c2 is the group learning factor.
[0168] S69: b = b + 1.
[0169] S610: Determine if b is greater than NT. If yes, set b = 1 and proceed to step S71; otherwise, proceed to step S67.
[0170] S611: Perform fuzzy correlation entropy analysis on Q to obtain gbest.
[0171] S612: Read the task i selected at position b in gbest and the corresponding assembly mode p.
[0172] S613: c3 is the optimal solution learning factor, which is saved. arrive
[0173] S614: b = b + 1.
[0174] S615: Determine if b is greater than NT. If yes, set b = 1 and go to step S76; otherwise, go to step S72.
[0175] S616: Save arrive save To V k+1 .
[0176] S617: Let a = a + 1.
[0177] S618: Determine if a is greater than N fish If so, output V k+1 Otherwise, proceed to step S62.
[0178] S7: Generate N based on the velocity matrix of the artificial fish. fish Each solution is used as a new population;
[0179] Step S7 specifically includes:
[0180] S71: Import V k Let a = 1, and the parent population is [].
[0181] S72: From V k Read from Let b = 1.
[0182] S73: From Read from Based on the assembly constraints, find the task i that can be executed at the current position b and add it to the task candidate set. Retrieve feasible assembly modes p for task i in the task candidate set, and add all feasible solutions that execute task i using assembly mode p to the candidate set.
[0183] S74: Based on the probability, let the a-th solution of the parent population at position b choose to execute task i in assembly mode p. The probability is calculated by taking the corresponding v in the candidate set. abip Divide by all v in the candidate set abip The sum is obtained.
[0184] S75: b = b + 1.
[0185] S76: Determine if b is greater than NT. If yes, it means that the chromosome of artificial fish a has been generated. Save the a-th chromosome to the parent population and go to step S77. Otherwise, go to step S73.
[0186] S77: a = a + 1.
[0187] S78: Determine if a is greater than N fish If yes, output the parent population; otherwise, go to step S72.
[0188] S8: After the iteration is complete, output the Pareto optimal solution set in the archive;
[0189] S9: Use fuzzy correlation entropy analysis on the obtained Pareto optimal solution set to obtain the optimal solution under the premise of no preference of the decision-maker;
[0190] Step S9 specifically includes:
[0191] S91: Map all objective function value sequences to a fuzzy set, and modify the relative membership function. The modified relative membership function is as follows:
[0192]
[0193] In the above formula, μ i (X j ) is f i (X j The corresponding membership value, 0≤μ i (X j )≤1. ; f i,lb =βf i,min ,in β and β are the upper and lower bound factors, respectively. 0 < β ≤ 1, and f i,max and f i,min Let f be the maximum and minimum values of the i-th objective function, respectively;i (X j Let X be the i-th objective function value of the artificial fish j. j Let j be the artificial fish, i be the index of the objective function, and j be the index of the artificial fish.
[0194] S92: For two fuzzy sets A and B, find their information entropy E(A) and E(B):
[0195]
[0196]
[0197] In the above formula, K is the normalization factor, usually n is the number of objective functions;
[0198] S93: Find the fuzzy correlation entropy E between fuzzy sets A and B. B (A) and E A (B)
[0199]
[0200]
[0201] S94: Calculate the fuzzy correlation entropy coefficient γ(A;B) between fuzzy sets A and B. The calculation formula is as follows:
[0202]
[0203] In the above formula, γ is the fuzzy correlation entropy coefficient, which describes the similarity between the solution and the optimal solution. As a standard for fitness evaluation, the solution with the largest fuzzy correlation entropy coefficient is the optimal solution under the premise of no preference.
[0204] This invention focuses on batch assembly processes that allow humans and collaborative robots to perform parallel and collaborative tasks simultaneously at workstations. It selects batch completion time, cost, fatigue smoothness, and total fatigue as optimization objectives, and quantifies these objectives. A human-robot collaborative assembly line optimization method considering fatigue accumulation is proposed, and the balance problem of the human-robot collaborative assembly line is solved. Addressing the impact of worker fatigue on work efficiency on the assembly line, the total fatigue and fatigue smoothness of the workers on the assembly line are used as optimization objectives to reduce worker fatigue during the assembly process, while also considering the impact of fatigue on worker efficiency during long-term assembly.
[0205] This invention improves the performance of the artificial fish swarm algorithm. First, it designs an artificial fish velocity mechanism incorporating particle swarm optimization principles, optimizing the feeding direction of each artificial fish based on both individual and group experience, thus addressing the slow convergence speed of the algorithm. Second, it introduces a progressive neighborhood search strategy to expand the neighborhood space of optimal feeding positions for each artificial fish, performing simultaneous breadth and depth searches to enhance algorithm performance. Finally, it employs Pareto dominance sorting and an archiving mechanism to select and preserve superior individuals. Compared to other traditional algorithms, the improved algorithm demonstrates enhanced optimization capabilities.
[0206] This invention uses Pareto dominance to compare feasible solutions to obtain a Pareto optimal solution set. Then, it uses fuzzy correlation entropy analysis to compare the Pareto optimal solution set to obtain the optimal solution under the premise of no decision-maker preference.
[0207] The described embodiments are merely some, not all, of the embodiments of the present invention. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without inventive effort are within the scope of protection of the present invention.
Claims
1. A method for balancing a human-machine collaborative assembly line considering fatigue, characterized in that, The steps include the following: S1: Obtain the time data, initial cycle time, batch assembly quantity, and assembly constraint relationship for different processes using different assembly modes, and convert the task assembly constraint relationship into a task assembly constraint matrix. Import the above data and the task assembly constraint relationship matrix. S2: Import system parameters, including: initial visual field of the fish swarm algorithm, crowding factor δ, and population size N. fish Visual field factor α, number of predation attempts n try Individual learning factor c1, group learning factor c2, optimal solution learning factor c3, iteration number (Iteration); S3: Establish the initial population and initial save file; Based on the task assembly constraint matrix and the assembly time for different processes using different assembly modes, obtain N. fish A human-machine collaborative assembly scheme containing assembly line task information, assembly mode information, and workstation information is used as the initial population, and the Pareto optimal scheme is extracted into the archive Q. Step S3 specifically includes: S31: Establish a feasible task sequence based on the task assembly constraint matrix; S32: Based on the feasible task sequence and task assembly constraints constructed in S31, establish a feasible assembly mode sequence; S33: Based on the feasible task sequence and assembly mode sequence in S32, establish a workstation sequence with the initial cycle time as the time constraint; S34: Integrate the feasible task sequence, assembly mode sequence, and workstation sequence into a feasible solution sequence, and calculate the completion time, cost, total fatigue, and fatigue smoothness of the feasible solution sequence. S35: Cyclic steps S31-S34N fish Next, establish the initial population; S36: Perform Pareto dominance sorting on the initial population to obtain the Pareto rank and crowding degree of each feasible solution; S37: Perform Pareto dominance sorting on the initial population and put the human-machine cooperative schemes with Pareto level 1 into the archive Q; S4: Initialize the velocity matrix The velocity mechanism information of the artificial fish is stored in the velocity matrix V, where V is a 1×N matrix. fish The matrix stores N fish The velocity information of the artificial fish; the velocity of the a-th artificial fish consists of NT velocity components v. ab Composed of, v a =[v a1 … v ab … v aNT ] T ,a∈(1,2,…,N fish ), b∈(1,2,…,NT), the velocity component information of artificial fish a at position b is stored in v ab In the middle, element v abip This indicates the probability that artificial fish a will choose to complete task i in assembly mode p at position b of its chromosome sequence. Initialize the velocity matrix, for each v ab Each element v in abip Give a random number between [0,1], and then let v ab The element v in the assembly mode p cannot complete task i. abip The value is 0, indicating that the velocity matrix initialization is complete. S5: Start iteration. Combining the speed mechanism of artificial fish, optimize the initial population using an improved artificial fish swarm algorithm, and use the progressive neighborhood search method to perform local search for the found optimal solution. S6: After performing step S5 on all artificial fish, compare the optimal solution found by the algorithm with the solution in Q using Pareto relation, retain the non-dominated solutions and enter them into Q, and update the velocity matrix of the artificial fish. S7: Generate N based on the velocity matrix of the artificial fish. fish Each solution is used as a new population; S8: After the iteration is complete, output the Pareto optimal solution set in the archive; S9: Use fuzzy correlation entropy analysis on the obtained Pareto optimal solution set to obtain the optimal solution under the premise of no preference of the decision-maker.
2. The fatigue-considered human-machine collaborative assembly line balancing method according to claim 1, characterized in that: Step S34 specifically includes: S341: Based on a dynamic human fatigue model, calculate the fatigue level of workers when assembling each product; update the time for workers to complete the corresponding operation for each product based on the fatigue level of workers when assembling each product; calculate the manual completion time for each worker based on the time for workers to complete the corresponding operation for each product. S342: The workstation's operation time formula is wt m =Max{ht m ,rt m }, wt m This refers to the working time of workstation m, ht m It is the manual completion time of workstation m, rt m The completion time of the collaborative robot at workstation m; the operation time (T) of product k is defined. k The expression for the longest workstation on the assembly line is: The completion time (T) of a batch of products is the sum of the processing times of individual products, where S is the set of workstations and NP is the quantity of products in the batch. The expression is: S343: Cost W includes labor costs, collaborative robot purchase costs, and workstation and supporting facility purchase costs. The calculation formula is: W = T·NS·e cost +T·NH·w cost +T·NR·c cost NS represents the number of workstations, NH represents the number of workers, NR represents the number of robots, and e cost w is the depreciation cost per unit time for workstation equipment. cost For labor costs, c cost The depreciation cost per unit time for collaborative robots; S344: Total fatigue F sum This indicates the workload undertaken by the worker throughout the assembly process, calculated using the following formula: F sum =∑ h∈H F h ; In the above formula, F h Let t be the fatigue level of the h-th worker. h Let h be the working time of the h-th worker in the entire assembly process, e be the Euler number, η be the dynamic parameter describing the characteristics of the worker's dynamic work, θ be the parameter describing the cumulative rate of fatigue, and H be the set of workers. S345: Fatigue smoothness (ST) is an important indicator used to measure the evenness of the workload assigned to each worker. The smaller the fatigue smoothness, the more evenly the workload is assigned to each worker. The calculation process is as follows: F max =Max{F h }; In the above formula, F max NR represents the fatigue level of the worker who undertakes the most tasks during the entire assembly process, and NR is the number of workers.
3. The fatigue-considered human-machine collaborative assembly line balancing method according to claim 2, characterized in that: Step S341 specifically includes: First, calculate the worker's assembly time t for the first product, based on a dynamic human fatigue model: F = 1 - e -ηθt Calculate the fatigue level F of workers at each workstation when they complete the assembly of the first product, where η is a dynamic parameter describing the characteristics of the worker's dynamic work, and θ describes the rate of fatigue accumulation. Then, based on the worker's level of fatigue, the formula is used: T k =T0(1+δθ(ln(1+F(t)))) calculates the operation time and completion time ht for each worker to complete the subsequent product assembly. m T k Let Tk represent the assembly time when the worker assembles the k-th product, T0 represent the assembly time when the worker's fatigue level is 0, and the parameter δ describes the effect of fatigue on time. The calculation formula is as follows:
4. The fatigue-considered human-machine collaborative assembly line balancing method according to claim 1, characterized in that: Step S5 specifically includes: S51: Randomly adopt swarming and tailing behaviors for the artificial fish individuals in the initial population. Let Random be a random number between [0,1]. When Random<=0.5, adopt swarming behavior; when >0.5, adopt tailing behavior. If the artificial fish's swarming and tailing behaviors are successful, adopt the asymptotic neighborhood search method for the location of the excellent artificial fish and add the obtained location of the excellent artificial fish to the archive Q. If it fails, the artificial fish adopt predation behavior. S52: The artificial fish engages in predation behavior. A new solution is generated based on the artificial fish's speed mechanism as the predation location. If the found solution is no worse than the original, the predation is successful. For the found excellent artificial fish locations, an asymptotic neighborhood search method is used. The location found through the local search is added to the archive Q. If n... try If the location of the artificial fish found in each subsequent hunting attempt is worse than the original location, it means that the artificial fish has failed to hunt and will randomly select a location.
5. The fatigue-considered human-machine collaborative assembly line balancing method according to claim 4, characterized in that: In step S51, the incremental neighborhood search method for finding excellent artificial fish locations specifically involves: S511: Import the current solution, let Qtask = Qmod = [], i3 = 1; S512: Perform a single-point insertion operation on the solution task sequence, determine the Pareto dominance relationship between the new solution and the original solution. If the new solution is not dominated by the original solution, it means that the location of the artificial fish has search value, and add the new solution to Qtask. The specific process of performing a single-point insertion operation on the solution task sequence is as follows: find tasks with direct preorder and direct postorder and put them into the candidate task set. Randomly select one task from the set and delete that task and all subsequent tasks from the candidate task set. The next task selection will be carried out from the updated candidate task set. Then, randomly select an insertion point from its direct preorder and direct postorder and insert the task, keeping the order between other tasks unchanged. To ensure efficiency, the insertion point cannot be on both sides of the selected task. S513: If the new solution found is dominated by the original solution, output Qtask and execute S514; otherwise, go to step S512. S514: Read the i3rd solution of Qtask; S515: Perform a single-point mutation operation on the assembly mode sequence of the solution, determine the Pareto dominance relationship between the new solution and the original solution, and if the new solution is not dominated by the original solution, add the new solution to Qmod; A single-point mutation operation is performed on the assembly mode sequence of the solution. The specific process is as follows: based on the assembly mode constraints of the task, find the tasks that can be completed by multiple assembly modes and put them into the candidate task set. Randomly select the assembly mode of a task from the latter half as the mutation point, delete the task and the subsequent tasks from the candidate task set, and the next task screening will select from the updated candidate task set and then mutate its assembly mode into other feasible assembly modes. S516: If the new solution found is dominated by the original solution, proceed to step S517; otherwise, go to step S515. S517: i3 = i3 + 1. If i3 is greater than the number of solutions in Qtask, output Qmod; otherwise, go to step S514.
6. The fatigue-considered human-machine collaborative assembly line balancing method according to claim 1, characterized in that: Step S6, updating the velocity matrix, specifically includes: S61: Import V k Archive Q, parent population and set a = 1; S62: Read v from generation k V a Read the a-th artificial fish from the parent population and set b = 1; S63: Read the task i and assembly mode p corresponding to the artificial fish at position b; S64: c1 is the individual learning factor, r is a random number in the interval [0,1], i1 is the current iteration number, and iteration is the number of algorithm iterations; S65: b = b + 1; S66: Determine if b is greater than NT. If yes, set b = 1 and go to step S67; otherwise, go to step S63. S67: Read the task i selected at position b in Q and the corresponding assembly mode p, and calculate n. bip n bip Let Q be the number of times the artificial fish in Q selects assembly mode p to complete task i at position b. S68: c2 is the group learning factor; S69: b = b + 1; S610: Determine if b is greater than NT. If yes, set b = 1 and go to step S71; otherwise, go to step S67. S611: Perform fuzzy correlation entropy analysis on Q to obtain gbest; S612: Read the task i selected at position b in gbest and the corresponding assembly mode p; S613: c3 is the optimal solution learning factor, which is saved. arrive S614: b = b + 1; S615: Determine if b is greater than NT. If yes, set b = 1 and go to step S76; otherwise, go to step S72. S616: Save arrive save To V k+1 ; S617: Let a = a + 1; S618: Determine if a is greater than N fish If so, output V k+1 Otherwise, proceed to step S62.
7. The fatigue-considered human-machine collaborative assembly line balancing method according to claim 1, characterized in that: Step S7, as described, generates N based on the velocity matrix of the artificial fish. fish Each solution is used as a new population; specifically: S71: Import V k Let a = 1, and the parent population be []. S72: From V k Read from Let b = 1; S73: From Read from Based on the assembly constraints, find the task i that can be executed at the current position b and add it to the task candidate set; retrieve the feasible assembly mode p of task i in the task candidate set and add all feasible solutions to execute task i in assembly mode p to the candidate set. S74: Based on the probability, let the a-th solution of the parent population at position b choose to execute task i in assembly mode p. The probability is calculated by taking the corresponding v in the candidate set. abip Divide by all v in the candidate set abip The sum is obtained; S75: b = b + 1; S76: Determine if b is greater than NT. If yes, it means that the chromosome of artificial fish a has been generated. Save the a-th chromosome to the parent population and go to step S77. Otherwise, go to step S73. S77: a = a + 1; S78: Determine if a is greater than N fish If yes, output the parent population; otherwise, go to step S72.
8. The fatigue-considered human-machine collaborative assembly line balancing method according to claim 1, characterized in that: The fuzzy correlation entropy analysis in steps S9 and S611 specifically includes: S91: Map all objective function value sequences to a fuzzy set, and modify the relative membership function. The modified relative membership function is as follows: In the above formula, μ i (X j ) is f i (X j The corresponding membership value, 0≤μ i (X j )≤1; f i,lb =βf i,min ,in β and β are the upper and lower bound factors, respectively. 0 < β ≤ 1, and f i,max and f i,min Let f be the maximum and minimum values of the i-th objective function, respectively; i (X j Let X be the i-th objective function value of the artificial fish j. j Let j be the artificial fish, i be the index of the objective function, and j be the index of the artificial fish. S92: For two fuzzy sets A and B, find their information entropy E(A) and E(B): In the above formula, K is the normalization factor, usually n is the number of objective functions; S93: Find the fuzzy correlation entropy E between fuzzy sets A and B. B (A) and E A (B); S94: Calculate the fuzzy correlation entropy coefficient γ(A;B) between fuzzy sets A and B. The calculation formula is as follows: In the above formula, γ is the fuzzy correlation entropy coefficient, which describes the similarity between the solution and the optimal solution. As a standard for fitness evaluation, the solution with the largest fuzzy correlation entropy coefficient is the optimal solution under the premise of no preference.
Citation Information
Patent Citations
Balancing control method for single-sided assembly line
CN102566423A
Man-machine cooperation disassembly line balancing method for recycling power battery module
CN116579121A