Ontology-Based Calculation of Complexity Metrics for Components in CAD Systems

. The high complexity of assemblies and components in Computer-Aided Design (CAD) leads to a high effort in the maintenance of the models and increases the time required for adjustments. Metrics indicating the complexity of a CAD Model can help to reduce it by showing the results of changes. This paper describes a concept to calculate metrics aiming to describe the extent of complexity of components in CAD systems based on an ontology-based representation in a ﬁrst step. The representation is initially generated from CAD models using an automated process. This includes both a boundary representation and the history of the feature-based design. Thus, the design strategy also contributes to measuring the complexity of the component so that the same shape can lead to different complexity metrics. Semantic rules are applied to ﬁnd patterns of the design and to identify and evaluate various strategies. Different metrics are proposed to indicate the particular inﬂuence factors of complexity and a single measure for the overall complexity. Furthermore, the inﬂuencing factors can also be used to allow the designer to see how to reduce the complexity of the component or assembly.


Introduction
The complexity in mechanical design increases, and consequently also the effort required to maintain and change components in systems for computer-aided design (CAD). A complexity metric can help to make the complexity in mechanical design more manageable. It enables designers, project managers, and controllers to estimate the cost and time needed for design and change tasks better. However, no standardized or universally accepted measure for the assessment of the complexity of CAD models exists [1]. This paper proposes a method to calculate such metrics. The aim is to calculate a suite of different metrics to provide and provide it to a designer. He can use this information to identify the opportunities to minimise the complexity of the design. As an addition, a single metric is thereby accessible by a fusion of the metrics of the suite.
For the conceptual design, a definition of complexity often found in the literature (e.g. [2][3][4][5]) and firstly stated by Corning [6] is used: Three key factors determine the complexity of a system: (1) Individuals: A complex system comprises numerous individual parts (or items, assets, components). (2) Relations: There are many relations (or interaction, dependencies) between the various parts. (3) Complicatedness: The parts create combined effects that are to predict and often novel or surprising (e.g. nonlinear or chaotic).
These three statements imply that the complexity increases with the number of parts and relations and decreases with the predictability of the compounds or their effects. Considering the three parts of the definition, the suitability of graph-oriented databases is assumed. Ontologies appear especially suitable for the representation and calculation of complexity, since all three parts are representable in a proven knowledge base model. In this paper, it is aimed to evaluate the complexity not only of the final shape or model but also the design strategy, which is applied to obtain it. The complexity of the production of components is not considered because this needs further knowledge about the available machines and other circumstances of production.
In literature, it is distinguished between the shape or design complexity and CAD complexity [2,5]. The first is based on the complexity of the appearance and the visible features of the result, whereas the latter is based on the actual CAD embodiment of it. For shape complexity, Rossignac distinguishes between five different types [7]: Algebraic complexity metrics the degree of polynomials required to represent the form exactly. Topological complexity metrics the existence of non-multiple singularities, holes, or self-cuts, or the number of handles and elements. Morphological complexity measures smoothness and feature size. Combinatorial complexity measures the number of vertices in polygonal meshes. Representational complexity metrics indicate the size of a compressed model.

Related Work
There are different works that investigate an assessment of the complexity of products and product models. Große Austing [8] measures the complexity of general product models. Besides CAD models, this includes other models and documents like source code and requirement documents. For the calculation, graph-based representations are used, which need to be generated manually. The weighting factors of the nodes are obtained by regression. The work aims to build an estimation model for the time and effort needed to create the particular product model.
Chase and Murty [2,5] differentiate between design complexity and CAD complexity. For design complexity, they adopted a method introduced by Stiny and Gips [9], which uses the length of the generative specification. For CAD complexity, they use a method, which counts the number of usages of specific design techniques and objects as well as the file size. The CAD complexity is indicated by a list of these values and not a single value.
Johnson, Valverde et al. [10] use different approaches to measure the complexity of CAD models of components objectively and compare them with subjective ratings by test persons. For the objective evaluation, their methods are using topologic and geometric properties. They utilise the number of faces and the ratio of the surface area of a model and a sphere with the same volume. Furthermore, they use the number of used features and the complexity of specific features. The best results showed a method which uses the ratio between the volume of the component and its bounding box.
Matthieson et al. [11][12][13] propose a complexity metric for assemblies. They present a new convention for modelling the physical architecture of assemblies as graphs. For the calculation of a complexity measure, they use graph-theoretic metrics. In their model, they use the part count, the average path length, and the path length density to estimate the assembly time, including a standard deviation as an uncertainty measure.
Besides the assessment of the complexity of CAD models, there are works proposing methods to evaluate the complexity of ontologies which can also be applied in the context of this paper.
Zhang et al. [14,15] propose a method which mainly uses the quantity, ratio, and correlativity of concepts and relations as well as their hierarchy. They calculate a set of different measures to assess the complexity of a given ontology.
Zhang et al. [16] propose another set of metrics inspired by software complexity metrics. They base all their metrics on the graphical representation of the ontology and measure the complexity on class and ontology level.

Concept
The method for the calculation of the complexity metrics comprises three steps, which are described in higher detail in the following and depicted in Fig. 1. Section 3.1 describes the concept for the automated conversion from CAD models of components into an ontologybased representation. Therefore, an ontology is used to describe all parts of the entities of components. Sections 3.2-3.4 present different complexity metrics categorised in the three key factors of complexity of a system. Section 3.5 demonstrates these metrics on two components and two design strategies. The Chapter concludes with an outlook to methods to calculate a single measure as a rough indication of the overall complexity of the components or assemblies in Sect. 3.6.

Conversion
Metric

Ontologies
The concept uses ontologies to structure the discrete entities of the component independently from the CAD-program used. For the adaption of the internal structure of the various CAD-Programs, mappings must be developed. The proposed Ontology forms the Terminological Box (TBox) of the information model. The converted CAD models form the Assertional Box (ABox). All metrics are therefore calculated using only the ABox. The TBox is used to convert the parts from the format used by the various CAD-Programs to a uniform structure achieve comparability. Figure 2 shows the hierarchy of the concepts of the ontology. The ovals represent the different concepts, and the arrows represent inheritances. Triangles indicate concepts hidden in the figure. The Hierarchy is divided in three major Parts: It uses the Boundary Representation (BRep) as well as the feature-based representation. Reference Attributes form the third part of the ontology. This way, the ontology-based information model represents all topologic and geometric entities of the CAD model as well as the design strategy and history. Therefore, this information can be used to evaluate the complexity of the CAD model of a component. The design of the component ontology uses the ontology proposed by Tessier and Wang [17] as one part of the base. The entities which describe the BRep model are taken from the ontology introduced by Perzylo, Somani et al. [18] and the OntoSTEP ontology introduced by NIST [19]. These ontologies were combined and modified to be more suitable for the aim of complexity analysis.
Features, Sketch Features, and Reference Attributes are formalised to represent the entities used to create the model and referenced to the respective BRep entities. Semantic rules help to identify patterns in the design and strategies. Since the use of an ontologybased information model, it is easier to find patterns and determine the compliance to design rules independently from the program used. These can be used to modify the single complexity metric proposed in Sect. 3.6.

Metrics for Individuals
There are two main metrics for the number of individuals of CAD models, which can be divided further, the first being the Number of Instances (NoI) and the second being the Number of Properties (NoP). Both form the nodes and leaves in the graph-based information model, so they are a significant part in the size of the information model.

Number of Instances.
The NoI is defined as the quantity of instances of all classes described in Sect. 3.1. It is dividable in the Number of Features (NoI F ), the Number of BRep Entities (NoI B ) and the Number of Reference Attributes (NoI R ) so that: The numbers are defined as the number of instances of their respective classes and subclasses in the ABox. Furthermore, the number of distinct features (NodF) influences the complexity as well because the range of feature to be known by users or designers increases.

Number of Properties.
The NoP is the number of specifications defined for features and reference attributes during design of the CAD models. These can be numeric values (NoP V ) as well as character strings (NoP S ). The numeric values can also use variable parameters for parametric design. So, the Number of Parameters (NoPm) and the NoP V which are specified using parameters (NoP V,Pm ) are also crucial for the complexity of the model. The Ratio of numerical values not using parameters is defined as: R Pm,V is the only measure proposed, where bigger values indicate a smaller complexity.

Metrics for Relations
Equivalently to Sect. 3.2, this part of the complexity can be indicated by the Number of Relations (NoR) between different instances in the information model. Pairs of inverse relations are counted as one relation. A special type of relation is the parent-child relation between a feature or reference attribute and the features or reference attributes used for its creation. The number of these relations is called Number of Parent-Child-Relations (NoR C ). As an Addition, the longest path from the root node to a child node is given by LP. It describes the maximum number of predecessors a node in the ontology-based representation has. Analogous to NodF, the number of different relation types is referred to as NodR.

Metrics for the Complicatedness
The complicatedness is the most crucial influence factor for the complexity of a system. If there are only simple relations between the different individuals, the entire system is easily predictable and applied to 3D CAD models easily changeable and understandable.
The complicatedness increases with the number of subsystems one subsystem influences and how complicated these influences are. Therefore, three metrics are calculated. The complicatedness of the structure can be described by the mean number of parentchild-relations of the features to other features (MoR C,F ) and is calculated by: where NoR F is the number of relations, with features in it. Because all relations in an ontology are directed, it is feasible to calculate all instances influenced by one instance by following all relations from an instance. The mean number of instances influenced by an instance in the ontology is given by Moni.
Of interest is also the Mean number of numeric Properties per Feature (MoP V,F ) because it indicates the ratio of features created with the help of mirroring and patterns which decrease the complexity. It is defined as:

Examples
For exemplification and clarification of the proposed metrics, two components shown in Fig. 3 are used. The first is a cuboid with three different edge lengths and three edge fillets, each with the same radius, for which a parameter is used. The second component is one of the members of the upper truss of the CRC805 demonstrator which is an abstracted airplane landing gear. (For a detailed description of the see [20]). It is designed as a long cylinder with a smaller coaxial cylinder on both ends. This cylinder is threaded on the outside. Two Chamfers are on the edges of the cylinders. This validation inspects two distinctive design strategies. In the first all feature besides the large cylinder are mirrored to get a symmetrical rod, in the second not. Instead, parameters are used to define all values of both cylinders. Table 1 shows selected metrics for both components. It is visible, that the greater number of features of the threaded rod lead to a higher complexity in the areas of individuals and relations. The design strategy using parameters instead of mirroring decreases the complexity in the subarea of Individuals lightly, since no mirroring plane is needed but increases the number of property values and-of course-parameters. In the subarea it changes all metrics with MoR C,F is lower since all features are only direct children of only one other feature. Then again it increases MoP V,F because of the features not only being copies of other features and therefor have numerical values. A final assessment of overall complicatedness depends on preferences and company guidelines.

Fusion of the Metrics
To give a rough overview over the complexity combinations of the metrics proposed in Sects. 3.2-3.4 a single measure is calculated. This fusion is influenced by the purpose of the measure and its target group. At this point, it is possible to use corporate design guidelines. For example, discrepancies from rules for the number of elements in a sketch or the general size of designs can be considered. The overall complexity metric depends strongly on the viewpoint and the company guidelines, as complexity also comes with using distinctive design strategies in one company or even one component. A consistent design strategy in one company helps designers to understand and change components. The weighting of the proposed metrics enables the rating of the compliance to design rules. The single measure can therefore be used as an assessment of the design without deeper knowledge. It can be used as a first indication of the time needed to understand the design idea and for the subsequent changes of it. This is particularly advantageous in agile development, where the approximate time for a task must be known as early and as precise as possible priorly.

Conclusions
There is no broadly accepted measure to indicate the complexity of CAD models [1]. However, the assessment of the complexity helps to control the complexity of models and therefore to minimise the effort and time needed to maintain and change models if required. This paper proposes a concept for a method to describe and calculate metrics for the complexity of assemblies and components in CAD systems. It therefore utilises an ontology-based information model as an intermediate. The first step is to convert the internal model structure of the CAD System to the ontology-based information model. Two different general ontologies are the basis for the conversion of components and assemblies. The information model is then enriched with information obtained by application of semantic rules and is tested for validity and integrity by reasoning.
Based on this ontology-based representation of the component, a set of metrics regarding the three subareas of complexity are calculated. This set of metrics can be used to reduce the complexity of the model by indicating the influence factors. Thereby, it eventually helps to reduce the time needed to understand and change the design. Based on these numbers, a single measure is calculated as a rough overview of the complexity of the model.
The results of the concept help the designer and are also helpful in controlling and other departments. With the single measure as an indication for the complexity of a CAD model, it is possible to estimate better the difficulty and time needed to change the component or assembly.
Open Access This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.
The images or other third party material in this chapter are included in the chapter's Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the chapter's Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.