# Assembly Sequence Planning Based on Hierarchical Model

Authors: Chunxi Li; Wenjun Hou
Journal: Wireless Communications and Mobile Computing
 (2022)

---

## Abstract

With the rapid development of intelligent manufacturing technology and ultraprecision machining, assembly technology has attracted more and more attention. Assembly sequence is an important part of assembly process planning. However, assembly sequence is affected by many complex factors, such as the time required to assemble products, the geometric feasibility of assembly sequence, and other factors (tool replacement times and assembly direction change), so it is very challenging. In this paper, an assembly information model based on geometric features of parts is proposed. The model obtains the hierarchical information of the part through the segmentation and feature reconstruction of the part. Based on the influence of the contact surface between parts on the feasible motion domain and assembly domain, the assembly constraint relationship model is established. The objective function is constructed by changing the assembly direction, changing the assembly tools, and evaluating the assembly fit type. The geometrically feasible assembly sequence is optimized to obtain the optimal assembly sequence under the existing conditions. Taking a block, a secondary reducer spindle, and a cylinder as examples, the effectiveness of the method is verified.


---

## Body

## 1. Introduction

Assembly is the key link of product manufacturing, the last step of the product manufacturing cycle. The final function of the product is directly related to assembly quality. According to a survey by Boothroyd, assembly time accounts for 40%-60% of the total workload of product manufacturing, as assembly work requires much manual labor, while assembly accounts for 20%-70% of the total production workload [1]. The generation of assembly sequence plan (ASP) is considered an essential activity in the production stage because it can affect the layout of the production line and provide basic information on auxiliary fixtures [2]. An efficient, viable ASP can minimize the assembly lead time and cost by optimizing the tool travels and the number of changes in assembly directions [3, 4].Regardless of the multiple functionalities offered by the current CAD/CAM environments, the generation and the simulation of ASP/DSP remain an issue [5]. The planning process of assembly sequence is regarded as an NP-hard problem. A product composed of n parts with feasible assembly sequences is n! [6]. In the early 1960s, researchers looked for feasible assembly sequences in products through the contact relationship between parts [7]. Then, the contact relationship is expressed by different graphs to find all potentially feasible sequences of products [8]. The above method can solve the assembly sequence planning problem to a certain extent, but it needs to consider the constraint relationship between parts. Excessive manual participation leads to the decrease of computational efficiency and misses the optimal feasible sequence because of the different methods of defining constraints.The basis of assembly sequence planning is the expression of assembly information. Bahubalendruni et al. have done extensive research on the expression forms of various assembly information, such as nondirectional blocking graphs, interference graphs, AND/OR graphs, and Petri-net graphs [4]. They believe that the matrix-based method is the most suitable for automatic sequence generation. Most of the graphical representation methods were advanced in 1988 to represent assembly constraints [9–11]. The connectivity graphs are further extended to find the stable subassemblies, which offer the minimum number of levels to complete the overall assembly process [12]. Few researchers gave importance to extract the assembly sequence constraints from Computer-Aided Design (CAD) software to minimize the human intervention, which reduces computational time further [13]. Several researchers developed automated extraction methods to retrieve assembly liaison data, interference data, and assembly stability information through CAD interfacing [14–16].An appropriate assembly sequence needs to meet both geometric feasibility and efficiency [15]. Part concatenation method (PCM) is widely used to represent the geometric feasibility between parts, which considers three assembly sequence constraints: liaison matrix, stability matrix, and six interference matrices [17]. It is observed that the matrix-based approach requires the participation of personnel to reduce the complexity of the automatic planning sequence. Generally, the assembly direction is divided into six axial directions. In this case, it is necessary to determine the feasible path in oblique assembly manually [18]. As shown in Table 1, the existing methods use the objective function to optimize feasible sequences, usually to minimize factors such as direction change, tool change, and tool moving distance. The weight of the corresponding traversal is determined according to different requirements, and the geometrically feasible assembly sequence is selected.Table 1
Objective function consideration in the existing ASP methods.
ReferencesObjective for optimizationDirectional changesTool changesTool travel distanceAssembly force[18–20]√√√×[21–25]√×××[26–28]√√××[16, 29–31]×√××The interference matrix (IM) is anN order square matrix (N represents the number of parts in the product). Elements “0” and “1” in a square matrix represent the feasibility and infeasibility to perform assembly operations [32]. Yu et al. established the extended interference matrix (EIM) by introducing a new variable “2” into IM. Element “2” indicates that the part is geometrically feasible but has relative motion [18]. Bahubalendruni and Biswal obtained the liaison matrix automatically between parts by using Visual Basic (VB) language in computer-aided three-dimensional interactive applications (CATIA), which reduced personnel participation [33]. Some scholars regard the tool as an important influencing factor and add the geometric information of the tool to the constraint model, which increases the complexity of the model and reduces the space of the firm scheme, but practicality is achieved [34–36]. To reduce the complexity of calculation, some researchers only calculate the critical information in the model. However, the existing commercial CAD software is challenging to obtain the part modeling process, so it is hard to decompose the part through the geometric structure and restructure it [37–39].In most studies, the constraint relationship between parts is realized by human definition or collision detection, and the parts are regarded as a whole in the planning process. It can be seen from the literature that the geometric feasibility testing is subjected to a conceptual limitation that can identify collision-free paths in principal axis directions (±X, ±Y, and ±Z). When nonaxial assembly occurs in the assembly process, it is necessary to define constraints and feasibility manually. Based on this idea, we study the structures of parts and the method of part segmentation. The key structures involved in the assembly process are obtained in a simplified way, and the assembly information model is established on this basis. Through the information in the assembly model, the solution domain of geometrically feasible assembly sequence in mechanical products is established, and the assembly sequence is optimized through nongeometric information. Upon addressing the identified research gaps, a new assembly sequence planning method based on geometric constraints is proposed for mechanical product ASP, including oblique assembly.This paper introduces an assembly modeling method for automatically determining the optimal assembly sequence. In this paper, the geometric information extracted from the CAD model and nongeometric information of the model are extracted from technological documentation. Geometric information includes part structure information and contact relationship information between parts, while nongeometric information includes tool information and assembly position moving distance in the assembly process, which is enough to support the automatic generation of the assembly sequence. Using this method can reduce the degree of manual participation in the process of production sequence and solve the problem of oblique assembly to a certain extent. It is worth mentioning that, to shorten the calculation time of the algorithm, the part simplification is realized on the premise of ensuring the integrity of the part through the segmentation and reorganization of the part model.The remainder of this paper is organized as follows. In Section2, a novel method for obtaining the B-rep model of parts from any given product in CAD software is presented and is separated into basic geometry. An effective way to simplify parts on the premise of ensuring the integrity of parts is presented in Section 3. Sections 4 and 5 introduce the process of optimizing assembly sequence through geometric information and nongeometric information as shown in Figure 1. The application of improved assembly planner has been tested on assembly products in Sections 6 and 7, and Section 8 ends the article by introducing the contribution made in this field and the scope of future research.Figure 1
Overall system flowchart.


## 2. Modeling of the Part Assembly Information Based on CAD System

At different stages of the part life cycle, engineers need different fineness of part information. In the stage of assembly sequence planning, attention is paid to the geometric structure of parts and the constraint relationship between parts.In this paper, the necessary assembly information of the part is obtained by simplifying the model extracted by CAD. In the process of simplifying parts, it is necessary to determine the basic simplified units. In CAD systems, parts can be regarded as a combination of multiple simple geometric features, and the features contain the information of points, lines, and surfaces that constitute the features. If the face is taken as the smallest unit, the simplified part will not be completely solid. Therefore, this paper uses features as the smallest unit.In CAD systems, the same features can be generated in different ways, so the feature tree in the system cannot be used as the feature relationship of parts, and the features constituting parts need to be obtained through the type of part surface and contact relationship. In this paper, the topological relationship between faces in parts is represented by the boundary representation (B-rep) model, as shown in Figure2. Through the secondary development of CAD, the topological relationship of surfaces is got. Then, using the volume decomposition method, the feature-based model of the part is generated from the B-rep model. The parts are decomposed into a multilevel product assembly information model, which stores the geometric constraints of parts in mechanical products and the nongeometric information related to parts in the assembly process.Figure 2
B-rep model representation of the surface in part.
(a)
The surface of the part(b)
Surface contact relationship


### 2.1. B-rep Model Volume Decomposition

Ann-dimensional square matrix is established to store the topological relationship information of surfaces, and an n-dimensional degree vector stores the type information of faces (n is the number of faces in part). The square matrix is composed of elements 0 and 1, used to record a contact relationship between two sides.


#### 2.1.1. B-rep Model

Boundary representation (B-rep) is a closed shell surrounded by curved bread, which is a popular geometric description in CAD systems. It can store point, line, and surface information in the CAD model. For comparative calculation, we represent B-rep model (1a) as the adjacency diagram of the surface (1b). The part comprises eight surfaces, where surfaceb is a cylindrical surface and contacts plane a and plane c, while there is no contact between a and c.


#### 2.1.2. Volume Decomposition

The subfeatures of parts can be divided into additional features and subtraction features, and their Boolean operations form complex geometry. Basic geometric features include cylinder, cube, cone, and prism, and pyramid. In order to obtain the basic geometric feature expression of parts, this paper refers to Shi et al.’s [39] research results, identifies the basic geometric features of surfaces through Hough transform, and completes the basic geometric feature reconstruction of parts. The specific algorithm is as follows (as shown in Figure 3).
(1)
3D mesh the determined 3D parts using triangular patches(2)
Calculate the angle between the triangular patch and the adjacent patches(3)
The part is divided into patch groups {Fi} through the concavity and convexity of triangular patches(4)
To identify the corresponding feature types of the segmented patch groups {Fi} by using Hough transform(5)
The part is reconstructed into a feature-based representation, and the release relationship between features is storedFigure 3
The process of obtaining feature contact relationship of parts.
(a)
Original model(b)
3D meshed model(c)
Distinction of concave-convex of patch(d)
Separate patch groups(e)
Contact relationship of features


### 2.2. Data Structure of Part Model

There are many kinds of information on a part, and the information of the part is attached to the model at different levels. The tools used to assemble parts need to be attached to the part-level model. The part assembly information model includes geometric feature information, assembly contact relationship information, and assembly type information. This paper obtains the geometric information of parts from the CAD system, and the nongeometric information in the assembly process is collected. The information is classified and stored into four levels: part level, feature level, surface layer, and constraint layer between surfaces, as shown in Figure4. It intends to illustrate the most essential properties of parts in the assembly process through graphics.Figure 4
Hierarchical assembly information model of part.The part is decomposed into simple subfeatures through segmentation, and the surfaces contained in the subfeatures are further used as surface layers. Assembly constraints are determined by the constraints between multiple surfaces in two parts. An undirected graph represents part constraints because the fitting relationship between parts takes precedence before determining the assembly sequence.


#### 2.2.1. Feature Information

The feature information contained in part includes identification number (Fea_Id), addition and subtraction attributes (Fea_Type), and the ID number of feature surface (Surface_Id). The feature layer model of a part can be expressed as(1)<FeaInfo>=<Fea_Id>,<Fea_Type>,<Surface_Id>,where Fea_Id is the identification number (ID) of the part feature model, which represents the unique number of essential features; Fea_Type indicates whether the feature is added or subtracted in part, which is the roles of features in the process of part modeling and related to the operation performed when the feature will be deleted later. Surface_Id represents the surface contained under this feature, where only the surface that exists in part is stored.


#### 2.2.2. Surface Information

The surface information is composed of the surface ID and the constraints it contains. Surface ID represents the unique number of the surface in part, while the constraint represents the contact relationship between the surface and other parts. That is the solution object and carrier of assembly constraints. The surface layer model of the part can be expressed as(2)<FaceInfo>=<Surface_Id>,<Cons_Id>,<Sur_point>,<Sur_radius>,<Sur_vector>,where Surface_Id is the ID of the part surface model and Cons_Id represents the ID number of the contact relationship between the surface and the surface in other parts. Sur_point is the center point in the plane. Sur_radius is the radius of cylindrical and the cone angle of conical and sphere. Sur_vector is the vector of the plane, as shown in Figure5. This data is obtained in the assembly before sequence planning and will not change due to different sequences.Figure 5
Surface assembly information model.


#### 2.2.3. Constraint Information

The constraint information includes the IDs of the two surfaces with contact relationships and the type of contact between the two surfaces. The constraint information of the surface can be expressed as(3)<ConsInfo>=<Cons_Id>,<ConsFace_Id>,<Fit_type>,where Con_Id refers to the face on this part in the contact relationship and ConFace_Id refers to the face of other parts in the contact relationship. Con_Type is the type of contact relationship. Because various parts will have constraints with the same part in the actual assembly process, multiple sets of constraint information can be attached to the same surfaces.


## 2.1. B-rep Model Volume Decomposition

Ann-dimensional square matrix is established to store the topological relationship information of surfaces, and an n-dimensional degree vector stores the type information of faces (n is the number of faces in part). The square matrix is composed of elements 0 and 1, used to record a contact relationship between two sides.


### 2.1.1. B-rep Model

Boundary representation (B-rep) is a closed shell surrounded by curved bread, which is a popular geometric description in CAD systems. It can store point, line, and surface information in the CAD model. For comparative calculation, we represent B-rep model (1a) as the adjacency diagram of the surface (1b). The part comprises eight surfaces, where surfaceb is a cylindrical surface and contacts plane a and plane c, while there is no contact between a and c.


### 2.1.2. Volume Decomposition

The subfeatures of parts can be divided into additional features and subtraction features, and their Boolean operations form complex geometry. Basic geometric features include cylinder, cube, cone, and prism, and pyramid. In order to obtain the basic geometric feature expression of parts, this paper refers to Shi et al.’s [39] research results, identifies the basic geometric features of surfaces through Hough transform, and completes the basic geometric feature reconstruction of parts. The specific algorithm is as follows (as shown in Figure 3).
(1)
3D mesh the determined 3D parts using triangular patches(2)
Calculate the angle between the triangular patch and the adjacent patches(3)
The part is divided into patch groups {Fi} through the concavity and convexity of triangular patches(4)
To identify the corresponding feature types of the segmented patch groups {Fi} by using Hough transform(5)
The part is reconstructed into a feature-based representation, and the release relationship between features is storedFigure 3
The process of obtaining feature contact relationship of parts.
(a)
Original model(b)
3D meshed model(c)
Distinction of concave-convex of patch(d)
Separate patch groups(e)
Contact relationship of features


## 2.1.1. B-rep Model

Boundary representation (B-rep) is a closed shell surrounded by curved bread, which is a popular geometric description in CAD systems. It can store point, line, and surface information in the CAD model. For comparative calculation, we represent B-rep model (1a) as the adjacency diagram of the surface (1b). The part comprises eight surfaces, where surfaceb is a cylindrical surface and contacts plane a and plane c, while there is no contact between a and c.


## 2.1.2. Volume Decomposition

The subfeatures of parts can be divided into additional features and subtraction features, and their Boolean operations form complex geometry. Basic geometric features include cylinder, cube, cone, and prism, and pyramid. In order to obtain the basic geometric feature expression of parts, this paper refers to Shi et al.’s [39] research results, identifies the basic geometric features of surfaces through Hough transform, and completes the basic geometric feature reconstruction of parts. The specific algorithm is as follows (as shown in Figure 3).
(1)
3D mesh the determined 3D parts using triangular patches(2)
Calculate the angle between the triangular patch and the adjacent patches(3)
The part is divided into patch groups {Fi} through the concavity and convexity of triangular patches(4)
To identify the corresponding feature types of the segmented patch groups {Fi} by using Hough transform(5)
The part is reconstructed into a feature-based representation, and the release relationship between features is storedFigure 3
The process of obtaining feature contact relationship of parts.
(a)
Original model(b)
3D meshed model(c)
Distinction of concave-convex of patch(d)
Separate patch groups(e)
Contact relationship of features


## 2.2. Data Structure of Part Model

There are many kinds of information on a part, and the information of the part is attached to the model at different levels. The tools used to assemble parts need to be attached to the part-level model. The part assembly information model includes geometric feature information, assembly contact relationship information, and assembly type information. This paper obtains the geometric information of parts from the CAD system, and the nongeometric information in the assembly process is collected. The information is classified and stored into four levels: part level, feature level, surface layer, and constraint layer between surfaces, as shown in Figure4. It intends to illustrate the most essential properties of parts in the assembly process through graphics.Figure 4
Hierarchical assembly information model of part.The part is decomposed into simple subfeatures through segmentation, and the surfaces contained in the subfeatures are further used as surface layers. Assembly constraints are determined by the constraints between multiple surfaces in two parts. An undirected graph represents part constraints because the fitting relationship between parts takes precedence before determining the assembly sequence.


### 2.2.1. Feature Information

The feature information contained in part includes identification number (Fea_Id), addition and subtraction attributes (Fea_Type), and the ID number of feature surface (Surface_Id). The feature layer model of a part can be expressed as(1)<FeaInfo>=<Fea_Id>,<Fea_Type>,<Surface_Id>,where Fea_Id is the identification number (ID) of the part feature model, which represents the unique number of essential features; Fea_Type indicates whether the feature is added or subtracted in part, which is the roles of features in the process of part modeling and related to the operation performed when the feature will be deleted later. Surface_Id represents the surface contained under this feature, where only the surface that exists in part is stored.


### 2.2.2. Surface Information

The surface information is composed of the surface ID and the constraints it contains. Surface ID represents the unique number of the surface in part, while the constraint represents the contact relationship between the surface and other parts. That is the solution object and carrier of assembly constraints. The surface layer model of the part can be expressed as(2)<FaceInfo>=<Surface_Id>,<Cons_Id>,<Sur_point>,<Sur_radius>,<Sur_vector>,where Surface_Id is the ID of the part surface model and Cons_Id represents the ID number of the contact relationship between the surface and the surface in other parts. Sur_point is the center point in the plane. Sur_radius is the radius of cylindrical and the cone angle of conical and sphere. Sur_vector is the vector of the plane, as shown in Figure5. This data is obtained in the assembly before sequence planning and will not change due to different sequences.Figure 5
Surface assembly information model.


### 2.2.3. Constraint Information

The constraint information includes the IDs of the two surfaces with contact relationships and the type of contact between the two surfaces. The constraint information of the surface can be expressed as(3)<ConsInfo>=<Cons_Id>,<ConsFace_Id>,<Fit_type>,where Con_Id refers to the face on this part in the contact relationship and ConFace_Id refers to the face of other parts in the contact relationship. Con_Type is the type of contact relationship. Because various parts will have constraints with the same part in the actual assembly process, multiple sets of constraint information can be attached to the same surfaces.


## 2.2.1. Feature Information

The feature information contained in part includes identification number (Fea_Id), addition and subtraction attributes (Fea_Type), and the ID number of feature surface (Surface_Id). The feature layer model of a part can be expressed as(1)<FeaInfo>=<Fea_Id>,<Fea_Type>,<Surface_Id>,where Fea_Id is the identification number (ID) of the part feature model, which represents the unique number of essential features; Fea_Type indicates whether the feature is added or subtracted in part, which is the roles of features in the process of part modeling and related to the operation performed when the feature will be deleted later. Surface_Id represents the surface contained under this feature, where only the surface that exists in part is stored.


## 2.2.2. Surface Information

The surface information is composed of the surface ID and the constraints it contains. Surface ID represents the unique number of the surface in part, while the constraint represents the contact relationship between the surface and other parts. That is the solution object and carrier of assembly constraints. The surface layer model of the part can be expressed as(2)<FaceInfo>=<Surface_Id>,<Cons_Id>,<Sur_point>,<Sur_radius>,<Sur_vector>,where Surface_Id is the ID of the part surface model and Cons_Id represents the ID number of the contact relationship between the surface and the surface in other parts. Sur_point is the center point in the plane. Sur_radius is the radius of cylindrical and the cone angle of conical and sphere. Sur_vector is the vector of the plane, as shown in Figure5. This data is obtained in the assembly before sequence planning and will not change due to different sequences.Figure 5
Surface assembly information model.


## 2.2.3. Constraint Information

The constraint information includes the IDs of the two surfaces with contact relationships and the type of contact between the two surfaces. The constraint information of the surface can be expressed as(3)<ConsInfo>=<Cons_Id>,<ConsFace_Id>,<Fit_type>,where Con_Id refers to the face on this part in the contact relationship and ConFace_Id refers to the face of other parts in the contact relationship. Con_Type is the type of contact relationship. Because various parts will have constraints with the same part in the actual assembly process, multiple sets of constraint information can be attached to the same surfaces.


## 3. Part Model Simplification

Assembly constraints between parts consist of geometric constraints between surfaces [40]. In other words, geometric constraints are the basic elements of assembly constraints (as shown in Figure 6). Assembly constraints between parts can be divided into geometric constraints between multiple surfaces. In this paper, the constraint relationship between parts is expressed as a part surface relationship network. Redundant surfaces in parts will lead to too many nodes in the network and increase the computational complexity. At the same time, there are multiple surfaces to express the same assembly constraint relationship, which reduces the computational efficiency and increases the possibility of error.Figure 6
The relationship between assembly constraints and geometric constraints.Figure7 shows the relationship between the running time of the traversal sparse matrix program and the number of nodes. The abscissa in the graph is the number of nodes of the traversed undirected graph, and the ordinate is the running time of the program. The matrix in the graph is a random matrix with the number of edges less than half of the total connected graphs. The median time of the independent traversal connection graph ten times conforms to the quadratic curve. Therefore, reducing the nodes of the graph can effectively improve computational efficiency.Figure 7
Surface assembly information model.


### 3.1. Feature Importance Ranking

The reconstruction of parts based on basic geometric features uses the methods mentioned above. By deleting the subfeature that makes up a part, the key component features of the part are obtained. Different deletion processes result in different results. In order to ensure the integrity of the final part constraint information, it is necessary to determine a proper deletion sequence.The subfeatures in the modeling process will be reordered according to their importance. The importance of subfeatures depends on their role in the part. Kim and Mun [38] and Kang et al. [41] proposed several recombination strategies. In our study, the importance of subfeatures is evaluated according to the following criteria:
(1)
Features with large volume are more important than those with small volume(2)
Port features which contact with other parts shall be retained(3)
Features with contact relationship with port features are more important than other features(4)
Addition features are more important than subtraction featuresBased on the above principles, this paper determines the fitness function of feature ranking. If the feature is a port feature, it needs to be retained during the simplification process. At this time,n=1 makes f>0. The simplification process is aimed at the function value less than 0. C1 is the volume ratio of this feature to the largest feature in part. The larger the volume, the larger the value of C1, which is between 0 and 1. When the feature is an additional feature, C2=1, minus the feature is 0. In addition, when there is a contact relationship between the feature and the port feature, C3 is 1 and 0 at other times. Thus, the evaluation function formula (4) for the importance of the feature is formed. The feature ranking process is shown in Figure 8.
(4)f=n×C1+C2+C3.Figure 8
Geometric features are rearranged according to their importance.
(a)
Type-based geometric feature classification(b)
Importance of features in parts(c)
Rearrange according to the feature of importance


### 3.2. The Condition of Feature Simplification of 3D Parts

#### 3.2.1. The Initial Conditions of the Part Simplification Process

First, it is crucial to ensure that the geometric structure of the parts does not change during assembly planning. Then, determine the contact relationship between parts and ensure the relationship does not change in assembly sequence planning.


#### 3.2.2. Termination Conditions for the Part Simplification Process

The final result of simplification is to retain all the marker surfaces, which cannot further simplify the whole.


### 3.3. Principle of Simplification of 3D Part Structure

The parts in the assembly need to be simplified by the model separately. Furthermore, a complete expression of the assembly constraint relationship is constructed by using simplified parts. The simplified process needs to follow the three principles below.Principle 1: the geometric features in the parts have contact relations with each other by surfaces, forming a coherent whole and maintaining its topological relation.Principle 2: the volume of the geometric feature is taken as the simplified parameter. The volume of key features in part is often relatively large, so the more minor features are deleted while the more essential features are retained in simplifying the part.Principle 3: in the algorithm of deleting features, only one feature is deleted at a time. The link relationship between the features of simplified parts needs to be judged in an oversimplification to avoid the part separating into two separate parts.


### 3.4. Steps to Simplify Geometric Features in a Part

We reduce the computational complexity of the planning process by calculating the key features. Through the previous decomposition, the part is regarded as a complex structure composed of multiple basic features in the Boolean operation. Delete the geometric features of parts that are not related to the assembly process so as to simplify the complexity of parts and reduce the difficulty of calculation.In the process of model simplification, model separation occurs when the only added feature linking two added features is deleted, as shown in Figure9. The separated model will be regarded as two or more independent individuals in the system, so the information attached to the model is no longer reasonable, so the model cannot be used to determine geometric constraints. Therefore, in the process of part simplification, the connectivity of the feature-based 3D model needs to be considered to prevent model separation. Among them, we only consider additive subfeatures because the connectivity of the model is usually based on the additional subfeatures of the connection. Even if the subtraction subfeature is deleted, the connection between other subfeatures will not be affected.
(5)aij=aji=1contactbetweentwofeatures,0nocontactbetweentwofeatures.Figure 9
Feature separation occurs during simplification.Figure10 shows the connection of the part with other parts during assembly, where subfeature 1 is the port feature containing the contact surface. In the process of simplification, port features need to be marked and retained.Figure 10
Port features in parts.When a node is deleted and the graph is no longer connected and splits into two or more disconnected subgraphs, the node is referred to as the cut node of the connected graph. The cut nodes and general nodes in the diagram can be transformed mutually in the simplification process of the diagram, so only one feature can be deleted at a time, and the contact relationship between the geometric features of the parts can be regained after the process.In the contact relation undirected graph shown in Figure11, all nodes at this time are ordinary nodes. After deleting node 4, if node 2 is deleted, the graph will be divided into two independent parts. Therefore, node 2 is a cut point and cannot be deleted. When node 3 is deleted, all nodes are transformed into ordinary nodes. Therefore, the node switches between the cut point and ordinary node with the node, and the contact relationship changes in the graph. So, when the contact relation changes, it is necessary to evaluate the cut point in the graph.Figure 11
Changes of node attributes in contact graph during feature simplification.
(a)(b)(c)(d)When a feature is deleted, the contact relationship of the remaining subfeatures in part changes. Therefore, a geometric feature can only be deleted once, after which the new judgment of residual geometric features needs to be evaluated as a cut node or not. If the feature to be deleted is the cut point in the feature contact graph, the feature cannot be deleted. Skip the feature and consider the next feature in order. Then, delete a feature and its edge in the feature contact graph and update the set of cut points. It is designed the following simplified algorithm according to this scheme as shown in Figure12.Figure 12
Algorithm for simplifying features in parts.An undirected graph is used to represent the topological relationship of the face and the constraint relationship between the parts. Figure13 shows assembly constraint information based on surface contact representation. In the graph, the same color represents the same part (Figure 13(d)), different numbers represent different surfaces in part, and each node has a unique number (Figures 13(a) and 13(b)), which is a 4-digit string. The first two digits represent the part, and the last two digits represent the faces in part.Figure 13
Contact relationship of parts based on surface.
(a)
Part 1 CAD model(b)
Part 2 CAD model(c)
Fitting model(d)
Feature representation of the part fitting model


## 3.1. Feature Importance Ranking

The reconstruction of parts based on basic geometric features uses the methods mentioned above. By deleting the subfeature that makes up a part, the key component features of the part are obtained. Different deletion processes result in different results. In order to ensure the integrity of the final part constraint information, it is necessary to determine a proper deletion sequence.The subfeatures in the modeling process will be reordered according to their importance. The importance of subfeatures depends on their role in the part. Kim and Mun [38] and Kang et al. [41] proposed several recombination strategies. In our study, the importance of subfeatures is evaluated according to the following criteria:
(1)
Features with large volume are more important than those with small volume(2)
Port features which contact with other parts shall be retained(3)
Features with contact relationship with port features are more important than other features(4)
Addition features are more important than subtraction featuresBased on the above principles, this paper determines the fitness function of feature ranking. If the feature is a port feature, it needs to be retained during the simplification process. At this time,n=1 makes f>0. The simplification process is aimed at the function value less than 0. C1 is the volume ratio of this feature to the largest feature in part. The larger the volume, the larger the value of C1, which is between 0 and 1. When the feature is an additional feature, C2=1, minus the feature is 0. In addition, when there is a contact relationship between the feature and the port feature, C3 is 1 and 0 at other times. Thus, the evaluation function formula (4) for the importance of the feature is formed. The feature ranking process is shown in Figure 8.
(4)f=n×C1+C2+C3.Figure 8
Geometric features are rearranged according to their importance.
(a)
Type-based geometric feature classification(b)
Importance of features in parts(c)
Rearrange according to the feature of importance


## 3.2. The Condition of Feature Simplification of 3D Parts

### 3.2.1. The Initial Conditions of the Part Simplification Process

First, it is crucial to ensure that the geometric structure of the parts does not change during assembly planning. Then, determine the contact relationship between parts and ensure the relationship does not change in assembly sequence planning.


### 3.2.2. Termination Conditions for the Part Simplification Process

The final result of simplification is to retain all the marker surfaces, which cannot further simplify the whole.


## 3.2.1. The Initial Conditions of the Part Simplification Process

First, it is crucial to ensure that the geometric structure of the parts does not change during assembly planning. Then, determine the contact relationship between parts and ensure the relationship does not change in assembly sequence planning.


## 3.2.2. Termination Conditions for the Part Simplification Process

The final result of simplification is to retain all the marker surfaces, which cannot further simplify the whole.


## 3.3. Principle of Simplification of 3D Part Structure

The parts in the assembly need to be simplified by the model separately. Furthermore, a complete expression of the assembly constraint relationship is constructed by using simplified parts. The simplified process needs to follow the three principles below.Principle 1: the geometric features in the parts have contact relations with each other by surfaces, forming a coherent whole and maintaining its topological relation.Principle 2: the volume of the geometric feature is taken as the simplified parameter. The volume of key features in part is often relatively large, so the more minor features are deleted while the more essential features are retained in simplifying the part.Principle 3: in the algorithm of deleting features, only one feature is deleted at a time. The link relationship between the features of simplified parts needs to be judged in an oversimplification to avoid the part separating into two separate parts.


## 3.4. Steps to Simplify Geometric Features in a Part

We reduce the computational complexity of the planning process by calculating the key features. Through the previous decomposition, the part is regarded as a complex structure composed of multiple basic features in the Boolean operation. Delete the geometric features of parts that are not related to the assembly process so as to simplify the complexity of parts and reduce the difficulty of calculation.In the process of model simplification, model separation occurs when the only added feature linking two added features is deleted, as shown in Figure9. The separated model will be regarded as two or more independent individuals in the system, so the information attached to the model is no longer reasonable, so the model cannot be used to determine geometric constraints. Therefore, in the process of part simplification, the connectivity of the feature-based 3D model needs to be considered to prevent model separation. Among them, we only consider additive subfeatures because the connectivity of the model is usually based on the additional subfeatures of the connection. Even if the subtraction subfeature is deleted, the connection between other subfeatures will not be affected.
(5)aij=aji=1contactbetweentwofeatures,0nocontactbetweentwofeatures.Figure 9
Feature separation occurs during simplification.Figure10 shows the connection of the part with other parts during assembly, where subfeature 1 is the port feature containing the contact surface. In the process of simplification, port features need to be marked and retained.Figure 10
Port features in parts.When a node is deleted and the graph is no longer connected and splits into two or more disconnected subgraphs, the node is referred to as the cut node of the connected graph. The cut nodes and general nodes in the diagram can be transformed mutually in the simplification process of the diagram, so only one feature can be deleted at a time, and the contact relationship between the geometric features of the parts can be regained after the process.In the contact relation undirected graph shown in Figure11, all nodes at this time are ordinary nodes. After deleting node 4, if node 2 is deleted, the graph will be divided into two independent parts. Therefore, node 2 is a cut point and cannot be deleted. When node 3 is deleted, all nodes are transformed into ordinary nodes. Therefore, the node switches between the cut point and ordinary node with the node, and the contact relationship changes in the graph. So, when the contact relation changes, it is necessary to evaluate the cut point in the graph.Figure 11
Changes of node attributes in contact graph during feature simplification.
(a)(b)(c)(d)When a feature is deleted, the contact relationship of the remaining subfeatures in part changes. Therefore, a geometric feature can only be deleted once, after which the new judgment of residual geometric features needs to be evaluated as a cut node or not. If the feature to be deleted is the cut point in the feature contact graph, the feature cannot be deleted. Skip the feature and consider the next feature in order. Then, delete a feature and its edge in the feature contact graph and update the set of cut points. It is designed the following simplified algorithm according to this scheme as shown in Figure12.Figure 12
Algorithm for simplifying features in parts.An undirected graph is used to represent the topological relationship of the face and the constraint relationship between the parts. Figure13 shows assembly constraint information based on surface contact representation. In the graph, the same color represents the same part (Figure 13(d)), different numbers represent different surfaces in part, and each node has a unique number (Figures 13(a) and 13(b)), which is a 4-digit string. The first two digits represent the part, and the last two digits represent the faces in part.Figure 13
Contact relationship of parts based on surface.
(a)
Part 1 CAD model(b)
Part 2 CAD model(c)
Fitting model(d)
Feature representation of the part fitting model


## 4. The Feasible Movement Direction of Parts

The essence of assembly is to impose constraints on parts and adjust the position and rotation of parts. The geometric elements involved in the constraints between parts in this paper include the following geometric surfaces: plane, cone, cylinder, and sphere. Typical constraints between geometric surfaces include the following:① Constraints between two planes② Constraints between two cylindrical surfaces③ Constraints between two conic surfaces④ Constraints between two sphere surfacesTable2 shows the feasible assembly direction of parts under different geometric constraints, the moving range after assembly, and the disassembly direction, in which the moving range after assembly is the same as the disassembly direction. In this paper, constraint information is stored as a set in three-dimensional spherical coordinate system (as shown in Figure 14). When the part is constrained between planes, the assembly direction of the part is a hemispherical surface along the direction of the plane normal vector. When there is a cylindrical constraint, the assembly direction of the part is the positive and negative directions of the vector. When there is a conical constraint or sphere constraint, the assembly direction is same as the vector.Table 2
Constraints of surface on feasible assembly region of parts.
Connect relationshipAssembly directionDisassembly directionAssembly zenith angleAssembly azimuth angleDisassembly zenith angleDisassembly azimuth angleθ=π/2,πϕ=0,2πθ=0,π/2ϕ=0,2πθ=0,0θ=π,πϕ=0,2πθ=0,0θ=π,πϕ=0,2πθ=0,0ϕ=0,2πθ=π,πϕ=0,2πθ=0,0ϕ=0,2πθ=π,πϕ=0,2πFigure 14
Feasible assembly region represented by polar coordinates.The rest of the constraints on the part are superimposed, and then, the feasible motion region of the part under multiple constraints is obtained. The constraints between the basic geometric elements obtained directly are called theoretical constraints, and the constraints obtained through analysis and calculation are called practical constraints. Thus, the constraints obtained need to be further analyzed.After obtaining independent geometric constraints, the feasible motion area of the part, which is under geometric constraints, obtained by intersecting the superposition, is performed on the part’s vector ball in the form of the set intersection to obtain. The assembly process can be regarded as the reverse process of the disassembly process.The residual feasible region of parts is inferred through the constraint relationship between parts, so as to judge the parts that can be disassembled in the current state. When a part is disassembled, if the remaining movable direction of the existing part includes the current gravity direction, the part will be regarded as a group, and the disassembly and assembly process will be carried out at the same time.For example, there are two pairs of surface contacts in model A and model B.x1 and x2 constitute a set of plane constraints C1 (Figure 15(a)), and y1 and y2 constitute a set of cylindrical constraints C2 (Figure 15(b)). Part A can be assembled forward and backward along the y-axis under the constraint of C1, while it can be assembled along the forward y-axis under the constraint of C2. Therefore, under the constraints of both, the assembly can only be carried out along the positive half axis of the y-axis (Figure 15(c)).Figure 15
Determination of assembly region between parts.
(a)(b)(c)


## 5. Assembly Sequence Planning

Firstly, the assembly sequence needs to meet the geometric feasibility and then pursue the optimal assembly efficiency. Therefore, this paper divides the planning process of assembly sequence into two independent steps. In searching the sequence that meets the geometric feasibility, the integrity is pursued to avoid losing the potential optimal assembly sequence. Then, the optimal sequence under the specified conditions is selected by the fitness function.


### 5.1. Geometrically Feasible Assembly Sequence

In this paper, the method of obtaining assembly sequence obtains the disassembly sequence of mechanical products by continuously removing parts from the products and reversing it to obtain all feasible assembly sequences.The string is used to represent the assembly sequence, and two digits represent each part. For example, the ID of part 2 is 02, and the ID of part 14 is 14.The disassembly sequence of parts determines the geometrically feasible assembly sequence. On the premise of obtaining all assembly constraint information, the parts with a feasible moving range in the current state are determined. When multiple parts are available for disassembly, they are considered as feasible independent sequences. Complete its disassembly process and delete the relevant nodes and edges in the contact graph. At this time, the detachable parts are obtained again. Repeat this process until all parts are removed. All geometrically feasible assembly sequences are obtained by reversing the disassembly sequence.


### 5.2. Assembly Sequence Optimization

The fitness function describes the assembly efficiency and complexity, including the tools used in the assembly process, the number of changes in the assembly direction, and the moving distance of the assembly position.


#### 5.2.1. Assembly Position Moving DistanceX1

The distance between the assembly positions of two parts in the sequence is regarded as a reference factor for optimizing the assembly sequence. Record the final assembly position of each part and calculate the distance between two adjacent parts. For the first part, except for the reference part, the value is 0. As shown in Table3, Ass_Disi is the distance between the current part and the final position of the previous part, and Sum_Ass_Disi is the sum of all distances in completing the assembly. Num_Ass_Dismax is the maximum value of the sum of distances in all sequences.Table 3
Calculation formula of fitness function.
Assembly position moving distanceThe number of times the assembly tool changesNumber of assembly direction changeAss_Disi=position_distanceiTool_Changei=0iftool_typei=tool_typei−11otherwiseAss_dir_changei=0θi∩θ≠∅&&φi∩φ≠∅1otherwiseNum_Ass_Disi=∑i=1nAss_DisiNum_Tool_Changei=∑i=1n−1Tool_ChangeiNum_Dir_changei=∑i=1n−1Ass_dir_changeiR1i=Num_Ass_DisiNum_Ass_DismaxR2i=Num_Tool_Changei/Num_Tool_ChangemaxR3i=Num_Dir_Changei/Num_Dir_Changemax


#### 5.2.2. The Number of Assembly Tool ChangesX2

Tools are needed in the assembly process of parts, and the assembly time will be affected in tool replacement [33]. Therefore, the number of assembly tool changes is recorded and regarded as a variable in the fitness function, where Num_Tool_Changei is the total number of assembly tool changes in the sequence and Num_Tool_Changemax is the maximum total number of assembly tool changes in all assembly sequences.


#### 5.2.3. Number of Assembly Direction ChangeX3

When the feasible assembly region of the part does not intersect with the current assembly direction, it means that the part cannot be assembled from this direction, and the initial position of the part assembly needs to be changed. After the change of direction, the part needs to be repositioned. This process can significantly influence the assembly time, so it is taken as one of the components of the fitness function, where Num_Dir_Changei is the total number of assembly direction changes by the sequence and Num_Dir_Changemax is the maximum number of assembly direction changes by all feasible assembly sequences.The fitness function is shown in formula (6). xn represents the value of the fitness function. The higher the value, the better the assembly performance of the sequence. The function includes the assembly position movement distance x1, the times of assembly tool change x2, and the times of assembly direction change x3. The three-match different weights because of their different influence on the assembly sequence. By testing multiple groups of weight factors, set the weight factor values as n1=0.2, n2=0.3, and n3=0.5.
(6)xn=n1x1+n2x2+n3x3.


## 5.1. Geometrically Feasible Assembly Sequence

In this paper, the method of obtaining assembly sequence obtains the disassembly sequence of mechanical products by continuously removing parts from the products and reversing it to obtain all feasible assembly sequences.The string is used to represent the assembly sequence, and two digits represent each part. For example, the ID of part 2 is 02, and the ID of part 14 is 14.The disassembly sequence of parts determines the geometrically feasible assembly sequence. On the premise of obtaining all assembly constraint information, the parts with a feasible moving range in the current state are determined. When multiple parts are available for disassembly, they are considered as feasible independent sequences. Complete its disassembly process and delete the relevant nodes and edges in the contact graph. At this time, the detachable parts are obtained again. Repeat this process until all parts are removed. All geometrically feasible assembly sequences are obtained by reversing the disassembly sequence.


## 5.2. Assembly Sequence Optimization

The fitness function describes the assembly efficiency and complexity, including the tools used in the assembly process, the number of changes in the assembly direction, and the moving distance of the assembly position.


### 5.2.1. Assembly Position Moving DistanceX1

The distance between the assembly positions of two parts in the sequence is regarded as a reference factor for optimizing the assembly sequence. Record the final assembly position of each part and calculate the distance between two adjacent parts. For the first part, except for the reference part, the value is 0. As shown in Table3, Ass_Disi is the distance between the current part and the final position of the previous part, and Sum_Ass_Disi is the sum of all distances in completing the assembly. Num_Ass_Dismax is the maximum value of the sum of distances in all sequences.Table 3
Calculation formula of fitness function.
Assembly position moving distanceThe number of times the assembly tool changesNumber of assembly direction changeAss_Disi=position_distanceiTool_Changei=0iftool_typei=tool_typei−11otherwiseAss_dir_changei=0θi∩θ≠∅&&φi∩φ≠∅1otherwiseNum_Ass_Disi=∑i=1nAss_DisiNum_Tool_Changei=∑i=1n−1Tool_ChangeiNum_Dir_changei=∑i=1n−1Ass_dir_changeiR1i=Num_Ass_DisiNum_Ass_DismaxR2i=Num_Tool_Changei/Num_Tool_ChangemaxR3i=Num_Dir_Changei/Num_Dir_Changemax


### 5.2.2. The Number of Assembly Tool ChangesX2

Tools are needed in the assembly process of parts, and the assembly time will be affected in tool replacement [33]. Therefore, the number of assembly tool changes is recorded and regarded as a variable in the fitness function, where Num_Tool_Changei is the total number of assembly tool changes in the sequence and Num_Tool_Changemax is the maximum total number of assembly tool changes in all assembly sequences.


### 5.2.3. Number of Assembly Direction ChangeX3

When the feasible assembly region of the part does not intersect with the current assembly direction, it means that the part cannot be assembled from this direction, and the initial position of the part assembly needs to be changed. After the change of direction, the part needs to be repositioned. This process can significantly influence the assembly time, so it is taken as one of the components of the fitness function, where Num_Dir_Changei is the total number of assembly direction changes by the sequence and Num_Dir_Changemax is the maximum number of assembly direction changes by all feasible assembly sequences.The fitness function is shown in formula (6). xn represents the value of the fitness function. The higher the value, the better the assembly performance of the sequence. The function includes the assembly position movement distance x1, the times of assembly tool change x2, and the times of assembly direction change x3. The three-match different weights because of their different influence on the assembly sequence. By testing multiple groups of weight factors, set the weight factor values as n1=0.2, n2=0.3, and n3=0.5.
(6)xn=n1x1+n2x2+n3x3.


## 5.2.1. Assembly Position Moving DistanceX1

The distance between the assembly positions of two parts in the sequence is regarded as a reference factor for optimizing the assembly sequence. Record the final assembly position of each part and calculate the distance between two adjacent parts. For the first part, except for the reference part, the value is 0. As shown in Table3, Ass_Disi is the distance between the current part and the final position of the previous part, and Sum_Ass_Disi is the sum of all distances in completing the assembly. Num_Ass_Dismax is the maximum value of the sum of distances in all sequences.Table 3
Calculation formula of fitness function.
Assembly position moving distanceThe number of times the assembly tool changesNumber of assembly direction changeAss_Disi=position_distanceiTool_Changei=0iftool_typei=tool_typei−11otherwiseAss_dir_changei=0θi∩θ≠∅&&φi∩φ≠∅1otherwiseNum_Ass_Disi=∑i=1nAss_DisiNum_Tool_Changei=∑i=1n−1Tool_ChangeiNum_Dir_changei=∑i=1n−1Ass_dir_changeiR1i=Num_Ass_DisiNum_Ass_DismaxR2i=Num_Tool_Changei/Num_Tool_ChangemaxR3i=Num_Dir_Changei/Num_Dir_Changemax


## 5.2.2. The Number of Assembly Tool ChangesX2

Tools are needed in the assembly process of parts, and the assembly time will be affected in tool replacement [33]. Therefore, the number of assembly tool changes is recorded and regarded as a variable in the fitness function, where Num_Tool_Changei is the total number of assembly tool changes in the sequence and Num_Tool_Changemax is the maximum total number of assembly tool changes in all assembly sequences.


## 5.2.3. Number of Assembly Direction ChangeX3

When the feasible assembly region of the part does not intersect with the current assembly direction, it means that the part cannot be assembled from this direction, and the initial position of the part assembly needs to be changed. After the change of direction, the part needs to be repositioned. This process can significantly influence the assembly time, so it is taken as one of the components of the fitness function, where Num_Dir_Changei is the total number of assembly direction changes by the sequence and Num_Dir_Changemax is the maximum number of assembly direction changes by all feasible assembly sequences.The fitness function is shown in formula (6). xn represents the value of the fitness function. The higher the value, the better the assembly performance of the sequence. The function includes the assembly position movement distance x1, the times of assembly tool change x2, and the times of assembly direction change x3. The three-match different weights because of their different influence on the assembly sequence. By testing multiple groups of weight factors, set the weight factor values as n1=0.2, n2=0.3, and n3=0.5.
(6)xn=n1x1+n2x2+n3x3.


## 6. Case Study

In this paper, various products such as 4-part block assembly, 10-part shaft assembly, and 23-part cylinder assembly are examples for validating the proposed algorithm verification, which is implemented by MATLAB 2017b and Solidworks API programming. One fastener will be used to represent the assembly process of multiple fasteners in the same group.


### 6.1. Model Simplification Experiment

The shaft is shown in Figure16 as an example, it can be decomposed into 20 subfeatures, and the port features are 01, 02, 03, 04, 15, 17, 18, 19, and 20 as shown in Table 4. The ranking results of feature importance are shown in Figure 8(c). After obtaining the contact relationship of the subfeatures of the part, the contact relationship undirected graph is shown in Figure 16(b) and contact relationship matrix is shown in equation (7).Figure 16
Part simplification results.
(a)
Comparison of shaft features before and after simplification(b)
Topological relations of features before simplification(c)
Topological relations of features after simplificationTable 4
The list of features in the shaft.
Feature no.Feature typeFeature volumevimm3BoolPort01Step13760804IncreaseTrue02Step11191924IncreaseTrue03Step4618141IncreaseTrue04Step8286893IncreaseTrue05Step11625063IncreaseFalse06Cone202845.4DecreaseFalse07Chamfering3081.902DecreaseFalse08Ring channel2814.73DecreaseFalse09Fillet15133.4IncreaseFalse10Fillet3506.017DecreaseFalse11Fillet2716.042IncreaseFalse12Fillet2392.43IncreaseFalse13Fillet580.5962DecreaseFalse14Chamfering3002.734DecreaseFalse15Key channel221326DecreaseTrue16Chamfering110.0858IncreaseFalse17Screw hole21714.69DecreaseTrue18Screw hole21714.69DecreaseTrue19Screw hole21714.69DecreaseTrue20Screw hole21714.69DecreaseTrueThe contact relationship between the features:(7)Aij=0100001110000000111110100000111000110000010101000011000000000010100000011000000000010000000011000000001000000000000000001000000000000000000010000000000000000000110000000000000000000100000000000000000001100000000000000000001100000000000000000001100000000000000000001000000000000000010000000000000100000100000000000010000010000000000000000000100000000000000000001000000000000000000010000000000000000000.The simplified shaft comprises 9 features, the volume is changed from 48.98dm3 to 37.55 dm3, and the reduction is 23.3%. Before simplification, the parts contain 46 surfaces, and the 20 surfaces are reduced by 43.5%. It can be seen that the change of volume is less than that of the surface. Through simplification, the key information that plays a decisive role in the assembly process is obtained, which reduces the complexity of calculation.


### 6.2. Assembly Sequence Planning Experiment

It is obtained the geometrically feasible assembly sequence by disassembly. When removing the parts, the parts can move in the gravity direction, which is regarded as the same assembly step. After obtaining the geometrically feasible assembly sequence, calculate the moving distance of assembly position, the change times of assembly direction, and the change times of tools in different sequences. Get the assembly difficulty of different sequences to optimize the assembly sequence.


#### 6.2.1. Block Assembly Experiment

Considering the blocks shown in Figure17 and taking the simplified parts as input, the system generates two geometrically feasible disassembly sequences, as shown in equation (7). Parts 2 and 3 are considered as one step and assembled at the same time. The maximum number of redirections in all sequences is 2, and the assembly process does not need the assistance of tools, and the matching relationship between parts is the same, so all of them are regarded as the optimal sequence.Figure 17
Exploded view of block and related parts.Based on this, the two assembly sequences of the part are equivalent and cannot be further optimized, as shown in Table5.Table 5
The block assembly sequence planning results.
Assembly sequenceNumber of assembly direction changesNumber of assembly tool changesFitness function value(3,2)-42014-(2,3)201


#### 6.2.2. Shaft Assembly Experiment

The shaft in the reducer shown in Figure18 is regarded as the second experiment. During disassembly, part 9 and part 10 are disassembled and assembled at the same time. In the process of assembly, 28 geometrically feasible assembly sequences are generated. The maximum number of direction changes of parts is 5, and the maximum number of tool changes is 6. Part of the fitness function obtains the geometrically feasible assembly sequence (as shown in Table 6). Other geometrically feasible assembly sequences are shown in Table 7.Figure 18
Exploded view of reducer shaft and related parts.Table 6
The shaft assembly sequence planning results.
Assembly sequenceNumber of assembly direction changesNumber of assembly tool changesFitness function value1-2-3-8-4-6-7-5-(9,10)550.8671-2-3-4-7-5-(9,10)-8-6250.6671-8-2-3-4-7-5-(9,10)-6450.8671-8-2-3-4-7-5-(9,10)-6360.800Table 7
The shaft assembly sequence planning results.
(a)No. 1No. 2No. 3No. 4No. 5No. 6No. 7No. 8No. 9No. 10No. 11No. 12No. 13No. 14111111111111112222222888888838888882222226833333633333626444463444463346777446777444775567775567775569, 10555569, 1055559, 109, 109, 1069, 109, 109, 109, 109, 1069, 109, 109, 109, 10(b)No. 15No. 16No. 17No. 18No. 19No. 20No. 21No. 22No. 23No. 24No. 25No. 26No. 27No. 28111111111111112222222222222233333333333333444444444488887777778888444455588867776777889, 105567556755669, 10869, 105569, 105569, 1059, 10669, 1069, 109, 109, 1069, 109, 10(9, 10)69, 10Two optimal sequences are obtained by optimizing the geometrically feasible assembly sequence: 1-2-8-6-3-4-7-5-(9,10) or 1-8-6-2-3-4-7-5-(9,10).


#### 6.2.3. Cylinder Assembly Experiment

The expansion and contraction cylinder shown in Figure19 is considered the third test because of its number of parts and potential multiple feasible sequences. After processing the CAD model, 124728 geometrically feasible assembly sequences are generated, in which part 1, part 5 and part 6, part 7, part 10 and part 11, part 8 and part 9, part 12, part 13, part 14, part 15 and part 16, part 19, and part 20 are regarded as the same step for installation. Therefore, a total of 14 assemblies need to be considered. The maximum tool replacement time is seven, and the maximum redirection time is eight. After optimization, the optimal sequence is 04-23-03-02-(01,05,06)-(07,10,11)-24-(08,09)-(12,13,14,15,16)-17-18-21-(19,20)-22 (see Table 8 for the optimal sequence with close fitness function values).Figure 19
Exploded view of cylinder and related parts.Table 8
The cylinder assembly sequence planning results.
No. 1No. 2No. 3No. 4No. 5No. 6No. 7No. 8No. 9No. 10No. 11No. 12No. 130404040404040404040404040423242323232323232323232323032324030303030303030303030203032402020202020202020201, 05, 060202022401, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0607, 10, 1101, 05, 0601, 05, 0601, 05, 0601, 05, 062407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 112407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1108, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 092410, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 162417171717171717171717171717241818181818181818181818181824212121212121212121212121212419, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 20242222222222222222222222222224No. 14No. 15No. 16No. 17No. 18No. 19No. 20No. 21No. 22No. 23No. 24No. 25No. 260404040404040404040404040403240303030303030303030303230324232323232323232323230223232402020202020202020201, 05, 060202022401, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0607, 10, 1101, 05, 0601, 05, 0601, 05, 0601, 05, 062407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 112407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1108, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 092410, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 162417171717171717171717171717241818181818181818181818181824212121212121212121212121212419, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 20242222222222222222222222222224No. 27No. 28No. 29No. 30No. 31No. 32No. 33No. 34No. 35No. 36No. 37No. 38No. 39040404040404040404040404042407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 112408, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 092410, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 162417171717171717171717171717241818181818181818181818181824212121212121212121212121212419, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2024222222222222222222222222222423232323232323232323232323240303030303030303030303030324020202020202020202020202022401, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0624No. 40No. 41No. 42No. 43No. 44No. 45No. 46No. 47No. 48No. 49No. 50No. 51No. 52040404040404040404040404042407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 112408, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 092410, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 162417171717171717171717171717241818181818181818181818181824212121212121212121212121212419, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2024222222222222222222222222222403030303030303030303030303242323232323232323232323232324020202020202020202020202022401, 05, 0601, 05, 0601, 05,0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0624


## 6.1. Model Simplification Experiment

The shaft is shown in Figure16 as an example, it can be decomposed into 20 subfeatures, and the port features are 01, 02, 03, 04, 15, 17, 18, 19, and 20 as shown in Table 4. The ranking results of feature importance are shown in Figure 8(c). After obtaining the contact relationship of the subfeatures of the part, the contact relationship undirected graph is shown in Figure 16(b) and contact relationship matrix is shown in equation (7).Figure 16
Part simplification results.
(a)
Comparison of shaft features before and after simplification(b)
Topological relations of features before simplification(c)
Topological relations of features after simplificationTable 4
The list of features in the shaft.
Feature no.Feature typeFeature volumevimm3BoolPort01Step13760804IncreaseTrue02Step11191924IncreaseTrue03Step4618141IncreaseTrue04Step8286893IncreaseTrue05Step11625063IncreaseFalse06Cone202845.4DecreaseFalse07Chamfering3081.902DecreaseFalse08Ring channel2814.73DecreaseFalse09Fillet15133.4IncreaseFalse10Fillet3506.017DecreaseFalse11Fillet2716.042IncreaseFalse12Fillet2392.43IncreaseFalse13Fillet580.5962DecreaseFalse14Chamfering3002.734DecreaseFalse15Key channel221326DecreaseTrue16Chamfering110.0858IncreaseFalse17Screw hole21714.69DecreaseTrue18Screw hole21714.69DecreaseTrue19Screw hole21714.69DecreaseTrue20Screw hole21714.69DecreaseTrueThe contact relationship between the features:(7)Aij=0100001110000000111110100000111000110000010101000011000000000010100000011000000000010000000011000000001000000000000000001000000000000000000010000000000000000000110000000000000000000100000000000000000001100000000000000000001100000000000000000001100000000000000000001000000000000000010000000000000100000100000000000010000010000000000000000000100000000000000000001000000000000000000010000000000000000000.The simplified shaft comprises 9 features, the volume is changed from 48.98dm3 to 37.55 dm3, and the reduction is 23.3%. Before simplification, the parts contain 46 surfaces, and the 20 surfaces are reduced by 43.5%. It can be seen that the change of volume is less than that of the surface. Through simplification, the key information that plays a decisive role in the assembly process is obtained, which reduces the complexity of calculation.


## 6.2. Assembly Sequence Planning Experiment

It is obtained the geometrically feasible assembly sequence by disassembly. When removing the parts, the parts can move in the gravity direction, which is regarded as the same assembly step. After obtaining the geometrically feasible assembly sequence, calculate the moving distance of assembly position, the change times of assembly direction, and the change times of tools in different sequences. Get the assembly difficulty of different sequences to optimize the assembly sequence.


### 6.2.1. Block Assembly Experiment

Considering the blocks shown in Figure17 and taking the simplified parts as input, the system generates two geometrically feasible disassembly sequences, as shown in equation (7). Parts 2 and 3 are considered as one step and assembled at the same time. The maximum number of redirections in all sequences is 2, and the assembly process does not need the assistance of tools, and the matching relationship between parts is the same, so all of them are regarded as the optimal sequence.Figure 17
Exploded view of block and related parts.Based on this, the two assembly sequences of the part are equivalent and cannot be further optimized, as shown in Table5.Table 5
The block assembly sequence planning results.
Assembly sequenceNumber of assembly direction changesNumber of assembly tool changesFitness function value(3,2)-42014-(2,3)201


### 6.2.2. Shaft Assembly Experiment

The shaft in the reducer shown in Figure18 is regarded as the second experiment. During disassembly, part 9 and part 10 are disassembled and assembled at the same time. In the process of assembly, 28 geometrically feasible assembly sequences are generated. The maximum number of direction changes of parts is 5, and the maximum number of tool changes is 6. Part of the fitness function obtains the geometrically feasible assembly sequence (as shown in Table 6). Other geometrically feasible assembly sequences are shown in Table 7.Figure 18
Exploded view of reducer shaft and related parts.Table 6
The shaft assembly sequence planning results.
Assembly sequenceNumber of assembly direction changesNumber of assembly tool changesFitness function value1-2-3-8-4-6-7-5-(9,10)550.8671-2-3-4-7-5-(9,10)-8-6250.6671-8-2-3-4-7-5-(9,10)-6450.8671-8-2-3-4-7-5-(9,10)-6360.800Table 7
The shaft assembly sequence planning results.
(a)No. 1No. 2No. 3No. 4No. 5No. 6No. 7No. 8No. 9No. 10No. 11No. 12No. 13No. 14111111111111112222222888888838888882222226833333633333626444463444463346777446777444775567775567775569, 10555569, 1055559, 109, 109, 1069, 109, 109, 109, 109, 1069, 109, 109, 109, 10(b)No. 15No. 16No. 17No. 18No. 19No. 20No. 21No. 22No. 23No. 24No. 25No. 26No. 27No. 28111111111111112222222222222233333333333333444444444488887777778888444455588867776777889, 105567556755669, 10869, 105569, 105569, 1059, 10669, 1069, 109, 109, 1069, 109, 10(9, 10)69, 10Two optimal sequences are obtained by optimizing the geometrically feasible assembly sequence: 1-2-8-6-3-4-7-5-(9,10) or 1-8-6-2-3-4-7-5-(9,10).


### 6.2.3. Cylinder Assembly Experiment

The expansion and contraction cylinder shown in Figure19 is considered the third test because of its number of parts and potential multiple feasible sequences. After processing the CAD model, 124728 geometrically feasible assembly sequences are generated, in which part 1, part 5 and part 6, part 7, part 10 and part 11, part 8 and part 9, part 12, part 13, part 14, part 15 and part 16, part 19, and part 20 are regarded as the same step for installation. Therefore, a total of 14 assemblies need to be considered. The maximum tool replacement time is seven, and the maximum redirection time is eight. After optimization, the optimal sequence is 04-23-03-02-(01,05,06)-(07,10,11)-24-(08,09)-(12,13,14,15,16)-17-18-21-(19,20)-22 (see Table 8 for the optimal sequence with close fitness function values).Figure 19
Exploded view of cylinder and related parts.Table 8
The cylinder assembly sequence planning results.
No. 1No. 2No. 3No. 4No. 5No. 6No. 7No. 8No. 9No. 10No. 11No. 12No. 130404040404040404040404040423242323232323232323232323032324030303030303030303030203032402020202020202020201, 05, 060202022401, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0607, 10, 1101, 05, 0601, 05, 0601, 05, 0601, 05, 062407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 112407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1108, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 092410, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 162417171717171717171717171717241818181818181818181818181824212121212121212121212121212419, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 20242222222222222222222222222224No. 14No. 15No. 16No. 17No. 18No. 19No. 20No. 21No. 22No. 23No. 24No. 25No. 260404040404040404040404040403240303030303030303030303230324232323232323232323230223232402020202020202020201, 05, 060202022401, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0607, 10, 1101, 05, 0601, 05, 0601, 05, 0601, 05, 062407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 112407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1108, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 092410, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 162417171717171717171717171717241818181818181818181818181824212121212121212121212121212419, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 20242222222222222222222222222224No. 27No. 28No. 29No. 30No. 31No. 32No. 33No. 34No. 35No. 36No. 37No. 38No. 39040404040404040404040404042407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 112408, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 092410, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 162417171717171717171717171717241818181818181818181818181824212121212121212121212121212419, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2024222222222222222222222222222423232323232323232323232323240303030303030303030303030324020202020202020202020202022401, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0624No. 40No. 41No. 42No. 43No. 44No. 45No. 46No. 47No. 48No. 49No. 50No. 51No. 52040404040404040404040404042407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 112408, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 092410, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 162417171717171717171717171717241818181818181818181818181824212121212121212121212121212419, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2024222222222222222222222222222403030303030303030303030303242323232323232323232323232324020202020202020202020202022401, 05, 0601, 05, 0601, 05,0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0624


## 6.2.1. Block Assembly Experiment

Considering the blocks shown in Figure17 and taking the simplified parts as input, the system generates two geometrically feasible disassembly sequences, as shown in equation (7). Parts 2 and 3 are considered as one step and assembled at the same time. The maximum number of redirections in all sequences is 2, and the assembly process does not need the assistance of tools, and the matching relationship between parts is the same, so all of them are regarded as the optimal sequence.Figure 17
Exploded view of block and related parts.Based on this, the two assembly sequences of the part are equivalent and cannot be further optimized, as shown in Table5.Table 5
The block assembly sequence planning results.
Assembly sequenceNumber of assembly direction changesNumber of assembly tool changesFitness function value(3,2)-42014-(2,3)201


## 6.2.2. Shaft Assembly Experiment

The shaft in the reducer shown in Figure18 is regarded as the second experiment. During disassembly, part 9 and part 10 are disassembled and assembled at the same time. In the process of assembly, 28 geometrically feasible assembly sequences are generated. The maximum number of direction changes of parts is 5, and the maximum number of tool changes is 6. Part of the fitness function obtains the geometrically feasible assembly sequence (as shown in Table 6). Other geometrically feasible assembly sequences are shown in Table 7.Figure 18
Exploded view of reducer shaft and related parts.Table 6
The shaft assembly sequence planning results.
Assembly sequenceNumber of assembly direction changesNumber of assembly tool changesFitness function value1-2-3-8-4-6-7-5-(9,10)550.8671-2-3-4-7-5-(9,10)-8-6250.6671-8-2-3-4-7-5-(9,10)-6450.8671-8-2-3-4-7-5-(9,10)-6360.800Table 7
The shaft assembly sequence planning results.
(a)No. 1No. 2No. 3No. 4No. 5No. 6No. 7No. 8No. 9No. 10No. 11No. 12No. 13No. 14111111111111112222222888888838888882222226833333633333626444463444463346777446777444775567775567775569, 10555569, 1055559, 109, 109, 1069, 109, 109, 109, 109, 1069, 109, 109, 109, 10(b)No. 15No. 16No. 17No. 18No. 19No. 20No. 21No. 22No. 23No. 24No. 25No. 26No. 27No. 28111111111111112222222222222233333333333333444444444488887777778888444455588867776777889, 105567556755669, 10869, 105569, 105569, 1059, 10669, 1069, 109, 109, 1069, 109, 10(9, 10)69, 10Two optimal sequences are obtained by optimizing the geometrically feasible assembly sequence: 1-2-8-6-3-4-7-5-(9,10) or 1-8-6-2-3-4-7-5-(9,10).


## 6.2.3. Cylinder Assembly Experiment

The expansion and contraction cylinder shown in Figure19 is considered the third test because of its number of parts and potential multiple feasible sequences. After processing the CAD model, 124728 geometrically feasible assembly sequences are generated, in which part 1, part 5 and part 6, part 7, part 10 and part 11, part 8 and part 9, part 12, part 13, part 14, part 15 and part 16, part 19, and part 20 are regarded as the same step for installation. Therefore, a total of 14 assemblies need to be considered. The maximum tool replacement time is seven, and the maximum redirection time is eight. After optimization, the optimal sequence is 04-23-03-02-(01,05,06)-(07,10,11)-24-(08,09)-(12,13,14,15,16)-17-18-21-(19,20)-22 (see Table 8 for the optimal sequence with close fitness function values).Figure 19
Exploded view of cylinder and related parts.Table 8
The cylinder assembly sequence planning results.
No. 1No. 2No. 3No. 4No. 5No. 6No. 7No. 8No. 9No. 10No. 11No. 12No. 130404040404040404040404040423242323232323232323232323032324030303030303030303030203032402020202020202020201, 05, 060202022401, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0607, 10, 1101, 05, 0601, 05, 0601, 05, 0601, 05, 062407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 112407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1108, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 092410, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 162417171717171717171717171717241818181818181818181818181824212121212121212121212121212419, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 20242222222222222222222222222224No. 14No. 15No. 16No. 17No. 18No. 19No. 20No. 21No. 22No. 23No. 24No. 25No. 260404040404040404040404040403240303030303030303030303230324232323232323232323230223232402020202020202020201, 05, 060202022401, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0607, 10, 1101, 05, 0601, 05, 0601, 05, 0601, 05, 062407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 112407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1108, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 092410, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 162417171717171717171717171717241818181818181818181818181824212121212121212121212121212419, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 20242222222222222222222222222224No. 27No. 28No. 29No. 30No. 31No. 32No. 33No. 34No. 35No. 36No. 37No. 38No. 39040404040404040404040404042407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 112408, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 092410, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 162417171717171717171717171717241818181818181818181818181824212121212121212121212121212419, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2024222222222222222222222222222423232323232323232323232323240303030303030303030303030324020202020202020202020202022401, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0624No. 40No. 41No. 42No. 43No. 44No. 45No. 46No. 47No. 48No. 49No. 50No. 51No. 52040404040404040404040404042407, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 1107, 10, 112408, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 0908, 092410, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 1610, 12, 14, 15, 162417171717171717171717171717241818181818181818181818181824212121212121212121212121212419, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2024222222222222222222222222222403030303030303030303030303242323232323232323232323232324020202020202020202020202022401, 05, 0601, 05, 0601, 05,0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0601, 05, 0624


## 7. Result and Discussions

From the assembly sequences generated for the above three mechanical products, the proposed method can generate multiple sequences with the same assembly property at the same time. Moreover, for parts such as the no. 24 plug of the cylinder block, it is considered that they can be assembled with the no. 7 part perpendicular to each other without relocation. Intersecting with the general planning method solves the problem of manual participation in the oblique assembly of mechanical products. By judging the feasible residual region after assembly, multiple parts are regarded as the same step for assembly, which reduces the computational complexity and makes the generated sequence more in line with the actual production process.


## 8. Conclusion

This paper proposes a hierarchical assembly information model to infer the optimal assembly sequence under multiple constraints. Firstly, through the feature-based segmentation and simplification of parts, the key structures of products in the assembly process are divided into product, part, feature, surface, and constraint layers. The weighted fitness function of the factors affecting the product assembly performance is established. The main contributions of this study are as follows:(1)
A multilevel feature-based assembly information model is established. Integrating the advanced semantics of the CAD system and the data of the CAD model into the model framework has become the integration link between CAD and CAPP(2)
According to the graph theory, the information in the framework is mapped into a response connection graph. The key features of parts in the assembly process are obtained by simplifying the subsequent computational complexity(3)
According to polar coordinates, the motion state of parts under multiple geometric constraints is expressed in sets. The geometric feasible assembly sequence is searched through the disassembly process(4)
The fitness function of the assembly process is constructed by influencing assembly factors to the assembly information modelThe future scope of this study is to consider further the assembly stability of parts and the impact of parallel assembly on assembly sequence planning.



---

*Source: 9461794-2022-02-09.xml*