Robotics and Computer Integrated Manufacturing 58 (2019) 220–229
Contents lists available at ScienceDirect
Robotics and Computer Integrated Manufacturing journal homepage: www.elsevier.com/locate/rcim
Clustering and retrieval of mechanical CAD assembly models based on multi-source attributes information
T
Zhoupeng Han, Rong Mo , Li Hao ⁎
Key Laboratory of Contemporary Design and Integrated Manufacturing Technology, Ministry of Education, Northwestern Polytechnical University, 127 West Youyi Road, Xi'an, Shaanxi 710072, China
ARTICLE INFO
ABSTRACT
Keywords: Multi-source attributes information Spectral clustering Indexing model Assembly clustering Assembly retrieval
Content-based CAD assembly model retrieval focuses more on the similarity measure of geometry and topology information, which can hardly meet designers’ design requirements in the product conceptual design process. To search quickly and effectively the CAD assembly models related with product design requirements information for assembly model reuse, inspire designers’ design thought and product design innovation in the product conceptual design phase, a novel approach for CAD assembly model clustering and retrieval based on multisource attributes information is proposed. First, the CAD assembly model is represented by attribute adjacency graph (AAG) with multiple attributes information, and the similarity between assembly models is evaluated comprehensively by considering part information and assembly relationship information. Then, a weighted graph is constructed for assembly clustering in model repository. Meanwhile, an improved spectral clustering algorithm is given to divide CAD assembly models into different assembly clusters. Subsequently, indexing model is established for each assembly cluster. After that, the process of assembly retrieval based on indexing model mechanism is given in detail. Finally, experiments on the prototype system verify effectiveness and feasibility of the proposed approach for assembly clustering and retrieval.
1. Introduction Model reuse plays an important role in the process of product design, which can enhance greatly efficiency of product design and shorten product development cycle. With the development of computer technology, Computer-aided design systems have been implemented and used widely in many enterprises. Thus, a number of 3D CAD models are generated, which contains part model, assembly/product model, etc. Especially, the assembly models not only contain part information and assembly constraint information, but also implicate product function, design/assembly intents, design knowledge, etc. These assembly models can be employed for reference and reuse in the process of new product development. The CAD assembly retrieval and reuse have become a research hotspot in CAD model reuse field. Currently, there exist plenty of works dedicated to content-based CAD part model retrieval, which can be classified into two main aspects: topology-based model retrieval [1-3] and geometry-based model retrieval [4-6]. Without taking assembly topology and assembly constraint information into account, these methods are not suitable for assembly model retrieval. There have been a few studies on assembly model retrieval. Deshmukh et al. [7] provided early an approach for
⁎
assembly retrieval, where some information containing assembly statistics and annotations, constituent parts, mating conditions and joint orientation relationships are considered comprehensively for searching CAD assembly model in model library. Additionally, the assembly is represented as a mating graph. Moreover, the detailed process of content-based assembly retrieval is given. It is so simple for descriptor information and search criteria of assembly that the retrieval accuracy is not high. Chen et al. [8, 9] given a multi-level assembly descriptor, which contains topological structure, assembly semantics and geometric shape information. They design a retrieval strategy for improving speed of assembly retrieval by using an indexing mechanism. The approach can search similar CAD assembly models in product library by making use of the skeleton models produced in the process of top-down-based assembly design. Hu et al. [10] presented a relaxed lightweight assembly retrieval approach using vector space model (VSM), where CAD assembly model is described as n dimensions space vector, n representing the number of assembled parts. To improve the speed of models matching online, the matching process based on typical part is given in detail. The similarity between assembly models is evaluated by considering part geometry and number of assembled parts information. Therefore, the accuracy and efficiency of CAD assembly
Corresponding author. E-mail addresses:
[email protected] (Z. Han),
[email protected] (R. Mo).
https://doi.org/10.1016/j.rcim.2019.01.003 Received 29 April 2018; Received in revised form 6 January 2019; Accepted 6 January 2019 Available online 19 March 2019 0736-5845/ © 2019 Elsevier Ltd. All rights reserved.
Robotics and Computer Integrated Manufacturing 58 (2019) 220–229
Z. Han, et al.
model retrieval will be affected when the number of assembled parts is very large. Wang et al. [11] presented an assembly retrieval approach based on shape distribution and Earth Mover's Distance (EMD), where shape of CAD part in assembly is described as a histogram distribution, and parts matching between different two assembly models is solved by using EMD . It can search similar assembly models by inputting CAD part model. However, these inputting models generally do not exist in the product conceptual design phase. The approach cannot meet realistic requirements without considering high-level semantics knowledge and assembly constraint information. Based on that, Zhang et al. [12] proposed an assembly retrieval based on a modified Hausdorff distance (MHD), where spatial point set is employed to quantitatively describe shape distributions of the assembly model, and the directed Hausdorff distance is used to evaluate the local dissimilarity between the generated point sets. Furthermore, to enhance level of CAD assembly model reuse, some reusable structures are discovered ahead from CAD assembly model including common design structure [13-16], key assembly structure [17], modular assembly structure [18] and so on, which can be positioned quickly and reused effectively by designers/ engineers. These previous methods mainly concern on searching the CAD assembly model by making use of “model”. That is, the target assembly models in model repository are search by inputting some existing CAD models. However, the “inputting model” information is unknown generally in the product conceptual design phase. There is much difficulty in satisfying flexibly the need of designers/engineers only considering geometry and topology of CAD model. It is becoming more and more important for designers to search and find some useful CAD assembly models they need really by using the product design requirements information. Researchers have paid more attention to semantic-based CAD model retrieval for design reuse. There have been some semantic-based CAD model retrieval systems, which contain SketchUp [19] developed by Google, Shape Repository [20] provided by Aim@shape, Princeton 3D Model Search Engine [21], etc. Although these systems can search CAD model by using keywords matching, they express semantics optionally and informally, lacking of correlation relationship analysis between structures and semantics, and semantic understanding in CAD model. Aiming at this issue, Wang et al. [22] built a functional semantics ontology for semantic annotation and gave detailed process of semanticbased CAD model retrieval in the product conceptual design phase. The approach mainly analyses the structure–function correlation and annotates functional semantics on CAD Part model without considering assembly model. Subsequently, Jeon et al. [23] proposed an approach for semantic-based CAD model retrieval using design document. They solved the semantic gap between design document and CAD model by using semantic and rule processing. After that, Han et al. [24] put forward an approach for CAD assembly model retrieval based on multisource semantics information. The assembly model is described by considering multi-source semantics information including part semantics, assembly constraint semantics and functional semantics, and its functional semantics is annotated from the point of view of assembly structure and part shape. Weighted bipartite graph (WBG) is employed to solve the problem of semantic matching for similarity measure between assembly models. The approach can search flexibly CAD assembly model by using product design functional semantics. Assembly model can not only embody overall design structure of product, but also implicate product function requirements, design and assembly intents. To satisfy effectively demand of CAD assembly model reuse by using product design requirements information for product conceptual design, the paper aims to propose an assembly clustering and retrieval approach based on multi-source attributes information on the basis of previous work done in reference [24]. Here, CAD assembly model is represented by attribute adjacency graph (AAG) with multiple attributes information, and the similarity between assembly models is evaluated comprehensively from the aspects of part information and assembly relationship information. Based on that, a weighted graph is
constructed for assembly clustering in model repository and an improved spectral clustering algorithm upon greedy thought is given to classify CAD assembly models into different assembly clusters. Furthermore, indexing model is established for each assembly cluster to accelerate the speed of assembly retrieval. Clustering-based assembly retrieval is given by using multiple attributes information. This paper is organized as follows. Section 2 gives representation for CAD assembly model from multi-source attributes information. In Section 3, similarity between assembly models is evaluated comprehensively by considering part attributes information and assembly relationship attributes information. The assembly clustering based on spectral clustering is given in detail in Section 4. Clustering-based assembly retrieval is put forward in Section 5. Subsequently, the experiments and discussions are presented in Section 6. Finally, the paper is concluded and further work directions are given in Section 7. 2. Representation for CAD assembly model using multi-source attributes information CAD assembly model is made up of some parts or subassemblies in the light of their assembly constraint information. In order to cluster and search the assembly model by using these information with which designers are concern, the various information of assembled part and assembly constraints should be considered. They not only contain geometric and topologic information of part, but also involve surface contact, degree of freedom, design intents, design function and so on. Therefore, the multi-source attributes information about assembled part and assembly relationship should be taken into account for assembly clustering and retrieval in CAD model repository. In fact, CAD assembly model can be described by an attribute adjacency graph (AAG), where the node and its attribute represent respectively part assembled and attributes information of the part, the undirected edge and its attribute represent respectively connection relationship and assembly constraint information between parts. The AAG for mechanical CAD assembly model can be expressed by
G1 = {V , E , VS, ES }
(1)
Where V is a set of nodes representing assembled parts. The assembled parts are grouped into two categories: connector and function part [17]. Connectors are the parts that can mechanically join or affix two or more parts together including bolt, nut, screw, pin, key, gasket, bearing and so on. Function parts are the parts with certain function, performance and important characteristics except the connectors. E is a set of edges representing connection relationships between assembled parts. VS is a set of attributes of the nodes containing multiple attributes of parts for similarity evaluation between parts, such as name, shape, size, function, material, etc. And ES is a set of attributes of the edges containing assembly constraint information between assembled parts for similarity evaluation between assembly relationships, such as connection type, contact face type, number of contact faces, etc. [25] An example of AAG for mechanical CAD assembly model is shown in Fig. 1. The assembly is composed of ten parts, where four parts are function parts and the rest are connectors. Fig. 1(a) shows cross-section of the CAD assembly model, and corresponding AAG for the assembly is shown in Fig. 1(b). AAG can describe topological information, part information and other information attached in assembly models. On the basis of the AAG, the similarity between assembly models will be evaluated subsequently to provide support for assembly clustering and retrieval. 3. Similarity measure between CAD assembly models The data representation for cluster analysis is divided into two main categories: pattern matrix and proximity matrix. Pattern matrix is an n × d matrix representing the clustering data, where n is the number of pattern space (data elements), and d is the dimensionality of pattern space. Proximity matrix is an n × n similar matrix, each element of 221
Robotics and Computer Integrated Manufacturing 58 (2019) 220–229
Z. Han, et al.
3
4
5
6
2
7
10 e4-10
e3-10
8
1
5
e4-5
e3-4
4
9 9
e8-9 8
10
1-Gear shaft
5-Seal
9-Nut
2-Bearing
6-Driving gear
10-Screw
3-Frame
7-Key
4-Cover
8-Washer
3
e2-4
e1-5 e1-9
1
es1-2
e1-8
e2-3 2
e1-7
e1-6 e6-8 6
e6-7
7
Function part
Connector
Connection between function parts
Connection between parts including connector
(a) Cross-section of mechanical CAD assembly model
(b) AAG for assembly model
Fig. 1. CAD assembly model and its AAG, (a) Cross-section of mechanical CAD assembly model (b) AAG for assembly model.
which is the similarity between any two data elements. The two types of data representation can meet demand of different clustering algorithms. Assembly model clustering differs from part model clustering. It is obvious that there are many differences between CAD assembly models, such as number of assembled parts, number of assembly constraints and so on. It means that there exists dynamic dimensionality of pattern space between assemblies in model repository. It is necessary to consider the dynamic matching for assembled parts or assembly constraints between different assembly models. Therefore, the proximity matrix is relatively suitable for assembly clustering. Furthermore, similarity between assembly models will be evaluated comprehensively to offer adequate prepare for assembly clustering and retrieval.
similarity about qualitative attribute is calculated as
or string set in model design process, such as name, function, etc. The set theory is employed to calculate the similarity about semantic attribute [27], which can be expressed by
sim _attribute (qki , pkj ) =
pression of values, including size, surface area, volume and so on. The similarity measure about quantitative attribute can be expressed as follows.
pkj
qki
pkj
(4)
• Similarity measure between parts using multiple attributes
pkj pkj )
qki
where, qik represents the kth semantic attribute of part i in assembly model Q and pjk represents the kth semantic attribute of part j in assembly model P. qki pkj is the number of elements in the intersection of the kth semantic attribute string or string set between i part and j part, and qki pkj is the number of elements in the union of the kth semantic attribute string or string set between i part and j part.
• Quantitative attribute: these attributes can be described by the ex-
max(qki ,
(3)
else
• Semantic attribute: these attributes are described mainly by a string
The assembled part not only contains part information and assembly relationship information, but also embodies assembly intent, assembly process, function and so on. Similarity between parts is evaluated comprehensively considering self-part multi-source attributes information. The attributes of part can be grouped into three classifications: quantitative attribute, qualitative attribute and semantic attribute [15]. The detailed process of similarity measure on different classification attribute is given in the following.
qki
0
where, qik represents the kth qualitative attribute of part i in assembly model Q and pjk represents the kth qualitative attribute of part j in assembly model P.
3.1. Similarity evaluation between parts
sim _attribute (qki , pkj ) = 1
1 qki = pkj
sim _attribute (qki , pkj ) =
The index weight α (α1, α2, …, αT) not only reflects the significance of different attributes on similarity evaluation between parts, but also embodies important degree of different attributes concerned by designer/ engineer. The relative index weight can be determined generally by the requirements and experiential knowledge of designers/engineers or domain experts. Moreover, the range of αt is [0, 1] and their sum equals 1, i.e. α1 + α2 + … + αT = 1. Through similarity analysis on different class attribute of part, the similarity between parts can be given as follows.
(2)
where, qik represents the kth quantitative attribute of part i in assembly model Q and pjk represents the kth quantitative attribute of part j in assembly model P. In the Section, it should be noted that the assembly models Q and P represent two different models in model repository.
• Qualitative attribute: these attributes are described qualitatively,
sim _attribute (qi , p j ) = T t=1
which contain surface type, feature type, and so on [26]. The 222
T sim _attribute (qti , t=1 t
=1
pt j )•
t
(5)
Robotics and Computer Integrated Manufacturing 58 (2019) 220–229
Z. Han, et al.
AAG
Similarity evaluation between assembly models
Part information
CAD Assembly models
Assembly clustering 0.3
2 0.8 1
Assembly relationship
0.8 3
7 0.2
Multi-source attribute information
0.8
5 0.6
2
1
5
6 0.5
0.2
4
Indexing model
6 3
C1
7
C2
Retrieval AAG
Indexing model selected
Query model information
assembly cluster Ci selected
Similarity calculation in assembly cluster Ci
Retrieval result
Fig. 2. Clustering-based CAD assembly retrieval.
where, sim_attribute(qi, pj) represents comprehensive similarity of multiple attributes between part i in assembly model Q and part j in assembly model P. T is the number of attributes of part, and αt represents weight of the t-th attribute.
assemblies and the total sum value of similarity between assembled part pairs is maximal. The problem can be view as maximum matching in weighted bipartite graph. The max-weighted bipartite graph is defined as a perfect matching, where the sum of edge-value achieves a maximal value in the matching. The Kuhn-Munkres algorithm [28] is an effective approach for solving this maximal matching in many-to-many matching problem. Here, if M is considered as the maximal matching and L0 is the set of corresponding edges. The similarity sim(Q, P) between assembly model Q and assembly model P can be calculated as follows:
3.2. Similarity evaluation between assembly relationships There are many assembly relationships between assembled parts in assembly model, which have great influence on similarity between assemblies in model repository. Here, the attributes of assembly relationship including contact-face pair, connection type, contact surface and so on, will be taken into consideration when similarity is evaluated between assembly relationships. In the same way with similarity evaluation between parts using multiple attribute information, the similarity between assembly relationships could be calculated as follows: H sim _attribute (qhi , h=1
sim _relationship (qi , p j ) =
H h=1 h i
phj )•
sim (Q, P ) =
L0
sim (qi , pj ) (8)
Max (nq, n p)
where, l(qi, pj) ∈ L0 represents the perfect matching between assembled part nodes qi and pj. nq and np represent respectively the number of function parts in assembly models Q and P. Max(nq,np) is the maximum value of nq and np. To meet demand of assembly clustering and retrieval, the similarity matrix S among assembly models in model repository in the light of above similarity evaluation between assembly models can be obtained, expressed by
h
=1
l qi, pj
(6)
j
where, sim_relatioship(q , p ) represents similarity between assembly relationships of assembled parts i, j in assembly models Q and P. H is the number of attributes of assembly relationships, and βh represents weight of the t-th attribute.
S=
3.3. Similarity evaluation between assembly models using weighted bipartite graph
1 sim (1, 2) sim (1, 2) 1
sim (1, n) sim (2, n) 1
sim (1, n) sim (2, n)
1
(9)
where, n denotes the number of CAD assembly models in model repository, sim(i, j) denotes similarity between assembly models i and j.
(1) Comprehensive similarity between assembled parts
4. Assembly clustering based on spectral clustering
On the basis of similarity evaluation between assembled parts from the point of view of the part and assembly relationship using multisource attributes information, the comprehensive similarity between assembled parts sim(qi, pj) can be measured as follows:
4.1. Clustering model for CAD assembly Assembly models in model repository should be clustered conveniently and flexibly according to specific requirements of designers. It contributes to discovering some potential information embodied in assembly model, and provides support for assembly retrieval and reuse. Spectral clustering is a clustering algorithm taking a graph representation of the original data through a weighted adjacency matrix or similarity matrix, where the original data is considered as node, and the similarity between all pairs of two data point is considered as weight of edge connecting two nodes in the graph. It aims to find a feasible method for dividing the weighted graph into some subgraphs within which the sum of value of edges is as high as possible but between which the sum of value of edges is as small as possible [29]. Spectral clustering is more adaptable to data distribution and has better clustering effect compared to some traditional clustering algorithms, which has been used widely in
sim (qi , p j ) = sim _attribute (qi , p j )•w1 + sim _relationship (qi , p j )•w2 (7) where, w1 and w2 represent respectively the weight of part similarity and assembly relationship similarity of assembled part, and their sum equals 1, i.e. w1 + w2=1. (2) Similarity evaluation between assembly models There are different numbers of assembled parts in different assembly models, which are various among their attributes. Thus, it is necessary to consider assembled parts matching problem when similarity is calculated between assembly models. In essence, that is how to find assembled part pairs between two part sets from corresponding 223
Robotics and Computer Integrated Manufacturing 58 (2019) 220–229
Z. Han, et al.
Fig. 3. Some typical interfaces of prototype system, (a) Reference set for similarity evaluation, (b) Assembly retrieval using multi-source attributes information.
some fields, such as document clustering [30], image segmentation [31], community detection for complex network [32] and so on. There are similar relationships among assembly models in model repository, and the similarity matrix S given previously contains similarity between any two CAD assembly models. Thus, if one assembly model is
considered as one node and the similarity between assembly models is viewed as weight of edge. Based on that, the similarity relation graph could be constructed, and corresponding weighted graph G2 is expressed by
G2 = {V , E , W } 224
(10)
Robotics and Computer Integrated Manufacturing 58 (2019) 220–229
Z. Han, et al.
d (i ) i = j , 1 0
D (i , j ) =
i i
n, 1 j
j
n (12)
(2) Laplacian matrix L Laplacian matrix L plays an important role in spectral clustering algorithm [33], which is defined as
L=D
(13)
W
where, D, W represents respectively the degree matrix and weighted matrix in graph G2. Know that the Laplacian matrix L is a symmetric matrix and its eigenvalue is real. During the traditional spectral clustering process, W increases with the square of elements’ number. The space complexity of storing similarity matrix is O(n2) and the time complexity of the Eigen-decomposition of Laplacian matrix is O(n3). Some typical improved spectral clustering algorithms [34-36] have been given, where a sparse, approximate W is generated and used to reduce time cost and space resources. To improve high accuracy and efficiency of assembly clustering, the approximate optimum sparse matrix is obtained by referring to above relevant references. (3) Modularity Q The number of clustering is not only determined by designers/engineers, but also is given by using the evaluation index of clustering result. The modularity can be given and extended for spectral clustering by using modularity in community detection for complex network for reference [37], which is expressed by 500
400
300
200
100
0
Q=
1 2
ij ij
(a) The results of assembly clustering using spectral clustering
=
1 2
ki =
k i kj 2
(Ci, Cj )
ij ij
ij j
(14) (15) (16)
where, Q represents the modularity in the process of assembly clustering, ω represents the total sum of weight of edges in the graph G2, ki represents the sum of weight of edges connecting with node i, ωij represents the sum of weight of edges connecting with nodes i and j, Ci represents the cluster to which node i is assigned. The δ function δ(Ci, Cj) is 1 if Ci = Cj and 0 otherwise. 4.2. Spectral clustering algorithm for assembly clustering On the basis of weighted graph G2, an improved spectral clustering algorithm for assembly clustering is given in the following.
(b) The modularity Q for spectral clustering Fig. 4. Assembly clustering result and modularity Q based on spectral clustering, (a) The results of assembly clustering using spectral clustering; (b) The modularity Q for spectral clustering.
Spectral clustering algorithm Input:G2: weighted graph, S: similarity matrix.Output: C: cluster result, Q: modularity function.Step1:The degree matrix D is constructed in the light of the similarity matrix S.Step2:Laplacian matrix L is calculated.Step3:The normalized Laplacian is and the corresponding eigenvectors X is calculated by using D−1/2LD−1/2 , calculated.Step4:The eigenvalues of eigenvectors X are sorted in ascending order.Step5:For (k = 2; k < n; k++) Let H (n × k) be the matrix containing the vectors f1,… fk as columns. Let yi (1 < i < n) be the vector corresponding to the ith row of H. Cluster the points (yi)i = 1,…,n with the k-means algorithm into clusters C1,…,Ck. Compute modularity Qk, and let k = k + 1. If k = n, then go to Step 6, otherwise, go to Step 5. Step6: The max value of Q is selected and result of assembly clustering C is given.
(1) Degree matrix D
• • • • •
The degree of node vi in graph G2 is the sum of weight value of edges connecting the node vi, which is expressed by n
di =
wij j=1
(11)
According to the degree of node di, the degree matrix D is a diagonal matrix of order n, is given in the following.
The spectral clustering above given can divide weighted graph G2 into some subgraphs corresponding to clustering results of assembly 225
Robotics and Computer Integrated Manufacturing 58 (2019) 220–229
Z. Han, et al.
Table 1 Portion results of assembly clustering in CAD assembly model repository.
Cluster(Ci)
Assembly clustering
C1
C2
C3
models in model repository. According to the modularity function Q(k), the best result of assembly clustering can be obtained when the value of Q is maximal. Thus, the number of assembly clusters is got automatically without intervention. The clustering method is implemented easily, with high flexibility and strong expansibility.
by the indexing model selected. Then, the similarity between assembly models and query model in the assembly cluster is calculated. The CAD assembly models whose similarity exceeds the similarity threshold will be searched and output. The proposed approach can narrow the range of similarity comparison between assembly models, thereby reducing the amount of similarity calculation.
5. Assembly retrieval based on clustering
5.1. Indexing model of assembly cluster
The previously mentioned assembly clustering method can be used to group assembly models into several assembly clusters C = {C1, C2, C3,.., Cm} according to multi-source attributes information. To accelerate assembly retrieval and acquire quickly assembly models meeting requirements of model reuse in product conceptual design, clusteringbased CAD assembly retrieval process is given in detail. Fig. 2 shows the process of CAD assembly retrieval based on clustering. It consists of the two main parts: assembly clustering (Offline) and clustering-based assembly retrieval (Online). Assembly clustering is the premise and basis of clustering-based assembly retrieval, where assembly clustering is carried out based on spectral clustering. Assembly models are divided into several different assembly clusters C = {C1, C2, C3,.., Cm} according to multi-source attributes information. Moreover, indexing model is constructed for each assembly cluster. Clustering-based assembly retrieval aims to search the assembly models meeting requirement of product design by using query AAG or query text information in the design reuse. The query model information (AAG) is compared with all indexing models of assembly clusters. The indexing model with the highest similarity between it and query model is selected. Meanwhile, the assembly cluster is positioned quickly
Indexing model that belongs to the CAD assembly cluster contains one or several typical assembly models, and assembly clusters correspond to different indexing models. In the weighted network for assembly clustering, indexing model can be described as these nodes with the highest importance degree in each community structure (assembly cluster), which represent the assembly nodes closing to assembly cluster centre. Degree of node can be employed as evaluation basis of indexing model for each community structure in clustering model. The degree of node i in community structure Ct can be expressed as
d (i ) =
aij j Ct
(17)
where, aij represents similarity wij between assembly models i and j in the community structure corresponding to assembly cluster Ct. Given the above information, the process of creating indexing model for assembly cluster in model repository is given as follows: Step1: the degree of all node in community structure Ct (1 ≤ t ≤ m) is calculated, where m is the number of assembly clustering. 226
Robotics and Computer Integrated Manufacturing 58 (2019) 220–229
Z. Han, et al.
Table 2 Some samples of assembly retrieval based on multi-source attribute information.
Query (Q)
Retrieval results
1.0000
1.0000
1.0000
1.0000
1.0000
1.0000
1.0000
1.0000
1.0000
0.9526
0.8293
0.7210
0.7210
0.6215
0.5116
1.0000
1.0000
1.0000
1.0000
1.0000
1.0000
1.0000
1.0000
0.9526
0.9526
0.7858
0.7525
0.6520
0.6115
0.5290
Q1
Q2
query model information and indexing models of all assembly clusters is calculated, and the indexing model with the highest similarity and corresponding assembly cluster are selected. After that, the similarity between query model information and the assembly models only in the assembly cluster instead of all assembly models. It can overcome the limitation of previous methods focusing on searching model by using “model” in the product conceptual design phase, and improve efficiency of assembly retrieval.
1 Proposed method VSM
0.9 0.8
Precision
0.7 0.6 0.5 0.4
6. Implementation
0.3
6.1. Prototype system
0.2
The proposed approach has been implemented in a prototype system, which is developed on the platform Microsoft Visual Studio C# 2010 and SQL SEVER 2008R. Moreover, Matlab2016 is used for assembly clustering. The system is composed of three main modules, i.e., assembly clustering, assembly retrieval and assembly model management. Currently, the model repository contains 502 assembly models and 6348 part models for assembly clustering and retrieval. These CAD assembly models are mainly downloaded from some engineering model repository [38, 39] and some models come from our previous work. Some typical user interfaces of the prototype system are shown in Fig. 3.
0.1 0
0
0.1
0.2
0.3
0.4
0.5 0.6 Recall
0.7
0.8
0.9
1
Fig. 5. Precision–recall curves comparison of assembly retrieval results.
Step2: these nodes in community structure Ct are sorted descending by node degree. Step3: the node with the maximum value of node degree is selected as indexing node and corresponding CAD assembly model is considered as indexing model for assembly cluster Ct, and let t = t + 1. Step4: If t > m, then end. Otherwise, go to Step1.
6.2. Experiments and discussions (1) Assembly clustering
5.2. Assembly retrieval
The similarity between assembly models in model repository is calculated and similarity matrix S is obtained by the similarity evaluation method mentioned in Section 3. On the basis of similarity matrix S, the weighted graph is constructed and the spectral clustering mentioned in Section 4 is employed for assembly clustering. Fig. 4
When designers retrieving assembly models in model repository, the query text or query model information (AAG) equipped with multisource attributes information can be input rather than geometry and topology information of models. Subsequently, the similarity between 227
Robotics and Computer Integrated Manufacturing 58 (2019) 220–229
Z. Han, et al.
Fig. 6. Running time statistics comparison of assembly retrieval.
shows assembly clustering results and modularity Q based on spectral clustering, where Fig. 4(a) shows the results of assembly clustering based on spectral clustering, and the modularity Q for spectral clustering is shown in Fig. 4(b). As shown in Fig. 4(b), the optimal modularity is Q = 0.6210 and corresponds to the division into 9 subgraphs. It means that the best result of assembly clustering is obtained when the number of assembly clusters in model repository is 9. Table 1 shows the portion results of assembly clustering in CAD assembly model repository.
more advancement than the normal assembly retrieval without indexing model. In the system, the indexing model mechanism for assembly clusters has a very important role in accelerating the speed of assembly retrieval. (3) Retrieval performance Similarity calculation is the main process of assembly retrieval online and has a significant impact on retrieval performance. Computational complexity of similarity calculation mainly reflects in similarity calculation between assembly models based on KuhnMunkres algorithm. Its computational complexity is O(n3), where n is the maximal number of assembly part between any two assembly models. Furthermore, the computational complexity of assembly retrieval based on clustering is O(m + r), where m is the number of assembly clusters and r is the number of assembly models in assembly cluster with indexing model selected. Due to more consideration of multi-attribute information, the given algorithm has some defects at present. Compared to the graph isomorphism method previously, the proposed approach has low precision in the aspect of structure similarity. This issue will be improved further in our future research.
(2) Assembly retrieval using multi-source attribute information As is mentioned in Section 5, query text or query AAGs are constructed using multiple attributes as query information, which can not only describe overall topology information of query assembly, but also contain attribute, function and performance information of assembled parts. Some samples of assembly retrieval are shown in Table 2. The query information Q1∼Q2 is used as the input text of assembly retrieval in the light of designers’ realistic requirements as follows: Q1 = {Mechanical arm, DoF-6, transfer-power, transfer-motion, convert-motion}, Q2 = {Conveyor, change-motion, change-velocity}.
7. Conclusion and future work
The retrieval results show that the assembly models are far away from designers’ expected goal and design requirements along with the decline of similarity, but their structures are various. It can inspire design thought of engineering designers, promote product design innovation, and be quite suitable for product scheme design in the product conceptual design phase. In addition, the assembly models meeting designers’ design requirements can be directly downloaded and reused. To evaluate the proposed assembly retrieval method, the method proposed by Hu et al. [10] is used to experiments on the model repository, and some typical assembly models are employed as query. Fig. 5 gives the precision–recall curves comparison of assembly retrieval results. As we can see from Fig. 5, the proposed method has better precision and recall of assembly retrieval than the assembly retrieval based on VSM in reference [10]. Additionally, the running time statistics of assembly retrieval system is shown in Fig. 6. The test is implemented on a PC with 4GB memory and Intel(R) Core(TM) i5-3230 M CPU @2.60 GHz. It is obvious that the performance of clustering-based assembly retrieval is
Assembly retrieval is a quite complex and difficult issue, which not only concerns on similarity of part geometry and topology, but also takes assembly relationships between parts or function information into account. Moreover, the same assembly structures may have different functions, and different assembly structures have the same functions for assemblies. In this paper, a novel assembly retrieval approach is proposed considering comprehensive consideration of part and assembly relationship from multi-source attributes information. The assembly model is described by AAG from multiple attributes, and similarity between assembly models is evaluated from the point of view of part and assembly relationship. Based on that, the similarity relationship between assembly models in model repository is expressed by a weighed graph, and an improved spectral clustering algorithm is put forward to cluster assembly models into different clusters. After that, indexing model for each assembly cluster to accelerate speed of assembly retrieval. In the proposed approach, some design requirements information in the process of product conceptual design could be employed as query input for retrieving assembly models by considering part and assembly 228
Robotics and Computer Integrated Manufacturing 58 (2019) 220–229
Z. Han, et al.
relationship attributes information. It not only help designers find easily the assembly model they need really, but also inspires innovative thinking and makes up for limitation of geometry and topology-based assembly retrieval. Furthermore, the efficiency of assembly retrieval is enhanced greatly by using the indexing model mechanism. Subsequently, our studies will aim at automatic adaption for CAD assembly model when assembled part is changed or modified in model reuse. For example, if the geometrical shape or parameter of assembled part is modified, the impact scope of change can be predicted in assembly model, and other parts are modified adaptively according to the new design requirement or design modification information.
[13] J. Zhang, Z. Xu, Y. Li, et al., Generic face adjacency graph for automatic common design structure discovery in assembly models [J], Comput. Aided Des. 45 (8) (2013) 1138–1151. [14] L. Ma, Z. Huang, Y. Wang, Automatic discovery of common design structures in CAD models [J], Comput. Graphics 34 (5) (2010) 545–555. [15] P. Wang, J. Zhang, Y. Li, et al., Reuse-oriented common structure discovery in assembly models [J], J. Mech. Sci. Technol. 31 (1) (2017) 297–307. [16] J. Zhang, M. Zuo, P. Wang, et al., A method for common design structure discovery in assembly models using information from multiple sources [J], Assem. Autom. 36 (3) (2016) 274–294. [17] Z. Han, R. Mo, Z. Chang, et al., key assembly structure identification in complex mechanical assembly based on multi-source information [J], Assem. Autom. 37 (2) (2017) 208–218. [18] Z. Han, R. Mo, H. Yang, et al., Module partition for mechanical CAD assembly model based on multi-source correlation information and community detection [J], J. Adv. Mech. Des. Syst. Manuf. 12 (1) (2018) JAMDSM0023 -JAMDSM0023. [19] http://www.sketchup.com. [20] http://www.aimatshape.net. [21] http://shape.cs.princeton.edu/search.html. [22] Z. Wang, L. Tian, W. Duan, Annotation and retrieval system of CAD models based on functional semantics [J], Chin. J. Mech. Eng. 27 (6) (2014) 1112–1124. [23] S.M. Jeon, J.H. Lee, G.J. Hahm, et al., Automatic CAD model retrieval based on design documents using semantic processing and rule processing[J], Comput. Ind. 77 (2016) 29–47. [24] Z. Han, R. Mo, H. Yang, et al., CAD assembly model retrieval based on multi-source semantics information and weighted bipartite graph [J], Comput. Ind. 96 (2018) 54–65. [25] A.K. Swain, D. Sen, B. Gurumoorthy, Extended liaison as an interface between product and process model in assembly [J], Rob. Comput. Integr. Manuf. 30 (5) (2014) 527–545. [26] C. Wang, Y. Chen, Y. Chen, et al., Development of technology for customer requirement-based reference design retrieval [J], Rob. Comput. Integr. Manuf. 22 (1) (2006) 33–46. [27] D. Cao, M.W. Fu, Port-based ontology modeling to support product conceptualization [J], Rob. Comput. Integr. Manuf. 27 (3) (2011) 646–656. [28] Y. Gao, Q. Dai, M. Wang, et al., 3D model retrieval using weighted bipartite graph matching [J], Signal Process. Image Commun. 26 (1) (2011) 39–47. [29] U Luxburg, A tutorial on spectral clustering [J], Stat. Comput. 17 (4) (2007) 395–416. [30] V. Mijangos, G. Sierra, A. Montes, Sentence level matrix representation for document spectral clustering [J], Pattern Recognit. Lett. 85 (2017) 29–34. [31] S. Zeng, R. Huang, Z. Kang, et al., Image segmentation using spectral clustering of Gaussian mixture models [J], Neurocomputing 144 (144) (2014) 346–356. [32] Y. Xu, Z. Zhuang, W. Li, et al., Effective community division based on improved spectral clustering [J], Neurocomputing 279 (2018) 54–62. [33] C. Das K, The Laplacian spectrum of a graph [J], Comput. Math. Appl. 48 (5) (2004) 715–724. [34] H. Jia, S. Ding, M. Du, Self-tuning p-spectral clustering based on shared nearest neighbors [J], Cognit. Comput. 7 (5) (2015) 622–632. [35] H. Jia, S. Ding, M. Du, A Nyström spectral clustering algorithm based on probability incremental sampling [J], Soft Comput. 21 (19) (2017) 5815–5827. [36] H. Jia, S. Ding, M. Du, et al., Approximate normalized cuts without Eigen-decomposition [J], Inf. Sci. 374 (2016) 135–150. [37] M.E.J. Newman, Analysis of weighted networks [J], Phys. Rev. E 70 (5) (2004) 56131. [38] http://www.3dcontentcentral.com. [39] http://www.zhizaoyun.com.
Acknowledgements This work is supported by the Project Supported by Natural Science Basic Research Plan in Shaanxi Province of China (No. 2016JM5040) and National Natural Science Foundation of China (No. 51775445). Supplementary materials Supplementary material associated with this article can be found, in the online version, at doi:10.1016/j.rcim.2019.01.003. References [1] M. Hilaga, Y. Shinagawa, T. Kohmura, et al., Topology Matching for Fully Automatic Similarity Estimation of 3D Shapes [C], ACM, 2001. [2] M. Li, Y.F. Zhang, J. Fuh, et al., Toward effective mechanical design reuse: CAD model retrieval based on general and partial shapes [J], J. Mech. Des. 131 (12) (2009) 124501. [3] S. Tao, Z. Huang, L. Ma, et al., Partial retrieval of CAD models based on local surface region decomposition [J], Comput. Aided Des. 45 (11) (2013) 1239–1252. [4] R. Osada, T. Funkhouser, B. Chazelle, et al., Shape distributions [J], ACM Trans. Graphics (TOG) 21 (4) (2002) 807–832. [5] M. Novotni, R. Klein, Shape retrieval using 3D Zernike descriptors [J], Comput. Aided Des. 36 (11) (2004) 1047–1062. [6] C. Chu, Y. Hsu, Similarity assessment of 3D mechanical components for design reuse [J], Rob. Comput. Integr. Manuf. 22 (4) (2006) 332–341. [7] S. Deshmukh A, A.G. Banerjee, S.K. Gupta, et al., Content-based assembly search: a step towards assembly reuse [J], Comput.-Aided Des. 40 (2) (2008) 244–261. [8] X. Chen, S. Gao, Y. Yang, et al., Multi-level assembly model for top-down design of mechanical products[J], Comput. Aided Des. 44 (10) (2012) 1033–1048. [9] X. Chen, S. Gao, S. Guo, et al., A flexible assembly retrieval approach for model reuse [J], Comput. Aided Des. 44 (6) (2012) 554–574. [10] K. Hu, B. Wang, J. Yong, et al., Relaxed lightweight assembly retrieval using vector space model [J], Comput. Aided Des. 45 (3) (2013) 739–750. [11] P. Wang, Y. Li, J. Zhang, et al., An assembly retrieval approach based on shape distributions and Earth Mover's Distance [J], Int. J. Adv. Manuf. Technol. 86 (9-12) (2016) 2635–2651. [12] J. Zhang, J. Pang, J. Yu, et al., An efficient assembly retrieval method based on Hausdorff distance [J], Rob. Comput. Integr. Manuf. 51 (2018) 103–111.
229