CN112605988B - Random multi-product robot disassembly line balance control method - Google Patents

Random multi-product robot disassembly line balance control method Download PDF

Info

Publication number
CN112605988B
CN112605988B CN202011354473.3A CN202011354473A CN112605988B CN 112605988 B CN112605988 B CN 112605988B CN 202011354473 A CN202011354473 A CN 202011354473A CN 112605988 B CN112605988 B CN 112605988B
Authority
CN
China
Prior art keywords
product
disassembly
robot
workstation
cost
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011354473.3A
Other languages
Chinese (zh)
Other versions
CN112605988A (en
Inventor
郭希旺
吴昆�
赵健
赵梓焱
胡承波
魏海平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Liaoning Shihua University
Original Assignee
Liaoning Shihua University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Liaoning Shihua University filed Critical Liaoning Shihua University
Priority to CN202011354473.3A priority Critical patent/CN112605988B/en
Publication of CN112605988A publication Critical patent/CN112605988A/en
Application granted granted Critical
Publication of CN112605988B publication Critical patent/CN112605988B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)

Abstract

The invention provides a random multi-product robot disassembly line balance control method, which comprises the following steps: s1, establishing a mathematical model aiming at dismantling profit, maximizing the balance rate and minimizing the energy consumption; s2, initializing a population; s3, carrying out initial populationDecoding; s4, evaluating the objective function value of each feasible solution obtained in the step S3; s5, calculating by adopting a PIMBO algorithm to obtain a non-dominated solution set, storing the non-dominated solution set in an external file, and evolving the external file; s6, judging the current fitness value fvWhether a preset total fitness value f is reachedtvStopping iteration of the algorithm, and outputting a non-dominated solution set in an external file; otherwise, S5 is repeated. The invention designs a Pareto-improved multi-target brainstorming storm optimization algorithm (PIMBO) to solve the problem according to the characteristics of the multi-target multi-product robot disassembly line balance problem (MMRDP). The control method can solve the problem of balance of the disassembly line of the multi-target multi-product robot and provide a better solution.

Description

Random multi-product robot disassembly line balance control method
Technical Field
The invention belongs to the technical field of information and control, and particularly relates to a random multi-product robot disassembly line balance control method.
Background
With the development of industry, a large amount of products are scrapped, causing many environmental problems. Recycling is one of the effective methods for treating EOL products (waste products). The value of recycling the EOL product is embodied in two aspects: 1) is beneficial to environmental protection; 2) saving resources and reducing production cost. Disassembly is an important step in the recovery process. Most disassembly operations are still performed manually due to the flexibility of human operation, but the disassembly costs are high. In recent years, more and more research has focused on robotic assisted automated disassembly. It can reduce the dismantlement cost, improves and dismantles efficiency, guarantees the part quality, prevents that mankind from contacting dangerous part. Therefore, it is necessary to study the Robot Disassembly Line Balance (RDLB) problem. Some scholars at home and abroad research the situation. For example, Zeynel Abidin Cil et al studied the RDLB problem for a single product. Liujiayi et al have solved the cooperative optimization problem of dismantlement sequence planning and RDLB. However, the above studies have focused on the disassembly of a single product. In practice, it is often necessary to disassemble multiple products simultaneously to meet customer needs. Therefore, the research on the multi-product disassembly method is of great significance.
To solve this problem, researchers have sought effective methods. Zeynel Abidin Cil et al propose an interval search ant colony optimization algorithm to solve the RDLB problem, and a positive feedback mechanism is adopted to make the search process continuously converge and finally approach the optimal solution. Liujiayi et al propose an improved multi-target discrete bee algorithm to solve the RDLB problem, sort the population by combining the non-dominant Pareto sorting method, and generate a feasible solution by using a spatial interference matrix method. Fang Yilin et al developed a problem-specific dual-criteria evolutionary algorithm to solve the disassembly line balancing problem for a hybrid model with multi-robot workstations.
However, we have found that the disassembly line balance problem (DLB) is typically a multi-objective optimization problem with the goal of maximizing total profit, minimizing cycle time, minimizing the number of workstations and resources, and removing hazardous parts as early as possible. In DLB, the balance ratio is used to evaluate the workload between workstations, and is one of the main indicators for evaluating the solution performance of DLB. Therefore, we propose a multi-objective multi-product robot disassembly line balancing problem (MMRDP) with the goal of maximizing disassembly profit and balancing rate and minimizing disassembly energy consumption, and it is crucial to make a good trade-off between these goals.
In recent years, the brainstorming optimization algorithm (BSO) has been considered by scholars in the field as a promising new group of intelligent algorithms. It balances global and local searches and has been successfully applied to the solution of many optimization problems. For example, the shores and the like propose a predator-bait BSO to solve the optimization problem of the dc brushless motor, and improve the diversity of the population on the basis of the BSO by combining a predator-bait mechanism. Duochiben et al propose a quantum-behaved BSO to solve the Loney solenoid problem, by combining quantum-behaved to improve population diversity. However, at present, these algorithms are not suitable for solving the RDLB problem, and are even less suitable for solving the MMRDP. Therefore, a control method capable of solving MMRDP is now required.
Disclosure of Invention
The invention aims to overcome the problems and provides a random multi-product robot disassembly line balance control method, and a Pareto-based improved multi-objective brainstorming storm optimization algorithm (PIMBO) is designed according to the characteristics of a multi-objective multi-product robot disassembly line balance problem (MMRDP) to solve the problem. The control method can solve the problem of balance of the disassembly line of the multi-target multi-product robot and provide a better solution.
The invention establishes a random multi-product robot disassembly line balance model based on an AND/OR diagram AND considering the disassembly failure risk, AND aims to maximize the disassembly profit AND the balance rate AND minimize the energy consumption. The present invention builds a mathematical model of MMRDP that takes into account the uncertainty of the disassembly process. In the actual disassembly process, due to the quality difference of waste products and the disassembly difficulty, the disassembly operation cannot be performed according to a plan due to the uncertainty of the disassembly time. Therefore, the risk of failure of disassembly should be considered.
In order to achieve the purpose, the invention adopts the following technical scheme: a random multi-product robot disassembly line balance control method comprises the following steps:
s1, establishing a mathematical model aiming at dismantling profit, maximizing the balance rate and minimizing the energy consumption;
s2, initializing the population: randomly generating a plurality of solutions in a search space, and initializing individuals which do not meet the priority and conflict constraint conditions in the solutions by adopting an adjusting method to form an initial population;
s3, decoding the initial population: distributing the disassembly operation to be executed to each work station, determining the sequence of the disassembly operation on each work station, and distributing the robot to each work station to execute the disassembly operation;
s4, evaluating the objective function value of each feasible solution obtained in the step S3;
s5, calculating by adopting a PIMBO algorithm to obtain a non-dominated solution set, storing the non-dominated solution set in an external file, and evolving the external file;
s6, stop criterion: determining iteration times by using the fitness value, and judging the current fitness value fvWhether a preset total fitness value f is reachedtvThe initial fitness value is equal to 0, and when evaluating a new individual, the fitness value is increased by 1 until the current fitness value fvReach the preset total adaptability value ftvStopping iteration of the algorithm, and outputting a non-dominated solution set in an external file; otherwise, S5 is repeated.
Further, the step S1 specifically includes the following steps:
s101: establishing a priority matrix AND a disassembly association matrix for the multi-product needing disassembly based on the AND/OR graph of the multi-product as follows:
(1) priority matrix P ═ Pjk]The priority and conflict relationship for two teardown operations is expressed as follows:
Figure BDA0002802236190000021
(2) the disassembly association matrix D ═ Dij]: for representing the relationship between the assembly and the disassembly operation, defined as follows:
Figure BDA0002802236190000022
where i is the component index, i ∈ {1,2, …, NgIn which N isgRepresenting the number of components in product g;
j, k is the operation index, J, k ∈ {0,1, …, JgIn which JgRepresenting operands in product g, 0 is a virtual operation;
pjkis one element in the jth row and kth column of the priority matrix P;
dijto detach one element in the ith row and jth column of the incidence matrix D;
s102: establishing a mathematical model aiming at dismantling profit, balancing rate maximization and energy consumption minimization:
Figure BDA0002802236190000031
Figure BDA0002802236190000032
Figure BDA0002802236190000033
Figure BDA0002802236190000034
Figure BDA0002802236190000035
Figure BDA0002802236190000036
Figure BDA0002802236190000041
Figure BDA0002802236190000042
Figure BDA0002802236190000043
Figure BDA0002802236190000044
Figure BDA0002802236190000045
Figure BDA0002802236190000046
wherein, each symbol represents the following meanings:
g,
Figure BDA0002802236190000047
the indication of the EOL product index,
Figure BDA0002802236190000048
wherein G represents the number of waste products;
i denotes the component index, i ∈ {1,2, …, NgIn which N isgRepresenting the number of components in product g;
j, k denotes an operation index, J, k ∈ {0,1, …, JgIn which JgRepresenting operands in product g, 0 is a virtual operation;
l, M represents the workstation index, l, M ∈ {1,2, …, M }, where M is the number of workstations;
r represents the index of robot type, R ∈ {1,2, …, R }, where R represents the number of robot types;
Figure BDA0002802236190000049
represents the detachment time for the robot r to perform operation j in the product g;
Figure BDA00028022361900000410
represents the detachment time for the robot r to perform operation k in the product g;
Figure BDA00028022361900000411
a set time indicating that the robot r is ready to perform an operation k in the product g, the operation k being performed immediately after an operation j in the product g;
Figure BDA00028022361900000412
indicating that robot r is ready to execute a product
Figure BDA00028022361900000413
The set time of operation k in (1), operation k being performed immediately after operation j in product g;
Figure BDA00028022361900000414
represents the energy consumption per unit time of the robot r for executing the operation j in the product g;
Figure BDA0002802236190000051
a set energy consumption per unit time indicating that the robot r is ready to perform an operation k in the product g, the operation k being performed immediately after an operation j in the product g;
Figure BDA0002802236190000052
indicating that robot r is ready to execute a product
Figure BDA0002802236190000053
Setting energy consumption per unit time of operation k in (1), which is performed immediately after operation j in product g;
elrepresenting the energy consumption per unit time during the operation of the ith workstation;
Figure BDA0002802236190000054
represents the cost per unit time for the robot r to perform the operation j in the product g;
Figure BDA0002802236190000055
represents the cost per unit time for the robot r to perform operation k in product g;
Figure BDA0002802236190000056
presentation machineThe person r prepares to perform a set unit time cost of an operation k in the product g, the operation k being performed immediately after an operation j in the product g;
Figure BDA0002802236190000057
indicating that robot r is ready to execute a product
Figure BDA0002802236190000058
The set unit time cost of operation k in (1), operation k being performed immediately after operation j in product g;
clrepresents the cost per unit time during the operation of the ith workstation;
Figure BDA0002802236190000059
representing the recycling value of the component i in the product g;
Tlrepresents the cycle time of the l workstation;
Figure BDA00028022361900000510
representing the failure probability of the robot executing operation k in the product g immediately after operation j in the product g;
Figure BDA00028022361900000511
indicating that the robot performs the product immediately after j is operated in the product g
Figure BDA00028022361900000512
The failure probability of operation k;
theta represents the probability of failure cost of the disassembly process, and the minimum probability that the requirement is met, namely the failure cost of the disassembly process is less than or equal to the maximum failure cost;
Figure BDA00028022361900000529
represents the maximum failure cost of the disassembly process;
the decision variables are respectively:
Figure BDA00028022361900000513
indicates that if operation j in product g is performed by robot r, then
Figure BDA00028022361900000514
Otherwise
Figure BDA00028022361900000515
Figure BDA00028022361900000516
Indicates that if operation k in product g is performed by robot r, then
Figure BDA00028022361900000517
Otherwise
Figure BDA00028022361900000518
Figure BDA00028022361900000519
Indicating that if operation k in product g is performed by robot r immediately after operation j in product g, then
Figure BDA00028022361900000520
Otherwise
Figure BDA00028022361900000521
Figure BDA00028022361900000522
Indicates if the product is
Figure BDA00028022361900000523
Operation k in (1) is performed by robot r immediately after operation j in product g, then
Figure BDA00028022361900000524
Otherwise
Figure BDA00028022361900000525
Figure BDA00028022361900000526
Indicating that if an operation j in a product g is performed by the robot r and assigned to the ith workstation
Figure BDA00028022361900000527
Otherwise
Figure BDA00028022361900000528
Figure BDA0002802236190000061
Indicating that if an operation k in a product g is performed by the robot r and assigned to the mth workstation
Figure BDA0002802236190000062
Otherwise
Figure BDA0002802236190000063
ulIndicates if the ith station, u, is usedl1 is ═ 1; otherwise ul=0;
Wherein the objective function (1) is to maximize the expected disassembly margin, which is equal to the total disassembly revenue minus the total disassembly cost, which includes the total cost of the disassembly operation, the total set-up cost of adjacent operations in the same product, the total set-up cost of adjacent operations in a different product, and the cost of the workstation; the objective function (2) is to minimize the expected energy consumption, including the total energy consumption of the disassembly operation, the total set energy consumption of the adjacent operation in the same product, the total set energy consumption of the adjacent operation in different products, and the energy consumption of the workstation; the objective function (3) is to maximize the desired balance rate, i.e., the average of the total work time divided by the total cycle time of the workstation on;
equations (4) to (12) are constraints:
the constraint (4) is to ensure that at least one disassembly operation is performed per product, except for a dummy operation; the constraint (5) is that each disassembling operation in the multi-product can be executed at most once; the constraint (6) is that each disassembly operation in the multi-product can be only distributed to one work station and executed by one robot; the constraint (7) is that each open workstation is assigned at least one operation; the constraint condition (8) is to ensure that the feasible disassembly sequence of the multiple products meets the preferential constraint; the constraint (9) is to ensure that the feasible disassembly sequence of the multiple products meets the conflict constraint; the constraint (10) indicates that the operating time of all workstations used does not exceed the disassembly line total cycle time; (11) the probability that the failure cost of the disassembly process is required to be less than or equal to the maximum failure cost is greater than a preset value theta > 0; the constraints (12) give the range of decision variables.
Further, the specific steps of initializing the population S2 are as follows:
s201, randomly generating a solution pi;
s202, adjusting pi according to the priority matrix P1In order to satisfy the priority relationship between the multi-product disassembly operations: traverse the whole disassembly operation sequence pi1If disassembly operation ojAt okThen and P in the priority matrix P jk1, then ojAnd okExchanging, simultaneously rjAnd rkExchanging, otherwise, continuously traversing the next operation;
s203, if |)1In (a) detaching operationjIs the initial disassembly operation of the product, pi2Binary value x injX is 0jResetting to 1, otherwise, entering step S204;
s204, adjusting pi according to the priority matrix P2To satisfy the precedence relationship between the same product disassembly operation: traverse the whole binary vector pi2If is pi2Binary value x ink1, P in the priority matrix P jk1, then pi2Binary value x injIs arranged as1;
S205, adjusting pi according to the priority matrix P2Eliminating the conflict relationship between the disassembling operations of the same product: traverse the whole binary vector pi2If is pi2Binary value x ink1, P in the priority matrix PjkWhen is equal to-1, then2Binary value x inkSet to 0;
s206, taking all individuals meeting the priority and conflict constraint conditions as an initial population;
further, the specific process of decoding pi in step S201 is: using a three-vector representation of a solution, i.e. pi-pi (pi)1,π2,π3) In which pi1=(o1,o2,…,oJ) Is an integer string representing a sequence of teardown operations, where ojRepresenting the dismounting operation of the J bit, wherein J is the total operation number of a plurality of products to be dismounted; pi2=(x1,x2,…,xJ) Is an integer string representing a binary vector containing J binary values; if xjIf 1, then pi is executed1Operation o inj(ii) a Otherwise, o is not performedj;π3=(r1,r2,…,rJ) Is an integer string representing a robot-type sequence in which each element is an integer between 1 and R, corresponding to the type of robot performing a disassembly operation.
Further, the specific step of S3 is:
s301, setting a disassembling operation k to be 1;
s302, determining whether to execute a disassembling operation k; if pi2Binary value x ink1 and kfWherein k isfWhen the first disassembly operation in the whole disassembly sequence is performed, a new work station is opened, i is equal to 1, and the operation time T of the first work stationldSet to 0, set of disassembly operations C in the l-th workstationlSet to ζ, where ζ represents an empty set, and the set of robots R of the l-th workstationlSet to r, where r denotes the machine performing the disassembling operation kHuman type, if xk1 and k ≠ kfIf yes, execute the detaching operation k and go to step 302; otherwise, go to S308;
s303, setting the current operation time T of the first workstationld=Tld+tjkrWherein t isjkrRepresents a set time for which the detaching operation k is performed by the robot r immediately after the detaching operation j, and determines the l-th station cycle time TlWith the current operating time T of the ith workstationldIf T isld>TlGo to S304, otherwise go to S305;
s304, opening a new workstation, and setting l to l +1, Cl=ζ,Rl=r,Tld=tjkr
S305, setting Tld=Tld+tkrWherein t iskrRepresents the disassembly time of the robot r for performing the disassembly operation k; and determining TlAnd TldIf T isld>TlGo to S306, otherwise go to S307;
s306, opening a new workstation, and setting l to l +1, Cl=ζ,RlR and Tld=tjkr+tkr
S307, distributing the disassembling operation k to the ith work station, and updating ClAnd Rl,Cl=Cl∪k,Rl=Rl∩r;
S308, if k ≠ J, setting k ≠ k +1, and repeating steps S302-S307; otherwise, outputting a feasible solution;
further, the step S4 adopts a random simulation method of monte carlo simulation to evaluate the objective function value of each feasible solution obtained in the step S3.
Further, the step S5 specifically includes the following steps:
s501, performing Pareto-based clustering operation on each feasible solution obtained in the S4 to ensure that individuals of the same grade are classified into the same class;
s502, new individual generation operation: generating new individuals by executing a crossover operator and a mutation operator on the individuals of the current population, and storing the new individuals into a new individual set;
s503, selecting operation: and (4) comparing the objective function values of the mixed population consisting of the new individual set and the current population obtained by the calculation in the step (S502) through a Pareto rule to obtain a non-dominated solution set, storing the non-dominated solution set in an external archive, and evolving the external archive.
Compared with the prior art, the invention has the beneficial effects that: the invention designs a reasonable and feasible coding mode and a decoding method according to the characteristics of the multi-target multi-product robot disassembly line balance problem (MMRDP). The original brainstorm optimization algorithm (BSO) adopts a k-means clustering algorithm to realize clustering operation on populations, and the algorithm has the advantages of large calculated amount, low efficiency, need of manually determining the clustering number and inapplicability to a solving method of the problem. Therefore, the non-dominant quick sorting method is selected to perform clustering operation on the population, the method can reduce the calculation amount, and the artificial determination of the cluster number is not needed. Considering that the problem studied by the present invention is the discrete combination problem, the original BSO generates a new solution by adding a perturbation random number, but does not apply to the solution of the problem, so the present invention combines the idea of genetic algorithm to design a position-based crossover operator and a position-based mutation operator to generate a new solution. In the original BSO, when an individual is selected from a subclass to generate a new individual, only one individual participates in generating the new individual. The invention combines the class center of the first subclass with the currently selected individuals to generate new individuals, which improves the convergence speed of the algorithm. Meanwhile, considering that the research problem of the invention is a multi-objective optimization problem, the invention selects Pareto rules to compare the quality of individuals, and adopts an external document technology to store a non-dominated solution set obtained in the solving process. The method adopts a Pareto improved multi-target brainstorming optimization algorithm (PIMBO) based control method, can solve the problem of balance of the disassembly line of the multi-target multi-product robot, and provides a better solution.
Drawings
FIG. 1 is a schematic flow diagram of the present invention;
FIG. 2 is a schematic view of a ball point pen;
FIG. 3 is a schematic view of a lamp;
FIGS. 4(i) AND (ii) are respectively AND/OR graphs of a ball-point pen AND a desk lamp;
FIG. 5 is a schematic illustration of a priority matrix P for a ball point pen and a desk lamp;
FIG. 6 is a schematic representation of an association matrix D of a ball point pen and a desk lamp;
FIG. 7 is a robot detachment line layout example of a ball-point pen and a desk lamp;
FIG. 8 is a flow chart for decoding an initial population;
FIG. 9 is a schematic diagram of a crossover operation;
FIG. 10 is a schematic diagram of a mutation operation;
FIG. 11 is a schematic view of a hammer drill;
FIG. 12 is a schematic view of a washing machine;
FIG. 13 is a schematic view of a radio;
FIG. 14 is an AND/OR graph of a hammer drill;
FIG. 15 is an AND/OR diagram of the washing machine;
FIG. 16 is an AND/OR graph of a radio;
FIG. 17 is a box plot of the results of five algorithmic IGD-metrology experiments;
FIG. 18 is a boxplot of the results of five algorithm hyper-volume-metric experiments;
Detailed Description
The invention is further illustrated by the following specific examples. It is important to note here that this example is for illustrative purposes only and that the scope of protection of the present invention is not limited to the illustrative scope.
Examples
This embodiment will be described in connection with the problem of robot disassembly line balance for EOL products in practice, ballpoint pens and table lamps.
Referring to fig. 1, the invention provides a random multi-product robot disassembly line balance control method, which comprises the following steps:
s1, establishing a mathematical model aiming at dismantling profit, maximizing the balance rate and minimizing the energy consumption;
s101: establishing a priority matrix AND a disassembly association matrix for the multi-product needing disassembly based on the AND/OR graph of the multi-product as follows:
(1) priority matrix P ═ Pjk]The priority and conflict relationship for two teardown operations is expressed as follows:
Figure BDA0002802236190000081
(2) the disassembly association matrix D ═ Dij]: for representing the relationship between the assembly and the disassembly operation, defined as follows:
Figure BDA0002802236190000082
where i is the component index, i ∈ {1,2, …, NgIn which N isgRepresenting the number of components in product g;
j, k is the operation index, J, k ∈ {0,1, …, JgIn which JgRepresenting operands in product g, 0 is a virtual operation;
pjkis one element in the jth row and kth column of the priority matrix P;
dijto detach one element in the ith row and jth column of the incidence matrix D;
the AND/OR graph may represent a priority relationship AND a conflict relationship between the teardown operation AND the teardown operation, AND may also represent a relationship between the component AND the teardown operation. Taking a ball-point pen AND a desk lamp which need to be disassembled as an example, as shown in figures 2 AND 3, the structures of the ball-point pen AND the desk lamp are shown respectively, AND the AND/OR diagrams of the ball-point pen AND the desk lamp are shown in figures 4(i) AND (ii) respectively. In fig. 4(i) and (ii), the disassembly operations are represented by integers 1,2 … …, and J, where J is the total number of disassembly operations. The nodes represent components indexed from <1> to < I >, where I is the number of all components. If component b is obtained by tearing down a, then component a is called the parent component of component b and component b is called the child component of component a, where a, b e {1,2, … …, I }. For example, component <1> is a parent of <2> and <15>, and <2> is a child of <1 >. Therefore, based on the AND/OR diagram of the ballpoint pen AND the desk lamp, the priority matrix P of the ballpoint pen AND the desk lamp is shown in FIG. 5 AND the disassembly association matrix D of the ballpoint pen AND the desk lamp is shown in FIG. 6 according to the definition of the priority matrix P.
Description of robot detachment line: as shown in fig. 5, one ball-point pen includes 15 components and 13 disassembly operations, and one desk lamp includes 7 components and 6 disassembly operations. Robot detachment line in fig. 7, numerals in a triangle represent detachment operations, numerals in a circle represent types of robots performing detachment operations, numerals in a rectangle represent inseparable components, and numbers on a conveyor belt represent components to be detached in which a ball-point pen and a table lamp are broken down into inseparable components. The robotic disassembly line has several work stations, and each robot performs a disassembly operation assigned to each work station. And (4) selectively disassembling the ball-point pen and the desk lamp. Thus, the disassembling operations 1-13 and the assemblies 1-15 are related to ball-point pens, and the disassembling operations 14-19 and the assemblies 16-22 are related to table lamps. The i-type robot being called a robot ri. One possible disassembly solution comprises a disassembly operation sequence 1, 3, 14, 5, 17, 7, 10 and a robot type sequence 1, 3, 2, 1. Each disassembly operation in the sequence of disassembly operations is assigned to each workstation according to a constraint of cycle time. The robot type for each workstation is based on the robot type assigned to the disassembly operation for each workstation. For example, the first workstation is assigned to the dismantling operations 1, 3 and 14, the types of robots performing these dismantling operations being 1, 3 and 2, respectively. Thus, r1、r2And r3Is assigned to the first workstation. In addition, the non-separable components 15, 14, 22, 10, 21, 20, 11, 12, 13 result from a possible disassembly solution, i.e. r1、r2And r3Assigned to the first work station, where the disassembly operations 1, 3 and 14 are carried out, r2And r3Assigned to a second station where the disassembly operations 5 and 17 are carried out, and3assigned to the third station where the disassembling operations 7 and 10 are carried out.
S102: establishing a mathematical model aiming at dismantling profit, balancing rate maximization and energy consumption minimization:
to build a mathematical model, first we need the following assumptions:
1. for each type of robot, the average detach time and setup time for each detach operation is known.
2. For each type of robot, the cost per unit time and energy consumption per unit time of the disassembly operation are known.
3. The conversion cost per time unit and the conversion energy consumption per time unit are known.
The supply of EOL products is unlimited.
5. Only the robot is responsible for performing the disassembly operation. Any one robot can only perform one disassembly operation at a time, and each operation must be performed by one robot.
6. The AND/OR diagrams of a plurality of waste products that need to be dismantled are known.
7. If a disassembly task is assigned to a workstation and performed by a robot of a certain type, the robot type is assigned to the workstation.
The symbols and decision variables to which the present invention relates are listed below.
1) Symbol
g,
Figure BDA0002802236190000101
The indication of the EOL product index,
Figure BDA0002802236190000102
wherein G represents the number of waste products;
i denotes the component index, i ∈ {1,2, …, NgIn which N isgRepresenting the number of components in product g;
j, k denotes an operation index, J, k ∈ {0,1, …, JgIn which JgRepresenting operands in product g, 0 is a virtual operation;
l, M represents the workstation index, l, M ∈ {1,2, …, M }, where M is the number of workstations;
r represents the index of robot type, R ∈ {1,2, …, R }, where R represents the number of robot types;
Figure BDA0002802236190000103
represents the detachment time for the robot r to perform operation j in the product g;
Figure BDA0002802236190000104
represents the detachment time for the robot r to perform operation k in the product g;
Figure BDA0002802236190000105
a set time indicating that the robot r is ready to perform an operation k in the product g, the operation k being performed immediately after an operation j in the product g;
Figure BDA0002802236190000106
indicating that robot r is ready to execute a product
Figure BDA0002802236190000107
The set time of operation k in (1), operation k being performed immediately after operation j in product g;
Figure BDA0002802236190000108
represents the energy consumption per unit time of the robot r for executing the operation j in the product g;
Figure BDA0002802236190000109
a set energy consumption per unit time indicating that the robot r is ready to perform an operation k in the product g, the operation k being performed immediately after an operation j in the product g;
Figure BDA00028022361900001010
indicating that robot r is ready to execute a product
Figure BDA00028022361900001011
Setting energy consumption per unit time of operation k in (1), which is performed immediately after operation j in product g;
elrepresenting the energy consumption per unit time during the operation of the ith workstation;
Figure BDA00028022361900001012
represents the cost per unit time for the robot r to perform the operation j in the product g;
Figure BDA00028022361900001013
represents the cost per unit time for the robot r to perform operation k in product g;
Figure BDA00028022361900001014
a set unit time cost indicating that the robot r is ready to perform an operation k in the product g, the operation k being performed immediately after an operation j in the product g;
Figure BDA00028022361900001015
indicating that robot r is ready to execute a product
Figure BDA00028022361900001016
The set unit time cost of operation k in (1), operation k being performed immediately after operation j in product g;
clrepresents the cost per unit time during the operation of the ith workstation;
Figure BDA00028022361900001017
representing the recycling value of the component i in the product g;
Tlrepresents the cycle time of the l workstation;
Figure BDA00028022361900001018
representing the failure probability of the robot executing operation k in the product g immediately after operation j in the product g;
Figure BDA00028022361900001019
indicating that the robot performs the product immediately after j is operated in the product g
Figure BDA00028022361900001020
The failure probability of operation k;
theta represents the probability of failure cost of the disassembly process, and the minimum probability that the requirement is met, namely the failure cost of the disassembly process is less than or equal to the maximum failure cost;
Figure BDA0002802236190000112
represents the maximum failure cost of the disassembly process;
the decision variables are respectively:
Figure BDA0002802236190000113
indicates that if operation j in product g is performed by robot r, then
Figure BDA0002802236190000114
Otherwise
Figure BDA0002802236190000115
Figure BDA0002802236190000116
Indicates that if operation k in product g is performed by robot r, then
Figure BDA0002802236190000117
Otherwise
Figure BDA0002802236190000118
Figure BDA0002802236190000119
Indicating that if operation k in product g is performed by robot r immediately after operation j in product g, then
Figure BDA00028022361900001110
Otherwise
Figure BDA00028022361900001111
Figure BDA00028022361900001112
Indicates if the product is
Figure BDA00028022361900001113
Operation k in (1) is performed by robot r immediately after operation j in product g, then
Figure BDA00028022361900001114
Otherwise
Figure BDA00028022361900001115
Figure BDA00028022361900001116
Indicating that if an operation j in a product g is performed by the robot r and assigned to the ith workstation
Figure BDA00028022361900001117
Otherwise
Figure BDA00028022361900001118
Figure BDA00028022361900001119
Indicating that if an operation k in a product g is performed by the robot r and assigned to the mth workstation
Figure BDA00028022361900001120
Otherwise
Figure BDA00028022361900001121
ulIndicates if the ith station, u, is usedl1 is ═ 1; otherwise ul=0;
The mathematical model established with the goals of disassembly profit, balancing rate maximization and energy consumption minimization is as follows:
Figure BDA0002802236190000111
Figure BDA0002802236190000121
Figure BDA0002802236190000122
Figure BDA0002802236190000123
Figure BDA0002802236190000124
Figure BDA0002802236190000125
Figure BDA0002802236190000126
Figure BDA0002802236190000127
Figure BDA0002802236190000128
Figure BDA0002802236190000131
Figure BDA0002802236190000132
Figure BDA0002802236190000133
wherein the objective function (1) is to maximize the expected disassembly margin, which is equal to the total disassembly revenue minus the total disassembly cost, which includes the total cost of the disassembly operation, the total set-up cost of adjacent operations in the same product, the total set-up cost of adjacent operations in a different product, and the cost of the workstation; the objective function (2) is to minimize the expected energy consumption, including the total energy consumption of the disassembly operation, the total set energy consumption of the adjacent operation in the same product, the total set energy consumption of the adjacent operation in different products, and the energy consumption of the workstation; the objective function (3) is to maximize the desired balance rate, i.e., the average of the total work time divided by the total cycle time of the workstation on;
equations (4) to (12) are constraints:
the constraint (4) is to ensure that at least one disassembly operation is performed per product, except for a dummy operation; the constraint (5) is that each disassembling operation in the multi-product can be executed at most once; the constraint (6) is that each disassembly operation in the multi-product can be only distributed to one work station and executed by one robot; the constraint (7) is that each open workstation is assigned at least one operation; the constraint condition (8) is to ensure that the feasible disassembly sequence of the multiple products meets the preferential constraint; the constraint (9) is to ensure that the feasible disassembly sequence of the multiple products meets the conflict constraint; the constraint (10) indicates that the operating time of all workstations used does not exceed the disassembly line total cycle time; the constraint condition (11) is that the probability that the failure cost of the disassembly process is less than or equal to the maximum failure cost is greater than a preset value theta > 0; the constraints (12) give the range of decision variables.
S2, initializing the population: randomly generating a plurality of solutions in a search space, initializing individuals which do not meet the priority and conflict constraint conditions in the solutions by adopting an adjusting method to form an initial population, and specifically comprising the following steps:
s201, randomly generating a solution pi;
the specific process of decoding pi is as follows: using a three-vector representation of a solution, i.e. pi-pi (pi)1,π2,π3) In which pi1=(o1,o2,…,oJ) Is an integer string representing the sequence of disassembly operations, ojRepresenting the dismounting operation of the J bit, wherein J is the total operation number of a plurality of products to be dismounted; pi2=(x1,x2,…,xJ) Is an integer string representing a binary vector containing J binary values; if xjIf 1, then pi is executed1Operation o inj(ii) a Otherwise, o is not performedj;π3=(r1,r2,…,rJ) Is an integer string representing a robot-type sequence, wherein each element is an integer between 1 and R, corresponding to the type of robot performing a disassembly operation;
s202, adjusting pi according to the priority matrix P1In order to satisfy the priority relationship between the multi-product disassembly operations: traverse the whole disassembly operation sequence pi1If disassembly operation ojAt okThen and P in the priority matrix P jk1, then ojAnd okExchanging, simultaneously rjAnd rkExchanging, otherwise, continuously traversing the next operation;
s203: if pi1In (a) detaching operationjIs the initial disassembly operation of the product, pi2Binary value x injX is 0jResetting to 1, otherwise, entering step S204;
s204, adjusting pi according to the priority matrix P2To satisfy the sameA priority relationship between product removal operations: traverse the whole binary vector pi2If is pi2Binary value x ink1, P in the priority matrix P jk1, then pi2Binary value x injIs set to 1;
s205, adjusting pi according to the priority matrix P2Eliminating the conflict relationship between the disassembling operations of the same product: traverse the whole binary vector pi2If is pi2Binary value x ink1, P in the priority matrix PjkWhen is equal to-1, then2Binary value x inkSet to 0;
s206, taking all individuals meeting the priority and conflict constraint conditions as an initial population;
s3, decoding: distributing the disassembly operation to be executed to each work station, determining the sequence of the disassembly operation on each work station, and distributing the robot to each work station to execute the disassembly operation;
the decoding process is to assign the disassembly operation to be performed to each workstation, determine the sequence of the disassembly operation on each workstation, and assign the robot to each workstation to perform the disassembly operation. If the detachment operation j assigned to the i-th workstation is performed by the robot r, the robot r is assigned to the i-th workstation. Furthermore, the cycle time constraints of the workstation need to be met when dispensing disassembly operations. The decoding process is shown in fig. 8, and the specific decoding steps are as follows:
s301, setting k to be 1;
s302, determining whether to execute k; if pi2Binary value x ink1 and kfWherein k isfThe first disassembly operation in the entire disassembly sequence, a new workstation is opened, l is set to 1, and the operating time T of the ith workstation is setldSet to 0, set of disassembly operations C in the l-th workstationlSet to ζ, where ζ represents an empty set, and the set of robots R of the l-th workstationlSet to r, where r represents the type of robot performing the detach operation k, if xk1 and k ≠ kfThen to holdDetach operation k and go to step 302; otherwise, go to S308;
s303, setting the current operation time T of the first workstationld=Tld+tjkrWherein t isjkrRepresents a set time for which the detaching operation k is performed by the robot r immediately after the detaching operation j, and determines the l-th station cycle time TlWith the current operating time T of the ith workstationldIf T isld>TlGo to S304, otherwise go to S305;
s304, opening a new workstation, and setting l to l +1, Cl=ζ,Rl=r,Tld=tjkr
S305, setting Tld=Tld+tkrWherein t iskrRepresents the detachment time of the robot r for performing the detachment operation k, and determines TlAnd TldIf T isld>TlGo to S306, otherwise go to S307;
s306, opening a new workstation, and setting l to l +1, Cl=ζ,RlR and Tld=tjkr+tkr
S307, distributing the disassembling operation k to the ith work station, and updating ClAnd Rl,Cl=Cl∪k,Rl=Rl∩r;
S308, if k ≠ J, setting k ≠ k +1, and repeating steps S302-S307; otherwise, outputting a feasible solution;
s4, evaluating the objective function value of each feasible solution obtained in the step S3 by adopting a random simulation method of Monte Carlo simulation;
the invention designs a random simulation method based on Monte Carlo simulation. Let pi be a solution and Γ denote that the number of samples is equal to 10. The objective function value and feasibility of pi were evaluated using the following procedure. It should be noted that the objective function f is1And f3Are to find their maximum value, so the objective function f to be obtained1And f3Respectively multiplied by-1 in order to compare the quality of the solution.
Step S401: set up f1(π):=0,f2(π):=0,f3(π):=0,fc(π):=0,Γ:=10;
Step S402: generating delta samples, each sample pδIs generated according to a normal distribution of the set-up and set-up times, δ ═ 1,2, …, Γ;
step S403: calculating the disassembly profit f(π), energy consumption f(π) balance ratio f(π) and cost of failed disassembly f(pi), where δ ═ 1,2, …, Γ;
step S404: cost of failure to disassemble f for all samples(π) in ascending order, δ' being equal to
Figure BDA0002802236190000151
If it is not
Figure BDA0002802236190000152
N is feasible, fc(π):=fcδ′(π) and then goes to step S405. Otherwise, π is not feasible, f1(π)、f2(π) and f3(π) are respectively equal to a larger integer, and proceed to step S406.
Step S405: expected profit of disassembly f1(π), energy consumption f2(π) and equilibrium ratio f3(π) is approximated as:
Figure BDA0002802236190000153
Figure BDA0002802236190000154
Figure BDA0002802236190000155
step S406: return f1(π)、f2(π) and f3(π) as said step S1, an approximation of the objective function (1), the objective function (2) and the objective function (3).
S5, calculating by adopting a PIMBO algorithm (a Pareto improved multi-objective brainstorm optimization algorithm) to obtain a non-dominated solution set, storing the non-dominated solution set in an external file, and evolving the external file, wherein the method specifically comprises the following steps:
s501, clustering operation based on Pareto: sequencing and clustering each feasible solution (individual) obtained by S4 according to a Pareto rule, and ensuring that individuals of the same grade are classified into the same class; the specific clustering operation is as follows:
step S5011: initializing two sets δ and subclass Cp. Grading each individual obtained in the step S4 according to a Pareto rule; δ is set as the population, C, obtained in step S4pSetting an empty set, setting an integer gamma to represent the rank of an individual, and setting gamma to 1;
step S5012: all individuals with a grade of gamma are selected from delta to be added to CpAnd removing these individuals from δ;
step S5013: handle CpAdd to a class cluster C and select CpAs the subclass CpClass center of (1); then C is mixedpSetting as an empty set, and adding 1 to gamma;
step S5014: if delta is not an empty set, repeating the steps S5012-S5013, otherwise, ending the process;
s502, new individual generation operation: generating new individuals by performing cross operation and mutation operation on the individuals of the current population, and storing the new individuals into a new individual set;
step S5021: randomly generating a value of [0,1]
Figure BDA0002802236190000156
If it is not
Figure BDA0002802236190000157
Is less than pcWherein p iscIs the probability of replacing the class center, randomly selects a class center and generates a new individual to replace it; otherwise, turning to the step S5022;
step S5022: initializing a new individual set X, randomly generating a value of [0,1]
Figure BDA0002802236190000158
If it is not
Figure BDA0002802236190000159
Is less than pgWherein p isgIs the probability of generating a new individual from a subclass, randomly selecting a class from the class cluster C, and randomly generating a value of [0,1]
Figure BDA00028022361900001510
If it is not
Figure BDA00028022361900001511
Is less than poWherein p isoGenerating a new individual according to the probability of class centers of subclasses, selecting the class center of the class and the class center of a first class to execute a position-based crossover operator (PBX) to generate a new individual, executing a position-based mutation operator (PBM) on the new individual, adjusting the new individual to a feasible solution through S3, evaluating through S4, and storing to X;
otherwise, randomly selecting other individuals of the class and the class center of the first class to execute a position-based crossover operator (PBX) to generate a new individual, executing a position-based mutation operator (PBM) on the new individual, adjusting the new individual to a feasible solution through S3, evaluating through S4, and storing to X, otherwise, turning to the step 3;
step S5023: randomly selecting two classes from the class cluster C, and randomly generating a value of [0,1]
Figure BDA00028022361900001512
If it is not
Figure BDA0002802236190000161
Is less than ptWherein p istIs the probability of combining the class centers of the two subclasses to generate a new individual. Class-centric execution based on selecting the two classes separatelyGenerating a new individual by a position crossover operator (PBX), executing a position-based mutation operator (PBM) on the new individual, adjusting the new individual to a feasible solution by S3, evaluating by S4, and storing to X, or randomly selecting other individuals of the two classes to execute the position-based crossover operator (PBX) to generate a new individual, executing the position-based mutation operator (PBM) on the new individual, adjusting the new individual to a feasible solution by S3, evaluating by S4, and storing to X;
step S5024: and ending the process until the number of the individuals in the X reaches the population number.
In order to increase the diversity of the solution, the cross operator (PBX) adopted in step S5023 is implemented by the following method:
step (1): generate a [1, J]Random integer of
Figure BDA0002802236190000162
And initialize a new individual pinew=(πnew 1new 2new 3);
Step (2): random generation
Figure BDA0002802236190000163
A
1, J]Then a parent pi1In (1)1 1Wherein the elements at the positions of the integers are stored to pinew 1Elements in the same position, likewise πnew 2And pinew 3Performing the same operation;
and (3): pinew 1The elements in other positions being pi-replaced by another parent2In (1)2 1Neutralization of pinew 1Wherein the existing elements are orderly replaced by different elements, and the same pinew 2And pinew 3The same operation is performed.
For example, as shown in FIG. 9, π1And pi2Two parents that are considered to be location-based crossover operations. From pi1In which several positions are randomly selected. To generate pi1New individual of (2), pi1Are used as parents and reference individuals. Pi1Several positions selected in the sequence remain unchanged, and other positions are sequentially passed through pi2The same sequence map of (2). In FIG. 9, π1The selected ones are operations 2, 16, 3, 12, 13. Keeping these positions unchanged, and dividing {1}, {14, 15}, {4, 11}, {17, 18, 5} and {19, 6, 7, 9, 10, 8} by pi2The same sequence in (1) is mapped in sequence. Then according to pi1Pair pi2And pi3The same operation is carried out on the same position to obtain a new individual pinew
Meanwhile, the mutation operator (PBM) based on position adopted in step S5023 is realized by the following method:
let pi be (pi)123) Is an individual in need of mutation and is,
Figure BDA0002802236190000167
and p is the interval [0,1] respectively]Random number and interval [0,3 ] of (1)]Is a random integer of (1). η is the probability of an individual performing a mutation.
Step 1: generating random numbers
Figure BDA0002802236190000164
If it is not
Figure BDA0002802236190000165
Ending the flow; otherwise, turning to the step 2;
step 2: generating a random number p, and if p is 0, randomly generating 2 [1, J]Respectively, then exchange pi separately1,π2,π3Elements at the meso- μ position and the γ position; if p is 1, randomly generating 1 [1, J]Then pi is2The element corresponding to this integer position in the sequence is changed to another binary number; if p is 2, randomly generating 1 [1, J]Then pi is3The element corresponding to the integer position becomes another robot type; i.e. q is a random binary number, if the element value is 1, when q is 0,1To 2, when q is 1,1 becomes 3; if the element value is 2, when q is 0, 2 becomes 1, and when q is 1,2 becomes 3; if the element value is 3, when q is 0,3 becomes 1, and when q is 1, 3 becomes 2; if p is 3, the operations when p is 0, p is 1 and p is 2 are sequentially performed on pi.
For example, in FIG. 10, if
Figure BDA0002802236190000166
p=0,π1Two positions in (2) and (13). Keeping {1}, {14, 15, 16, 3, 4, 11, 12, 17, 18, 5} and {19, 6, 7, 9, 10, 8} unchanged, and exchanging {2} and {13 }. Then according to pi1Pair pi2And pi3The same operations are performed at the same locations in the same. If p is 1, only pi in pi is adjusted2,π2Is binary value 0, holds pi2And changes 0 to a binary 1. If p is 2, only modifying pi in pi3,π3Is r1Robot, holding pi3Is unchanged at other positions in (1), r1The robot is changed to another robot type. q is a binary number, and when q is 0,1 becomes 2, and when q is 1,1 becomes 3. If p is 3, all the operations described above need to be performed.
S503, selecting operation: comparing the mixed population composed of the new individual set and the current population obtained by the calculation in the step S502 through a Pareto rule to obtain a non-dominated solution set, storing the non-dominated solution set in an external archive, and evolving the external archive, wherein the method specifically comprises the following steps:
the objective function is denoted max f1(π)、min f2(π) and max f3(π), where π ∈ Ω, π is the feasible solution, Ω is the set of all feasible solutions. For the
Figure BDA0002802236190000172
If it is not
Figure BDA0002802236190000173
Satisfy fi1)≤fi2) And is and
Figure BDA0002802236190000174
satisfy fi1)<fi2) Then pi1Dominating pi2Is shown as
Figure BDA0002802236190000177
If it is not
Figure BDA0002802236190000175
And
Figure BDA0002802236190000176
then pi is the Pareto optimal solution and S is called Pareto solution set, i.e. the non-dominated solution set.
An external archive is then constructed to store the obtained non-dominated solution. First, the external archive is updated based on Pareto rules with all newly generated solutions. After each iteration is completed, the external archive is updated based on Pareto rules by using the current population to ensure that all non-dominant solutions in the external archive are always current global non-dominant solutions.
S6 stop criteria: the number of iterations is determined using a fitness value, the initial fitness value being equal to 0, and when evaluating a new individual, the fitness value is increased by 1 until the current fitness value fvReach the preset total adaptability value ftvStopping iteration of the algorithm, and outputting a non-dominated solution set in an external file; otherwise, S5 is repeated.
Specific experimental examples
In order to test the performance of the random multi-product robot disassembly line balance control method based on the Pareto improved multi-objective brainstorming optimization algorithm (PIMBO) in the aspect of processing the multi-objective multi-product robot disassembly line balance problem (MMRDP), a group of waste (EOL) products is adopted for carrying out experiments. In addition, MDGWO and NSGAII (i.e., the multi-objective discrete grayish optimization algorithm and the non-dominated ranking genetic algorithm II) were selected as comparison algorithms.
1. Test case generation
The actual need to dismantle used and old (EOL) product case that we adoptedFor example. They are as follows: ball-point pen (BP), Hammer Drill (HD), Washing Machine (WM), wireless motor (RS). One BP contains 15 components, which requires 13 disassembly operations to disassemble it. One HD comprised 62 components, with 46 disassembly operations. One WM comprises 15 components and 13 disassembly operations are used to disassemble it. There are 29 modules in one RS, with 30 disassembly operations. HD. The schematic diagrams of WM and RS are shown in FIGS. 11-13. The AND/OR diagram is shown in FIGS. 14-16. We generated 10 test cases using BP, HD, WM and RS, each containing multiple disassembled products. The corresponding relationship is shown in Table 1, wherein
Figure BDA0002802236190000178
The maximum failure cost of the corresponding disassembly process for each instance is indicated.
TABLE 1 test examples of BP, HD, WM and RS
Figure BDA0002802236190000171
2. Performance index
To analyze the performance of the Pareto-based modified multi-objective brainstorm optimization algorithm (PIMBO) of the present invention and its peer algorithms (MDGWO and NSGAII), we used three indices to compare their results, namely the C-metric (solution coverage), IGD-metric (Inverted Generational Distance) and hyper-volume-metric.
The C-metric may measure the dominance percentage of both solution sets.
The purpose of the IGD-metric is to compute the average distance of the resulting solution to the nearest solution in the optimal solution set. The smaller the IGD of the solution set, the better the approximability and the distributivity. Note that we cannot obtain in advance the optimal solution set for the problem we are considering. Therefore, all solution sets obtained by the Pareto-improved multi-objective brainstorm optimization algorithm (PIMBO) and the peer-to-peer algorithm (MDGWO and NSGAII) of the invention are combined, and then all the obtained non-dominant solutions are used as the optimal solution set. In addition, the objective function values of all solutions are normalized to [0,1], and then the IGD value is calculated.
The hyper-volume-metric is essentially the computation of the volume made up of the resulting solution and the reference point in all solution sets containing the three largest target values. The larger the super-volume of the solution set, the better the approximability and the distributivity. When calculating the hyper-volume, the objective function values of all solutions are normalized to [0,1], and the reference point is set to (1,1, 1).
For each instance, PIMBO and its peer algorithm were performed 20 times and the average of the three metrics was calculated to evaluate their performance. In addition, we analyzed the experimental results using a single-tailed t-test with a degree of freedom of 38 and a significance level of 0.05. The results are indicated by the symbols "+", "-" or "-". The "+" symbol indicates that PIMBO is significantly better than its peer algorithm, "-" indicates that PIMBO is significantly worse than its peer algorithm, and "-" indicates that PIMBO is statistically equivalent to its peer algorithm.
3. Parameter setting
The parameter setting of the Pareto improved multi-target brainstorming optimization algorithm (PIMBO) is as follows: p is a radical ofc=0.0,pg=0.8,po=0.5,pt0.4, wherein pcIs the probability of replacing class centers, pgIs the probability, p, of generating a new individual from a subclassoIs the probability, p, of generating a new individual based on the class center of the subclasstIs the probability of combining the class centers of the two subclasses to generate a new individual. The parameter settings for all algorithms are as follows: the population size Q is 120, the variation probability eta is 0.3, and the total adaptive value ftvIs 2000. The parameters involved in the objective function are set as: c. Cl=0.03,el=0.05,TlWhen 50, theta is 0.90, and R is 3. All algorithms were run 20 times independently and the average run-time comparison across 10 test cases of the design is shown in table 2. From this we can conclude that PIMBO can find an effective solution set in less time.
TABLE 2 average run-time comparison of the three algorithms over 10 test cases
Figure BDA0002802236190000181
4. Case analysis
From Table 3, PIMBO provides 10 non-dominant solutions for solving test example 2(BP, HD), where f1、f2、f3、fcAnd rsRespectively representing total profit, energy consumption, balance rate, failure cost and robot type set assigned to the open workstations. It should be noted that BP has 13 disassembly operations, while HD has 46 disassembly operations. Thus, the disassembly operations 1-13 in these solutions represent the disassembly operation of BP, and 14-59 represent the disassembly operation of HD. For example, in the first solution, the disassembly operation 1 is from BP, and the disassembly operations 14, 15, 16, 18, 22, 29, 24, 31, and 33 are from HD. The disassembling operations 14, 15, 1 and 16 are performed by r of the first station2、r1And r3The robot performing the dismantling operations 18, 22 and 29 by r of the second station3The robot performs the disassembling operations 24, 31 and 33 by r of the third station1And r3And (4) executing by a robot. The total profit was 827.66, the energy consumption was 976.31, the balance was 0.8395, and the failure cost was 48.95. Thus, such a solution to the problem under study is feasible.
Table 3 results of example 2 disassembly sequence by PIMBO algorithm
Figure BDA0002802236190000191
5. Results of the experiment
Three algorithms were used to process 10 test cases, and their experimental results were finally analyzed using C-metric, IGD-metric and hyper-volume-metric.
The C-metrics for the five algorithms are shown in table 4, where A, B and E are used to represent PIMBO, MDGWO and NSGAII, respectively, in table 4. From these experimental results, it can be seen that since C (a, B) and C (a, E) are greater than C (B, a) and C (E, a), respectively, PIMBO can yield a majority of solutions that are superior to those of MDGWO and NSGAII. The average values of C (A, B), C (B, A), C (A, E) and C (E, A) were 0.8150, 0.0604, 0.9136 and 0.0202, respectively. These results demonstrate that PIMBO performs better than MDGWO and NSGAII in terms of treatment-related problems.
TABLE 4 comparison of results of C-metric experiments for three algorithms
Figure BDA0002802236190000192
The IGD indicator results for the three algorithms are shown in table 5. From these results, we can conclude that PIMBO is better than MDGWO and NSGAII in solving the relevant problems, because the IGD value of PIMBO is smaller than MDGWO and NSGAII in all cases. The average IGD values for the three algorithms over 10 instances were 0.1077, 0.2084, and 0.2457, respectively. The result shows that PIMBO can find a non-dominated solution set with good convergence and diversity.
TABLE 5 IGD-metrology experimental result comparison of the three algorithms
Figure BDA0002802236190000201
The hypervolume values for the three algorithms are shown in table 6. The results show that PIMBO gives a higher value of the hyper-volume than NSGAII in all cases. And the PIMBO obtained the over volume value over 9 examples was greater than the MDGWO. The mean values of the hypervolume values of the three algorithms over 10 examples were 0.5349, 0.4568 and 0.4216, respectively. The results show that the solution set obtained by the PIMBO method has better approximability and more uniform distribution than MDGWO and NSGAII.
TABLE 6 comparison of results of the hyper-volumetric-metric experiments for the three algorithms
Figure BDA0002802236190000202
To show the experimental results more clearly and intuitively, box plots of the experimental results of the three algorithms were plotted on 10 examples with IGD-metric and hyper-volume-metric as shown in fig. 17 and 18. In fig. 18, "HV" represents an excess volume. From the experimental results of fig. 17 and 18, it can be seen that the IGD and HV values of PIMBO are less and greater than MDGWO and NSGAII, respectively, in all the examples, and therefore it can be concluded that PIMBO has better performance than MDGWO and NSGAII in dealing with the problem posed.
Therefore, it can be seen that the PIMBO of the invention establishes a corresponding mathematical model in an uncertain environment with a multi-objective multi-product robot disassembly line balance problem (MMRDP) with the objectives of maximizing profit, maximizing balance rate and minimizing energy consumption. Then, a PIMBO algorithm combined with random simulation is designed for solving. Through comparative experiments, it can be seen that the method provided by the invention shows good performance in solving the problem. An effective method is provided for MMPDP considering uncertainty and multi-objective optimization.

Claims (6)

1. A random multi-product robot disassembly line balance control method comprises the following steps:
s1, establishing a mathematical model aiming at dismantling profit, maximizing the balance rate and minimizing the energy consumption;
s2, initializing the population: randomly generating a plurality of solutions in a search space, and initializing individuals which do not meet the priority and conflict constraint conditions in the solutions by adopting an adjusting method to form an initial population;
s3, decoding the initial population: distributing the disassembly operation to be executed to each work station, determining the sequence of the disassembly operation on each work station, and distributing the robot to each work station to execute the disassembly operation;
s4, evaluating the objective function value of each feasible solution obtained in the step S3;
s5, calculating by adopting a PIMBO algorithm to obtain a non-dominated solution set, storing the non-dominated solution set in an external file, and evolving the external file;
s6, stop criterion: determining iteration times by using the fitness value, and judging the current fitness value fvWhether a preset total fitness value f is reachedtvThe initial fitness value is equal to 0, and when evaluating a new individual, the fitness value is increased by 1 until the current fitness value fvReach the preset total adaptability value ftvStopping iteration of the algorithm, and outputting a non-dominated solution set in an external file; otherwise, repeating S5;
the step S1 specifically includes the following steps:
s101: establishing a priority matrix AND a disassembly association matrix for the multi-product needing disassembly based on the AND/OR graph of the multi-product as follows:
(1) priority matrix P ═ Pjk]The priority and conflict relationship for two teardown operations is expressed as follows:
Figure FDA0003300742630000011
(2) the disassembly association matrix D ═ Dij]: for representing the relationship between the assembly and the disassembly operation, defined as follows:
Figure FDA0003300742630000012
where i is the component index, i ∈ {1,2, …, NgIn which N isgRepresenting the number of components in product g;
j, k is the operation index, J, k ∈ {0,1, …, JgIn which JgRepresenting operands in product g, 0 is a virtual operation;
pjkis one element in the jth row and kth column of the priority matrix P;
dijto detach one element in the ith row and jth column of the incidence matrix D;
s102: establishing a mathematical model aiming at dismantling profit, balancing rate maximization and energy consumption minimization:
Figure FDA0003300742630000021
Figure FDA0003300742630000022
Figure FDA0003300742630000023
Figure FDA0003300742630000024
Figure FDA0003300742630000025
Figure FDA0003300742630000026
Figure FDA0003300742630000031
Figure FDA0003300742630000032
Figure FDA0003300742630000033
Figure FDA0003300742630000034
Figure FDA0003300742630000035
Figure FDA0003300742630000036
wherein, each symbol represents the following meanings:
g,
Figure FDA0003300742630000037
indicating the EOL product index, g,
Figure FDA0003300742630000038
wherein G represents the number of waste products;
i denotes the component index, i ∈ {1,2, …, NgIn which N isgRepresenting the number of components in product g;
j, k denotes an operation index, J, k ∈ {0,1, …, JgIn which JgRepresenting operands in product g, 0 is a virtual operation;
l, M represents the workstation index, l, M ∈ {1,2, …, M }, where M is the number of workstations;
r represents the index of robot type, R ∈ {1,2, …, R }, where R represents the number of robot types;
Figure FDA0003300742630000039
represents the detachment time for the robot r to perform operation j in the product g;
Figure FDA00033007426300000310
represents the detachment time for the robot r to perform operation k in the product g;
Figure FDA00033007426300000311
a set time indicating that the robot r is ready to perform an operation k in the product g, the operation k being performed immediately after an operation j in the product g;
Figure FDA0003300742630000041
indicating that robot r is ready to execute a product
Figure FDA0003300742630000042
The set time of operation k in (1), operation k being performed immediately after operation j in product g;
Figure FDA0003300742630000043
represents the energy consumption per unit time of the robot r for executing the operation j in the product g;
Figure FDA0003300742630000044
a set energy consumption per unit time indicating that the robot r is ready to perform an operation k in the product g, the operation k being performed immediately after an operation j in the product g;
Figure FDA0003300742630000045
indicating that robot r is ready to execute a product
Figure FDA0003300742630000046
Setting energy consumption per unit time of operation k in (1), which is performed immediately after operation j in product g;
elrepresenting the energy consumption per unit time during the operation of the ith workstation;
Figure FDA0003300742630000047
represents the cost per unit time for the robot r to perform the operation j in the product g;
Figure FDA0003300742630000048
represents the cost per unit time for the robot r to perform operation k in product g;
Figure FDA0003300742630000049
indicating that robot r is ready to perform operation k in product gSetting a unit time cost, wherein the operation k is executed immediately after the operation j in the product g;
Figure FDA00033007426300000410
indicating that robot r is ready to execute a product
Figure FDA00033007426300000411
The set unit time cost of operation k in (1), operation k being performed immediately after operation j in product g;
clrepresents the cost per unit time during the operation of the ith workstation;
Figure FDA00033007426300000412
representing the recycling value of the component i in the product g;
Tlrepresents the cycle time of the l workstation;
Figure FDA00033007426300000413
representing the failure probability of the robot executing operation k in the product g immediately after operation j in the product g;
Figure FDA00033007426300000414
indicating that the robot performs the product immediately after j is operated in the product g
Figure FDA00033007426300000415
The failure probability of operation k;
theta represents the probability of failure cost of the disassembly process, and the minimum probability that the requirement is met, namely the failure cost of the disassembly process is less than or equal to the maximum failure cost;
Figure FDA00033007426300000416
show mechanismMaximum failure cost of the discharge process;
the decision variables are respectively:
Figure FDA00033007426300000417
indicates that if operation j in product g is performed by robot r, then
Figure FDA00033007426300000418
Otherwise
Figure FDA00033007426300000419
Figure FDA0003300742630000051
Indicates that if operation k in product g is performed by robot r, then
Figure FDA0003300742630000052
Otherwise
Figure FDA0003300742630000053
Figure FDA0003300742630000054
Indicating that if operation k in product g is performed by robot r immediately after operation j in product g, then
Figure FDA0003300742630000055
Otherwise
Figure FDA0003300742630000056
Figure FDA0003300742630000057
Indicates if the product is
Figure FDA0003300742630000058
Operation k in (1) is performed by robot r immediately after operation j in product g, then
Figure FDA0003300742630000059
Otherwise
Figure FDA00033007426300000510
Figure FDA00033007426300000511
Indicating that if an operation j in a product g is performed by the robot r and assigned to the ith workstation
Figure FDA00033007426300000512
Otherwise
Figure FDA00033007426300000513
Figure FDA00033007426300000514
Indicating that if an operation k in a product g is performed by the robot r and assigned to the mth workstation
Figure FDA00033007426300000515
Otherwise
Figure FDA00033007426300000516
ulIndicates if the ith station, u, is usedl1 is ═ 1; otherwise ul=0;
Wherein the objective function (1) is to maximize the expected disassembly margin, which is equal to the total disassembly revenue minus the total disassembly cost, which includes the total cost of the disassembly operation, the total set-up cost of adjacent operations in the same product, the total set-up cost of adjacent operations in a different product, and the cost of the workstation; the objective function (2) is to minimize the expected energy consumption, including the total energy consumption of the disassembly operation, the total set energy consumption of the adjacent operation in the same product, the total set energy consumption of the adjacent operation in different products, and the energy consumption of the workstation; the objective function (3) is to maximize the desired balance rate, i.e., the average of the total work time divided by the total cycle time of the workstation on;
equations (4) to (12) are constraints:
the constraint (4) is to ensure that at least one disassembly operation is performed per product, except for a dummy operation; the constraint (5) is that each disassembling operation in the multi-product can be executed at most once; the constraint (6) is that each disassembly operation in the multi-product can be only distributed to one work station and executed by one robot; the constraint (7) is that each open workstation is assigned at least one operation; the constraint condition (8) is to ensure that the feasible disassembly sequence of the multiple products meets the preferential constraint; the constraint (9) is to ensure that the feasible disassembly sequence of the multiple products meets the conflict constraint; the constraint (10) indicates that the operating time of all workstations used does not exceed the disassembly line total cycle time; (11) the probability that the failure cost of the disassembly process is required to be less than or equal to the maximum failure cost is greater than a preset value theta > 0; the constraints (12) give the range of decision variables.
2. The method for controlling balance of the disassembly line of the random multi-product robot of claim 1, wherein the initialization of the S2 population comprises the following steps:
s201, randomly generating a solution pi;
s202, adjusting pi according to the priority matrix P1In order to satisfy the priority relationship between the multi-product disassembly operations: traverse the whole disassembly operation sequence pi1If disassembly operation ojAt okThen and P in the priority matrix Pjk1, then ojAnd okExchanging, simultaneously rjAnd rkExchanging, otherwise, continuously traversing the next operation;
s203, if |)1In (a) detaching operationjIs the initial disassembly operation of the product, pi2Binary value x injX is 0jResetting to 1, otherwise, entering step S204;
s204, adjusting pi according to the priority matrix P2To satisfy the precedence relationship between the same product disassembly operation: traverse the whole binary vector pi2If is pi2Binary value x ink1, P in the priority matrix Pjk1, then pi2Binary value x injIs set to 1;
s205, adjusting pi according to the priority matrix P2Eliminating the conflict relationship between the disassembling operations of the same product: traverse the whole binary vector pi2If is pi2Binary value x ink1, P in the priority matrix PjkWhen is equal to-1, then2Binary value x inkSet to 0;
and S206, taking all the individuals meeting the priority and conflict constraint conditions as an initial population.
3. The method for controlling balance of disassembly lines of a random multi-product robot as claimed in claim 2, wherein the specific process of decoding pi in the step S201 is: using a three-vector representation of a solution, i.e. pi-pi (pi)1,π2,π3) In which pi1=(o1,o2,…,oJ) Is an integer string representing a sequence of teardown operations, where ojRepresenting the dismounting operation of the J bit, wherein J is the total operation number of a plurality of products to be dismounted; pi2=(x1,x2,…,xJ) Is an integer string representing a binary vector containing J binary values; if xjIf 1, then pi is executed1Operation o inj(ii) a Otherwise, o is not performedj;π3=(r1,r2,…,rJ) Is an integer string representing a robot-type sequence in which each element is an integer between 1 and R, corresponding to the type of robot performing a disassembly operation.
4. The method for controlling balance of a random multi-product robot disassembly line of claim 1, wherein the step S3 comprises the following steps:
s301, setting a disassembling operation k to be 1;
s302, determining whether to execute a disassembling operation k; if pi2Binary value x ink1 and kfWherein k isfWhen the first disassembly operation in the whole disassembly sequence is performed, a new work station is opened, i is equal to 1, and the operation time T of the first work stationldSet to 0, set of disassembly operations C in the l-th workstationlSet to ζ, where ζ represents an empty set, and the set of robots R of the l-th workstationlSet to r, where r represents the type of robot performing the detach operation k, if xk1 and k ≠ kfIf yes, execute the detaching operation k and go to step 302; otherwise, go to S308;
s303, setting the current operation time T of the first workstationld=Tld+tjkrWherein t isjkrRepresents a set time for which the detaching operation k is performed by the robot r immediately after the detaching operation j, and determines the l-th station cycle time TlWith the current operating time T of the ith workstationldIf T isld>TlGo to S304, otherwise go to S305;
s304, opening a new workstation, and setting l to l +1, Cl=ζ,Rl=r,Tld=tjkr
S305, setting Tld=Tld+tkrWherein t iskrRepresents the disassembly time of the robot r for performing the disassembly operation k; and determining TlAnd TldIf T isld>TlGo to S306, otherwise go to S307;
s306, opening a new workstation, and setting l to l +1, Cl=ζ,RlR and Tld=tjkr+tkr
S307, distributing the disassembling operation k to the ith work station, and updating ClAnd Rl,Cl=Cl∪k,Rl=Rl∩r;
S308, if k ≠ J, setting k ≠ k +1, and repeating steps S302-S307; otherwise, a feasible solution is output.
5. The method as claimed in claim 1, wherein the step S4 adopts a random simulation method of monte carlo simulation to evaluate the objective function value of each feasible solution obtained in the step S3.
6. The method for controlling balance of the disassembly line of the random multi-product robot of claim 1, wherein the step S5 specifically comprises the following steps:
s501, performing Pareto-based clustering operation on each feasible solution obtained in the S4 to ensure that individuals of the same grade are classified into the same class;
s502, new individual generation operation: generating new individuals by executing a crossover operator and a mutation operator on the individuals of the current population, and storing the new individuals into a new individual set;
s503, selecting operation: and (4) comparing the objective function values of the mixed population consisting of the new individual set and the current population obtained by the calculation in the step (S502) through a Pareto rule to obtain a non-dominated solution set, storing the non-dominated solution set in an external archive, and evolving the external archive.
CN202011354473.3A 2020-11-27 2020-11-27 Random multi-product robot disassembly line balance control method Active CN112605988B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011354473.3A CN112605988B (en) 2020-11-27 2020-11-27 Random multi-product robot disassembly line balance control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011354473.3A CN112605988B (en) 2020-11-27 2020-11-27 Random multi-product robot disassembly line balance control method

Publications (2)

Publication Number Publication Date
CN112605988A CN112605988A (en) 2021-04-06
CN112605988B true CN112605988B (en) 2021-11-26

Family

ID=75225579

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011354473.3A Active CN112605988B (en) 2020-11-27 2020-11-27 Random multi-product robot disassembly line balance control method

Country Status (1)

Country Link
CN (1) CN112605988B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111860990B (en) * 2020-07-10 2023-09-15 辽宁石油化工大学 Multi-product disassembly-oriented multi-target disassembly sequence planning method
CN113191085B (en) * 2021-05-07 2022-06-07 西南交通大学 Setting method of incomplete disassembly line considering tool change energy consumption
CN113858196A (en) * 2021-09-26 2021-12-31 中国舰船研究设计中心 Robot disassembly sequence planning method considering robot collision avoidance track
CN114448911B (en) * 2022-01-28 2023-09-22 重庆邮电大学 Multi-objective-based industrial communication protocol test case priority ordering method

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102830621A (en) * 2012-09-05 2012-12-19 西南交通大学 Balance control method of multi-objective disassembly line
CN103707025B (en) * 2012-09-29 2016-06-08 鸿富锦精密工业(深圳)有限公司 Disassembling system
CN108038339A (en) * 2017-12-31 2018-05-15 武汉企鹅能源数据有限公司 A kind of multiple target mixed flow two-sided assembly line balance method based on migratory bird optimization algorithm
US10695902B2 (en) * 2018-06-04 2020-06-30 Express Scripts Strategic Development, Inc. Pharmacy order processing system
US11611266B2 (en) * 2018-12-18 2023-03-21 Ut-Battelle, Llc Automated recovery of rare earth permanent magnets from electric machines
CN109872046B (en) * 2019-01-21 2023-03-28 同济大学 Task allocation and production scheduling integrated optimization method for mixed-flow assembly line
CN111860990B (en) * 2020-07-10 2023-09-15 辽宁石油化工大学 Multi-product disassembly-oriented multi-target disassembly sequence planning method

Also Published As

Publication number Publication date
CN112605988A (en) 2021-04-06

Similar Documents

Publication Publication Date Title
CN112605988B (en) Random multi-product robot disassembly line balance control method
Wang et al. Modeling and optimization of multi-objective partial disassembly line balancing problem considering hazard and profit
Dai et al. Multi-objective optimization for energy-efficient flexible job shop scheduling problem with transportation constraints
Sun et al. Hybrid genetic algorithm with variable neighborhood search for flexible job shop scheduling problem in a machining system
Kim et al. A mathematical model and a genetic algorithm for two-sided assembly line balancing
Chen et al. A novel approach to production planning of flexible manufacturing systems using an efficient multi-objective genetic algorithm
CN101916404A (en) Multi-factory cooperative scheduling optimization method during equipment manufacturing
CN110580530A (en) Bilateral disassembly line setting method considering station constraint and energy consumption
CN106611230A (en) Critical process-combined genetic local search algorithm for solving flexible job-shop scheduling
Zhang et al. Multi-objective discrete grey wolf optimizer for solving stochastic multi-objective disassembly sequencing and line balancing problem
CN114282370B (en) Disassembly line setting method considering physical and mental loads of operator
CN112381343A (en) Flexible job shop scheduling method based on genetic-backbone particle swarm hybrid algorithm
Atabaki et al. Hybrid genetic algorithm and invasive weed optimization via priority based encoding for location-allocation decisions in a three-stage supply chain
CN112348314A (en) Distributed flexible workshop scheduling method and system with crane
CN113962091A (en) Balance design method for multi-person co-station incomplete disassembly line for processing mixed waste products
Chen et al. Process synthesis and design problems based on a global particle swarm optimization algorithm
CN116756918A (en) Fuzzy time-based lithium battery echelon utilization disassembly line multi-objective optimization mathematical model establishment and solving method
Wu et al. A cooperative coevolutionary algorithm with problem-specific knowledge for energy-efficient scheduling in seru system
Zhang et al. An improved multi-objective multi-verse optimization algorithm for multifunctional robotic parallel disassembly line balancing problems
CN111652392B (en) Low-carbon efficient disassembly line balance optimization method for waste mobile terminal
Rifai et al. Multi-operator hybrid genetic algorithm-simulated annealing for reentrant permutation flow-shop scheduling
CN116822217A (en) Man-machine double-resource constraint multi-target production scheduling method considering man-hour uncertainty
Yusof et al. Constraint-chromosome genetic algorithm for flexible manufacturing system machine-loading problem
Laili et al. Rotated neighbor learning-based auto-configured evolutionary algorithm
CN111625996B (en) Hierarchical parallel multi-station assembly sequence planning method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant