16
Flexible and robust CAD models for design automation Kristian Amadori a,, Mehdi Tarkian a , Johan Ölvander a , Petter Krus b a Department of Management and Engineering, Division of Machine Design, Linköping University, 581 83 Linköping, Sweden b Department of Management and Engineering, Division of Fluid and Mechatronic Systems, Linköping University, 581 83 Linköping, Sweden article info Article history: Received 25 February 2011 Accepted 18 January 2012 Available online 11 February 2012 Keywords: Design automation Multidisciplinary Design Optimization Robustness Flexibility Knowledge-Based Engineering abstract This paper explores novel methodologies for enabling Multidisciplinary Design Optimization (MDO) of complex engineering products. To realize MDO, Knowledge Based Engineering (KBE) is adopted with the aim of achieving design reuse and automation. The aim of the ongoing research at Linköping Univer- sity is to shift from manual modeling of disposable geometries to Computer Aided Design (CAD) automa- tion by introducing generic high level geometry templates. Instead of repeatedly modeling similar instances of objects, engineers should be able to create more general models that can represent entire classes of objects. The proposed methodology enables utilization of commercial design tools, hence taking industrial feasibility into consideration. The concept of High Level CAD templates (HLCt) will be proposed and discussed as the building blocks of flexible and robust CAD models, which in turn enables high fidelity geometry in the MDO loop. Furthermore, quantification of the terms flexibility and robust- ness are presented, providing a means to measure the quality of the geometry models. Finally, application examples are presented in which the outlined framework is evaluated. The applications have been chosen from three ongoing research projects aimed at automating the design of transport aircraft, industrial robots, and micro air vehicles. Ó 2012 Elsevier Ltd. All rights reserved. 1. Introduction In the design of complex and tightly integrated engineering products it is essential to be able to handle cross-couplings and synergies between different subsystems [1]. Typical examples of such products could be transportation vehicles like automobiles and aircraft, or mechatronic machines like industrial robots. Hence it is necessary to combine models from several disciplines in order to obtain a holistic view of the system. Furthermore, in order to achieve an optimal design, the product must be treated as a com- plete system instead of developing the different subsystems inde- pendently [2]. Since the subsystems in general have conflicting optimal solutions, a holistic perspective is necessary to reach a bal- anced global optimal design. Optimizing the subsystems separately would most likely lead to a sub-optimal system. To effectively design and develop such products, efficient tools and methods for integrated and automated design are needed throughout the development process. Multidisciplinary Design Optimization (MDO) is one promising technique that has the potential to drasti- cally improve such a concurrent design. Giesing and Barthelemy [3], have defined MDO as ‘‘a methodology for the design of complex engineering systems and subsystems that coherently exploits the synergism of mutually interacting phenomena’’. MDO is a ‘‘systematic approach to design space exploration’’ [4], the implementation of which allows the designer to map the interdisciplinary relations that exist in a system. Relations and dependences between differ- ent subsystems can also be captured by an MDO process. Hence, it can be expected that introducing MDO in the early design phases will increase the understanding of the system, thus supporting the design process. It has been pointed out that, in most cases, and regardless of the discipline, basically all analyses require information that has to be extracted from the geometry model [5]. Hence, as pointed out by Bowcutt [1], in order to enable integrated design analysis and opti- mization it is of vital importance to be able to integrate an auto- mated and parametric geometry generation system into the design framework. On this front, the rate of computational advance- ments is continuously paving the way for new design tools, provid- ing increasing model fidelity as well as increasing the prospect for design reuse and automation [6]. The last mentioned can also be used to abolish routine-like tasks, that reduce human errors while increasing the possibilities to design more customized products [7]. Knowledge Based Engineering (KBE) has been identified as a promising method to enable design automation. KBE defines a wide range of methods and processes and can be described in several ways, depending on the application focus. In the literature, various definitions can be found that try to highlight the multiple sides of KBE. Chapman and Pinfold [8] refers to KBE as ‘‘an engineering 1474-0346/$ - see front matter Ó 2012 Elsevier Ltd. All rights reserved. doi:10.1016/j.aei.2012.01.004 Corresponding author. Tel.: +46 (0)13 28 2730; fax: +46 (0)13 14 9403. E-mail addresses: [email protected] (K. Amadori), [email protected] (M. Tarkian), [email protected] (J. Ölvander), [email protected] (P. Krus). Advanced Engineering Informatics 26 (2012) 180–195 Contents lists available at SciVerse ScienceDirect Advanced Engineering Informatics journal homepage: www.elsevier.com/locate/aei

Flexible and robust CAD models for design automation

Embed Size (px)

Citation preview

Page 1: Flexible and robust CAD models for design automation

Advanced Engineering Informatics 26 (2012) 180–195

Contents lists available at SciVerse ScienceDirect

Advanced Engineering Informatics

journal homepage: www.elsevier .com/ locate /ae i

Flexible and robust CAD models for design automation

Kristian Amadori a,⇑, Mehdi Tarkian a, Johan Ölvander a, Petter Krus b

a Department of Management and Engineering, Division of Machine Design, Linköping University, 581 83 Linköping, Swedenb Department of Management and Engineering, Division of Fluid and Mechatronic Systems, Linköping University, 581 83 Linköping, Sweden

a r t i c l e i n f o a b s t r a c t

Article history:Received 25 February 2011Accepted 18 January 2012Available online 11 February 2012

Keywords:Design automationMultidisciplinary Design OptimizationRobustnessFlexibilityKnowledge-Based Engineering

1474-0346/$ - see front matter � 2012 Elsevier Ltd. Adoi:10.1016/j.aei.2012.01.004

⇑ Corresponding author. Tel.: +46 (0)13 28 2730; faE-mail addresses: [email protected] (K. Am

(M. Tarkian), [email protected] (J. Ölvander), Pet

This paper explores novel methodologies for enabling Multidisciplinary Design Optimization (MDO) ofcomplex engineering products. To realize MDO, Knowledge Based Engineering (KBE) is adopted withthe aim of achieving design reuse and automation. The aim of the ongoing research at Linköping Univer-sity is to shift from manual modeling of disposable geometries to Computer Aided Design (CAD) automa-tion by introducing generic high level geometry templates. Instead of repeatedly modeling similarinstances of objects, engineers should be able to create more general models that can represent entireclasses of objects. The proposed methodology enables utilization of commercial design tools, hencetaking industrial feasibility into consideration. The concept of High Level CAD templates (HLCt) will beproposed and discussed as the building blocks of flexible and robust CAD models, which in turn enableshigh fidelity geometry in the MDO loop. Furthermore, quantification of the terms flexibility and robust-ness are presented, providing a means to measure the quality of the geometry models. Finally, applicationexamples are presented in which the outlined framework is evaluated. The applications have been chosenfrom three ongoing research projects aimed at automating the design of transport aircraft, industrialrobots, and micro air vehicles.

� 2012 Elsevier Ltd. All rights reserved.

1. Introduction

In the design of complex and tightly integrated engineeringproducts it is essential to be able to handle cross-couplings andsynergies between different subsystems [1]. Typical examples ofsuch products could be transportation vehicles like automobilesand aircraft, or mechatronic machines like industrial robots. Henceit is necessary to combine models from several disciplines in orderto obtain a holistic view of the system. Furthermore, in order toachieve an optimal design, the product must be treated as a com-plete system instead of developing the different subsystems inde-pendently [2]. Since the subsystems in general have conflictingoptimal solutions, a holistic perspective is necessary to reach a bal-anced global optimal design. Optimizing the subsystems separatelywould most likely lead to a sub-optimal system. To effectivelydesign and develop such products, efficient tools and methodsfor integrated and automated design are needed throughout thedevelopment process. Multidisciplinary Design Optimization(MDO) is one promising technique that has the potential to drasti-cally improve such a concurrent design. Giesing and Barthelemy[3], have defined MDO as ‘‘a methodology for the design of complexengineering systems and subsystems that coherently exploits the

ll rights reserved.

x: +46 (0)13 14 9403.adori), [email protected]

[email protected] (P. Krus).

synergism of mutually interacting phenomena’’. MDO is a ‘‘systematicapproach to design space exploration’’ [4], the implementation ofwhich allows the designer to map the interdisciplinary relationsthat exist in a system. Relations and dependences between differ-ent subsystems can also be captured by an MDO process. Hence, itcan be expected that introducing MDO in the early design phaseswill increase the understanding of the system, thus supportingthe design process.

It has been pointed out that, in most cases, and regardless of thediscipline, basically all analyses require information that has to beextracted from the geometry model [5]. Hence, as pointed out byBowcutt [1], in order to enable integrated design analysis and opti-mization it is of vital importance to be able to integrate an auto-mated and parametric geometry generation system into thedesign framework. On this front, the rate of computational advance-ments is continuously paving the way for new design tools, provid-ing increasing model fidelity as well as increasing the prospect fordesign reuse and automation [6]. The last mentioned can also beused to abolish routine-like tasks, that reduce human errors whileincreasing the possibilities to design more customized products [7].

Knowledge Based Engineering (KBE) has been identified as apromising method to enable design automation. KBE defines a widerange of methods and processes and can be described in severalways, depending on the application focus. In the literature, variousdefinitions can be found that try to highlight the multiple sidesof KBE. Chapman and Pinfold [8] refers to KBE as ‘‘an engineering

Page 2: Flexible and robust CAD models for design automation

K. Amadori et al. / Advanced Engineering Informatics 26 (2012) 180–195 181

method that represents a merging of object oriented programming(OOP), artificial intelligence (AI) techniques and computer-aided designtechnologies, giving benefit to customized or variant design automationsolutions’’. According to Blount et al. [9], KBE is a ‘‘true integratorthroughout the Product Introduction Process (PIP) supporting the ideasof concurrent engineering’’. Furthermore, Verhagen et al. [10] statethat ‘‘one of the hallmarks of the KBE approach is to automaterepetitive,non-creative design tasks’’, which can lead to ‘‘significant cost savings’’and ‘‘free up time for creativity’’.

Through KBE, geometric models are given the knowledge, i.e.rules and instructions, which controls the geometrical transforma-tions required for design automation.

Geometry automation with high fidelity Computer Aided Design(CAD) tools is one area where modeling methods require substan-tial development efforts. The intention of this paper is to presentand discuss novel methods to eliminate non-creative geometricmodeling by performing reuse on specific design features. The goalis to allow engineers to work on a higher abstraction level wherethe use of low level CAD functions (i.e. points, lines, sweeps andextrusions) during the modeling and simulation phase is minimizedif not fully eradicated. The automated geometry generation is a keyenabler for so-called geometry-in-the-loop [11] multidisciplinarydesign frameworks, where the CAD geometries can serve as frame-work integrators for other engineering tools.

To eliminate non-creative work, methods for creation and auto-matic generation of High Level CAD templates (HLCt) are suggested.The principle of high HLCts is similar to High Level Primitives (HLP)suggested by La Rocca and van Tooren [12], with the exception thatHLCts are created and utilized in a CAD environment. Otherwise, thebasics of both HLP and HLCt can, as suggested by La Rocca, be com-pared to parametric LEGO� blocks containing a set of design andanalysis parameters. These are produced and stored in databases,giving engineers or a computer agent the possibility to firstly topo-logically select the ‘‘blocks’’ and then modify the shape of each‘‘block’’ parametrically. How HLCt should be created and instanti-ated into the CAD model will be discussed in the coming sections.

Besides the elimination of routine-like operations, the followingresults are also achieved when applying the proposed geometricmodeling methodologies:

� Enabling of MDO of the entire product, including the geometry.� Use of high fidelity models in early design phases.� Increase in model fidelity throughout the design process.� Reduced need for empiric based models, which enables the

search for truly novel concepts.

Moreover, in the proposed methodology, since the HLCts arecreated within the CAD system, they do not require specialistsfor their creation or modification. HLCts are thus more easily mod-ified and kept updated throughout the design process.

In order to ensure a reliable automated geometric manipula-tion, the parametric CAD model’s quality needs to be measured.No trace can be found in the literature of quantifications of CADmodels’ properties, such as robustness or flexibility. The presentpaper therefore proposes mathematical models to determine flex-ibility, robustness and design space size. An alternative approachwould be to provide tool-specific CAD instructions. However, con-sidering the differences between CAD tools and the functions avail-able, this alternative would not be generic. In addition, it can beargued whether providing such instructions, even for only oneCAD tool, would actually be possible or practical.

The paper’s outline is as follows: in Section 2, an overview ofthe field of KBE is presented while the methodology contributionsof this paper are described in Section 3. Section 4 contains thevarious application examples created by utilizing the presentedmethodologies. Section 5 concentrates on analyzing the concepts

of flexibility, robustness and design space size both in generaland with reference to the application examples. Finally, in Section6, several discussion topics are proposed before the paper is sum-marized and concluded in Section 7.

2. KBE for automated geometry modeling

A holistic product perspective by means of design reuse andautomation is needed in order to effectively manage product com-plexity. In this field, KBE is believed to be a powerful tool [13]. Toaccomplish automated design and reuse, the knowledge of thedesign process has to be captured, stored, and deployed as pre-sented by Hopgood [14]. This process can be referred to as Knowl-edge-Based Engineering (KBE). Bowcutt [1] has listed severalrequirements that CAD systems should meet to be suitable asMDO enablers from the earliest design phases, such as feed allanalysis codes, support multiple engineering views or satisfy shapeconstraints, etc. Some other requirements listed by Bowcutt arearguable. They require the model to be continuous and differentia-ble over the whole input parameters’ range. However, this is notcompatible with topological transformations that involve discreteand therefore non-continuous variable ranges. Topological trans-formations will be discussed thoroughly in Section 3.2. However,KBE constitutes a very powerful tool that guarantees that all neces-sary requirements are satisfied.

2.1. Related work

Within the aircraft design domain great strides have been madein describing methods for creation of automatic generated geome-tries. Mawhinney et al. [5] propose dividing the aircraft geometrymodel into three sub-models, viz. skeleton, surface and solid mod-els, in order to utilize each model in different analyses disciplines.Mawhinney claims that by generating displacement and rotationof profile components, aircraft geometries such as fuselage andwing can be generated for a wide range of concepts. The methodsdepicted are sufficient since these are used for conceptual designwork and none of the more complex geometrical features thatare required in later design phases have to be generated in thisearly stage. Consequently, the methods cannot be used in a moregeneral product design outline and are impracticable if fidelityenhancement is required.

Rodriguez and Sturdza [15] propose RAGE (RApid GeometryEngine) in order to produce the geometry of the aircraft. By imple-menting a lofting algorithm, different kinds of cross-sections areused to create surfaces for the various parts of the aircraft. Similarto Mawhinney, Rodriguez’s methods seem not practicable when amore detailed model is being sought.

La Rocca and van Tooren [16] go one step further and suggesthigh level geometry primitives to support designers in order toproduce automated aircraft geometries. This means that the useris able to pick parametric geometric elements from a database byusing a dedicated parameter in order to achieve concept realizationinstead of constructing the elements with CAD-based functionssuch as points, lines and curves, etc. This modeling approach is pro-ven to be effective and time saving when performing MDO, partlybecause the geometry is produced much faster than with a CADtool and partly because the preprocessing activities required tofeed the various analysis systems in the MDO process can belargely or fully automated. However, because of the code-basednature of this application, expanding fidelity is limited and depen-dent on the code writer. The fact that engineers will have to wait inorder to get new primitives of higher fidelity will ultimately slowdown the design pace.

Berard et al. [17] present methods similar to those of La Roccawhere the idea is to eliminate CAD-based functions and allow

Page 3: Flexible and robust CAD models for design automation

182 K. Amadori et al. / Advanced Engineering Informatics 26 (2012) 180–195

designers to work with intuitive engineering parameters by storingvarious parameterized CAD parts of an aircraft as components.However, instead of generating the components in a code-basedenvironment, these are stored in component databases andautomatically generated in commercial CAD tools. The generatedcomponents will then undergo a Boolean operation where inter-faces between the components are made when eliminating theadditional material, resulting in a closed solid model. The idea ofusing templates to generate the aircraft product is well motivated.However, the methodology adopted to generate the componentsmakes it very hard to firstly define smooth interfaces betweenthe templates and secondly the limited procedures for assemblingthe geometries are only appropriate for conceptual design studies.

In the work presented by Böhnke et al. [18] an airplane designlanguage is presented which is based on the Unified ModelingLanguage (UML) and allows the creation of a variety of conven-tional and unconventional airplane designs. Similar to Berard’swork, the geometry constructor is able to create the geometry incommercial CAD tools. Here, however, the geometries are con-nected by defining intersection elements which generate higherfidelity models. In the authors’ opinion, Böhnke has succeeded increating a tool for a specific application, viz. for geometry genera-tion of airplanes, rather than a general modeling methodology.

Ledermann et al. [19,20] make a genuine effort to try to categorizeCAD modeling and introduce the benefits of template modeling inCAD tools in order to develop associative and parametric methodsfor aircraft design. The geometry modeling methods proposed in thispaper are partly based upon those presented by Ledermann.

Parameterized Object h = 10b

h

Script Based

Relation

Equation Based Relation h

bh = 10b = 2*h

hif shape = ”sq”{ h = 10, b = h }else { h = 10, b = 2*h }

b

3. High level CAD modeling

Modern CAD systems offer a variety of tools to increase the flex-ibility of geometric models. However, to utilize them profitably,there is a need for tool-independent, generic modeling techniques[21]. Structuring these techniques in a clear categorization easesthe way towards design automation, since it represents:

1. A backbone for discussions and descriptions of tasks involvinggeometry design automation.

2. A helpful guide to consult when searching for solutions.3. A map to locate the required geometric design automation level

more easily.

To achieve design automation, KBE methods can be employedto effectively capture knowledge by storing rules, relations, andfacts. In the present paper, KBE is used to support High LevelCAD modeling by creating HLCts. These are higher abstractiongeometries that can be automatically instantiated in the designof new products.

In the presented paper, it has been chosen to divide geometrytransformations into two categories. The first will describe themorphological levels of geometric modeling while the second willreflect on how to effectively increase, reuse or replace the numberof geometric objects, hence its topology. Morphological changes aretransformations that occur within the same instance of a givenclass, i.e. it is enough to re-evaluate the instance. Topologicalchanges are the ones that require instances of classes to be added,replaced or removed. Instantiating an HLCt therefore requires atopological transformation, while adapting its geometry to the sur-rounding context requires morphological transformations.

Fixed Object

b = 20

Fig. 1. Various stages of morphological transformation.

3.1. Morphological transformations

The attribute ‘‘morphological’’ indicates transformations thatinvolve the form or shape of objects. The name derives from the

Greek word morphe that signifies shape, or form. During a morpho-logical transformation, the object will change continuously likestretching rubber.

Different morphological levels which will be discussed in thissection are shown in Fig. 1, with increasing modeling complexityfor each step in the pyramid. The higher the level in the pyramid,the higher the knowledge content in the method described.

Morphological geometric objects can be divided into four stages:

1. Fixed Objects are essentially objects that cannot change shape.These objects are intentionally or non-intentionally static andtherefore have a fixed set of geometric output. This stage haszero morphological value.

2. Parameterization is made on geometric objects of which the val-ues can change and hence do not have a static set of output.Because of the lack of relations between the various geometricobjects, it is not realistic to use models based only on parame-terization other than cases of non-complex geometries.

3. An effective way to decrease the number of input parameters isto set up relations between a model’s geometric objects. Thiscan be done strictly mathematically, referred to as EquationBased Relations in Fig. 1.

4. Script Based Relations are created by writing the relations usingthe various programming languages provided by the CAD sys-tem, described in Fig. 1. Both equation and script based rela-tions are of course rule-based, but the use of the latter allowslogic reasoning to be included in a more user-friendly manner,not necessarily mathematical.

3.2. Topological transformations

The attribute ‘‘topological’’ describes transformations that in-volve the location of features or objects in a geometrical model.The term derives from the Greek word topos, which signifies spotor location. As stated previously, there are three types of eventsthat can take place during topological transformations:

� Adding an instance; an object is placed in a desired position;� Removing an instance; an object is removed from a chosen

position;� Replacing an instance; an object is removed and one from a dif-

ferent class is added.

The main shortcoming of only using morphologically basedmodels in the automatic design process is that the number ofobjects cannot be changed. For instance, in a structural optimiza-tion that uses morphological transformations only, the number of

Page 4: Flexible and robust CAD models for design automation

Fig. 2. Various stages of topological instantiation.

K. Amadori et al. / Advanced Engineering Informatics 26 (2012) 180–195 183

structure elements needs to be known in advance or alternativelythe optimization must be repeated several times with differentconfigurations. To describe the topological process the followingterms are important: template, constraint and context. A templaterefers to an initial model to be re-instantiated; constraints areconditions which have to be satisfied by the instantiated instances;context is the geometric surroundings of an instance to which theconstraints are referring to.

The various levels of topological instantiation are pictured inthe pyramid in Fig. 2.

The topological pyramid consists of the following stages:

1. Manual Instantiation: by performing copy and paste functionson various objects, manual instantiation is performed. However,the instances made are not context-dependent upon creation.

2. Automatic Instantiation: though only the template is defined, theinstances created will follow the template model slavishly andcannot be context-dependent due to missing constraint defini-tions. The number of instances is parametrically modified.

3. Generic Manual Instantiation: context dependency for initiatedinstances is achieved by producing template and constraintmanuals. These contain complete construction procedures ofobjects within the template and to which geometric featuresthey are constrained. These definitions enable the template tobe manually instantiated into different contexts. This increasesthe level of reusability in a geometric model.

4. Generic Automatic Instantiation: this stage is achieved whenpre-defined functions can automatically generate or delete theinstances depending on user input. The instances are both con-text-dependent and able to vary parametrically, hence fullreuse and automation are achieved.

3.3. Dynamic top-down modeling

Traditionally, CAD design is divided into top-down and bottom-up approaches (Mäntylä [22]). These design strategies have theirroots in software development and could be associated to analysisand synthesis respectively. Mills [23] and Wirth [24] are among thefirst to suggest the adoption of top-down design, that requires‘‘thinking and problem solving before integration, rather than after-wards’’ [23]. Hence, in the top-down approach, the critical informa-tion is placed on a hierarchal top level and branches down to all

lower component levels in the product. The holistic representationof the product is thus in focus and as a result the complexity is man-aged and the possibility to revise the product structure and para-metrically modify the morphology of the geometry is improved.Conversely, in the bottom-up approach, all base elements are mod-eled separately in detail and finally assembled into larger (sub-)assemblies. Since there is no context dependency between theparts, the final geometry may be difficult to modify. This approachis therefore less well suited for design automation purposes.

Although the top-down approach is a well-proven method, ithas to be modified in order to enable topological automation ofthe geometry. In true design optimization of the geometry, theshape, placement and number of the CAD components should bemodifiable. This in turn generates a new means of CAD modeling,referred to here as dynamic top-down modeling. When applying adynamic top-down development process, the actual CAD modelscan be generated from pre-described High Level CAD templates(HLCt), see Fig. 3. The critical information on how the HLCt shouldbe instantiated is stored in the knowledge base and used by theinference engine [14]. The geometry model is divided into sub-models that are linked to each other in a hierarchic relationalstructure [20]. From an initial model, the user starts to identifythe number of instances needed from each HLCt database througha user interface. Various components can be attached dynamicallyto the model and their shape altered by the inherited design vari-ables. With reference to Fig. 3, the geometric groups represent sub-sets of the overall geometric model into which one or more HLCtsare instantiated. Within dynamic top-down modeling, HLCts caneither be placed in ‘‘geometric containers’’ in a part or in new partswithin an assembly. A detailed description of the instantiation pro-cess is given in section 4.1, with reference to an industrial robotapplication example.

Clearly, the needed HLCts can be designed already in the earlymodeling processes. It may thus appear that this approach resem-bles the bottom-up strategy. But the fundamental difference is thatthe relationships between geometric elements and the hierarchicalstructure in the model must be carefully planned.

Topological parameterization requires reference geometries ofboth the HLCt and the surrounding context. The inference engineis then able to instantiate the selected HLCt into the CAD modeland constrain it according to the predefined logic. In the simpleexample of Fig. 4 the references stored in the knowledge base, asseen in Appendix A.4, are sought after by the inference enginefollowing a logic resembling the pseudo code in Appendix A.1.The references in this case are:

� Point pc, and splines s1 and s2 from the Context geometries, aredefined as Context_ReferenceList in Appendix A.4.� Points p1 and p2 within the HLCt, are defined as HLCt_Referenc-

eList in Appendix A.4.

The inference engine will constrain p1 on s1 and p2 on s2 afterinstantiating the HLCt following a logic similar to the one pre-sented in Appendix A.2. The length parameters lx, wx and dx arethen freely defined by the user, see Appendix A.3.

As shown in this example the instantiated HLCt will adapt tothe defined context. However each instance is unique due to thecharacteristics of its contextual placement as well as the user de-fined parameters which are set independently for each instance.

The given example is deliberately simplified to highlight the ba-sic principles of the methodology. Naturally, when applying themethod in a real case scenario, all the features involved in thetopological transformation are more complex. The principles ofHLCt and inference engine, however, remain the same. The follow-ing sections describe how the methodology has been applied inthree application examples.

Page 5: Flexible and robust CAD models for design automation

Inference Engine

User Interface

Finalized Model

HLCt 2

HLCt 3

HLCt 1

Geo. Group 3

Geo. Group 1 Geo. Group 2

Initial Model

HLCt 4

Geo. Group 4

HLCt x

Geo. Group i

Fig. 3. The geometric models are constructed by instantiating HLCts in the context defined in the inference engine.

Fig. 4. The topological instantiation process of a HLCt.

184 K. Amadori et al. / Advanced Engineering Informatics 26 (2012) 180–195

4. Application examples

This section presents several examples from projects carried outat Linköping University, where the theory explained above hasbeen successfully employed. Note that the aim of the examples isto demonstrate the general character of the modeling methodol-ogy, rather than focus on the results of one them. The interestedreader is invited to read the full details of the application examplesin the referred publications.

4.1. Industrial robots

Industrial robots are according to the International Organiza-tion for Standardization ‘‘automatically controlled, reprogramma-ble, multipurpose manipulator programmable in three or moreaxes’’ [33]. The mechanical structure of a modular industrial robotconsists of a base followed by a series of modular structure links.Each module consists of drive-train components (servo actuator,combining precision Harmonic Drive gearing with highly dynamicAC servo motors). Major components of the robot controller arepower units, rectifier, transformer, axis computers and a high levelcomputer for motion planning and control.

Designing industrial robots is a complex process involvingtremendous modeling and simulation effort. For all the variousdomains of robot design, the geometry plays a significant role asinput provider. Industrial robots are designed manually to a greatextent today. To understand and manage the complexity of thistechnology and to enable optimization of a product family, a noveldesign framework is being developed at Linköping University, seeJohanson et al. [34], Petterson et al [35], and Tarkian et al. [36].

Early design choices concerning industrial robots are made witha multitude of uncertainties, mainly due to lack of knowledge con-cerning the concept under development. Considering these uncer-tainties, critical design aspects should be easily modifiable duringthe entire design phase. An example of critical aspect is the type

of drive train choice, since the motor and gear selection sets addi-tional boundaries on how the final robot structure will be. If thetype of drive train has to be modified, the entire geometry modelwill therefore have to undergo changes. The goal is that the CADmodel should not have to be entirely re-modeled and preferablyno manual work should be required other than creating new HLCts.

4.1.1. Industrial robot geometryThree types of HLCts are used to define the industrial robot

topologically (see Fig. 5):

� Datum HLCt, contains merely references which are usedto define the position of other HLCts. Three orthogonalplanes are used to define the placement of followingDatum instances. For each Actuator instance the requiredreferences are a plane and a point; for the Structureinstances three orthogonal planes are provided.

� Component HLCt, contains the geometry of the robotactuators. Together with the references from a Datuminstance, a plane defines the placement and orientationof the top side of an actuator, while a point completelyfixes it in space.

� Structure HLCt, contains the geometry of the links. To becorrectly instantiated and morphed, a Structure instancerequires the location information contained in the Datuminstances as well as the geometry of the actuators it isconnected to. Furthermore, the cross-section of the adja-cent link is needed to fully define the Structure instance.

The robot instantiation process is described in Fig. 6. The pur-pose of this process is to generate a parametric 3D robot modelbased on user inputs. Please note that the functions in the processare general for HLCt instantiation. For other applications, similarfunctions are utilized following different process logics.

Page 6: Flexible and robust CAD models for design automation

Fig. 5. Actuator (left), Datum (center) and Structure HLCt (right). Shown are also the references required by each HLCt. Please note that, in order for the Actuator HLCtinstance to be fully defined, a reference point from Datum HLCt, which is not visualized, is also required.

K. Amadori et al. / Advanced Engineering Informatics 26 (2012) 180–195 185

The names of the references that must be provided for eachHLCt instantiation are stored in the knowledge base, which issearched through by the inference engine. In the Appendix, pseudocode examples describes how the references are retrieved (A.1)and how they are stored in the knowledge base (A.4).

The process starts by the user defining the number of DegreesOf Freedom (DOF) of the robot (see Fig. 6) and is repeated untilthe number of axis (i) is equal to the user defined DOF.

In order to instantiate the first Structure HLCt, two Datum andtwo Actuator instances are needed. References from the twoDatum instances help orienting the structure in space, while thegeometries of the Actuator instances, at both ends of the link, areused to construct the actuator attachments, as seen in Figs. 5 and6. For the remaining links, only one new instance of both Datumand Actuator HLCts are required, since the Datum and Actuator in-stances from adjacent links are already available.

Appendix A.2 shows a pseudo code example of an instantiationfunction. The first instantiated Datum HLCt is defined with refer-ence to the absolute coordinate system. The remaining DatumHLCt instances are placed in a sequential order, where the coordi-nate system of previous instances is used as reference for definingthe position in space according to the user inputs (see also Appen-dix A.3). Furthermore, the type of each Actuator and Structure in-stance is user defined.

Note that the link instantiation process may start from i greaterthan one if new links are to be added to existing robot geometry.

Since it is possible to create new HLCts in the utilized CAD tool,the users are not forced to merely choose from the templates avail-able. New HLCts can be created, placed in the database and para-metrically inserted into the models, as is exemplified with theStructure HLCts in Fig. 7.

4.1.2. Industrial robot analysisIn robot design, important properties to check are the kinemat-

ics and dynamics of the robot which in turn are utilized to computelifetime estimations on key drive train components. The weightproperties have to be estimated in order to compute the dynamicbehavior. This has been effectively done with CAD models whichare parametrically generated by means of HLCts. For faster evalua-tion of the geometric design alternatives, the dynamic and geomet-ric models are tightly integrated and optimized by using thenon-gradient Complex algorithm [36]. In the problem formulation,the objective is to minimize the cycle time (CT(x)) to perform pre-described tasks and the cost of the robot (Cost(x)) while ensuringthe prescribed actuator lifetime, as described in the followingformulation:

min f ðxÞ ¼ k1CTðxÞ þ k2CostðxÞ þP

wkpkðxÞxi 2 f1; 2; . . . ; nservog; i ¼ 1; 2; 3xlow

j � xj � xupj ; j ¼ 4; . . . ;9

ð7Þ

In problem formulation (7), penalty functions pk(x) are used toaccount for both actuator lifetime and performance demands interms of acceleration requirements. The optimization variablesare choice of actuator types for the first three axes together withtwo parameters that control the allowed maximum speed andtorque for each actuator.

In Fig. 8 the convergence of three actuators for an optimizedrobot is visualized. At 150 iterations the actuator choice is con-verged for all three axes.

The prediction of the dynamic properties is established by uti-lizing two multi-body simulation tools [37]. One of the dynamicmodels was developed in-house at ABB Robotics and the secondwas developed using the Modelica language and its standardlibrary, see Elmqvist et al. [38].

The essential development of the HLCts enables 3D geometriesto be generated and manipulated, providing the dynamic simula-tion model with mass data extracted from the 3D geometries, ina fully automated fashion. The impact of such an automatedapproach is obvious: first, a significantly increased number of de-sign iterations becomes possible in contrast to the manual designiteration; second, design trials are guided by more scientific tech-niques, viz. optimization algorithms, in contrast to trial-and-errorguided by engineers; and third, the product may be treated holis-tically as a complete system in order to avoid sub-domain optimi-zation by engineers of each discipline.

4.2. Transport aircraft

In the field of transport aircraft design, as with other complexproducts, automatic geometry generation represents a prerequisiteto achieve a geometry-in-the-loop MDO process. The geometrymodel, presented in this section, plays a central role for multipleanalyses tools in the framework by providing data for several dis-ciplinary analyses. In the presented example, a wide spectrum ofvery different aircraft configurations will first be briefly shown, fol-lowed by a short summary of a wing structural design study. Thestudy includes topological transformations on the load-carryingstructure of a transport aircraft wing, where aerodynamic andstructural analyses were included.

The development of the aircraft model started in late 2006 andthe latest version discussed in these pages is an evolution of thework by Tarkian and Tessier [25] and Amadori et al. [26].

Page 7: Flexible and robust CAD models for design automation

Fig. 6. Robot geometry generation process.

186 K. Amadori et al. / Advanced Engineering Informatics 26 (2012) 180–195

Page 8: Flexible and robust CAD models for design automation

Fig. 7. Relationships between the robot models and the HLCt database.

0 50 100 150 200 250 3006

8

10

12

14

16

18

20

22

Number of iterations

Axis 1Axis 2Axis 3

Serv

o ac

tuat

or ty

pes

Fig. 8. Convergence of servo actuator choice for the modular robot optimizationframework.

Fig. 9. The aircraft model has a broad range of design alternatives.

K. Amadori et al. / Advanced Engineering Informatics 26 (2012) 180–195 187

4.2.1. Aircraft geometryThe geometry modeling adopts all techniques described in pre-

vious sections. To be able to generate a wide range of different con-cepts, the geometry model is constructed to be very robust andflexible as the different configurations displayed in Fig. 9 demon-strate. The knowledge-based system is capable of representing sev-eral different types of configurations, including less conventionalblended wing bodied aircraft.

The power of the presented approach derives from the possibil-ity to parametrically determine number, placement and size of thegeometrical elements existing in the framework, see Fig. 10. Thesystem is then able to automatically create an aircraft model that

Page 9: Flexible and robust CAD models for design automation

Fig. 10. Relationships between the aircraft models and the HLCt database.

188 K. Amadori et al. / Advanced Engineering Informatics 26 (2012) 180–195

incorporates all the entered choices. Through the same interfacethe user can also control detailed structure and interior models.The knowledge-based system also includes a dedicated meshingtool that prepares and formats the aero-data for two different aero-dynamic analysis tools, either PANAIR [27] or Tornado [28]. Othertools can easily be incorporated as well. The latest addition to thesystem is a cockpit planner model that permits the cockpit’s instru-ment panels to be designed [29]. It also includes analysis tools toevaluate the cockpit design from an ergonomic point of view orto prove that it meets JAR25/FAR25 requirements [30,31].

In the aircraft model, the reference model is placed at the high-est hierarchical level. It contains references (i.e. planes, points,lines and surfaces) that are required to control and instantiate allremaining models. Available HLCts within the database are shownin Fig. 10. Of the presented application examples, this model is themost complex and uses the largest number of HLCts. However, theprinciples governing the instantiation procedures of each HLCt aresimilar.

The instantiation procedure begins by identifying the HLCts forcreating the overall aircraft reference model, which consists ofboth surface and datum features. The surface and datum HLCtsare instantiated in distinct sub-products to define a clear associa-tive data flow [20]. Surface HLCts include geometries such as fuse-lage and wing sections, and horizontal and vertical tail sections.The HLCts contain contextual geometries, making it possiblefor the inference engine to assemble them correctly. For instance,the interface geometries necessary to be able to connect the mid-fuselage section to the fore and aft fuselage sections are end-planesand contours of the cross-sections.

When the aircraft surfaces are complete, datum HLCts, whichmerely contain reference geometries, are instantiated to allow

structure HLCts to be positioned. When instantiating the structureHLCts, the inference engine locates context geometries stored inthe knowledge base (see Appendix A.4). As an example, for a fuse-lage frame instance, it is necessary to identify the fuselage surfaceand the plane defining the frame’s location.

4.2.2. Aircraft analysisIn an MDO study that was carried out with the help of the

discussed aircraft model, a transport aircraft wing-box structurewas analyzed with respect to the wing’s aerodynamic efficiencyand loads [26]. The aim of the project was to investigate how ageometric model of higher fidelity could be used in a conceptualdesign study. The problem formulation was therefore simplifiedto a 3g pull-up load case, while the main focus was on the devel-opment of a modeling methodology and on examining possiblegains from the geometric model. The optimization problem wasformulated as:

min WW þ Prð Þs:t: : rMAX � rAllowed

Pr ¼ K � rMAXrAllowed

� �að6Þ

The input vector was composed by continuous parameters con-trolling the wing’s planform and shape (i.e. chord lengths, thick-nesses, sweep and twist angles, etc.) as well as discreteparameters describing the structural layout (three parameters foreach rib or spar). The penalty function Pr was formulated as a softconstraint as shown in Eq. (6). A genetic algorithm was used tosolve the problem.

In the study two approaches were compared. In one case thewing-box design was optimized with a fixed number of structural

Page 10: Flexible and robust CAD models for design automation

0.5

0.6

0.7

0.8

0.9

1

Fixed Nr. Var. Nr. Fixed Nr. Var. Nr.

WeightMax StressObj. Funct.

1000 Iterations 20000 Iterations

Fig. 11. Wing-box optimization results (normalized using the case ‘‘fixed numberof ribs and 1000 iterations’’ as reference).

K. Amadori et al. / Advanced Engineering Informatics 26 (2012) 180–195 189

elements (indicated by ‘‘Fixed Nr.’’ in Fig. 11), where only dimen-sions and positions were allowed to change. In this case only mor-phological transformations were permitted. Then, by addingtopological transformations to also allow the number of structuralelements to vary (labeled ‘‘Var. Nr.’’ in Fig. 11), the same wing-boxwas optimized again.

The study showed that enabling topological changes, increasedthe geometrical model’s design space, and allowed the optimiza-tion algorithm to find a lighter design that had smaller maximumstress values, see Fig. 11. Traditionally, structure optimizationsstart from rather defined layouts that allow the optimization algo-rithm to make smaller changes to positions and dimensions. Insuch a case, allowing a higher number of iterations could have asmall effect on the result. Interestingly, the optimal design alsoshowed that the ribs tended to be placed at such an angle that theycan help to carry the bending loads. Similar design results can alsobe observed in a study conducted by Maute and Allen [32], inwhich topology optimization was employed in the conceptual de-sign of aeroelastic structures. In a mere topology optimization thesolution is usually represented by aggregation of discretized andfinite elements, similar to pixels in a picture. Hence, at the end ofthe optimization, the solution needs to be post-processed in orderto obtain a smooth and continuous usable geometry. On the otherhand, the approach proposed in this paper has the advantage thatno post-processing is required to implement the suggested solu-tion, since the optimization is carried out on the actual geometrymodel.

As for the industrial robot application, the use of HLCts enables3D geometries to be generated and manipulated, providing theanalyses models with detailed geometries for structure andaerodynamics investigations. Hence, the large numbers of designiterations shown in Fig. 11 which are unrealistic to achieve throughmanual processes, become feasible thanks to the automatic geom-etry generation by means of HLCts.

4.3. Micro/Mini Air Vehicles

Micro or Mini Air Vehicles (MAV) can generally be defined assmall unmanned flying aircraft that can be operated and carriedby one person. They are used to gather information using some sortof sensor. MAVs are attractive for low-cost aerial monitoring/sur-veillance. Some suitable areas of use are police, civil rescue, agri-culture, meteorology, military, etc. MAVs are characterized bybeing simple and inexpensive to build. Due to their small size, it

is very important that they are carefully optimized for the requiredmission and sensor [39]. Because of their high sensibility to thecenter of gravity position, they need precise weight distributionand to be shaped around the payload. MAVs are also likely to bebuilt in relatively small series and be tailored for the sensors andequipment available at the time of deployment. Therefore, ‘‘designand build on demand’’ is very attractive [40], where a modular con-cept with an automated design process is desirable. At LinköpingUniversity a distributed design optimization framework has beendeveloped to automate the design of MAVs [41,42]. The optimiza-tion framework includes both the MAV’s geometrical shape andselection of the propulsion system components from a database.It links a CAD system, responsible for the automatic geometrygeneration by means of HLCts, with a panel code for aerodynamicevaluations, and spreadsheet applications for simulating compo-nent and aircraft performances.

The design of an MAV is not as complex as for a transport aircraft.Nevertheless, some important features are required by the automat-ically generated model. First of all, the model should be highly flex-ible, so that the largest range of possible design variants can berepresented. It should be noted that the relative variation can bevery large, depending on the input requirements. Secondly, themodel should comprise the internal systems that the aircraft willcarry. Among these are payload equipment as well as control andpowering devices. Given the very limited dimensions that character-ize MAVs, it can be difficult to fit all the needed systems and stillmeet requirements regarding the balance and control of the aircraft.A dedicated tool has therefore been developed that balances theMAV while overseeing the ‘‘packing’’ of all internal equipment.

A set of input parameters is used to determine the outer sur-faces of the aircraft. The internal systems and structural elementsare then placed within them. An overview of the MAV designframework and its main modules is presented in Fig. 12.

4.3.1. MAV geometryFor this application the MAV is limited to be a tailless aircraft,

where the wing is defined by total area, aspect ratio, and dihedraland twist angle. Two parameters also control the curvature andshape of the leading and trailing edges, allowing the wing to beshaped with a ‘‘non-trapezoidal’’ contour. The fuselage is com-pletely blended with the wing. The fins are placed at the wing tipsand their dimension is controlled by the knowledge base through atail volume coefficient. Once the outer shape of the aircraft isdefined, the number and position of payload bays can be chosenthrough the interface. Finally, the inference engine verifies packingand balancing. For each of the components that must be fitted in-side the aircraft, the system checks if the component can be fittedand – if so – between which extreme positions in the longitudinaldirection it can be moved for balancing purposes.

4.3.2. MAV analysisThe design optimization task comprises two different aspects:

the optimization of the aircraft shape and the optimization of thecomponents of control and propulsion system. The optimizationinput vector is composed by 12 continuous variables that controlthe shape of the aircraft and four discrete variables that describewhich components to include in the propulsion system. Two finaldiscrete variables regulate how many batteries are coupled in ser-ies and parallel. In this work a multi-objective genetic algorithm(MOGA II [43]) was used. This allowed the problem to be studiedwithout the need to aggregate all objectives into one single objec-tive function or goal. The result of a multi-objective optimization isnot a single optimal design, but rather a curve where all non-dom-inated designs are located. It was chosen to study the relationshipbetween the weight (W) and endurance (E) of the vehicle. Theobjectives of the optimization were set as follows:

Page 11: Flexible and robust CAD models for design automation

Fig. 12. Relationships between the MAV models and the HLCt database.

190 K. Amadori et al. / Advanced Engineering Informatics 26 (2012) 180–195

maxðEÞ and max 1W

� �

s:t: : gi � gi;REF

ð8Þ

The inequalities in Eq. (8) describe the constraints on, for in-stance, stall speed, range, maximum wing span, etc., that the opti-mization was subjected to.

Fig. 13 shows the resulting plots in an endurance vs. weight dia-gram. Each dot in the plots represents a complete MAV design; thecolors indicating when during the optimization the design wasgenerated. It is interesting to observe that the final Pareto frontis not a monotone curve, but presents successive ‘‘bumps’’ or por-tions. Each of these sections is characterized by having the samepropulsion system. Within one of the ‘‘bumps’’ the different perfor-mances are determined by changes in the geometry and size of theMAV [44]. This property of the Pareto front emphasizes even morethe importance of being able to carry out a detailed and automatedoptimization of the aircraft. Due to the complex relationshipbetween all variables it would be very hard to manually find thebest combination of propulsion system components and geometri-cal variables for a given mission. The HLCt methodology hasenabled automatic detailed geometry generation of MAV concepts.This, in turn, has made it possible to perform analyses of higherfidelity, such as aerodynamics, weight distribution and compo-nents’ packaging. These have provided a better understanding ofthe characteristics and behavior of the system.

5. Robustness and flexibility

Creating CAD models of complex products is a ‘‘trial and error’’process, and it can be argued whether a generic recipe for perfect

models can be produced. It would therefore be useful to be ableto measure quantitatively whether the previous trial is better orworse than a new one. In this section, models to measure therobustness, flexibility and design space size are proposed. In mostpapers and articles on MDO and KBE two recurring requirementson the geometrical model are expressed: the model should be flex-ible and robust. This sounds very reasonable, but what does it actu-ally mean?

Qualitatively, it can be explained as follows: the flexibility ofthe geometrical model refers to the ability to represent a widerange of different product configurations, arrangements and sizes.The wider the range of products the model can cover, the moreflexible it is. The robustness refers instead to the errors or instabil-ity issues that changes to the geometrical model may provoke. Or,more correctly, the robustness of the model indicates the lack ofthese. The fewer errors, the more robust the model is.

Even though this reasoning works on a qualitative level, a veryimportant question that has so far been ignored in the literatureis how to translate the concepts of flexibility and robustness to aquantitative level or in other words: how can flexibility and robust-ness be measured?

This is actually a key issue. One of the first lessons learned whencreating geometrical models for MDO applications is that it is aniterative process where the designer keeps on improving the resultby ‘‘trials and errors’’, making it an inductive process. It is thereforeuseful to be able to know when the model is good enough to meetthe requirements. Another case is when comparing two models forthe same application that are created employing different tech-niques or strategies. Which one is the best?

Robustness and flexibility depend on the size of the designspace which the model should cover. Model errors and instability

Page 12: Flexible and robust CAD models for design automation

Fig. 13. Pareto front from an MAV optimization.

K. Amadori et al. / Advanced Engineering Informatics 26 (2012) 180–195 191

issues are usually less frequent in a geometry model whose inputvariables are allowed narrow ranges.

To try to solve these issues, models to quantify design spacesize, robustness and flexibility is proposed.

5.1. Design space size

A geometrical model is usually controlled though a set of nindependent input variables. These are not all the available param-eters in the model, but only a sub-set that is selected by thedesigner. Each input variable may directly or indirectly control anumber of other parameters by means of the mechanisms de-scribed in the previous sections.

With reference to Fig. 14, let U represent the n-dimensionalspace describing all possible configurations that could theoreticallybe obtained by changing the input variables over unlimited ranges.S represents instead the portion of U that is obtained by limiting

1CS 2CS

3CS

US

Fig. 14. Geometric model design space.

the parameters’ range between minimum and maximum values.Finally, SC represents the union space that describes all the productvariants that can be represented by the model. Within each SCj

space only morphological transformations can take place. SC iscomposed of disjoint sub-spaces since topological transformationsdo not guarantee continuity. Taking into consideration one of theSCj sub-spaces at the time, i.e. considering only morphologicaltransformations, and assuming that each variable xi can be variedbetween a minimum and a maximum value (xMIN

i and xMAXi , respec-

tively), a dimensionless variable range Di can be defined for eachdesign parameter as:

Di ¼xMAX

i � xMINi

xREFi

ð1Þ

In the equation above, xREFi represents a reference value for the

variable xi and must be different from zero. Note that the choiceof xREF

i will affect the end result. It must be remembered, however,that the aim is to have a quantity to compare different model vari-ants of the same product. For the same variable xi, the variants willtherefore have the same reference value, xREF

i .It is important to be able to measure the size of the design space

that the model is intended to cover. The design spaces of differentmodels may vary significantly in size, since the scale of differentproducts may differ by several orders of magnitude. To be able tocompare sizes from different model variants, a dimensionlessmean design space size is defined as follows:

VSCj¼Yn

i¼1

Di ð2Þ

where SCj is the sub-space in which the model’s flexibility androbustness will be measured. The effects on the design space sizeof discrete variables controlling topological transformations is veryhard to predict and would require a much more complex model tobe captured properly. For instance, for discrete variables it can be dif-ficult to define a reference value, which is required in Eq. (1). Anotherissue is that topological transformations allow infinite instantiations

Page 13: Flexible and robust CAD models for design automation

Table 1Robustness and flexibility analyses.

ApplicationType

Trials Variables Designspace

Robustness Flexibility

192 K. Amadori et al. / Advanced Engineering Informatics 26 (2012) 180–195

of the same class of objects. In this scenario it would be of no help toadd all the design space sizes of each instance. Moreover, it is funda-mental to be able to provide a simple enough formulation that can beeasily computed in order to guarantee ease of use.

TransportAircraft

50 10 81.03 0.96 77.79

IndustrialRobot1

50 10 26.98 1 26.98

IndustrialRobot2

50 10 33.52 0.88 29.49

Micro AirVehicle3

50 12 2332 0.64 1492

Micro AirVehicle4

50 12 2332 0.86 2006

Indexes 1, 2 refer to two different analyses carried out on the industrial robot CADmodel with different size of the design space.Indexes 3, 4 refer to two different variants of the MAV CAD model.

5.2. Model robustness

The second keyword is robustness and can be translated into aquantitative expression that reflects the qualitative meaningdescribed above. Consider a test where the model is fed with arandom set of input variables represented by the vector X ¼ ðx1;

x2; . . . xnÞ so that 8xi 2 X; xMINi � xi � xMAX

i . The values to assignto each variable are selected simultaneously using a uniform prob-ability distribution over the allowed intervals. Let NFailures repre-sent the number of trials that results in a crash (i.e. the CADsystem is unable to calculate a valid solution) in the update proce-dure and NUpdates the total number of trials. An approximation ofthe robustness RSC can then be formulated as:

RSC ¼ 1� NFailures

NUpdatesð3Þ

The index SC indicates that the robustness is relative to the sub-space SC considered. Clearly, changing SC will alter the value of RSC .It is worth noting that the value and correctness of RSC will dependon the number of trials that are carried out. If the number of trialsis small, there is a risk that the results will be distorted. With aninfinite number of trials, if NSuccess represents the number of suc-cessful updates, then the robustness RSC can be written as:

RSC ¼ 1� NFailures

NUpdates¼ NUpdates � NFailures

NUpdates¼ NSuccess

NUpdates¼ SC

Sð4Þ

In practice, a sufficiently large NUpdates is required to give the re-sult statistical relevance. Since the outcome has only two possiblevalues (1: failure, 2: success), a relatively small number of trials canbe enough. Typically, 50 trials give a good indication of RSC . To in-crease the confidence with regard to RSC , independent portions ofthe model can be tested separately, for instance the wing and thefuselage of an aircraft. The total robustness would then be theproduct of the parts’ robustness. It should however be noted thatrobustness and flexibility measures will not account for thecross-couplings between the portions when carrying out separatetests. Hence the measurement can become misleading if the por-tions are largely dependent on each other.

The space SC is not necessarily continuous but can be made upof several disjoint spaces or sets. The reason is that most CADsystems cannot guarantee that for any combination of the inputvariables, each one having a continuous range of values, the geom-etry will be feasible [1]. The situation becomes even more compli-cated if topological transformations are considered, since discretevariables are introduced.

5.3. Model flexibility

Finally, in order to evaluate the flexibility FS the following for-mulation is proposed:

FSC ¼ RSC � VSC ð5Þ

This means that the flexibility depends on two factors: the sizeof the design space the model is intended to cover and the robust-ness over that space. If a model is very robust, but only represents avery small portion of the design space, the flexibility will not beparticularly high. Similarly, the flexibility will suffer if a very largedesign space is chosen, exposing the model to frequent crashes dueto poor robustness.

It is important to observe that it is not possible to perform therobustness test by changing one parameter at a time, since in thatcase the cross-couplings between different variables would be dis-regarded. Moreover, the choice of values for the variables to keepconstant would be significant for the end result. On the other hand,it would be possible to define a parameter flexibility and a parame-ter robustness as the flexibility and robustness of the model whenvarying only one parameter at a time.

5.4. Robustness and flexibility measures

Robustness and flexibility have been measured on the threepresented models according to the formulations proposed, andthe results are presented in Table 1. Note that according to the def-initions of Section 5.1, the size of the design space is actually a userinput, since the range of the input variables are decided by theuser. Hence the input range size provides a measure of the sizeof the space within which the tests are performed. The designspace size variation between different models can thus be substan-tial. Not surprisingly, in the industrial robot case, the robustnessshrinks considerably when the design space is increased (see thedifferent results for cases 1 and 2 in Table 1). However, with theproposed measure the flexibility is increased.

The trials on the MAV have been conducted on two differentCAD models of the same product (indicated by the indexes 3 and4 in Table 1). Keeping the design space and the number of trialsconstant, it can be noted how the robustness, and therefore theflexibility, is considerably better in the second variant. This exam-ple shows how evaluating the robustness and flexibility highlightsthe better properties of one CAD model compared to another, sim-plifying the choice between them.

There are many reasons why a general recipe for creatingflexible and robust CAD models is unlikely. The main ones arethe large differences between CAD systems, varying geometriccomplexity of different products, and different in-house routinesand best-practice rules within companies.

What have been introduced in this paper are means to quicklygenerate CAD models and swiftly evaluate their qualities in termsof flexibility and robustness. The idea is to use the comparison ofdifferent model versions to identify the best modeling solutionswhich will eventually lead to a model sufficiently robust and flex-ible to be included in an MDO process.

6. Discussion

The techniques, methods and definitions discussed in this papertry to provide answers to questions of how to make the design ofcomplex products more effective and how to measure the quality

Page 14: Flexible and robust CAD models for design automation

K. Amadori et al. / Advanced Engineering Informatics 26 (2012) 180–195 193

of a geometry model. However, new reflections arise. In this finalsection, a shortlist of subjects for discussion is presented.

1. HLCt modeling provides the technical bases for creating a singlecentral product model that includes the information requiredby all the engineering disciplines involved in the design, thusobviating the need for standalone disciplinary models. It istherefore reasonable to imagine new relationships betweencompany departments. Usually, each department is responsiblefor analyzing the product within a particular discipline. Adopt-ing HLCt modeling, each department could then be responsiblefor managing and maintaining the part of the central productmodel that is required for running the analysis, thus eliminatingthe burden of verifying that all separate disciplinary models areup to date and represent the same version.

2. When working with large geometric models the number ofinput variables can easily become quite large, in the order ofhundreds or more. The number of tests needed to have a rea-sonable statistical background for the flexibility and robustnesscalculation thus grows very rapidly. If, for instance, the modelhas n input variables and it can be assumed that for each vari-able it can be enough to test q values, the total number of trialsto execute to compute the total flexibility is qn. It may thereforebe more practical to test smaller parts separately, preferablyduring the development of the model. However it should beremembered that the interactions between parts cannot be cap-tured when performing separate tests.

3. If the designer does not build the model correctly (i.e. definingvariables as absolute values that may happen to get out of rangeinstead of using ratios that relate to reference dimensions) ordoes not feed the model variables in the correct way or order,the flexibility analysis will be negatively affected and may notprovide any useful information. Once again, experience andknow-how are required to prevent or solve such issues.

4. As stated in section 5.1, the presented design space size formu-lation is only valid for a sub-space within which only morpho-logical transformations are allowed. This is clearly a stronglimitation, deriving from the fact that the mathematical modelsare still under development. However, the authors have identi-fied a lack of formulations that allow robustness, flexibility anddesign space size to be quantified. The models proposed in sec-tion 5 are a first attempt to fill this gap, but more refinementand continued development are still required.

5. It is not possible to write a ‘‘step-by-step’’ manual that guaran-tees a good CAD model. What can be provided are methodolo-gies and guidelines. Nevertheless, these will not save thedesigner from a trial and error process. In this process it is how-ever very useful to have a measurable robustness and flexibility,by which to assess the quality of a model variant relative toanother, hence the proposed measures could be helpful.

6. The proposed high level CAD modeling methodology is genericand independent of the CAD tool employed. In the methodol-ogy, no mention is made of the functions in a specific CAD sys-tem. The presented application examples were however alldeveloped with CATIA V5. Nevertheless, in an ongoing researchproject the same methodology is being employed in both Solid-Works and ProEngineer.

7. Having previously presented models to describe the model’sflexibility and robustness, it is felt that the concept of modelcomplexity is also important. However, it is extremely difficultto provide a reasonable definition that would enable measuringthe complexity of a CAD model, and there is as yet no univer-sally adopted definition of complexity. In the software develop-ment field, several definitions are available. McCabe [44], forinstance, proposed relating the complexity of a program tothe number of paths that are possible through a program. The

same reasoning is not exactly possible when relating to a geom-etry model. However, one reasonable measure of complexitywould be the width and depth of the parameters’ dependencytree structure. In the authors’ experience, robustness and flexi-bility values tend to worsen when the models’ complexityincreases. Hence, when defining or describing a model, it wouldbe of help to be able to quantify its complexity to allow otherfigures to be put in perspective.

7. Conclusions

Complex products generally have an intricate dependency be-tween geometry, dynamic performance, functionality and cost.Flexible, reusable geometry models are therefore key frameworkenablers to achieve automated design. The geometry models pro-vide various analysis tools with geometric input, i.e. exterior sur-face for CFD analysis, solid geometry for FE-analysis, and massproperties for multi-body dynamics.

The methodologies for geometric modeling proposed in thispaper are based on top-down modeling, with the fundamentaldifference that the model hierarchy does not remain static whenevaluating particular concepts. KBE is utilized to manage theframework which creates the geometric CAD models. The geome-tries are stored as HLCts and instantiated into the CAD modelsaccording to the logic described in the knowledge base and exe-cuted by the inference engine. By using high-fidelity tools alreadyin the conceptual design phase, the geometry models can be seam-lessly further developed in later phases. Hence, the adoption of thediscussed methods eliminates the need for re-generation of modelsbetween conceptual and preliminary design phases: after a certainnumber of design instantiations it is therefore expected that thetotal design process lead time could be shortened. Moreover, thegeometry models are suitable for inclusion in multidisciplinarydesign and optimization environments.

To verify the hypothesis concerning elimination of repetitivework, the design of three complex engineering products has beenautomated. The application examples have confirmed that variousaspects of repetitive and non-creative design can be eliminated byimplementing dynamic top-down modeling and storing recurringgeometries as HLCts.

To measure the effectiveness of the models, the terms flexibilityand robustness have been made quantifiable. The flexibility androbustness of the application examples have been computed andthereby used to objectively compare models. The present paperidentifies a need for practical formulations of robustness and flex-ibility. It is expected that these formulations can help to ensurequality when developing parametric CAD models. As highlightedin the discussion section, more work is required, but it is believedthat these formulations are a necessary first step.

Acknowledgement

The authors would like to thank Ph.D. Christopher Jouannet forproviding constructive suggestions for improving this paper.

Appendix A

The appendix presents pseudo code examples for employingHLCts in a geometry model. The examples describe the overallcharacteristics of the main functions needed for HLCt instantiation.

The function GetReference( ) is used to retrieve informationregarding references which are required to instantiate a given HLCt.The function’s input are a string (called MyPart in the example)which is the name of the part where the HLCt will be instantiated,and the type of list that is needed (MyListType). The instantiation

Page 15: Flexible and robust CAD models for design automation

194 K. Amadori et al. / Advanced Engineering Informatics 26 (2012) 180–195

process is described in Instantiate( ). The part name is used forretrieving the references needed (GetReference( )) for identifyingthe HLCt to instantiate (Knowledge Base), and for controlling thepositioning in space of the newly generated instance (Position( )).

A.1. GetReference( )

The function GetReference( ) must be called prior to a new HLCtinstantiation. It retrieves the name of each reference (ReferenceL-ist(i)) from the knowledge base and lastly finds and returns the cor-responding geometric references (Reference(i)). The lists are storedin the knowledge base, as shown in Appendix A.4.

GetReference(MyPart, MyListType)

Referenceslist = Get myListtype of references

connected to mypart in Knowledge Base

For i = 1 to Size of ReferenceList loop

Reference(i) = Find(ReferenceList(i)

End loop

End GetReference

A.2. Instantiate()

The function Instantiate( ) generates a new instance of a givenHLCt in a newly created part of the model. The part is renamedin accordance to the function input string (NewPart). The knowl-edge of which HLCt to instantiate is stored in the knowledge base(see A.4) and is then instantiated. The context references as well asthe instance’s default references are retrieved by the functionGetReference( ). The last operation is to connect the instance’s de-fault references (HLCt_ReferenceList) to their corresponding contex-tual references (Context_ReferenceList) so that the instance cancorrectly adapt to the context.

Instantiate(NewPart)

New_Part = Create(NewPart)

Name of New_Part = NewPart

HLCt = Get the HLCt corresponding to NewPart from the

Knowledge Base

Create new instance of HLCt in NewPart

Context_ReferenceList = GetReference(NewPart,

Context_References)

HLCt_ReferenceList = GetReference(NewPart,

HLCt_References)

For i = 1 to Size of ReferenceList loop

Constrain(Context_ReferenceList(i),

HLCt_ReferenceList(i))

End Loop

End Instantiate

A.3. Position()

After a new instance has been created, it can be repositioned inspace in accordance with the user input in the GUI. The functionPosition( ) is given the name of the part to reposition (‘‘NewPart’’).

Position(NewPart)

Reposition in CAD space of NewPart according to user

input in GUI

End Position

A.4. Knowledge base

The knowledge base contains information regarding:

� The names of needed references (Context_ReferenceList andHLCt_References)

� Which HLCt to use in accordance to the NewPart name

If NewPart = PartABC Then

Context_ReferenceList =

{(Reference_C1,. . .,Reference_Cn1)}

HLCt_ReferenceList

= {(Reference_H1,. . .,Reference_Hn1)}

Name of HLCt to use = HLCt_ABC

End if

References

[1] K.G. Bowcutt, A perspective on the future of aerospace vehicle design, AIAA2003–6957, 12th AIAA International Space Planes and Hypersonic Systems andTechnologies, Dec. 2003, Norfolk, VA, USA.

[2] C.B. Chapman, M. Pinfold, Design engineering – a need to rethink the solutionusing knowledge based engineering, Journal of Knowledge Based Systems 12(5–6) (1999) 257–267.

[3] J.P. Giesing, J.-F.M. Barthelemy, A summary of industry MDO applications andneeds, AIAA 1998-4737, AIAA/USAF/NASA/ISSMO Symposium onMultidisciplinary Analysis and Optimization, Sep. 1998, St. Louis, MO, USA.

[4] J.H. Vandenbrande, A. Grandine, T. Hogan, The search for the perfect body:shape control for multidisciplinary design optimization, AIAA 2006-928, 44thAIAA Aerospace Science Meeting and Exhibit, Jan. 2006, Reno, NV, USA.

[5] P. Mawhinney, M. Price, R. Curran, E. Benard, A. Murphy, S. Raghunathan,Geometry-based approach to analysis integration for aircraft conceptualdesign, AIAA-2005-7481, 5th annual aviation technology, integration, &operations (ATIO) forum, Sep. 2005, Washington, DC, USA.

[6] J. Wang, Y. He, H. Tian, H. Cai, Retrieving 3D CAD model by freehand sketchesfor design reuse, Advanced Engineering Informatics 22 (3) (2008) 385–392.

[7] Johansson, J., Design automation systems for production preparation – appliedon the rotary draw bending process, Licentiate Thesis, Chalmers University ofTechnology, Department of Product and Production Development, 2008.

[8] C.B. Chapman, M. Pinfold, The application of knowledge based engineeringapproach to the rapid design and analysis of an automotive structure, Journalof Advances in Engineering Software 32 (12) (Dec. 2001) 903–912.

[9] G.N. Blount, S. Kneebone, M.R. Kingstone, Selection of knowledge-basedengineering design applications, Journal of Engineering Design 6 (1) (1995)31–38.

[10] W.J.C. Verhagen, P. Bermell-Garcia, R.E.C. van Dijk, R. Curran, A critical reviewof knowledge-based engineering: an identification of research challenges,Advanced Engineering Informatics 26 (1) (2012) 5–15.

[11] G. La Rocca, M.J.L. van Tooren, Knowledge-based engineering approach tosupport aircraft multidisciplinary design and optimization, Journal of Aircraft46 (6) (2009) 1875–1885.

[12] G. La Rocca, M.J.L. van Tooren, A Knowledge Based Engineering approach tosupport automatic generation of FE models in aircraft design, AIAA 2007-967,45th AIAA Aerospace Science Meeting and Exhibit, Jan. 2007, Reno, NV, USA.

[13] A. Liening, G.N. Blount, Influences of KBE on the aircraft brake industry,Aircraft Engineering and Aerospace Technology 70 (6) (1998) 439–444.

[14] A.A. Hopgood, Intelligent Systems for Engineers and Scientists, second ed., CRCPress LLC., FL, USA, 2001.

[15] D. Rodriguez, P. Sturdza, A rapid geometry engine for preliminary aircraftdesign, 44th AIAA Aerospace Sciences Meeting and Exhibit, Jan. 2006, Reno,NV, USA.

[16] G. La Rocca, M.J.L. van Tooren, Enabling distributed multi-disciplinary designof complex products: a Knowledge Based Engineering approach, Journal ofDesign Research 5 (3) (2007) 333–352.

[17] A. Berard, A. Rizzi, A.T. Isikveren, A New Geometry Construction Tool forAerospace Vehicle Pre-Design and Conceptual Design, ICAS 2008, Sep. 2008,Anchorage, AK, USA.

[18] D. Böhnke, A. Reichwein, S. Rudolph, Design language for airplane geometriesusing the unified modeling language, DETC2009-87368, Proceedings of theASME 2009 International Design Engineering Technical Conference &Computer and Information in Engineering Conference IDETC/CIE 2009, Aug.–Sep. 2009, San Diego, CA, USA.

[19] C. Ledermann, P. Ermanni, R. Kelm, Dynamic CAD objects for structuraloptimization in preliminary aircraft design, Journal of Aerospace Science andTechnology 10 (7) (2006) 601–610.

[20] C. Ledermann, C. Hanske, J. Wenzel, P. Ermanni, R. Kelm, Associativeparametric CAE methods in the aircraft pre-design, Journal of AerospaceScience and Technology 9 (7) (2005) 641–651.

[21] T. Tomiyama, Intelligent computer-aided design systems: past 20 years andfuture 20 years, Artificial Intelligence for Engineering Design, Analysis andManufacturing 21 (1) (2007) 27–29.

[22] M. Mäntylä, A modeling system for top-down design of assembled products,IBM Journal of Research and Development 34 (5) (1990) 636–659.

[23] H.D. Mills, Software development, IEEE Transactions on Software EngineeringSE-2 (4) (1976) 265–273.

[24] N. Wirth, Program development by stepwise refinement, Communication ofthe ACM 14 (4) (1971) 221–227.

Page 16: Flexible and robust CAD models for design automation

K. Amadori et al. / Advanced Engineering Informatics 26 (2012) 180–195 195

[25] M. Tarkian, F.J.Z. Tessier, Aircraft parametric 3D modeling and panel codeanalysis for conceptual design, 26th International Congress of the AeronauticalSciences, Sep. 2008, Anchorage, AK, USA.

[26] K. Amadori, C. Jouannet, P. Krus, Aircraft conceptual design automation, 26thInternational Congress of the Aeronautical Sciences, Sep. 2008, Anchorage, AK,USA.

[27] L.L. Erikson, Panel methods – an introduction, NASA Technical Paper 2995(1990).

[28] Tornado homepage: <http://www.redhammer.se/tornado/>, (accessed25.07.10).

[29] W. Tassel, Development of a Complete Parametric CAD Model of a CockpitLayout for Civil Airplane Under CATIA CAD Software, M.Sc. Thesis, LinköpingUniversity (2010).

[30] PART 25 – Airworthiness Standards: Transport Category Airplanes, GPO Accessof the US Government Printing Office webpage, <http://ecfr.gpoaccess.gov/cgi/t/text/text-idx?c=ecfr&tpl=/ecfrbrowse/Title14/14cfr25_main_02.tpl>(accessed 22.07.10).

[31] CS-25 – Large Aircraft Certification Specifications, European Aviation SafetyAgency webpage, <http://www.easa.eu.int/ws_prod/g/rg_certspecs.php>,(accessed 22.07.10).

[32] K. Maute, M. Allen, Conceptual design of aeroelastic structures by topologyoptimization, Journal of Structural and Multidisciplinary Optimization 27(1–2) (2004) 27–42.

[33] ISO Standard 8373:1994, Manipulating Industrial Robots – Vocabulary.[34] B. Johanson, J. Ölvander, M. Pettersson, Component Based Modeling and

Optimization for Modular Robot Design, ASME DAC’07, Las Vegas, NV, USA,2007.

[35] M. Petterson, J. Andersson, P. Krus, Methods for Discrete Design Optimization,in: Proceedings of ASME DETC’05, Design Automation Conference, Sep. 2005,Long Beach, CA, USA.

[36] M. Tarkian, J. Persson, J. Ölvander, X. Feng, Multidisciplinary DesignOptimization of Modular Industrial Robots, ASME IDETC11, Washington, DC,USA, 2011.

[37] M. Tarkian, Design Reuse and Automation, ‘‘On High Level CAD Modeling forMultidisciplinary Design and Optimization’’, Licentiate Thesis, LinköpingUniversity (2009).

[38] H. Elmqvist, S.E. Mattson, M. Otter, Modelica – an international effort to designan object-oriented modeling language, in: Proceedings of Summer ComputerSimulation Conference, SCSC’09, 1998, NV, USA.

[39] D. Lundström, Towards Automated Design of Mini/Micro Air Vehicles,Licentiate Thesis No. 1409, Linköping University (2009).

[40] C. Jouannet, M. Sethson, L. Andersson, P. Krus, Design Process for Micro AirVehicles, Bristol International UAV System Conference, 2003, Bristol, UK.

[41] D. Lundström, K. Amadori, P. Krus, Automation of design and prototyping ofmicro aerial vehicle, Jan. 2009, AIAA 2009-629, 47th AIAA Aerospace SciencesMeeting and Exhibit, Orlando, FL, USA.

[42] D. Lundström, K. Amadori, P. Krus, Evaluation of automatically designed microair vehicles and flight testing, AIAA 2010-1022, 48th AIAA Aerospace SciencesMeeting and Exhibit, Jan. 2010, Orlando, FL, USA.

[43] S. Poles, MOGA II: an improved multi-objective genetic algorithm, ESTECOTechnical Report (2004).

[44] T.J. McCabe, A complexity measure, IEEE Transactions on Software Engineering2 (4) (1976) 308–320.