optimizing the geometry of flexure system topologies using the...

15
Research Article Optimizing the Geometry of Flexure System Topologies Using the Boundary Learning Optimization Tool Ali Hatamizadeh, Yuanping Song, and Jonathan B. Hopkins Mechanical and Aerospace Engineering Department, University of California, Los Angeles, 420 Westwood Plaza, Eng. IV 46-147F, Los Angeles, CA, USA Correspondence should be addressed to Jonathan B. Hopkins; [email protected] Received 17 November 2017; Revised 7 February 2018; Accepted 27 February 2018; Published 29 March 2018 Academic Editor: Delfim Soares Jr. Copyright © 2018 Ali Hatamizadeh et al. is is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. We introduce a new computational tool called the Boundary Learning Optimization Tool (BLOT) that identifies the boundaries of the performance capabilities achieved by general flexure system topologies if their geometric parameters are allowed to vary from their smallest allowable feature sizes to their largest geometrically compatible feature sizes for given constituent materials. e boundaries generated by the BLOT fully define the design spaces of flexure systems and allow designers to visually identify which geometric versions of their synthesized topologies best achieve desired combinations of performance capabilities. e BLOT was created as a complementary tool to the freedom and constraint topologies (FACT) synthesis approach in that the BLOT is intended to optimize the geometry of the flexure topologies synthesized using the FACT approach. e BLOT trains artificial neural networks to create models of parameterized flexure topologies using numerically generated performance solutions from different design instantiations of those topologies. ese models are then used by an optimization algorithm to plot the desired topology’s performance boundary. e model-training and boundary-plotting processes iterate using additional numerically generated solutions from each updated boundary generated until the final boundary is guaranteed to be accurate within any average error set by the user. A FACT-synthesized flexure topology is optimized using the BLOT as a simple case study. 1. Introduction e freedom and constraint topologies (FACT) synthesis approach [1–3] was created to help designers rapidly consider and compare the flexure topology solutions that achieve a desired set of degrees of freedom (DOFs). FACT utilizes a complete library of spaces, which guide designers in arranging the best number and kind of flexible elements (e.g., wire or blade elements) within the geometry of the spaces for synthesizing topologies that stiffly constrain the system’s bodies to not move in certain directions while permitting them to move in other directions with high compliance (i.e., the DOFs). e mathematics underlying FACT are such that only the number, kind, location, and orientation of the flexible elements that constitute the resulting topologies are considered during the synthesis process. e material prop- erties and geometric parameters (e.g., the lengths, widths, or thicknesses of the flexible elements or the shape and size of the rigid bodies that the flexible elements join together within the system) are not considered. us, once the FACT approach has synthesized topologies that achieve desired DOFs, there is a need for a complementary follow-on tool that can optimize the geometric parameters of the topology solutions so final designs can be produced that best achieve desired performance requirements in addition to achieving the desired DOFs for given constituent materials. e aim of this paper is to introduce such a tool for enabling the geometry optimization of FACT-synthesized topologies. is fully automated tool, called the Boundary Learning Optimization Tool (BLOT), utilizes the results generated from a limited number of numerical simulations of a FACT- synthesized topology using different geometric parameter values to construct a preliminary mathematical model of the topology by training an artificial neural network [4]. is model is then used in conjunction with a modi- fied multiobjective optimization algorithm to identify a first-pass boundary that circumscribes the combination of desired capabilities that can be achieved by the geometric Hindawi Mathematical Problems in Engineering Volume 2018, Article ID 1058732, 14 pages https://doi.org/10.1155/2018/1058732

Upload: others

Post on 06-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Optimizing the Geometry of Flexure System Topologies Using the …web.cs.ucla.edu/~ahatamiz/BLOT.pdf · 2019-10-24 · synthesized topology using dierent geometric parameter values

Research ArticleOptimizing the Geometry of Flexure System Topologies Usingthe Boundary Learning Optimization Tool

Ali Hatamizadeh Yuanping Song and Jonathan B Hopkins

Mechanical and Aerospace Engineering Department University of California Los Angeles 420 Westwood Plaza Eng IV 46-147FLos Angeles CA USA

Correspondence should be addressed to Jonathan B Hopkins hopkinsseasuclaedu

Received 17 November 2017 Revised 7 February 2018 Accepted 27 February 2018 Published 29 March 2018

Academic Editor Delfim Soares Jr

Copyright copy 2018 AliHatamizadeh et alThis is an open access article distributed under theCreativeCommonsAttribution Licensewhich permits unrestricted use distribution and reproduction in any medium provided the original work is properly cited

We introduce a new computational tool called the Boundary Learning Optimization Tool (BLOT) that identifies the boundariesof the performance capabilities achieved by general flexure system topologies if their geometric parameters are allowed to varyfrom their smallest allowable feature sizes to their largest geometrically compatible feature sizes for given constituent materialsThe boundaries generated by the BLOT fully define the design spaces of flexure systems and allow designers to visually identifywhich geometric versions of their synthesized topologies best achieve desired combinations of performance capabilitiesThe BLOTwas created as a complementary tool to the freedom and constraint topologies (FACT) synthesis approach in that the BLOT isintended to optimize the geometry of the flexure topologies synthesized using the FACT approach The BLOT trains artificialneural networks to create models of parameterized flexure topologies using numerically generated performance solutions fromdifferent design instantiations of those topologies These models are then used by an optimization algorithm to plot the desiredtopologyrsquos performance boundary The model-training and boundary-plotting processes iterate using additional numericallygenerated solutions from each updated boundary generated until the final boundary is guaranteed to be accurate within any averageerror set by the user A FACT-synthesized flexure topology is optimized using the BLOT as a simple case study

1 Introduction

The freedom and constraint topologies (FACT) synthesisapproach [1ndash3] was created to help designers rapidly considerand compare the flexure topology solutions that achieve adesired set of degrees of freedom (DOFs) FACT utilizesa complete library of spaces which guide designers inarranging the best number and kind of flexible elements (egwire or blade elements) within the geometry of the spacesfor synthesizing topologies that stiffly constrain the systemrsquosbodies to not move in certain directions while permittingthem to move in other directions with high compliance(ie the DOFs) The mathematics underlying FACT are suchthat only the number kind location and orientation of theflexible elements that constitute the resulting topologies areconsidered during the synthesis process The material prop-erties and geometric parameters (eg the lengths widthsor thicknesses of the flexible elements or the shape and sizeof the rigid bodies that the flexible elements join together

within the system) are not considered Thus once the FACTapproach has synthesized topologies that achieve desiredDOFs there is a need for a complementary follow-on toolthat can optimize the geometric parameters of the topologysolutions so final designs can be produced that best achievedesired performance requirements in addition to achievingthe desired DOFs for given constituent materials

Theaim of this paper is to introduce such a tool for enablingthe geometry optimization of FACT-synthesized topologiesThis fully automated tool called the Boundary LearningOptimization Tool (BLOT) utilizes the results generatedfrom a limited number of numerical simulations of a FACT-synthesized topology using different geometric parametervalues to construct a preliminary mathematical model ofthe topology by training an artificial neural network [4]This model is then used in conjunction with a modi-fied multiobjective optimization algorithm to identify afirst-pass boundary that circumscribes the combination ofdesired capabilities that can be achieved by the geometric

HindawiMathematical Problems in EngineeringVolume 2018 Article ID 1058732 14 pageshttpsdoiorg10115520181058732

2 Mathematical Problems in Engineering

instantiations of the topology New numerical simulations ofthe various design instantiations along the initially identifiedboundary are then used in conjunction with the originalsimulation data to retrain a more accurate neural networkmodelThis model is then used again to identify an improvedboundary and the entire process is iterated until the topol-ogyrsquos actual performance boundary is rigorously obtainedwith an accuracy specified by the user (eg less than 10average error) Optimal design instantiations can then beselected from portions of the final boundary

Although the BLOT was originally created to plot theperformance capability regions of FACT-designed architec-tured materials [5] on Ashby plots [6] to compare theirengineered properties with the properties achieved by naturalmaterials a simple FACT-designed case study is optimized inthis paper to most clearly demonstrate how the BLOT workswith the FACT approach to generate general flexure systemdesigns from start to finish Suppose for instance a designerwished first to synthesize a flexure system topology thatachieves three specific DOFs two orthogonal translationsshown by the black arrows in Figure 1(a) and one orthogonalrotation shown by the red line with a circular arrow aboutits axis Upon inspection of FACTrsquos complete library ofspaces the designer would identify that this desired setof DOFs lies within the freedom space [1ndash3] shown inFigure 1(b) This space consists of an infinite number ofrotation lines that are parallel to the desired rotation lineshown as a box of red lines in the figure and an infinitenumber of translation arrows that point in the directionsthat are perpendicular to the axes of these lines shown asthe disk of black arrows in the same figure This freedomspace represents all the permissible motions that wouldresult from linearly combining the three DOFs shown inFigure 1(a) According to the FACT library this freedomspace uniquely links to a complementary constraint space[1ndash3] shown as the box of blue lines in Figure 1(b) thatconsists of an infinite number of constraint lines [1ndash3] thatare parallel to the desired red rotation line This constraintspace represents the region of space within which flexibleelements should be selected to achieve the desired DOFsusing a parallel topology configuration (ie a configurationthat consists of a single rigid stage joined directly to a fixedground by flexible elements) Instructions about how to selectthe appropriate number of flexible element constraints fromwithin the constraint space so that the resulting topologyis exactly constrained or overconstrained are provided inprevious publications [1ndash3] Suppose for this example that thedesigner synthesized a symmetric overconstrained topologyby selecting four wire elements within the constraint spacesuch that the axes of the wires are collinear with four of thespacersquos parallel constraint lines as shown in Figure 1(c) At thispoint in the design process the designer has completed theFACT approach by synthesizing a topology that successfullyachieves the three desired DOFs regardless of the designrsquosconstituent material properties or its geometry (eg howthick or long its wire elements are) A modal analysis ofone of the topologyrsquos design instantiations shows that themost compliant directions of motion (ie the mode shapescorresponding to the lowest natural frequency values) are the

desired DOFs from Figure 1(a) One of the first two identicaltranslational mode shapes is shown in Figure 1(d) and thethird rotational mode shape is shown in Figure 1(e)

Suppose that the designer wished then to identify whatgeometric instantiation of the FACT-synthesized topologyin Figure 1(c) simultaneously achieves the largest range ofmotion and the highest natural frequency along the trans-lational DOF shown in Figure 1(d) for a given constituentmaterialThemore a flexure systemcandeform in a particulardirection before it yields (ie its range ofmotion)with respectto its overall size and the higher the natural frequency is thatcorresponds with the mode shape along that direction theeasier it is to control the system at high speeds with precisionover large ranges To identify a geometric instantiation thatachieves this combination of capabilities the designer shouldlabel the topologyrsquos features with independent geometricparameters that fully define its geometry Suppose for thisexample that the designer set the rigid ground and rigid stagegeometry to be the same rectangular prism constrained bythe parameter 119882 as shown in Figure 1(f) Then suppose thatthe four wire elements that join the corners of this rigidstage are each set to possess the same length 119871 and thesame square cross-section with a side length of 119879 (ie thewidth and thickness of each wire element is 119879) The designerwould then provide the BLOT with the smallest achievablefeature sizes for each of these three independent parametersas well as the largest geometrically compatible values forthe same parameters Properties of the constituent materialsshould also be provided as well as the tolerance capabilitiesof the available fabrication process to identify the smallestresolution increment by which each geometric parametercould be changed to sweep between these smallest and largestvalues Using this information the BLOT would then plotthe boundary that circumscribes the combination of desiredcapabilities (ie the ranges of motion 119889 per system charac-teristic length radic1198712 +1198822 and the natural frequencies 120596119899)that can be achieved along the direction of the translationalDOF by the topologyrsquos geometric instantiations for the givenrange of parameters If the smallest parameter values are setto 119879min = 1mm 119882min = 10mm and 119871min = 1mm and thelargest parameter values are set to 119879max = 50mm 119882max =100mm and 119871max = 100mm the boundary resulting fromBLOT is shown in Figure 1(g) for the example topology ofFigure 1(c) using a resolution increment value of 05mm andusing aluminum as the constituent material with a Youngrsquosmodulus of 69GPa a shear modulus of 26GPa a densityof 2705 kgm3 and a yield strength of 105MPa Once thisboundary is known the designer can select optimal designinstantiations that simultaneously achieve the largest valuesof each of the desired capabilities from along the top-rightportion of the boundary as shown in Figure 1(g) Two extremedesigns are shown as large black dots that lie on either end ofthe optimal portion of the red boundary plotted

Note that although the BLOT introduced in this paperutilizes numerically generated data taken from a varietyof corresponding design instantiations to train neural net-works for creating an accurate model of FACT-synthesizedtopologies the BLOT is also capable of using closed-form

Mathematical Problems in Engineering 3

(a)

Freedom space Constraint space

(b)

(c) (d) (e)

WW

T L

W2

W2

(f)

T = 10 mmL = 995 mmW = 100 mm

T = 25 mmL = 15 mmW = 100 mm

10minus1

10minus2

10minus3

10minus4

10minus5

10minus6

Tran

slatio

nal D

OF

Nor

mal

ized

rang

e of m

otio

ndradic

W2+L2

T = 25 mmL = 15 mmW = 100 mm

100 10210minus4 10minus210minus6

Translational DOF natural frequency (kHz)

Optimal designinstantiations

(g)

Figure 1 Desired DOFs (a) freedom and constraint spaces (b) synthesized topology (c) validated DOFs (d) and (e) topologyrsquos geometricparameters (f) boundary of the topologyrsquos achievable ranges of motion and natural frequencies corresponding to the translational DOFgenerated by the BLOT (g)

analytical models of the parameterized topologies if suchmodels are available Closed-form analytical models arehowever difficult to construct and their assumptions usuallyonly produce valid results for specific topologies or for limitedranges of geometric parameters that define other topologiesThus this paper focuses on the theory necessary to trainneural networks for creating models based on the results ofnumerically generated data because this approach is moregeneral than closed-form analytical approaches Note alsothat although the BLOT is introduced in this paper as a toolfor optimizing the geometry of flexure system topologies itcould also be applied to a host of other diverse applications

Prior to this paper artificial neural networks have beenused extensively tomodel and control a variety of mechanicalsystems including compliant mechanisms robots manip-ulators and rigid linkages Cheng and Patel [7] used aneural network-based strategy for achieving stable trackingcontrol of a flexible macro-micro manipulator He et al[8] studied the tracking control of an uncertain 119899-linkrobot with full-state constraints Kobayashi and Ozawa [9]presented an adaptive neural network control for tendon-driven robotic mechanisms with elastic tendons Takeuchi

and Kosugi [10] proposed a finite element method based onapplications of neural networks for boundary value problemsLevin and Lieven [11] presented a neural network-basedapproach for dynamic finite element model updating Boillatet al [12] combined finite element and neural networksin order to find the optimal parameters used in a selec-tive laser sintering process Lefik [13] studied compositematerials using a hybrid finite element and artificial neuralnetwork model Hashash et al [14] proposed the numer-ical implementation of a neural network-based materialmodel in finite element analysis Manevitz et al [15] pre-sented a finite element mesh-generation approach using self-organizing neural networks Li and Cao [16] utilized neuralnetworks to select two dimensional compliant mechanismdesign schemes Qin and Feng [17] modified the structuralparameters of flexure hinges by employing trained neuralnetworks Kong et al [18] presented a method for identifyingmechanism kinematic chain isomorphism by applying neuralnetworks

Although few researchers have directly attempted system-performance boundary identification its goal is similar tothe goal of multiobjective optimization which has been

4 Mathematical Problems in Engineering

studied extensively A multiobjective optimization problem(MOOP) deals with more than one objective function andaims at finding a set of solutions that optimizes all theobjective functions simultaneously Several methods havebeen proposed to solve the local or global Pareto-optimalsolution set [19] One of the most widely used methods is theweighting method [19] Haimes et al [20] introduced the 120576-Constraintmethod in 1971 andYu [21] introduced themethodof global criterion in 1973 Wierzbicki [22 23] introducedthe achievement scalarizing function approach in 1981 Othersolving methods include normal boundary intersection [24]evolutionary algorithm [25] lexicographic ordering [26]and goal programming [27] More recently MOOP methodshave focused on stochastic algorithms including a variety ofevolutionary algorithms [28 29] Such algorithms generatemore reliable global Pareto-optimal solution sets but requiresignificantly more function evaluations than deterministicalgorithms and are thus generally better suited for complexblack-box-model optimizations The boundary identifica-tion approach proposed in this paper has in part beenadapted from various deterministic multiobjective optimiza-tion methods such that the complete continuous boundary(including concave portions) that circumscribe the perfor-mance capabilities achieved by general flexure topologies canbe identified and refined with a desired accuracy Thereforea topologyrsquos full design space can be identified using theBLOT

By combining the utility of the BLOT with the currentFACT approach a new advantageous approach emergeswhich is unique from other existing design-optimizationapproaches Whereas other approaches (eg topology opti-mization [30ndash32] or module optimization [33]) simultane-ously combine the tasks of optimizing a designrsquos topologywith its geometry the proposed approach decouples thosetasks in such a way that the time-consuming computationsare reserved solely for the simpler task of geometry optimiza-tion only This optimization occurs after the FACT approachhas directly generated and finalized the most promisingtopologies without performing expensive iterative calcula-tionsThus by decoupling the tasks of topology synthesis andgeometry optimization in this way the speed that optimaldesigns can be generated from start to finish as well as thelikelihood that the global-optimum solutions are identifiedincreases

The specific contributions of this paper include the fol-lowing (i) a new fully automated tool is created and demon-strated (ie BLOT) that identifies the rigorous performancecapability boundaries achieved by flexure topologies gener-ated via FACT (ii) a new algorithm is proposed within thistool for optimizing and iteratively training the architecturesof artificial neural networks using data generated from spe-cially selected numerical simulations of design instantiationsalong previously generated boundaries to create accuratemodels of general flexure topologies (iii) a new approachis also introduced within the BLOT that combines existingmultiobjective optimization methods to use these modelsfor iteratively refining the convex and concave portions of ageneral topologyrsquos performance capability boundary with anaccuracy determined by the user

sum a(n)

sum a(n)

sum

g(n)

Input Hiddenlayer 1

Hiddenlayer 2

Outputlayer 3

Neuron

a(n)

a(n)

a(n)

a(n)

a(n)

w111

w112

w131

w312w113

x1

x2

x3

b11

b21

b31

b12

b22

b32

b42

b13

f1sum

sum

sum

sum

sum

Figure 2 Neural network example with three inputs one outputand two hidden layers of neurons

2 Model Generation via Neural Networks

This section summarizes how the BLOT generates modelsof FACT-synthesized topologies by training artificial neuralnetworks using numerical simulations performed on variousgeometric instantiations of these topologies Artificial neuralnetworks like the kind shown in Figure 2 consist of severalprocessing layers which can be tuned to successfully mapany inputs 119909119894 to any corresponding outputs 119891119895 when givena sufficient number of diversified input and correspondingtarget output values to learn from For the application ofthis paper inputs are the geometric parameters that definea flexure systemrsquos topology (eg 1199091 = 119882 1199092 = 119879 and1199093 = 119871 from the topology of Figure 1(f)) and outputs arethe performance capabilities (eg range of motion or naturalfrequency) achieved by the design instantiations that aredefined by these corresponding input parametersThe knowninput and target output values are obtained using finiteelement analysis (FEA) on sample design instantiations withgeometric parameters that span the topologyrsquos full designspace from their smallest achievable feature sizes to theirlargest geometrically compatible values The theory of thissection provides a systematic way to train neural networks forcreating sufficiently accurate flexure system topology modelsusing a minimal number of known input and target outputvalues sominimal computational effort and time are requiredby the BLOT

Each layer within a neural network consists of inter-connected computational nodes called neurons as labeledin Figure 2 The lines that interconnect the neurons areassociated with scalar weight values 119908119890119905119897 where 119890 is asubscript that corresponds to the labeled neuron number(or input) from which the line extends 119905 is a subscript thatcorresponds to the labeled neuron number at which the lineterminates and 119897 is a subscript that corresponds to the labeledlayer number in which that neuron belongs Other linesenter the neurons with associated scalar bias values 119887119905119897 thatutilize similar subscript conventions Each neuron within thenetworkrsquos hidden layers (ie the layers in between the input

Mathematical Problems in Engineering 5

values and the output layer) utilizes an activation function[4] 119886(119899) In this paper we employ the hyperbolic tangentsigmoid function [34] defined by

119886 (119899) = 119890119899 minus 119890minus119899119890119899 + 119890minus119899 (1)

The output from each activation function passes from onehidden layer of neurons to the next until the output layeris reached where this paper employs the linear activationfunction [34] 119892(119899) = 119899 to produce the final output 119891119895This process is called forward propagation because of thedirection in which the mathematics propagates or flows Todemonstrate how the mathematics flows within the networkdiagramed in Figure 2 consider the neuron highlighted bythe dotted red box The 119899 value that is plugged into thefunction of (1) corresponding to this highlighted neuron is

119899 = (1199091 sdot 119908111) + (1199092 sdot 119908211) + (1199093 sdot 119908311) + 11988711 (2)

Once a sufficient number of known input and targetoutput values have been numerically calculated variousmethods can be employed to use these values to iterativelytune the weights 119908119890119905119897 and biases 119887119905119897 within a neuralnetwork such that it can link any set of input values withinthe design space to accurate output values (ie the networkcan be trained to create an accurate predictive model)A popular way to tune the weights and biases is calledback propagation [35 36] The input values are normalizedand fed into the network using initial-guess weights andbiases The resulting outputs are compared against the targetoutputs that are known to be correct from a priori numericalsimulation A gradient vector of the resulting error withrespect to each weight and bias is then used to tune thesevalues in the opposite direction of the gradient vector Byrepeating this process numerous times the network canbe trained to accurately predict the correct output valuesA variation of the back propagation training method (ieBayesian Regularization [37 38]) was used to train the neuralnetworks that model the flexure system topologies of thispaper

The specific iterative process used in the BLOT to gener-ate accurate models of general FACT-synthesized topologiesis as follows A user provides a MATLAB script with theindependent geometric parameters that define the desiredflexure topology The smallest and largest values for each ofthese parameters are also provided to the script to specifythe full design space over which the resulting model willaccurately predict The script then begins by generating allthe possible design instantiations that result from applyingevery combination of these smallest and largest values withthree other evenly spaced values in between them (eg 119879min(3119879min + 119879max)4 (119879min + 119879max)2 (119879min + 3119879max)4 and119879max) for every independent parameter to the topologyrsquosgeometry Each resulting design instantiation is checked forgeometric compatibility against various geometric constraintfunctions which are specific to their topologyThe geometricconstraint function imposed on the design instantiationsof the example topology labeled in Figure 1(f) is 119882 minus2119879 gt 0 Then the MATLAB script passes the resulting

design instantiations that are geometrically compatible to aPYTHON script that automatically creates computer-aided-design (CAD) models of these instantiations defines theirconstitutive materials meshes their models and appliesthe desired boundary and loading conditions This scriptthen performs the FEA simulation in parallel batches usingABAQUS to produce the target output values that correspondwith each design instantiation defined by the given inputvalues Thus large amounts of data can be acquired withinthe design space of general flexure topologies using theautomated scripts

The numerically generated data is then randomly dividedamong two different sets 80 of the data is assigned to atraining set and the remaining 20 is assigned to a testing setThe training set of data is used to train a neural network thatpossesses an initial-guess architecture with two hidden layersand an output layer with only one neuron The number ofneurons in the first hidden layer is initially set to 20 neuronsand the number of neurons in the second hidden layer isinitially set to zero The modified mean squared error [39]119864training is calculated for the training set of data using thisinitial-guess network architecture with initial-guess weightsand biasesTheBayesianRegularization algorithm then trainsthe architecture by updating the weights and biases withinthe network using the gradient of 119864training for each iteration asdescribed previously until one of the following five conditionsis satisfied(1) Training is stopped once an excessively large numberof iterations have occurred For this paper 1000 iterationswere used as the cutoff(2) Training is stopped once an excessive amount of timehas lapsed For this paper the cutoff time was set to 10 hours(3) Training is stopped once the modified mean squarederror of the training set of data 119864training reaches a smallenough number For this paper the number was set to 10minus12(4) Training is stopped once the gradient of the modifiedmean squared error of the training set of data 119864trainingbecomes very small For this paper 10minus7 is used as the cutoff(5) Training is stopped once the damping factor [40 41]used within the Bayesian Regularization algorithm exceeds acertain value For this paper the damping factor cutoff wasset to 1010

After training has stopped the mean absolute percentageerror [42] MAPEtotal for the total set of training and testingdata combined is calculated using

MAPEtotal = 100119873total

119873totalsum119896=1

100381610038161003816100381610038161003816100381610038161003816119876119896total minus 119867119896total

119876119896total100381610038161003816100381610038161003816100381610038161003816 (3)

where 119873total is the total number of target output values fromboth the training and testing sets combined 119876119896total are thetarget output values from both the training and testing setsand119867119896total are all the corresponding predicted output valuescalculated using the current trained network In generalthe smaller a trained networkrsquos MAPEtotal is the better thetrained neural network can model the behavior of the flexuresystem topology

6 Mathematical Problems in Engineering

Thus the MAPEtotal of the trained initial-guess networkarchitecture (ie 20 neurons in the first hidden layer and0 neurons in the second hidden layer) is used as the start-ing point for optimizing the networkrsquos architecture Patternsearch [43] which is described in Section 3 in detail isused to optimize the number of neurons in the networkrsquosarchitecture in two different phases In the first phase patternsearch is used to optimize an architecture with no neuronsin the second hidden layer For this phase the lower boundof neurons in the first hidden layer is set to 5 and the upperbound is set to 40 The input tolerance (The MathWorksInc) is set to 1 the initial mesh size (The MathWorks Inc)is set to 8 and the expansion factor (The MathWorks Inc)is set to 2 The cost function that is minimized for thisoptimization is MAPEtotal defined in (3) Once the besttrained network architecture is found using this first hiddenlayer optimization (ie the trained network architecture withthe smallest MAPEtotal) the mean absolute percentage errorof the training MAPEtraining and testing MAPEtesting datasets is each calculated using (3) for this best trained networkarchitecture but with the subscripts currently labeled ldquototalrdquoreplaced by the words ldquotrainingrdquo and ldquotestingrdquo respectively Ifboth of these values (ie MAPEtraining and MAPEtesting) areequal to or less than 35 the neural network is used as theinitial model of the FACT-synthesized flexure topology Ifhowever eitherMAPEtraining orMAPEtesting is greater than 35the second phase of the network architecture optimization isinitiated In the second phase pattern search is again usedto optimize a network architecture but with 40 neurons inthe first hidden layer and an initial-guess of 4 neurons inthe second hidden layer For this phase the lower bound ofneurons in the second hidden layer is set to 1 and the upperbound is set to 15The input tolerance is again set to 1 and theexpansion factor is again set to 2The best number of neuronsin the second hidden layer of the network with 40 neuronsin the first hidden layer is identified by minimizing thesame cost function in (3) MAPEtotal Once the best trainednetwork architecture is found using this second hidden layeroptimization the mean absolute percentage error of thetraining MAPEtraining and testing MAPEtesting data setsis each calculated using (3) for this best trained networkarchitecture but with the subscripts currently labeled ldquototalrdquoreplaced by the words ldquotrainingrdquo and ldquotestingrdquo respectively Ifboth of these values (ie MAPEtraining and MAPEtesting) areequal to or less than 35 the neural network is used as theinitial model of the FACT-synthesized flexure topology Ifhowever eitherMAPEtraining orMAPEtesting is greater than 35the trained network architecture with the lowest MAPEtotalfound from the network optimization of both the first andsecond phase is used as the initial model of the FACT-synthesized flexure topology

Thus using minimal computation an initial model ofgeneral FACT-synthesized flexure system topologies can beidentified Note thatmany of the hard numbers chosen in thissection were selected for rapidly generating accurate modelsof flexure system topologies with less than sim10 independentgeometric parametersThe numbers in this section may needto be adjusted for scenarios with larger numbers of inputparameters

3 Plotting Performance Boundaries

This section discusses the portion of the BLOT that utilizesthe models of flexure system topologies generated fromSection 2 to plot their performance capability boundariesRecall that the geometric parameters of a flexure systemtopology (eg 119882 119879 and 119871 for the topology of Figure 1(f))are its modelrsquos inputs 119909119894 and the performance capabilities(eg range of motion and natural frequency for the exampleof Figure 1(f)) achieved by the design instantiations that aredefined by these corresponding input parameters are themodelrsquos outputs 119891119895 For this section a theoretical exampleof a system with only two inputs 1199091 and 1199092 will be used toconceptually explain the algorithm that plots the boundarythat circumscribes the systemrsquos full design space for two ofthe systemrsquos achievable outputs 1198911(1199091 1199092) and 1198912(1199091 1199092)

The boundary-plotting algorithm first requires the small-est and largest values of each input parameter 119909119894min and119909119894max respectively as well as resolution increment valuesΔ119909119894 for each input parameter Constraint functions shouldalso be provided to define what combination of input valuesare permissible (eg 119882 minus 2119879 gt 0 for the example ofFigure 1(f)) For the theoretical example of this section theconstraint function is shown as the red spline boundary linein Figure 3(a)

The algorithm begins by supplying a randomly selectedcombination of permissible inputs shown as the blue dotlabeled 11987411 in Figure 3(a) to the Sequential QuadraticProgramming (SQP) [44 45] optimization algorithm Thisalgorithm first identifies a set of other permissible inputcombinations that result from adding and subtracting theresolution increment of each input Δ119909119894 to and from the firstrandomly selected combination of inputs along each inputrsquosaxis For the example of Figure 3(a) this first set of inputcombinations are shown as the four blue dots immediatelysurrounding the blue dot labeled 11987411 Note that althoughΔ1199091 is shown as being equal to Δ1199092 in the example theseresolution increments do not have to be equal for otherscenarios The systemrsquos model is then used to map all of thecombinations of these inputs to their corresponding com-binations of outputs which are represented by the five bluedots shown in Figure 3(b) Note that the original input dot11987411 maps to the output dot 11988511 The SQP algorithm thenapproximates the gradient (ie first derivatives) and Hessianmatrix (ie the symmetric matrix of second derivatives) ofthe objective function defined by

119869 (1199091 1199092) = cos (120579) 1198912 (1199091 1199092) + sin (120579) 1198911 (1199091 1199092) (4)

using the input and output combinations (ie the adjacentblue dots in Figures 3(a) and 3(b)) where 120579 in (4) is initiallyset to 0 so that the largest 1198912 output can be pursued firstThis gradient and Hessian matrix are then used to constructa Quadratic Programming (QP) subproblem [46] whichis solved to determine another combination of inputs thatwill map to combinations of outputs that produce a largerobjective function value In the example of Figure 3 supposethe new combination of inputs determined is shown as thered dot labeled 11987412 in Figure 3(a) Note that this dotrsquoscorresponding combination of outputs which is shown as the

Mathematical Problems in Engineering 7

Constraintfunction

x1

x2

O13

O12

O21

O11

O14

r2

Δx2

(a)

Z14

Z13

Z12

Z11

Z21

= 0

= Δ

f1(x1 x2)

f2(x

1x

2)

(b)

Constraintfunction

x1

x2

O22

O21

(c)

Z21 Z22

= 0

= Δ

f1(x1 x2)

f2(x

1x

2)

(d)

Figure 3 Progression of the SQP and then ALPS optimization algorithms for 120579 = 0 initialized in the objective function in the input space(a) and in the corresponding output space (b) continued progression of the same optimization algorithms for 120579 = Δ120579 incremented in theobjective function in the same input space (c) and in the same output space (d)

red dot labeled 11988512 in Figure 3(b) possesses 1198912 value thatis larger than any of the other previous blue dots shown inthe same figure The SQP algorithm then repeats this processby finding another set of permissible input combinations thatresult from adding and subtracting the resolution incrementof each inputΔ119909119894 to and from the new combination of inputs(ie 11987412 from Figure 3(a)) along each inputrsquos axis For theexample of Figure 3(a) this new set of input combinationsare shown as the four red dots immediately surroundingthe red dot labeled 11987412 Note that each of the five reddots in Figure 3(a) maps to a corresponding red dot inFigure 3(b)Thus the SQP algorithm rapidly finds an efficientpath toward a local maximum of the objective function byiteratively stepping from one cluster of dots to the next inthis manner The SQP algorithm terminates when either (i)the step distance from one central dot to the next (eg thedistance between11987411 and11987412 in Figure 3(a)) is smaller thanthe prescribed resolution of the input parameters Δ119909119894 or (ii)the process fails to generate the next step which typically

occurs because the first or second derivatives of the objectivefunction cannot be calculated The latter reason typicallyoccurs when the algorithm encounters discontinuities withinthe objective function

After the SQP algorithm terminates the boundary-plotting algorithm of this paper continues the optimizationprocess by supplying the combination of permissible inputsthat map to the combination of outputs that produce thelargest objective function value identified by the SQP algo-rithm to the Augmented Lagrangian Pattern Search (ALPS)[47ndash49] optimization algorithm For the example of Fig-ure 3(a) suppose the SQP process was unable to step beyondthe cluster of dots surrounding 11987412 and thus terminatedat that location The combination of inputs that would besupplied to the ALPS algorithm would be the red dot labeled11987413 in Figure 3(a) since this combination of inputs mapsto the combination of outputs that achieve the largest 1198912value found using the SQP algorithm This combination ofoutputs is shown as the red dot labeled 11988513 in Figure 3(b)

8 Mathematical Problems in Engineering

The ALPS algorithm first identifies a set of other permissibleinput combinations that result from adding and subtractingan initial mesh size 119903119894 to and from the combination of inputssupplied to the algorithm along each inputrsquos axis The initialmesh size labeled 1199032 in Figure 3(a) is typically set to 20of the range of its corresponding input parameter (ie 119903119894 =02|119909119894max minus 119909119894min|) For the example of Figure 3(a) the firstset of ALPS-generated input combinations are shown as thefour purple dots surrounding the red dot labeled 11987413 Notethat although 1199031 is shown as being equal to 1199032 in the examplethese mesh sizes are not typically equal for other scenariosThe systemrsquos model is then used to map the combinations ofthese inputs to their corresponding combinations of outputswhich are represented by the four purple dots shown inFigure 3(b)TheALPS algorithm then identifies if any of thesecombinations of inputs map to a combination of outputs thatproduce an objective function value that is larger than anyproduced previously in the optimization process Supposefor instance that the input combination of the example inFigure 3(a) labeled 11987414 maps to the output combinationlabeled11988514 in Figure 3(b) which achieves the largest1198912 valuepreviously identified The ALPS algorithm would then stepto the dot representing that input combination (eg 11987414)The algorithm would then identify a set of other permissibleinput combinations that result from adding and subtractingthe previous mesh size (eg 119903119894 in this case) multiplied byan expansion factor to and from this combination of inputsalong each inputrsquos axis For this paper the expansion factoris set to 2 Thus for the example of Figure 3(a) the nextset of ALPS-generated input combinations are shown as thethree orange dots surrounding the purple dot labeled 11987414These orange input dots shown in Figure 3(a) map to thethree orange output dots shown in Figure 3(b)The algorithmthen identifies if any of these output combinations producean objective function value that is larger than any producedpreviously in the optimization process Since none of theorange dots in Figure 3(b) possess an 1198912 value that is largerthan 11988514 the ALPS algorithm would then identify a setof other permissible input combinations that result fromadding and subtracting the previousmesh size (eg 2119903119894 in thiscase) divided by the same expansion factor to and from thecombination of inputs labeled 11987414 in Figure 3(a) along eachinputrsquos axis Thus for the example of Figure 3(a) the next setofALPS-generated input combinations are shown as the threelight-green dots surrounding the same purple dot labeled11987414These light-green input dots shown in Figure 3(a)map tothe three light-green output dots shown in Figure 3(b) Againsince none of the light-green dots in Figure 3(b) possessan 1198912 value that is larger than 11988514 the ALPS algorithmwould then identify another set of other permissible inputcombinations that result from adding and subtracting theprevious mesh size (eg 119903119894 in this case) divided by the sameexpansion factor to and from the combination of inputslabeled 11987414 in Figure 3(a) along each inputrsquos axis Thus forthe example of Figure 3(a) the next set of ALPS-generatedinput combinations are shown as the four dark-green dotssurrounding the same purple dot labeled 11987414 This processrepeats until either (i) one of the new input combinationsmaps to an output combination with an objective function

value that is larger than any produced previously or (ii) themesh size becomes equal to or less than a specified inputtolerance which for this paper is set to the resolution ofthe input parameters Δ119909119894 If the first option (i) occursthe algorithm will step to the improved input combinationand the ALPS process will continue iterating If the secondoption (ii) occurs the ALPS algorithmwill terminate For theexample of Figure 3(a) the second option occurred becausethe mesh size of the four yellow dots shown immediatelysurrounding the purple dot labeled 11987414 is equal to Δ1199092labeled in the same figure and none of the new output dotsgenerated ever surpassed the 1198912 value of 11988514 as shown inFigure 3(b)

Once the SQP and then ALPS algorithms have bothrun their full course for determining the maximum valueof 119869(1199091 1199092) from (4) for 120579 = 0 the 120579 parameter is thenincrementally increased by Δ120579 which is typically set to avalue between 12058710 to 12058720 Using this new 120579 parameter thealgorithm then computes the value of the objective functionin (4) for all existing input combinations which for theexample of this section are shown as the dots in Figure 3(a)From these input combinations the one that produces thelargest objective function value for 120579 = Δ120579 correspondsto the input combination represented by the dot labeled11987421 in Figure 3(a) which maps to the output combinationrepresented by the orange dot labeled 11988521 in Figure 3(b)The algorithm would then supply this input combinationto the SQP algorithm to generate more input combinationsthat produce larger objective function values as describedpreviously The four blue dots immediately surrounding thedot labeled 11987421 in Figure 3(c) would be identified firstfor the example of this section using this approach Thosefour blue dots map to the four new blue dots shown inFigure 3(d) that surround the dot labeled 11988521 The SQPalgorithm would then identify the next input combination(eg 11987422 shown in Figure 3(c)) that produces a largerobjective function value Note that the input combinationdot 11987422 maps to an output combination dot labeled 11988522in Figure 3(d) that is farther away along the directionprescribed by the new 120579 parameter value (ie Δ120579) As theSQP algorithm continues four other input combinationswould be identified that immediately surround the inputcombination dot labeled 11987422 in Figure 3(c) These dots arecolored red in Figure 3(c) Note however that one of thenew dots lies outside the red spline line and thus represents adesign instantiation that violates the geometric compatibilityconstraints imposedThus only three of the new surroundingdots map to permissible output combinations as shown inFigure 3(d) The SQP algorithm would continue in this wayuntil it terminates The ALPS algorithm would then takeover where the SQP algorithm left off as described previouslyuntil the ALPS algorithm also terminates Once the ALPSalgorithm terminates the algorithmwill have found the inputcombination that achieves the largest objective function valueidentified from among those previously tested for 120579 = Δ120579

The algorithm iterates this pattern of steps to identify thecombinations of output values that lie farthest away alongtheir prescribed directions defined by their corresponding120579 value in a clockwise fashion until 120579 ge 2120587 (ie all the

Mathematical Problems in Engineering 9

directions have been swept) It is important to note that anytime before the 120579 parameter is incrementally advanced theobjective function of (4) is rechecked for every combinationof input values that have been evaluated up to that point tomake sure that each of the previously identified output dotsthat are used to be the farthest away along their prescribeddirections is still the farthest away If a new dot is everidentified that is farther away than a previous dot along aspecific direction 120579 (ie if a new dot exceeds the dashed linesin Figure 3(b)) the iterative process is reset to that directionand the process continues using that improved output dot

Once this process is complete the MATLAB boundaryfunction (The MathWorks Inc) can be used to identifyall the combinations of output values that lie along theboundary of a convex shape that circumscribes the outputdots calculated and plotted using the systemrsquos model duringthe iterative processMany systems however produce a cloudof output dots that form a concavemdashnot convexmdashregionlike the one shown in Figure 4(a) If the output dots foundusing the MATLAB boundary function are used to definethe boundary of the example in Figure 4(a) the result wouldbe the red boundary shown in Figure 4(b) This boundarywould grossly overestimate the actual systemrsquos achievableperformance space since it is convex instead of concave likethe cloud of output dots Thus to address this issue theBLOT identifies all the vectors that point from each outputdot along the existing boundary to their neighboring dotson the same boundary The magnitude ℎmax of the longestvector is identified because this vector points between thetwo output dots (eg 119885ℎ1 and 119885ℎ2 shown in Figure 4(b)) thatusually correspond to the opening of a previously unknownconcave boundaryThe BLOT then computes a new objectivefunction 119869119892(1199091 1199092) defined by

119869119892 (1199091 1199092) = (cos21205721198772 + sin2120572)

sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )2

+ ( sin21205721198772 + cos2120572)

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )2 + 2sdot sin120572 cos120572( 1

1198772 minus 1)sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )

(5)

for all the input combinations that have been previouslyevaluated for 119877 = 1 This objective function is minimizedto identify output combinations that lie within circular orelliptical regions like those shown in Figure 4(c) If the119877 variable in (5) is 1 the region is a circle If however

this variable increases it becomes an increasingly elongatedellipse as shown in Figure 4(c) The angle 120572 in (5) is definedby

120572 = arctan(1198911119885ℎ2 minus 1198911119885ℎ11198912119885ℎ1 minus 1198912119885ℎ2) (6)

where1198911119885ℎ1 and1198912119885ℎ1 from (5) and (6) are the horizontal andvertical components of the119885ℎ1 dot labeled in Figure 4(c) and1198911119885ℎ2 and 1198912119885ℎ2 are the horizontal and vertical componentsof the 119885ℎ2 dot labeled in the same figure After the BLOTcomputes the objective function of (5) for all the inputcombinations that have been previously evaluated for 119877 = 1it identifies the existing input combination that produces thesmallest objective function value This input combination isthe combination that maps to the output combination thatis closest to the center of the circle shown in Figure 3(c)If no output dots are found within the circle the inputcombination corresponding to either the output dot 119885ℎ1 or119885ℎ2 will be chosen as the closest to the center of the circleand is thus supplied to the SQP and then ALPS algorithmdescribed previously to evaluate new input combinations Forthis SQP-ALPS optimization however the objective functionin (5) is minimized for 119877 = 1 instead of maximizing theobjective function of (4) for different values of 120579 as wasdone previously Suppose for the example of Figure 4 thatwhen this optimization is performed the new group of blueoutput dots shown in Figure 4(c) is generated Since none ofthese output dots lie within the center of the circle shownin the figure the previous 119877 value in the objective functionof (5) is multiplied by a factor of 2 and the search regionis expanded to an ellipse shown in Figure 4(c) Figure 4(e)shows the elliptical contour diagram of 119869119892(1199091 1199092) for this 119877value (ie 119877 = 2) If no output dots are found within thenew ellipse the process continues to iterate by multiplyingthe previous 119877 value by the same factor of 2 to increase theelliptical search region further For the example of Figure 4(c)however there are output dots that lie within the ellipticalsearch region corresponding to 119877 value of 2 Thus the inputcombination that maps to the output dot that lies within thisregion and possesses the smallest objective function value for119877 = 2 is supplied to the SQP-ALPS optimization algorithmto identify an even better output dot that achieves an evensmaller objective function value This process will producenew output dots (eg the new set of orange dots shownin Figure 4(e)) Whether these new output dots achieve asmaller objective function value or not the output dot thatachieves the smallest objective function value is identifiedand considered part of the systemrsquos performance boundaryIt is thus redefined as either 119885ℎ1 or 119885ℎ2 In the example ofFigure 4(e) the 119885ℎ2 output dot is the one that is redefinedNote also that ℎmax is also updated This boundary learningprocess is repeated until both (i) the horizontal componentof the boundary vector with the largest magnitude (ieℎmax) is less than a set percentage of the horizontal distanceacross the full cloud of output values and (ii) the verticalcomponent of the same vector is also less than the samepercentage of the vertical distance across the same cloudThis percentage threshold is typically set between 5 and

10 Mathematical Problems in Engineering

f1(x1 x2)

f2(x

1x

2)

(a)

f1(x1 x2)

f2(x

1x

2)

ℎGR

Zℎ1

Zℎ2

(b)

Zℎ1

Zℎ2

R = 2

R = 1

f1(x1 x2)

f2(x

1x

2)

(c)

Decreasing value

Zℎ1

Zℎ2

of Jg(x1 x2)

f1(x1 x2)

f2(x

1x

2)

(d)

Zℎ1

ℎGR

Zℎ2

f1(x1 x2)

f2(x

1x

2)

(e)

f1(x1 x2)

f2(x

1x

2)

(f)

Figure 4 Generated cloud of output dots (a) convex boundary first identified (b) new objective functionminimized to identify other outputdots within circular or elliptical regions (c) elliptical contour diagram of the new objective function with an 119877 value of 2 (d) boundary isupdated with a new ℎmax value (e) process successfully identifies boundaries that are concave (f)

10 Additionally before the largest boundary vector isupdated with a new magnitude (ie ℎmax) the entire opti-mization process of this section is repeated using the previousobjective function in (4) for all 120579 values to ensure thatany new dots evaluated since using that objective functionare allowed to improve the boundaryrsquos accuracy if possible

In this way both convex and concave boundaries like theconcave boundary shown in Figure 4(f) can be identifiedthat accurately define the systemrsquos achievable performancespace

A simple case study is performed to validate the per-formance of the boundary tracing algorithm of this section

Mathematical Problems in Engineering 11

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(a)

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(b)

Figure 5 Output values of a full parameter sweep (a) boundary identified for the same example using BLOT (b)

Suppose that three normalized input parameters 1199011 1199012 and1199013 map to two output functions 1198911 and 1198912 according to1198911 (1199011 1199012 1199013) = 11990131 + 1

211990121198912 (1199011 1199012 1199013) = 11990133 + 1

21199012(7)

If the input parameters are constrained according to

101199011 + 1199012 + 101199013 le 1511990121 + 1

10011990122 + 11990123 le 1 (8)

and each parameterrsquos smallest and largest values range from0 to 1 with a resolution increment of 001 the boundary ofthe region achieved by the functions of (7) can be found byplotting the output values for every permissible input valueFigure 5(a) shows all of these output values plotted as bluedots Another way to find the desired boundary but withmuch fewer calculations is to apply the algorithm of thissection as described The results are shown in Figure 5(b)Note that the algorithm identified a boundary (Figure 5(b))that is very close to the true boundary that contains the outputvalues (Figure 5(a)) after calculating and plotting only 2612dots instead of the 745298 dots that were calculated andplotted for the full parameter sweep of Figure 5(a)

4 Iterative Model and Boundary Refinement

This section provides the iterative process used to refinethe initial neural network-system models generated usingthe theory of Section 2 as well as their correspondingperformance capability boundary identified using the theoryof Section 3 Note that a single neural network is trainedfor each desired output performance capability plotted (egone neural network is trained to predict the flexure systemrsquos

range of motion for the example of Figure 1(f) and another istrained to predict its natural frequency) The process beginsby identifying all the design instantiations that lie along thefirst boundary plotted using the initial system models Theautomated FEM approach discussed in Section 2 is then usedto calculate their desired performance capabilities and theresults are saved as new sets of data called boundary setsThecombined MAPEboundary of both sets of output performancecapabilities is calculated using (3) but with all the subscriptslabeled ldquototalrdquo replaced by the word ldquoboundaryrdquo and where119873boundary is the total number of target output values frombothsets of output performance capabilities summed together Ifthe resulting MAPEboundary is equal to or less than 10 theneural network models pertaining to each output perfor-mance capability are used to generate the final boundary Ifhowever thisMAPEboundary is greater than 10 80 of the newdata is randomly added to the former training set of datadescribed in Section 2 for each of the corresponding neuralnetwork models The remaining 20 of the boundary dataset is added to the former testing set of data also describedin Section 2 The entire process of Sections 2 through 4 isthen repeated as new boundary data is added to the fullbody of previously acquired FEMdata until theMAPEboundaryis equal to or less than 10 Once this condition is satisfiedthe final neural network models used to predict the outputperformance capabilities are used to plot the final boundaryof the systemrsquos performance capabilities using the theory inSection 3 In this way all the points that constitute the finalperformance boundary plotted using BLOT for any flexuresystem are guaranteed to be accurate within an average errorof 10 or less

5 Flexure System Case Study Using the BLOT

This section uses the FACT-synthesized flexure system topol-ogy of Figure 1(f) as a detailed case study to demonstratethe capabilities of the BLOT Suppose that the smallest and

12 Mathematical Problems in Engineering

T = 10 mmL = 995 mmW = 100 mm T = 25 mm

L = 15 mmW = 100 mm

10minus1

10minus2

10minus3

10minus4

10minus5

10minus6

Tran

slatio

nal D

OF

Nor

mal

ized

rang

e of m

otio

n

100 10210minus4 10minus210minus6

Translational DOF natural frequency (kHz)

dradic

W2+L2

(a)

T = 25 mmL = 15 mmW = 100 mm

102

100

10minus2

10minus4

10minus6

Rota

tiona

l DO

F

100 10210minus4 10minus210minus6

Rotational DOF natural frequency (kHz)

rang

e of m

otio

(deg

rees

)

T = 10 mmL = 995 mmW = 100 mm

(b)

Figure 6 Boundaries of the topologyrsquos achievable ranges of motion and natural frequencies corresponding to the translational (a) androtational (b) DOF generated by the BLOT

largest values for each of the case studyrsquos three independentparameters (ie 119882 119879 and 119871) its resolution increment andthe properties of its constituent material are all set to bethe same values as those given in Section 1 Using the 119882 minus2119879 gt 0 constraint function provided earlier the BLOT canbe used to train various neural networks to create modelsthat map any desired geometric parameter values within thedesign space to design instantiations that achieve desiredperformance capabilities The performance capabilities ofinterest to this case study included (i) the topologyrsquos rangeof motion along its translational DOF direction as shownin Figure 1(d) (ii) the natural frequency of the topologythat corresponds with the mode shape of its translationalDOF (iii) the topologyrsquos angular range of motion aboutits rotational DOF as shown in Figure 1(e) and (iv) thenatural frequency of the topology that corresponds withthe mode shape of its rotational DOF The PYTHON scriptthat automates the collection of all the target data was setto ground the entire top surface of the fixed body shownwith thatched lines in Figure 1(f) on the side where the fourwire elements are attached The range of motion of eachdesign instantiation along the direction of the translationalDOF was calculated using FEA simulations by applying ashear force on the entire bottom face of the systemrsquos stageon the side where the four wire elements are attached Themagnitude of this shear force was gradually increased untilany portion within the system began to yield according toMises yield criterion The largest amount the stage translatedbefore reaching this yield criterion was defined to be therange ofmotion119889 of the corresponding design instantiationThis range of motion was normalized by dividing it byits characteristic length radic1198712 +1198822 The angular range ofmotion of each design instantiation about the rotationalDOF was also calculated using FEA simulations by applyingtwo opposing shear forces on either side of the systemrsquosstage to create a pure moment along the direction of theaxes of the wire elements The magnitude of this momentwas gradually increased until any portion within the systembegan to yield according to Mises yield criterion The largestamount the stage rotated before reaching this yield criterionwas defined to be the angular range of motion Φ of the

corresponding design instantiation The natural frequencies120596119899 corresponding to both of the translational and rotationalDOF mode shapes for each design instantiation were alsocalculated using finite element modal analysis simulationsA unique neural network with a single neuron output layerwas trained for each of the four performance capabilities ofinterest

Once the BLOT successfully created four accuratemodelsof the flexure system topology of Figure 1(f) by training fourneural networks to each map arbitrary design instantiationsof the topology to any of the four desired performancecapabilities of interest the BLOT then plotted final bound-aries that circumscribe the achievable combinations of theseperformance capabilities The boundary corresponding tothe normalized range of motion and natural frequency ofthe mode shape along the direction of the translationalDOF is show in Figure 6(a) Note that this was the sameboundary provided in Figure 1(g) but the plot in Figure 6(a)includes the colored output dots used to identify the finalboundary The geometric parameters for two optimizeddesign instantiations that span between the optimal portionof the boundary are provided in Figures 1(g) and 6(a)Other optimal design instantiations can be selected fromthis portion of the boundary to achieve different maximumcombinations of the performance capabilities The boundarycorresponding to the angular range of motion and naturalfrequency of the mode shape about the rotational DOF isprovided in Figure 6(b) Note that the two optimal designinstantiations shown as large black dots within the plots ofFigures 1(g) and 6(a) are also plotted in their correspondinglocations within the boundary provided in Figure 6(b)Although these design instantiations are not the two optimaldesign instantiations within the plot of Figure 6(b) they areclose to the optimal instantiations which are shown as largewhite dots in Figure 6(b) Finally it is worth noting thatthe plots of Figure 6 are presented using a log-log scaleSince such plots can never achieve zero or negative valuesthe BLOT establishes a cutoff threshold when identifying theboundary tomore rapidly and clearly define a practical regionof achievable performance capabilitiesThis threshold was setto 10minus6 for the plots of Figure 6

Mathematical Problems in Engineering 13

6 Conclusions and Future Work

This paper introduces an optimization tool called the Bound-ary Learning Optimization Tool (BLOT) which utilizes anautomated method for training neural networks to createaccurate models of general flexure system topologies syn-thesized using the FACT approach The BLOT uses thesemodels to plot the boundaries of regions containing thecombinations of desired performance capabilities that areachievable by different design instantiations of the FACT-synthesized topologies Both the neural network training andboundary identification portions of the BLOT are iteratedusing additional boundary data until the final boundary isguaranteed to be accurate within a value specified by theuser (eg less than 10 average error) A flexure system isprovided and optimized as a case study

TheBLOTwill be used in future works to generate Ashby-like material plots but for different architectured materialtopologies instead of for natural materials to compare theachievable properties of such microarchitectured structurescomposed of the same material These plots will enableengineers to identify trends among architectured materialsthat result from microstructure instead of composition

Disclosure

A preliminary version of this paperrsquos theory was first pre-sented at ASMErsquos IDETC as paper no DETC2017-67465

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Authorsrsquo Contributions

Ali Hatamizadeh and Yuanping Song are co-first authors astheir contributions to this paper are equal

Acknowledgments

This work was supported by the Air Force Office of ScienceResearch under Award no FA9550-15-1-0321 Program officerByung ldquoLesrdquo Lee is gratefully acknowledged This workused computational and storage services associated withthe Hoffman2 Shared Cluster provided by UCLA Institutefor Digital Research and Educationrsquos Research TechnologyGroup

References

[1] J B Hopkins Design of Parallel Flexure Systems via Freedomand Constraint Topologies (FACT) Massachusetts Institute ofTechnology 2007

[2] J B HopkinsDesign of Flexure-Based Motion Stages for Mecha-tronic Systems via Freedom Actuation and Constraint Topologies(FACT) Massachusetts Institute of Technology 2010

[3] J B Hopkins ldquoDesigning hybrid flexure systems and elementsusing freedom and constraint topologiesrdquoMechanical Sciencesvol 4 no 2 pp 319ndash331 2013

[4] Y LeCun Y Bengio and G Hinton ldquoDeep learningrdquo Naturevol 521 no 7553 pp 436ndash444 2015

[5] J B Hopkins K J Lange and C M Spadaccini ldquoDesigningmicrostructural architectures with thermally actuated prop-erties using freedom actuation and constraint topologiesrdquoJournal of Mechanical Design vol 135 no 6 Article ID 0610042013

[6] M F Ashby Materials Selection in Mechanical Design Butter-worth-Heinemann 2005

[7] X P Cheng and R V Patel ldquoNeural network based trackingcontrol of a flexible macro-micro manipulator systemrdquo NeuralNetworks vol 16 no 2 pp 271ndash286 2003

[8] W He Y Chen and Z Yin ldquoAdaptive neural network controlof an uncertain robot with full-state constraintsrdquo IEEE Transac-tions on Cybernetics vol 46 no 3 pp 620ndash629 2016

[9] H Kobayashi and R Ozawa ldquoAdaptive neural network controlof tendon-driven mechanisms with elastic tendonsrdquo Automat-ica vol 39 no 9 pp 1509ndash1519 2003

[10] J Takeuchi and Y Kosugi ldquoNeural network representation offinite element methodrdquo Neural Networks vol 7 no 2 pp 389ndash395 1994

[11] R I Levin and N A J Lieven ldquoDynamic finite elementmodel updating using neural networksrdquo Journal of Sound andVibration vol 210 no 5 pp 593ndash607 1998

[12] E Boillat S Kolossov R Glardon M Loher D Saladinand G Levy ldquoFinite element and neural network models forprocess optimization in selective laser sinteringrdquo Proceedingsof the Institution of Mechanical Engineers Part B Journal ofEngineering Manufacture vol 218 no 6 pp 607ndash614 2004

[13] M Lefik ldquoHybrid finite element-artificial neural networkmodel for composite materialsrdquo Journal of Theoretical andApplied Mechanics vol 42 pp 539ndash563 2004

[14] Y M A Hashash S Jung and J Ghaboussi ldquoNumerical imple-mentation of a neural network based material model in finiteelement analysisrdquo International Journal for Numerical Methodsin Engineering vol 59 no 7 pp 989ndash1005 2004

[15] L Manevitz M Yousef and D Givoli ldquoFinite-element meshgeneration using self-organizing neural networksrdquo Computer-Aided Civil and Infrastructure Engineering vol 12 no 4 pp233ndash250 1997

[16] Z Li andD Cao ldquoConceptual Design of CompliantMechanismBased on Port Ontologyrdquo Advances in Mechanical Engineeringvol 5 p 401492 2015

[17] Y Qin and Z Feng ldquoStructural dynamicmodification of flexurehinge structure based on artificial neural networkrdquo AviationPrecision Manufacturing Technology vol 5 no 11 2006

[18] F G Kong Q Li and W J Zhang ldquoAn artificial neuralnetwork approach tomechanism kinematic chain isomorphismidentificationrdquo Mechanism and Machine Theory vol 34 no 2pp 271ndash283 1999

[19] E K Burke andGKendall Eds SearchMethodologies SpringerUS Boston MA USA 2005

[20] Y V Haimes L S Lasdon and D A Wismer ldquoOn a bicriterionformulation of the problems of integrated system identificationand system optimizationrdquo IEEE Transactions on Systems Manand Cybernetics vol SMC-1 pp 296-297 1971

[21] P L Yu ldquoA class of solutions for group decision problemsrdquoManagement Science vol 19 no 8 pp 936ndash946 1973

14 Mathematical Problems in Engineering

[22] A P Wierzbicki ldquoOn the completeness and constructiveness ofparametric characterizations to vector optimization problemsrdquoOR Spectrum vol 8 no 2 pp 73ndash87 1986

[23] A P Wierzbicki ldquoA mathematical basis for satisficing decisionmakingrdquo in Organizations Multiple Agents with Multiple Cri-teria vol 190 of Lecture Notes in Economics and MathematicalSystems pp 465ndash486 Springer Berlin Heidelberg Berlin Hei-delberg 1981

[24] I Das and J E Dennis ldquoNormal-boundary intersection a newmethod for generating the Pareto surface in nonlinear multi-criteria optimization problemsrdquo SIAM Journal on Optimizationvol 8 no 3 pp 631ndash657 1998

[25] D E Goldberg Genetic Algorithms in Search Optimizationand Machine Learning Addison-Wesley Longman PublishingBoston MA USA 1st edition 1989

[26] ldquoExceptional papermdashlexicographic orders utilities anddecisionrules a surveyrdquo Management Science vol 20 pp 1442ndash14711974

[27] A Charnes and W W Cooper ldquoGoal programming and mul-tiple objective optimizationsrdquo European Journal of OperationalResearch vol 1 no 1 pp 39ndash54 1977

[28] K A de Jong Evolutionary Computation a Unified ApproachMIT Press Cambridge Mass USA 2006

[29] N Padhye P Bhardawaj and K Deb ldquoImproving differentialevolution through a unified approachrdquo Journal of Global Opti-mization vol 55 no 4 pp 771ndash799 2013

[30] O Sigmund ldquoOn the design of compliant mechanisms usingtopology optimizationrdquo Mechanics of Structures and Machinesvol 25 no 4 pp 493ndash524 1997

[31] M P Bendsoslashe and O Sigmund Topology Optimization TheoryMethod and Application Springer Berlin Heidelberg BerlinGermany 2003

[32] Z Luo L Chen J Yang Y Zhang and K Abdel-MalekldquoCompliant mechanism design using multi-objective topologyoptimization scheme of continuum structuresrdquo Structural andMultidisciplinary Optimization vol 30 no 2 pp 142ndash154 2005

[33] L Cao A T Dolovich A L Schwab J L Herder and WZhang ldquoToward a unified design approach for both compliantmechanisms and rigid-body mechanisms module optimiza-tionrdquo Journal of Mechanical Design vol 137 no 12 Article ID122301 2015

[34] H B Demuth M H Beale O Jess De andM T HaganNeuralNetwork Design 2nd edition 2014

[35] D E Rumelhart G E Hinton and R J Williams ldquoLearningrepresentations by back-propagating errorsrdquo Nature vol 323no 6088 pp 533ndash536 1986

[36] R Hecht-Nielsen ldquoTheory of the backpropagation neural net-workrdquo in Proceedings of the International Joint Conference onNeural Networks (IJCNN rsquo89) vol 1 pp 593ndash605 WashingtonDC USA June 1989

[37] FDanForesee andMTHagan ldquoGauss-Newton approximationto Bayesian learningrdquo in Proceedings of the International Con-ference on Neural Networks (IJCNN rsquo97) vol 3 pp 1930ndash1935IEEE Houston Tex USA June 1997

[38] L E Scales Introduction to Non-Linear Optimization Macmil-lan Education UK London 1985

[39] M H Beale M T Hagan and H B Demuth Neural NetworkToolbox119879119872Userrsquos Guide forMATLABR2012a NatickMA USA2012

[40] K Levenberg ldquoA method for the solution of certain non-linearproblems in least squaresrdquo Quarterly of Applied Mathematicsvol 2 pp 164ndash168 1944

[41] D Marquardt ldquoAn algorithm for least-squares estimation ofnonlinear parametersrdquo SIAM Journal on Applied Mathematicsvol 11 no 2 pp 431ndash441 1963

[42] J S Armstrong and F Collopy ldquoErrormeasures for generalizingabout forecasting methods empirical comparisonsrdquo Interna-tional Journal of Forecasting vol 8 no 1 pp 69ndash80 1992

[43] C Audet and J Dennis ldquoAnalysis of generalized pattern search-esrdquo SIAM Journal on Optimization vol 13 no 3 pp 889ndash9032002

[44] P E Gill W Murray andM HWright Practical OptimizationAcademic Press 1981

[45] R Fletcher Practical Methods of Optimization John Wiley ampSons New York NY USA 2nd edition 2000

[46] P E Gill W Murray and M H Wright Numerical LinearAlgebra and Optimization Addison-Wesley 1991

[47] A R Conn N I Gould and P Toint ldquoA globally convergentaugmented Lagrangian algorithm for optimization with generalconstraints and simple boundsrdquo SIAM Journal on NumericalAnalysis vol 28 no 2 pp 545ndash572 1991

[48] A R Conn N Gould and P L Toint ldquoA globally convergentLagrangian barrier algorithm for optimization with generalinequality constraints and simple boundsrdquo Mathematics ofComputation vol 66 no 217 pp 261ndash288 S1ndashS11 1997

[49] T G Kolda R M Lewis and V J Torczon ldquoA generating setdirect search augmented Lagrangian algorithm for optimizationwith a combination of general and linear constraintsrdquo Tech RepSAND2006-5315 Sandia National Laboratories USA 2006

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 2: Optimizing the Geometry of Flexure System Topologies Using the …web.cs.ucla.edu/~ahatamiz/BLOT.pdf · 2019-10-24 · synthesized topology using dierent geometric parameter values

2 Mathematical Problems in Engineering

instantiations of the topology New numerical simulations ofthe various design instantiations along the initially identifiedboundary are then used in conjunction with the originalsimulation data to retrain a more accurate neural networkmodelThis model is then used again to identify an improvedboundary and the entire process is iterated until the topol-ogyrsquos actual performance boundary is rigorously obtainedwith an accuracy specified by the user (eg less than 10average error) Optimal design instantiations can then beselected from portions of the final boundary

Although the BLOT was originally created to plot theperformance capability regions of FACT-designed architec-tured materials [5] on Ashby plots [6] to compare theirengineered properties with the properties achieved by naturalmaterials a simple FACT-designed case study is optimized inthis paper to most clearly demonstrate how the BLOT workswith the FACT approach to generate general flexure systemdesigns from start to finish Suppose for instance a designerwished first to synthesize a flexure system topology thatachieves three specific DOFs two orthogonal translationsshown by the black arrows in Figure 1(a) and one orthogonalrotation shown by the red line with a circular arrow aboutits axis Upon inspection of FACTrsquos complete library ofspaces the designer would identify that this desired setof DOFs lies within the freedom space [1ndash3] shown inFigure 1(b) This space consists of an infinite number ofrotation lines that are parallel to the desired rotation lineshown as a box of red lines in the figure and an infinitenumber of translation arrows that point in the directionsthat are perpendicular to the axes of these lines shown asthe disk of black arrows in the same figure This freedomspace represents all the permissible motions that wouldresult from linearly combining the three DOFs shown inFigure 1(a) According to the FACT library this freedomspace uniquely links to a complementary constraint space[1ndash3] shown as the box of blue lines in Figure 1(b) thatconsists of an infinite number of constraint lines [1ndash3] thatare parallel to the desired red rotation line This constraintspace represents the region of space within which flexibleelements should be selected to achieve the desired DOFsusing a parallel topology configuration (ie a configurationthat consists of a single rigid stage joined directly to a fixedground by flexible elements) Instructions about how to selectthe appropriate number of flexible element constraints fromwithin the constraint space so that the resulting topologyis exactly constrained or overconstrained are provided inprevious publications [1ndash3] Suppose for this example that thedesigner synthesized a symmetric overconstrained topologyby selecting four wire elements within the constraint spacesuch that the axes of the wires are collinear with four of thespacersquos parallel constraint lines as shown in Figure 1(c) At thispoint in the design process the designer has completed theFACT approach by synthesizing a topology that successfullyachieves the three desired DOFs regardless of the designrsquosconstituent material properties or its geometry (eg howthick or long its wire elements are) A modal analysis ofone of the topologyrsquos design instantiations shows that themost compliant directions of motion (ie the mode shapescorresponding to the lowest natural frequency values) are the

desired DOFs from Figure 1(a) One of the first two identicaltranslational mode shapes is shown in Figure 1(d) and thethird rotational mode shape is shown in Figure 1(e)

Suppose that the designer wished then to identify whatgeometric instantiation of the FACT-synthesized topologyin Figure 1(c) simultaneously achieves the largest range ofmotion and the highest natural frequency along the trans-lational DOF shown in Figure 1(d) for a given constituentmaterialThemore a flexure systemcandeform in a particulardirection before it yields (ie its range ofmotion)with respectto its overall size and the higher the natural frequency is thatcorresponds with the mode shape along that direction theeasier it is to control the system at high speeds with precisionover large ranges To identify a geometric instantiation thatachieves this combination of capabilities the designer shouldlabel the topologyrsquos features with independent geometricparameters that fully define its geometry Suppose for thisexample that the designer set the rigid ground and rigid stagegeometry to be the same rectangular prism constrained bythe parameter 119882 as shown in Figure 1(f) Then suppose thatthe four wire elements that join the corners of this rigidstage are each set to possess the same length 119871 and thesame square cross-section with a side length of 119879 (ie thewidth and thickness of each wire element is 119879) The designerwould then provide the BLOT with the smallest achievablefeature sizes for each of these three independent parametersas well as the largest geometrically compatible values forthe same parameters Properties of the constituent materialsshould also be provided as well as the tolerance capabilitiesof the available fabrication process to identify the smallestresolution increment by which each geometric parametercould be changed to sweep between these smallest and largestvalues Using this information the BLOT would then plotthe boundary that circumscribes the combination of desiredcapabilities (ie the ranges of motion 119889 per system charac-teristic length radic1198712 +1198822 and the natural frequencies 120596119899)that can be achieved along the direction of the translationalDOF by the topologyrsquos geometric instantiations for the givenrange of parameters If the smallest parameter values are setto 119879min = 1mm 119882min = 10mm and 119871min = 1mm and thelargest parameter values are set to 119879max = 50mm 119882max =100mm and 119871max = 100mm the boundary resulting fromBLOT is shown in Figure 1(g) for the example topology ofFigure 1(c) using a resolution increment value of 05mm andusing aluminum as the constituent material with a Youngrsquosmodulus of 69GPa a shear modulus of 26GPa a densityof 2705 kgm3 and a yield strength of 105MPa Once thisboundary is known the designer can select optimal designinstantiations that simultaneously achieve the largest valuesof each of the desired capabilities from along the top-rightportion of the boundary as shown in Figure 1(g) Two extremedesigns are shown as large black dots that lie on either end ofthe optimal portion of the red boundary plotted

Note that although the BLOT introduced in this paperutilizes numerically generated data taken from a varietyof corresponding design instantiations to train neural net-works for creating an accurate model of FACT-synthesizedtopologies the BLOT is also capable of using closed-form

Mathematical Problems in Engineering 3

(a)

Freedom space Constraint space

(b)

(c) (d) (e)

WW

T L

W2

W2

(f)

T = 10 mmL = 995 mmW = 100 mm

T = 25 mmL = 15 mmW = 100 mm

10minus1

10minus2

10minus3

10minus4

10minus5

10minus6

Tran

slatio

nal D

OF

Nor

mal

ized

rang

e of m

otio

ndradic

W2+L2

T = 25 mmL = 15 mmW = 100 mm

100 10210minus4 10minus210minus6

Translational DOF natural frequency (kHz)

Optimal designinstantiations

(g)

Figure 1 Desired DOFs (a) freedom and constraint spaces (b) synthesized topology (c) validated DOFs (d) and (e) topologyrsquos geometricparameters (f) boundary of the topologyrsquos achievable ranges of motion and natural frequencies corresponding to the translational DOFgenerated by the BLOT (g)

analytical models of the parameterized topologies if suchmodels are available Closed-form analytical models arehowever difficult to construct and their assumptions usuallyonly produce valid results for specific topologies or for limitedranges of geometric parameters that define other topologiesThus this paper focuses on the theory necessary to trainneural networks for creating models based on the results ofnumerically generated data because this approach is moregeneral than closed-form analytical approaches Note alsothat although the BLOT is introduced in this paper as a toolfor optimizing the geometry of flexure system topologies itcould also be applied to a host of other diverse applications

Prior to this paper artificial neural networks have beenused extensively tomodel and control a variety of mechanicalsystems including compliant mechanisms robots manip-ulators and rigid linkages Cheng and Patel [7] used aneural network-based strategy for achieving stable trackingcontrol of a flexible macro-micro manipulator He et al[8] studied the tracking control of an uncertain 119899-linkrobot with full-state constraints Kobayashi and Ozawa [9]presented an adaptive neural network control for tendon-driven robotic mechanisms with elastic tendons Takeuchi

and Kosugi [10] proposed a finite element method based onapplications of neural networks for boundary value problemsLevin and Lieven [11] presented a neural network-basedapproach for dynamic finite element model updating Boillatet al [12] combined finite element and neural networksin order to find the optimal parameters used in a selec-tive laser sintering process Lefik [13] studied compositematerials using a hybrid finite element and artificial neuralnetwork model Hashash et al [14] proposed the numer-ical implementation of a neural network-based materialmodel in finite element analysis Manevitz et al [15] pre-sented a finite element mesh-generation approach using self-organizing neural networks Li and Cao [16] utilized neuralnetworks to select two dimensional compliant mechanismdesign schemes Qin and Feng [17] modified the structuralparameters of flexure hinges by employing trained neuralnetworks Kong et al [18] presented a method for identifyingmechanism kinematic chain isomorphism by applying neuralnetworks

Although few researchers have directly attempted system-performance boundary identification its goal is similar tothe goal of multiobjective optimization which has been

4 Mathematical Problems in Engineering

studied extensively A multiobjective optimization problem(MOOP) deals with more than one objective function andaims at finding a set of solutions that optimizes all theobjective functions simultaneously Several methods havebeen proposed to solve the local or global Pareto-optimalsolution set [19] One of the most widely used methods is theweighting method [19] Haimes et al [20] introduced the 120576-Constraintmethod in 1971 andYu [21] introduced themethodof global criterion in 1973 Wierzbicki [22 23] introducedthe achievement scalarizing function approach in 1981 Othersolving methods include normal boundary intersection [24]evolutionary algorithm [25] lexicographic ordering [26]and goal programming [27] More recently MOOP methodshave focused on stochastic algorithms including a variety ofevolutionary algorithms [28 29] Such algorithms generatemore reliable global Pareto-optimal solution sets but requiresignificantly more function evaluations than deterministicalgorithms and are thus generally better suited for complexblack-box-model optimizations The boundary identifica-tion approach proposed in this paper has in part beenadapted from various deterministic multiobjective optimiza-tion methods such that the complete continuous boundary(including concave portions) that circumscribe the perfor-mance capabilities achieved by general flexure topologies canbe identified and refined with a desired accuracy Thereforea topologyrsquos full design space can be identified using theBLOT

By combining the utility of the BLOT with the currentFACT approach a new advantageous approach emergeswhich is unique from other existing design-optimizationapproaches Whereas other approaches (eg topology opti-mization [30ndash32] or module optimization [33]) simultane-ously combine the tasks of optimizing a designrsquos topologywith its geometry the proposed approach decouples thosetasks in such a way that the time-consuming computationsare reserved solely for the simpler task of geometry optimiza-tion only This optimization occurs after the FACT approachhas directly generated and finalized the most promisingtopologies without performing expensive iterative calcula-tionsThus by decoupling the tasks of topology synthesis andgeometry optimization in this way the speed that optimaldesigns can be generated from start to finish as well as thelikelihood that the global-optimum solutions are identifiedincreases

The specific contributions of this paper include the fol-lowing (i) a new fully automated tool is created and demon-strated (ie BLOT) that identifies the rigorous performancecapability boundaries achieved by flexure topologies gener-ated via FACT (ii) a new algorithm is proposed within thistool for optimizing and iteratively training the architecturesof artificial neural networks using data generated from spe-cially selected numerical simulations of design instantiationsalong previously generated boundaries to create accuratemodels of general flexure topologies (iii) a new approachis also introduced within the BLOT that combines existingmultiobjective optimization methods to use these modelsfor iteratively refining the convex and concave portions of ageneral topologyrsquos performance capability boundary with anaccuracy determined by the user

sum a(n)

sum a(n)

sum

g(n)

Input Hiddenlayer 1

Hiddenlayer 2

Outputlayer 3

Neuron

a(n)

a(n)

a(n)

a(n)

a(n)

w111

w112

w131

w312w113

x1

x2

x3

b11

b21

b31

b12

b22

b32

b42

b13

f1sum

sum

sum

sum

sum

Figure 2 Neural network example with three inputs one outputand two hidden layers of neurons

2 Model Generation via Neural Networks

This section summarizes how the BLOT generates modelsof FACT-synthesized topologies by training artificial neuralnetworks using numerical simulations performed on variousgeometric instantiations of these topologies Artificial neuralnetworks like the kind shown in Figure 2 consist of severalprocessing layers which can be tuned to successfully mapany inputs 119909119894 to any corresponding outputs 119891119895 when givena sufficient number of diversified input and correspondingtarget output values to learn from For the application ofthis paper inputs are the geometric parameters that definea flexure systemrsquos topology (eg 1199091 = 119882 1199092 = 119879 and1199093 = 119871 from the topology of Figure 1(f)) and outputs arethe performance capabilities (eg range of motion or naturalfrequency) achieved by the design instantiations that aredefined by these corresponding input parametersThe knowninput and target output values are obtained using finiteelement analysis (FEA) on sample design instantiations withgeometric parameters that span the topologyrsquos full designspace from their smallest achievable feature sizes to theirlargest geometrically compatible values The theory of thissection provides a systematic way to train neural networks forcreating sufficiently accurate flexure system topology modelsusing a minimal number of known input and target outputvalues sominimal computational effort and time are requiredby the BLOT

Each layer within a neural network consists of inter-connected computational nodes called neurons as labeledin Figure 2 The lines that interconnect the neurons areassociated with scalar weight values 119908119890119905119897 where 119890 is asubscript that corresponds to the labeled neuron number(or input) from which the line extends 119905 is a subscript thatcorresponds to the labeled neuron number at which the lineterminates and 119897 is a subscript that corresponds to the labeledlayer number in which that neuron belongs Other linesenter the neurons with associated scalar bias values 119887119905119897 thatutilize similar subscript conventions Each neuron within thenetworkrsquos hidden layers (ie the layers in between the input

Mathematical Problems in Engineering 5

values and the output layer) utilizes an activation function[4] 119886(119899) In this paper we employ the hyperbolic tangentsigmoid function [34] defined by

119886 (119899) = 119890119899 minus 119890minus119899119890119899 + 119890minus119899 (1)

The output from each activation function passes from onehidden layer of neurons to the next until the output layeris reached where this paper employs the linear activationfunction [34] 119892(119899) = 119899 to produce the final output 119891119895This process is called forward propagation because of thedirection in which the mathematics propagates or flows Todemonstrate how the mathematics flows within the networkdiagramed in Figure 2 consider the neuron highlighted bythe dotted red box The 119899 value that is plugged into thefunction of (1) corresponding to this highlighted neuron is

119899 = (1199091 sdot 119908111) + (1199092 sdot 119908211) + (1199093 sdot 119908311) + 11988711 (2)

Once a sufficient number of known input and targetoutput values have been numerically calculated variousmethods can be employed to use these values to iterativelytune the weights 119908119890119905119897 and biases 119887119905119897 within a neuralnetwork such that it can link any set of input values withinthe design space to accurate output values (ie the networkcan be trained to create an accurate predictive model)A popular way to tune the weights and biases is calledback propagation [35 36] The input values are normalizedand fed into the network using initial-guess weights andbiases The resulting outputs are compared against the targetoutputs that are known to be correct from a priori numericalsimulation A gradient vector of the resulting error withrespect to each weight and bias is then used to tune thesevalues in the opposite direction of the gradient vector Byrepeating this process numerous times the network canbe trained to accurately predict the correct output valuesA variation of the back propagation training method (ieBayesian Regularization [37 38]) was used to train the neuralnetworks that model the flexure system topologies of thispaper

The specific iterative process used in the BLOT to gener-ate accurate models of general FACT-synthesized topologiesis as follows A user provides a MATLAB script with theindependent geometric parameters that define the desiredflexure topology The smallest and largest values for each ofthese parameters are also provided to the script to specifythe full design space over which the resulting model willaccurately predict The script then begins by generating allthe possible design instantiations that result from applyingevery combination of these smallest and largest values withthree other evenly spaced values in between them (eg 119879min(3119879min + 119879max)4 (119879min + 119879max)2 (119879min + 3119879max)4 and119879max) for every independent parameter to the topologyrsquosgeometry Each resulting design instantiation is checked forgeometric compatibility against various geometric constraintfunctions which are specific to their topologyThe geometricconstraint function imposed on the design instantiationsof the example topology labeled in Figure 1(f) is 119882 minus2119879 gt 0 Then the MATLAB script passes the resulting

design instantiations that are geometrically compatible to aPYTHON script that automatically creates computer-aided-design (CAD) models of these instantiations defines theirconstitutive materials meshes their models and appliesthe desired boundary and loading conditions This scriptthen performs the FEA simulation in parallel batches usingABAQUS to produce the target output values that correspondwith each design instantiation defined by the given inputvalues Thus large amounts of data can be acquired withinthe design space of general flexure topologies using theautomated scripts

The numerically generated data is then randomly dividedamong two different sets 80 of the data is assigned to atraining set and the remaining 20 is assigned to a testing setThe training set of data is used to train a neural network thatpossesses an initial-guess architecture with two hidden layersand an output layer with only one neuron The number ofneurons in the first hidden layer is initially set to 20 neuronsand the number of neurons in the second hidden layer isinitially set to zero The modified mean squared error [39]119864training is calculated for the training set of data using thisinitial-guess network architecture with initial-guess weightsand biasesTheBayesianRegularization algorithm then trainsthe architecture by updating the weights and biases withinthe network using the gradient of 119864training for each iteration asdescribed previously until one of the following five conditionsis satisfied(1) Training is stopped once an excessively large numberof iterations have occurred For this paper 1000 iterationswere used as the cutoff(2) Training is stopped once an excessive amount of timehas lapsed For this paper the cutoff time was set to 10 hours(3) Training is stopped once the modified mean squarederror of the training set of data 119864training reaches a smallenough number For this paper the number was set to 10minus12(4) Training is stopped once the gradient of the modifiedmean squared error of the training set of data 119864trainingbecomes very small For this paper 10minus7 is used as the cutoff(5) Training is stopped once the damping factor [40 41]used within the Bayesian Regularization algorithm exceeds acertain value For this paper the damping factor cutoff wasset to 1010

After training has stopped the mean absolute percentageerror [42] MAPEtotal for the total set of training and testingdata combined is calculated using

MAPEtotal = 100119873total

119873totalsum119896=1

100381610038161003816100381610038161003816100381610038161003816119876119896total minus 119867119896total

119876119896total100381610038161003816100381610038161003816100381610038161003816 (3)

where 119873total is the total number of target output values fromboth the training and testing sets combined 119876119896total are thetarget output values from both the training and testing setsand119867119896total are all the corresponding predicted output valuescalculated using the current trained network In generalthe smaller a trained networkrsquos MAPEtotal is the better thetrained neural network can model the behavior of the flexuresystem topology

6 Mathematical Problems in Engineering

Thus the MAPEtotal of the trained initial-guess networkarchitecture (ie 20 neurons in the first hidden layer and0 neurons in the second hidden layer) is used as the start-ing point for optimizing the networkrsquos architecture Patternsearch [43] which is described in Section 3 in detail isused to optimize the number of neurons in the networkrsquosarchitecture in two different phases In the first phase patternsearch is used to optimize an architecture with no neuronsin the second hidden layer For this phase the lower boundof neurons in the first hidden layer is set to 5 and the upperbound is set to 40 The input tolerance (The MathWorksInc) is set to 1 the initial mesh size (The MathWorks Inc)is set to 8 and the expansion factor (The MathWorks Inc)is set to 2 The cost function that is minimized for thisoptimization is MAPEtotal defined in (3) Once the besttrained network architecture is found using this first hiddenlayer optimization (ie the trained network architecture withthe smallest MAPEtotal) the mean absolute percentage errorof the training MAPEtraining and testing MAPEtesting datasets is each calculated using (3) for this best trained networkarchitecture but with the subscripts currently labeled ldquototalrdquoreplaced by the words ldquotrainingrdquo and ldquotestingrdquo respectively Ifboth of these values (ie MAPEtraining and MAPEtesting) areequal to or less than 35 the neural network is used as theinitial model of the FACT-synthesized flexure topology Ifhowever eitherMAPEtraining orMAPEtesting is greater than 35the second phase of the network architecture optimization isinitiated In the second phase pattern search is again usedto optimize a network architecture but with 40 neurons inthe first hidden layer and an initial-guess of 4 neurons inthe second hidden layer For this phase the lower bound ofneurons in the second hidden layer is set to 1 and the upperbound is set to 15The input tolerance is again set to 1 and theexpansion factor is again set to 2The best number of neuronsin the second hidden layer of the network with 40 neuronsin the first hidden layer is identified by minimizing thesame cost function in (3) MAPEtotal Once the best trainednetwork architecture is found using this second hidden layeroptimization the mean absolute percentage error of thetraining MAPEtraining and testing MAPEtesting data setsis each calculated using (3) for this best trained networkarchitecture but with the subscripts currently labeled ldquototalrdquoreplaced by the words ldquotrainingrdquo and ldquotestingrdquo respectively Ifboth of these values (ie MAPEtraining and MAPEtesting) areequal to or less than 35 the neural network is used as theinitial model of the FACT-synthesized flexure topology Ifhowever eitherMAPEtraining orMAPEtesting is greater than 35the trained network architecture with the lowest MAPEtotalfound from the network optimization of both the first andsecond phase is used as the initial model of the FACT-synthesized flexure topology

Thus using minimal computation an initial model ofgeneral FACT-synthesized flexure system topologies can beidentified Note thatmany of the hard numbers chosen in thissection were selected for rapidly generating accurate modelsof flexure system topologies with less than sim10 independentgeometric parametersThe numbers in this section may needto be adjusted for scenarios with larger numbers of inputparameters

3 Plotting Performance Boundaries

This section discusses the portion of the BLOT that utilizesthe models of flexure system topologies generated fromSection 2 to plot their performance capability boundariesRecall that the geometric parameters of a flexure systemtopology (eg 119882 119879 and 119871 for the topology of Figure 1(f))are its modelrsquos inputs 119909119894 and the performance capabilities(eg range of motion and natural frequency for the exampleof Figure 1(f)) achieved by the design instantiations that aredefined by these corresponding input parameters are themodelrsquos outputs 119891119895 For this section a theoretical exampleof a system with only two inputs 1199091 and 1199092 will be used toconceptually explain the algorithm that plots the boundarythat circumscribes the systemrsquos full design space for two ofthe systemrsquos achievable outputs 1198911(1199091 1199092) and 1198912(1199091 1199092)

The boundary-plotting algorithm first requires the small-est and largest values of each input parameter 119909119894min and119909119894max respectively as well as resolution increment valuesΔ119909119894 for each input parameter Constraint functions shouldalso be provided to define what combination of input valuesare permissible (eg 119882 minus 2119879 gt 0 for the example ofFigure 1(f)) For the theoretical example of this section theconstraint function is shown as the red spline boundary linein Figure 3(a)

The algorithm begins by supplying a randomly selectedcombination of permissible inputs shown as the blue dotlabeled 11987411 in Figure 3(a) to the Sequential QuadraticProgramming (SQP) [44 45] optimization algorithm Thisalgorithm first identifies a set of other permissible inputcombinations that result from adding and subtracting theresolution increment of each input Δ119909119894 to and from the firstrandomly selected combination of inputs along each inputrsquosaxis For the example of Figure 3(a) this first set of inputcombinations are shown as the four blue dots immediatelysurrounding the blue dot labeled 11987411 Note that althoughΔ1199091 is shown as being equal to Δ1199092 in the example theseresolution increments do not have to be equal for otherscenarios The systemrsquos model is then used to map all of thecombinations of these inputs to their corresponding com-binations of outputs which are represented by the five bluedots shown in Figure 3(b) Note that the original input dot11987411 maps to the output dot 11988511 The SQP algorithm thenapproximates the gradient (ie first derivatives) and Hessianmatrix (ie the symmetric matrix of second derivatives) ofthe objective function defined by

119869 (1199091 1199092) = cos (120579) 1198912 (1199091 1199092) + sin (120579) 1198911 (1199091 1199092) (4)

using the input and output combinations (ie the adjacentblue dots in Figures 3(a) and 3(b)) where 120579 in (4) is initiallyset to 0 so that the largest 1198912 output can be pursued firstThis gradient and Hessian matrix are then used to constructa Quadratic Programming (QP) subproblem [46] whichis solved to determine another combination of inputs thatwill map to combinations of outputs that produce a largerobjective function value In the example of Figure 3 supposethe new combination of inputs determined is shown as thered dot labeled 11987412 in Figure 3(a) Note that this dotrsquoscorresponding combination of outputs which is shown as the

Mathematical Problems in Engineering 7

Constraintfunction

x1

x2

O13

O12

O21

O11

O14

r2

Δx2

(a)

Z14

Z13

Z12

Z11

Z21

= 0

= Δ

f1(x1 x2)

f2(x

1x

2)

(b)

Constraintfunction

x1

x2

O22

O21

(c)

Z21 Z22

= 0

= Δ

f1(x1 x2)

f2(x

1x

2)

(d)

Figure 3 Progression of the SQP and then ALPS optimization algorithms for 120579 = 0 initialized in the objective function in the input space(a) and in the corresponding output space (b) continued progression of the same optimization algorithms for 120579 = Δ120579 incremented in theobjective function in the same input space (c) and in the same output space (d)

red dot labeled 11988512 in Figure 3(b) possesses 1198912 value thatis larger than any of the other previous blue dots shown inthe same figure The SQP algorithm then repeats this processby finding another set of permissible input combinations thatresult from adding and subtracting the resolution incrementof each inputΔ119909119894 to and from the new combination of inputs(ie 11987412 from Figure 3(a)) along each inputrsquos axis For theexample of Figure 3(a) this new set of input combinationsare shown as the four red dots immediately surroundingthe red dot labeled 11987412 Note that each of the five reddots in Figure 3(a) maps to a corresponding red dot inFigure 3(b)Thus the SQP algorithm rapidly finds an efficientpath toward a local maximum of the objective function byiteratively stepping from one cluster of dots to the next inthis manner The SQP algorithm terminates when either (i)the step distance from one central dot to the next (eg thedistance between11987411 and11987412 in Figure 3(a)) is smaller thanthe prescribed resolution of the input parameters Δ119909119894 or (ii)the process fails to generate the next step which typically

occurs because the first or second derivatives of the objectivefunction cannot be calculated The latter reason typicallyoccurs when the algorithm encounters discontinuities withinthe objective function

After the SQP algorithm terminates the boundary-plotting algorithm of this paper continues the optimizationprocess by supplying the combination of permissible inputsthat map to the combination of outputs that produce thelargest objective function value identified by the SQP algo-rithm to the Augmented Lagrangian Pattern Search (ALPS)[47ndash49] optimization algorithm For the example of Fig-ure 3(a) suppose the SQP process was unable to step beyondthe cluster of dots surrounding 11987412 and thus terminatedat that location The combination of inputs that would besupplied to the ALPS algorithm would be the red dot labeled11987413 in Figure 3(a) since this combination of inputs mapsto the combination of outputs that achieve the largest 1198912value found using the SQP algorithm This combination ofoutputs is shown as the red dot labeled 11988513 in Figure 3(b)

8 Mathematical Problems in Engineering

The ALPS algorithm first identifies a set of other permissibleinput combinations that result from adding and subtractingan initial mesh size 119903119894 to and from the combination of inputssupplied to the algorithm along each inputrsquos axis The initialmesh size labeled 1199032 in Figure 3(a) is typically set to 20of the range of its corresponding input parameter (ie 119903119894 =02|119909119894max minus 119909119894min|) For the example of Figure 3(a) the firstset of ALPS-generated input combinations are shown as thefour purple dots surrounding the red dot labeled 11987413 Notethat although 1199031 is shown as being equal to 1199032 in the examplethese mesh sizes are not typically equal for other scenariosThe systemrsquos model is then used to map the combinations ofthese inputs to their corresponding combinations of outputswhich are represented by the four purple dots shown inFigure 3(b)TheALPS algorithm then identifies if any of thesecombinations of inputs map to a combination of outputs thatproduce an objective function value that is larger than anyproduced previously in the optimization process Supposefor instance that the input combination of the example inFigure 3(a) labeled 11987414 maps to the output combinationlabeled11988514 in Figure 3(b) which achieves the largest1198912 valuepreviously identified The ALPS algorithm would then stepto the dot representing that input combination (eg 11987414)The algorithm would then identify a set of other permissibleinput combinations that result from adding and subtractingthe previous mesh size (eg 119903119894 in this case) multiplied byan expansion factor to and from this combination of inputsalong each inputrsquos axis For this paper the expansion factoris set to 2 Thus for the example of Figure 3(a) the nextset of ALPS-generated input combinations are shown as thethree orange dots surrounding the purple dot labeled 11987414These orange input dots shown in Figure 3(a) map to thethree orange output dots shown in Figure 3(b)The algorithmthen identifies if any of these output combinations producean objective function value that is larger than any producedpreviously in the optimization process Since none of theorange dots in Figure 3(b) possess an 1198912 value that is largerthan 11988514 the ALPS algorithm would then identify a setof other permissible input combinations that result fromadding and subtracting the previousmesh size (eg 2119903119894 in thiscase) divided by the same expansion factor to and from thecombination of inputs labeled 11987414 in Figure 3(a) along eachinputrsquos axis Thus for the example of Figure 3(a) the next setofALPS-generated input combinations are shown as the threelight-green dots surrounding the same purple dot labeled11987414These light-green input dots shown in Figure 3(a)map tothe three light-green output dots shown in Figure 3(b) Againsince none of the light-green dots in Figure 3(b) possessan 1198912 value that is larger than 11988514 the ALPS algorithmwould then identify another set of other permissible inputcombinations that result from adding and subtracting theprevious mesh size (eg 119903119894 in this case) divided by the sameexpansion factor to and from the combination of inputslabeled 11987414 in Figure 3(a) along each inputrsquos axis Thus forthe example of Figure 3(a) the next set of ALPS-generatedinput combinations are shown as the four dark-green dotssurrounding the same purple dot labeled 11987414 This processrepeats until either (i) one of the new input combinationsmaps to an output combination with an objective function

value that is larger than any produced previously or (ii) themesh size becomes equal to or less than a specified inputtolerance which for this paper is set to the resolution ofthe input parameters Δ119909119894 If the first option (i) occursthe algorithm will step to the improved input combinationand the ALPS process will continue iterating If the secondoption (ii) occurs the ALPS algorithmwill terminate For theexample of Figure 3(a) the second option occurred becausethe mesh size of the four yellow dots shown immediatelysurrounding the purple dot labeled 11987414 is equal to Δ1199092labeled in the same figure and none of the new output dotsgenerated ever surpassed the 1198912 value of 11988514 as shown inFigure 3(b)

Once the SQP and then ALPS algorithms have bothrun their full course for determining the maximum valueof 119869(1199091 1199092) from (4) for 120579 = 0 the 120579 parameter is thenincrementally increased by Δ120579 which is typically set to avalue between 12058710 to 12058720 Using this new 120579 parameter thealgorithm then computes the value of the objective functionin (4) for all existing input combinations which for theexample of this section are shown as the dots in Figure 3(a)From these input combinations the one that produces thelargest objective function value for 120579 = Δ120579 correspondsto the input combination represented by the dot labeled11987421 in Figure 3(a) which maps to the output combinationrepresented by the orange dot labeled 11988521 in Figure 3(b)The algorithm would then supply this input combinationto the SQP algorithm to generate more input combinationsthat produce larger objective function values as describedpreviously The four blue dots immediately surrounding thedot labeled 11987421 in Figure 3(c) would be identified firstfor the example of this section using this approach Thosefour blue dots map to the four new blue dots shown inFigure 3(d) that surround the dot labeled 11988521 The SQPalgorithm would then identify the next input combination(eg 11987422 shown in Figure 3(c)) that produces a largerobjective function value Note that the input combinationdot 11987422 maps to an output combination dot labeled 11988522in Figure 3(d) that is farther away along the directionprescribed by the new 120579 parameter value (ie Δ120579) As theSQP algorithm continues four other input combinationswould be identified that immediately surround the inputcombination dot labeled 11987422 in Figure 3(c) These dots arecolored red in Figure 3(c) Note however that one of thenew dots lies outside the red spline line and thus represents adesign instantiation that violates the geometric compatibilityconstraints imposedThus only three of the new surroundingdots map to permissible output combinations as shown inFigure 3(d) The SQP algorithm would continue in this wayuntil it terminates The ALPS algorithm would then takeover where the SQP algorithm left off as described previouslyuntil the ALPS algorithm also terminates Once the ALPSalgorithm terminates the algorithmwill have found the inputcombination that achieves the largest objective function valueidentified from among those previously tested for 120579 = Δ120579

The algorithm iterates this pattern of steps to identify thecombinations of output values that lie farthest away alongtheir prescribed directions defined by their corresponding120579 value in a clockwise fashion until 120579 ge 2120587 (ie all the

Mathematical Problems in Engineering 9

directions have been swept) It is important to note that anytime before the 120579 parameter is incrementally advanced theobjective function of (4) is rechecked for every combinationof input values that have been evaluated up to that point tomake sure that each of the previously identified output dotsthat are used to be the farthest away along their prescribeddirections is still the farthest away If a new dot is everidentified that is farther away than a previous dot along aspecific direction 120579 (ie if a new dot exceeds the dashed linesin Figure 3(b)) the iterative process is reset to that directionand the process continues using that improved output dot

Once this process is complete the MATLAB boundaryfunction (The MathWorks Inc) can be used to identifyall the combinations of output values that lie along theboundary of a convex shape that circumscribes the outputdots calculated and plotted using the systemrsquos model duringthe iterative processMany systems however produce a cloudof output dots that form a concavemdashnot convexmdashregionlike the one shown in Figure 4(a) If the output dots foundusing the MATLAB boundary function are used to definethe boundary of the example in Figure 4(a) the result wouldbe the red boundary shown in Figure 4(b) This boundarywould grossly overestimate the actual systemrsquos achievableperformance space since it is convex instead of concave likethe cloud of output dots Thus to address this issue theBLOT identifies all the vectors that point from each outputdot along the existing boundary to their neighboring dotson the same boundary The magnitude ℎmax of the longestvector is identified because this vector points between thetwo output dots (eg 119885ℎ1 and 119885ℎ2 shown in Figure 4(b)) thatusually correspond to the opening of a previously unknownconcave boundaryThe BLOT then computes a new objectivefunction 119869119892(1199091 1199092) defined by

119869119892 (1199091 1199092) = (cos21205721198772 + sin2120572)

sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )2

+ ( sin21205721198772 + cos2120572)

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )2 + 2sdot sin120572 cos120572( 1

1198772 minus 1)sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )

(5)

for all the input combinations that have been previouslyevaluated for 119877 = 1 This objective function is minimizedto identify output combinations that lie within circular orelliptical regions like those shown in Figure 4(c) If the119877 variable in (5) is 1 the region is a circle If however

this variable increases it becomes an increasingly elongatedellipse as shown in Figure 4(c) The angle 120572 in (5) is definedby

120572 = arctan(1198911119885ℎ2 minus 1198911119885ℎ11198912119885ℎ1 minus 1198912119885ℎ2) (6)

where1198911119885ℎ1 and1198912119885ℎ1 from (5) and (6) are the horizontal andvertical components of the119885ℎ1 dot labeled in Figure 4(c) and1198911119885ℎ2 and 1198912119885ℎ2 are the horizontal and vertical componentsof the 119885ℎ2 dot labeled in the same figure After the BLOTcomputes the objective function of (5) for all the inputcombinations that have been previously evaluated for 119877 = 1it identifies the existing input combination that produces thesmallest objective function value This input combination isthe combination that maps to the output combination thatis closest to the center of the circle shown in Figure 3(c)If no output dots are found within the circle the inputcombination corresponding to either the output dot 119885ℎ1 or119885ℎ2 will be chosen as the closest to the center of the circleand is thus supplied to the SQP and then ALPS algorithmdescribed previously to evaluate new input combinations Forthis SQP-ALPS optimization however the objective functionin (5) is minimized for 119877 = 1 instead of maximizing theobjective function of (4) for different values of 120579 as wasdone previously Suppose for the example of Figure 4 thatwhen this optimization is performed the new group of blueoutput dots shown in Figure 4(c) is generated Since none ofthese output dots lie within the center of the circle shownin the figure the previous 119877 value in the objective functionof (5) is multiplied by a factor of 2 and the search regionis expanded to an ellipse shown in Figure 4(c) Figure 4(e)shows the elliptical contour diagram of 119869119892(1199091 1199092) for this 119877value (ie 119877 = 2) If no output dots are found within thenew ellipse the process continues to iterate by multiplyingthe previous 119877 value by the same factor of 2 to increase theelliptical search region further For the example of Figure 4(c)however there are output dots that lie within the ellipticalsearch region corresponding to 119877 value of 2 Thus the inputcombination that maps to the output dot that lies within thisregion and possesses the smallest objective function value for119877 = 2 is supplied to the SQP-ALPS optimization algorithmto identify an even better output dot that achieves an evensmaller objective function value This process will producenew output dots (eg the new set of orange dots shownin Figure 4(e)) Whether these new output dots achieve asmaller objective function value or not the output dot thatachieves the smallest objective function value is identifiedand considered part of the systemrsquos performance boundaryIt is thus redefined as either 119885ℎ1 or 119885ℎ2 In the example ofFigure 4(e) the 119885ℎ2 output dot is the one that is redefinedNote also that ℎmax is also updated This boundary learningprocess is repeated until both (i) the horizontal componentof the boundary vector with the largest magnitude (ieℎmax) is less than a set percentage of the horizontal distanceacross the full cloud of output values and (ii) the verticalcomponent of the same vector is also less than the samepercentage of the vertical distance across the same cloudThis percentage threshold is typically set between 5 and

10 Mathematical Problems in Engineering

f1(x1 x2)

f2(x

1x

2)

(a)

f1(x1 x2)

f2(x

1x

2)

ℎGR

Zℎ1

Zℎ2

(b)

Zℎ1

Zℎ2

R = 2

R = 1

f1(x1 x2)

f2(x

1x

2)

(c)

Decreasing value

Zℎ1

Zℎ2

of Jg(x1 x2)

f1(x1 x2)

f2(x

1x

2)

(d)

Zℎ1

ℎGR

Zℎ2

f1(x1 x2)

f2(x

1x

2)

(e)

f1(x1 x2)

f2(x

1x

2)

(f)

Figure 4 Generated cloud of output dots (a) convex boundary first identified (b) new objective functionminimized to identify other outputdots within circular or elliptical regions (c) elliptical contour diagram of the new objective function with an 119877 value of 2 (d) boundary isupdated with a new ℎmax value (e) process successfully identifies boundaries that are concave (f)

10 Additionally before the largest boundary vector isupdated with a new magnitude (ie ℎmax) the entire opti-mization process of this section is repeated using the previousobjective function in (4) for all 120579 values to ensure thatany new dots evaluated since using that objective functionare allowed to improve the boundaryrsquos accuracy if possible

In this way both convex and concave boundaries like theconcave boundary shown in Figure 4(f) can be identifiedthat accurately define the systemrsquos achievable performancespace

A simple case study is performed to validate the per-formance of the boundary tracing algorithm of this section

Mathematical Problems in Engineering 11

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(a)

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(b)

Figure 5 Output values of a full parameter sweep (a) boundary identified for the same example using BLOT (b)

Suppose that three normalized input parameters 1199011 1199012 and1199013 map to two output functions 1198911 and 1198912 according to1198911 (1199011 1199012 1199013) = 11990131 + 1

211990121198912 (1199011 1199012 1199013) = 11990133 + 1

21199012(7)

If the input parameters are constrained according to

101199011 + 1199012 + 101199013 le 1511990121 + 1

10011990122 + 11990123 le 1 (8)

and each parameterrsquos smallest and largest values range from0 to 1 with a resolution increment of 001 the boundary ofthe region achieved by the functions of (7) can be found byplotting the output values for every permissible input valueFigure 5(a) shows all of these output values plotted as bluedots Another way to find the desired boundary but withmuch fewer calculations is to apply the algorithm of thissection as described The results are shown in Figure 5(b)Note that the algorithm identified a boundary (Figure 5(b))that is very close to the true boundary that contains the outputvalues (Figure 5(a)) after calculating and plotting only 2612dots instead of the 745298 dots that were calculated andplotted for the full parameter sweep of Figure 5(a)

4 Iterative Model and Boundary Refinement

This section provides the iterative process used to refinethe initial neural network-system models generated usingthe theory of Section 2 as well as their correspondingperformance capability boundary identified using the theoryof Section 3 Note that a single neural network is trainedfor each desired output performance capability plotted (egone neural network is trained to predict the flexure systemrsquos

range of motion for the example of Figure 1(f) and another istrained to predict its natural frequency) The process beginsby identifying all the design instantiations that lie along thefirst boundary plotted using the initial system models Theautomated FEM approach discussed in Section 2 is then usedto calculate their desired performance capabilities and theresults are saved as new sets of data called boundary setsThecombined MAPEboundary of both sets of output performancecapabilities is calculated using (3) but with all the subscriptslabeled ldquototalrdquo replaced by the word ldquoboundaryrdquo and where119873boundary is the total number of target output values frombothsets of output performance capabilities summed together Ifthe resulting MAPEboundary is equal to or less than 10 theneural network models pertaining to each output perfor-mance capability are used to generate the final boundary Ifhowever thisMAPEboundary is greater than 10 80 of the newdata is randomly added to the former training set of datadescribed in Section 2 for each of the corresponding neuralnetwork models The remaining 20 of the boundary dataset is added to the former testing set of data also describedin Section 2 The entire process of Sections 2 through 4 isthen repeated as new boundary data is added to the fullbody of previously acquired FEMdata until theMAPEboundaryis equal to or less than 10 Once this condition is satisfiedthe final neural network models used to predict the outputperformance capabilities are used to plot the final boundaryof the systemrsquos performance capabilities using the theory inSection 3 In this way all the points that constitute the finalperformance boundary plotted using BLOT for any flexuresystem are guaranteed to be accurate within an average errorof 10 or less

5 Flexure System Case Study Using the BLOT

This section uses the FACT-synthesized flexure system topol-ogy of Figure 1(f) as a detailed case study to demonstratethe capabilities of the BLOT Suppose that the smallest and

12 Mathematical Problems in Engineering

T = 10 mmL = 995 mmW = 100 mm T = 25 mm

L = 15 mmW = 100 mm

10minus1

10minus2

10minus3

10minus4

10minus5

10minus6

Tran

slatio

nal D

OF

Nor

mal

ized

rang

e of m

otio

n

100 10210minus4 10minus210minus6

Translational DOF natural frequency (kHz)

dradic

W2+L2

(a)

T = 25 mmL = 15 mmW = 100 mm

102

100

10minus2

10minus4

10minus6

Rota

tiona

l DO

F

100 10210minus4 10minus210minus6

Rotational DOF natural frequency (kHz)

rang

e of m

otio

(deg

rees

)

T = 10 mmL = 995 mmW = 100 mm

(b)

Figure 6 Boundaries of the topologyrsquos achievable ranges of motion and natural frequencies corresponding to the translational (a) androtational (b) DOF generated by the BLOT

largest values for each of the case studyrsquos three independentparameters (ie 119882 119879 and 119871) its resolution increment andthe properties of its constituent material are all set to bethe same values as those given in Section 1 Using the 119882 minus2119879 gt 0 constraint function provided earlier the BLOT canbe used to train various neural networks to create modelsthat map any desired geometric parameter values within thedesign space to design instantiations that achieve desiredperformance capabilities The performance capabilities ofinterest to this case study included (i) the topologyrsquos rangeof motion along its translational DOF direction as shownin Figure 1(d) (ii) the natural frequency of the topologythat corresponds with the mode shape of its translationalDOF (iii) the topologyrsquos angular range of motion aboutits rotational DOF as shown in Figure 1(e) and (iv) thenatural frequency of the topology that corresponds withthe mode shape of its rotational DOF The PYTHON scriptthat automates the collection of all the target data was setto ground the entire top surface of the fixed body shownwith thatched lines in Figure 1(f) on the side where the fourwire elements are attached The range of motion of eachdesign instantiation along the direction of the translationalDOF was calculated using FEA simulations by applying ashear force on the entire bottom face of the systemrsquos stageon the side where the four wire elements are attached Themagnitude of this shear force was gradually increased untilany portion within the system began to yield according toMises yield criterion The largest amount the stage translatedbefore reaching this yield criterion was defined to be therange ofmotion119889 of the corresponding design instantiationThis range of motion was normalized by dividing it byits characteristic length radic1198712 +1198822 The angular range ofmotion of each design instantiation about the rotationalDOF was also calculated using FEA simulations by applyingtwo opposing shear forces on either side of the systemrsquosstage to create a pure moment along the direction of theaxes of the wire elements The magnitude of this momentwas gradually increased until any portion within the systembegan to yield according to Mises yield criterion The largestamount the stage rotated before reaching this yield criterionwas defined to be the angular range of motion Φ of the

corresponding design instantiation The natural frequencies120596119899 corresponding to both of the translational and rotationalDOF mode shapes for each design instantiation were alsocalculated using finite element modal analysis simulationsA unique neural network with a single neuron output layerwas trained for each of the four performance capabilities ofinterest

Once the BLOT successfully created four accuratemodelsof the flexure system topology of Figure 1(f) by training fourneural networks to each map arbitrary design instantiationsof the topology to any of the four desired performancecapabilities of interest the BLOT then plotted final bound-aries that circumscribe the achievable combinations of theseperformance capabilities The boundary corresponding tothe normalized range of motion and natural frequency ofthe mode shape along the direction of the translationalDOF is show in Figure 6(a) Note that this was the sameboundary provided in Figure 1(g) but the plot in Figure 6(a)includes the colored output dots used to identify the finalboundary The geometric parameters for two optimizeddesign instantiations that span between the optimal portionof the boundary are provided in Figures 1(g) and 6(a)Other optimal design instantiations can be selected fromthis portion of the boundary to achieve different maximumcombinations of the performance capabilities The boundarycorresponding to the angular range of motion and naturalfrequency of the mode shape about the rotational DOF isprovided in Figure 6(b) Note that the two optimal designinstantiations shown as large black dots within the plots ofFigures 1(g) and 6(a) are also plotted in their correspondinglocations within the boundary provided in Figure 6(b)Although these design instantiations are not the two optimaldesign instantiations within the plot of Figure 6(b) they areclose to the optimal instantiations which are shown as largewhite dots in Figure 6(b) Finally it is worth noting thatthe plots of Figure 6 are presented using a log-log scaleSince such plots can never achieve zero or negative valuesthe BLOT establishes a cutoff threshold when identifying theboundary tomore rapidly and clearly define a practical regionof achievable performance capabilitiesThis threshold was setto 10minus6 for the plots of Figure 6

Mathematical Problems in Engineering 13

6 Conclusions and Future Work

This paper introduces an optimization tool called the Bound-ary Learning Optimization Tool (BLOT) which utilizes anautomated method for training neural networks to createaccurate models of general flexure system topologies syn-thesized using the FACT approach The BLOT uses thesemodels to plot the boundaries of regions containing thecombinations of desired performance capabilities that areachievable by different design instantiations of the FACT-synthesized topologies Both the neural network training andboundary identification portions of the BLOT are iteratedusing additional boundary data until the final boundary isguaranteed to be accurate within a value specified by theuser (eg less than 10 average error) A flexure system isprovided and optimized as a case study

TheBLOTwill be used in future works to generate Ashby-like material plots but for different architectured materialtopologies instead of for natural materials to compare theachievable properties of such microarchitectured structurescomposed of the same material These plots will enableengineers to identify trends among architectured materialsthat result from microstructure instead of composition

Disclosure

A preliminary version of this paperrsquos theory was first pre-sented at ASMErsquos IDETC as paper no DETC2017-67465

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Authorsrsquo Contributions

Ali Hatamizadeh and Yuanping Song are co-first authors astheir contributions to this paper are equal

Acknowledgments

This work was supported by the Air Force Office of ScienceResearch under Award no FA9550-15-1-0321 Program officerByung ldquoLesrdquo Lee is gratefully acknowledged This workused computational and storage services associated withthe Hoffman2 Shared Cluster provided by UCLA Institutefor Digital Research and Educationrsquos Research TechnologyGroup

References

[1] J B Hopkins Design of Parallel Flexure Systems via Freedomand Constraint Topologies (FACT) Massachusetts Institute ofTechnology 2007

[2] J B HopkinsDesign of Flexure-Based Motion Stages for Mecha-tronic Systems via Freedom Actuation and Constraint Topologies(FACT) Massachusetts Institute of Technology 2010

[3] J B Hopkins ldquoDesigning hybrid flexure systems and elementsusing freedom and constraint topologiesrdquoMechanical Sciencesvol 4 no 2 pp 319ndash331 2013

[4] Y LeCun Y Bengio and G Hinton ldquoDeep learningrdquo Naturevol 521 no 7553 pp 436ndash444 2015

[5] J B Hopkins K J Lange and C M Spadaccini ldquoDesigningmicrostructural architectures with thermally actuated prop-erties using freedom actuation and constraint topologiesrdquoJournal of Mechanical Design vol 135 no 6 Article ID 0610042013

[6] M F Ashby Materials Selection in Mechanical Design Butter-worth-Heinemann 2005

[7] X P Cheng and R V Patel ldquoNeural network based trackingcontrol of a flexible macro-micro manipulator systemrdquo NeuralNetworks vol 16 no 2 pp 271ndash286 2003

[8] W He Y Chen and Z Yin ldquoAdaptive neural network controlof an uncertain robot with full-state constraintsrdquo IEEE Transac-tions on Cybernetics vol 46 no 3 pp 620ndash629 2016

[9] H Kobayashi and R Ozawa ldquoAdaptive neural network controlof tendon-driven mechanisms with elastic tendonsrdquo Automat-ica vol 39 no 9 pp 1509ndash1519 2003

[10] J Takeuchi and Y Kosugi ldquoNeural network representation offinite element methodrdquo Neural Networks vol 7 no 2 pp 389ndash395 1994

[11] R I Levin and N A J Lieven ldquoDynamic finite elementmodel updating using neural networksrdquo Journal of Sound andVibration vol 210 no 5 pp 593ndash607 1998

[12] E Boillat S Kolossov R Glardon M Loher D Saladinand G Levy ldquoFinite element and neural network models forprocess optimization in selective laser sinteringrdquo Proceedingsof the Institution of Mechanical Engineers Part B Journal ofEngineering Manufacture vol 218 no 6 pp 607ndash614 2004

[13] M Lefik ldquoHybrid finite element-artificial neural networkmodel for composite materialsrdquo Journal of Theoretical andApplied Mechanics vol 42 pp 539ndash563 2004

[14] Y M A Hashash S Jung and J Ghaboussi ldquoNumerical imple-mentation of a neural network based material model in finiteelement analysisrdquo International Journal for Numerical Methodsin Engineering vol 59 no 7 pp 989ndash1005 2004

[15] L Manevitz M Yousef and D Givoli ldquoFinite-element meshgeneration using self-organizing neural networksrdquo Computer-Aided Civil and Infrastructure Engineering vol 12 no 4 pp233ndash250 1997

[16] Z Li andD Cao ldquoConceptual Design of CompliantMechanismBased on Port Ontologyrdquo Advances in Mechanical Engineeringvol 5 p 401492 2015

[17] Y Qin and Z Feng ldquoStructural dynamicmodification of flexurehinge structure based on artificial neural networkrdquo AviationPrecision Manufacturing Technology vol 5 no 11 2006

[18] F G Kong Q Li and W J Zhang ldquoAn artificial neuralnetwork approach tomechanism kinematic chain isomorphismidentificationrdquo Mechanism and Machine Theory vol 34 no 2pp 271ndash283 1999

[19] E K Burke andGKendall Eds SearchMethodologies SpringerUS Boston MA USA 2005

[20] Y V Haimes L S Lasdon and D A Wismer ldquoOn a bicriterionformulation of the problems of integrated system identificationand system optimizationrdquo IEEE Transactions on Systems Manand Cybernetics vol SMC-1 pp 296-297 1971

[21] P L Yu ldquoA class of solutions for group decision problemsrdquoManagement Science vol 19 no 8 pp 936ndash946 1973

14 Mathematical Problems in Engineering

[22] A P Wierzbicki ldquoOn the completeness and constructiveness ofparametric characterizations to vector optimization problemsrdquoOR Spectrum vol 8 no 2 pp 73ndash87 1986

[23] A P Wierzbicki ldquoA mathematical basis for satisficing decisionmakingrdquo in Organizations Multiple Agents with Multiple Cri-teria vol 190 of Lecture Notes in Economics and MathematicalSystems pp 465ndash486 Springer Berlin Heidelberg Berlin Hei-delberg 1981

[24] I Das and J E Dennis ldquoNormal-boundary intersection a newmethod for generating the Pareto surface in nonlinear multi-criteria optimization problemsrdquo SIAM Journal on Optimizationvol 8 no 3 pp 631ndash657 1998

[25] D E Goldberg Genetic Algorithms in Search Optimizationand Machine Learning Addison-Wesley Longman PublishingBoston MA USA 1st edition 1989

[26] ldquoExceptional papermdashlexicographic orders utilities anddecisionrules a surveyrdquo Management Science vol 20 pp 1442ndash14711974

[27] A Charnes and W W Cooper ldquoGoal programming and mul-tiple objective optimizationsrdquo European Journal of OperationalResearch vol 1 no 1 pp 39ndash54 1977

[28] K A de Jong Evolutionary Computation a Unified ApproachMIT Press Cambridge Mass USA 2006

[29] N Padhye P Bhardawaj and K Deb ldquoImproving differentialevolution through a unified approachrdquo Journal of Global Opti-mization vol 55 no 4 pp 771ndash799 2013

[30] O Sigmund ldquoOn the design of compliant mechanisms usingtopology optimizationrdquo Mechanics of Structures and Machinesvol 25 no 4 pp 493ndash524 1997

[31] M P Bendsoslashe and O Sigmund Topology Optimization TheoryMethod and Application Springer Berlin Heidelberg BerlinGermany 2003

[32] Z Luo L Chen J Yang Y Zhang and K Abdel-MalekldquoCompliant mechanism design using multi-objective topologyoptimization scheme of continuum structuresrdquo Structural andMultidisciplinary Optimization vol 30 no 2 pp 142ndash154 2005

[33] L Cao A T Dolovich A L Schwab J L Herder and WZhang ldquoToward a unified design approach for both compliantmechanisms and rigid-body mechanisms module optimiza-tionrdquo Journal of Mechanical Design vol 137 no 12 Article ID122301 2015

[34] H B Demuth M H Beale O Jess De andM T HaganNeuralNetwork Design 2nd edition 2014

[35] D E Rumelhart G E Hinton and R J Williams ldquoLearningrepresentations by back-propagating errorsrdquo Nature vol 323no 6088 pp 533ndash536 1986

[36] R Hecht-Nielsen ldquoTheory of the backpropagation neural net-workrdquo in Proceedings of the International Joint Conference onNeural Networks (IJCNN rsquo89) vol 1 pp 593ndash605 WashingtonDC USA June 1989

[37] FDanForesee andMTHagan ldquoGauss-Newton approximationto Bayesian learningrdquo in Proceedings of the International Con-ference on Neural Networks (IJCNN rsquo97) vol 3 pp 1930ndash1935IEEE Houston Tex USA June 1997

[38] L E Scales Introduction to Non-Linear Optimization Macmil-lan Education UK London 1985

[39] M H Beale M T Hagan and H B Demuth Neural NetworkToolbox119879119872Userrsquos Guide forMATLABR2012a NatickMA USA2012

[40] K Levenberg ldquoA method for the solution of certain non-linearproblems in least squaresrdquo Quarterly of Applied Mathematicsvol 2 pp 164ndash168 1944

[41] D Marquardt ldquoAn algorithm for least-squares estimation ofnonlinear parametersrdquo SIAM Journal on Applied Mathematicsvol 11 no 2 pp 431ndash441 1963

[42] J S Armstrong and F Collopy ldquoErrormeasures for generalizingabout forecasting methods empirical comparisonsrdquo Interna-tional Journal of Forecasting vol 8 no 1 pp 69ndash80 1992

[43] C Audet and J Dennis ldquoAnalysis of generalized pattern search-esrdquo SIAM Journal on Optimization vol 13 no 3 pp 889ndash9032002

[44] P E Gill W Murray andM HWright Practical OptimizationAcademic Press 1981

[45] R Fletcher Practical Methods of Optimization John Wiley ampSons New York NY USA 2nd edition 2000

[46] P E Gill W Murray and M H Wright Numerical LinearAlgebra and Optimization Addison-Wesley 1991

[47] A R Conn N I Gould and P Toint ldquoA globally convergentaugmented Lagrangian algorithm for optimization with generalconstraints and simple boundsrdquo SIAM Journal on NumericalAnalysis vol 28 no 2 pp 545ndash572 1991

[48] A R Conn N Gould and P L Toint ldquoA globally convergentLagrangian barrier algorithm for optimization with generalinequality constraints and simple boundsrdquo Mathematics ofComputation vol 66 no 217 pp 261ndash288 S1ndashS11 1997

[49] T G Kolda R M Lewis and V J Torczon ldquoA generating setdirect search augmented Lagrangian algorithm for optimizationwith a combination of general and linear constraintsrdquo Tech RepSAND2006-5315 Sandia National Laboratories USA 2006

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 3: Optimizing the Geometry of Flexure System Topologies Using the …web.cs.ucla.edu/~ahatamiz/BLOT.pdf · 2019-10-24 · synthesized topology using dierent geometric parameter values

Mathematical Problems in Engineering 3

(a)

Freedom space Constraint space

(b)

(c) (d) (e)

WW

T L

W2

W2

(f)

T = 10 mmL = 995 mmW = 100 mm

T = 25 mmL = 15 mmW = 100 mm

10minus1

10minus2

10minus3

10minus4

10minus5

10minus6

Tran

slatio

nal D

OF

Nor

mal

ized

rang

e of m

otio

ndradic

W2+L2

T = 25 mmL = 15 mmW = 100 mm

100 10210minus4 10minus210minus6

Translational DOF natural frequency (kHz)

Optimal designinstantiations

(g)

Figure 1 Desired DOFs (a) freedom and constraint spaces (b) synthesized topology (c) validated DOFs (d) and (e) topologyrsquos geometricparameters (f) boundary of the topologyrsquos achievable ranges of motion and natural frequencies corresponding to the translational DOFgenerated by the BLOT (g)

analytical models of the parameterized topologies if suchmodels are available Closed-form analytical models arehowever difficult to construct and their assumptions usuallyonly produce valid results for specific topologies or for limitedranges of geometric parameters that define other topologiesThus this paper focuses on the theory necessary to trainneural networks for creating models based on the results ofnumerically generated data because this approach is moregeneral than closed-form analytical approaches Note alsothat although the BLOT is introduced in this paper as a toolfor optimizing the geometry of flexure system topologies itcould also be applied to a host of other diverse applications

Prior to this paper artificial neural networks have beenused extensively tomodel and control a variety of mechanicalsystems including compliant mechanisms robots manip-ulators and rigid linkages Cheng and Patel [7] used aneural network-based strategy for achieving stable trackingcontrol of a flexible macro-micro manipulator He et al[8] studied the tracking control of an uncertain 119899-linkrobot with full-state constraints Kobayashi and Ozawa [9]presented an adaptive neural network control for tendon-driven robotic mechanisms with elastic tendons Takeuchi

and Kosugi [10] proposed a finite element method based onapplications of neural networks for boundary value problemsLevin and Lieven [11] presented a neural network-basedapproach for dynamic finite element model updating Boillatet al [12] combined finite element and neural networksin order to find the optimal parameters used in a selec-tive laser sintering process Lefik [13] studied compositematerials using a hybrid finite element and artificial neuralnetwork model Hashash et al [14] proposed the numer-ical implementation of a neural network-based materialmodel in finite element analysis Manevitz et al [15] pre-sented a finite element mesh-generation approach using self-organizing neural networks Li and Cao [16] utilized neuralnetworks to select two dimensional compliant mechanismdesign schemes Qin and Feng [17] modified the structuralparameters of flexure hinges by employing trained neuralnetworks Kong et al [18] presented a method for identifyingmechanism kinematic chain isomorphism by applying neuralnetworks

Although few researchers have directly attempted system-performance boundary identification its goal is similar tothe goal of multiobjective optimization which has been

4 Mathematical Problems in Engineering

studied extensively A multiobjective optimization problem(MOOP) deals with more than one objective function andaims at finding a set of solutions that optimizes all theobjective functions simultaneously Several methods havebeen proposed to solve the local or global Pareto-optimalsolution set [19] One of the most widely used methods is theweighting method [19] Haimes et al [20] introduced the 120576-Constraintmethod in 1971 andYu [21] introduced themethodof global criterion in 1973 Wierzbicki [22 23] introducedthe achievement scalarizing function approach in 1981 Othersolving methods include normal boundary intersection [24]evolutionary algorithm [25] lexicographic ordering [26]and goal programming [27] More recently MOOP methodshave focused on stochastic algorithms including a variety ofevolutionary algorithms [28 29] Such algorithms generatemore reliable global Pareto-optimal solution sets but requiresignificantly more function evaluations than deterministicalgorithms and are thus generally better suited for complexblack-box-model optimizations The boundary identifica-tion approach proposed in this paper has in part beenadapted from various deterministic multiobjective optimiza-tion methods such that the complete continuous boundary(including concave portions) that circumscribe the perfor-mance capabilities achieved by general flexure topologies canbe identified and refined with a desired accuracy Thereforea topologyrsquos full design space can be identified using theBLOT

By combining the utility of the BLOT with the currentFACT approach a new advantageous approach emergeswhich is unique from other existing design-optimizationapproaches Whereas other approaches (eg topology opti-mization [30ndash32] or module optimization [33]) simultane-ously combine the tasks of optimizing a designrsquos topologywith its geometry the proposed approach decouples thosetasks in such a way that the time-consuming computationsare reserved solely for the simpler task of geometry optimiza-tion only This optimization occurs after the FACT approachhas directly generated and finalized the most promisingtopologies without performing expensive iterative calcula-tionsThus by decoupling the tasks of topology synthesis andgeometry optimization in this way the speed that optimaldesigns can be generated from start to finish as well as thelikelihood that the global-optimum solutions are identifiedincreases

The specific contributions of this paper include the fol-lowing (i) a new fully automated tool is created and demon-strated (ie BLOT) that identifies the rigorous performancecapability boundaries achieved by flexure topologies gener-ated via FACT (ii) a new algorithm is proposed within thistool for optimizing and iteratively training the architecturesof artificial neural networks using data generated from spe-cially selected numerical simulations of design instantiationsalong previously generated boundaries to create accuratemodels of general flexure topologies (iii) a new approachis also introduced within the BLOT that combines existingmultiobjective optimization methods to use these modelsfor iteratively refining the convex and concave portions of ageneral topologyrsquos performance capability boundary with anaccuracy determined by the user

sum a(n)

sum a(n)

sum

g(n)

Input Hiddenlayer 1

Hiddenlayer 2

Outputlayer 3

Neuron

a(n)

a(n)

a(n)

a(n)

a(n)

w111

w112

w131

w312w113

x1

x2

x3

b11

b21

b31

b12

b22

b32

b42

b13

f1sum

sum

sum

sum

sum

Figure 2 Neural network example with three inputs one outputand two hidden layers of neurons

2 Model Generation via Neural Networks

This section summarizes how the BLOT generates modelsof FACT-synthesized topologies by training artificial neuralnetworks using numerical simulations performed on variousgeometric instantiations of these topologies Artificial neuralnetworks like the kind shown in Figure 2 consist of severalprocessing layers which can be tuned to successfully mapany inputs 119909119894 to any corresponding outputs 119891119895 when givena sufficient number of diversified input and correspondingtarget output values to learn from For the application ofthis paper inputs are the geometric parameters that definea flexure systemrsquos topology (eg 1199091 = 119882 1199092 = 119879 and1199093 = 119871 from the topology of Figure 1(f)) and outputs arethe performance capabilities (eg range of motion or naturalfrequency) achieved by the design instantiations that aredefined by these corresponding input parametersThe knowninput and target output values are obtained using finiteelement analysis (FEA) on sample design instantiations withgeometric parameters that span the topologyrsquos full designspace from their smallest achievable feature sizes to theirlargest geometrically compatible values The theory of thissection provides a systematic way to train neural networks forcreating sufficiently accurate flexure system topology modelsusing a minimal number of known input and target outputvalues sominimal computational effort and time are requiredby the BLOT

Each layer within a neural network consists of inter-connected computational nodes called neurons as labeledin Figure 2 The lines that interconnect the neurons areassociated with scalar weight values 119908119890119905119897 where 119890 is asubscript that corresponds to the labeled neuron number(or input) from which the line extends 119905 is a subscript thatcorresponds to the labeled neuron number at which the lineterminates and 119897 is a subscript that corresponds to the labeledlayer number in which that neuron belongs Other linesenter the neurons with associated scalar bias values 119887119905119897 thatutilize similar subscript conventions Each neuron within thenetworkrsquos hidden layers (ie the layers in between the input

Mathematical Problems in Engineering 5

values and the output layer) utilizes an activation function[4] 119886(119899) In this paper we employ the hyperbolic tangentsigmoid function [34] defined by

119886 (119899) = 119890119899 minus 119890minus119899119890119899 + 119890minus119899 (1)

The output from each activation function passes from onehidden layer of neurons to the next until the output layeris reached where this paper employs the linear activationfunction [34] 119892(119899) = 119899 to produce the final output 119891119895This process is called forward propagation because of thedirection in which the mathematics propagates or flows Todemonstrate how the mathematics flows within the networkdiagramed in Figure 2 consider the neuron highlighted bythe dotted red box The 119899 value that is plugged into thefunction of (1) corresponding to this highlighted neuron is

119899 = (1199091 sdot 119908111) + (1199092 sdot 119908211) + (1199093 sdot 119908311) + 11988711 (2)

Once a sufficient number of known input and targetoutput values have been numerically calculated variousmethods can be employed to use these values to iterativelytune the weights 119908119890119905119897 and biases 119887119905119897 within a neuralnetwork such that it can link any set of input values withinthe design space to accurate output values (ie the networkcan be trained to create an accurate predictive model)A popular way to tune the weights and biases is calledback propagation [35 36] The input values are normalizedand fed into the network using initial-guess weights andbiases The resulting outputs are compared against the targetoutputs that are known to be correct from a priori numericalsimulation A gradient vector of the resulting error withrespect to each weight and bias is then used to tune thesevalues in the opposite direction of the gradient vector Byrepeating this process numerous times the network canbe trained to accurately predict the correct output valuesA variation of the back propagation training method (ieBayesian Regularization [37 38]) was used to train the neuralnetworks that model the flexure system topologies of thispaper

The specific iterative process used in the BLOT to gener-ate accurate models of general FACT-synthesized topologiesis as follows A user provides a MATLAB script with theindependent geometric parameters that define the desiredflexure topology The smallest and largest values for each ofthese parameters are also provided to the script to specifythe full design space over which the resulting model willaccurately predict The script then begins by generating allthe possible design instantiations that result from applyingevery combination of these smallest and largest values withthree other evenly spaced values in between them (eg 119879min(3119879min + 119879max)4 (119879min + 119879max)2 (119879min + 3119879max)4 and119879max) for every independent parameter to the topologyrsquosgeometry Each resulting design instantiation is checked forgeometric compatibility against various geometric constraintfunctions which are specific to their topologyThe geometricconstraint function imposed on the design instantiationsof the example topology labeled in Figure 1(f) is 119882 minus2119879 gt 0 Then the MATLAB script passes the resulting

design instantiations that are geometrically compatible to aPYTHON script that automatically creates computer-aided-design (CAD) models of these instantiations defines theirconstitutive materials meshes their models and appliesthe desired boundary and loading conditions This scriptthen performs the FEA simulation in parallel batches usingABAQUS to produce the target output values that correspondwith each design instantiation defined by the given inputvalues Thus large amounts of data can be acquired withinthe design space of general flexure topologies using theautomated scripts

The numerically generated data is then randomly dividedamong two different sets 80 of the data is assigned to atraining set and the remaining 20 is assigned to a testing setThe training set of data is used to train a neural network thatpossesses an initial-guess architecture with two hidden layersand an output layer with only one neuron The number ofneurons in the first hidden layer is initially set to 20 neuronsand the number of neurons in the second hidden layer isinitially set to zero The modified mean squared error [39]119864training is calculated for the training set of data using thisinitial-guess network architecture with initial-guess weightsand biasesTheBayesianRegularization algorithm then trainsthe architecture by updating the weights and biases withinthe network using the gradient of 119864training for each iteration asdescribed previously until one of the following five conditionsis satisfied(1) Training is stopped once an excessively large numberof iterations have occurred For this paper 1000 iterationswere used as the cutoff(2) Training is stopped once an excessive amount of timehas lapsed For this paper the cutoff time was set to 10 hours(3) Training is stopped once the modified mean squarederror of the training set of data 119864training reaches a smallenough number For this paper the number was set to 10minus12(4) Training is stopped once the gradient of the modifiedmean squared error of the training set of data 119864trainingbecomes very small For this paper 10minus7 is used as the cutoff(5) Training is stopped once the damping factor [40 41]used within the Bayesian Regularization algorithm exceeds acertain value For this paper the damping factor cutoff wasset to 1010

After training has stopped the mean absolute percentageerror [42] MAPEtotal for the total set of training and testingdata combined is calculated using

MAPEtotal = 100119873total

119873totalsum119896=1

100381610038161003816100381610038161003816100381610038161003816119876119896total minus 119867119896total

119876119896total100381610038161003816100381610038161003816100381610038161003816 (3)

where 119873total is the total number of target output values fromboth the training and testing sets combined 119876119896total are thetarget output values from both the training and testing setsand119867119896total are all the corresponding predicted output valuescalculated using the current trained network In generalthe smaller a trained networkrsquos MAPEtotal is the better thetrained neural network can model the behavior of the flexuresystem topology

6 Mathematical Problems in Engineering

Thus the MAPEtotal of the trained initial-guess networkarchitecture (ie 20 neurons in the first hidden layer and0 neurons in the second hidden layer) is used as the start-ing point for optimizing the networkrsquos architecture Patternsearch [43] which is described in Section 3 in detail isused to optimize the number of neurons in the networkrsquosarchitecture in two different phases In the first phase patternsearch is used to optimize an architecture with no neuronsin the second hidden layer For this phase the lower boundof neurons in the first hidden layer is set to 5 and the upperbound is set to 40 The input tolerance (The MathWorksInc) is set to 1 the initial mesh size (The MathWorks Inc)is set to 8 and the expansion factor (The MathWorks Inc)is set to 2 The cost function that is minimized for thisoptimization is MAPEtotal defined in (3) Once the besttrained network architecture is found using this first hiddenlayer optimization (ie the trained network architecture withthe smallest MAPEtotal) the mean absolute percentage errorof the training MAPEtraining and testing MAPEtesting datasets is each calculated using (3) for this best trained networkarchitecture but with the subscripts currently labeled ldquototalrdquoreplaced by the words ldquotrainingrdquo and ldquotestingrdquo respectively Ifboth of these values (ie MAPEtraining and MAPEtesting) areequal to or less than 35 the neural network is used as theinitial model of the FACT-synthesized flexure topology Ifhowever eitherMAPEtraining orMAPEtesting is greater than 35the second phase of the network architecture optimization isinitiated In the second phase pattern search is again usedto optimize a network architecture but with 40 neurons inthe first hidden layer and an initial-guess of 4 neurons inthe second hidden layer For this phase the lower bound ofneurons in the second hidden layer is set to 1 and the upperbound is set to 15The input tolerance is again set to 1 and theexpansion factor is again set to 2The best number of neuronsin the second hidden layer of the network with 40 neuronsin the first hidden layer is identified by minimizing thesame cost function in (3) MAPEtotal Once the best trainednetwork architecture is found using this second hidden layeroptimization the mean absolute percentage error of thetraining MAPEtraining and testing MAPEtesting data setsis each calculated using (3) for this best trained networkarchitecture but with the subscripts currently labeled ldquototalrdquoreplaced by the words ldquotrainingrdquo and ldquotestingrdquo respectively Ifboth of these values (ie MAPEtraining and MAPEtesting) areequal to or less than 35 the neural network is used as theinitial model of the FACT-synthesized flexure topology Ifhowever eitherMAPEtraining orMAPEtesting is greater than 35the trained network architecture with the lowest MAPEtotalfound from the network optimization of both the first andsecond phase is used as the initial model of the FACT-synthesized flexure topology

Thus using minimal computation an initial model ofgeneral FACT-synthesized flexure system topologies can beidentified Note thatmany of the hard numbers chosen in thissection were selected for rapidly generating accurate modelsof flexure system topologies with less than sim10 independentgeometric parametersThe numbers in this section may needto be adjusted for scenarios with larger numbers of inputparameters

3 Plotting Performance Boundaries

This section discusses the portion of the BLOT that utilizesthe models of flexure system topologies generated fromSection 2 to plot their performance capability boundariesRecall that the geometric parameters of a flexure systemtopology (eg 119882 119879 and 119871 for the topology of Figure 1(f))are its modelrsquos inputs 119909119894 and the performance capabilities(eg range of motion and natural frequency for the exampleof Figure 1(f)) achieved by the design instantiations that aredefined by these corresponding input parameters are themodelrsquos outputs 119891119895 For this section a theoretical exampleof a system with only two inputs 1199091 and 1199092 will be used toconceptually explain the algorithm that plots the boundarythat circumscribes the systemrsquos full design space for two ofthe systemrsquos achievable outputs 1198911(1199091 1199092) and 1198912(1199091 1199092)

The boundary-plotting algorithm first requires the small-est and largest values of each input parameter 119909119894min and119909119894max respectively as well as resolution increment valuesΔ119909119894 for each input parameter Constraint functions shouldalso be provided to define what combination of input valuesare permissible (eg 119882 minus 2119879 gt 0 for the example ofFigure 1(f)) For the theoretical example of this section theconstraint function is shown as the red spline boundary linein Figure 3(a)

The algorithm begins by supplying a randomly selectedcombination of permissible inputs shown as the blue dotlabeled 11987411 in Figure 3(a) to the Sequential QuadraticProgramming (SQP) [44 45] optimization algorithm Thisalgorithm first identifies a set of other permissible inputcombinations that result from adding and subtracting theresolution increment of each input Δ119909119894 to and from the firstrandomly selected combination of inputs along each inputrsquosaxis For the example of Figure 3(a) this first set of inputcombinations are shown as the four blue dots immediatelysurrounding the blue dot labeled 11987411 Note that althoughΔ1199091 is shown as being equal to Δ1199092 in the example theseresolution increments do not have to be equal for otherscenarios The systemrsquos model is then used to map all of thecombinations of these inputs to their corresponding com-binations of outputs which are represented by the five bluedots shown in Figure 3(b) Note that the original input dot11987411 maps to the output dot 11988511 The SQP algorithm thenapproximates the gradient (ie first derivatives) and Hessianmatrix (ie the symmetric matrix of second derivatives) ofthe objective function defined by

119869 (1199091 1199092) = cos (120579) 1198912 (1199091 1199092) + sin (120579) 1198911 (1199091 1199092) (4)

using the input and output combinations (ie the adjacentblue dots in Figures 3(a) and 3(b)) where 120579 in (4) is initiallyset to 0 so that the largest 1198912 output can be pursued firstThis gradient and Hessian matrix are then used to constructa Quadratic Programming (QP) subproblem [46] whichis solved to determine another combination of inputs thatwill map to combinations of outputs that produce a largerobjective function value In the example of Figure 3 supposethe new combination of inputs determined is shown as thered dot labeled 11987412 in Figure 3(a) Note that this dotrsquoscorresponding combination of outputs which is shown as the

Mathematical Problems in Engineering 7

Constraintfunction

x1

x2

O13

O12

O21

O11

O14

r2

Δx2

(a)

Z14

Z13

Z12

Z11

Z21

= 0

= Δ

f1(x1 x2)

f2(x

1x

2)

(b)

Constraintfunction

x1

x2

O22

O21

(c)

Z21 Z22

= 0

= Δ

f1(x1 x2)

f2(x

1x

2)

(d)

Figure 3 Progression of the SQP and then ALPS optimization algorithms for 120579 = 0 initialized in the objective function in the input space(a) and in the corresponding output space (b) continued progression of the same optimization algorithms for 120579 = Δ120579 incremented in theobjective function in the same input space (c) and in the same output space (d)

red dot labeled 11988512 in Figure 3(b) possesses 1198912 value thatis larger than any of the other previous blue dots shown inthe same figure The SQP algorithm then repeats this processby finding another set of permissible input combinations thatresult from adding and subtracting the resolution incrementof each inputΔ119909119894 to and from the new combination of inputs(ie 11987412 from Figure 3(a)) along each inputrsquos axis For theexample of Figure 3(a) this new set of input combinationsare shown as the four red dots immediately surroundingthe red dot labeled 11987412 Note that each of the five reddots in Figure 3(a) maps to a corresponding red dot inFigure 3(b)Thus the SQP algorithm rapidly finds an efficientpath toward a local maximum of the objective function byiteratively stepping from one cluster of dots to the next inthis manner The SQP algorithm terminates when either (i)the step distance from one central dot to the next (eg thedistance between11987411 and11987412 in Figure 3(a)) is smaller thanthe prescribed resolution of the input parameters Δ119909119894 or (ii)the process fails to generate the next step which typically

occurs because the first or second derivatives of the objectivefunction cannot be calculated The latter reason typicallyoccurs when the algorithm encounters discontinuities withinthe objective function

After the SQP algorithm terminates the boundary-plotting algorithm of this paper continues the optimizationprocess by supplying the combination of permissible inputsthat map to the combination of outputs that produce thelargest objective function value identified by the SQP algo-rithm to the Augmented Lagrangian Pattern Search (ALPS)[47ndash49] optimization algorithm For the example of Fig-ure 3(a) suppose the SQP process was unable to step beyondthe cluster of dots surrounding 11987412 and thus terminatedat that location The combination of inputs that would besupplied to the ALPS algorithm would be the red dot labeled11987413 in Figure 3(a) since this combination of inputs mapsto the combination of outputs that achieve the largest 1198912value found using the SQP algorithm This combination ofoutputs is shown as the red dot labeled 11988513 in Figure 3(b)

8 Mathematical Problems in Engineering

The ALPS algorithm first identifies a set of other permissibleinput combinations that result from adding and subtractingan initial mesh size 119903119894 to and from the combination of inputssupplied to the algorithm along each inputrsquos axis The initialmesh size labeled 1199032 in Figure 3(a) is typically set to 20of the range of its corresponding input parameter (ie 119903119894 =02|119909119894max minus 119909119894min|) For the example of Figure 3(a) the firstset of ALPS-generated input combinations are shown as thefour purple dots surrounding the red dot labeled 11987413 Notethat although 1199031 is shown as being equal to 1199032 in the examplethese mesh sizes are not typically equal for other scenariosThe systemrsquos model is then used to map the combinations ofthese inputs to their corresponding combinations of outputswhich are represented by the four purple dots shown inFigure 3(b)TheALPS algorithm then identifies if any of thesecombinations of inputs map to a combination of outputs thatproduce an objective function value that is larger than anyproduced previously in the optimization process Supposefor instance that the input combination of the example inFigure 3(a) labeled 11987414 maps to the output combinationlabeled11988514 in Figure 3(b) which achieves the largest1198912 valuepreviously identified The ALPS algorithm would then stepto the dot representing that input combination (eg 11987414)The algorithm would then identify a set of other permissibleinput combinations that result from adding and subtractingthe previous mesh size (eg 119903119894 in this case) multiplied byan expansion factor to and from this combination of inputsalong each inputrsquos axis For this paper the expansion factoris set to 2 Thus for the example of Figure 3(a) the nextset of ALPS-generated input combinations are shown as thethree orange dots surrounding the purple dot labeled 11987414These orange input dots shown in Figure 3(a) map to thethree orange output dots shown in Figure 3(b)The algorithmthen identifies if any of these output combinations producean objective function value that is larger than any producedpreviously in the optimization process Since none of theorange dots in Figure 3(b) possess an 1198912 value that is largerthan 11988514 the ALPS algorithm would then identify a setof other permissible input combinations that result fromadding and subtracting the previousmesh size (eg 2119903119894 in thiscase) divided by the same expansion factor to and from thecombination of inputs labeled 11987414 in Figure 3(a) along eachinputrsquos axis Thus for the example of Figure 3(a) the next setofALPS-generated input combinations are shown as the threelight-green dots surrounding the same purple dot labeled11987414These light-green input dots shown in Figure 3(a)map tothe three light-green output dots shown in Figure 3(b) Againsince none of the light-green dots in Figure 3(b) possessan 1198912 value that is larger than 11988514 the ALPS algorithmwould then identify another set of other permissible inputcombinations that result from adding and subtracting theprevious mesh size (eg 119903119894 in this case) divided by the sameexpansion factor to and from the combination of inputslabeled 11987414 in Figure 3(a) along each inputrsquos axis Thus forthe example of Figure 3(a) the next set of ALPS-generatedinput combinations are shown as the four dark-green dotssurrounding the same purple dot labeled 11987414 This processrepeats until either (i) one of the new input combinationsmaps to an output combination with an objective function

value that is larger than any produced previously or (ii) themesh size becomes equal to or less than a specified inputtolerance which for this paper is set to the resolution ofthe input parameters Δ119909119894 If the first option (i) occursthe algorithm will step to the improved input combinationand the ALPS process will continue iterating If the secondoption (ii) occurs the ALPS algorithmwill terminate For theexample of Figure 3(a) the second option occurred becausethe mesh size of the four yellow dots shown immediatelysurrounding the purple dot labeled 11987414 is equal to Δ1199092labeled in the same figure and none of the new output dotsgenerated ever surpassed the 1198912 value of 11988514 as shown inFigure 3(b)

Once the SQP and then ALPS algorithms have bothrun their full course for determining the maximum valueof 119869(1199091 1199092) from (4) for 120579 = 0 the 120579 parameter is thenincrementally increased by Δ120579 which is typically set to avalue between 12058710 to 12058720 Using this new 120579 parameter thealgorithm then computes the value of the objective functionin (4) for all existing input combinations which for theexample of this section are shown as the dots in Figure 3(a)From these input combinations the one that produces thelargest objective function value for 120579 = Δ120579 correspondsto the input combination represented by the dot labeled11987421 in Figure 3(a) which maps to the output combinationrepresented by the orange dot labeled 11988521 in Figure 3(b)The algorithm would then supply this input combinationto the SQP algorithm to generate more input combinationsthat produce larger objective function values as describedpreviously The four blue dots immediately surrounding thedot labeled 11987421 in Figure 3(c) would be identified firstfor the example of this section using this approach Thosefour blue dots map to the four new blue dots shown inFigure 3(d) that surround the dot labeled 11988521 The SQPalgorithm would then identify the next input combination(eg 11987422 shown in Figure 3(c)) that produces a largerobjective function value Note that the input combinationdot 11987422 maps to an output combination dot labeled 11988522in Figure 3(d) that is farther away along the directionprescribed by the new 120579 parameter value (ie Δ120579) As theSQP algorithm continues four other input combinationswould be identified that immediately surround the inputcombination dot labeled 11987422 in Figure 3(c) These dots arecolored red in Figure 3(c) Note however that one of thenew dots lies outside the red spline line and thus represents adesign instantiation that violates the geometric compatibilityconstraints imposedThus only three of the new surroundingdots map to permissible output combinations as shown inFigure 3(d) The SQP algorithm would continue in this wayuntil it terminates The ALPS algorithm would then takeover where the SQP algorithm left off as described previouslyuntil the ALPS algorithm also terminates Once the ALPSalgorithm terminates the algorithmwill have found the inputcombination that achieves the largest objective function valueidentified from among those previously tested for 120579 = Δ120579

The algorithm iterates this pattern of steps to identify thecombinations of output values that lie farthest away alongtheir prescribed directions defined by their corresponding120579 value in a clockwise fashion until 120579 ge 2120587 (ie all the

Mathematical Problems in Engineering 9

directions have been swept) It is important to note that anytime before the 120579 parameter is incrementally advanced theobjective function of (4) is rechecked for every combinationof input values that have been evaluated up to that point tomake sure that each of the previously identified output dotsthat are used to be the farthest away along their prescribeddirections is still the farthest away If a new dot is everidentified that is farther away than a previous dot along aspecific direction 120579 (ie if a new dot exceeds the dashed linesin Figure 3(b)) the iterative process is reset to that directionand the process continues using that improved output dot

Once this process is complete the MATLAB boundaryfunction (The MathWorks Inc) can be used to identifyall the combinations of output values that lie along theboundary of a convex shape that circumscribes the outputdots calculated and plotted using the systemrsquos model duringthe iterative processMany systems however produce a cloudof output dots that form a concavemdashnot convexmdashregionlike the one shown in Figure 4(a) If the output dots foundusing the MATLAB boundary function are used to definethe boundary of the example in Figure 4(a) the result wouldbe the red boundary shown in Figure 4(b) This boundarywould grossly overestimate the actual systemrsquos achievableperformance space since it is convex instead of concave likethe cloud of output dots Thus to address this issue theBLOT identifies all the vectors that point from each outputdot along the existing boundary to their neighboring dotson the same boundary The magnitude ℎmax of the longestvector is identified because this vector points between thetwo output dots (eg 119885ℎ1 and 119885ℎ2 shown in Figure 4(b)) thatusually correspond to the opening of a previously unknownconcave boundaryThe BLOT then computes a new objectivefunction 119869119892(1199091 1199092) defined by

119869119892 (1199091 1199092) = (cos21205721198772 + sin2120572)

sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )2

+ ( sin21205721198772 + cos2120572)

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )2 + 2sdot sin120572 cos120572( 1

1198772 minus 1)sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )

(5)

for all the input combinations that have been previouslyevaluated for 119877 = 1 This objective function is minimizedto identify output combinations that lie within circular orelliptical regions like those shown in Figure 4(c) If the119877 variable in (5) is 1 the region is a circle If however

this variable increases it becomes an increasingly elongatedellipse as shown in Figure 4(c) The angle 120572 in (5) is definedby

120572 = arctan(1198911119885ℎ2 minus 1198911119885ℎ11198912119885ℎ1 minus 1198912119885ℎ2) (6)

where1198911119885ℎ1 and1198912119885ℎ1 from (5) and (6) are the horizontal andvertical components of the119885ℎ1 dot labeled in Figure 4(c) and1198911119885ℎ2 and 1198912119885ℎ2 are the horizontal and vertical componentsof the 119885ℎ2 dot labeled in the same figure After the BLOTcomputes the objective function of (5) for all the inputcombinations that have been previously evaluated for 119877 = 1it identifies the existing input combination that produces thesmallest objective function value This input combination isthe combination that maps to the output combination thatis closest to the center of the circle shown in Figure 3(c)If no output dots are found within the circle the inputcombination corresponding to either the output dot 119885ℎ1 or119885ℎ2 will be chosen as the closest to the center of the circleand is thus supplied to the SQP and then ALPS algorithmdescribed previously to evaluate new input combinations Forthis SQP-ALPS optimization however the objective functionin (5) is minimized for 119877 = 1 instead of maximizing theobjective function of (4) for different values of 120579 as wasdone previously Suppose for the example of Figure 4 thatwhen this optimization is performed the new group of blueoutput dots shown in Figure 4(c) is generated Since none ofthese output dots lie within the center of the circle shownin the figure the previous 119877 value in the objective functionof (5) is multiplied by a factor of 2 and the search regionis expanded to an ellipse shown in Figure 4(c) Figure 4(e)shows the elliptical contour diagram of 119869119892(1199091 1199092) for this 119877value (ie 119877 = 2) If no output dots are found within thenew ellipse the process continues to iterate by multiplyingthe previous 119877 value by the same factor of 2 to increase theelliptical search region further For the example of Figure 4(c)however there are output dots that lie within the ellipticalsearch region corresponding to 119877 value of 2 Thus the inputcombination that maps to the output dot that lies within thisregion and possesses the smallest objective function value for119877 = 2 is supplied to the SQP-ALPS optimization algorithmto identify an even better output dot that achieves an evensmaller objective function value This process will producenew output dots (eg the new set of orange dots shownin Figure 4(e)) Whether these new output dots achieve asmaller objective function value or not the output dot thatachieves the smallest objective function value is identifiedand considered part of the systemrsquos performance boundaryIt is thus redefined as either 119885ℎ1 or 119885ℎ2 In the example ofFigure 4(e) the 119885ℎ2 output dot is the one that is redefinedNote also that ℎmax is also updated This boundary learningprocess is repeated until both (i) the horizontal componentof the boundary vector with the largest magnitude (ieℎmax) is less than a set percentage of the horizontal distanceacross the full cloud of output values and (ii) the verticalcomponent of the same vector is also less than the samepercentage of the vertical distance across the same cloudThis percentage threshold is typically set between 5 and

10 Mathematical Problems in Engineering

f1(x1 x2)

f2(x

1x

2)

(a)

f1(x1 x2)

f2(x

1x

2)

ℎGR

Zℎ1

Zℎ2

(b)

Zℎ1

Zℎ2

R = 2

R = 1

f1(x1 x2)

f2(x

1x

2)

(c)

Decreasing value

Zℎ1

Zℎ2

of Jg(x1 x2)

f1(x1 x2)

f2(x

1x

2)

(d)

Zℎ1

ℎGR

Zℎ2

f1(x1 x2)

f2(x

1x

2)

(e)

f1(x1 x2)

f2(x

1x

2)

(f)

Figure 4 Generated cloud of output dots (a) convex boundary first identified (b) new objective functionminimized to identify other outputdots within circular or elliptical regions (c) elliptical contour diagram of the new objective function with an 119877 value of 2 (d) boundary isupdated with a new ℎmax value (e) process successfully identifies boundaries that are concave (f)

10 Additionally before the largest boundary vector isupdated with a new magnitude (ie ℎmax) the entire opti-mization process of this section is repeated using the previousobjective function in (4) for all 120579 values to ensure thatany new dots evaluated since using that objective functionare allowed to improve the boundaryrsquos accuracy if possible

In this way both convex and concave boundaries like theconcave boundary shown in Figure 4(f) can be identifiedthat accurately define the systemrsquos achievable performancespace

A simple case study is performed to validate the per-formance of the boundary tracing algorithm of this section

Mathematical Problems in Engineering 11

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(a)

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(b)

Figure 5 Output values of a full parameter sweep (a) boundary identified for the same example using BLOT (b)

Suppose that three normalized input parameters 1199011 1199012 and1199013 map to two output functions 1198911 and 1198912 according to1198911 (1199011 1199012 1199013) = 11990131 + 1

211990121198912 (1199011 1199012 1199013) = 11990133 + 1

21199012(7)

If the input parameters are constrained according to

101199011 + 1199012 + 101199013 le 1511990121 + 1

10011990122 + 11990123 le 1 (8)

and each parameterrsquos smallest and largest values range from0 to 1 with a resolution increment of 001 the boundary ofthe region achieved by the functions of (7) can be found byplotting the output values for every permissible input valueFigure 5(a) shows all of these output values plotted as bluedots Another way to find the desired boundary but withmuch fewer calculations is to apply the algorithm of thissection as described The results are shown in Figure 5(b)Note that the algorithm identified a boundary (Figure 5(b))that is very close to the true boundary that contains the outputvalues (Figure 5(a)) after calculating and plotting only 2612dots instead of the 745298 dots that were calculated andplotted for the full parameter sweep of Figure 5(a)

4 Iterative Model and Boundary Refinement

This section provides the iterative process used to refinethe initial neural network-system models generated usingthe theory of Section 2 as well as their correspondingperformance capability boundary identified using the theoryof Section 3 Note that a single neural network is trainedfor each desired output performance capability plotted (egone neural network is trained to predict the flexure systemrsquos

range of motion for the example of Figure 1(f) and another istrained to predict its natural frequency) The process beginsby identifying all the design instantiations that lie along thefirst boundary plotted using the initial system models Theautomated FEM approach discussed in Section 2 is then usedto calculate their desired performance capabilities and theresults are saved as new sets of data called boundary setsThecombined MAPEboundary of both sets of output performancecapabilities is calculated using (3) but with all the subscriptslabeled ldquototalrdquo replaced by the word ldquoboundaryrdquo and where119873boundary is the total number of target output values frombothsets of output performance capabilities summed together Ifthe resulting MAPEboundary is equal to or less than 10 theneural network models pertaining to each output perfor-mance capability are used to generate the final boundary Ifhowever thisMAPEboundary is greater than 10 80 of the newdata is randomly added to the former training set of datadescribed in Section 2 for each of the corresponding neuralnetwork models The remaining 20 of the boundary dataset is added to the former testing set of data also describedin Section 2 The entire process of Sections 2 through 4 isthen repeated as new boundary data is added to the fullbody of previously acquired FEMdata until theMAPEboundaryis equal to or less than 10 Once this condition is satisfiedthe final neural network models used to predict the outputperformance capabilities are used to plot the final boundaryof the systemrsquos performance capabilities using the theory inSection 3 In this way all the points that constitute the finalperformance boundary plotted using BLOT for any flexuresystem are guaranteed to be accurate within an average errorof 10 or less

5 Flexure System Case Study Using the BLOT

This section uses the FACT-synthesized flexure system topol-ogy of Figure 1(f) as a detailed case study to demonstratethe capabilities of the BLOT Suppose that the smallest and

12 Mathematical Problems in Engineering

T = 10 mmL = 995 mmW = 100 mm T = 25 mm

L = 15 mmW = 100 mm

10minus1

10minus2

10minus3

10minus4

10minus5

10minus6

Tran

slatio

nal D

OF

Nor

mal

ized

rang

e of m

otio

n

100 10210minus4 10minus210minus6

Translational DOF natural frequency (kHz)

dradic

W2+L2

(a)

T = 25 mmL = 15 mmW = 100 mm

102

100

10minus2

10minus4

10minus6

Rota

tiona

l DO

F

100 10210minus4 10minus210minus6

Rotational DOF natural frequency (kHz)

rang

e of m

otio

(deg

rees

)

T = 10 mmL = 995 mmW = 100 mm

(b)

Figure 6 Boundaries of the topologyrsquos achievable ranges of motion and natural frequencies corresponding to the translational (a) androtational (b) DOF generated by the BLOT

largest values for each of the case studyrsquos three independentparameters (ie 119882 119879 and 119871) its resolution increment andthe properties of its constituent material are all set to bethe same values as those given in Section 1 Using the 119882 minus2119879 gt 0 constraint function provided earlier the BLOT canbe used to train various neural networks to create modelsthat map any desired geometric parameter values within thedesign space to design instantiations that achieve desiredperformance capabilities The performance capabilities ofinterest to this case study included (i) the topologyrsquos rangeof motion along its translational DOF direction as shownin Figure 1(d) (ii) the natural frequency of the topologythat corresponds with the mode shape of its translationalDOF (iii) the topologyrsquos angular range of motion aboutits rotational DOF as shown in Figure 1(e) and (iv) thenatural frequency of the topology that corresponds withthe mode shape of its rotational DOF The PYTHON scriptthat automates the collection of all the target data was setto ground the entire top surface of the fixed body shownwith thatched lines in Figure 1(f) on the side where the fourwire elements are attached The range of motion of eachdesign instantiation along the direction of the translationalDOF was calculated using FEA simulations by applying ashear force on the entire bottom face of the systemrsquos stageon the side where the four wire elements are attached Themagnitude of this shear force was gradually increased untilany portion within the system began to yield according toMises yield criterion The largest amount the stage translatedbefore reaching this yield criterion was defined to be therange ofmotion119889 of the corresponding design instantiationThis range of motion was normalized by dividing it byits characteristic length radic1198712 +1198822 The angular range ofmotion of each design instantiation about the rotationalDOF was also calculated using FEA simulations by applyingtwo opposing shear forces on either side of the systemrsquosstage to create a pure moment along the direction of theaxes of the wire elements The magnitude of this momentwas gradually increased until any portion within the systembegan to yield according to Mises yield criterion The largestamount the stage rotated before reaching this yield criterionwas defined to be the angular range of motion Φ of the

corresponding design instantiation The natural frequencies120596119899 corresponding to both of the translational and rotationalDOF mode shapes for each design instantiation were alsocalculated using finite element modal analysis simulationsA unique neural network with a single neuron output layerwas trained for each of the four performance capabilities ofinterest

Once the BLOT successfully created four accuratemodelsof the flexure system topology of Figure 1(f) by training fourneural networks to each map arbitrary design instantiationsof the topology to any of the four desired performancecapabilities of interest the BLOT then plotted final bound-aries that circumscribe the achievable combinations of theseperformance capabilities The boundary corresponding tothe normalized range of motion and natural frequency ofthe mode shape along the direction of the translationalDOF is show in Figure 6(a) Note that this was the sameboundary provided in Figure 1(g) but the plot in Figure 6(a)includes the colored output dots used to identify the finalboundary The geometric parameters for two optimizeddesign instantiations that span between the optimal portionof the boundary are provided in Figures 1(g) and 6(a)Other optimal design instantiations can be selected fromthis portion of the boundary to achieve different maximumcombinations of the performance capabilities The boundarycorresponding to the angular range of motion and naturalfrequency of the mode shape about the rotational DOF isprovided in Figure 6(b) Note that the two optimal designinstantiations shown as large black dots within the plots ofFigures 1(g) and 6(a) are also plotted in their correspondinglocations within the boundary provided in Figure 6(b)Although these design instantiations are not the two optimaldesign instantiations within the plot of Figure 6(b) they areclose to the optimal instantiations which are shown as largewhite dots in Figure 6(b) Finally it is worth noting thatthe plots of Figure 6 are presented using a log-log scaleSince such plots can never achieve zero or negative valuesthe BLOT establishes a cutoff threshold when identifying theboundary tomore rapidly and clearly define a practical regionof achievable performance capabilitiesThis threshold was setto 10minus6 for the plots of Figure 6

Mathematical Problems in Engineering 13

6 Conclusions and Future Work

This paper introduces an optimization tool called the Bound-ary Learning Optimization Tool (BLOT) which utilizes anautomated method for training neural networks to createaccurate models of general flexure system topologies syn-thesized using the FACT approach The BLOT uses thesemodels to plot the boundaries of regions containing thecombinations of desired performance capabilities that areachievable by different design instantiations of the FACT-synthesized topologies Both the neural network training andboundary identification portions of the BLOT are iteratedusing additional boundary data until the final boundary isguaranteed to be accurate within a value specified by theuser (eg less than 10 average error) A flexure system isprovided and optimized as a case study

TheBLOTwill be used in future works to generate Ashby-like material plots but for different architectured materialtopologies instead of for natural materials to compare theachievable properties of such microarchitectured structurescomposed of the same material These plots will enableengineers to identify trends among architectured materialsthat result from microstructure instead of composition

Disclosure

A preliminary version of this paperrsquos theory was first pre-sented at ASMErsquos IDETC as paper no DETC2017-67465

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Authorsrsquo Contributions

Ali Hatamizadeh and Yuanping Song are co-first authors astheir contributions to this paper are equal

Acknowledgments

This work was supported by the Air Force Office of ScienceResearch under Award no FA9550-15-1-0321 Program officerByung ldquoLesrdquo Lee is gratefully acknowledged This workused computational and storage services associated withthe Hoffman2 Shared Cluster provided by UCLA Institutefor Digital Research and Educationrsquos Research TechnologyGroup

References

[1] J B Hopkins Design of Parallel Flexure Systems via Freedomand Constraint Topologies (FACT) Massachusetts Institute ofTechnology 2007

[2] J B HopkinsDesign of Flexure-Based Motion Stages for Mecha-tronic Systems via Freedom Actuation and Constraint Topologies(FACT) Massachusetts Institute of Technology 2010

[3] J B Hopkins ldquoDesigning hybrid flexure systems and elementsusing freedom and constraint topologiesrdquoMechanical Sciencesvol 4 no 2 pp 319ndash331 2013

[4] Y LeCun Y Bengio and G Hinton ldquoDeep learningrdquo Naturevol 521 no 7553 pp 436ndash444 2015

[5] J B Hopkins K J Lange and C M Spadaccini ldquoDesigningmicrostructural architectures with thermally actuated prop-erties using freedom actuation and constraint topologiesrdquoJournal of Mechanical Design vol 135 no 6 Article ID 0610042013

[6] M F Ashby Materials Selection in Mechanical Design Butter-worth-Heinemann 2005

[7] X P Cheng and R V Patel ldquoNeural network based trackingcontrol of a flexible macro-micro manipulator systemrdquo NeuralNetworks vol 16 no 2 pp 271ndash286 2003

[8] W He Y Chen and Z Yin ldquoAdaptive neural network controlof an uncertain robot with full-state constraintsrdquo IEEE Transac-tions on Cybernetics vol 46 no 3 pp 620ndash629 2016

[9] H Kobayashi and R Ozawa ldquoAdaptive neural network controlof tendon-driven mechanisms with elastic tendonsrdquo Automat-ica vol 39 no 9 pp 1509ndash1519 2003

[10] J Takeuchi and Y Kosugi ldquoNeural network representation offinite element methodrdquo Neural Networks vol 7 no 2 pp 389ndash395 1994

[11] R I Levin and N A J Lieven ldquoDynamic finite elementmodel updating using neural networksrdquo Journal of Sound andVibration vol 210 no 5 pp 593ndash607 1998

[12] E Boillat S Kolossov R Glardon M Loher D Saladinand G Levy ldquoFinite element and neural network models forprocess optimization in selective laser sinteringrdquo Proceedingsof the Institution of Mechanical Engineers Part B Journal ofEngineering Manufacture vol 218 no 6 pp 607ndash614 2004

[13] M Lefik ldquoHybrid finite element-artificial neural networkmodel for composite materialsrdquo Journal of Theoretical andApplied Mechanics vol 42 pp 539ndash563 2004

[14] Y M A Hashash S Jung and J Ghaboussi ldquoNumerical imple-mentation of a neural network based material model in finiteelement analysisrdquo International Journal for Numerical Methodsin Engineering vol 59 no 7 pp 989ndash1005 2004

[15] L Manevitz M Yousef and D Givoli ldquoFinite-element meshgeneration using self-organizing neural networksrdquo Computer-Aided Civil and Infrastructure Engineering vol 12 no 4 pp233ndash250 1997

[16] Z Li andD Cao ldquoConceptual Design of CompliantMechanismBased on Port Ontologyrdquo Advances in Mechanical Engineeringvol 5 p 401492 2015

[17] Y Qin and Z Feng ldquoStructural dynamicmodification of flexurehinge structure based on artificial neural networkrdquo AviationPrecision Manufacturing Technology vol 5 no 11 2006

[18] F G Kong Q Li and W J Zhang ldquoAn artificial neuralnetwork approach tomechanism kinematic chain isomorphismidentificationrdquo Mechanism and Machine Theory vol 34 no 2pp 271ndash283 1999

[19] E K Burke andGKendall Eds SearchMethodologies SpringerUS Boston MA USA 2005

[20] Y V Haimes L S Lasdon and D A Wismer ldquoOn a bicriterionformulation of the problems of integrated system identificationand system optimizationrdquo IEEE Transactions on Systems Manand Cybernetics vol SMC-1 pp 296-297 1971

[21] P L Yu ldquoA class of solutions for group decision problemsrdquoManagement Science vol 19 no 8 pp 936ndash946 1973

14 Mathematical Problems in Engineering

[22] A P Wierzbicki ldquoOn the completeness and constructiveness ofparametric characterizations to vector optimization problemsrdquoOR Spectrum vol 8 no 2 pp 73ndash87 1986

[23] A P Wierzbicki ldquoA mathematical basis for satisficing decisionmakingrdquo in Organizations Multiple Agents with Multiple Cri-teria vol 190 of Lecture Notes in Economics and MathematicalSystems pp 465ndash486 Springer Berlin Heidelberg Berlin Hei-delberg 1981

[24] I Das and J E Dennis ldquoNormal-boundary intersection a newmethod for generating the Pareto surface in nonlinear multi-criteria optimization problemsrdquo SIAM Journal on Optimizationvol 8 no 3 pp 631ndash657 1998

[25] D E Goldberg Genetic Algorithms in Search Optimizationand Machine Learning Addison-Wesley Longman PublishingBoston MA USA 1st edition 1989

[26] ldquoExceptional papermdashlexicographic orders utilities anddecisionrules a surveyrdquo Management Science vol 20 pp 1442ndash14711974

[27] A Charnes and W W Cooper ldquoGoal programming and mul-tiple objective optimizationsrdquo European Journal of OperationalResearch vol 1 no 1 pp 39ndash54 1977

[28] K A de Jong Evolutionary Computation a Unified ApproachMIT Press Cambridge Mass USA 2006

[29] N Padhye P Bhardawaj and K Deb ldquoImproving differentialevolution through a unified approachrdquo Journal of Global Opti-mization vol 55 no 4 pp 771ndash799 2013

[30] O Sigmund ldquoOn the design of compliant mechanisms usingtopology optimizationrdquo Mechanics of Structures and Machinesvol 25 no 4 pp 493ndash524 1997

[31] M P Bendsoslashe and O Sigmund Topology Optimization TheoryMethod and Application Springer Berlin Heidelberg BerlinGermany 2003

[32] Z Luo L Chen J Yang Y Zhang and K Abdel-MalekldquoCompliant mechanism design using multi-objective topologyoptimization scheme of continuum structuresrdquo Structural andMultidisciplinary Optimization vol 30 no 2 pp 142ndash154 2005

[33] L Cao A T Dolovich A L Schwab J L Herder and WZhang ldquoToward a unified design approach for both compliantmechanisms and rigid-body mechanisms module optimiza-tionrdquo Journal of Mechanical Design vol 137 no 12 Article ID122301 2015

[34] H B Demuth M H Beale O Jess De andM T HaganNeuralNetwork Design 2nd edition 2014

[35] D E Rumelhart G E Hinton and R J Williams ldquoLearningrepresentations by back-propagating errorsrdquo Nature vol 323no 6088 pp 533ndash536 1986

[36] R Hecht-Nielsen ldquoTheory of the backpropagation neural net-workrdquo in Proceedings of the International Joint Conference onNeural Networks (IJCNN rsquo89) vol 1 pp 593ndash605 WashingtonDC USA June 1989

[37] FDanForesee andMTHagan ldquoGauss-Newton approximationto Bayesian learningrdquo in Proceedings of the International Con-ference on Neural Networks (IJCNN rsquo97) vol 3 pp 1930ndash1935IEEE Houston Tex USA June 1997

[38] L E Scales Introduction to Non-Linear Optimization Macmil-lan Education UK London 1985

[39] M H Beale M T Hagan and H B Demuth Neural NetworkToolbox119879119872Userrsquos Guide forMATLABR2012a NatickMA USA2012

[40] K Levenberg ldquoA method for the solution of certain non-linearproblems in least squaresrdquo Quarterly of Applied Mathematicsvol 2 pp 164ndash168 1944

[41] D Marquardt ldquoAn algorithm for least-squares estimation ofnonlinear parametersrdquo SIAM Journal on Applied Mathematicsvol 11 no 2 pp 431ndash441 1963

[42] J S Armstrong and F Collopy ldquoErrormeasures for generalizingabout forecasting methods empirical comparisonsrdquo Interna-tional Journal of Forecasting vol 8 no 1 pp 69ndash80 1992

[43] C Audet and J Dennis ldquoAnalysis of generalized pattern search-esrdquo SIAM Journal on Optimization vol 13 no 3 pp 889ndash9032002

[44] P E Gill W Murray andM HWright Practical OptimizationAcademic Press 1981

[45] R Fletcher Practical Methods of Optimization John Wiley ampSons New York NY USA 2nd edition 2000

[46] P E Gill W Murray and M H Wright Numerical LinearAlgebra and Optimization Addison-Wesley 1991

[47] A R Conn N I Gould and P Toint ldquoA globally convergentaugmented Lagrangian algorithm for optimization with generalconstraints and simple boundsrdquo SIAM Journal on NumericalAnalysis vol 28 no 2 pp 545ndash572 1991

[48] A R Conn N Gould and P L Toint ldquoA globally convergentLagrangian barrier algorithm for optimization with generalinequality constraints and simple boundsrdquo Mathematics ofComputation vol 66 no 217 pp 261ndash288 S1ndashS11 1997

[49] T G Kolda R M Lewis and V J Torczon ldquoA generating setdirect search augmented Lagrangian algorithm for optimizationwith a combination of general and linear constraintsrdquo Tech RepSAND2006-5315 Sandia National Laboratories USA 2006

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 4: Optimizing the Geometry of Flexure System Topologies Using the …web.cs.ucla.edu/~ahatamiz/BLOT.pdf · 2019-10-24 · synthesized topology using dierent geometric parameter values

4 Mathematical Problems in Engineering

studied extensively A multiobjective optimization problem(MOOP) deals with more than one objective function andaims at finding a set of solutions that optimizes all theobjective functions simultaneously Several methods havebeen proposed to solve the local or global Pareto-optimalsolution set [19] One of the most widely used methods is theweighting method [19] Haimes et al [20] introduced the 120576-Constraintmethod in 1971 andYu [21] introduced themethodof global criterion in 1973 Wierzbicki [22 23] introducedthe achievement scalarizing function approach in 1981 Othersolving methods include normal boundary intersection [24]evolutionary algorithm [25] lexicographic ordering [26]and goal programming [27] More recently MOOP methodshave focused on stochastic algorithms including a variety ofevolutionary algorithms [28 29] Such algorithms generatemore reliable global Pareto-optimal solution sets but requiresignificantly more function evaluations than deterministicalgorithms and are thus generally better suited for complexblack-box-model optimizations The boundary identifica-tion approach proposed in this paper has in part beenadapted from various deterministic multiobjective optimiza-tion methods such that the complete continuous boundary(including concave portions) that circumscribe the perfor-mance capabilities achieved by general flexure topologies canbe identified and refined with a desired accuracy Thereforea topologyrsquos full design space can be identified using theBLOT

By combining the utility of the BLOT with the currentFACT approach a new advantageous approach emergeswhich is unique from other existing design-optimizationapproaches Whereas other approaches (eg topology opti-mization [30ndash32] or module optimization [33]) simultane-ously combine the tasks of optimizing a designrsquos topologywith its geometry the proposed approach decouples thosetasks in such a way that the time-consuming computationsare reserved solely for the simpler task of geometry optimiza-tion only This optimization occurs after the FACT approachhas directly generated and finalized the most promisingtopologies without performing expensive iterative calcula-tionsThus by decoupling the tasks of topology synthesis andgeometry optimization in this way the speed that optimaldesigns can be generated from start to finish as well as thelikelihood that the global-optimum solutions are identifiedincreases

The specific contributions of this paper include the fol-lowing (i) a new fully automated tool is created and demon-strated (ie BLOT) that identifies the rigorous performancecapability boundaries achieved by flexure topologies gener-ated via FACT (ii) a new algorithm is proposed within thistool for optimizing and iteratively training the architecturesof artificial neural networks using data generated from spe-cially selected numerical simulations of design instantiationsalong previously generated boundaries to create accuratemodels of general flexure topologies (iii) a new approachis also introduced within the BLOT that combines existingmultiobjective optimization methods to use these modelsfor iteratively refining the convex and concave portions of ageneral topologyrsquos performance capability boundary with anaccuracy determined by the user

sum a(n)

sum a(n)

sum

g(n)

Input Hiddenlayer 1

Hiddenlayer 2

Outputlayer 3

Neuron

a(n)

a(n)

a(n)

a(n)

a(n)

w111

w112

w131

w312w113

x1

x2

x3

b11

b21

b31

b12

b22

b32

b42

b13

f1sum

sum

sum

sum

sum

Figure 2 Neural network example with three inputs one outputand two hidden layers of neurons

2 Model Generation via Neural Networks

This section summarizes how the BLOT generates modelsof FACT-synthesized topologies by training artificial neuralnetworks using numerical simulations performed on variousgeometric instantiations of these topologies Artificial neuralnetworks like the kind shown in Figure 2 consist of severalprocessing layers which can be tuned to successfully mapany inputs 119909119894 to any corresponding outputs 119891119895 when givena sufficient number of diversified input and correspondingtarget output values to learn from For the application ofthis paper inputs are the geometric parameters that definea flexure systemrsquos topology (eg 1199091 = 119882 1199092 = 119879 and1199093 = 119871 from the topology of Figure 1(f)) and outputs arethe performance capabilities (eg range of motion or naturalfrequency) achieved by the design instantiations that aredefined by these corresponding input parametersThe knowninput and target output values are obtained using finiteelement analysis (FEA) on sample design instantiations withgeometric parameters that span the topologyrsquos full designspace from their smallest achievable feature sizes to theirlargest geometrically compatible values The theory of thissection provides a systematic way to train neural networks forcreating sufficiently accurate flexure system topology modelsusing a minimal number of known input and target outputvalues sominimal computational effort and time are requiredby the BLOT

Each layer within a neural network consists of inter-connected computational nodes called neurons as labeledin Figure 2 The lines that interconnect the neurons areassociated with scalar weight values 119908119890119905119897 where 119890 is asubscript that corresponds to the labeled neuron number(or input) from which the line extends 119905 is a subscript thatcorresponds to the labeled neuron number at which the lineterminates and 119897 is a subscript that corresponds to the labeledlayer number in which that neuron belongs Other linesenter the neurons with associated scalar bias values 119887119905119897 thatutilize similar subscript conventions Each neuron within thenetworkrsquos hidden layers (ie the layers in between the input

Mathematical Problems in Engineering 5

values and the output layer) utilizes an activation function[4] 119886(119899) In this paper we employ the hyperbolic tangentsigmoid function [34] defined by

119886 (119899) = 119890119899 minus 119890minus119899119890119899 + 119890minus119899 (1)

The output from each activation function passes from onehidden layer of neurons to the next until the output layeris reached where this paper employs the linear activationfunction [34] 119892(119899) = 119899 to produce the final output 119891119895This process is called forward propagation because of thedirection in which the mathematics propagates or flows Todemonstrate how the mathematics flows within the networkdiagramed in Figure 2 consider the neuron highlighted bythe dotted red box The 119899 value that is plugged into thefunction of (1) corresponding to this highlighted neuron is

119899 = (1199091 sdot 119908111) + (1199092 sdot 119908211) + (1199093 sdot 119908311) + 11988711 (2)

Once a sufficient number of known input and targetoutput values have been numerically calculated variousmethods can be employed to use these values to iterativelytune the weights 119908119890119905119897 and biases 119887119905119897 within a neuralnetwork such that it can link any set of input values withinthe design space to accurate output values (ie the networkcan be trained to create an accurate predictive model)A popular way to tune the weights and biases is calledback propagation [35 36] The input values are normalizedand fed into the network using initial-guess weights andbiases The resulting outputs are compared against the targetoutputs that are known to be correct from a priori numericalsimulation A gradient vector of the resulting error withrespect to each weight and bias is then used to tune thesevalues in the opposite direction of the gradient vector Byrepeating this process numerous times the network canbe trained to accurately predict the correct output valuesA variation of the back propagation training method (ieBayesian Regularization [37 38]) was used to train the neuralnetworks that model the flexure system topologies of thispaper

The specific iterative process used in the BLOT to gener-ate accurate models of general FACT-synthesized topologiesis as follows A user provides a MATLAB script with theindependent geometric parameters that define the desiredflexure topology The smallest and largest values for each ofthese parameters are also provided to the script to specifythe full design space over which the resulting model willaccurately predict The script then begins by generating allthe possible design instantiations that result from applyingevery combination of these smallest and largest values withthree other evenly spaced values in between them (eg 119879min(3119879min + 119879max)4 (119879min + 119879max)2 (119879min + 3119879max)4 and119879max) for every independent parameter to the topologyrsquosgeometry Each resulting design instantiation is checked forgeometric compatibility against various geometric constraintfunctions which are specific to their topologyThe geometricconstraint function imposed on the design instantiationsof the example topology labeled in Figure 1(f) is 119882 minus2119879 gt 0 Then the MATLAB script passes the resulting

design instantiations that are geometrically compatible to aPYTHON script that automatically creates computer-aided-design (CAD) models of these instantiations defines theirconstitutive materials meshes their models and appliesthe desired boundary and loading conditions This scriptthen performs the FEA simulation in parallel batches usingABAQUS to produce the target output values that correspondwith each design instantiation defined by the given inputvalues Thus large amounts of data can be acquired withinthe design space of general flexure topologies using theautomated scripts

The numerically generated data is then randomly dividedamong two different sets 80 of the data is assigned to atraining set and the remaining 20 is assigned to a testing setThe training set of data is used to train a neural network thatpossesses an initial-guess architecture with two hidden layersand an output layer with only one neuron The number ofneurons in the first hidden layer is initially set to 20 neuronsand the number of neurons in the second hidden layer isinitially set to zero The modified mean squared error [39]119864training is calculated for the training set of data using thisinitial-guess network architecture with initial-guess weightsand biasesTheBayesianRegularization algorithm then trainsthe architecture by updating the weights and biases withinthe network using the gradient of 119864training for each iteration asdescribed previously until one of the following five conditionsis satisfied(1) Training is stopped once an excessively large numberof iterations have occurred For this paper 1000 iterationswere used as the cutoff(2) Training is stopped once an excessive amount of timehas lapsed For this paper the cutoff time was set to 10 hours(3) Training is stopped once the modified mean squarederror of the training set of data 119864training reaches a smallenough number For this paper the number was set to 10minus12(4) Training is stopped once the gradient of the modifiedmean squared error of the training set of data 119864trainingbecomes very small For this paper 10minus7 is used as the cutoff(5) Training is stopped once the damping factor [40 41]used within the Bayesian Regularization algorithm exceeds acertain value For this paper the damping factor cutoff wasset to 1010

After training has stopped the mean absolute percentageerror [42] MAPEtotal for the total set of training and testingdata combined is calculated using

MAPEtotal = 100119873total

119873totalsum119896=1

100381610038161003816100381610038161003816100381610038161003816119876119896total minus 119867119896total

119876119896total100381610038161003816100381610038161003816100381610038161003816 (3)

where 119873total is the total number of target output values fromboth the training and testing sets combined 119876119896total are thetarget output values from both the training and testing setsand119867119896total are all the corresponding predicted output valuescalculated using the current trained network In generalthe smaller a trained networkrsquos MAPEtotal is the better thetrained neural network can model the behavior of the flexuresystem topology

6 Mathematical Problems in Engineering

Thus the MAPEtotal of the trained initial-guess networkarchitecture (ie 20 neurons in the first hidden layer and0 neurons in the second hidden layer) is used as the start-ing point for optimizing the networkrsquos architecture Patternsearch [43] which is described in Section 3 in detail isused to optimize the number of neurons in the networkrsquosarchitecture in two different phases In the first phase patternsearch is used to optimize an architecture with no neuronsin the second hidden layer For this phase the lower boundof neurons in the first hidden layer is set to 5 and the upperbound is set to 40 The input tolerance (The MathWorksInc) is set to 1 the initial mesh size (The MathWorks Inc)is set to 8 and the expansion factor (The MathWorks Inc)is set to 2 The cost function that is minimized for thisoptimization is MAPEtotal defined in (3) Once the besttrained network architecture is found using this first hiddenlayer optimization (ie the trained network architecture withthe smallest MAPEtotal) the mean absolute percentage errorof the training MAPEtraining and testing MAPEtesting datasets is each calculated using (3) for this best trained networkarchitecture but with the subscripts currently labeled ldquototalrdquoreplaced by the words ldquotrainingrdquo and ldquotestingrdquo respectively Ifboth of these values (ie MAPEtraining and MAPEtesting) areequal to or less than 35 the neural network is used as theinitial model of the FACT-synthesized flexure topology Ifhowever eitherMAPEtraining orMAPEtesting is greater than 35the second phase of the network architecture optimization isinitiated In the second phase pattern search is again usedto optimize a network architecture but with 40 neurons inthe first hidden layer and an initial-guess of 4 neurons inthe second hidden layer For this phase the lower bound ofneurons in the second hidden layer is set to 1 and the upperbound is set to 15The input tolerance is again set to 1 and theexpansion factor is again set to 2The best number of neuronsin the second hidden layer of the network with 40 neuronsin the first hidden layer is identified by minimizing thesame cost function in (3) MAPEtotal Once the best trainednetwork architecture is found using this second hidden layeroptimization the mean absolute percentage error of thetraining MAPEtraining and testing MAPEtesting data setsis each calculated using (3) for this best trained networkarchitecture but with the subscripts currently labeled ldquototalrdquoreplaced by the words ldquotrainingrdquo and ldquotestingrdquo respectively Ifboth of these values (ie MAPEtraining and MAPEtesting) areequal to or less than 35 the neural network is used as theinitial model of the FACT-synthesized flexure topology Ifhowever eitherMAPEtraining orMAPEtesting is greater than 35the trained network architecture with the lowest MAPEtotalfound from the network optimization of both the first andsecond phase is used as the initial model of the FACT-synthesized flexure topology

Thus using minimal computation an initial model ofgeneral FACT-synthesized flexure system topologies can beidentified Note thatmany of the hard numbers chosen in thissection were selected for rapidly generating accurate modelsof flexure system topologies with less than sim10 independentgeometric parametersThe numbers in this section may needto be adjusted for scenarios with larger numbers of inputparameters

3 Plotting Performance Boundaries

This section discusses the portion of the BLOT that utilizesthe models of flexure system topologies generated fromSection 2 to plot their performance capability boundariesRecall that the geometric parameters of a flexure systemtopology (eg 119882 119879 and 119871 for the topology of Figure 1(f))are its modelrsquos inputs 119909119894 and the performance capabilities(eg range of motion and natural frequency for the exampleof Figure 1(f)) achieved by the design instantiations that aredefined by these corresponding input parameters are themodelrsquos outputs 119891119895 For this section a theoretical exampleof a system with only two inputs 1199091 and 1199092 will be used toconceptually explain the algorithm that plots the boundarythat circumscribes the systemrsquos full design space for two ofthe systemrsquos achievable outputs 1198911(1199091 1199092) and 1198912(1199091 1199092)

The boundary-plotting algorithm first requires the small-est and largest values of each input parameter 119909119894min and119909119894max respectively as well as resolution increment valuesΔ119909119894 for each input parameter Constraint functions shouldalso be provided to define what combination of input valuesare permissible (eg 119882 minus 2119879 gt 0 for the example ofFigure 1(f)) For the theoretical example of this section theconstraint function is shown as the red spline boundary linein Figure 3(a)

The algorithm begins by supplying a randomly selectedcombination of permissible inputs shown as the blue dotlabeled 11987411 in Figure 3(a) to the Sequential QuadraticProgramming (SQP) [44 45] optimization algorithm Thisalgorithm first identifies a set of other permissible inputcombinations that result from adding and subtracting theresolution increment of each input Δ119909119894 to and from the firstrandomly selected combination of inputs along each inputrsquosaxis For the example of Figure 3(a) this first set of inputcombinations are shown as the four blue dots immediatelysurrounding the blue dot labeled 11987411 Note that althoughΔ1199091 is shown as being equal to Δ1199092 in the example theseresolution increments do not have to be equal for otherscenarios The systemrsquos model is then used to map all of thecombinations of these inputs to their corresponding com-binations of outputs which are represented by the five bluedots shown in Figure 3(b) Note that the original input dot11987411 maps to the output dot 11988511 The SQP algorithm thenapproximates the gradient (ie first derivatives) and Hessianmatrix (ie the symmetric matrix of second derivatives) ofthe objective function defined by

119869 (1199091 1199092) = cos (120579) 1198912 (1199091 1199092) + sin (120579) 1198911 (1199091 1199092) (4)

using the input and output combinations (ie the adjacentblue dots in Figures 3(a) and 3(b)) where 120579 in (4) is initiallyset to 0 so that the largest 1198912 output can be pursued firstThis gradient and Hessian matrix are then used to constructa Quadratic Programming (QP) subproblem [46] whichis solved to determine another combination of inputs thatwill map to combinations of outputs that produce a largerobjective function value In the example of Figure 3 supposethe new combination of inputs determined is shown as thered dot labeled 11987412 in Figure 3(a) Note that this dotrsquoscorresponding combination of outputs which is shown as the

Mathematical Problems in Engineering 7

Constraintfunction

x1

x2

O13

O12

O21

O11

O14

r2

Δx2

(a)

Z14

Z13

Z12

Z11

Z21

= 0

= Δ

f1(x1 x2)

f2(x

1x

2)

(b)

Constraintfunction

x1

x2

O22

O21

(c)

Z21 Z22

= 0

= Δ

f1(x1 x2)

f2(x

1x

2)

(d)

Figure 3 Progression of the SQP and then ALPS optimization algorithms for 120579 = 0 initialized in the objective function in the input space(a) and in the corresponding output space (b) continued progression of the same optimization algorithms for 120579 = Δ120579 incremented in theobjective function in the same input space (c) and in the same output space (d)

red dot labeled 11988512 in Figure 3(b) possesses 1198912 value thatis larger than any of the other previous blue dots shown inthe same figure The SQP algorithm then repeats this processby finding another set of permissible input combinations thatresult from adding and subtracting the resolution incrementof each inputΔ119909119894 to and from the new combination of inputs(ie 11987412 from Figure 3(a)) along each inputrsquos axis For theexample of Figure 3(a) this new set of input combinationsare shown as the four red dots immediately surroundingthe red dot labeled 11987412 Note that each of the five reddots in Figure 3(a) maps to a corresponding red dot inFigure 3(b)Thus the SQP algorithm rapidly finds an efficientpath toward a local maximum of the objective function byiteratively stepping from one cluster of dots to the next inthis manner The SQP algorithm terminates when either (i)the step distance from one central dot to the next (eg thedistance between11987411 and11987412 in Figure 3(a)) is smaller thanthe prescribed resolution of the input parameters Δ119909119894 or (ii)the process fails to generate the next step which typically

occurs because the first or second derivatives of the objectivefunction cannot be calculated The latter reason typicallyoccurs when the algorithm encounters discontinuities withinthe objective function

After the SQP algorithm terminates the boundary-plotting algorithm of this paper continues the optimizationprocess by supplying the combination of permissible inputsthat map to the combination of outputs that produce thelargest objective function value identified by the SQP algo-rithm to the Augmented Lagrangian Pattern Search (ALPS)[47ndash49] optimization algorithm For the example of Fig-ure 3(a) suppose the SQP process was unable to step beyondthe cluster of dots surrounding 11987412 and thus terminatedat that location The combination of inputs that would besupplied to the ALPS algorithm would be the red dot labeled11987413 in Figure 3(a) since this combination of inputs mapsto the combination of outputs that achieve the largest 1198912value found using the SQP algorithm This combination ofoutputs is shown as the red dot labeled 11988513 in Figure 3(b)

8 Mathematical Problems in Engineering

The ALPS algorithm first identifies a set of other permissibleinput combinations that result from adding and subtractingan initial mesh size 119903119894 to and from the combination of inputssupplied to the algorithm along each inputrsquos axis The initialmesh size labeled 1199032 in Figure 3(a) is typically set to 20of the range of its corresponding input parameter (ie 119903119894 =02|119909119894max minus 119909119894min|) For the example of Figure 3(a) the firstset of ALPS-generated input combinations are shown as thefour purple dots surrounding the red dot labeled 11987413 Notethat although 1199031 is shown as being equal to 1199032 in the examplethese mesh sizes are not typically equal for other scenariosThe systemrsquos model is then used to map the combinations ofthese inputs to their corresponding combinations of outputswhich are represented by the four purple dots shown inFigure 3(b)TheALPS algorithm then identifies if any of thesecombinations of inputs map to a combination of outputs thatproduce an objective function value that is larger than anyproduced previously in the optimization process Supposefor instance that the input combination of the example inFigure 3(a) labeled 11987414 maps to the output combinationlabeled11988514 in Figure 3(b) which achieves the largest1198912 valuepreviously identified The ALPS algorithm would then stepto the dot representing that input combination (eg 11987414)The algorithm would then identify a set of other permissibleinput combinations that result from adding and subtractingthe previous mesh size (eg 119903119894 in this case) multiplied byan expansion factor to and from this combination of inputsalong each inputrsquos axis For this paper the expansion factoris set to 2 Thus for the example of Figure 3(a) the nextset of ALPS-generated input combinations are shown as thethree orange dots surrounding the purple dot labeled 11987414These orange input dots shown in Figure 3(a) map to thethree orange output dots shown in Figure 3(b)The algorithmthen identifies if any of these output combinations producean objective function value that is larger than any producedpreviously in the optimization process Since none of theorange dots in Figure 3(b) possess an 1198912 value that is largerthan 11988514 the ALPS algorithm would then identify a setof other permissible input combinations that result fromadding and subtracting the previousmesh size (eg 2119903119894 in thiscase) divided by the same expansion factor to and from thecombination of inputs labeled 11987414 in Figure 3(a) along eachinputrsquos axis Thus for the example of Figure 3(a) the next setofALPS-generated input combinations are shown as the threelight-green dots surrounding the same purple dot labeled11987414These light-green input dots shown in Figure 3(a)map tothe three light-green output dots shown in Figure 3(b) Againsince none of the light-green dots in Figure 3(b) possessan 1198912 value that is larger than 11988514 the ALPS algorithmwould then identify another set of other permissible inputcombinations that result from adding and subtracting theprevious mesh size (eg 119903119894 in this case) divided by the sameexpansion factor to and from the combination of inputslabeled 11987414 in Figure 3(a) along each inputrsquos axis Thus forthe example of Figure 3(a) the next set of ALPS-generatedinput combinations are shown as the four dark-green dotssurrounding the same purple dot labeled 11987414 This processrepeats until either (i) one of the new input combinationsmaps to an output combination with an objective function

value that is larger than any produced previously or (ii) themesh size becomes equal to or less than a specified inputtolerance which for this paper is set to the resolution ofthe input parameters Δ119909119894 If the first option (i) occursthe algorithm will step to the improved input combinationand the ALPS process will continue iterating If the secondoption (ii) occurs the ALPS algorithmwill terminate For theexample of Figure 3(a) the second option occurred becausethe mesh size of the four yellow dots shown immediatelysurrounding the purple dot labeled 11987414 is equal to Δ1199092labeled in the same figure and none of the new output dotsgenerated ever surpassed the 1198912 value of 11988514 as shown inFigure 3(b)

Once the SQP and then ALPS algorithms have bothrun their full course for determining the maximum valueof 119869(1199091 1199092) from (4) for 120579 = 0 the 120579 parameter is thenincrementally increased by Δ120579 which is typically set to avalue between 12058710 to 12058720 Using this new 120579 parameter thealgorithm then computes the value of the objective functionin (4) for all existing input combinations which for theexample of this section are shown as the dots in Figure 3(a)From these input combinations the one that produces thelargest objective function value for 120579 = Δ120579 correspondsto the input combination represented by the dot labeled11987421 in Figure 3(a) which maps to the output combinationrepresented by the orange dot labeled 11988521 in Figure 3(b)The algorithm would then supply this input combinationto the SQP algorithm to generate more input combinationsthat produce larger objective function values as describedpreviously The four blue dots immediately surrounding thedot labeled 11987421 in Figure 3(c) would be identified firstfor the example of this section using this approach Thosefour blue dots map to the four new blue dots shown inFigure 3(d) that surround the dot labeled 11988521 The SQPalgorithm would then identify the next input combination(eg 11987422 shown in Figure 3(c)) that produces a largerobjective function value Note that the input combinationdot 11987422 maps to an output combination dot labeled 11988522in Figure 3(d) that is farther away along the directionprescribed by the new 120579 parameter value (ie Δ120579) As theSQP algorithm continues four other input combinationswould be identified that immediately surround the inputcombination dot labeled 11987422 in Figure 3(c) These dots arecolored red in Figure 3(c) Note however that one of thenew dots lies outside the red spline line and thus represents adesign instantiation that violates the geometric compatibilityconstraints imposedThus only three of the new surroundingdots map to permissible output combinations as shown inFigure 3(d) The SQP algorithm would continue in this wayuntil it terminates The ALPS algorithm would then takeover where the SQP algorithm left off as described previouslyuntil the ALPS algorithm also terminates Once the ALPSalgorithm terminates the algorithmwill have found the inputcombination that achieves the largest objective function valueidentified from among those previously tested for 120579 = Δ120579

The algorithm iterates this pattern of steps to identify thecombinations of output values that lie farthest away alongtheir prescribed directions defined by their corresponding120579 value in a clockwise fashion until 120579 ge 2120587 (ie all the

Mathematical Problems in Engineering 9

directions have been swept) It is important to note that anytime before the 120579 parameter is incrementally advanced theobjective function of (4) is rechecked for every combinationof input values that have been evaluated up to that point tomake sure that each of the previously identified output dotsthat are used to be the farthest away along their prescribeddirections is still the farthest away If a new dot is everidentified that is farther away than a previous dot along aspecific direction 120579 (ie if a new dot exceeds the dashed linesin Figure 3(b)) the iterative process is reset to that directionand the process continues using that improved output dot

Once this process is complete the MATLAB boundaryfunction (The MathWorks Inc) can be used to identifyall the combinations of output values that lie along theboundary of a convex shape that circumscribes the outputdots calculated and plotted using the systemrsquos model duringthe iterative processMany systems however produce a cloudof output dots that form a concavemdashnot convexmdashregionlike the one shown in Figure 4(a) If the output dots foundusing the MATLAB boundary function are used to definethe boundary of the example in Figure 4(a) the result wouldbe the red boundary shown in Figure 4(b) This boundarywould grossly overestimate the actual systemrsquos achievableperformance space since it is convex instead of concave likethe cloud of output dots Thus to address this issue theBLOT identifies all the vectors that point from each outputdot along the existing boundary to their neighboring dotson the same boundary The magnitude ℎmax of the longestvector is identified because this vector points between thetwo output dots (eg 119885ℎ1 and 119885ℎ2 shown in Figure 4(b)) thatusually correspond to the opening of a previously unknownconcave boundaryThe BLOT then computes a new objectivefunction 119869119892(1199091 1199092) defined by

119869119892 (1199091 1199092) = (cos21205721198772 + sin2120572)

sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )2

+ ( sin21205721198772 + cos2120572)

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )2 + 2sdot sin120572 cos120572( 1

1198772 minus 1)sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )

(5)

for all the input combinations that have been previouslyevaluated for 119877 = 1 This objective function is minimizedto identify output combinations that lie within circular orelliptical regions like those shown in Figure 4(c) If the119877 variable in (5) is 1 the region is a circle If however

this variable increases it becomes an increasingly elongatedellipse as shown in Figure 4(c) The angle 120572 in (5) is definedby

120572 = arctan(1198911119885ℎ2 minus 1198911119885ℎ11198912119885ℎ1 minus 1198912119885ℎ2) (6)

where1198911119885ℎ1 and1198912119885ℎ1 from (5) and (6) are the horizontal andvertical components of the119885ℎ1 dot labeled in Figure 4(c) and1198911119885ℎ2 and 1198912119885ℎ2 are the horizontal and vertical componentsof the 119885ℎ2 dot labeled in the same figure After the BLOTcomputes the objective function of (5) for all the inputcombinations that have been previously evaluated for 119877 = 1it identifies the existing input combination that produces thesmallest objective function value This input combination isthe combination that maps to the output combination thatis closest to the center of the circle shown in Figure 3(c)If no output dots are found within the circle the inputcombination corresponding to either the output dot 119885ℎ1 or119885ℎ2 will be chosen as the closest to the center of the circleand is thus supplied to the SQP and then ALPS algorithmdescribed previously to evaluate new input combinations Forthis SQP-ALPS optimization however the objective functionin (5) is minimized for 119877 = 1 instead of maximizing theobjective function of (4) for different values of 120579 as wasdone previously Suppose for the example of Figure 4 thatwhen this optimization is performed the new group of blueoutput dots shown in Figure 4(c) is generated Since none ofthese output dots lie within the center of the circle shownin the figure the previous 119877 value in the objective functionof (5) is multiplied by a factor of 2 and the search regionis expanded to an ellipse shown in Figure 4(c) Figure 4(e)shows the elliptical contour diagram of 119869119892(1199091 1199092) for this 119877value (ie 119877 = 2) If no output dots are found within thenew ellipse the process continues to iterate by multiplyingthe previous 119877 value by the same factor of 2 to increase theelliptical search region further For the example of Figure 4(c)however there are output dots that lie within the ellipticalsearch region corresponding to 119877 value of 2 Thus the inputcombination that maps to the output dot that lies within thisregion and possesses the smallest objective function value for119877 = 2 is supplied to the SQP-ALPS optimization algorithmto identify an even better output dot that achieves an evensmaller objective function value This process will producenew output dots (eg the new set of orange dots shownin Figure 4(e)) Whether these new output dots achieve asmaller objective function value or not the output dot thatachieves the smallest objective function value is identifiedand considered part of the systemrsquos performance boundaryIt is thus redefined as either 119885ℎ1 or 119885ℎ2 In the example ofFigure 4(e) the 119885ℎ2 output dot is the one that is redefinedNote also that ℎmax is also updated This boundary learningprocess is repeated until both (i) the horizontal componentof the boundary vector with the largest magnitude (ieℎmax) is less than a set percentage of the horizontal distanceacross the full cloud of output values and (ii) the verticalcomponent of the same vector is also less than the samepercentage of the vertical distance across the same cloudThis percentage threshold is typically set between 5 and

10 Mathematical Problems in Engineering

f1(x1 x2)

f2(x

1x

2)

(a)

f1(x1 x2)

f2(x

1x

2)

ℎGR

Zℎ1

Zℎ2

(b)

Zℎ1

Zℎ2

R = 2

R = 1

f1(x1 x2)

f2(x

1x

2)

(c)

Decreasing value

Zℎ1

Zℎ2

of Jg(x1 x2)

f1(x1 x2)

f2(x

1x

2)

(d)

Zℎ1

ℎGR

Zℎ2

f1(x1 x2)

f2(x

1x

2)

(e)

f1(x1 x2)

f2(x

1x

2)

(f)

Figure 4 Generated cloud of output dots (a) convex boundary first identified (b) new objective functionminimized to identify other outputdots within circular or elliptical regions (c) elliptical contour diagram of the new objective function with an 119877 value of 2 (d) boundary isupdated with a new ℎmax value (e) process successfully identifies boundaries that are concave (f)

10 Additionally before the largest boundary vector isupdated with a new magnitude (ie ℎmax) the entire opti-mization process of this section is repeated using the previousobjective function in (4) for all 120579 values to ensure thatany new dots evaluated since using that objective functionare allowed to improve the boundaryrsquos accuracy if possible

In this way both convex and concave boundaries like theconcave boundary shown in Figure 4(f) can be identifiedthat accurately define the systemrsquos achievable performancespace

A simple case study is performed to validate the per-formance of the boundary tracing algorithm of this section

Mathematical Problems in Engineering 11

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(a)

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(b)

Figure 5 Output values of a full parameter sweep (a) boundary identified for the same example using BLOT (b)

Suppose that three normalized input parameters 1199011 1199012 and1199013 map to two output functions 1198911 and 1198912 according to1198911 (1199011 1199012 1199013) = 11990131 + 1

211990121198912 (1199011 1199012 1199013) = 11990133 + 1

21199012(7)

If the input parameters are constrained according to

101199011 + 1199012 + 101199013 le 1511990121 + 1

10011990122 + 11990123 le 1 (8)

and each parameterrsquos smallest and largest values range from0 to 1 with a resolution increment of 001 the boundary ofthe region achieved by the functions of (7) can be found byplotting the output values for every permissible input valueFigure 5(a) shows all of these output values plotted as bluedots Another way to find the desired boundary but withmuch fewer calculations is to apply the algorithm of thissection as described The results are shown in Figure 5(b)Note that the algorithm identified a boundary (Figure 5(b))that is very close to the true boundary that contains the outputvalues (Figure 5(a)) after calculating and plotting only 2612dots instead of the 745298 dots that were calculated andplotted for the full parameter sweep of Figure 5(a)

4 Iterative Model and Boundary Refinement

This section provides the iterative process used to refinethe initial neural network-system models generated usingthe theory of Section 2 as well as their correspondingperformance capability boundary identified using the theoryof Section 3 Note that a single neural network is trainedfor each desired output performance capability plotted (egone neural network is trained to predict the flexure systemrsquos

range of motion for the example of Figure 1(f) and another istrained to predict its natural frequency) The process beginsby identifying all the design instantiations that lie along thefirst boundary plotted using the initial system models Theautomated FEM approach discussed in Section 2 is then usedto calculate their desired performance capabilities and theresults are saved as new sets of data called boundary setsThecombined MAPEboundary of both sets of output performancecapabilities is calculated using (3) but with all the subscriptslabeled ldquototalrdquo replaced by the word ldquoboundaryrdquo and where119873boundary is the total number of target output values frombothsets of output performance capabilities summed together Ifthe resulting MAPEboundary is equal to or less than 10 theneural network models pertaining to each output perfor-mance capability are used to generate the final boundary Ifhowever thisMAPEboundary is greater than 10 80 of the newdata is randomly added to the former training set of datadescribed in Section 2 for each of the corresponding neuralnetwork models The remaining 20 of the boundary dataset is added to the former testing set of data also describedin Section 2 The entire process of Sections 2 through 4 isthen repeated as new boundary data is added to the fullbody of previously acquired FEMdata until theMAPEboundaryis equal to or less than 10 Once this condition is satisfiedthe final neural network models used to predict the outputperformance capabilities are used to plot the final boundaryof the systemrsquos performance capabilities using the theory inSection 3 In this way all the points that constitute the finalperformance boundary plotted using BLOT for any flexuresystem are guaranteed to be accurate within an average errorof 10 or less

5 Flexure System Case Study Using the BLOT

This section uses the FACT-synthesized flexure system topol-ogy of Figure 1(f) as a detailed case study to demonstratethe capabilities of the BLOT Suppose that the smallest and

12 Mathematical Problems in Engineering

T = 10 mmL = 995 mmW = 100 mm T = 25 mm

L = 15 mmW = 100 mm

10minus1

10minus2

10minus3

10minus4

10minus5

10minus6

Tran

slatio

nal D

OF

Nor

mal

ized

rang

e of m

otio

n

100 10210minus4 10minus210minus6

Translational DOF natural frequency (kHz)

dradic

W2+L2

(a)

T = 25 mmL = 15 mmW = 100 mm

102

100

10minus2

10minus4

10minus6

Rota

tiona

l DO

F

100 10210minus4 10minus210minus6

Rotational DOF natural frequency (kHz)

rang

e of m

otio

(deg

rees

)

T = 10 mmL = 995 mmW = 100 mm

(b)

Figure 6 Boundaries of the topologyrsquos achievable ranges of motion and natural frequencies corresponding to the translational (a) androtational (b) DOF generated by the BLOT

largest values for each of the case studyrsquos three independentparameters (ie 119882 119879 and 119871) its resolution increment andthe properties of its constituent material are all set to bethe same values as those given in Section 1 Using the 119882 minus2119879 gt 0 constraint function provided earlier the BLOT canbe used to train various neural networks to create modelsthat map any desired geometric parameter values within thedesign space to design instantiations that achieve desiredperformance capabilities The performance capabilities ofinterest to this case study included (i) the topologyrsquos rangeof motion along its translational DOF direction as shownin Figure 1(d) (ii) the natural frequency of the topologythat corresponds with the mode shape of its translationalDOF (iii) the topologyrsquos angular range of motion aboutits rotational DOF as shown in Figure 1(e) and (iv) thenatural frequency of the topology that corresponds withthe mode shape of its rotational DOF The PYTHON scriptthat automates the collection of all the target data was setto ground the entire top surface of the fixed body shownwith thatched lines in Figure 1(f) on the side where the fourwire elements are attached The range of motion of eachdesign instantiation along the direction of the translationalDOF was calculated using FEA simulations by applying ashear force on the entire bottom face of the systemrsquos stageon the side where the four wire elements are attached Themagnitude of this shear force was gradually increased untilany portion within the system began to yield according toMises yield criterion The largest amount the stage translatedbefore reaching this yield criterion was defined to be therange ofmotion119889 of the corresponding design instantiationThis range of motion was normalized by dividing it byits characteristic length radic1198712 +1198822 The angular range ofmotion of each design instantiation about the rotationalDOF was also calculated using FEA simulations by applyingtwo opposing shear forces on either side of the systemrsquosstage to create a pure moment along the direction of theaxes of the wire elements The magnitude of this momentwas gradually increased until any portion within the systembegan to yield according to Mises yield criterion The largestamount the stage rotated before reaching this yield criterionwas defined to be the angular range of motion Φ of the

corresponding design instantiation The natural frequencies120596119899 corresponding to both of the translational and rotationalDOF mode shapes for each design instantiation were alsocalculated using finite element modal analysis simulationsA unique neural network with a single neuron output layerwas trained for each of the four performance capabilities ofinterest

Once the BLOT successfully created four accuratemodelsof the flexure system topology of Figure 1(f) by training fourneural networks to each map arbitrary design instantiationsof the topology to any of the four desired performancecapabilities of interest the BLOT then plotted final bound-aries that circumscribe the achievable combinations of theseperformance capabilities The boundary corresponding tothe normalized range of motion and natural frequency ofthe mode shape along the direction of the translationalDOF is show in Figure 6(a) Note that this was the sameboundary provided in Figure 1(g) but the plot in Figure 6(a)includes the colored output dots used to identify the finalboundary The geometric parameters for two optimizeddesign instantiations that span between the optimal portionof the boundary are provided in Figures 1(g) and 6(a)Other optimal design instantiations can be selected fromthis portion of the boundary to achieve different maximumcombinations of the performance capabilities The boundarycorresponding to the angular range of motion and naturalfrequency of the mode shape about the rotational DOF isprovided in Figure 6(b) Note that the two optimal designinstantiations shown as large black dots within the plots ofFigures 1(g) and 6(a) are also plotted in their correspondinglocations within the boundary provided in Figure 6(b)Although these design instantiations are not the two optimaldesign instantiations within the plot of Figure 6(b) they areclose to the optimal instantiations which are shown as largewhite dots in Figure 6(b) Finally it is worth noting thatthe plots of Figure 6 are presented using a log-log scaleSince such plots can never achieve zero or negative valuesthe BLOT establishes a cutoff threshold when identifying theboundary tomore rapidly and clearly define a practical regionof achievable performance capabilitiesThis threshold was setto 10minus6 for the plots of Figure 6

Mathematical Problems in Engineering 13

6 Conclusions and Future Work

This paper introduces an optimization tool called the Bound-ary Learning Optimization Tool (BLOT) which utilizes anautomated method for training neural networks to createaccurate models of general flexure system topologies syn-thesized using the FACT approach The BLOT uses thesemodels to plot the boundaries of regions containing thecombinations of desired performance capabilities that areachievable by different design instantiations of the FACT-synthesized topologies Both the neural network training andboundary identification portions of the BLOT are iteratedusing additional boundary data until the final boundary isguaranteed to be accurate within a value specified by theuser (eg less than 10 average error) A flexure system isprovided and optimized as a case study

TheBLOTwill be used in future works to generate Ashby-like material plots but for different architectured materialtopologies instead of for natural materials to compare theachievable properties of such microarchitectured structurescomposed of the same material These plots will enableengineers to identify trends among architectured materialsthat result from microstructure instead of composition

Disclosure

A preliminary version of this paperrsquos theory was first pre-sented at ASMErsquos IDETC as paper no DETC2017-67465

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Authorsrsquo Contributions

Ali Hatamizadeh and Yuanping Song are co-first authors astheir contributions to this paper are equal

Acknowledgments

This work was supported by the Air Force Office of ScienceResearch under Award no FA9550-15-1-0321 Program officerByung ldquoLesrdquo Lee is gratefully acknowledged This workused computational and storage services associated withthe Hoffman2 Shared Cluster provided by UCLA Institutefor Digital Research and Educationrsquos Research TechnologyGroup

References

[1] J B Hopkins Design of Parallel Flexure Systems via Freedomand Constraint Topologies (FACT) Massachusetts Institute ofTechnology 2007

[2] J B HopkinsDesign of Flexure-Based Motion Stages for Mecha-tronic Systems via Freedom Actuation and Constraint Topologies(FACT) Massachusetts Institute of Technology 2010

[3] J B Hopkins ldquoDesigning hybrid flexure systems and elementsusing freedom and constraint topologiesrdquoMechanical Sciencesvol 4 no 2 pp 319ndash331 2013

[4] Y LeCun Y Bengio and G Hinton ldquoDeep learningrdquo Naturevol 521 no 7553 pp 436ndash444 2015

[5] J B Hopkins K J Lange and C M Spadaccini ldquoDesigningmicrostructural architectures with thermally actuated prop-erties using freedom actuation and constraint topologiesrdquoJournal of Mechanical Design vol 135 no 6 Article ID 0610042013

[6] M F Ashby Materials Selection in Mechanical Design Butter-worth-Heinemann 2005

[7] X P Cheng and R V Patel ldquoNeural network based trackingcontrol of a flexible macro-micro manipulator systemrdquo NeuralNetworks vol 16 no 2 pp 271ndash286 2003

[8] W He Y Chen and Z Yin ldquoAdaptive neural network controlof an uncertain robot with full-state constraintsrdquo IEEE Transac-tions on Cybernetics vol 46 no 3 pp 620ndash629 2016

[9] H Kobayashi and R Ozawa ldquoAdaptive neural network controlof tendon-driven mechanisms with elastic tendonsrdquo Automat-ica vol 39 no 9 pp 1509ndash1519 2003

[10] J Takeuchi and Y Kosugi ldquoNeural network representation offinite element methodrdquo Neural Networks vol 7 no 2 pp 389ndash395 1994

[11] R I Levin and N A J Lieven ldquoDynamic finite elementmodel updating using neural networksrdquo Journal of Sound andVibration vol 210 no 5 pp 593ndash607 1998

[12] E Boillat S Kolossov R Glardon M Loher D Saladinand G Levy ldquoFinite element and neural network models forprocess optimization in selective laser sinteringrdquo Proceedingsof the Institution of Mechanical Engineers Part B Journal ofEngineering Manufacture vol 218 no 6 pp 607ndash614 2004

[13] M Lefik ldquoHybrid finite element-artificial neural networkmodel for composite materialsrdquo Journal of Theoretical andApplied Mechanics vol 42 pp 539ndash563 2004

[14] Y M A Hashash S Jung and J Ghaboussi ldquoNumerical imple-mentation of a neural network based material model in finiteelement analysisrdquo International Journal for Numerical Methodsin Engineering vol 59 no 7 pp 989ndash1005 2004

[15] L Manevitz M Yousef and D Givoli ldquoFinite-element meshgeneration using self-organizing neural networksrdquo Computer-Aided Civil and Infrastructure Engineering vol 12 no 4 pp233ndash250 1997

[16] Z Li andD Cao ldquoConceptual Design of CompliantMechanismBased on Port Ontologyrdquo Advances in Mechanical Engineeringvol 5 p 401492 2015

[17] Y Qin and Z Feng ldquoStructural dynamicmodification of flexurehinge structure based on artificial neural networkrdquo AviationPrecision Manufacturing Technology vol 5 no 11 2006

[18] F G Kong Q Li and W J Zhang ldquoAn artificial neuralnetwork approach tomechanism kinematic chain isomorphismidentificationrdquo Mechanism and Machine Theory vol 34 no 2pp 271ndash283 1999

[19] E K Burke andGKendall Eds SearchMethodologies SpringerUS Boston MA USA 2005

[20] Y V Haimes L S Lasdon and D A Wismer ldquoOn a bicriterionformulation of the problems of integrated system identificationand system optimizationrdquo IEEE Transactions on Systems Manand Cybernetics vol SMC-1 pp 296-297 1971

[21] P L Yu ldquoA class of solutions for group decision problemsrdquoManagement Science vol 19 no 8 pp 936ndash946 1973

14 Mathematical Problems in Engineering

[22] A P Wierzbicki ldquoOn the completeness and constructiveness ofparametric characterizations to vector optimization problemsrdquoOR Spectrum vol 8 no 2 pp 73ndash87 1986

[23] A P Wierzbicki ldquoA mathematical basis for satisficing decisionmakingrdquo in Organizations Multiple Agents with Multiple Cri-teria vol 190 of Lecture Notes in Economics and MathematicalSystems pp 465ndash486 Springer Berlin Heidelberg Berlin Hei-delberg 1981

[24] I Das and J E Dennis ldquoNormal-boundary intersection a newmethod for generating the Pareto surface in nonlinear multi-criteria optimization problemsrdquo SIAM Journal on Optimizationvol 8 no 3 pp 631ndash657 1998

[25] D E Goldberg Genetic Algorithms in Search Optimizationand Machine Learning Addison-Wesley Longman PublishingBoston MA USA 1st edition 1989

[26] ldquoExceptional papermdashlexicographic orders utilities anddecisionrules a surveyrdquo Management Science vol 20 pp 1442ndash14711974

[27] A Charnes and W W Cooper ldquoGoal programming and mul-tiple objective optimizationsrdquo European Journal of OperationalResearch vol 1 no 1 pp 39ndash54 1977

[28] K A de Jong Evolutionary Computation a Unified ApproachMIT Press Cambridge Mass USA 2006

[29] N Padhye P Bhardawaj and K Deb ldquoImproving differentialevolution through a unified approachrdquo Journal of Global Opti-mization vol 55 no 4 pp 771ndash799 2013

[30] O Sigmund ldquoOn the design of compliant mechanisms usingtopology optimizationrdquo Mechanics of Structures and Machinesvol 25 no 4 pp 493ndash524 1997

[31] M P Bendsoslashe and O Sigmund Topology Optimization TheoryMethod and Application Springer Berlin Heidelberg BerlinGermany 2003

[32] Z Luo L Chen J Yang Y Zhang and K Abdel-MalekldquoCompliant mechanism design using multi-objective topologyoptimization scheme of continuum structuresrdquo Structural andMultidisciplinary Optimization vol 30 no 2 pp 142ndash154 2005

[33] L Cao A T Dolovich A L Schwab J L Herder and WZhang ldquoToward a unified design approach for both compliantmechanisms and rigid-body mechanisms module optimiza-tionrdquo Journal of Mechanical Design vol 137 no 12 Article ID122301 2015

[34] H B Demuth M H Beale O Jess De andM T HaganNeuralNetwork Design 2nd edition 2014

[35] D E Rumelhart G E Hinton and R J Williams ldquoLearningrepresentations by back-propagating errorsrdquo Nature vol 323no 6088 pp 533ndash536 1986

[36] R Hecht-Nielsen ldquoTheory of the backpropagation neural net-workrdquo in Proceedings of the International Joint Conference onNeural Networks (IJCNN rsquo89) vol 1 pp 593ndash605 WashingtonDC USA June 1989

[37] FDanForesee andMTHagan ldquoGauss-Newton approximationto Bayesian learningrdquo in Proceedings of the International Con-ference on Neural Networks (IJCNN rsquo97) vol 3 pp 1930ndash1935IEEE Houston Tex USA June 1997

[38] L E Scales Introduction to Non-Linear Optimization Macmil-lan Education UK London 1985

[39] M H Beale M T Hagan and H B Demuth Neural NetworkToolbox119879119872Userrsquos Guide forMATLABR2012a NatickMA USA2012

[40] K Levenberg ldquoA method for the solution of certain non-linearproblems in least squaresrdquo Quarterly of Applied Mathematicsvol 2 pp 164ndash168 1944

[41] D Marquardt ldquoAn algorithm for least-squares estimation ofnonlinear parametersrdquo SIAM Journal on Applied Mathematicsvol 11 no 2 pp 431ndash441 1963

[42] J S Armstrong and F Collopy ldquoErrormeasures for generalizingabout forecasting methods empirical comparisonsrdquo Interna-tional Journal of Forecasting vol 8 no 1 pp 69ndash80 1992

[43] C Audet and J Dennis ldquoAnalysis of generalized pattern search-esrdquo SIAM Journal on Optimization vol 13 no 3 pp 889ndash9032002

[44] P E Gill W Murray andM HWright Practical OptimizationAcademic Press 1981

[45] R Fletcher Practical Methods of Optimization John Wiley ampSons New York NY USA 2nd edition 2000

[46] P E Gill W Murray and M H Wright Numerical LinearAlgebra and Optimization Addison-Wesley 1991

[47] A R Conn N I Gould and P Toint ldquoA globally convergentaugmented Lagrangian algorithm for optimization with generalconstraints and simple boundsrdquo SIAM Journal on NumericalAnalysis vol 28 no 2 pp 545ndash572 1991

[48] A R Conn N Gould and P L Toint ldquoA globally convergentLagrangian barrier algorithm for optimization with generalinequality constraints and simple boundsrdquo Mathematics ofComputation vol 66 no 217 pp 261ndash288 S1ndashS11 1997

[49] T G Kolda R M Lewis and V J Torczon ldquoA generating setdirect search augmented Lagrangian algorithm for optimizationwith a combination of general and linear constraintsrdquo Tech RepSAND2006-5315 Sandia National Laboratories USA 2006

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 5: Optimizing the Geometry of Flexure System Topologies Using the …web.cs.ucla.edu/~ahatamiz/BLOT.pdf · 2019-10-24 · synthesized topology using dierent geometric parameter values

Mathematical Problems in Engineering 5

values and the output layer) utilizes an activation function[4] 119886(119899) In this paper we employ the hyperbolic tangentsigmoid function [34] defined by

119886 (119899) = 119890119899 minus 119890minus119899119890119899 + 119890minus119899 (1)

The output from each activation function passes from onehidden layer of neurons to the next until the output layeris reached where this paper employs the linear activationfunction [34] 119892(119899) = 119899 to produce the final output 119891119895This process is called forward propagation because of thedirection in which the mathematics propagates or flows Todemonstrate how the mathematics flows within the networkdiagramed in Figure 2 consider the neuron highlighted bythe dotted red box The 119899 value that is plugged into thefunction of (1) corresponding to this highlighted neuron is

119899 = (1199091 sdot 119908111) + (1199092 sdot 119908211) + (1199093 sdot 119908311) + 11988711 (2)

Once a sufficient number of known input and targetoutput values have been numerically calculated variousmethods can be employed to use these values to iterativelytune the weights 119908119890119905119897 and biases 119887119905119897 within a neuralnetwork such that it can link any set of input values withinthe design space to accurate output values (ie the networkcan be trained to create an accurate predictive model)A popular way to tune the weights and biases is calledback propagation [35 36] The input values are normalizedand fed into the network using initial-guess weights andbiases The resulting outputs are compared against the targetoutputs that are known to be correct from a priori numericalsimulation A gradient vector of the resulting error withrespect to each weight and bias is then used to tune thesevalues in the opposite direction of the gradient vector Byrepeating this process numerous times the network canbe trained to accurately predict the correct output valuesA variation of the back propagation training method (ieBayesian Regularization [37 38]) was used to train the neuralnetworks that model the flexure system topologies of thispaper

The specific iterative process used in the BLOT to gener-ate accurate models of general FACT-synthesized topologiesis as follows A user provides a MATLAB script with theindependent geometric parameters that define the desiredflexure topology The smallest and largest values for each ofthese parameters are also provided to the script to specifythe full design space over which the resulting model willaccurately predict The script then begins by generating allthe possible design instantiations that result from applyingevery combination of these smallest and largest values withthree other evenly spaced values in between them (eg 119879min(3119879min + 119879max)4 (119879min + 119879max)2 (119879min + 3119879max)4 and119879max) for every independent parameter to the topologyrsquosgeometry Each resulting design instantiation is checked forgeometric compatibility against various geometric constraintfunctions which are specific to their topologyThe geometricconstraint function imposed on the design instantiationsof the example topology labeled in Figure 1(f) is 119882 minus2119879 gt 0 Then the MATLAB script passes the resulting

design instantiations that are geometrically compatible to aPYTHON script that automatically creates computer-aided-design (CAD) models of these instantiations defines theirconstitutive materials meshes their models and appliesthe desired boundary and loading conditions This scriptthen performs the FEA simulation in parallel batches usingABAQUS to produce the target output values that correspondwith each design instantiation defined by the given inputvalues Thus large amounts of data can be acquired withinthe design space of general flexure topologies using theautomated scripts

The numerically generated data is then randomly dividedamong two different sets 80 of the data is assigned to atraining set and the remaining 20 is assigned to a testing setThe training set of data is used to train a neural network thatpossesses an initial-guess architecture with two hidden layersand an output layer with only one neuron The number ofneurons in the first hidden layer is initially set to 20 neuronsand the number of neurons in the second hidden layer isinitially set to zero The modified mean squared error [39]119864training is calculated for the training set of data using thisinitial-guess network architecture with initial-guess weightsand biasesTheBayesianRegularization algorithm then trainsthe architecture by updating the weights and biases withinthe network using the gradient of 119864training for each iteration asdescribed previously until one of the following five conditionsis satisfied(1) Training is stopped once an excessively large numberof iterations have occurred For this paper 1000 iterationswere used as the cutoff(2) Training is stopped once an excessive amount of timehas lapsed For this paper the cutoff time was set to 10 hours(3) Training is stopped once the modified mean squarederror of the training set of data 119864training reaches a smallenough number For this paper the number was set to 10minus12(4) Training is stopped once the gradient of the modifiedmean squared error of the training set of data 119864trainingbecomes very small For this paper 10minus7 is used as the cutoff(5) Training is stopped once the damping factor [40 41]used within the Bayesian Regularization algorithm exceeds acertain value For this paper the damping factor cutoff wasset to 1010

After training has stopped the mean absolute percentageerror [42] MAPEtotal for the total set of training and testingdata combined is calculated using

MAPEtotal = 100119873total

119873totalsum119896=1

100381610038161003816100381610038161003816100381610038161003816119876119896total minus 119867119896total

119876119896total100381610038161003816100381610038161003816100381610038161003816 (3)

where 119873total is the total number of target output values fromboth the training and testing sets combined 119876119896total are thetarget output values from both the training and testing setsand119867119896total are all the corresponding predicted output valuescalculated using the current trained network In generalthe smaller a trained networkrsquos MAPEtotal is the better thetrained neural network can model the behavior of the flexuresystem topology

6 Mathematical Problems in Engineering

Thus the MAPEtotal of the trained initial-guess networkarchitecture (ie 20 neurons in the first hidden layer and0 neurons in the second hidden layer) is used as the start-ing point for optimizing the networkrsquos architecture Patternsearch [43] which is described in Section 3 in detail isused to optimize the number of neurons in the networkrsquosarchitecture in two different phases In the first phase patternsearch is used to optimize an architecture with no neuronsin the second hidden layer For this phase the lower boundof neurons in the first hidden layer is set to 5 and the upperbound is set to 40 The input tolerance (The MathWorksInc) is set to 1 the initial mesh size (The MathWorks Inc)is set to 8 and the expansion factor (The MathWorks Inc)is set to 2 The cost function that is minimized for thisoptimization is MAPEtotal defined in (3) Once the besttrained network architecture is found using this first hiddenlayer optimization (ie the trained network architecture withthe smallest MAPEtotal) the mean absolute percentage errorof the training MAPEtraining and testing MAPEtesting datasets is each calculated using (3) for this best trained networkarchitecture but with the subscripts currently labeled ldquototalrdquoreplaced by the words ldquotrainingrdquo and ldquotestingrdquo respectively Ifboth of these values (ie MAPEtraining and MAPEtesting) areequal to or less than 35 the neural network is used as theinitial model of the FACT-synthesized flexure topology Ifhowever eitherMAPEtraining orMAPEtesting is greater than 35the second phase of the network architecture optimization isinitiated In the second phase pattern search is again usedto optimize a network architecture but with 40 neurons inthe first hidden layer and an initial-guess of 4 neurons inthe second hidden layer For this phase the lower bound ofneurons in the second hidden layer is set to 1 and the upperbound is set to 15The input tolerance is again set to 1 and theexpansion factor is again set to 2The best number of neuronsin the second hidden layer of the network with 40 neuronsin the first hidden layer is identified by minimizing thesame cost function in (3) MAPEtotal Once the best trainednetwork architecture is found using this second hidden layeroptimization the mean absolute percentage error of thetraining MAPEtraining and testing MAPEtesting data setsis each calculated using (3) for this best trained networkarchitecture but with the subscripts currently labeled ldquototalrdquoreplaced by the words ldquotrainingrdquo and ldquotestingrdquo respectively Ifboth of these values (ie MAPEtraining and MAPEtesting) areequal to or less than 35 the neural network is used as theinitial model of the FACT-synthesized flexure topology Ifhowever eitherMAPEtraining orMAPEtesting is greater than 35the trained network architecture with the lowest MAPEtotalfound from the network optimization of both the first andsecond phase is used as the initial model of the FACT-synthesized flexure topology

Thus using minimal computation an initial model ofgeneral FACT-synthesized flexure system topologies can beidentified Note thatmany of the hard numbers chosen in thissection were selected for rapidly generating accurate modelsof flexure system topologies with less than sim10 independentgeometric parametersThe numbers in this section may needto be adjusted for scenarios with larger numbers of inputparameters

3 Plotting Performance Boundaries

This section discusses the portion of the BLOT that utilizesthe models of flexure system topologies generated fromSection 2 to plot their performance capability boundariesRecall that the geometric parameters of a flexure systemtopology (eg 119882 119879 and 119871 for the topology of Figure 1(f))are its modelrsquos inputs 119909119894 and the performance capabilities(eg range of motion and natural frequency for the exampleof Figure 1(f)) achieved by the design instantiations that aredefined by these corresponding input parameters are themodelrsquos outputs 119891119895 For this section a theoretical exampleof a system with only two inputs 1199091 and 1199092 will be used toconceptually explain the algorithm that plots the boundarythat circumscribes the systemrsquos full design space for two ofthe systemrsquos achievable outputs 1198911(1199091 1199092) and 1198912(1199091 1199092)

The boundary-plotting algorithm first requires the small-est and largest values of each input parameter 119909119894min and119909119894max respectively as well as resolution increment valuesΔ119909119894 for each input parameter Constraint functions shouldalso be provided to define what combination of input valuesare permissible (eg 119882 minus 2119879 gt 0 for the example ofFigure 1(f)) For the theoretical example of this section theconstraint function is shown as the red spline boundary linein Figure 3(a)

The algorithm begins by supplying a randomly selectedcombination of permissible inputs shown as the blue dotlabeled 11987411 in Figure 3(a) to the Sequential QuadraticProgramming (SQP) [44 45] optimization algorithm Thisalgorithm first identifies a set of other permissible inputcombinations that result from adding and subtracting theresolution increment of each input Δ119909119894 to and from the firstrandomly selected combination of inputs along each inputrsquosaxis For the example of Figure 3(a) this first set of inputcombinations are shown as the four blue dots immediatelysurrounding the blue dot labeled 11987411 Note that althoughΔ1199091 is shown as being equal to Δ1199092 in the example theseresolution increments do not have to be equal for otherscenarios The systemrsquos model is then used to map all of thecombinations of these inputs to their corresponding com-binations of outputs which are represented by the five bluedots shown in Figure 3(b) Note that the original input dot11987411 maps to the output dot 11988511 The SQP algorithm thenapproximates the gradient (ie first derivatives) and Hessianmatrix (ie the symmetric matrix of second derivatives) ofthe objective function defined by

119869 (1199091 1199092) = cos (120579) 1198912 (1199091 1199092) + sin (120579) 1198911 (1199091 1199092) (4)

using the input and output combinations (ie the adjacentblue dots in Figures 3(a) and 3(b)) where 120579 in (4) is initiallyset to 0 so that the largest 1198912 output can be pursued firstThis gradient and Hessian matrix are then used to constructa Quadratic Programming (QP) subproblem [46] whichis solved to determine another combination of inputs thatwill map to combinations of outputs that produce a largerobjective function value In the example of Figure 3 supposethe new combination of inputs determined is shown as thered dot labeled 11987412 in Figure 3(a) Note that this dotrsquoscorresponding combination of outputs which is shown as the

Mathematical Problems in Engineering 7

Constraintfunction

x1

x2

O13

O12

O21

O11

O14

r2

Δx2

(a)

Z14

Z13

Z12

Z11

Z21

= 0

= Δ

f1(x1 x2)

f2(x

1x

2)

(b)

Constraintfunction

x1

x2

O22

O21

(c)

Z21 Z22

= 0

= Δ

f1(x1 x2)

f2(x

1x

2)

(d)

Figure 3 Progression of the SQP and then ALPS optimization algorithms for 120579 = 0 initialized in the objective function in the input space(a) and in the corresponding output space (b) continued progression of the same optimization algorithms for 120579 = Δ120579 incremented in theobjective function in the same input space (c) and in the same output space (d)

red dot labeled 11988512 in Figure 3(b) possesses 1198912 value thatis larger than any of the other previous blue dots shown inthe same figure The SQP algorithm then repeats this processby finding another set of permissible input combinations thatresult from adding and subtracting the resolution incrementof each inputΔ119909119894 to and from the new combination of inputs(ie 11987412 from Figure 3(a)) along each inputrsquos axis For theexample of Figure 3(a) this new set of input combinationsare shown as the four red dots immediately surroundingthe red dot labeled 11987412 Note that each of the five reddots in Figure 3(a) maps to a corresponding red dot inFigure 3(b)Thus the SQP algorithm rapidly finds an efficientpath toward a local maximum of the objective function byiteratively stepping from one cluster of dots to the next inthis manner The SQP algorithm terminates when either (i)the step distance from one central dot to the next (eg thedistance between11987411 and11987412 in Figure 3(a)) is smaller thanthe prescribed resolution of the input parameters Δ119909119894 or (ii)the process fails to generate the next step which typically

occurs because the first or second derivatives of the objectivefunction cannot be calculated The latter reason typicallyoccurs when the algorithm encounters discontinuities withinthe objective function

After the SQP algorithm terminates the boundary-plotting algorithm of this paper continues the optimizationprocess by supplying the combination of permissible inputsthat map to the combination of outputs that produce thelargest objective function value identified by the SQP algo-rithm to the Augmented Lagrangian Pattern Search (ALPS)[47ndash49] optimization algorithm For the example of Fig-ure 3(a) suppose the SQP process was unable to step beyondthe cluster of dots surrounding 11987412 and thus terminatedat that location The combination of inputs that would besupplied to the ALPS algorithm would be the red dot labeled11987413 in Figure 3(a) since this combination of inputs mapsto the combination of outputs that achieve the largest 1198912value found using the SQP algorithm This combination ofoutputs is shown as the red dot labeled 11988513 in Figure 3(b)

8 Mathematical Problems in Engineering

The ALPS algorithm first identifies a set of other permissibleinput combinations that result from adding and subtractingan initial mesh size 119903119894 to and from the combination of inputssupplied to the algorithm along each inputrsquos axis The initialmesh size labeled 1199032 in Figure 3(a) is typically set to 20of the range of its corresponding input parameter (ie 119903119894 =02|119909119894max minus 119909119894min|) For the example of Figure 3(a) the firstset of ALPS-generated input combinations are shown as thefour purple dots surrounding the red dot labeled 11987413 Notethat although 1199031 is shown as being equal to 1199032 in the examplethese mesh sizes are not typically equal for other scenariosThe systemrsquos model is then used to map the combinations ofthese inputs to their corresponding combinations of outputswhich are represented by the four purple dots shown inFigure 3(b)TheALPS algorithm then identifies if any of thesecombinations of inputs map to a combination of outputs thatproduce an objective function value that is larger than anyproduced previously in the optimization process Supposefor instance that the input combination of the example inFigure 3(a) labeled 11987414 maps to the output combinationlabeled11988514 in Figure 3(b) which achieves the largest1198912 valuepreviously identified The ALPS algorithm would then stepto the dot representing that input combination (eg 11987414)The algorithm would then identify a set of other permissibleinput combinations that result from adding and subtractingthe previous mesh size (eg 119903119894 in this case) multiplied byan expansion factor to and from this combination of inputsalong each inputrsquos axis For this paper the expansion factoris set to 2 Thus for the example of Figure 3(a) the nextset of ALPS-generated input combinations are shown as thethree orange dots surrounding the purple dot labeled 11987414These orange input dots shown in Figure 3(a) map to thethree orange output dots shown in Figure 3(b)The algorithmthen identifies if any of these output combinations producean objective function value that is larger than any producedpreviously in the optimization process Since none of theorange dots in Figure 3(b) possess an 1198912 value that is largerthan 11988514 the ALPS algorithm would then identify a setof other permissible input combinations that result fromadding and subtracting the previousmesh size (eg 2119903119894 in thiscase) divided by the same expansion factor to and from thecombination of inputs labeled 11987414 in Figure 3(a) along eachinputrsquos axis Thus for the example of Figure 3(a) the next setofALPS-generated input combinations are shown as the threelight-green dots surrounding the same purple dot labeled11987414These light-green input dots shown in Figure 3(a)map tothe three light-green output dots shown in Figure 3(b) Againsince none of the light-green dots in Figure 3(b) possessan 1198912 value that is larger than 11988514 the ALPS algorithmwould then identify another set of other permissible inputcombinations that result from adding and subtracting theprevious mesh size (eg 119903119894 in this case) divided by the sameexpansion factor to and from the combination of inputslabeled 11987414 in Figure 3(a) along each inputrsquos axis Thus forthe example of Figure 3(a) the next set of ALPS-generatedinput combinations are shown as the four dark-green dotssurrounding the same purple dot labeled 11987414 This processrepeats until either (i) one of the new input combinationsmaps to an output combination with an objective function

value that is larger than any produced previously or (ii) themesh size becomes equal to or less than a specified inputtolerance which for this paper is set to the resolution ofthe input parameters Δ119909119894 If the first option (i) occursthe algorithm will step to the improved input combinationand the ALPS process will continue iterating If the secondoption (ii) occurs the ALPS algorithmwill terminate For theexample of Figure 3(a) the second option occurred becausethe mesh size of the four yellow dots shown immediatelysurrounding the purple dot labeled 11987414 is equal to Δ1199092labeled in the same figure and none of the new output dotsgenerated ever surpassed the 1198912 value of 11988514 as shown inFigure 3(b)

Once the SQP and then ALPS algorithms have bothrun their full course for determining the maximum valueof 119869(1199091 1199092) from (4) for 120579 = 0 the 120579 parameter is thenincrementally increased by Δ120579 which is typically set to avalue between 12058710 to 12058720 Using this new 120579 parameter thealgorithm then computes the value of the objective functionin (4) for all existing input combinations which for theexample of this section are shown as the dots in Figure 3(a)From these input combinations the one that produces thelargest objective function value for 120579 = Δ120579 correspondsto the input combination represented by the dot labeled11987421 in Figure 3(a) which maps to the output combinationrepresented by the orange dot labeled 11988521 in Figure 3(b)The algorithm would then supply this input combinationto the SQP algorithm to generate more input combinationsthat produce larger objective function values as describedpreviously The four blue dots immediately surrounding thedot labeled 11987421 in Figure 3(c) would be identified firstfor the example of this section using this approach Thosefour blue dots map to the four new blue dots shown inFigure 3(d) that surround the dot labeled 11988521 The SQPalgorithm would then identify the next input combination(eg 11987422 shown in Figure 3(c)) that produces a largerobjective function value Note that the input combinationdot 11987422 maps to an output combination dot labeled 11988522in Figure 3(d) that is farther away along the directionprescribed by the new 120579 parameter value (ie Δ120579) As theSQP algorithm continues four other input combinationswould be identified that immediately surround the inputcombination dot labeled 11987422 in Figure 3(c) These dots arecolored red in Figure 3(c) Note however that one of thenew dots lies outside the red spline line and thus represents adesign instantiation that violates the geometric compatibilityconstraints imposedThus only three of the new surroundingdots map to permissible output combinations as shown inFigure 3(d) The SQP algorithm would continue in this wayuntil it terminates The ALPS algorithm would then takeover where the SQP algorithm left off as described previouslyuntil the ALPS algorithm also terminates Once the ALPSalgorithm terminates the algorithmwill have found the inputcombination that achieves the largest objective function valueidentified from among those previously tested for 120579 = Δ120579

The algorithm iterates this pattern of steps to identify thecombinations of output values that lie farthest away alongtheir prescribed directions defined by their corresponding120579 value in a clockwise fashion until 120579 ge 2120587 (ie all the

Mathematical Problems in Engineering 9

directions have been swept) It is important to note that anytime before the 120579 parameter is incrementally advanced theobjective function of (4) is rechecked for every combinationof input values that have been evaluated up to that point tomake sure that each of the previously identified output dotsthat are used to be the farthest away along their prescribeddirections is still the farthest away If a new dot is everidentified that is farther away than a previous dot along aspecific direction 120579 (ie if a new dot exceeds the dashed linesin Figure 3(b)) the iterative process is reset to that directionand the process continues using that improved output dot

Once this process is complete the MATLAB boundaryfunction (The MathWorks Inc) can be used to identifyall the combinations of output values that lie along theboundary of a convex shape that circumscribes the outputdots calculated and plotted using the systemrsquos model duringthe iterative processMany systems however produce a cloudof output dots that form a concavemdashnot convexmdashregionlike the one shown in Figure 4(a) If the output dots foundusing the MATLAB boundary function are used to definethe boundary of the example in Figure 4(a) the result wouldbe the red boundary shown in Figure 4(b) This boundarywould grossly overestimate the actual systemrsquos achievableperformance space since it is convex instead of concave likethe cloud of output dots Thus to address this issue theBLOT identifies all the vectors that point from each outputdot along the existing boundary to their neighboring dotson the same boundary The magnitude ℎmax of the longestvector is identified because this vector points between thetwo output dots (eg 119885ℎ1 and 119885ℎ2 shown in Figure 4(b)) thatusually correspond to the opening of a previously unknownconcave boundaryThe BLOT then computes a new objectivefunction 119869119892(1199091 1199092) defined by

119869119892 (1199091 1199092) = (cos21205721198772 + sin2120572)

sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )2

+ ( sin21205721198772 + cos2120572)

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )2 + 2sdot sin120572 cos120572( 1

1198772 minus 1)sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )

(5)

for all the input combinations that have been previouslyevaluated for 119877 = 1 This objective function is minimizedto identify output combinations that lie within circular orelliptical regions like those shown in Figure 4(c) If the119877 variable in (5) is 1 the region is a circle If however

this variable increases it becomes an increasingly elongatedellipse as shown in Figure 4(c) The angle 120572 in (5) is definedby

120572 = arctan(1198911119885ℎ2 minus 1198911119885ℎ11198912119885ℎ1 minus 1198912119885ℎ2) (6)

where1198911119885ℎ1 and1198912119885ℎ1 from (5) and (6) are the horizontal andvertical components of the119885ℎ1 dot labeled in Figure 4(c) and1198911119885ℎ2 and 1198912119885ℎ2 are the horizontal and vertical componentsof the 119885ℎ2 dot labeled in the same figure After the BLOTcomputes the objective function of (5) for all the inputcombinations that have been previously evaluated for 119877 = 1it identifies the existing input combination that produces thesmallest objective function value This input combination isthe combination that maps to the output combination thatis closest to the center of the circle shown in Figure 3(c)If no output dots are found within the circle the inputcombination corresponding to either the output dot 119885ℎ1 or119885ℎ2 will be chosen as the closest to the center of the circleand is thus supplied to the SQP and then ALPS algorithmdescribed previously to evaluate new input combinations Forthis SQP-ALPS optimization however the objective functionin (5) is minimized for 119877 = 1 instead of maximizing theobjective function of (4) for different values of 120579 as wasdone previously Suppose for the example of Figure 4 thatwhen this optimization is performed the new group of blueoutput dots shown in Figure 4(c) is generated Since none ofthese output dots lie within the center of the circle shownin the figure the previous 119877 value in the objective functionof (5) is multiplied by a factor of 2 and the search regionis expanded to an ellipse shown in Figure 4(c) Figure 4(e)shows the elliptical contour diagram of 119869119892(1199091 1199092) for this 119877value (ie 119877 = 2) If no output dots are found within thenew ellipse the process continues to iterate by multiplyingthe previous 119877 value by the same factor of 2 to increase theelliptical search region further For the example of Figure 4(c)however there are output dots that lie within the ellipticalsearch region corresponding to 119877 value of 2 Thus the inputcombination that maps to the output dot that lies within thisregion and possesses the smallest objective function value for119877 = 2 is supplied to the SQP-ALPS optimization algorithmto identify an even better output dot that achieves an evensmaller objective function value This process will producenew output dots (eg the new set of orange dots shownin Figure 4(e)) Whether these new output dots achieve asmaller objective function value or not the output dot thatachieves the smallest objective function value is identifiedand considered part of the systemrsquos performance boundaryIt is thus redefined as either 119885ℎ1 or 119885ℎ2 In the example ofFigure 4(e) the 119885ℎ2 output dot is the one that is redefinedNote also that ℎmax is also updated This boundary learningprocess is repeated until both (i) the horizontal componentof the boundary vector with the largest magnitude (ieℎmax) is less than a set percentage of the horizontal distanceacross the full cloud of output values and (ii) the verticalcomponent of the same vector is also less than the samepercentage of the vertical distance across the same cloudThis percentage threshold is typically set between 5 and

10 Mathematical Problems in Engineering

f1(x1 x2)

f2(x

1x

2)

(a)

f1(x1 x2)

f2(x

1x

2)

ℎGR

Zℎ1

Zℎ2

(b)

Zℎ1

Zℎ2

R = 2

R = 1

f1(x1 x2)

f2(x

1x

2)

(c)

Decreasing value

Zℎ1

Zℎ2

of Jg(x1 x2)

f1(x1 x2)

f2(x

1x

2)

(d)

Zℎ1

ℎGR

Zℎ2

f1(x1 x2)

f2(x

1x

2)

(e)

f1(x1 x2)

f2(x

1x

2)

(f)

Figure 4 Generated cloud of output dots (a) convex boundary first identified (b) new objective functionminimized to identify other outputdots within circular or elliptical regions (c) elliptical contour diagram of the new objective function with an 119877 value of 2 (d) boundary isupdated with a new ℎmax value (e) process successfully identifies boundaries that are concave (f)

10 Additionally before the largest boundary vector isupdated with a new magnitude (ie ℎmax) the entire opti-mization process of this section is repeated using the previousobjective function in (4) for all 120579 values to ensure thatany new dots evaluated since using that objective functionare allowed to improve the boundaryrsquos accuracy if possible

In this way both convex and concave boundaries like theconcave boundary shown in Figure 4(f) can be identifiedthat accurately define the systemrsquos achievable performancespace

A simple case study is performed to validate the per-formance of the boundary tracing algorithm of this section

Mathematical Problems in Engineering 11

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(a)

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(b)

Figure 5 Output values of a full parameter sweep (a) boundary identified for the same example using BLOT (b)

Suppose that three normalized input parameters 1199011 1199012 and1199013 map to two output functions 1198911 and 1198912 according to1198911 (1199011 1199012 1199013) = 11990131 + 1

211990121198912 (1199011 1199012 1199013) = 11990133 + 1

21199012(7)

If the input parameters are constrained according to

101199011 + 1199012 + 101199013 le 1511990121 + 1

10011990122 + 11990123 le 1 (8)

and each parameterrsquos smallest and largest values range from0 to 1 with a resolution increment of 001 the boundary ofthe region achieved by the functions of (7) can be found byplotting the output values for every permissible input valueFigure 5(a) shows all of these output values plotted as bluedots Another way to find the desired boundary but withmuch fewer calculations is to apply the algorithm of thissection as described The results are shown in Figure 5(b)Note that the algorithm identified a boundary (Figure 5(b))that is very close to the true boundary that contains the outputvalues (Figure 5(a)) after calculating and plotting only 2612dots instead of the 745298 dots that were calculated andplotted for the full parameter sweep of Figure 5(a)

4 Iterative Model and Boundary Refinement

This section provides the iterative process used to refinethe initial neural network-system models generated usingthe theory of Section 2 as well as their correspondingperformance capability boundary identified using the theoryof Section 3 Note that a single neural network is trainedfor each desired output performance capability plotted (egone neural network is trained to predict the flexure systemrsquos

range of motion for the example of Figure 1(f) and another istrained to predict its natural frequency) The process beginsby identifying all the design instantiations that lie along thefirst boundary plotted using the initial system models Theautomated FEM approach discussed in Section 2 is then usedto calculate their desired performance capabilities and theresults are saved as new sets of data called boundary setsThecombined MAPEboundary of both sets of output performancecapabilities is calculated using (3) but with all the subscriptslabeled ldquototalrdquo replaced by the word ldquoboundaryrdquo and where119873boundary is the total number of target output values frombothsets of output performance capabilities summed together Ifthe resulting MAPEboundary is equal to or less than 10 theneural network models pertaining to each output perfor-mance capability are used to generate the final boundary Ifhowever thisMAPEboundary is greater than 10 80 of the newdata is randomly added to the former training set of datadescribed in Section 2 for each of the corresponding neuralnetwork models The remaining 20 of the boundary dataset is added to the former testing set of data also describedin Section 2 The entire process of Sections 2 through 4 isthen repeated as new boundary data is added to the fullbody of previously acquired FEMdata until theMAPEboundaryis equal to or less than 10 Once this condition is satisfiedthe final neural network models used to predict the outputperformance capabilities are used to plot the final boundaryof the systemrsquos performance capabilities using the theory inSection 3 In this way all the points that constitute the finalperformance boundary plotted using BLOT for any flexuresystem are guaranteed to be accurate within an average errorof 10 or less

5 Flexure System Case Study Using the BLOT

This section uses the FACT-synthesized flexure system topol-ogy of Figure 1(f) as a detailed case study to demonstratethe capabilities of the BLOT Suppose that the smallest and

12 Mathematical Problems in Engineering

T = 10 mmL = 995 mmW = 100 mm T = 25 mm

L = 15 mmW = 100 mm

10minus1

10minus2

10minus3

10minus4

10minus5

10minus6

Tran

slatio

nal D

OF

Nor

mal

ized

rang

e of m

otio

n

100 10210minus4 10minus210minus6

Translational DOF natural frequency (kHz)

dradic

W2+L2

(a)

T = 25 mmL = 15 mmW = 100 mm

102

100

10minus2

10minus4

10minus6

Rota

tiona

l DO

F

100 10210minus4 10minus210minus6

Rotational DOF natural frequency (kHz)

rang

e of m

otio

(deg

rees

)

T = 10 mmL = 995 mmW = 100 mm

(b)

Figure 6 Boundaries of the topologyrsquos achievable ranges of motion and natural frequencies corresponding to the translational (a) androtational (b) DOF generated by the BLOT

largest values for each of the case studyrsquos three independentparameters (ie 119882 119879 and 119871) its resolution increment andthe properties of its constituent material are all set to bethe same values as those given in Section 1 Using the 119882 minus2119879 gt 0 constraint function provided earlier the BLOT canbe used to train various neural networks to create modelsthat map any desired geometric parameter values within thedesign space to design instantiations that achieve desiredperformance capabilities The performance capabilities ofinterest to this case study included (i) the topologyrsquos rangeof motion along its translational DOF direction as shownin Figure 1(d) (ii) the natural frequency of the topologythat corresponds with the mode shape of its translationalDOF (iii) the topologyrsquos angular range of motion aboutits rotational DOF as shown in Figure 1(e) and (iv) thenatural frequency of the topology that corresponds withthe mode shape of its rotational DOF The PYTHON scriptthat automates the collection of all the target data was setto ground the entire top surface of the fixed body shownwith thatched lines in Figure 1(f) on the side where the fourwire elements are attached The range of motion of eachdesign instantiation along the direction of the translationalDOF was calculated using FEA simulations by applying ashear force on the entire bottom face of the systemrsquos stageon the side where the four wire elements are attached Themagnitude of this shear force was gradually increased untilany portion within the system began to yield according toMises yield criterion The largest amount the stage translatedbefore reaching this yield criterion was defined to be therange ofmotion119889 of the corresponding design instantiationThis range of motion was normalized by dividing it byits characteristic length radic1198712 +1198822 The angular range ofmotion of each design instantiation about the rotationalDOF was also calculated using FEA simulations by applyingtwo opposing shear forces on either side of the systemrsquosstage to create a pure moment along the direction of theaxes of the wire elements The magnitude of this momentwas gradually increased until any portion within the systembegan to yield according to Mises yield criterion The largestamount the stage rotated before reaching this yield criterionwas defined to be the angular range of motion Φ of the

corresponding design instantiation The natural frequencies120596119899 corresponding to both of the translational and rotationalDOF mode shapes for each design instantiation were alsocalculated using finite element modal analysis simulationsA unique neural network with a single neuron output layerwas trained for each of the four performance capabilities ofinterest

Once the BLOT successfully created four accuratemodelsof the flexure system topology of Figure 1(f) by training fourneural networks to each map arbitrary design instantiationsof the topology to any of the four desired performancecapabilities of interest the BLOT then plotted final bound-aries that circumscribe the achievable combinations of theseperformance capabilities The boundary corresponding tothe normalized range of motion and natural frequency ofthe mode shape along the direction of the translationalDOF is show in Figure 6(a) Note that this was the sameboundary provided in Figure 1(g) but the plot in Figure 6(a)includes the colored output dots used to identify the finalboundary The geometric parameters for two optimizeddesign instantiations that span between the optimal portionof the boundary are provided in Figures 1(g) and 6(a)Other optimal design instantiations can be selected fromthis portion of the boundary to achieve different maximumcombinations of the performance capabilities The boundarycorresponding to the angular range of motion and naturalfrequency of the mode shape about the rotational DOF isprovided in Figure 6(b) Note that the two optimal designinstantiations shown as large black dots within the plots ofFigures 1(g) and 6(a) are also plotted in their correspondinglocations within the boundary provided in Figure 6(b)Although these design instantiations are not the two optimaldesign instantiations within the plot of Figure 6(b) they areclose to the optimal instantiations which are shown as largewhite dots in Figure 6(b) Finally it is worth noting thatthe plots of Figure 6 are presented using a log-log scaleSince such plots can never achieve zero or negative valuesthe BLOT establishes a cutoff threshold when identifying theboundary tomore rapidly and clearly define a practical regionof achievable performance capabilitiesThis threshold was setto 10minus6 for the plots of Figure 6

Mathematical Problems in Engineering 13

6 Conclusions and Future Work

This paper introduces an optimization tool called the Bound-ary Learning Optimization Tool (BLOT) which utilizes anautomated method for training neural networks to createaccurate models of general flexure system topologies syn-thesized using the FACT approach The BLOT uses thesemodels to plot the boundaries of regions containing thecombinations of desired performance capabilities that areachievable by different design instantiations of the FACT-synthesized topologies Both the neural network training andboundary identification portions of the BLOT are iteratedusing additional boundary data until the final boundary isguaranteed to be accurate within a value specified by theuser (eg less than 10 average error) A flexure system isprovided and optimized as a case study

TheBLOTwill be used in future works to generate Ashby-like material plots but for different architectured materialtopologies instead of for natural materials to compare theachievable properties of such microarchitectured structurescomposed of the same material These plots will enableengineers to identify trends among architectured materialsthat result from microstructure instead of composition

Disclosure

A preliminary version of this paperrsquos theory was first pre-sented at ASMErsquos IDETC as paper no DETC2017-67465

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Authorsrsquo Contributions

Ali Hatamizadeh and Yuanping Song are co-first authors astheir contributions to this paper are equal

Acknowledgments

This work was supported by the Air Force Office of ScienceResearch under Award no FA9550-15-1-0321 Program officerByung ldquoLesrdquo Lee is gratefully acknowledged This workused computational and storage services associated withthe Hoffman2 Shared Cluster provided by UCLA Institutefor Digital Research and Educationrsquos Research TechnologyGroup

References

[1] J B Hopkins Design of Parallel Flexure Systems via Freedomand Constraint Topologies (FACT) Massachusetts Institute ofTechnology 2007

[2] J B HopkinsDesign of Flexure-Based Motion Stages for Mecha-tronic Systems via Freedom Actuation and Constraint Topologies(FACT) Massachusetts Institute of Technology 2010

[3] J B Hopkins ldquoDesigning hybrid flexure systems and elementsusing freedom and constraint topologiesrdquoMechanical Sciencesvol 4 no 2 pp 319ndash331 2013

[4] Y LeCun Y Bengio and G Hinton ldquoDeep learningrdquo Naturevol 521 no 7553 pp 436ndash444 2015

[5] J B Hopkins K J Lange and C M Spadaccini ldquoDesigningmicrostructural architectures with thermally actuated prop-erties using freedom actuation and constraint topologiesrdquoJournal of Mechanical Design vol 135 no 6 Article ID 0610042013

[6] M F Ashby Materials Selection in Mechanical Design Butter-worth-Heinemann 2005

[7] X P Cheng and R V Patel ldquoNeural network based trackingcontrol of a flexible macro-micro manipulator systemrdquo NeuralNetworks vol 16 no 2 pp 271ndash286 2003

[8] W He Y Chen and Z Yin ldquoAdaptive neural network controlof an uncertain robot with full-state constraintsrdquo IEEE Transac-tions on Cybernetics vol 46 no 3 pp 620ndash629 2016

[9] H Kobayashi and R Ozawa ldquoAdaptive neural network controlof tendon-driven mechanisms with elastic tendonsrdquo Automat-ica vol 39 no 9 pp 1509ndash1519 2003

[10] J Takeuchi and Y Kosugi ldquoNeural network representation offinite element methodrdquo Neural Networks vol 7 no 2 pp 389ndash395 1994

[11] R I Levin and N A J Lieven ldquoDynamic finite elementmodel updating using neural networksrdquo Journal of Sound andVibration vol 210 no 5 pp 593ndash607 1998

[12] E Boillat S Kolossov R Glardon M Loher D Saladinand G Levy ldquoFinite element and neural network models forprocess optimization in selective laser sinteringrdquo Proceedingsof the Institution of Mechanical Engineers Part B Journal ofEngineering Manufacture vol 218 no 6 pp 607ndash614 2004

[13] M Lefik ldquoHybrid finite element-artificial neural networkmodel for composite materialsrdquo Journal of Theoretical andApplied Mechanics vol 42 pp 539ndash563 2004

[14] Y M A Hashash S Jung and J Ghaboussi ldquoNumerical imple-mentation of a neural network based material model in finiteelement analysisrdquo International Journal for Numerical Methodsin Engineering vol 59 no 7 pp 989ndash1005 2004

[15] L Manevitz M Yousef and D Givoli ldquoFinite-element meshgeneration using self-organizing neural networksrdquo Computer-Aided Civil and Infrastructure Engineering vol 12 no 4 pp233ndash250 1997

[16] Z Li andD Cao ldquoConceptual Design of CompliantMechanismBased on Port Ontologyrdquo Advances in Mechanical Engineeringvol 5 p 401492 2015

[17] Y Qin and Z Feng ldquoStructural dynamicmodification of flexurehinge structure based on artificial neural networkrdquo AviationPrecision Manufacturing Technology vol 5 no 11 2006

[18] F G Kong Q Li and W J Zhang ldquoAn artificial neuralnetwork approach tomechanism kinematic chain isomorphismidentificationrdquo Mechanism and Machine Theory vol 34 no 2pp 271ndash283 1999

[19] E K Burke andGKendall Eds SearchMethodologies SpringerUS Boston MA USA 2005

[20] Y V Haimes L S Lasdon and D A Wismer ldquoOn a bicriterionformulation of the problems of integrated system identificationand system optimizationrdquo IEEE Transactions on Systems Manand Cybernetics vol SMC-1 pp 296-297 1971

[21] P L Yu ldquoA class of solutions for group decision problemsrdquoManagement Science vol 19 no 8 pp 936ndash946 1973

14 Mathematical Problems in Engineering

[22] A P Wierzbicki ldquoOn the completeness and constructiveness ofparametric characterizations to vector optimization problemsrdquoOR Spectrum vol 8 no 2 pp 73ndash87 1986

[23] A P Wierzbicki ldquoA mathematical basis for satisficing decisionmakingrdquo in Organizations Multiple Agents with Multiple Cri-teria vol 190 of Lecture Notes in Economics and MathematicalSystems pp 465ndash486 Springer Berlin Heidelberg Berlin Hei-delberg 1981

[24] I Das and J E Dennis ldquoNormal-boundary intersection a newmethod for generating the Pareto surface in nonlinear multi-criteria optimization problemsrdquo SIAM Journal on Optimizationvol 8 no 3 pp 631ndash657 1998

[25] D E Goldberg Genetic Algorithms in Search Optimizationand Machine Learning Addison-Wesley Longman PublishingBoston MA USA 1st edition 1989

[26] ldquoExceptional papermdashlexicographic orders utilities anddecisionrules a surveyrdquo Management Science vol 20 pp 1442ndash14711974

[27] A Charnes and W W Cooper ldquoGoal programming and mul-tiple objective optimizationsrdquo European Journal of OperationalResearch vol 1 no 1 pp 39ndash54 1977

[28] K A de Jong Evolutionary Computation a Unified ApproachMIT Press Cambridge Mass USA 2006

[29] N Padhye P Bhardawaj and K Deb ldquoImproving differentialevolution through a unified approachrdquo Journal of Global Opti-mization vol 55 no 4 pp 771ndash799 2013

[30] O Sigmund ldquoOn the design of compliant mechanisms usingtopology optimizationrdquo Mechanics of Structures and Machinesvol 25 no 4 pp 493ndash524 1997

[31] M P Bendsoslashe and O Sigmund Topology Optimization TheoryMethod and Application Springer Berlin Heidelberg BerlinGermany 2003

[32] Z Luo L Chen J Yang Y Zhang and K Abdel-MalekldquoCompliant mechanism design using multi-objective topologyoptimization scheme of continuum structuresrdquo Structural andMultidisciplinary Optimization vol 30 no 2 pp 142ndash154 2005

[33] L Cao A T Dolovich A L Schwab J L Herder and WZhang ldquoToward a unified design approach for both compliantmechanisms and rigid-body mechanisms module optimiza-tionrdquo Journal of Mechanical Design vol 137 no 12 Article ID122301 2015

[34] H B Demuth M H Beale O Jess De andM T HaganNeuralNetwork Design 2nd edition 2014

[35] D E Rumelhart G E Hinton and R J Williams ldquoLearningrepresentations by back-propagating errorsrdquo Nature vol 323no 6088 pp 533ndash536 1986

[36] R Hecht-Nielsen ldquoTheory of the backpropagation neural net-workrdquo in Proceedings of the International Joint Conference onNeural Networks (IJCNN rsquo89) vol 1 pp 593ndash605 WashingtonDC USA June 1989

[37] FDanForesee andMTHagan ldquoGauss-Newton approximationto Bayesian learningrdquo in Proceedings of the International Con-ference on Neural Networks (IJCNN rsquo97) vol 3 pp 1930ndash1935IEEE Houston Tex USA June 1997

[38] L E Scales Introduction to Non-Linear Optimization Macmil-lan Education UK London 1985

[39] M H Beale M T Hagan and H B Demuth Neural NetworkToolbox119879119872Userrsquos Guide forMATLABR2012a NatickMA USA2012

[40] K Levenberg ldquoA method for the solution of certain non-linearproblems in least squaresrdquo Quarterly of Applied Mathematicsvol 2 pp 164ndash168 1944

[41] D Marquardt ldquoAn algorithm for least-squares estimation ofnonlinear parametersrdquo SIAM Journal on Applied Mathematicsvol 11 no 2 pp 431ndash441 1963

[42] J S Armstrong and F Collopy ldquoErrormeasures for generalizingabout forecasting methods empirical comparisonsrdquo Interna-tional Journal of Forecasting vol 8 no 1 pp 69ndash80 1992

[43] C Audet and J Dennis ldquoAnalysis of generalized pattern search-esrdquo SIAM Journal on Optimization vol 13 no 3 pp 889ndash9032002

[44] P E Gill W Murray andM HWright Practical OptimizationAcademic Press 1981

[45] R Fletcher Practical Methods of Optimization John Wiley ampSons New York NY USA 2nd edition 2000

[46] P E Gill W Murray and M H Wright Numerical LinearAlgebra and Optimization Addison-Wesley 1991

[47] A R Conn N I Gould and P Toint ldquoA globally convergentaugmented Lagrangian algorithm for optimization with generalconstraints and simple boundsrdquo SIAM Journal on NumericalAnalysis vol 28 no 2 pp 545ndash572 1991

[48] A R Conn N Gould and P L Toint ldquoA globally convergentLagrangian barrier algorithm for optimization with generalinequality constraints and simple boundsrdquo Mathematics ofComputation vol 66 no 217 pp 261ndash288 S1ndashS11 1997

[49] T G Kolda R M Lewis and V J Torczon ldquoA generating setdirect search augmented Lagrangian algorithm for optimizationwith a combination of general and linear constraintsrdquo Tech RepSAND2006-5315 Sandia National Laboratories USA 2006

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 6: Optimizing the Geometry of Flexure System Topologies Using the …web.cs.ucla.edu/~ahatamiz/BLOT.pdf · 2019-10-24 · synthesized topology using dierent geometric parameter values

6 Mathematical Problems in Engineering

Thus the MAPEtotal of the trained initial-guess networkarchitecture (ie 20 neurons in the first hidden layer and0 neurons in the second hidden layer) is used as the start-ing point for optimizing the networkrsquos architecture Patternsearch [43] which is described in Section 3 in detail isused to optimize the number of neurons in the networkrsquosarchitecture in two different phases In the first phase patternsearch is used to optimize an architecture with no neuronsin the second hidden layer For this phase the lower boundof neurons in the first hidden layer is set to 5 and the upperbound is set to 40 The input tolerance (The MathWorksInc) is set to 1 the initial mesh size (The MathWorks Inc)is set to 8 and the expansion factor (The MathWorks Inc)is set to 2 The cost function that is minimized for thisoptimization is MAPEtotal defined in (3) Once the besttrained network architecture is found using this first hiddenlayer optimization (ie the trained network architecture withthe smallest MAPEtotal) the mean absolute percentage errorof the training MAPEtraining and testing MAPEtesting datasets is each calculated using (3) for this best trained networkarchitecture but with the subscripts currently labeled ldquototalrdquoreplaced by the words ldquotrainingrdquo and ldquotestingrdquo respectively Ifboth of these values (ie MAPEtraining and MAPEtesting) areequal to or less than 35 the neural network is used as theinitial model of the FACT-synthesized flexure topology Ifhowever eitherMAPEtraining orMAPEtesting is greater than 35the second phase of the network architecture optimization isinitiated In the second phase pattern search is again usedto optimize a network architecture but with 40 neurons inthe first hidden layer and an initial-guess of 4 neurons inthe second hidden layer For this phase the lower bound ofneurons in the second hidden layer is set to 1 and the upperbound is set to 15The input tolerance is again set to 1 and theexpansion factor is again set to 2The best number of neuronsin the second hidden layer of the network with 40 neuronsin the first hidden layer is identified by minimizing thesame cost function in (3) MAPEtotal Once the best trainednetwork architecture is found using this second hidden layeroptimization the mean absolute percentage error of thetraining MAPEtraining and testing MAPEtesting data setsis each calculated using (3) for this best trained networkarchitecture but with the subscripts currently labeled ldquototalrdquoreplaced by the words ldquotrainingrdquo and ldquotestingrdquo respectively Ifboth of these values (ie MAPEtraining and MAPEtesting) areequal to or less than 35 the neural network is used as theinitial model of the FACT-synthesized flexure topology Ifhowever eitherMAPEtraining orMAPEtesting is greater than 35the trained network architecture with the lowest MAPEtotalfound from the network optimization of both the first andsecond phase is used as the initial model of the FACT-synthesized flexure topology

Thus using minimal computation an initial model ofgeneral FACT-synthesized flexure system topologies can beidentified Note thatmany of the hard numbers chosen in thissection were selected for rapidly generating accurate modelsof flexure system topologies with less than sim10 independentgeometric parametersThe numbers in this section may needto be adjusted for scenarios with larger numbers of inputparameters

3 Plotting Performance Boundaries

This section discusses the portion of the BLOT that utilizesthe models of flexure system topologies generated fromSection 2 to plot their performance capability boundariesRecall that the geometric parameters of a flexure systemtopology (eg 119882 119879 and 119871 for the topology of Figure 1(f))are its modelrsquos inputs 119909119894 and the performance capabilities(eg range of motion and natural frequency for the exampleof Figure 1(f)) achieved by the design instantiations that aredefined by these corresponding input parameters are themodelrsquos outputs 119891119895 For this section a theoretical exampleof a system with only two inputs 1199091 and 1199092 will be used toconceptually explain the algorithm that plots the boundarythat circumscribes the systemrsquos full design space for two ofthe systemrsquos achievable outputs 1198911(1199091 1199092) and 1198912(1199091 1199092)

The boundary-plotting algorithm first requires the small-est and largest values of each input parameter 119909119894min and119909119894max respectively as well as resolution increment valuesΔ119909119894 for each input parameter Constraint functions shouldalso be provided to define what combination of input valuesare permissible (eg 119882 minus 2119879 gt 0 for the example ofFigure 1(f)) For the theoretical example of this section theconstraint function is shown as the red spline boundary linein Figure 3(a)

The algorithm begins by supplying a randomly selectedcombination of permissible inputs shown as the blue dotlabeled 11987411 in Figure 3(a) to the Sequential QuadraticProgramming (SQP) [44 45] optimization algorithm Thisalgorithm first identifies a set of other permissible inputcombinations that result from adding and subtracting theresolution increment of each input Δ119909119894 to and from the firstrandomly selected combination of inputs along each inputrsquosaxis For the example of Figure 3(a) this first set of inputcombinations are shown as the four blue dots immediatelysurrounding the blue dot labeled 11987411 Note that althoughΔ1199091 is shown as being equal to Δ1199092 in the example theseresolution increments do not have to be equal for otherscenarios The systemrsquos model is then used to map all of thecombinations of these inputs to their corresponding com-binations of outputs which are represented by the five bluedots shown in Figure 3(b) Note that the original input dot11987411 maps to the output dot 11988511 The SQP algorithm thenapproximates the gradient (ie first derivatives) and Hessianmatrix (ie the symmetric matrix of second derivatives) ofthe objective function defined by

119869 (1199091 1199092) = cos (120579) 1198912 (1199091 1199092) + sin (120579) 1198911 (1199091 1199092) (4)

using the input and output combinations (ie the adjacentblue dots in Figures 3(a) and 3(b)) where 120579 in (4) is initiallyset to 0 so that the largest 1198912 output can be pursued firstThis gradient and Hessian matrix are then used to constructa Quadratic Programming (QP) subproblem [46] whichis solved to determine another combination of inputs thatwill map to combinations of outputs that produce a largerobjective function value In the example of Figure 3 supposethe new combination of inputs determined is shown as thered dot labeled 11987412 in Figure 3(a) Note that this dotrsquoscorresponding combination of outputs which is shown as the

Mathematical Problems in Engineering 7

Constraintfunction

x1

x2

O13

O12

O21

O11

O14

r2

Δx2

(a)

Z14

Z13

Z12

Z11

Z21

= 0

= Δ

f1(x1 x2)

f2(x

1x

2)

(b)

Constraintfunction

x1

x2

O22

O21

(c)

Z21 Z22

= 0

= Δ

f1(x1 x2)

f2(x

1x

2)

(d)

Figure 3 Progression of the SQP and then ALPS optimization algorithms for 120579 = 0 initialized in the objective function in the input space(a) and in the corresponding output space (b) continued progression of the same optimization algorithms for 120579 = Δ120579 incremented in theobjective function in the same input space (c) and in the same output space (d)

red dot labeled 11988512 in Figure 3(b) possesses 1198912 value thatis larger than any of the other previous blue dots shown inthe same figure The SQP algorithm then repeats this processby finding another set of permissible input combinations thatresult from adding and subtracting the resolution incrementof each inputΔ119909119894 to and from the new combination of inputs(ie 11987412 from Figure 3(a)) along each inputrsquos axis For theexample of Figure 3(a) this new set of input combinationsare shown as the four red dots immediately surroundingthe red dot labeled 11987412 Note that each of the five reddots in Figure 3(a) maps to a corresponding red dot inFigure 3(b)Thus the SQP algorithm rapidly finds an efficientpath toward a local maximum of the objective function byiteratively stepping from one cluster of dots to the next inthis manner The SQP algorithm terminates when either (i)the step distance from one central dot to the next (eg thedistance between11987411 and11987412 in Figure 3(a)) is smaller thanthe prescribed resolution of the input parameters Δ119909119894 or (ii)the process fails to generate the next step which typically

occurs because the first or second derivatives of the objectivefunction cannot be calculated The latter reason typicallyoccurs when the algorithm encounters discontinuities withinthe objective function

After the SQP algorithm terminates the boundary-plotting algorithm of this paper continues the optimizationprocess by supplying the combination of permissible inputsthat map to the combination of outputs that produce thelargest objective function value identified by the SQP algo-rithm to the Augmented Lagrangian Pattern Search (ALPS)[47ndash49] optimization algorithm For the example of Fig-ure 3(a) suppose the SQP process was unable to step beyondthe cluster of dots surrounding 11987412 and thus terminatedat that location The combination of inputs that would besupplied to the ALPS algorithm would be the red dot labeled11987413 in Figure 3(a) since this combination of inputs mapsto the combination of outputs that achieve the largest 1198912value found using the SQP algorithm This combination ofoutputs is shown as the red dot labeled 11988513 in Figure 3(b)

8 Mathematical Problems in Engineering

The ALPS algorithm first identifies a set of other permissibleinput combinations that result from adding and subtractingan initial mesh size 119903119894 to and from the combination of inputssupplied to the algorithm along each inputrsquos axis The initialmesh size labeled 1199032 in Figure 3(a) is typically set to 20of the range of its corresponding input parameter (ie 119903119894 =02|119909119894max minus 119909119894min|) For the example of Figure 3(a) the firstset of ALPS-generated input combinations are shown as thefour purple dots surrounding the red dot labeled 11987413 Notethat although 1199031 is shown as being equal to 1199032 in the examplethese mesh sizes are not typically equal for other scenariosThe systemrsquos model is then used to map the combinations ofthese inputs to their corresponding combinations of outputswhich are represented by the four purple dots shown inFigure 3(b)TheALPS algorithm then identifies if any of thesecombinations of inputs map to a combination of outputs thatproduce an objective function value that is larger than anyproduced previously in the optimization process Supposefor instance that the input combination of the example inFigure 3(a) labeled 11987414 maps to the output combinationlabeled11988514 in Figure 3(b) which achieves the largest1198912 valuepreviously identified The ALPS algorithm would then stepto the dot representing that input combination (eg 11987414)The algorithm would then identify a set of other permissibleinput combinations that result from adding and subtractingthe previous mesh size (eg 119903119894 in this case) multiplied byan expansion factor to and from this combination of inputsalong each inputrsquos axis For this paper the expansion factoris set to 2 Thus for the example of Figure 3(a) the nextset of ALPS-generated input combinations are shown as thethree orange dots surrounding the purple dot labeled 11987414These orange input dots shown in Figure 3(a) map to thethree orange output dots shown in Figure 3(b)The algorithmthen identifies if any of these output combinations producean objective function value that is larger than any producedpreviously in the optimization process Since none of theorange dots in Figure 3(b) possess an 1198912 value that is largerthan 11988514 the ALPS algorithm would then identify a setof other permissible input combinations that result fromadding and subtracting the previousmesh size (eg 2119903119894 in thiscase) divided by the same expansion factor to and from thecombination of inputs labeled 11987414 in Figure 3(a) along eachinputrsquos axis Thus for the example of Figure 3(a) the next setofALPS-generated input combinations are shown as the threelight-green dots surrounding the same purple dot labeled11987414These light-green input dots shown in Figure 3(a)map tothe three light-green output dots shown in Figure 3(b) Againsince none of the light-green dots in Figure 3(b) possessan 1198912 value that is larger than 11988514 the ALPS algorithmwould then identify another set of other permissible inputcombinations that result from adding and subtracting theprevious mesh size (eg 119903119894 in this case) divided by the sameexpansion factor to and from the combination of inputslabeled 11987414 in Figure 3(a) along each inputrsquos axis Thus forthe example of Figure 3(a) the next set of ALPS-generatedinput combinations are shown as the four dark-green dotssurrounding the same purple dot labeled 11987414 This processrepeats until either (i) one of the new input combinationsmaps to an output combination with an objective function

value that is larger than any produced previously or (ii) themesh size becomes equal to or less than a specified inputtolerance which for this paper is set to the resolution ofthe input parameters Δ119909119894 If the first option (i) occursthe algorithm will step to the improved input combinationand the ALPS process will continue iterating If the secondoption (ii) occurs the ALPS algorithmwill terminate For theexample of Figure 3(a) the second option occurred becausethe mesh size of the four yellow dots shown immediatelysurrounding the purple dot labeled 11987414 is equal to Δ1199092labeled in the same figure and none of the new output dotsgenerated ever surpassed the 1198912 value of 11988514 as shown inFigure 3(b)

Once the SQP and then ALPS algorithms have bothrun their full course for determining the maximum valueof 119869(1199091 1199092) from (4) for 120579 = 0 the 120579 parameter is thenincrementally increased by Δ120579 which is typically set to avalue between 12058710 to 12058720 Using this new 120579 parameter thealgorithm then computes the value of the objective functionin (4) for all existing input combinations which for theexample of this section are shown as the dots in Figure 3(a)From these input combinations the one that produces thelargest objective function value for 120579 = Δ120579 correspondsto the input combination represented by the dot labeled11987421 in Figure 3(a) which maps to the output combinationrepresented by the orange dot labeled 11988521 in Figure 3(b)The algorithm would then supply this input combinationto the SQP algorithm to generate more input combinationsthat produce larger objective function values as describedpreviously The four blue dots immediately surrounding thedot labeled 11987421 in Figure 3(c) would be identified firstfor the example of this section using this approach Thosefour blue dots map to the four new blue dots shown inFigure 3(d) that surround the dot labeled 11988521 The SQPalgorithm would then identify the next input combination(eg 11987422 shown in Figure 3(c)) that produces a largerobjective function value Note that the input combinationdot 11987422 maps to an output combination dot labeled 11988522in Figure 3(d) that is farther away along the directionprescribed by the new 120579 parameter value (ie Δ120579) As theSQP algorithm continues four other input combinationswould be identified that immediately surround the inputcombination dot labeled 11987422 in Figure 3(c) These dots arecolored red in Figure 3(c) Note however that one of thenew dots lies outside the red spline line and thus represents adesign instantiation that violates the geometric compatibilityconstraints imposedThus only three of the new surroundingdots map to permissible output combinations as shown inFigure 3(d) The SQP algorithm would continue in this wayuntil it terminates The ALPS algorithm would then takeover where the SQP algorithm left off as described previouslyuntil the ALPS algorithm also terminates Once the ALPSalgorithm terminates the algorithmwill have found the inputcombination that achieves the largest objective function valueidentified from among those previously tested for 120579 = Δ120579

The algorithm iterates this pattern of steps to identify thecombinations of output values that lie farthest away alongtheir prescribed directions defined by their corresponding120579 value in a clockwise fashion until 120579 ge 2120587 (ie all the

Mathematical Problems in Engineering 9

directions have been swept) It is important to note that anytime before the 120579 parameter is incrementally advanced theobjective function of (4) is rechecked for every combinationof input values that have been evaluated up to that point tomake sure that each of the previously identified output dotsthat are used to be the farthest away along their prescribeddirections is still the farthest away If a new dot is everidentified that is farther away than a previous dot along aspecific direction 120579 (ie if a new dot exceeds the dashed linesin Figure 3(b)) the iterative process is reset to that directionand the process continues using that improved output dot

Once this process is complete the MATLAB boundaryfunction (The MathWorks Inc) can be used to identifyall the combinations of output values that lie along theboundary of a convex shape that circumscribes the outputdots calculated and plotted using the systemrsquos model duringthe iterative processMany systems however produce a cloudof output dots that form a concavemdashnot convexmdashregionlike the one shown in Figure 4(a) If the output dots foundusing the MATLAB boundary function are used to definethe boundary of the example in Figure 4(a) the result wouldbe the red boundary shown in Figure 4(b) This boundarywould grossly overestimate the actual systemrsquos achievableperformance space since it is convex instead of concave likethe cloud of output dots Thus to address this issue theBLOT identifies all the vectors that point from each outputdot along the existing boundary to their neighboring dotson the same boundary The magnitude ℎmax of the longestvector is identified because this vector points between thetwo output dots (eg 119885ℎ1 and 119885ℎ2 shown in Figure 4(b)) thatusually correspond to the opening of a previously unknownconcave boundaryThe BLOT then computes a new objectivefunction 119869119892(1199091 1199092) defined by

119869119892 (1199091 1199092) = (cos21205721198772 + sin2120572)

sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )2

+ ( sin21205721198772 + cos2120572)

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )2 + 2sdot sin120572 cos120572( 1

1198772 minus 1)sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )

(5)

for all the input combinations that have been previouslyevaluated for 119877 = 1 This objective function is minimizedto identify output combinations that lie within circular orelliptical regions like those shown in Figure 4(c) If the119877 variable in (5) is 1 the region is a circle If however

this variable increases it becomes an increasingly elongatedellipse as shown in Figure 4(c) The angle 120572 in (5) is definedby

120572 = arctan(1198911119885ℎ2 minus 1198911119885ℎ11198912119885ℎ1 minus 1198912119885ℎ2) (6)

where1198911119885ℎ1 and1198912119885ℎ1 from (5) and (6) are the horizontal andvertical components of the119885ℎ1 dot labeled in Figure 4(c) and1198911119885ℎ2 and 1198912119885ℎ2 are the horizontal and vertical componentsof the 119885ℎ2 dot labeled in the same figure After the BLOTcomputes the objective function of (5) for all the inputcombinations that have been previously evaluated for 119877 = 1it identifies the existing input combination that produces thesmallest objective function value This input combination isthe combination that maps to the output combination thatis closest to the center of the circle shown in Figure 3(c)If no output dots are found within the circle the inputcombination corresponding to either the output dot 119885ℎ1 or119885ℎ2 will be chosen as the closest to the center of the circleand is thus supplied to the SQP and then ALPS algorithmdescribed previously to evaluate new input combinations Forthis SQP-ALPS optimization however the objective functionin (5) is minimized for 119877 = 1 instead of maximizing theobjective function of (4) for different values of 120579 as wasdone previously Suppose for the example of Figure 4 thatwhen this optimization is performed the new group of blueoutput dots shown in Figure 4(c) is generated Since none ofthese output dots lie within the center of the circle shownin the figure the previous 119877 value in the objective functionof (5) is multiplied by a factor of 2 and the search regionis expanded to an ellipse shown in Figure 4(c) Figure 4(e)shows the elliptical contour diagram of 119869119892(1199091 1199092) for this 119877value (ie 119877 = 2) If no output dots are found within thenew ellipse the process continues to iterate by multiplyingthe previous 119877 value by the same factor of 2 to increase theelliptical search region further For the example of Figure 4(c)however there are output dots that lie within the ellipticalsearch region corresponding to 119877 value of 2 Thus the inputcombination that maps to the output dot that lies within thisregion and possesses the smallest objective function value for119877 = 2 is supplied to the SQP-ALPS optimization algorithmto identify an even better output dot that achieves an evensmaller objective function value This process will producenew output dots (eg the new set of orange dots shownin Figure 4(e)) Whether these new output dots achieve asmaller objective function value or not the output dot thatachieves the smallest objective function value is identifiedand considered part of the systemrsquos performance boundaryIt is thus redefined as either 119885ℎ1 or 119885ℎ2 In the example ofFigure 4(e) the 119885ℎ2 output dot is the one that is redefinedNote also that ℎmax is also updated This boundary learningprocess is repeated until both (i) the horizontal componentof the boundary vector with the largest magnitude (ieℎmax) is less than a set percentage of the horizontal distanceacross the full cloud of output values and (ii) the verticalcomponent of the same vector is also less than the samepercentage of the vertical distance across the same cloudThis percentage threshold is typically set between 5 and

10 Mathematical Problems in Engineering

f1(x1 x2)

f2(x

1x

2)

(a)

f1(x1 x2)

f2(x

1x

2)

ℎGR

Zℎ1

Zℎ2

(b)

Zℎ1

Zℎ2

R = 2

R = 1

f1(x1 x2)

f2(x

1x

2)

(c)

Decreasing value

Zℎ1

Zℎ2

of Jg(x1 x2)

f1(x1 x2)

f2(x

1x

2)

(d)

Zℎ1

ℎGR

Zℎ2

f1(x1 x2)

f2(x

1x

2)

(e)

f1(x1 x2)

f2(x

1x

2)

(f)

Figure 4 Generated cloud of output dots (a) convex boundary first identified (b) new objective functionminimized to identify other outputdots within circular or elliptical regions (c) elliptical contour diagram of the new objective function with an 119877 value of 2 (d) boundary isupdated with a new ℎmax value (e) process successfully identifies boundaries that are concave (f)

10 Additionally before the largest boundary vector isupdated with a new magnitude (ie ℎmax) the entire opti-mization process of this section is repeated using the previousobjective function in (4) for all 120579 values to ensure thatany new dots evaluated since using that objective functionare allowed to improve the boundaryrsquos accuracy if possible

In this way both convex and concave boundaries like theconcave boundary shown in Figure 4(f) can be identifiedthat accurately define the systemrsquos achievable performancespace

A simple case study is performed to validate the per-formance of the boundary tracing algorithm of this section

Mathematical Problems in Engineering 11

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(a)

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(b)

Figure 5 Output values of a full parameter sweep (a) boundary identified for the same example using BLOT (b)

Suppose that three normalized input parameters 1199011 1199012 and1199013 map to two output functions 1198911 and 1198912 according to1198911 (1199011 1199012 1199013) = 11990131 + 1

211990121198912 (1199011 1199012 1199013) = 11990133 + 1

21199012(7)

If the input parameters are constrained according to

101199011 + 1199012 + 101199013 le 1511990121 + 1

10011990122 + 11990123 le 1 (8)

and each parameterrsquos smallest and largest values range from0 to 1 with a resolution increment of 001 the boundary ofthe region achieved by the functions of (7) can be found byplotting the output values for every permissible input valueFigure 5(a) shows all of these output values plotted as bluedots Another way to find the desired boundary but withmuch fewer calculations is to apply the algorithm of thissection as described The results are shown in Figure 5(b)Note that the algorithm identified a boundary (Figure 5(b))that is very close to the true boundary that contains the outputvalues (Figure 5(a)) after calculating and plotting only 2612dots instead of the 745298 dots that were calculated andplotted for the full parameter sweep of Figure 5(a)

4 Iterative Model and Boundary Refinement

This section provides the iterative process used to refinethe initial neural network-system models generated usingthe theory of Section 2 as well as their correspondingperformance capability boundary identified using the theoryof Section 3 Note that a single neural network is trainedfor each desired output performance capability plotted (egone neural network is trained to predict the flexure systemrsquos

range of motion for the example of Figure 1(f) and another istrained to predict its natural frequency) The process beginsby identifying all the design instantiations that lie along thefirst boundary plotted using the initial system models Theautomated FEM approach discussed in Section 2 is then usedto calculate their desired performance capabilities and theresults are saved as new sets of data called boundary setsThecombined MAPEboundary of both sets of output performancecapabilities is calculated using (3) but with all the subscriptslabeled ldquototalrdquo replaced by the word ldquoboundaryrdquo and where119873boundary is the total number of target output values frombothsets of output performance capabilities summed together Ifthe resulting MAPEboundary is equal to or less than 10 theneural network models pertaining to each output perfor-mance capability are used to generate the final boundary Ifhowever thisMAPEboundary is greater than 10 80 of the newdata is randomly added to the former training set of datadescribed in Section 2 for each of the corresponding neuralnetwork models The remaining 20 of the boundary dataset is added to the former testing set of data also describedin Section 2 The entire process of Sections 2 through 4 isthen repeated as new boundary data is added to the fullbody of previously acquired FEMdata until theMAPEboundaryis equal to or less than 10 Once this condition is satisfiedthe final neural network models used to predict the outputperformance capabilities are used to plot the final boundaryof the systemrsquos performance capabilities using the theory inSection 3 In this way all the points that constitute the finalperformance boundary plotted using BLOT for any flexuresystem are guaranteed to be accurate within an average errorof 10 or less

5 Flexure System Case Study Using the BLOT

This section uses the FACT-synthesized flexure system topol-ogy of Figure 1(f) as a detailed case study to demonstratethe capabilities of the BLOT Suppose that the smallest and

12 Mathematical Problems in Engineering

T = 10 mmL = 995 mmW = 100 mm T = 25 mm

L = 15 mmW = 100 mm

10minus1

10minus2

10minus3

10minus4

10minus5

10minus6

Tran

slatio

nal D

OF

Nor

mal

ized

rang

e of m

otio

n

100 10210minus4 10minus210minus6

Translational DOF natural frequency (kHz)

dradic

W2+L2

(a)

T = 25 mmL = 15 mmW = 100 mm

102

100

10minus2

10minus4

10minus6

Rota

tiona

l DO

F

100 10210minus4 10minus210minus6

Rotational DOF natural frequency (kHz)

rang

e of m

otio

(deg

rees

)

T = 10 mmL = 995 mmW = 100 mm

(b)

Figure 6 Boundaries of the topologyrsquos achievable ranges of motion and natural frequencies corresponding to the translational (a) androtational (b) DOF generated by the BLOT

largest values for each of the case studyrsquos three independentparameters (ie 119882 119879 and 119871) its resolution increment andthe properties of its constituent material are all set to bethe same values as those given in Section 1 Using the 119882 minus2119879 gt 0 constraint function provided earlier the BLOT canbe used to train various neural networks to create modelsthat map any desired geometric parameter values within thedesign space to design instantiations that achieve desiredperformance capabilities The performance capabilities ofinterest to this case study included (i) the topologyrsquos rangeof motion along its translational DOF direction as shownin Figure 1(d) (ii) the natural frequency of the topologythat corresponds with the mode shape of its translationalDOF (iii) the topologyrsquos angular range of motion aboutits rotational DOF as shown in Figure 1(e) and (iv) thenatural frequency of the topology that corresponds withthe mode shape of its rotational DOF The PYTHON scriptthat automates the collection of all the target data was setto ground the entire top surface of the fixed body shownwith thatched lines in Figure 1(f) on the side where the fourwire elements are attached The range of motion of eachdesign instantiation along the direction of the translationalDOF was calculated using FEA simulations by applying ashear force on the entire bottom face of the systemrsquos stageon the side where the four wire elements are attached Themagnitude of this shear force was gradually increased untilany portion within the system began to yield according toMises yield criterion The largest amount the stage translatedbefore reaching this yield criterion was defined to be therange ofmotion119889 of the corresponding design instantiationThis range of motion was normalized by dividing it byits characteristic length radic1198712 +1198822 The angular range ofmotion of each design instantiation about the rotationalDOF was also calculated using FEA simulations by applyingtwo opposing shear forces on either side of the systemrsquosstage to create a pure moment along the direction of theaxes of the wire elements The magnitude of this momentwas gradually increased until any portion within the systembegan to yield according to Mises yield criterion The largestamount the stage rotated before reaching this yield criterionwas defined to be the angular range of motion Φ of the

corresponding design instantiation The natural frequencies120596119899 corresponding to both of the translational and rotationalDOF mode shapes for each design instantiation were alsocalculated using finite element modal analysis simulationsA unique neural network with a single neuron output layerwas trained for each of the four performance capabilities ofinterest

Once the BLOT successfully created four accuratemodelsof the flexure system topology of Figure 1(f) by training fourneural networks to each map arbitrary design instantiationsof the topology to any of the four desired performancecapabilities of interest the BLOT then plotted final bound-aries that circumscribe the achievable combinations of theseperformance capabilities The boundary corresponding tothe normalized range of motion and natural frequency ofthe mode shape along the direction of the translationalDOF is show in Figure 6(a) Note that this was the sameboundary provided in Figure 1(g) but the plot in Figure 6(a)includes the colored output dots used to identify the finalboundary The geometric parameters for two optimizeddesign instantiations that span between the optimal portionof the boundary are provided in Figures 1(g) and 6(a)Other optimal design instantiations can be selected fromthis portion of the boundary to achieve different maximumcombinations of the performance capabilities The boundarycorresponding to the angular range of motion and naturalfrequency of the mode shape about the rotational DOF isprovided in Figure 6(b) Note that the two optimal designinstantiations shown as large black dots within the plots ofFigures 1(g) and 6(a) are also plotted in their correspondinglocations within the boundary provided in Figure 6(b)Although these design instantiations are not the two optimaldesign instantiations within the plot of Figure 6(b) they areclose to the optimal instantiations which are shown as largewhite dots in Figure 6(b) Finally it is worth noting thatthe plots of Figure 6 are presented using a log-log scaleSince such plots can never achieve zero or negative valuesthe BLOT establishes a cutoff threshold when identifying theboundary tomore rapidly and clearly define a practical regionof achievable performance capabilitiesThis threshold was setto 10minus6 for the plots of Figure 6

Mathematical Problems in Engineering 13

6 Conclusions and Future Work

This paper introduces an optimization tool called the Bound-ary Learning Optimization Tool (BLOT) which utilizes anautomated method for training neural networks to createaccurate models of general flexure system topologies syn-thesized using the FACT approach The BLOT uses thesemodels to plot the boundaries of regions containing thecombinations of desired performance capabilities that areachievable by different design instantiations of the FACT-synthesized topologies Both the neural network training andboundary identification portions of the BLOT are iteratedusing additional boundary data until the final boundary isguaranteed to be accurate within a value specified by theuser (eg less than 10 average error) A flexure system isprovided and optimized as a case study

TheBLOTwill be used in future works to generate Ashby-like material plots but for different architectured materialtopologies instead of for natural materials to compare theachievable properties of such microarchitectured structurescomposed of the same material These plots will enableengineers to identify trends among architectured materialsthat result from microstructure instead of composition

Disclosure

A preliminary version of this paperrsquos theory was first pre-sented at ASMErsquos IDETC as paper no DETC2017-67465

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Authorsrsquo Contributions

Ali Hatamizadeh and Yuanping Song are co-first authors astheir contributions to this paper are equal

Acknowledgments

This work was supported by the Air Force Office of ScienceResearch under Award no FA9550-15-1-0321 Program officerByung ldquoLesrdquo Lee is gratefully acknowledged This workused computational and storage services associated withthe Hoffman2 Shared Cluster provided by UCLA Institutefor Digital Research and Educationrsquos Research TechnologyGroup

References

[1] J B Hopkins Design of Parallel Flexure Systems via Freedomand Constraint Topologies (FACT) Massachusetts Institute ofTechnology 2007

[2] J B HopkinsDesign of Flexure-Based Motion Stages for Mecha-tronic Systems via Freedom Actuation and Constraint Topologies(FACT) Massachusetts Institute of Technology 2010

[3] J B Hopkins ldquoDesigning hybrid flexure systems and elementsusing freedom and constraint topologiesrdquoMechanical Sciencesvol 4 no 2 pp 319ndash331 2013

[4] Y LeCun Y Bengio and G Hinton ldquoDeep learningrdquo Naturevol 521 no 7553 pp 436ndash444 2015

[5] J B Hopkins K J Lange and C M Spadaccini ldquoDesigningmicrostructural architectures with thermally actuated prop-erties using freedom actuation and constraint topologiesrdquoJournal of Mechanical Design vol 135 no 6 Article ID 0610042013

[6] M F Ashby Materials Selection in Mechanical Design Butter-worth-Heinemann 2005

[7] X P Cheng and R V Patel ldquoNeural network based trackingcontrol of a flexible macro-micro manipulator systemrdquo NeuralNetworks vol 16 no 2 pp 271ndash286 2003

[8] W He Y Chen and Z Yin ldquoAdaptive neural network controlof an uncertain robot with full-state constraintsrdquo IEEE Transac-tions on Cybernetics vol 46 no 3 pp 620ndash629 2016

[9] H Kobayashi and R Ozawa ldquoAdaptive neural network controlof tendon-driven mechanisms with elastic tendonsrdquo Automat-ica vol 39 no 9 pp 1509ndash1519 2003

[10] J Takeuchi and Y Kosugi ldquoNeural network representation offinite element methodrdquo Neural Networks vol 7 no 2 pp 389ndash395 1994

[11] R I Levin and N A J Lieven ldquoDynamic finite elementmodel updating using neural networksrdquo Journal of Sound andVibration vol 210 no 5 pp 593ndash607 1998

[12] E Boillat S Kolossov R Glardon M Loher D Saladinand G Levy ldquoFinite element and neural network models forprocess optimization in selective laser sinteringrdquo Proceedingsof the Institution of Mechanical Engineers Part B Journal ofEngineering Manufacture vol 218 no 6 pp 607ndash614 2004

[13] M Lefik ldquoHybrid finite element-artificial neural networkmodel for composite materialsrdquo Journal of Theoretical andApplied Mechanics vol 42 pp 539ndash563 2004

[14] Y M A Hashash S Jung and J Ghaboussi ldquoNumerical imple-mentation of a neural network based material model in finiteelement analysisrdquo International Journal for Numerical Methodsin Engineering vol 59 no 7 pp 989ndash1005 2004

[15] L Manevitz M Yousef and D Givoli ldquoFinite-element meshgeneration using self-organizing neural networksrdquo Computer-Aided Civil and Infrastructure Engineering vol 12 no 4 pp233ndash250 1997

[16] Z Li andD Cao ldquoConceptual Design of CompliantMechanismBased on Port Ontologyrdquo Advances in Mechanical Engineeringvol 5 p 401492 2015

[17] Y Qin and Z Feng ldquoStructural dynamicmodification of flexurehinge structure based on artificial neural networkrdquo AviationPrecision Manufacturing Technology vol 5 no 11 2006

[18] F G Kong Q Li and W J Zhang ldquoAn artificial neuralnetwork approach tomechanism kinematic chain isomorphismidentificationrdquo Mechanism and Machine Theory vol 34 no 2pp 271ndash283 1999

[19] E K Burke andGKendall Eds SearchMethodologies SpringerUS Boston MA USA 2005

[20] Y V Haimes L S Lasdon and D A Wismer ldquoOn a bicriterionformulation of the problems of integrated system identificationand system optimizationrdquo IEEE Transactions on Systems Manand Cybernetics vol SMC-1 pp 296-297 1971

[21] P L Yu ldquoA class of solutions for group decision problemsrdquoManagement Science vol 19 no 8 pp 936ndash946 1973

14 Mathematical Problems in Engineering

[22] A P Wierzbicki ldquoOn the completeness and constructiveness ofparametric characterizations to vector optimization problemsrdquoOR Spectrum vol 8 no 2 pp 73ndash87 1986

[23] A P Wierzbicki ldquoA mathematical basis for satisficing decisionmakingrdquo in Organizations Multiple Agents with Multiple Cri-teria vol 190 of Lecture Notes in Economics and MathematicalSystems pp 465ndash486 Springer Berlin Heidelberg Berlin Hei-delberg 1981

[24] I Das and J E Dennis ldquoNormal-boundary intersection a newmethod for generating the Pareto surface in nonlinear multi-criteria optimization problemsrdquo SIAM Journal on Optimizationvol 8 no 3 pp 631ndash657 1998

[25] D E Goldberg Genetic Algorithms in Search Optimizationand Machine Learning Addison-Wesley Longman PublishingBoston MA USA 1st edition 1989

[26] ldquoExceptional papermdashlexicographic orders utilities anddecisionrules a surveyrdquo Management Science vol 20 pp 1442ndash14711974

[27] A Charnes and W W Cooper ldquoGoal programming and mul-tiple objective optimizationsrdquo European Journal of OperationalResearch vol 1 no 1 pp 39ndash54 1977

[28] K A de Jong Evolutionary Computation a Unified ApproachMIT Press Cambridge Mass USA 2006

[29] N Padhye P Bhardawaj and K Deb ldquoImproving differentialevolution through a unified approachrdquo Journal of Global Opti-mization vol 55 no 4 pp 771ndash799 2013

[30] O Sigmund ldquoOn the design of compliant mechanisms usingtopology optimizationrdquo Mechanics of Structures and Machinesvol 25 no 4 pp 493ndash524 1997

[31] M P Bendsoslashe and O Sigmund Topology Optimization TheoryMethod and Application Springer Berlin Heidelberg BerlinGermany 2003

[32] Z Luo L Chen J Yang Y Zhang and K Abdel-MalekldquoCompliant mechanism design using multi-objective topologyoptimization scheme of continuum structuresrdquo Structural andMultidisciplinary Optimization vol 30 no 2 pp 142ndash154 2005

[33] L Cao A T Dolovich A L Schwab J L Herder and WZhang ldquoToward a unified design approach for both compliantmechanisms and rigid-body mechanisms module optimiza-tionrdquo Journal of Mechanical Design vol 137 no 12 Article ID122301 2015

[34] H B Demuth M H Beale O Jess De andM T HaganNeuralNetwork Design 2nd edition 2014

[35] D E Rumelhart G E Hinton and R J Williams ldquoLearningrepresentations by back-propagating errorsrdquo Nature vol 323no 6088 pp 533ndash536 1986

[36] R Hecht-Nielsen ldquoTheory of the backpropagation neural net-workrdquo in Proceedings of the International Joint Conference onNeural Networks (IJCNN rsquo89) vol 1 pp 593ndash605 WashingtonDC USA June 1989

[37] FDanForesee andMTHagan ldquoGauss-Newton approximationto Bayesian learningrdquo in Proceedings of the International Con-ference on Neural Networks (IJCNN rsquo97) vol 3 pp 1930ndash1935IEEE Houston Tex USA June 1997

[38] L E Scales Introduction to Non-Linear Optimization Macmil-lan Education UK London 1985

[39] M H Beale M T Hagan and H B Demuth Neural NetworkToolbox119879119872Userrsquos Guide forMATLABR2012a NatickMA USA2012

[40] K Levenberg ldquoA method for the solution of certain non-linearproblems in least squaresrdquo Quarterly of Applied Mathematicsvol 2 pp 164ndash168 1944

[41] D Marquardt ldquoAn algorithm for least-squares estimation ofnonlinear parametersrdquo SIAM Journal on Applied Mathematicsvol 11 no 2 pp 431ndash441 1963

[42] J S Armstrong and F Collopy ldquoErrormeasures for generalizingabout forecasting methods empirical comparisonsrdquo Interna-tional Journal of Forecasting vol 8 no 1 pp 69ndash80 1992

[43] C Audet and J Dennis ldquoAnalysis of generalized pattern search-esrdquo SIAM Journal on Optimization vol 13 no 3 pp 889ndash9032002

[44] P E Gill W Murray andM HWright Practical OptimizationAcademic Press 1981

[45] R Fletcher Practical Methods of Optimization John Wiley ampSons New York NY USA 2nd edition 2000

[46] P E Gill W Murray and M H Wright Numerical LinearAlgebra and Optimization Addison-Wesley 1991

[47] A R Conn N I Gould and P Toint ldquoA globally convergentaugmented Lagrangian algorithm for optimization with generalconstraints and simple boundsrdquo SIAM Journal on NumericalAnalysis vol 28 no 2 pp 545ndash572 1991

[48] A R Conn N Gould and P L Toint ldquoA globally convergentLagrangian barrier algorithm for optimization with generalinequality constraints and simple boundsrdquo Mathematics ofComputation vol 66 no 217 pp 261ndash288 S1ndashS11 1997

[49] T G Kolda R M Lewis and V J Torczon ldquoA generating setdirect search augmented Lagrangian algorithm for optimizationwith a combination of general and linear constraintsrdquo Tech RepSAND2006-5315 Sandia National Laboratories USA 2006

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 7: Optimizing the Geometry of Flexure System Topologies Using the …web.cs.ucla.edu/~ahatamiz/BLOT.pdf · 2019-10-24 · synthesized topology using dierent geometric parameter values

Mathematical Problems in Engineering 7

Constraintfunction

x1

x2

O13

O12

O21

O11

O14

r2

Δx2

(a)

Z14

Z13

Z12

Z11

Z21

= 0

= Δ

f1(x1 x2)

f2(x

1x

2)

(b)

Constraintfunction

x1

x2

O22

O21

(c)

Z21 Z22

= 0

= Δ

f1(x1 x2)

f2(x

1x

2)

(d)

Figure 3 Progression of the SQP and then ALPS optimization algorithms for 120579 = 0 initialized in the objective function in the input space(a) and in the corresponding output space (b) continued progression of the same optimization algorithms for 120579 = Δ120579 incremented in theobjective function in the same input space (c) and in the same output space (d)

red dot labeled 11988512 in Figure 3(b) possesses 1198912 value thatis larger than any of the other previous blue dots shown inthe same figure The SQP algorithm then repeats this processby finding another set of permissible input combinations thatresult from adding and subtracting the resolution incrementof each inputΔ119909119894 to and from the new combination of inputs(ie 11987412 from Figure 3(a)) along each inputrsquos axis For theexample of Figure 3(a) this new set of input combinationsare shown as the four red dots immediately surroundingthe red dot labeled 11987412 Note that each of the five reddots in Figure 3(a) maps to a corresponding red dot inFigure 3(b)Thus the SQP algorithm rapidly finds an efficientpath toward a local maximum of the objective function byiteratively stepping from one cluster of dots to the next inthis manner The SQP algorithm terminates when either (i)the step distance from one central dot to the next (eg thedistance between11987411 and11987412 in Figure 3(a)) is smaller thanthe prescribed resolution of the input parameters Δ119909119894 or (ii)the process fails to generate the next step which typically

occurs because the first or second derivatives of the objectivefunction cannot be calculated The latter reason typicallyoccurs when the algorithm encounters discontinuities withinthe objective function

After the SQP algorithm terminates the boundary-plotting algorithm of this paper continues the optimizationprocess by supplying the combination of permissible inputsthat map to the combination of outputs that produce thelargest objective function value identified by the SQP algo-rithm to the Augmented Lagrangian Pattern Search (ALPS)[47ndash49] optimization algorithm For the example of Fig-ure 3(a) suppose the SQP process was unable to step beyondthe cluster of dots surrounding 11987412 and thus terminatedat that location The combination of inputs that would besupplied to the ALPS algorithm would be the red dot labeled11987413 in Figure 3(a) since this combination of inputs mapsto the combination of outputs that achieve the largest 1198912value found using the SQP algorithm This combination ofoutputs is shown as the red dot labeled 11988513 in Figure 3(b)

8 Mathematical Problems in Engineering

The ALPS algorithm first identifies a set of other permissibleinput combinations that result from adding and subtractingan initial mesh size 119903119894 to and from the combination of inputssupplied to the algorithm along each inputrsquos axis The initialmesh size labeled 1199032 in Figure 3(a) is typically set to 20of the range of its corresponding input parameter (ie 119903119894 =02|119909119894max minus 119909119894min|) For the example of Figure 3(a) the firstset of ALPS-generated input combinations are shown as thefour purple dots surrounding the red dot labeled 11987413 Notethat although 1199031 is shown as being equal to 1199032 in the examplethese mesh sizes are not typically equal for other scenariosThe systemrsquos model is then used to map the combinations ofthese inputs to their corresponding combinations of outputswhich are represented by the four purple dots shown inFigure 3(b)TheALPS algorithm then identifies if any of thesecombinations of inputs map to a combination of outputs thatproduce an objective function value that is larger than anyproduced previously in the optimization process Supposefor instance that the input combination of the example inFigure 3(a) labeled 11987414 maps to the output combinationlabeled11988514 in Figure 3(b) which achieves the largest1198912 valuepreviously identified The ALPS algorithm would then stepto the dot representing that input combination (eg 11987414)The algorithm would then identify a set of other permissibleinput combinations that result from adding and subtractingthe previous mesh size (eg 119903119894 in this case) multiplied byan expansion factor to and from this combination of inputsalong each inputrsquos axis For this paper the expansion factoris set to 2 Thus for the example of Figure 3(a) the nextset of ALPS-generated input combinations are shown as thethree orange dots surrounding the purple dot labeled 11987414These orange input dots shown in Figure 3(a) map to thethree orange output dots shown in Figure 3(b)The algorithmthen identifies if any of these output combinations producean objective function value that is larger than any producedpreviously in the optimization process Since none of theorange dots in Figure 3(b) possess an 1198912 value that is largerthan 11988514 the ALPS algorithm would then identify a setof other permissible input combinations that result fromadding and subtracting the previousmesh size (eg 2119903119894 in thiscase) divided by the same expansion factor to and from thecombination of inputs labeled 11987414 in Figure 3(a) along eachinputrsquos axis Thus for the example of Figure 3(a) the next setofALPS-generated input combinations are shown as the threelight-green dots surrounding the same purple dot labeled11987414These light-green input dots shown in Figure 3(a)map tothe three light-green output dots shown in Figure 3(b) Againsince none of the light-green dots in Figure 3(b) possessan 1198912 value that is larger than 11988514 the ALPS algorithmwould then identify another set of other permissible inputcombinations that result from adding and subtracting theprevious mesh size (eg 119903119894 in this case) divided by the sameexpansion factor to and from the combination of inputslabeled 11987414 in Figure 3(a) along each inputrsquos axis Thus forthe example of Figure 3(a) the next set of ALPS-generatedinput combinations are shown as the four dark-green dotssurrounding the same purple dot labeled 11987414 This processrepeats until either (i) one of the new input combinationsmaps to an output combination with an objective function

value that is larger than any produced previously or (ii) themesh size becomes equal to or less than a specified inputtolerance which for this paper is set to the resolution ofthe input parameters Δ119909119894 If the first option (i) occursthe algorithm will step to the improved input combinationand the ALPS process will continue iterating If the secondoption (ii) occurs the ALPS algorithmwill terminate For theexample of Figure 3(a) the second option occurred becausethe mesh size of the four yellow dots shown immediatelysurrounding the purple dot labeled 11987414 is equal to Δ1199092labeled in the same figure and none of the new output dotsgenerated ever surpassed the 1198912 value of 11988514 as shown inFigure 3(b)

Once the SQP and then ALPS algorithms have bothrun their full course for determining the maximum valueof 119869(1199091 1199092) from (4) for 120579 = 0 the 120579 parameter is thenincrementally increased by Δ120579 which is typically set to avalue between 12058710 to 12058720 Using this new 120579 parameter thealgorithm then computes the value of the objective functionin (4) for all existing input combinations which for theexample of this section are shown as the dots in Figure 3(a)From these input combinations the one that produces thelargest objective function value for 120579 = Δ120579 correspondsto the input combination represented by the dot labeled11987421 in Figure 3(a) which maps to the output combinationrepresented by the orange dot labeled 11988521 in Figure 3(b)The algorithm would then supply this input combinationto the SQP algorithm to generate more input combinationsthat produce larger objective function values as describedpreviously The four blue dots immediately surrounding thedot labeled 11987421 in Figure 3(c) would be identified firstfor the example of this section using this approach Thosefour blue dots map to the four new blue dots shown inFigure 3(d) that surround the dot labeled 11988521 The SQPalgorithm would then identify the next input combination(eg 11987422 shown in Figure 3(c)) that produces a largerobjective function value Note that the input combinationdot 11987422 maps to an output combination dot labeled 11988522in Figure 3(d) that is farther away along the directionprescribed by the new 120579 parameter value (ie Δ120579) As theSQP algorithm continues four other input combinationswould be identified that immediately surround the inputcombination dot labeled 11987422 in Figure 3(c) These dots arecolored red in Figure 3(c) Note however that one of thenew dots lies outside the red spline line and thus represents adesign instantiation that violates the geometric compatibilityconstraints imposedThus only three of the new surroundingdots map to permissible output combinations as shown inFigure 3(d) The SQP algorithm would continue in this wayuntil it terminates The ALPS algorithm would then takeover where the SQP algorithm left off as described previouslyuntil the ALPS algorithm also terminates Once the ALPSalgorithm terminates the algorithmwill have found the inputcombination that achieves the largest objective function valueidentified from among those previously tested for 120579 = Δ120579

The algorithm iterates this pattern of steps to identify thecombinations of output values that lie farthest away alongtheir prescribed directions defined by their corresponding120579 value in a clockwise fashion until 120579 ge 2120587 (ie all the

Mathematical Problems in Engineering 9

directions have been swept) It is important to note that anytime before the 120579 parameter is incrementally advanced theobjective function of (4) is rechecked for every combinationof input values that have been evaluated up to that point tomake sure that each of the previously identified output dotsthat are used to be the farthest away along their prescribeddirections is still the farthest away If a new dot is everidentified that is farther away than a previous dot along aspecific direction 120579 (ie if a new dot exceeds the dashed linesin Figure 3(b)) the iterative process is reset to that directionand the process continues using that improved output dot

Once this process is complete the MATLAB boundaryfunction (The MathWorks Inc) can be used to identifyall the combinations of output values that lie along theboundary of a convex shape that circumscribes the outputdots calculated and plotted using the systemrsquos model duringthe iterative processMany systems however produce a cloudof output dots that form a concavemdashnot convexmdashregionlike the one shown in Figure 4(a) If the output dots foundusing the MATLAB boundary function are used to definethe boundary of the example in Figure 4(a) the result wouldbe the red boundary shown in Figure 4(b) This boundarywould grossly overestimate the actual systemrsquos achievableperformance space since it is convex instead of concave likethe cloud of output dots Thus to address this issue theBLOT identifies all the vectors that point from each outputdot along the existing boundary to their neighboring dotson the same boundary The magnitude ℎmax of the longestvector is identified because this vector points between thetwo output dots (eg 119885ℎ1 and 119885ℎ2 shown in Figure 4(b)) thatusually correspond to the opening of a previously unknownconcave boundaryThe BLOT then computes a new objectivefunction 119869119892(1199091 1199092) defined by

119869119892 (1199091 1199092) = (cos21205721198772 + sin2120572)

sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )2

+ ( sin21205721198772 + cos2120572)

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )2 + 2sdot sin120572 cos120572( 1

1198772 minus 1)sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )

(5)

for all the input combinations that have been previouslyevaluated for 119877 = 1 This objective function is minimizedto identify output combinations that lie within circular orelliptical regions like those shown in Figure 4(c) If the119877 variable in (5) is 1 the region is a circle If however

this variable increases it becomes an increasingly elongatedellipse as shown in Figure 4(c) The angle 120572 in (5) is definedby

120572 = arctan(1198911119885ℎ2 minus 1198911119885ℎ11198912119885ℎ1 minus 1198912119885ℎ2) (6)

where1198911119885ℎ1 and1198912119885ℎ1 from (5) and (6) are the horizontal andvertical components of the119885ℎ1 dot labeled in Figure 4(c) and1198911119885ℎ2 and 1198912119885ℎ2 are the horizontal and vertical componentsof the 119885ℎ2 dot labeled in the same figure After the BLOTcomputes the objective function of (5) for all the inputcombinations that have been previously evaluated for 119877 = 1it identifies the existing input combination that produces thesmallest objective function value This input combination isthe combination that maps to the output combination thatis closest to the center of the circle shown in Figure 3(c)If no output dots are found within the circle the inputcombination corresponding to either the output dot 119885ℎ1 or119885ℎ2 will be chosen as the closest to the center of the circleand is thus supplied to the SQP and then ALPS algorithmdescribed previously to evaluate new input combinations Forthis SQP-ALPS optimization however the objective functionin (5) is minimized for 119877 = 1 instead of maximizing theobjective function of (4) for different values of 120579 as wasdone previously Suppose for the example of Figure 4 thatwhen this optimization is performed the new group of blueoutput dots shown in Figure 4(c) is generated Since none ofthese output dots lie within the center of the circle shownin the figure the previous 119877 value in the objective functionof (5) is multiplied by a factor of 2 and the search regionis expanded to an ellipse shown in Figure 4(c) Figure 4(e)shows the elliptical contour diagram of 119869119892(1199091 1199092) for this 119877value (ie 119877 = 2) If no output dots are found within thenew ellipse the process continues to iterate by multiplyingthe previous 119877 value by the same factor of 2 to increase theelliptical search region further For the example of Figure 4(c)however there are output dots that lie within the ellipticalsearch region corresponding to 119877 value of 2 Thus the inputcombination that maps to the output dot that lies within thisregion and possesses the smallest objective function value for119877 = 2 is supplied to the SQP-ALPS optimization algorithmto identify an even better output dot that achieves an evensmaller objective function value This process will producenew output dots (eg the new set of orange dots shownin Figure 4(e)) Whether these new output dots achieve asmaller objective function value or not the output dot thatachieves the smallest objective function value is identifiedand considered part of the systemrsquos performance boundaryIt is thus redefined as either 119885ℎ1 or 119885ℎ2 In the example ofFigure 4(e) the 119885ℎ2 output dot is the one that is redefinedNote also that ℎmax is also updated This boundary learningprocess is repeated until both (i) the horizontal componentof the boundary vector with the largest magnitude (ieℎmax) is less than a set percentage of the horizontal distanceacross the full cloud of output values and (ii) the verticalcomponent of the same vector is also less than the samepercentage of the vertical distance across the same cloudThis percentage threshold is typically set between 5 and

10 Mathematical Problems in Engineering

f1(x1 x2)

f2(x

1x

2)

(a)

f1(x1 x2)

f2(x

1x

2)

ℎGR

Zℎ1

Zℎ2

(b)

Zℎ1

Zℎ2

R = 2

R = 1

f1(x1 x2)

f2(x

1x

2)

(c)

Decreasing value

Zℎ1

Zℎ2

of Jg(x1 x2)

f1(x1 x2)

f2(x

1x

2)

(d)

Zℎ1

ℎGR

Zℎ2

f1(x1 x2)

f2(x

1x

2)

(e)

f1(x1 x2)

f2(x

1x

2)

(f)

Figure 4 Generated cloud of output dots (a) convex boundary first identified (b) new objective functionminimized to identify other outputdots within circular or elliptical regions (c) elliptical contour diagram of the new objective function with an 119877 value of 2 (d) boundary isupdated with a new ℎmax value (e) process successfully identifies boundaries that are concave (f)

10 Additionally before the largest boundary vector isupdated with a new magnitude (ie ℎmax) the entire opti-mization process of this section is repeated using the previousobjective function in (4) for all 120579 values to ensure thatany new dots evaluated since using that objective functionare allowed to improve the boundaryrsquos accuracy if possible

In this way both convex and concave boundaries like theconcave boundary shown in Figure 4(f) can be identifiedthat accurately define the systemrsquos achievable performancespace

A simple case study is performed to validate the per-formance of the boundary tracing algorithm of this section

Mathematical Problems in Engineering 11

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(a)

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(b)

Figure 5 Output values of a full parameter sweep (a) boundary identified for the same example using BLOT (b)

Suppose that three normalized input parameters 1199011 1199012 and1199013 map to two output functions 1198911 and 1198912 according to1198911 (1199011 1199012 1199013) = 11990131 + 1

211990121198912 (1199011 1199012 1199013) = 11990133 + 1

21199012(7)

If the input parameters are constrained according to

101199011 + 1199012 + 101199013 le 1511990121 + 1

10011990122 + 11990123 le 1 (8)

and each parameterrsquos smallest and largest values range from0 to 1 with a resolution increment of 001 the boundary ofthe region achieved by the functions of (7) can be found byplotting the output values for every permissible input valueFigure 5(a) shows all of these output values plotted as bluedots Another way to find the desired boundary but withmuch fewer calculations is to apply the algorithm of thissection as described The results are shown in Figure 5(b)Note that the algorithm identified a boundary (Figure 5(b))that is very close to the true boundary that contains the outputvalues (Figure 5(a)) after calculating and plotting only 2612dots instead of the 745298 dots that were calculated andplotted for the full parameter sweep of Figure 5(a)

4 Iterative Model and Boundary Refinement

This section provides the iterative process used to refinethe initial neural network-system models generated usingthe theory of Section 2 as well as their correspondingperformance capability boundary identified using the theoryof Section 3 Note that a single neural network is trainedfor each desired output performance capability plotted (egone neural network is trained to predict the flexure systemrsquos

range of motion for the example of Figure 1(f) and another istrained to predict its natural frequency) The process beginsby identifying all the design instantiations that lie along thefirst boundary plotted using the initial system models Theautomated FEM approach discussed in Section 2 is then usedto calculate their desired performance capabilities and theresults are saved as new sets of data called boundary setsThecombined MAPEboundary of both sets of output performancecapabilities is calculated using (3) but with all the subscriptslabeled ldquototalrdquo replaced by the word ldquoboundaryrdquo and where119873boundary is the total number of target output values frombothsets of output performance capabilities summed together Ifthe resulting MAPEboundary is equal to or less than 10 theneural network models pertaining to each output perfor-mance capability are used to generate the final boundary Ifhowever thisMAPEboundary is greater than 10 80 of the newdata is randomly added to the former training set of datadescribed in Section 2 for each of the corresponding neuralnetwork models The remaining 20 of the boundary dataset is added to the former testing set of data also describedin Section 2 The entire process of Sections 2 through 4 isthen repeated as new boundary data is added to the fullbody of previously acquired FEMdata until theMAPEboundaryis equal to or less than 10 Once this condition is satisfiedthe final neural network models used to predict the outputperformance capabilities are used to plot the final boundaryof the systemrsquos performance capabilities using the theory inSection 3 In this way all the points that constitute the finalperformance boundary plotted using BLOT for any flexuresystem are guaranteed to be accurate within an average errorof 10 or less

5 Flexure System Case Study Using the BLOT

This section uses the FACT-synthesized flexure system topol-ogy of Figure 1(f) as a detailed case study to demonstratethe capabilities of the BLOT Suppose that the smallest and

12 Mathematical Problems in Engineering

T = 10 mmL = 995 mmW = 100 mm T = 25 mm

L = 15 mmW = 100 mm

10minus1

10minus2

10minus3

10minus4

10minus5

10minus6

Tran

slatio

nal D

OF

Nor

mal

ized

rang

e of m

otio

n

100 10210minus4 10minus210minus6

Translational DOF natural frequency (kHz)

dradic

W2+L2

(a)

T = 25 mmL = 15 mmW = 100 mm

102

100

10minus2

10minus4

10minus6

Rota

tiona

l DO

F

100 10210minus4 10minus210minus6

Rotational DOF natural frequency (kHz)

rang

e of m

otio

(deg

rees

)

T = 10 mmL = 995 mmW = 100 mm

(b)

Figure 6 Boundaries of the topologyrsquos achievable ranges of motion and natural frequencies corresponding to the translational (a) androtational (b) DOF generated by the BLOT

largest values for each of the case studyrsquos three independentparameters (ie 119882 119879 and 119871) its resolution increment andthe properties of its constituent material are all set to bethe same values as those given in Section 1 Using the 119882 minus2119879 gt 0 constraint function provided earlier the BLOT canbe used to train various neural networks to create modelsthat map any desired geometric parameter values within thedesign space to design instantiations that achieve desiredperformance capabilities The performance capabilities ofinterest to this case study included (i) the topologyrsquos rangeof motion along its translational DOF direction as shownin Figure 1(d) (ii) the natural frequency of the topologythat corresponds with the mode shape of its translationalDOF (iii) the topologyrsquos angular range of motion aboutits rotational DOF as shown in Figure 1(e) and (iv) thenatural frequency of the topology that corresponds withthe mode shape of its rotational DOF The PYTHON scriptthat automates the collection of all the target data was setto ground the entire top surface of the fixed body shownwith thatched lines in Figure 1(f) on the side where the fourwire elements are attached The range of motion of eachdesign instantiation along the direction of the translationalDOF was calculated using FEA simulations by applying ashear force on the entire bottom face of the systemrsquos stageon the side where the four wire elements are attached Themagnitude of this shear force was gradually increased untilany portion within the system began to yield according toMises yield criterion The largest amount the stage translatedbefore reaching this yield criterion was defined to be therange ofmotion119889 of the corresponding design instantiationThis range of motion was normalized by dividing it byits characteristic length radic1198712 +1198822 The angular range ofmotion of each design instantiation about the rotationalDOF was also calculated using FEA simulations by applyingtwo opposing shear forces on either side of the systemrsquosstage to create a pure moment along the direction of theaxes of the wire elements The magnitude of this momentwas gradually increased until any portion within the systembegan to yield according to Mises yield criterion The largestamount the stage rotated before reaching this yield criterionwas defined to be the angular range of motion Φ of the

corresponding design instantiation The natural frequencies120596119899 corresponding to both of the translational and rotationalDOF mode shapes for each design instantiation were alsocalculated using finite element modal analysis simulationsA unique neural network with a single neuron output layerwas trained for each of the four performance capabilities ofinterest

Once the BLOT successfully created four accuratemodelsof the flexure system topology of Figure 1(f) by training fourneural networks to each map arbitrary design instantiationsof the topology to any of the four desired performancecapabilities of interest the BLOT then plotted final bound-aries that circumscribe the achievable combinations of theseperformance capabilities The boundary corresponding tothe normalized range of motion and natural frequency ofthe mode shape along the direction of the translationalDOF is show in Figure 6(a) Note that this was the sameboundary provided in Figure 1(g) but the plot in Figure 6(a)includes the colored output dots used to identify the finalboundary The geometric parameters for two optimizeddesign instantiations that span between the optimal portionof the boundary are provided in Figures 1(g) and 6(a)Other optimal design instantiations can be selected fromthis portion of the boundary to achieve different maximumcombinations of the performance capabilities The boundarycorresponding to the angular range of motion and naturalfrequency of the mode shape about the rotational DOF isprovided in Figure 6(b) Note that the two optimal designinstantiations shown as large black dots within the plots ofFigures 1(g) and 6(a) are also plotted in their correspondinglocations within the boundary provided in Figure 6(b)Although these design instantiations are not the two optimaldesign instantiations within the plot of Figure 6(b) they areclose to the optimal instantiations which are shown as largewhite dots in Figure 6(b) Finally it is worth noting thatthe plots of Figure 6 are presented using a log-log scaleSince such plots can never achieve zero or negative valuesthe BLOT establishes a cutoff threshold when identifying theboundary tomore rapidly and clearly define a practical regionof achievable performance capabilitiesThis threshold was setto 10minus6 for the plots of Figure 6

Mathematical Problems in Engineering 13

6 Conclusions and Future Work

This paper introduces an optimization tool called the Bound-ary Learning Optimization Tool (BLOT) which utilizes anautomated method for training neural networks to createaccurate models of general flexure system topologies syn-thesized using the FACT approach The BLOT uses thesemodels to plot the boundaries of regions containing thecombinations of desired performance capabilities that areachievable by different design instantiations of the FACT-synthesized topologies Both the neural network training andboundary identification portions of the BLOT are iteratedusing additional boundary data until the final boundary isguaranteed to be accurate within a value specified by theuser (eg less than 10 average error) A flexure system isprovided and optimized as a case study

TheBLOTwill be used in future works to generate Ashby-like material plots but for different architectured materialtopologies instead of for natural materials to compare theachievable properties of such microarchitectured structurescomposed of the same material These plots will enableengineers to identify trends among architectured materialsthat result from microstructure instead of composition

Disclosure

A preliminary version of this paperrsquos theory was first pre-sented at ASMErsquos IDETC as paper no DETC2017-67465

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Authorsrsquo Contributions

Ali Hatamizadeh and Yuanping Song are co-first authors astheir contributions to this paper are equal

Acknowledgments

This work was supported by the Air Force Office of ScienceResearch under Award no FA9550-15-1-0321 Program officerByung ldquoLesrdquo Lee is gratefully acknowledged This workused computational and storage services associated withthe Hoffman2 Shared Cluster provided by UCLA Institutefor Digital Research and Educationrsquos Research TechnologyGroup

References

[1] J B Hopkins Design of Parallel Flexure Systems via Freedomand Constraint Topologies (FACT) Massachusetts Institute ofTechnology 2007

[2] J B HopkinsDesign of Flexure-Based Motion Stages for Mecha-tronic Systems via Freedom Actuation and Constraint Topologies(FACT) Massachusetts Institute of Technology 2010

[3] J B Hopkins ldquoDesigning hybrid flexure systems and elementsusing freedom and constraint topologiesrdquoMechanical Sciencesvol 4 no 2 pp 319ndash331 2013

[4] Y LeCun Y Bengio and G Hinton ldquoDeep learningrdquo Naturevol 521 no 7553 pp 436ndash444 2015

[5] J B Hopkins K J Lange and C M Spadaccini ldquoDesigningmicrostructural architectures with thermally actuated prop-erties using freedom actuation and constraint topologiesrdquoJournal of Mechanical Design vol 135 no 6 Article ID 0610042013

[6] M F Ashby Materials Selection in Mechanical Design Butter-worth-Heinemann 2005

[7] X P Cheng and R V Patel ldquoNeural network based trackingcontrol of a flexible macro-micro manipulator systemrdquo NeuralNetworks vol 16 no 2 pp 271ndash286 2003

[8] W He Y Chen and Z Yin ldquoAdaptive neural network controlof an uncertain robot with full-state constraintsrdquo IEEE Transac-tions on Cybernetics vol 46 no 3 pp 620ndash629 2016

[9] H Kobayashi and R Ozawa ldquoAdaptive neural network controlof tendon-driven mechanisms with elastic tendonsrdquo Automat-ica vol 39 no 9 pp 1509ndash1519 2003

[10] J Takeuchi and Y Kosugi ldquoNeural network representation offinite element methodrdquo Neural Networks vol 7 no 2 pp 389ndash395 1994

[11] R I Levin and N A J Lieven ldquoDynamic finite elementmodel updating using neural networksrdquo Journal of Sound andVibration vol 210 no 5 pp 593ndash607 1998

[12] E Boillat S Kolossov R Glardon M Loher D Saladinand G Levy ldquoFinite element and neural network models forprocess optimization in selective laser sinteringrdquo Proceedingsof the Institution of Mechanical Engineers Part B Journal ofEngineering Manufacture vol 218 no 6 pp 607ndash614 2004

[13] M Lefik ldquoHybrid finite element-artificial neural networkmodel for composite materialsrdquo Journal of Theoretical andApplied Mechanics vol 42 pp 539ndash563 2004

[14] Y M A Hashash S Jung and J Ghaboussi ldquoNumerical imple-mentation of a neural network based material model in finiteelement analysisrdquo International Journal for Numerical Methodsin Engineering vol 59 no 7 pp 989ndash1005 2004

[15] L Manevitz M Yousef and D Givoli ldquoFinite-element meshgeneration using self-organizing neural networksrdquo Computer-Aided Civil and Infrastructure Engineering vol 12 no 4 pp233ndash250 1997

[16] Z Li andD Cao ldquoConceptual Design of CompliantMechanismBased on Port Ontologyrdquo Advances in Mechanical Engineeringvol 5 p 401492 2015

[17] Y Qin and Z Feng ldquoStructural dynamicmodification of flexurehinge structure based on artificial neural networkrdquo AviationPrecision Manufacturing Technology vol 5 no 11 2006

[18] F G Kong Q Li and W J Zhang ldquoAn artificial neuralnetwork approach tomechanism kinematic chain isomorphismidentificationrdquo Mechanism and Machine Theory vol 34 no 2pp 271ndash283 1999

[19] E K Burke andGKendall Eds SearchMethodologies SpringerUS Boston MA USA 2005

[20] Y V Haimes L S Lasdon and D A Wismer ldquoOn a bicriterionformulation of the problems of integrated system identificationand system optimizationrdquo IEEE Transactions on Systems Manand Cybernetics vol SMC-1 pp 296-297 1971

[21] P L Yu ldquoA class of solutions for group decision problemsrdquoManagement Science vol 19 no 8 pp 936ndash946 1973

14 Mathematical Problems in Engineering

[22] A P Wierzbicki ldquoOn the completeness and constructiveness ofparametric characterizations to vector optimization problemsrdquoOR Spectrum vol 8 no 2 pp 73ndash87 1986

[23] A P Wierzbicki ldquoA mathematical basis for satisficing decisionmakingrdquo in Organizations Multiple Agents with Multiple Cri-teria vol 190 of Lecture Notes in Economics and MathematicalSystems pp 465ndash486 Springer Berlin Heidelberg Berlin Hei-delberg 1981

[24] I Das and J E Dennis ldquoNormal-boundary intersection a newmethod for generating the Pareto surface in nonlinear multi-criteria optimization problemsrdquo SIAM Journal on Optimizationvol 8 no 3 pp 631ndash657 1998

[25] D E Goldberg Genetic Algorithms in Search Optimizationand Machine Learning Addison-Wesley Longman PublishingBoston MA USA 1st edition 1989

[26] ldquoExceptional papermdashlexicographic orders utilities anddecisionrules a surveyrdquo Management Science vol 20 pp 1442ndash14711974

[27] A Charnes and W W Cooper ldquoGoal programming and mul-tiple objective optimizationsrdquo European Journal of OperationalResearch vol 1 no 1 pp 39ndash54 1977

[28] K A de Jong Evolutionary Computation a Unified ApproachMIT Press Cambridge Mass USA 2006

[29] N Padhye P Bhardawaj and K Deb ldquoImproving differentialevolution through a unified approachrdquo Journal of Global Opti-mization vol 55 no 4 pp 771ndash799 2013

[30] O Sigmund ldquoOn the design of compliant mechanisms usingtopology optimizationrdquo Mechanics of Structures and Machinesvol 25 no 4 pp 493ndash524 1997

[31] M P Bendsoslashe and O Sigmund Topology Optimization TheoryMethod and Application Springer Berlin Heidelberg BerlinGermany 2003

[32] Z Luo L Chen J Yang Y Zhang and K Abdel-MalekldquoCompliant mechanism design using multi-objective topologyoptimization scheme of continuum structuresrdquo Structural andMultidisciplinary Optimization vol 30 no 2 pp 142ndash154 2005

[33] L Cao A T Dolovich A L Schwab J L Herder and WZhang ldquoToward a unified design approach for both compliantmechanisms and rigid-body mechanisms module optimiza-tionrdquo Journal of Mechanical Design vol 137 no 12 Article ID122301 2015

[34] H B Demuth M H Beale O Jess De andM T HaganNeuralNetwork Design 2nd edition 2014

[35] D E Rumelhart G E Hinton and R J Williams ldquoLearningrepresentations by back-propagating errorsrdquo Nature vol 323no 6088 pp 533ndash536 1986

[36] R Hecht-Nielsen ldquoTheory of the backpropagation neural net-workrdquo in Proceedings of the International Joint Conference onNeural Networks (IJCNN rsquo89) vol 1 pp 593ndash605 WashingtonDC USA June 1989

[37] FDanForesee andMTHagan ldquoGauss-Newton approximationto Bayesian learningrdquo in Proceedings of the International Con-ference on Neural Networks (IJCNN rsquo97) vol 3 pp 1930ndash1935IEEE Houston Tex USA June 1997

[38] L E Scales Introduction to Non-Linear Optimization Macmil-lan Education UK London 1985

[39] M H Beale M T Hagan and H B Demuth Neural NetworkToolbox119879119872Userrsquos Guide forMATLABR2012a NatickMA USA2012

[40] K Levenberg ldquoA method for the solution of certain non-linearproblems in least squaresrdquo Quarterly of Applied Mathematicsvol 2 pp 164ndash168 1944

[41] D Marquardt ldquoAn algorithm for least-squares estimation ofnonlinear parametersrdquo SIAM Journal on Applied Mathematicsvol 11 no 2 pp 431ndash441 1963

[42] J S Armstrong and F Collopy ldquoErrormeasures for generalizingabout forecasting methods empirical comparisonsrdquo Interna-tional Journal of Forecasting vol 8 no 1 pp 69ndash80 1992

[43] C Audet and J Dennis ldquoAnalysis of generalized pattern search-esrdquo SIAM Journal on Optimization vol 13 no 3 pp 889ndash9032002

[44] P E Gill W Murray andM HWright Practical OptimizationAcademic Press 1981

[45] R Fletcher Practical Methods of Optimization John Wiley ampSons New York NY USA 2nd edition 2000

[46] P E Gill W Murray and M H Wright Numerical LinearAlgebra and Optimization Addison-Wesley 1991

[47] A R Conn N I Gould and P Toint ldquoA globally convergentaugmented Lagrangian algorithm for optimization with generalconstraints and simple boundsrdquo SIAM Journal on NumericalAnalysis vol 28 no 2 pp 545ndash572 1991

[48] A R Conn N Gould and P L Toint ldquoA globally convergentLagrangian barrier algorithm for optimization with generalinequality constraints and simple boundsrdquo Mathematics ofComputation vol 66 no 217 pp 261ndash288 S1ndashS11 1997

[49] T G Kolda R M Lewis and V J Torczon ldquoA generating setdirect search augmented Lagrangian algorithm for optimizationwith a combination of general and linear constraintsrdquo Tech RepSAND2006-5315 Sandia National Laboratories USA 2006

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 8: Optimizing the Geometry of Flexure System Topologies Using the …web.cs.ucla.edu/~ahatamiz/BLOT.pdf · 2019-10-24 · synthesized topology using dierent geometric parameter values

8 Mathematical Problems in Engineering

The ALPS algorithm first identifies a set of other permissibleinput combinations that result from adding and subtractingan initial mesh size 119903119894 to and from the combination of inputssupplied to the algorithm along each inputrsquos axis The initialmesh size labeled 1199032 in Figure 3(a) is typically set to 20of the range of its corresponding input parameter (ie 119903119894 =02|119909119894max minus 119909119894min|) For the example of Figure 3(a) the firstset of ALPS-generated input combinations are shown as thefour purple dots surrounding the red dot labeled 11987413 Notethat although 1199031 is shown as being equal to 1199032 in the examplethese mesh sizes are not typically equal for other scenariosThe systemrsquos model is then used to map the combinations ofthese inputs to their corresponding combinations of outputswhich are represented by the four purple dots shown inFigure 3(b)TheALPS algorithm then identifies if any of thesecombinations of inputs map to a combination of outputs thatproduce an objective function value that is larger than anyproduced previously in the optimization process Supposefor instance that the input combination of the example inFigure 3(a) labeled 11987414 maps to the output combinationlabeled11988514 in Figure 3(b) which achieves the largest1198912 valuepreviously identified The ALPS algorithm would then stepto the dot representing that input combination (eg 11987414)The algorithm would then identify a set of other permissibleinput combinations that result from adding and subtractingthe previous mesh size (eg 119903119894 in this case) multiplied byan expansion factor to and from this combination of inputsalong each inputrsquos axis For this paper the expansion factoris set to 2 Thus for the example of Figure 3(a) the nextset of ALPS-generated input combinations are shown as thethree orange dots surrounding the purple dot labeled 11987414These orange input dots shown in Figure 3(a) map to thethree orange output dots shown in Figure 3(b)The algorithmthen identifies if any of these output combinations producean objective function value that is larger than any producedpreviously in the optimization process Since none of theorange dots in Figure 3(b) possess an 1198912 value that is largerthan 11988514 the ALPS algorithm would then identify a setof other permissible input combinations that result fromadding and subtracting the previousmesh size (eg 2119903119894 in thiscase) divided by the same expansion factor to and from thecombination of inputs labeled 11987414 in Figure 3(a) along eachinputrsquos axis Thus for the example of Figure 3(a) the next setofALPS-generated input combinations are shown as the threelight-green dots surrounding the same purple dot labeled11987414These light-green input dots shown in Figure 3(a)map tothe three light-green output dots shown in Figure 3(b) Againsince none of the light-green dots in Figure 3(b) possessan 1198912 value that is larger than 11988514 the ALPS algorithmwould then identify another set of other permissible inputcombinations that result from adding and subtracting theprevious mesh size (eg 119903119894 in this case) divided by the sameexpansion factor to and from the combination of inputslabeled 11987414 in Figure 3(a) along each inputrsquos axis Thus forthe example of Figure 3(a) the next set of ALPS-generatedinput combinations are shown as the four dark-green dotssurrounding the same purple dot labeled 11987414 This processrepeats until either (i) one of the new input combinationsmaps to an output combination with an objective function

value that is larger than any produced previously or (ii) themesh size becomes equal to or less than a specified inputtolerance which for this paper is set to the resolution ofthe input parameters Δ119909119894 If the first option (i) occursthe algorithm will step to the improved input combinationand the ALPS process will continue iterating If the secondoption (ii) occurs the ALPS algorithmwill terminate For theexample of Figure 3(a) the second option occurred becausethe mesh size of the four yellow dots shown immediatelysurrounding the purple dot labeled 11987414 is equal to Δ1199092labeled in the same figure and none of the new output dotsgenerated ever surpassed the 1198912 value of 11988514 as shown inFigure 3(b)

Once the SQP and then ALPS algorithms have bothrun their full course for determining the maximum valueof 119869(1199091 1199092) from (4) for 120579 = 0 the 120579 parameter is thenincrementally increased by Δ120579 which is typically set to avalue between 12058710 to 12058720 Using this new 120579 parameter thealgorithm then computes the value of the objective functionin (4) for all existing input combinations which for theexample of this section are shown as the dots in Figure 3(a)From these input combinations the one that produces thelargest objective function value for 120579 = Δ120579 correspondsto the input combination represented by the dot labeled11987421 in Figure 3(a) which maps to the output combinationrepresented by the orange dot labeled 11988521 in Figure 3(b)The algorithm would then supply this input combinationto the SQP algorithm to generate more input combinationsthat produce larger objective function values as describedpreviously The four blue dots immediately surrounding thedot labeled 11987421 in Figure 3(c) would be identified firstfor the example of this section using this approach Thosefour blue dots map to the four new blue dots shown inFigure 3(d) that surround the dot labeled 11988521 The SQPalgorithm would then identify the next input combination(eg 11987422 shown in Figure 3(c)) that produces a largerobjective function value Note that the input combinationdot 11987422 maps to an output combination dot labeled 11988522in Figure 3(d) that is farther away along the directionprescribed by the new 120579 parameter value (ie Δ120579) As theSQP algorithm continues four other input combinationswould be identified that immediately surround the inputcombination dot labeled 11987422 in Figure 3(c) These dots arecolored red in Figure 3(c) Note however that one of thenew dots lies outside the red spline line and thus represents adesign instantiation that violates the geometric compatibilityconstraints imposedThus only three of the new surroundingdots map to permissible output combinations as shown inFigure 3(d) The SQP algorithm would continue in this wayuntil it terminates The ALPS algorithm would then takeover where the SQP algorithm left off as described previouslyuntil the ALPS algorithm also terminates Once the ALPSalgorithm terminates the algorithmwill have found the inputcombination that achieves the largest objective function valueidentified from among those previously tested for 120579 = Δ120579

The algorithm iterates this pattern of steps to identify thecombinations of output values that lie farthest away alongtheir prescribed directions defined by their corresponding120579 value in a clockwise fashion until 120579 ge 2120587 (ie all the

Mathematical Problems in Engineering 9

directions have been swept) It is important to note that anytime before the 120579 parameter is incrementally advanced theobjective function of (4) is rechecked for every combinationof input values that have been evaluated up to that point tomake sure that each of the previously identified output dotsthat are used to be the farthest away along their prescribeddirections is still the farthest away If a new dot is everidentified that is farther away than a previous dot along aspecific direction 120579 (ie if a new dot exceeds the dashed linesin Figure 3(b)) the iterative process is reset to that directionand the process continues using that improved output dot

Once this process is complete the MATLAB boundaryfunction (The MathWorks Inc) can be used to identifyall the combinations of output values that lie along theboundary of a convex shape that circumscribes the outputdots calculated and plotted using the systemrsquos model duringthe iterative processMany systems however produce a cloudof output dots that form a concavemdashnot convexmdashregionlike the one shown in Figure 4(a) If the output dots foundusing the MATLAB boundary function are used to definethe boundary of the example in Figure 4(a) the result wouldbe the red boundary shown in Figure 4(b) This boundarywould grossly overestimate the actual systemrsquos achievableperformance space since it is convex instead of concave likethe cloud of output dots Thus to address this issue theBLOT identifies all the vectors that point from each outputdot along the existing boundary to their neighboring dotson the same boundary The magnitude ℎmax of the longestvector is identified because this vector points between thetwo output dots (eg 119885ℎ1 and 119885ℎ2 shown in Figure 4(b)) thatusually correspond to the opening of a previously unknownconcave boundaryThe BLOT then computes a new objectivefunction 119869119892(1199091 1199092) defined by

119869119892 (1199091 1199092) = (cos21205721198772 + sin2120572)

sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )2

+ ( sin21205721198772 + cos2120572)

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )2 + 2sdot sin120572 cos120572( 1

1198772 minus 1)sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )

(5)

for all the input combinations that have been previouslyevaluated for 119877 = 1 This objective function is minimizedto identify output combinations that lie within circular orelliptical regions like those shown in Figure 4(c) If the119877 variable in (5) is 1 the region is a circle If however

this variable increases it becomes an increasingly elongatedellipse as shown in Figure 4(c) The angle 120572 in (5) is definedby

120572 = arctan(1198911119885ℎ2 minus 1198911119885ℎ11198912119885ℎ1 minus 1198912119885ℎ2) (6)

where1198911119885ℎ1 and1198912119885ℎ1 from (5) and (6) are the horizontal andvertical components of the119885ℎ1 dot labeled in Figure 4(c) and1198911119885ℎ2 and 1198912119885ℎ2 are the horizontal and vertical componentsof the 119885ℎ2 dot labeled in the same figure After the BLOTcomputes the objective function of (5) for all the inputcombinations that have been previously evaluated for 119877 = 1it identifies the existing input combination that produces thesmallest objective function value This input combination isthe combination that maps to the output combination thatis closest to the center of the circle shown in Figure 3(c)If no output dots are found within the circle the inputcombination corresponding to either the output dot 119885ℎ1 or119885ℎ2 will be chosen as the closest to the center of the circleand is thus supplied to the SQP and then ALPS algorithmdescribed previously to evaluate new input combinations Forthis SQP-ALPS optimization however the objective functionin (5) is minimized for 119877 = 1 instead of maximizing theobjective function of (4) for different values of 120579 as wasdone previously Suppose for the example of Figure 4 thatwhen this optimization is performed the new group of blueoutput dots shown in Figure 4(c) is generated Since none ofthese output dots lie within the center of the circle shownin the figure the previous 119877 value in the objective functionof (5) is multiplied by a factor of 2 and the search regionis expanded to an ellipse shown in Figure 4(c) Figure 4(e)shows the elliptical contour diagram of 119869119892(1199091 1199092) for this 119877value (ie 119877 = 2) If no output dots are found within thenew ellipse the process continues to iterate by multiplyingthe previous 119877 value by the same factor of 2 to increase theelliptical search region further For the example of Figure 4(c)however there are output dots that lie within the ellipticalsearch region corresponding to 119877 value of 2 Thus the inputcombination that maps to the output dot that lies within thisregion and possesses the smallest objective function value for119877 = 2 is supplied to the SQP-ALPS optimization algorithmto identify an even better output dot that achieves an evensmaller objective function value This process will producenew output dots (eg the new set of orange dots shownin Figure 4(e)) Whether these new output dots achieve asmaller objective function value or not the output dot thatachieves the smallest objective function value is identifiedand considered part of the systemrsquos performance boundaryIt is thus redefined as either 119885ℎ1 or 119885ℎ2 In the example ofFigure 4(e) the 119885ℎ2 output dot is the one that is redefinedNote also that ℎmax is also updated This boundary learningprocess is repeated until both (i) the horizontal componentof the boundary vector with the largest magnitude (ieℎmax) is less than a set percentage of the horizontal distanceacross the full cloud of output values and (ii) the verticalcomponent of the same vector is also less than the samepercentage of the vertical distance across the same cloudThis percentage threshold is typically set between 5 and

10 Mathematical Problems in Engineering

f1(x1 x2)

f2(x

1x

2)

(a)

f1(x1 x2)

f2(x

1x

2)

ℎGR

Zℎ1

Zℎ2

(b)

Zℎ1

Zℎ2

R = 2

R = 1

f1(x1 x2)

f2(x

1x

2)

(c)

Decreasing value

Zℎ1

Zℎ2

of Jg(x1 x2)

f1(x1 x2)

f2(x

1x

2)

(d)

Zℎ1

ℎGR

Zℎ2

f1(x1 x2)

f2(x

1x

2)

(e)

f1(x1 x2)

f2(x

1x

2)

(f)

Figure 4 Generated cloud of output dots (a) convex boundary first identified (b) new objective functionminimized to identify other outputdots within circular or elliptical regions (c) elliptical contour diagram of the new objective function with an 119877 value of 2 (d) boundary isupdated with a new ℎmax value (e) process successfully identifies boundaries that are concave (f)

10 Additionally before the largest boundary vector isupdated with a new magnitude (ie ℎmax) the entire opti-mization process of this section is repeated using the previousobjective function in (4) for all 120579 values to ensure thatany new dots evaluated since using that objective functionare allowed to improve the boundaryrsquos accuracy if possible

In this way both convex and concave boundaries like theconcave boundary shown in Figure 4(f) can be identifiedthat accurately define the systemrsquos achievable performancespace

A simple case study is performed to validate the per-formance of the boundary tracing algorithm of this section

Mathematical Problems in Engineering 11

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(a)

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(b)

Figure 5 Output values of a full parameter sweep (a) boundary identified for the same example using BLOT (b)

Suppose that three normalized input parameters 1199011 1199012 and1199013 map to two output functions 1198911 and 1198912 according to1198911 (1199011 1199012 1199013) = 11990131 + 1

211990121198912 (1199011 1199012 1199013) = 11990133 + 1

21199012(7)

If the input parameters are constrained according to

101199011 + 1199012 + 101199013 le 1511990121 + 1

10011990122 + 11990123 le 1 (8)

and each parameterrsquos smallest and largest values range from0 to 1 with a resolution increment of 001 the boundary ofthe region achieved by the functions of (7) can be found byplotting the output values for every permissible input valueFigure 5(a) shows all of these output values plotted as bluedots Another way to find the desired boundary but withmuch fewer calculations is to apply the algorithm of thissection as described The results are shown in Figure 5(b)Note that the algorithm identified a boundary (Figure 5(b))that is very close to the true boundary that contains the outputvalues (Figure 5(a)) after calculating and plotting only 2612dots instead of the 745298 dots that were calculated andplotted for the full parameter sweep of Figure 5(a)

4 Iterative Model and Boundary Refinement

This section provides the iterative process used to refinethe initial neural network-system models generated usingthe theory of Section 2 as well as their correspondingperformance capability boundary identified using the theoryof Section 3 Note that a single neural network is trainedfor each desired output performance capability plotted (egone neural network is trained to predict the flexure systemrsquos

range of motion for the example of Figure 1(f) and another istrained to predict its natural frequency) The process beginsby identifying all the design instantiations that lie along thefirst boundary plotted using the initial system models Theautomated FEM approach discussed in Section 2 is then usedto calculate their desired performance capabilities and theresults are saved as new sets of data called boundary setsThecombined MAPEboundary of both sets of output performancecapabilities is calculated using (3) but with all the subscriptslabeled ldquototalrdquo replaced by the word ldquoboundaryrdquo and where119873boundary is the total number of target output values frombothsets of output performance capabilities summed together Ifthe resulting MAPEboundary is equal to or less than 10 theneural network models pertaining to each output perfor-mance capability are used to generate the final boundary Ifhowever thisMAPEboundary is greater than 10 80 of the newdata is randomly added to the former training set of datadescribed in Section 2 for each of the corresponding neuralnetwork models The remaining 20 of the boundary dataset is added to the former testing set of data also describedin Section 2 The entire process of Sections 2 through 4 isthen repeated as new boundary data is added to the fullbody of previously acquired FEMdata until theMAPEboundaryis equal to or less than 10 Once this condition is satisfiedthe final neural network models used to predict the outputperformance capabilities are used to plot the final boundaryof the systemrsquos performance capabilities using the theory inSection 3 In this way all the points that constitute the finalperformance boundary plotted using BLOT for any flexuresystem are guaranteed to be accurate within an average errorof 10 or less

5 Flexure System Case Study Using the BLOT

This section uses the FACT-synthesized flexure system topol-ogy of Figure 1(f) as a detailed case study to demonstratethe capabilities of the BLOT Suppose that the smallest and

12 Mathematical Problems in Engineering

T = 10 mmL = 995 mmW = 100 mm T = 25 mm

L = 15 mmW = 100 mm

10minus1

10minus2

10minus3

10minus4

10minus5

10minus6

Tran

slatio

nal D

OF

Nor

mal

ized

rang

e of m

otio

n

100 10210minus4 10minus210minus6

Translational DOF natural frequency (kHz)

dradic

W2+L2

(a)

T = 25 mmL = 15 mmW = 100 mm

102

100

10minus2

10minus4

10minus6

Rota

tiona

l DO

F

100 10210minus4 10minus210minus6

Rotational DOF natural frequency (kHz)

rang

e of m

otio

(deg

rees

)

T = 10 mmL = 995 mmW = 100 mm

(b)

Figure 6 Boundaries of the topologyrsquos achievable ranges of motion and natural frequencies corresponding to the translational (a) androtational (b) DOF generated by the BLOT

largest values for each of the case studyrsquos three independentparameters (ie 119882 119879 and 119871) its resolution increment andthe properties of its constituent material are all set to bethe same values as those given in Section 1 Using the 119882 minus2119879 gt 0 constraint function provided earlier the BLOT canbe used to train various neural networks to create modelsthat map any desired geometric parameter values within thedesign space to design instantiations that achieve desiredperformance capabilities The performance capabilities ofinterest to this case study included (i) the topologyrsquos rangeof motion along its translational DOF direction as shownin Figure 1(d) (ii) the natural frequency of the topologythat corresponds with the mode shape of its translationalDOF (iii) the topologyrsquos angular range of motion aboutits rotational DOF as shown in Figure 1(e) and (iv) thenatural frequency of the topology that corresponds withthe mode shape of its rotational DOF The PYTHON scriptthat automates the collection of all the target data was setto ground the entire top surface of the fixed body shownwith thatched lines in Figure 1(f) on the side where the fourwire elements are attached The range of motion of eachdesign instantiation along the direction of the translationalDOF was calculated using FEA simulations by applying ashear force on the entire bottom face of the systemrsquos stageon the side where the four wire elements are attached Themagnitude of this shear force was gradually increased untilany portion within the system began to yield according toMises yield criterion The largest amount the stage translatedbefore reaching this yield criterion was defined to be therange ofmotion119889 of the corresponding design instantiationThis range of motion was normalized by dividing it byits characteristic length radic1198712 +1198822 The angular range ofmotion of each design instantiation about the rotationalDOF was also calculated using FEA simulations by applyingtwo opposing shear forces on either side of the systemrsquosstage to create a pure moment along the direction of theaxes of the wire elements The magnitude of this momentwas gradually increased until any portion within the systembegan to yield according to Mises yield criterion The largestamount the stage rotated before reaching this yield criterionwas defined to be the angular range of motion Φ of the

corresponding design instantiation The natural frequencies120596119899 corresponding to both of the translational and rotationalDOF mode shapes for each design instantiation were alsocalculated using finite element modal analysis simulationsA unique neural network with a single neuron output layerwas trained for each of the four performance capabilities ofinterest

Once the BLOT successfully created four accuratemodelsof the flexure system topology of Figure 1(f) by training fourneural networks to each map arbitrary design instantiationsof the topology to any of the four desired performancecapabilities of interest the BLOT then plotted final bound-aries that circumscribe the achievable combinations of theseperformance capabilities The boundary corresponding tothe normalized range of motion and natural frequency ofthe mode shape along the direction of the translationalDOF is show in Figure 6(a) Note that this was the sameboundary provided in Figure 1(g) but the plot in Figure 6(a)includes the colored output dots used to identify the finalboundary The geometric parameters for two optimizeddesign instantiations that span between the optimal portionof the boundary are provided in Figures 1(g) and 6(a)Other optimal design instantiations can be selected fromthis portion of the boundary to achieve different maximumcombinations of the performance capabilities The boundarycorresponding to the angular range of motion and naturalfrequency of the mode shape about the rotational DOF isprovided in Figure 6(b) Note that the two optimal designinstantiations shown as large black dots within the plots ofFigures 1(g) and 6(a) are also plotted in their correspondinglocations within the boundary provided in Figure 6(b)Although these design instantiations are not the two optimaldesign instantiations within the plot of Figure 6(b) they areclose to the optimal instantiations which are shown as largewhite dots in Figure 6(b) Finally it is worth noting thatthe plots of Figure 6 are presented using a log-log scaleSince such plots can never achieve zero or negative valuesthe BLOT establishes a cutoff threshold when identifying theboundary tomore rapidly and clearly define a practical regionof achievable performance capabilitiesThis threshold was setto 10minus6 for the plots of Figure 6

Mathematical Problems in Engineering 13

6 Conclusions and Future Work

This paper introduces an optimization tool called the Bound-ary Learning Optimization Tool (BLOT) which utilizes anautomated method for training neural networks to createaccurate models of general flexure system topologies syn-thesized using the FACT approach The BLOT uses thesemodels to plot the boundaries of regions containing thecombinations of desired performance capabilities that areachievable by different design instantiations of the FACT-synthesized topologies Both the neural network training andboundary identification portions of the BLOT are iteratedusing additional boundary data until the final boundary isguaranteed to be accurate within a value specified by theuser (eg less than 10 average error) A flexure system isprovided and optimized as a case study

TheBLOTwill be used in future works to generate Ashby-like material plots but for different architectured materialtopologies instead of for natural materials to compare theachievable properties of such microarchitectured structurescomposed of the same material These plots will enableengineers to identify trends among architectured materialsthat result from microstructure instead of composition

Disclosure

A preliminary version of this paperrsquos theory was first pre-sented at ASMErsquos IDETC as paper no DETC2017-67465

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Authorsrsquo Contributions

Ali Hatamizadeh and Yuanping Song are co-first authors astheir contributions to this paper are equal

Acknowledgments

This work was supported by the Air Force Office of ScienceResearch under Award no FA9550-15-1-0321 Program officerByung ldquoLesrdquo Lee is gratefully acknowledged This workused computational and storage services associated withthe Hoffman2 Shared Cluster provided by UCLA Institutefor Digital Research and Educationrsquos Research TechnologyGroup

References

[1] J B Hopkins Design of Parallel Flexure Systems via Freedomand Constraint Topologies (FACT) Massachusetts Institute ofTechnology 2007

[2] J B HopkinsDesign of Flexure-Based Motion Stages for Mecha-tronic Systems via Freedom Actuation and Constraint Topologies(FACT) Massachusetts Institute of Technology 2010

[3] J B Hopkins ldquoDesigning hybrid flexure systems and elementsusing freedom and constraint topologiesrdquoMechanical Sciencesvol 4 no 2 pp 319ndash331 2013

[4] Y LeCun Y Bengio and G Hinton ldquoDeep learningrdquo Naturevol 521 no 7553 pp 436ndash444 2015

[5] J B Hopkins K J Lange and C M Spadaccini ldquoDesigningmicrostructural architectures with thermally actuated prop-erties using freedom actuation and constraint topologiesrdquoJournal of Mechanical Design vol 135 no 6 Article ID 0610042013

[6] M F Ashby Materials Selection in Mechanical Design Butter-worth-Heinemann 2005

[7] X P Cheng and R V Patel ldquoNeural network based trackingcontrol of a flexible macro-micro manipulator systemrdquo NeuralNetworks vol 16 no 2 pp 271ndash286 2003

[8] W He Y Chen and Z Yin ldquoAdaptive neural network controlof an uncertain robot with full-state constraintsrdquo IEEE Transac-tions on Cybernetics vol 46 no 3 pp 620ndash629 2016

[9] H Kobayashi and R Ozawa ldquoAdaptive neural network controlof tendon-driven mechanisms with elastic tendonsrdquo Automat-ica vol 39 no 9 pp 1509ndash1519 2003

[10] J Takeuchi and Y Kosugi ldquoNeural network representation offinite element methodrdquo Neural Networks vol 7 no 2 pp 389ndash395 1994

[11] R I Levin and N A J Lieven ldquoDynamic finite elementmodel updating using neural networksrdquo Journal of Sound andVibration vol 210 no 5 pp 593ndash607 1998

[12] E Boillat S Kolossov R Glardon M Loher D Saladinand G Levy ldquoFinite element and neural network models forprocess optimization in selective laser sinteringrdquo Proceedingsof the Institution of Mechanical Engineers Part B Journal ofEngineering Manufacture vol 218 no 6 pp 607ndash614 2004

[13] M Lefik ldquoHybrid finite element-artificial neural networkmodel for composite materialsrdquo Journal of Theoretical andApplied Mechanics vol 42 pp 539ndash563 2004

[14] Y M A Hashash S Jung and J Ghaboussi ldquoNumerical imple-mentation of a neural network based material model in finiteelement analysisrdquo International Journal for Numerical Methodsin Engineering vol 59 no 7 pp 989ndash1005 2004

[15] L Manevitz M Yousef and D Givoli ldquoFinite-element meshgeneration using self-organizing neural networksrdquo Computer-Aided Civil and Infrastructure Engineering vol 12 no 4 pp233ndash250 1997

[16] Z Li andD Cao ldquoConceptual Design of CompliantMechanismBased on Port Ontologyrdquo Advances in Mechanical Engineeringvol 5 p 401492 2015

[17] Y Qin and Z Feng ldquoStructural dynamicmodification of flexurehinge structure based on artificial neural networkrdquo AviationPrecision Manufacturing Technology vol 5 no 11 2006

[18] F G Kong Q Li and W J Zhang ldquoAn artificial neuralnetwork approach tomechanism kinematic chain isomorphismidentificationrdquo Mechanism and Machine Theory vol 34 no 2pp 271ndash283 1999

[19] E K Burke andGKendall Eds SearchMethodologies SpringerUS Boston MA USA 2005

[20] Y V Haimes L S Lasdon and D A Wismer ldquoOn a bicriterionformulation of the problems of integrated system identificationand system optimizationrdquo IEEE Transactions on Systems Manand Cybernetics vol SMC-1 pp 296-297 1971

[21] P L Yu ldquoA class of solutions for group decision problemsrdquoManagement Science vol 19 no 8 pp 936ndash946 1973

14 Mathematical Problems in Engineering

[22] A P Wierzbicki ldquoOn the completeness and constructiveness ofparametric characterizations to vector optimization problemsrdquoOR Spectrum vol 8 no 2 pp 73ndash87 1986

[23] A P Wierzbicki ldquoA mathematical basis for satisficing decisionmakingrdquo in Organizations Multiple Agents with Multiple Cri-teria vol 190 of Lecture Notes in Economics and MathematicalSystems pp 465ndash486 Springer Berlin Heidelberg Berlin Hei-delberg 1981

[24] I Das and J E Dennis ldquoNormal-boundary intersection a newmethod for generating the Pareto surface in nonlinear multi-criteria optimization problemsrdquo SIAM Journal on Optimizationvol 8 no 3 pp 631ndash657 1998

[25] D E Goldberg Genetic Algorithms in Search Optimizationand Machine Learning Addison-Wesley Longman PublishingBoston MA USA 1st edition 1989

[26] ldquoExceptional papermdashlexicographic orders utilities anddecisionrules a surveyrdquo Management Science vol 20 pp 1442ndash14711974

[27] A Charnes and W W Cooper ldquoGoal programming and mul-tiple objective optimizationsrdquo European Journal of OperationalResearch vol 1 no 1 pp 39ndash54 1977

[28] K A de Jong Evolutionary Computation a Unified ApproachMIT Press Cambridge Mass USA 2006

[29] N Padhye P Bhardawaj and K Deb ldquoImproving differentialevolution through a unified approachrdquo Journal of Global Opti-mization vol 55 no 4 pp 771ndash799 2013

[30] O Sigmund ldquoOn the design of compliant mechanisms usingtopology optimizationrdquo Mechanics of Structures and Machinesvol 25 no 4 pp 493ndash524 1997

[31] M P Bendsoslashe and O Sigmund Topology Optimization TheoryMethod and Application Springer Berlin Heidelberg BerlinGermany 2003

[32] Z Luo L Chen J Yang Y Zhang and K Abdel-MalekldquoCompliant mechanism design using multi-objective topologyoptimization scheme of continuum structuresrdquo Structural andMultidisciplinary Optimization vol 30 no 2 pp 142ndash154 2005

[33] L Cao A T Dolovich A L Schwab J L Herder and WZhang ldquoToward a unified design approach for both compliantmechanisms and rigid-body mechanisms module optimiza-tionrdquo Journal of Mechanical Design vol 137 no 12 Article ID122301 2015

[34] H B Demuth M H Beale O Jess De andM T HaganNeuralNetwork Design 2nd edition 2014

[35] D E Rumelhart G E Hinton and R J Williams ldquoLearningrepresentations by back-propagating errorsrdquo Nature vol 323no 6088 pp 533ndash536 1986

[36] R Hecht-Nielsen ldquoTheory of the backpropagation neural net-workrdquo in Proceedings of the International Joint Conference onNeural Networks (IJCNN rsquo89) vol 1 pp 593ndash605 WashingtonDC USA June 1989

[37] FDanForesee andMTHagan ldquoGauss-Newton approximationto Bayesian learningrdquo in Proceedings of the International Con-ference on Neural Networks (IJCNN rsquo97) vol 3 pp 1930ndash1935IEEE Houston Tex USA June 1997

[38] L E Scales Introduction to Non-Linear Optimization Macmil-lan Education UK London 1985

[39] M H Beale M T Hagan and H B Demuth Neural NetworkToolbox119879119872Userrsquos Guide forMATLABR2012a NatickMA USA2012

[40] K Levenberg ldquoA method for the solution of certain non-linearproblems in least squaresrdquo Quarterly of Applied Mathematicsvol 2 pp 164ndash168 1944

[41] D Marquardt ldquoAn algorithm for least-squares estimation ofnonlinear parametersrdquo SIAM Journal on Applied Mathematicsvol 11 no 2 pp 431ndash441 1963

[42] J S Armstrong and F Collopy ldquoErrormeasures for generalizingabout forecasting methods empirical comparisonsrdquo Interna-tional Journal of Forecasting vol 8 no 1 pp 69ndash80 1992

[43] C Audet and J Dennis ldquoAnalysis of generalized pattern search-esrdquo SIAM Journal on Optimization vol 13 no 3 pp 889ndash9032002

[44] P E Gill W Murray andM HWright Practical OptimizationAcademic Press 1981

[45] R Fletcher Practical Methods of Optimization John Wiley ampSons New York NY USA 2nd edition 2000

[46] P E Gill W Murray and M H Wright Numerical LinearAlgebra and Optimization Addison-Wesley 1991

[47] A R Conn N I Gould and P Toint ldquoA globally convergentaugmented Lagrangian algorithm for optimization with generalconstraints and simple boundsrdquo SIAM Journal on NumericalAnalysis vol 28 no 2 pp 545ndash572 1991

[48] A R Conn N Gould and P L Toint ldquoA globally convergentLagrangian barrier algorithm for optimization with generalinequality constraints and simple boundsrdquo Mathematics ofComputation vol 66 no 217 pp 261ndash288 S1ndashS11 1997

[49] T G Kolda R M Lewis and V J Torczon ldquoA generating setdirect search augmented Lagrangian algorithm for optimizationwith a combination of general and linear constraintsrdquo Tech RepSAND2006-5315 Sandia National Laboratories USA 2006

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 9: Optimizing the Geometry of Flexure System Topologies Using the …web.cs.ucla.edu/~ahatamiz/BLOT.pdf · 2019-10-24 · synthesized topology using dierent geometric parameter values

Mathematical Problems in Engineering 9

directions have been swept) It is important to note that anytime before the 120579 parameter is incrementally advanced theobjective function of (4) is rechecked for every combinationof input values that have been evaluated up to that point tomake sure that each of the previously identified output dotsthat are used to be the farthest away along their prescribeddirections is still the farthest away If a new dot is everidentified that is farther away than a previous dot along aspecific direction 120579 (ie if a new dot exceeds the dashed linesin Figure 3(b)) the iterative process is reset to that directionand the process continues using that improved output dot

Once this process is complete the MATLAB boundaryfunction (The MathWorks Inc) can be used to identifyall the combinations of output values that lie along theboundary of a convex shape that circumscribes the outputdots calculated and plotted using the systemrsquos model duringthe iterative processMany systems however produce a cloudof output dots that form a concavemdashnot convexmdashregionlike the one shown in Figure 4(a) If the output dots foundusing the MATLAB boundary function are used to definethe boundary of the example in Figure 4(a) the result wouldbe the red boundary shown in Figure 4(b) This boundarywould grossly overestimate the actual systemrsquos achievableperformance space since it is convex instead of concave likethe cloud of output dots Thus to address this issue theBLOT identifies all the vectors that point from each outputdot along the existing boundary to their neighboring dotson the same boundary The magnitude ℎmax of the longestvector is identified because this vector points between thetwo output dots (eg 119885ℎ1 and 119885ℎ2 shown in Figure 4(b)) thatusually correspond to the opening of a previously unknownconcave boundaryThe BLOT then computes a new objectivefunction 119869119892(1199091 1199092) defined by

119869119892 (1199091 1199092) = (cos21205721198772 + sin2120572)

sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )2

+ ( sin21205721198772 + cos2120572)

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )2 + 2sdot sin120572 cos120572( 1

1198772 minus 1)sdot (1198911 (1199091 1199092) minus 1198911119885ℎ1 + 1198911119885ℎ22 )

sdot (1198912 (1199091 1199092) minus 1198912119885ℎ1 + 1198912119885ℎ22 )

(5)

for all the input combinations that have been previouslyevaluated for 119877 = 1 This objective function is minimizedto identify output combinations that lie within circular orelliptical regions like those shown in Figure 4(c) If the119877 variable in (5) is 1 the region is a circle If however

this variable increases it becomes an increasingly elongatedellipse as shown in Figure 4(c) The angle 120572 in (5) is definedby

120572 = arctan(1198911119885ℎ2 minus 1198911119885ℎ11198912119885ℎ1 minus 1198912119885ℎ2) (6)

where1198911119885ℎ1 and1198912119885ℎ1 from (5) and (6) are the horizontal andvertical components of the119885ℎ1 dot labeled in Figure 4(c) and1198911119885ℎ2 and 1198912119885ℎ2 are the horizontal and vertical componentsof the 119885ℎ2 dot labeled in the same figure After the BLOTcomputes the objective function of (5) for all the inputcombinations that have been previously evaluated for 119877 = 1it identifies the existing input combination that produces thesmallest objective function value This input combination isthe combination that maps to the output combination thatis closest to the center of the circle shown in Figure 3(c)If no output dots are found within the circle the inputcombination corresponding to either the output dot 119885ℎ1 or119885ℎ2 will be chosen as the closest to the center of the circleand is thus supplied to the SQP and then ALPS algorithmdescribed previously to evaluate new input combinations Forthis SQP-ALPS optimization however the objective functionin (5) is minimized for 119877 = 1 instead of maximizing theobjective function of (4) for different values of 120579 as wasdone previously Suppose for the example of Figure 4 thatwhen this optimization is performed the new group of blueoutput dots shown in Figure 4(c) is generated Since none ofthese output dots lie within the center of the circle shownin the figure the previous 119877 value in the objective functionof (5) is multiplied by a factor of 2 and the search regionis expanded to an ellipse shown in Figure 4(c) Figure 4(e)shows the elliptical contour diagram of 119869119892(1199091 1199092) for this 119877value (ie 119877 = 2) If no output dots are found within thenew ellipse the process continues to iterate by multiplyingthe previous 119877 value by the same factor of 2 to increase theelliptical search region further For the example of Figure 4(c)however there are output dots that lie within the ellipticalsearch region corresponding to 119877 value of 2 Thus the inputcombination that maps to the output dot that lies within thisregion and possesses the smallest objective function value for119877 = 2 is supplied to the SQP-ALPS optimization algorithmto identify an even better output dot that achieves an evensmaller objective function value This process will producenew output dots (eg the new set of orange dots shownin Figure 4(e)) Whether these new output dots achieve asmaller objective function value or not the output dot thatachieves the smallest objective function value is identifiedand considered part of the systemrsquos performance boundaryIt is thus redefined as either 119885ℎ1 or 119885ℎ2 In the example ofFigure 4(e) the 119885ℎ2 output dot is the one that is redefinedNote also that ℎmax is also updated This boundary learningprocess is repeated until both (i) the horizontal componentof the boundary vector with the largest magnitude (ieℎmax) is less than a set percentage of the horizontal distanceacross the full cloud of output values and (ii) the verticalcomponent of the same vector is also less than the samepercentage of the vertical distance across the same cloudThis percentage threshold is typically set between 5 and

10 Mathematical Problems in Engineering

f1(x1 x2)

f2(x

1x

2)

(a)

f1(x1 x2)

f2(x

1x

2)

ℎGR

Zℎ1

Zℎ2

(b)

Zℎ1

Zℎ2

R = 2

R = 1

f1(x1 x2)

f2(x

1x

2)

(c)

Decreasing value

Zℎ1

Zℎ2

of Jg(x1 x2)

f1(x1 x2)

f2(x

1x

2)

(d)

Zℎ1

ℎGR

Zℎ2

f1(x1 x2)

f2(x

1x

2)

(e)

f1(x1 x2)

f2(x

1x

2)

(f)

Figure 4 Generated cloud of output dots (a) convex boundary first identified (b) new objective functionminimized to identify other outputdots within circular or elliptical regions (c) elliptical contour diagram of the new objective function with an 119877 value of 2 (d) boundary isupdated with a new ℎmax value (e) process successfully identifies boundaries that are concave (f)

10 Additionally before the largest boundary vector isupdated with a new magnitude (ie ℎmax) the entire opti-mization process of this section is repeated using the previousobjective function in (4) for all 120579 values to ensure thatany new dots evaluated since using that objective functionare allowed to improve the boundaryrsquos accuracy if possible

In this way both convex and concave boundaries like theconcave boundary shown in Figure 4(f) can be identifiedthat accurately define the systemrsquos achievable performancespace

A simple case study is performed to validate the per-formance of the boundary tracing algorithm of this section

Mathematical Problems in Engineering 11

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(a)

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(b)

Figure 5 Output values of a full parameter sweep (a) boundary identified for the same example using BLOT (b)

Suppose that three normalized input parameters 1199011 1199012 and1199013 map to two output functions 1198911 and 1198912 according to1198911 (1199011 1199012 1199013) = 11990131 + 1

211990121198912 (1199011 1199012 1199013) = 11990133 + 1

21199012(7)

If the input parameters are constrained according to

101199011 + 1199012 + 101199013 le 1511990121 + 1

10011990122 + 11990123 le 1 (8)

and each parameterrsquos smallest and largest values range from0 to 1 with a resolution increment of 001 the boundary ofthe region achieved by the functions of (7) can be found byplotting the output values for every permissible input valueFigure 5(a) shows all of these output values plotted as bluedots Another way to find the desired boundary but withmuch fewer calculations is to apply the algorithm of thissection as described The results are shown in Figure 5(b)Note that the algorithm identified a boundary (Figure 5(b))that is very close to the true boundary that contains the outputvalues (Figure 5(a)) after calculating and plotting only 2612dots instead of the 745298 dots that were calculated andplotted for the full parameter sweep of Figure 5(a)

4 Iterative Model and Boundary Refinement

This section provides the iterative process used to refinethe initial neural network-system models generated usingthe theory of Section 2 as well as their correspondingperformance capability boundary identified using the theoryof Section 3 Note that a single neural network is trainedfor each desired output performance capability plotted (egone neural network is trained to predict the flexure systemrsquos

range of motion for the example of Figure 1(f) and another istrained to predict its natural frequency) The process beginsby identifying all the design instantiations that lie along thefirst boundary plotted using the initial system models Theautomated FEM approach discussed in Section 2 is then usedto calculate their desired performance capabilities and theresults are saved as new sets of data called boundary setsThecombined MAPEboundary of both sets of output performancecapabilities is calculated using (3) but with all the subscriptslabeled ldquototalrdquo replaced by the word ldquoboundaryrdquo and where119873boundary is the total number of target output values frombothsets of output performance capabilities summed together Ifthe resulting MAPEboundary is equal to or less than 10 theneural network models pertaining to each output perfor-mance capability are used to generate the final boundary Ifhowever thisMAPEboundary is greater than 10 80 of the newdata is randomly added to the former training set of datadescribed in Section 2 for each of the corresponding neuralnetwork models The remaining 20 of the boundary dataset is added to the former testing set of data also describedin Section 2 The entire process of Sections 2 through 4 isthen repeated as new boundary data is added to the fullbody of previously acquired FEMdata until theMAPEboundaryis equal to or less than 10 Once this condition is satisfiedthe final neural network models used to predict the outputperformance capabilities are used to plot the final boundaryof the systemrsquos performance capabilities using the theory inSection 3 In this way all the points that constitute the finalperformance boundary plotted using BLOT for any flexuresystem are guaranteed to be accurate within an average errorof 10 or less

5 Flexure System Case Study Using the BLOT

This section uses the FACT-synthesized flexure system topol-ogy of Figure 1(f) as a detailed case study to demonstratethe capabilities of the BLOT Suppose that the smallest and

12 Mathematical Problems in Engineering

T = 10 mmL = 995 mmW = 100 mm T = 25 mm

L = 15 mmW = 100 mm

10minus1

10minus2

10minus3

10minus4

10minus5

10minus6

Tran

slatio

nal D

OF

Nor

mal

ized

rang

e of m

otio

n

100 10210minus4 10minus210minus6

Translational DOF natural frequency (kHz)

dradic

W2+L2

(a)

T = 25 mmL = 15 mmW = 100 mm

102

100

10minus2

10minus4

10minus6

Rota

tiona

l DO

F

100 10210minus4 10minus210minus6

Rotational DOF natural frequency (kHz)

rang

e of m

otio

(deg

rees

)

T = 10 mmL = 995 mmW = 100 mm

(b)

Figure 6 Boundaries of the topologyrsquos achievable ranges of motion and natural frequencies corresponding to the translational (a) androtational (b) DOF generated by the BLOT

largest values for each of the case studyrsquos three independentparameters (ie 119882 119879 and 119871) its resolution increment andthe properties of its constituent material are all set to bethe same values as those given in Section 1 Using the 119882 minus2119879 gt 0 constraint function provided earlier the BLOT canbe used to train various neural networks to create modelsthat map any desired geometric parameter values within thedesign space to design instantiations that achieve desiredperformance capabilities The performance capabilities ofinterest to this case study included (i) the topologyrsquos rangeof motion along its translational DOF direction as shownin Figure 1(d) (ii) the natural frequency of the topologythat corresponds with the mode shape of its translationalDOF (iii) the topologyrsquos angular range of motion aboutits rotational DOF as shown in Figure 1(e) and (iv) thenatural frequency of the topology that corresponds withthe mode shape of its rotational DOF The PYTHON scriptthat automates the collection of all the target data was setto ground the entire top surface of the fixed body shownwith thatched lines in Figure 1(f) on the side where the fourwire elements are attached The range of motion of eachdesign instantiation along the direction of the translationalDOF was calculated using FEA simulations by applying ashear force on the entire bottom face of the systemrsquos stageon the side where the four wire elements are attached Themagnitude of this shear force was gradually increased untilany portion within the system began to yield according toMises yield criterion The largest amount the stage translatedbefore reaching this yield criterion was defined to be therange ofmotion119889 of the corresponding design instantiationThis range of motion was normalized by dividing it byits characteristic length radic1198712 +1198822 The angular range ofmotion of each design instantiation about the rotationalDOF was also calculated using FEA simulations by applyingtwo opposing shear forces on either side of the systemrsquosstage to create a pure moment along the direction of theaxes of the wire elements The magnitude of this momentwas gradually increased until any portion within the systembegan to yield according to Mises yield criterion The largestamount the stage rotated before reaching this yield criterionwas defined to be the angular range of motion Φ of the

corresponding design instantiation The natural frequencies120596119899 corresponding to both of the translational and rotationalDOF mode shapes for each design instantiation were alsocalculated using finite element modal analysis simulationsA unique neural network with a single neuron output layerwas trained for each of the four performance capabilities ofinterest

Once the BLOT successfully created four accuratemodelsof the flexure system topology of Figure 1(f) by training fourneural networks to each map arbitrary design instantiationsof the topology to any of the four desired performancecapabilities of interest the BLOT then plotted final bound-aries that circumscribe the achievable combinations of theseperformance capabilities The boundary corresponding tothe normalized range of motion and natural frequency ofthe mode shape along the direction of the translationalDOF is show in Figure 6(a) Note that this was the sameboundary provided in Figure 1(g) but the plot in Figure 6(a)includes the colored output dots used to identify the finalboundary The geometric parameters for two optimizeddesign instantiations that span between the optimal portionof the boundary are provided in Figures 1(g) and 6(a)Other optimal design instantiations can be selected fromthis portion of the boundary to achieve different maximumcombinations of the performance capabilities The boundarycorresponding to the angular range of motion and naturalfrequency of the mode shape about the rotational DOF isprovided in Figure 6(b) Note that the two optimal designinstantiations shown as large black dots within the plots ofFigures 1(g) and 6(a) are also plotted in their correspondinglocations within the boundary provided in Figure 6(b)Although these design instantiations are not the two optimaldesign instantiations within the plot of Figure 6(b) they areclose to the optimal instantiations which are shown as largewhite dots in Figure 6(b) Finally it is worth noting thatthe plots of Figure 6 are presented using a log-log scaleSince such plots can never achieve zero or negative valuesthe BLOT establishes a cutoff threshold when identifying theboundary tomore rapidly and clearly define a practical regionof achievable performance capabilitiesThis threshold was setto 10minus6 for the plots of Figure 6

Mathematical Problems in Engineering 13

6 Conclusions and Future Work

This paper introduces an optimization tool called the Bound-ary Learning Optimization Tool (BLOT) which utilizes anautomated method for training neural networks to createaccurate models of general flexure system topologies syn-thesized using the FACT approach The BLOT uses thesemodels to plot the boundaries of regions containing thecombinations of desired performance capabilities that areachievable by different design instantiations of the FACT-synthesized topologies Both the neural network training andboundary identification portions of the BLOT are iteratedusing additional boundary data until the final boundary isguaranteed to be accurate within a value specified by theuser (eg less than 10 average error) A flexure system isprovided and optimized as a case study

TheBLOTwill be used in future works to generate Ashby-like material plots but for different architectured materialtopologies instead of for natural materials to compare theachievable properties of such microarchitectured structurescomposed of the same material These plots will enableengineers to identify trends among architectured materialsthat result from microstructure instead of composition

Disclosure

A preliminary version of this paperrsquos theory was first pre-sented at ASMErsquos IDETC as paper no DETC2017-67465

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Authorsrsquo Contributions

Ali Hatamizadeh and Yuanping Song are co-first authors astheir contributions to this paper are equal

Acknowledgments

This work was supported by the Air Force Office of ScienceResearch under Award no FA9550-15-1-0321 Program officerByung ldquoLesrdquo Lee is gratefully acknowledged This workused computational and storage services associated withthe Hoffman2 Shared Cluster provided by UCLA Institutefor Digital Research and Educationrsquos Research TechnologyGroup

References

[1] J B Hopkins Design of Parallel Flexure Systems via Freedomand Constraint Topologies (FACT) Massachusetts Institute ofTechnology 2007

[2] J B HopkinsDesign of Flexure-Based Motion Stages for Mecha-tronic Systems via Freedom Actuation and Constraint Topologies(FACT) Massachusetts Institute of Technology 2010

[3] J B Hopkins ldquoDesigning hybrid flexure systems and elementsusing freedom and constraint topologiesrdquoMechanical Sciencesvol 4 no 2 pp 319ndash331 2013

[4] Y LeCun Y Bengio and G Hinton ldquoDeep learningrdquo Naturevol 521 no 7553 pp 436ndash444 2015

[5] J B Hopkins K J Lange and C M Spadaccini ldquoDesigningmicrostructural architectures with thermally actuated prop-erties using freedom actuation and constraint topologiesrdquoJournal of Mechanical Design vol 135 no 6 Article ID 0610042013

[6] M F Ashby Materials Selection in Mechanical Design Butter-worth-Heinemann 2005

[7] X P Cheng and R V Patel ldquoNeural network based trackingcontrol of a flexible macro-micro manipulator systemrdquo NeuralNetworks vol 16 no 2 pp 271ndash286 2003

[8] W He Y Chen and Z Yin ldquoAdaptive neural network controlof an uncertain robot with full-state constraintsrdquo IEEE Transac-tions on Cybernetics vol 46 no 3 pp 620ndash629 2016

[9] H Kobayashi and R Ozawa ldquoAdaptive neural network controlof tendon-driven mechanisms with elastic tendonsrdquo Automat-ica vol 39 no 9 pp 1509ndash1519 2003

[10] J Takeuchi and Y Kosugi ldquoNeural network representation offinite element methodrdquo Neural Networks vol 7 no 2 pp 389ndash395 1994

[11] R I Levin and N A J Lieven ldquoDynamic finite elementmodel updating using neural networksrdquo Journal of Sound andVibration vol 210 no 5 pp 593ndash607 1998

[12] E Boillat S Kolossov R Glardon M Loher D Saladinand G Levy ldquoFinite element and neural network models forprocess optimization in selective laser sinteringrdquo Proceedingsof the Institution of Mechanical Engineers Part B Journal ofEngineering Manufacture vol 218 no 6 pp 607ndash614 2004

[13] M Lefik ldquoHybrid finite element-artificial neural networkmodel for composite materialsrdquo Journal of Theoretical andApplied Mechanics vol 42 pp 539ndash563 2004

[14] Y M A Hashash S Jung and J Ghaboussi ldquoNumerical imple-mentation of a neural network based material model in finiteelement analysisrdquo International Journal for Numerical Methodsin Engineering vol 59 no 7 pp 989ndash1005 2004

[15] L Manevitz M Yousef and D Givoli ldquoFinite-element meshgeneration using self-organizing neural networksrdquo Computer-Aided Civil and Infrastructure Engineering vol 12 no 4 pp233ndash250 1997

[16] Z Li andD Cao ldquoConceptual Design of CompliantMechanismBased on Port Ontologyrdquo Advances in Mechanical Engineeringvol 5 p 401492 2015

[17] Y Qin and Z Feng ldquoStructural dynamicmodification of flexurehinge structure based on artificial neural networkrdquo AviationPrecision Manufacturing Technology vol 5 no 11 2006

[18] F G Kong Q Li and W J Zhang ldquoAn artificial neuralnetwork approach tomechanism kinematic chain isomorphismidentificationrdquo Mechanism and Machine Theory vol 34 no 2pp 271ndash283 1999

[19] E K Burke andGKendall Eds SearchMethodologies SpringerUS Boston MA USA 2005

[20] Y V Haimes L S Lasdon and D A Wismer ldquoOn a bicriterionformulation of the problems of integrated system identificationand system optimizationrdquo IEEE Transactions on Systems Manand Cybernetics vol SMC-1 pp 296-297 1971

[21] P L Yu ldquoA class of solutions for group decision problemsrdquoManagement Science vol 19 no 8 pp 936ndash946 1973

14 Mathematical Problems in Engineering

[22] A P Wierzbicki ldquoOn the completeness and constructiveness ofparametric characterizations to vector optimization problemsrdquoOR Spectrum vol 8 no 2 pp 73ndash87 1986

[23] A P Wierzbicki ldquoA mathematical basis for satisficing decisionmakingrdquo in Organizations Multiple Agents with Multiple Cri-teria vol 190 of Lecture Notes in Economics and MathematicalSystems pp 465ndash486 Springer Berlin Heidelberg Berlin Hei-delberg 1981

[24] I Das and J E Dennis ldquoNormal-boundary intersection a newmethod for generating the Pareto surface in nonlinear multi-criteria optimization problemsrdquo SIAM Journal on Optimizationvol 8 no 3 pp 631ndash657 1998

[25] D E Goldberg Genetic Algorithms in Search Optimizationand Machine Learning Addison-Wesley Longman PublishingBoston MA USA 1st edition 1989

[26] ldquoExceptional papermdashlexicographic orders utilities anddecisionrules a surveyrdquo Management Science vol 20 pp 1442ndash14711974

[27] A Charnes and W W Cooper ldquoGoal programming and mul-tiple objective optimizationsrdquo European Journal of OperationalResearch vol 1 no 1 pp 39ndash54 1977

[28] K A de Jong Evolutionary Computation a Unified ApproachMIT Press Cambridge Mass USA 2006

[29] N Padhye P Bhardawaj and K Deb ldquoImproving differentialevolution through a unified approachrdquo Journal of Global Opti-mization vol 55 no 4 pp 771ndash799 2013

[30] O Sigmund ldquoOn the design of compliant mechanisms usingtopology optimizationrdquo Mechanics of Structures and Machinesvol 25 no 4 pp 493ndash524 1997

[31] M P Bendsoslashe and O Sigmund Topology Optimization TheoryMethod and Application Springer Berlin Heidelberg BerlinGermany 2003

[32] Z Luo L Chen J Yang Y Zhang and K Abdel-MalekldquoCompliant mechanism design using multi-objective topologyoptimization scheme of continuum structuresrdquo Structural andMultidisciplinary Optimization vol 30 no 2 pp 142ndash154 2005

[33] L Cao A T Dolovich A L Schwab J L Herder and WZhang ldquoToward a unified design approach for both compliantmechanisms and rigid-body mechanisms module optimiza-tionrdquo Journal of Mechanical Design vol 137 no 12 Article ID122301 2015

[34] H B Demuth M H Beale O Jess De andM T HaganNeuralNetwork Design 2nd edition 2014

[35] D E Rumelhart G E Hinton and R J Williams ldquoLearningrepresentations by back-propagating errorsrdquo Nature vol 323no 6088 pp 533ndash536 1986

[36] R Hecht-Nielsen ldquoTheory of the backpropagation neural net-workrdquo in Proceedings of the International Joint Conference onNeural Networks (IJCNN rsquo89) vol 1 pp 593ndash605 WashingtonDC USA June 1989

[37] FDanForesee andMTHagan ldquoGauss-Newton approximationto Bayesian learningrdquo in Proceedings of the International Con-ference on Neural Networks (IJCNN rsquo97) vol 3 pp 1930ndash1935IEEE Houston Tex USA June 1997

[38] L E Scales Introduction to Non-Linear Optimization Macmil-lan Education UK London 1985

[39] M H Beale M T Hagan and H B Demuth Neural NetworkToolbox119879119872Userrsquos Guide forMATLABR2012a NatickMA USA2012

[40] K Levenberg ldquoA method for the solution of certain non-linearproblems in least squaresrdquo Quarterly of Applied Mathematicsvol 2 pp 164ndash168 1944

[41] D Marquardt ldquoAn algorithm for least-squares estimation ofnonlinear parametersrdquo SIAM Journal on Applied Mathematicsvol 11 no 2 pp 431ndash441 1963

[42] J S Armstrong and F Collopy ldquoErrormeasures for generalizingabout forecasting methods empirical comparisonsrdquo Interna-tional Journal of Forecasting vol 8 no 1 pp 69ndash80 1992

[43] C Audet and J Dennis ldquoAnalysis of generalized pattern search-esrdquo SIAM Journal on Optimization vol 13 no 3 pp 889ndash9032002

[44] P E Gill W Murray andM HWright Practical OptimizationAcademic Press 1981

[45] R Fletcher Practical Methods of Optimization John Wiley ampSons New York NY USA 2nd edition 2000

[46] P E Gill W Murray and M H Wright Numerical LinearAlgebra and Optimization Addison-Wesley 1991

[47] A R Conn N I Gould and P Toint ldquoA globally convergentaugmented Lagrangian algorithm for optimization with generalconstraints and simple boundsrdquo SIAM Journal on NumericalAnalysis vol 28 no 2 pp 545ndash572 1991

[48] A R Conn N Gould and P L Toint ldquoA globally convergentLagrangian barrier algorithm for optimization with generalinequality constraints and simple boundsrdquo Mathematics ofComputation vol 66 no 217 pp 261ndash288 S1ndashS11 1997

[49] T G Kolda R M Lewis and V J Torczon ldquoA generating setdirect search augmented Lagrangian algorithm for optimizationwith a combination of general and linear constraintsrdquo Tech RepSAND2006-5315 Sandia National Laboratories USA 2006

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 10: Optimizing the Geometry of Flexure System Topologies Using the …web.cs.ucla.edu/~ahatamiz/BLOT.pdf · 2019-10-24 · synthesized topology using dierent geometric parameter values

10 Mathematical Problems in Engineering

f1(x1 x2)

f2(x

1x

2)

(a)

f1(x1 x2)

f2(x

1x

2)

ℎGR

Zℎ1

Zℎ2

(b)

Zℎ1

Zℎ2

R = 2

R = 1

f1(x1 x2)

f2(x

1x

2)

(c)

Decreasing value

Zℎ1

Zℎ2

of Jg(x1 x2)

f1(x1 x2)

f2(x

1x

2)

(d)

Zℎ1

ℎGR

Zℎ2

f1(x1 x2)

f2(x

1x

2)

(e)

f1(x1 x2)

f2(x

1x

2)

(f)

Figure 4 Generated cloud of output dots (a) convex boundary first identified (b) new objective functionminimized to identify other outputdots within circular or elliptical regions (c) elliptical contour diagram of the new objective function with an 119877 value of 2 (d) boundary isupdated with a new ℎmax value (e) process successfully identifies boundaries that are concave (f)

10 Additionally before the largest boundary vector isupdated with a new magnitude (ie ℎmax) the entire opti-mization process of this section is repeated using the previousobjective function in (4) for all 120579 values to ensure thatany new dots evaluated since using that objective functionare allowed to improve the boundaryrsquos accuracy if possible

In this way both convex and concave boundaries like theconcave boundary shown in Figure 4(f) can be identifiedthat accurately define the systemrsquos achievable performancespace

A simple case study is performed to validate the per-formance of the boundary tracing algorithm of this section

Mathematical Problems in Engineering 11

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(a)

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(b)

Figure 5 Output values of a full parameter sweep (a) boundary identified for the same example using BLOT (b)

Suppose that three normalized input parameters 1199011 1199012 and1199013 map to two output functions 1198911 and 1198912 according to1198911 (1199011 1199012 1199013) = 11990131 + 1

211990121198912 (1199011 1199012 1199013) = 11990133 + 1

21199012(7)

If the input parameters are constrained according to

101199011 + 1199012 + 101199013 le 1511990121 + 1

10011990122 + 11990123 le 1 (8)

and each parameterrsquos smallest and largest values range from0 to 1 with a resolution increment of 001 the boundary ofthe region achieved by the functions of (7) can be found byplotting the output values for every permissible input valueFigure 5(a) shows all of these output values plotted as bluedots Another way to find the desired boundary but withmuch fewer calculations is to apply the algorithm of thissection as described The results are shown in Figure 5(b)Note that the algorithm identified a boundary (Figure 5(b))that is very close to the true boundary that contains the outputvalues (Figure 5(a)) after calculating and plotting only 2612dots instead of the 745298 dots that were calculated andplotted for the full parameter sweep of Figure 5(a)

4 Iterative Model and Boundary Refinement

This section provides the iterative process used to refinethe initial neural network-system models generated usingthe theory of Section 2 as well as their correspondingperformance capability boundary identified using the theoryof Section 3 Note that a single neural network is trainedfor each desired output performance capability plotted (egone neural network is trained to predict the flexure systemrsquos

range of motion for the example of Figure 1(f) and another istrained to predict its natural frequency) The process beginsby identifying all the design instantiations that lie along thefirst boundary plotted using the initial system models Theautomated FEM approach discussed in Section 2 is then usedto calculate their desired performance capabilities and theresults are saved as new sets of data called boundary setsThecombined MAPEboundary of both sets of output performancecapabilities is calculated using (3) but with all the subscriptslabeled ldquototalrdquo replaced by the word ldquoboundaryrdquo and where119873boundary is the total number of target output values frombothsets of output performance capabilities summed together Ifthe resulting MAPEboundary is equal to or less than 10 theneural network models pertaining to each output perfor-mance capability are used to generate the final boundary Ifhowever thisMAPEboundary is greater than 10 80 of the newdata is randomly added to the former training set of datadescribed in Section 2 for each of the corresponding neuralnetwork models The remaining 20 of the boundary dataset is added to the former testing set of data also describedin Section 2 The entire process of Sections 2 through 4 isthen repeated as new boundary data is added to the fullbody of previously acquired FEMdata until theMAPEboundaryis equal to or less than 10 Once this condition is satisfiedthe final neural network models used to predict the outputperformance capabilities are used to plot the final boundaryof the systemrsquos performance capabilities using the theory inSection 3 In this way all the points that constitute the finalperformance boundary plotted using BLOT for any flexuresystem are guaranteed to be accurate within an average errorof 10 or less

5 Flexure System Case Study Using the BLOT

This section uses the FACT-synthesized flexure system topol-ogy of Figure 1(f) as a detailed case study to demonstratethe capabilities of the BLOT Suppose that the smallest and

12 Mathematical Problems in Engineering

T = 10 mmL = 995 mmW = 100 mm T = 25 mm

L = 15 mmW = 100 mm

10minus1

10minus2

10minus3

10minus4

10minus5

10minus6

Tran

slatio

nal D

OF

Nor

mal

ized

rang

e of m

otio

n

100 10210minus4 10minus210minus6

Translational DOF natural frequency (kHz)

dradic

W2+L2

(a)

T = 25 mmL = 15 mmW = 100 mm

102

100

10minus2

10minus4

10minus6

Rota

tiona

l DO

F

100 10210minus4 10minus210minus6

Rotational DOF natural frequency (kHz)

rang

e of m

otio

(deg

rees

)

T = 10 mmL = 995 mmW = 100 mm

(b)

Figure 6 Boundaries of the topologyrsquos achievable ranges of motion and natural frequencies corresponding to the translational (a) androtational (b) DOF generated by the BLOT

largest values for each of the case studyrsquos three independentparameters (ie 119882 119879 and 119871) its resolution increment andthe properties of its constituent material are all set to bethe same values as those given in Section 1 Using the 119882 minus2119879 gt 0 constraint function provided earlier the BLOT canbe used to train various neural networks to create modelsthat map any desired geometric parameter values within thedesign space to design instantiations that achieve desiredperformance capabilities The performance capabilities ofinterest to this case study included (i) the topologyrsquos rangeof motion along its translational DOF direction as shownin Figure 1(d) (ii) the natural frequency of the topologythat corresponds with the mode shape of its translationalDOF (iii) the topologyrsquos angular range of motion aboutits rotational DOF as shown in Figure 1(e) and (iv) thenatural frequency of the topology that corresponds withthe mode shape of its rotational DOF The PYTHON scriptthat automates the collection of all the target data was setto ground the entire top surface of the fixed body shownwith thatched lines in Figure 1(f) on the side where the fourwire elements are attached The range of motion of eachdesign instantiation along the direction of the translationalDOF was calculated using FEA simulations by applying ashear force on the entire bottom face of the systemrsquos stageon the side where the four wire elements are attached Themagnitude of this shear force was gradually increased untilany portion within the system began to yield according toMises yield criterion The largest amount the stage translatedbefore reaching this yield criterion was defined to be therange ofmotion119889 of the corresponding design instantiationThis range of motion was normalized by dividing it byits characteristic length radic1198712 +1198822 The angular range ofmotion of each design instantiation about the rotationalDOF was also calculated using FEA simulations by applyingtwo opposing shear forces on either side of the systemrsquosstage to create a pure moment along the direction of theaxes of the wire elements The magnitude of this momentwas gradually increased until any portion within the systembegan to yield according to Mises yield criterion The largestamount the stage rotated before reaching this yield criterionwas defined to be the angular range of motion Φ of the

corresponding design instantiation The natural frequencies120596119899 corresponding to both of the translational and rotationalDOF mode shapes for each design instantiation were alsocalculated using finite element modal analysis simulationsA unique neural network with a single neuron output layerwas trained for each of the four performance capabilities ofinterest

Once the BLOT successfully created four accuratemodelsof the flexure system topology of Figure 1(f) by training fourneural networks to each map arbitrary design instantiationsof the topology to any of the four desired performancecapabilities of interest the BLOT then plotted final bound-aries that circumscribe the achievable combinations of theseperformance capabilities The boundary corresponding tothe normalized range of motion and natural frequency ofthe mode shape along the direction of the translationalDOF is show in Figure 6(a) Note that this was the sameboundary provided in Figure 1(g) but the plot in Figure 6(a)includes the colored output dots used to identify the finalboundary The geometric parameters for two optimizeddesign instantiations that span between the optimal portionof the boundary are provided in Figures 1(g) and 6(a)Other optimal design instantiations can be selected fromthis portion of the boundary to achieve different maximumcombinations of the performance capabilities The boundarycorresponding to the angular range of motion and naturalfrequency of the mode shape about the rotational DOF isprovided in Figure 6(b) Note that the two optimal designinstantiations shown as large black dots within the plots ofFigures 1(g) and 6(a) are also plotted in their correspondinglocations within the boundary provided in Figure 6(b)Although these design instantiations are not the two optimaldesign instantiations within the plot of Figure 6(b) they areclose to the optimal instantiations which are shown as largewhite dots in Figure 6(b) Finally it is worth noting thatthe plots of Figure 6 are presented using a log-log scaleSince such plots can never achieve zero or negative valuesthe BLOT establishes a cutoff threshold when identifying theboundary tomore rapidly and clearly define a practical regionof achievable performance capabilitiesThis threshold was setto 10minus6 for the plots of Figure 6

Mathematical Problems in Engineering 13

6 Conclusions and Future Work

This paper introduces an optimization tool called the Bound-ary Learning Optimization Tool (BLOT) which utilizes anautomated method for training neural networks to createaccurate models of general flexure system topologies syn-thesized using the FACT approach The BLOT uses thesemodels to plot the boundaries of regions containing thecombinations of desired performance capabilities that areachievable by different design instantiations of the FACT-synthesized topologies Both the neural network training andboundary identification portions of the BLOT are iteratedusing additional boundary data until the final boundary isguaranteed to be accurate within a value specified by theuser (eg less than 10 average error) A flexure system isprovided and optimized as a case study

TheBLOTwill be used in future works to generate Ashby-like material plots but for different architectured materialtopologies instead of for natural materials to compare theachievable properties of such microarchitectured structurescomposed of the same material These plots will enableengineers to identify trends among architectured materialsthat result from microstructure instead of composition

Disclosure

A preliminary version of this paperrsquos theory was first pre-sented at ASMErsquos IDETC as paper no DETC2017-67465

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Authorsrsquo Contributions

Ali Hatamizadeh and Yuanping Song are co-first authors astheir contributions to this paper are equal

Acknowledgments

This work was supported by the Air Force Office of ScienceResearch under Award no FA9550-15-1-0321 Program officerByung ldquoLesrdquo Lee is gratefully acknowledged This workused computational and storage services associated withthe Hoffman2 Shared Cluster provided by UCLA Institutefor Digital Research and Educationrsquos Research TechnologyGroup

References

[1] J B Hopkins Design of Parallel Flexure Systems via Freedomand Constraint Topologies (FACT) Massachusetts Institute ofTechnology 2007

[2] J B HopkinsDesign of Flexure-Based Motion Stages for Mecha-tronic Systems via Freedom Actuation and Constraint Topologies(FACT) Massachusetts Institute of Technology 2010

[3] J B Hopkins ldquoDesigning hybrid flexure systems and elementsusing freedom and constraint topologiesrdquoMechanical Sciencesvol 4 no 2 pp 319ndash331 2013

[4] Y LeCun Y Bengio and G Hinton ldquoDeep learningrdquo Naturevol 521 no 7553 pp 436ndash444 2015

[5] J B Hopkins K J Lange and C M Spadaccini ldquoDesigningmicrostructural architectures with thermally actuated prop-erties using freedom actuation and constraint topologiesrdquoJournal of Mechanical Design vol 135 no 6 Article ID 0610042013

[6] M F Ashby Materials Selection in Mechanical Design Butter-worth-Heinemann 2005

[7] X P Cheng and R V Patel ldquoNeural network based trackingcontrol of a flexible macro-micro manipulator systemrdquo NeuralNetworks vol 16 no 2 pp 271ndash286 2003

[8] W He Y Chen and Z Yin ldquoAdaptive neural network controlof an uncertain robot with full-state constraintsrdquo IEEE Transac-tions on Cybernetics vol 46 no 3 pp 620ndash629 2016

[9] H Kobayashi and R Ozawa ldquoAdaptive neural network controlof tendon-driven mechanisms with elastic tendonsrdquo Automat-ica vol 39 no 9 pp 1509ndash1519 2003

[10] J Takeuchi and Y Kosugi ldquoNeural network representation offinite element methodrdquo Neural Networks vol 7 no 2 pp 389ndash395 1994

[11] R I Levin and N A J Lieven ldquoDynamic finite elementmodel updating using neural networksrdquo Journal of Sound andVibration vol 210 no 5 pp 593ndash607 1998

[12] E Boillat S Kolossov R Glardon M Loher D Saladinand G Levy ldquoFinite element and neural network models forprocess optimization in selective laser sinteringrdquo Proceedingsof the Institution of Mechanical Engineers Part B Journal ofEngineering Manufacture vol 218 no 6 pp 607ndash614 2004

[13] M Lefik ldquoHybrid finite element-artificial neural networkmodel for composite materialsrdquo Journal of Theoretical andApplied Mechanics vol 42 pp 539ndash563 2004

[14] Y M A Hashash S Jung and J Ghaboussi ldquoNumerical imple-mentation of a neural network based material model in finiteelement analysisrdquo International Journal for Numerical Methodsin Engineering vol 59 no 7 pp 989ndash1005 2004

[15] L Manevitz M Yousef and D Givoli ldquoFinite-element meshgeneration using self-organizing neural networksrdquo Computer-Aided Civil and Infrastructure Engineering vol 12 no 4 pp233ndash250 1997

[16] Z Li andD Cao ldquoConceptual Design of CompliantMechanismBased on Port Ontologyrdquo Advances in Mechanical Engineeringvol 5 p 401492 2015

[17] Y Qin and Z Feng ldquoStructural dynamicmodification of flexurehinge structure based on artificial neural networkrdquo AviationPrecision Manufacturing Technology vol 5 no 11 2006

[18] F G Kong Q Li and W J Zhang ldquoAn artificial neuralnetwork approach tomechanism kinematic chain isomorphismidentificationrdquo Mechanism and Machine Theory vol 34 no 2pp 271ndash283 1999

[19] E K Burke andGKendall Eds SearchMethodologies SpringerUS Boston MA USA 2005

[20] Y V Haimes L S Lasdon and D A Wismer ldquoOn a bicriterionformulation of the problems of integrated system identificationand system optimizationrdquo IEEE Transactions on Systems Manand Cybernetics vol SMC-1 pp 296-297 1971

[21] P L Yu ldquoA class of solutions for group decision problemsrdquoManagement Science vol 19 no 8 pp 936ndash946 1973

14 Mathematical Problems in Engineering

[22] A P Wierzbicki ldquoOn the completeness and constructiveness ofparametric characterizations to vector optimization problemsrdquoOR Spectrum vol 8 no 2 pp 73ndash87 1986

[23] A P Wierzbicki ldquoA mathematical basis for satisficing decisionmakingrdquo in Organizations Multiple Agents with Multiple Cri-teria vol 190 of Lecture Notes in Economics and MathematicalSystems pp 465ndash486 Springer Berlin Heidelberg Berlin Hei-delberg 1981

[24] I Das and J E Dennis ldquoNormal-boundary intersection a newmethod for generating the Pareto surface in nonlinear multi-criteria optimization problemsrdquo SIAM Journal on Optimizationvol 8 no 3 pp 631ndash657 1998

[25] D E Goldberg Genetic Algorithms in Search Optimizationand Machine Learning Addison-Wesley Longman PublishingBoston MA USA 1st edition 1989

[26] ldquoExceptional papermdashlexicographic orders utilities anddecisionrules a surveyrdquo Management Science vol 20 pp 1442ndash14711974

[27] A Charnes and W W Cooper ldquoGoal programming and mul-tiple objective optimizationsrdquo European Journal of OperationalResearch vol 1 no 1 pp 39ndash54 1977

[28] K A de Jong Evolutionary Computation a Unified ApproachMIT Press Cambridge Mass USA 2006

[29] N Padhye P Bhardawaj and K Deb ldquoImproving differentialevolution through a unified approachrdquo Journal of Global Opti-mization vol 55 no 4 pp 771ndash799 2013

[30] O Sigmund ldquoOn the design of compliant mechanisms usingtopology optimizationrdquo Mechanics of Structures and Machinesvol 25 no 4 pp 493ndash524 1997

[31] M P Bendsoslashe and O Sigmund Topology Optimization TheoryMethod and Application Springer Berlin Heidelberg BerlinGermany 2003

[32] Z Luo L Chen J Yang Y Zhang and K Abdel-MalekldquoCompliant mechanism design using multi-objective topologyoptimization scheme of continuum structuresrdquo Structural andMultidisciplinary Optimization vol 30 no 2 pp 142ndash154 2005

[33] L Cao A T Dolovich A L Schwab J L Herder and WZhang ldquoToward a unified design approach for both compliantmechanisms and rigid-body mechanisms module optimiza-tionrdquo Journal of Mechanical Design vol 137 no 12 Article ID122301 2015

[34] H B Demuth M H Beale O Jess De andM T HaganNeuralNetwork Design 2nd edition 2014

[35] D E Rumelhart G E Hinton and R J Williams ldquoLearningrepresentations by back-propagating errorsrdquo Nature vol 323no 6088 pp 533ndash536 1986

[36] R Hecht-Nielsen ldquoTheory of the backpropagation neural net-workrdquo in Proceedings of the International Joint Conference onNeural Networks (IJCNN rsquo89) vol 1 pp 593ndash605 WashingtonDC USA June 1989

[37] FDanForesee andMTHagan ldquoGauss-Newton approximationto Bayesian learningrdquo in Proceedings of the International Con-ference on Neural Networks (IJCNN rsquo97) vol 3 pp 1930ndash1935IEEE Houston Tex USA June 1997

[38] L E Scales Introduction to Non-Linear Optimization Macmil-lan Education UK London 1985

[39] M H Beale M T Hagan and H B Demuth Neural NetworkToolbox119879119872Userrsquos Guide forMATLABR2012a NatickMA USA2012

[40] K Levenberg ldquoA method for the solution of certain non-linearproblems in least squaresrdquo Quarterly of Applied Mathematicsvol 2 pp 164ndash168 1944

[41] D Marquardt ldquoAn algorithm for least-squares estimation ofnonlinear parametersrdquo SIAM Journal on Applied Mathematicsvol 11 no 2 pp 431ndash441 1963

[42] J S Armstrong and F Collopy ldquoErrormeasures for generalizingabout forecasting methods empirical comparisonsrdquo Interna-tional Journal of Forecasting vol 8 no 1 pp 69ndash80 1992

[43] C Audet and J Dennis ldquoAnalysis of generalized pattern search-esrdquo SIAM Journal on Optimization vol 13 no 3 pp 889ndash9032002

[44] P E Gill W Murray andM HWright Practical OptimizationAcademic Press 1981

[45] R Fletcher Practical Methods of Optimization John Wiley ampSons New York NY USA 2nd edition 2000

[46] P E Gill W Murray and M H Wright Numerical LinearAlgebra and Optimization Addison-Wesley 1991

[47] A R Conn N I Gould and P Toint ldquoA globally convergentaugmented Lagrangian algorithm for optimization with generalconstraints and simple boundsrdquo SIAM Journal on NumericalAnalysis vol 28 no 2 pp 545ndash572 1991

[48] A R Conn N Gould and P L Toint ldquoA globally convergentLagrangian barrier algorithm for optimization with generalinequality constraints and simple boundsrdquo Mathematics ofComputation vol 66 no 217 pp 261ndash288 S1ndashS11 1997

[49] T G Kolda R M Lewis and V J Torczon ldquoA generating setdirect search augmented Lagrangian algorithm for optimizationwith a combination of general and linear constraintsrdquo Tech RepSAND2006-5315 Sandia National Laboratories USA 2006

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 11: Optimizing the Geometry of Flexure System Topologies Using the …web.cs.ucla.edu/~ahatamiz/BLOT.pdf · 2019-10-24 · synthesized topology using dierent geometric parameter values

Mathematical Problems in Engineering 11

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(a)

05

1

15

0 05 1 15

f2(a

bc)

f1(a b c)

(b)

Figure 5 Output values of a full parameter sweep (a) boundary identified for the same example using BLOT (b)

Suppose that three normalized input parameters 1199011 1199012 and1199013 map to two output functions 1198911 and 1198912 according to1198911 (1199011 1199012 1199013) = 11990131 + 1

211990121198912 (1199011 1199012 1199013) = 11990133 + 1

21199012(7)

If the input parameters are constrained according to

101199011 + 1199012 + 101199013 le 1511990121 + 1

10011990122 + 11990123 le 1 (8)

and each parameterrsquos smallest and largest values range from0 to 1 with a resolution increment of 001 the boundary ofthe region achieved by the functions of (7) can be found byplotting the output values for every permissible input valueFigure 5(a) shows all of these output values plotted as bluedots Another way to find the desired boundary but withmuch fewer calculations is to apply the algorithm of thissection as described The results are shown in Figure 5(b)Note that the algorithm identified a boundary (Figure 5(b))that is very close to the true boundary that contains the outputvalues (Figure 5(a)) after calculating and plotting only 2612dots instead of the 745298 dots that were calculated andplotted for the full parameter sweep of Figure 5(a)

4 Iterative Model and Boundary Refinement

This section provides the iterative process used to refinethe initial neural network-system models generated usingthe theory of Section 2 as well as their correspondingperformance capability boundary identified using the theoryof Section 3 Note that a single neural network is trainedfor each desired output performance capability plotted (egone neural network is trained to predict the flexure systemrsquos

range of motion for the example of Figure 1(f) and another istrained to predict its natural frequency) The process beginsby identifying all the design instantiations that lie along thefirst boundary plotted using the initial system models Theautomated FEM approach discussed in Section 2 is then usedto calculate their desired performance capabilities and theresults are saved as new sets of data called boundary setsThecombined MAPEboundary of both sets of output performancecapabilities is calculated using (3) but with all the subscriptslabeled ldquototalrdquo replaced by the word ldquoboundaryrdquo and where119873boundary is the total number of target output values frombothsets of output performance capabilities summed together Ifthe resulting MAPEboundary is equal to or less than 10 theneural network models pertaining to each output perfor-mance capability are used to generate the final boundary Ifhowever thisMAPEboundary is greater than 10 80 of the newdata is randomly added to the former training set of datadescribed in Section 2 for each of the corresponding neuralnetwork models The remaining 20 of the boundary dataset is added to the former testing set of data also describedin Section 2 The entire process of Sections 2 through 4 isthen repeated as new boundary data is added to the fullbody of previously acquired FEMdata until theMAPEboundaryis equal to or less than 10 Once this condition is satisfiedthe final neural network models used to predict the outputperformance capabilities are used to plot the final boundaryof the systemrsquos performance capabilities using the theory inSection 3 In this way all the points that constitute the finalperformance boundary plotted using BLOT for any flexuresystem are guaranteed to be accurate within an average errorof 10 or less

5 Flexure System Case Study Using the BLOT

This section uses the FACT-synthesized flexure system topol-ogy of Figure 1(f) as a detailed case study to demonstratethe capabilities of the BLOT Suppose that the smallest and

12 Mathematical Problems in Engineering

T = 10 mmL = 995 mmW = 100 mm T = 25 mm

L = 15 mmW = 100 mm

10minus1

10minus2

10minus3

10minus4

10minus5

10minus6

Tran

slatio

nal D

OF

Nor

mal

ized

rang

e of m

otio

n

100 10210minus4 10minus210minus6

Translational DOF natural frequency (kHz)

dradic

W2+L2

(a)

T = 25 mmL = 15 mmW = 100 mm

102

100

10minus2

10minus4

10minus6

Rota

tiona

l DO

F

100 10210minus4 10minus210minus6

Rotational DOF natural frequency (kHz)

rang

e of m

otio

(deg

rees

)

T = 10 mmL = 995 mmW = 100 mm

(b)

Figure 6 Boundaries of the topologyrsquos achievable ranges of motion and natural frequencies corresponding to the translational (a) androtational (b) DOF generated by the BLOT

largest values for each of the case studyrsquos three independentparameters (ie 119882 119879 and 119871) its resolution increment andthe properties of its constituent material are all set to bethe same values as those given in Section 1 Using the 119882 minus2119879 gt 0 constraint function provided earlier the BLOT canbe used to train various neural networks to create modelsthat map any desired geometric parameter values within thedesign space to design instantiations that achieve desiredperformance capabilities The performance capabilities ofinterest to this case study included (i) the topologyrsquos rangeof motion along its translational DOF direction as shownin Figure 1(d) (ii) the natural frequency of the topologythat corresponds with the mode shape of its translationalDOF (iii) the topologyrsquos angular range of motion aboutits rotational DOF as shown in Figure 1(e) and (iv) thenatural frequency of the topology that corresponds withthe mode shape of its rotational DOF The PYTHON scriptthat automates the collection of all the target data was setto ground the entire top surface of the fixed body shownwith thatched lines in Figure 1(f) on the side where the fourwire elements are attached The range of motion of eachdesign instantiation along the direction of the translationalDOF was calculated using FEA simulations by applying ashear force on the entire bottom face of the systemrsquos stageon the side where the four wire elements are attached Themagnitude of this shear force was gradually increased untilany portion within the system began to yield according toMises yield criterion The largest amount the stage translatedbefore reaching this yield criterion was defined to be therange ofmotion119889 of the corresponding design instantiationThis range of motion was normalized by dividing it byits characteristic length radic1198712 +1198822 The angular range ofmotion of each design instantiation about the rotationalDOF was also calculated using FEA simulations by applyingtwo opposing shear forces on either side of the systemrsquosstage to create a pure moment along the direction of theaxes of the wire elements The magnitude of this momentwas gradually increased until any portion within the systembegan to yield according to Mises yield criterion The largestamount the stage rotated before reaching this yield criterionwas defined to be the angular range of motion Φ of the

corresponding design instantiation The natural frequencies120596119899 corresponding to both of the translational and rotationalDOF mode shapes for each design instantiation were alsocalculated using finite element modal analysis simulationsA unique neural network with a single neuron output layerwas trained for each of the four performance capabilities ofinterest

Once the BLOT successfully created four accuratemodelsof the flexure system topology of Figure 1(f) by training fourneural networks to each map arbitrary design instantiationsof the topology to any of the four desired performancecapabilities of interest the BLOT then plotted final bound-aries that circumscribe the achievable combinations of theseperformance capabilities The boundary corresponding tothe normalized range of motion and natural frequency ofthe mode shape along the direction of the translationalDOF is show in Figure 6(a) Note that this was the sameboundary provided in Figure 1(g) but the plot in Figure 6(a)includes the colored output dots used to identify the finalboundary The geometric parameters for two optimizeddesign instantiations that span between the optimal portionof the boundary are provided in Figures 1(g) and 6(a)Other optimal design instantiations can be selected fromthis portion of the boundary to achieve different maximumcombinations of the performance capabilities The boundarycorresponding to the angular range of motion and naturalfrequency of the mode shape about the rotational DOF isprovided in Figure 6(b) Note that the two optimal designinstantiations shown as large black dots within the plots ofFigures 1(g) and 6(a) are also plotted in their correspondinglocations within the boundary provided in Figure 6(b)Although these design instantiations are not the two optimaldesign instantiations within the plot of Figure 6(b) they areclose to the optimal instantiations which are shown as largewhite dots in Figure 6(b) Finally it is worth noting thatthe plots of Figure 6 are presented using a log-log scaleSince such plots can never achieve zero or negative valuesthe BLOT establishes a cutoff threshold when identifying theboundary tomore rapidly and clearly define a practical regionof achievable performance capabilitiesThis threshold was setto 10minus6 for the plots of Figure 6

Mathematical Problems in Engineering 13

6 Conclusions and Future Work

This paper introduces an optimization tool called the Bound-ary Learning Optimization Tool (BLOT) which utilizes anautomated method for training neural networks to createaccurate models of general flexure system topologies syn-thesized using the FACT approach The BLOT uses thesemodels to plot the boundaries of regions containing thecombinations of desired performance capabilities that areachievable by different design instantiations of the FACT-synthesized topologies Both the neural network training andboundary identification portions of the BLOT are iteratedusing additional boundary data until the final boundary isguaranteed to be accurate within a value specified by theuser (eg less than 10 average error) A flexure system isprovided and optimized as a case study

TheBLOTwill be used in future works to generate Ashby-like material plots but for different architectured materialtopologies instead of for natural materials to compare theachievable properties of such microarchitectured structurescomposed of the same material These plots will enableengineers to identify trends among architectured materialsthat result from microstructure instead of composition

Disclosure

A preliminary version of this paperrsquos theory was first pre-sented at ASMErsquos IDETC as paper no DETC2017-67465

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Authorsrsquo Contributions

Ali Hatamizadeh and Yuanping Song are co-first authors astheir contributions to this paper are equal

Acknowledgments

This work was supported by the Air Force Office of ScienceResearch under Award no FA9550-15-1-0321 Program officerByung ldquoLesrdquo Lee is gratefully acknowledged This workused computational and storage services associated withthe Hoffman2 Shared Cluster provided by UCLA Institutefor Digital Research and Educationrsquos Research TechnologyGroup

References

[1] J B Hopkins Design of Parallel Flexure Systems via Freedomand Constraint Topologies (FACT) Massachusetts Institute ofTechnology 2007

[2] J B HopkinsDesign of Flexure-Based Motion Stages for Mecha-tronic Systems via Freedom Actuation and Constraint Topologies(FACT) Massachusetts Institute of Technology 2010

[3] J B Hopkins ldquoDesigning hybrid flexure systems and elementsusing freedom and constraint topologiesrdquoMechanical Sciencesvol 4 no 2 pp 319ndash331 2013

[4] Y LeCun Y Bengio and G Hinton ldquoDeep learningrdquo Naturevol 521 no 7553 pp 436ndash444 2015

[5] J B Hopkins K J Lange and C M Spadaccini ldquoDesigningmicrostructural architectures with thermally actuated prop-erties using freedom actuation and constraint topologiesrdquoJournal of Mechanical Design vol 135 no 6 Article ID 0610042013

[6] M F Ashby Materials Selection in Mechanical Design Butter-worth-Heinemann 2005

[7] X P Cheng and R V Patel ldquoNeural network based trackingcontrol of a flexible macro-micro manipulator systemrdquo NeuralNetworks vol 16 no 2 pp 271ndash286 2003

[8] W He Y Chen and Z Yin ldquoAdaptive neural network controlof an uncertain robot with full-state constraintsrdquo IEEE Transac-tions on Cybernetics vol 46 no 3 pp 620ndash629 2016

[9] H Kobayashi and R Ozawa ldquoAdaptive neural network controlof tendon-driven mechanisms with elastic tendonsrdquo Automat-ica vol 39 no 9 pp 1509ndash1519 2003

[10] J Takeuchi and Y Kosugi ldquoNeural network representation offinite element methodrdquo Neural Networks vol 7 no 2 pp 389ndash395 1994

[11] R I Levin and N A J Lieven ldquoDynamic finite elementmodel updating using neural networksrdquo Journal of Sound andVibration vol 210 no 5 pp 593ndash607 1998

[12] E Boillat S Kolossov R Glardon M Loher D Saladinand G Levy ldquoFinite element and neural network models forprocess optimization in selective laser sinteringrdquo Proceedingsof the Institution of Mechanical Engineers Part B Journal ofEngineering Manufacture vol 218 no 6 pp 607ndash614 2004

[13] M Lefik ldquoHybrid finite element-artificial neural networkmodel for composite materialsrdquo Journal of Theoretical andApplied Mechanics vol 42 pp 539ndash563 2004

[14] Y M A Hashash S Jung and J Ghaboussi ldquoNumerical imple-mentation of a neural network based material model in finiteelement analysisrdquo International Journal for Numerical Methodsin Engineering vol 59 no 7 pp 989ndash1005 2004

[15] L Manevitz M Yousef and D Givoli ldquoFinite-element meshgeneration using self-organizing neural networksrdquo Computer-Aided Civil and Infrastructure Engineering vol 12 no 4 pp233ndash250 1997

[16] Z Li andD Cao ldquoConceptual Design of CompliantMechanismBased on Port Ontologyrdquo Advances in Mechanical Engineeringvol 5 p 401492 2015

[17] Y Qin and Z Feng ldquoStructural dynamicmodification of flexurehinge structure based on artificial neural networkrdquo AviationPrecision Manufacturing Technology vol 5 no 11 2006

[18] F G Kong Q Li and W J Zhang ldquoAn artificial neuralnetwork approach tomechanism kinematic chain isomorphismidentificationrdquo Mechanism and Machine Theory vol 34 no 2pp 271ndash283 1999

[19] E K Burke andGKendall Eds SearchMethodologies SpringerUS Boston MA USA 2005

[20] Y V Haimes L S Lasdon and D A Wismer ldquoOn a bicriterionformulation of the problems of integrated system identificationand system optimizationrdquo IEEE Transactions on Systems Manand Cybernetics vol SMC-1 pp 296-297 1971

[21] P L Yu ldquoA class of solutions for group decision problemsrdquoManagement Science vol 19 no 8 pp 936ndash946 1973

14 Mathematical Problems in Engineering

[22] A P Wierzbicki ldquoOn the completeness and constructiveness ofparametric characterizations to vector optimization problemsrdquoOR Spectrum vol 8 no 2 pp 73ndash87 1986

[23] A P Wierzbicki ldquoA mathematical basis for satisficing decisionmakingrdquo in Organizations Multiple Agents with Multiple Cri-teria vol 190 of Lecture Notes in Economics and MathematicalSystems pp 465ndash486 Springer Berlin Heidelberg Berlin Hei-delberg 1981

[24] I Das and J E Dennis ldquoNormal-boundary intersection a newmethod for generating the Pareto surface in nonlinear multi-criteria optimization problemsrdquo SIAM Journal on Optimizationvol 8 no 3 pp 631ndash657 1998

[25] D E Goldberg Genetic Algorithms in Search Optimizationand Machine Learning Addison-Wesley Longman PublishingBoston MA USA 1st edition 1989

[26] ldquoExceptional papermdashlexicographic orders utilities anddecisionrules a surveyrdquo Management Science vol 20 pp 1442ndash14711974

[27] A Charnes and W W Cooper ldquoGoal programming and mul-tiple objective optimizationsrdquo European Journal of OperationalResearch vol 1 no 1 pp 39ndash54 1977

[28] K A de Jong Evolutionary Computation a Unified ApproachMIT Press Cambridge Mass USA 2006

[29] N Padhye P Bhardawaj and K Deb ldquoImproving differentialevolution through a unified approachrdquo Journal of Global Opti-mization vol 55 no 4 pp 771ndash799 2013

[30] O Sigmund ldquoOn the design of compliant mechanisms usingtopology optimizationrdquo Mechanics of Structures and Machinesvol 25 no 4 pp 493ndash524 1997

[31] M P Bendsoslashe and O Sigmund Topology Optimization TheoryMethod and Application Springer Berlin Heidelberg BerlinGermany 2003

[32] Z Luo L Chen J Yang Y Zhang and K Abdel-MalekldquoCompliant mechanism design using multi-objective topologyoptimization scheme of continuum structuresrdquo Structural andMultidisciplinary Optimization vol 30 no 2 pp 142ndash154 2005

[33] L Cao A T Dolovich A L Schwab J L Herder and WZhang ldquoToward a unified design approach for both compliantmechanisms and rigid-body mechanisms module optimiza-tionrdquo Journal of Mechanical Design vol 137 no 12 Article ID122301 2015

[34] H B Demuth M H Beale O Jess De andM T HaganNeuralNetwork Design 2nd edition 2014

[35] D E Rumelhart G E Hinton and R J Williams ldquoLearningrepresentations by back-propagating errorsrdquo Nature vol 323no 6088 pp 533ndash536 1986

[36] R Hecht-Nielsen ldquoTheory of the backpropagation neural net-workrdquo in Proceedings of the International Joint Conference onNeural Networks (IJCNN rsquo89) vol 1 pp 593ndash605 WashingtonDC USA June 1989

[37] FDanForesee andMTHagan ldquoGauss-Newton approximationto Bayesian learningrdquo in Proceedings of the International Con-ference on Neural Networks (IJCNN rsquo97) vol 3 pp 1930ndash1935IEEE Houston Tex USA June 1997

[38] L E Scales Introduction to Non-Linear Optimization Macmil-lan Education UK London 1985

[39] M H Beale M T Hagan and H B Demuth Neural NetworkToolbox119879119872Userrsquos Guide forMATLABR2012a NatickMA USA2012

[40] K Levenberg ldquoA method for the solution of certain non-linearproblems in least squaresrdquo Quarterly of Applied Mathematicsvol 2 pp 164ndash168 1944

[41] D Marquardt ldquoAn algorithm for least-squares estimation ofnonlinear parametersrdquo SIAM Journal on Applied Mathematicsvol 11 no 2 pp 431ndash441 1963

[42] J S Armstrong and F Collopy ldquoErrormeasures for generalizingabout forecasting methods empirical comparisonsrdquo Interna-tional Journal of Forecasting vol 8 no 1 pp 69ndash80 1992

[43] C Audet and J Dennis ldquoAnalysis of generalized pattern search-esrdquo SIAM Journal on Optimization vol 13 no 3 pp 889ndash9032002

[44] P E Gill W Murray andM HWright Practical OptimizationAcademic Press 1981

[45] R Fletcher Practical Methods of Optimization John Wiley ampSons New York NY USA 2nd edition 2000

[46] P E Gill W Murray and M H Wright Numerical LinearAlgebra and Optimization Addison-Wesley 1991

[47] A R Conn N I Gould and P Toint ldquoA globally convergentaugmented Lagrangian algorithm for optimization with generalconstraints and simple boundsrdquo SIAM Journal on NumericalAnalysis vol 28 no 2 pp 545ndash572 1991

[48] A R Conn N Gould and P L Toint ldquoA globally convergentLagrangian barrier algorithm for optimization with generalinequality constraints and simple boundsrdquo Mathematics ofComputation vol 66 no 217 pp 261ndash288 S1ndashS11 1997

[49] T G Kolda R M Lewis and V J Torczon ldquoA generating setdirect search augmented Lagrangian algorithm for optimizationwith a combination of general and linear constraintsrdquo Tech RepSAND2006-5315 Sandia National Laboratories USA 2006

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 12: Optimizing the Geometry of Flexure System Topologies Using the …web.cs.ucla.edu/~ahatamiz/BLOT.pdf · 2019-10-24 · synthesized topology using dierent geometric parameter values

12 Mathematical Problems in Engineering

T = 10 mmL = 995 mmW = 100 mm T = 25 mm

L = 15 mmW = 100 mm

10minus1

10minus2

10minus3

10minus4

10minus5

10minus6

Tran

slatio

nal D

OF

Nor

mal

ized

rang

e of m

otio

n

100 10210minus4 10minus210minus6

Translational DOF natural frequency (kHz)

dradic

W2+L2

(a)

T = 25 mmL = 15 mmW = 100 mm

102

100

10minus2

10minus4

10minus6

Rota

tiona

l DO

F

100 10210minus4 10minus210minus6

Rotational DOF natural frequency (kHz)

rang

e of m

otio

(deg

rees

)

T = 10 mmL = 995 mmW = 100 mm

(b)

Figure 6 Boundaries of the topologyrsquos achievable ranges of motion and natural frequencies corresponding to the translational (a) androtational (b) DOF generated by the BLOT

largest values for each of the case studyrsquos three independentparameters (ie 119882 119879 and 119871) its resolution increment andthe properties of its constituent material are all set to bethe same values as those given in Section 1 Using the 119882 minus2119879 gt 0 constraint function provided earlier the BLOT canbe used to train various neural networks to create modelsthat map any desired geometric parameter values within thedesign space to design instantiations that achieve desiredperformance capabilities The performance capabilities ofinterest to this case study included (i) the topologyrsquos rangeof motion along its translational DOF direction as shownin Figure 1(d) (ii) the natural frequency of the topologythat corresponds with the mode shape of its translationalDOF (iii) the topologyrsquos angular range of motion aboutits rotational DOF as shown in Figure 1(e) and (iv) thenatural frequency of the topology that corresponds withthe mode shape of its rotational DOF The PYTHON scriptthat automates the collection of all the target data was setto ground the entire top surface of the fixed body shownwith thatched lines in Figure 1(f) on the side where the fourwire elements are attached The range of motion of eachdesign instantiation along the direction of the translationalDOF was calculated using FEA simulations by applying ashear force on the entire bottom face of the systemrsquos stageon the side where the four wire elements are attached Themagnitude of this shear force was gradually increased untilany portion within the system began to yield according toMises yield criterion The largest amount the stage translatedbefore reaching this yield criterion was defined to be therange ofmotion119889 of the corresponding design instantiationThis range of motion was normalized by dividing it byits characteristic length radic1198712 +1198822 The angular range ofmotion of each design instantiation about the rotationalDOF was also calculated using FEA simulations by applyingtwo opposing shear forces on either side of the systemrsquosstage to create a pure moment along the direction of theaxes of the wire elements The magnitude of this momentwas gradually increased until any portion within the systembegan to yield according to Mises yield criterion The largestamount the stage rotated before reaching this yield criterionwas defined to be the angular range of motion Φ of the

corresponding design instantiation The natural frequencies120596119899 corresponding to both of the translational and rotationalDOF mode shapes for each design instantiation were alsocalculated using finite element modal analysis simulationsA unique neural network with a single neuron output layerwas trained for each of the four performance capabilities ofinterest

Once the BLOT successfully created four accuratemodelsof the flexure system topology of Figure 1(f) by training fourneural networks to each map arbitrary design instantiationsof the topology to any of the four desired performancecapabilities of interest the BLOT then plotted final bound-aries that circumscribe the achievable combinations of theseperformance capabilities The boundary corresponding tothe normalized range of motion and natural frequency ofthe mode shape along the direction of the translationalDOF is show in Figure 6(a) Note that this was the sameboundary provided in Figure 1(g) but the plot in Figure 6(a)includes the colored output dots used to identify the finalboundary The geometric parameters for two optimizeddesign instantiations that span between the optimal portionof the boundary are provided in Figures 1(g) and 6(a)Other optimal design instantiations can be selected fromthis portion of the boundary to achieve different maximumcombinations of the performance capabilities The boundarycorresponding to the angular range of motion and naturalfrequency of the mode shape about the rotational DOF isprovided in Figure 6(b) Note that the two optimal designinstantiations shown as large black dots within the plots ofFigures 1(g) and 6(a) are also plotted in their correspondinglocations within the boundary provided in Figure 6(b)Although these design instantiations are not the two optimaldesign instantiations within the plot of Figure 6(b) they areclose to the optimal instantiations which are shown as largewhite dots in Figure 6(b) Finally it is worth noting thatthe plots of Figure 6 are presented using a log-log scaleSince such plots can never achieve zero or negative valuesthe BLOT establishes a cutoff threshold when identifying theboundary tomore rapidly and clearly define a practical regionof achievable performance capabilitiesThis threshold was setto 10minus6 for the plots of Figure 6

Mathematical Problems in Engineering 13

6 Conclusions and Future Work

This paper introduces an optimization tool called the Bound-ary Learning Optimization Tool (BLOT) which utilizes anautomated method for training neural networks to createaccurate models of general flexure system topologies syn-thesized using the FACT approach The BLOT uses thesemodels to plot the boundaries of regions containing thecombinations of desired performance capabilities that areachievable by different design instantiations of the FACT-synthesized topologies Both the neural network training andboundary identification portions of the BLOT are iteratedusing additional boundary data until the final boundary isguaranteed to be accurate within a value specified by theuser (eg less than 10 average error) A flexure system isprovided and optimized as a case study

TheBLOTwill be used in future works to generate Ashby-like material plots but for different architectured materialtopologies instead of for natural materials to compare theachievable properties of such microarchitectured structurescomposed of the same material These plots will enableengineers to identify trends among architectured materialsthat result from microstructure instead of composition

Disclosure

A preliminary version of this paperrsquos theory was first pre-sented at ASMErsquos IDETC as paper no DETC2017-67465

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Authorsrsquo Contributions

Ali Hatamizadeh and Yuanping Song are co-first authors astheir contributions to this paper are equal

Acknowledgments

This work was supported by the Air Force Office of ScienceResearch under Award no FA9550-15-1-0321 Program officerByung ldquoLesrdquo Lee is gratefully acknowledged This workused computational and storage services associated withthe Hoffman2 Shared Cluster provided by UCLA Institutefor Digital Research and Educationrsquos Research TechnologyGroup

References

[1] J B Hopkins Design of Parallel Flexure Systems via Freedomand Constraint Topologies (FACT) Massachusetts Institute ofTechnology 2007

[2] J B HopkinsDesign of Flexure-Based Motion Stages for Mecha-tronic Systems via Freedom Actuation and Constraint Topologies(FACT) Massachusetts Institute of Technology 2010

[3] J B Hopkins ldquoDesigning hybrid flexure systems and elementsusing freedom and constraint topologiesrdquoMechanical Sciencesvol 4 no 2 pp 319ndash331 2013

[4] Y LeCun Y Bengio and G Hinton ldquoDeep learningrdquo Naturevol 521 no 7553 pp 436ndash444 2015

[5] J B Hopkins K J Lange and C M Spadaccini ldquoDesigningmicrostructural architectures with thermally actuated prop-erties using freedom actuation and constraint topologiesrdquoJournal of Mechanical Design vol 135 no 6 Article ID 0610042013

[6] M F Ashby Materials Selection in Mechanical Design Butter-worth-Heinemann 2005

[7] X P Cheng and R V Patel ldquoNeural network based trackingcontrol of a flexible macro-micro manipulator systemrdquo NeuralNetworks vol 16 no 2 pp 271ndash286 2003

[8] W He Y Chen and Z Yin ldquoAdaptive neural network controlof an uncertain robot with full-state constraintsrdquo IEEE Transac-tions on Cybernetics vol 46 no 3 pp 620ndash629 2016

[9] H Kobayashi and R Ozawa ldquoAdaptive neural network controlof tendon-driven mechanisms with elastic tendonsrdquo Automat-ica vol 39 no 9 pp 1509ndash1519 2003

[10] J Takeuchi and Y Kosugi ldquoNeural network representation offinite element methodrdquo Neural Networks vol 7 no 2 pp 389ndash395 1994

[11] R I Levin and N A J Lieven ldquoDynamic finite elementmodel updating using neural networksrdquo Journal of Sound andVibration vol 210 no 5 pp 593ndash607 1998

[12] E Boillat S Kolossov R Glardon M Loher D Saladinand G Levy ldquoFinite element and neural network models forprocess optimization in selective laser sinteringrdquo Proceedingsof the Institution of Mechanical Engineers Part B Journal ofEngineering Manufacture vol 218 no 6 pp 607ndash614 2004

[13] M Lefik ldquoHybrid finite element-artificial neural networkmodel for composite materialsrdquo Journal of Theoretical andApplied Mechanics vol 42 pp 539ndash563 2004

[14] Y M A Hashash S Jung and J Ghaboussi ldquoNumerical imple-mentation of a neural network based material model in finiteelement analysisrdquo International Journal for Numerical Methodsin Engineering vol 59 no 7 pp 989ndash1005 2004

[15] L Manevitz M Yousef and D Givoli ldquoFinite-element meshgeneration using self-organizing neural networksrdquo Computer-Aided Civil and Infrastructure Engineering vol 12 no 4 pp233ndash250 1997

[16] Z Li andD Cao ldquoConceptual Design of CompliantMechanismBased on Port Ontologyrdquo Advances in Mechanical Engineeringvol 5 p 401492 2015

[17] Y Qin and Z Feng ldquoStructural dynamicmodification of flexurehinge structure based on artificial neural networkrdquo AviationPrecision Manufacturing Technology vol 5 no 11 2006

[18] F G Kong Q Li and W J Zhang ldquoAn artificial neuralnetwork approach tomechanism kinematic chain isomorphismidentificationrdquo Mechanism and Machine Theory vol 34 no 2pp 271ndash283 1999

[19] E K Burke andGKendall Eds SearchMethodologies SpringerUS Boston MA USA 2005

[20] Y V Haimes L S Lasdon and D A Wismer ldquoOn a bicriterionformulation of the problems of integrated system identificationand system optimizationrdquo IEEE Transactions on Systems Manand Cybernetics vol SMC-1 pp 296-297 1971

[21] P L Yu ldquoA class of solutions for group decision problemsrdquoManagement Science vol 19 no 8 pp 936ndash946 1973

14 Mathematical Problems in Engineering

[22] A P Wierzbicki ldquoOn the completeness and constructiveness ofparametric characterizations to vector optimization problemsrdquoOR Spectrum vol 8 no 2 pp 73ndash87 1986

[23] A P Wierzbicki ldquoA mathematical basis for satisficing decisionmakingrdquo in Organizations Multiple Agents with Multiple Cri-teria vol 190 of Lecture Notes in Economics and MathematicalSystems pp 465ndash486 Springer Berlin Heidelberg Berlin Hei-delberg 1981

[24] I Das and J E Dennis ldquoNormal-boundary intersection a newmethod for generating the Pareto surface in nonlinear multi-criteria optimization problemsrdquo SIAM Journal on Optimizationvol 8 no 3 pp 631ndash657 1998

[25] D E Goldberg Genetic Algorithms in Search Optimizationand Machine Learning Addison-Wesley Longman PublishingBoston MA USA 1st edition 1989

[26] ldquoExceptional papermdashlexicographic orders utilities anddecisionrules a surveyrdquo Management Science vol 20 pp 1442ndash14711974

[27] A Charnes and W W Cooper ldquoGoal programming and mul-tiple objective optimizationsrdquo European Journal of OperationalResearch vol 1 no 1 pp 39ndash54 1977

[28] K A de Jong Evolutionary Computation a Unified ApproachMIT Press Cambridge Mass USA 2006

[29] N Padhye P Bhardawaj and K Deb ldquoImproving differentialevolution through a unified approachrdquo Journal of Global Opti-mization vol 55 no 4 pp 771ndash799 2013

[30] O Sigmund ldquoOn the design of compliant mechanisms usingtopology optimizationrdquo Mechanics of Structures and Machinesvol 25 no 4 pp 493ndash524 1997

[31] M P Bendsoslashe and O Sigmund Topology Optimization TheoryMethod and Application Springer Berlin Heidelberg BerlinGermany 2003

[32] Z Luo L Chen J Yang Y Zhang and K Abdel-MalekldquoCompliant mechanism design using multi-objective topologyoptimization scheme of continuum structuresrdquo Structural andMultidisciplinary Optimization vol 30 no 2 pp 142ndash154 2005

[33] L Cao A T Dolovich A L Schwab J L Herder and WZhang ldquoToward a unified design approach for both compliantmechanisms and rigid-body mechanisms module optimiza-tionrdquo Journal of Mechanical Design vol 137 no 12 Article ID122301 2015

[34] H B Demuth M H Beale O Jess De andM T HaganNeuralNetwork Design 2nd edition 2014

[35] D E Rumelhart G E Hinton and R J Williams ldquoLearningrepresentations by back-propagating errorsrdquo Nature vol 323no 6088 pp 533ndash536 1986

[36] R Hecht-Nielsen ldquoTheory of the backpropagation neural net-workrdquo in Proceedings of the International Joint Conference onNeural Networks (IJCNN rsquo89) vol 1 pp 593ndash605 WashingtonDC USA June 1989

[37] FDanForesee andMTHagan ldquoGauss-Newton approximationto Bayesian learningrdquo in Proceedings of the International Con-ference on Neural Networks (IJCNN rsquo97) vol 3 pp 1930ndash1935IEEE Houston Tex USA June 1997

[38] L E Scales Introduction to Non-Linear Optimization Macmil-lan Education UK London 1985

[39] M H Beale M T Hagan and H B Demuth Neural NetworkToolbox119879119872Userrsquos Guide forMATLABR2012a NatickMA USA2012

[40] K Levenberg ldquoA method for the solution of certain non-linearproblems in least squaresrdquo Quarterly of Applied Mathematicsvol 2 pp 164ndash168 1944

[41] D Marquardt ldquoAn algorithm for least-squares estimation ofnonlinear parametersrdquo SIAM Journal on Applied Mathematicsvol 11 no 2 pp 431ndash441 1963

[42] J S Armstrong and F Collopy ldquoErrormeasures for generalizingabout forecasting methods empirical comparisonsrdquo Interna-tional Journal of Forecasting vol 8 no 1 pp 69ndash80 1992

[43] C Audet and J Dennis ldquoAnalysis of generalized pattern search-esrdquo SIAM Journal on Optimization vol 13 no 3 pp 889ndash9032002

[44] P E Gill W Murray andM HWright Practical OptimizationAcademic Press 1981

[45] R Fletcher Practical Methods of Optimization John Wiley ampSons New York NY USA 2nd edition 2000

[46] P E Gill W Murray and M H Wright Numerical LinearAlgebra and Optimization Addison-Wesley 1991

[47] A R Conn N I Gould and P Toint ldquoA globally convergentaugmented Lagrangian algorithm for optimization with generalconstraints and simple boundsrdquo SIAM Journal on NumericalAnalysis vol 28 no 2 pp 545ndash572 1991

[48] A R Conn N Gould and P L Toint ldquoA globally convergentLagrangian barrier algorithm for optimization with generalinequality constraints and simple boundsrdquo Mathematics ofComputation vol 66 no 217 pp 261ndash288 S1ndashS11 1997

[49] T G Kolda R M Lewis and V J Torczon ldquoA generating setdirect search augmented Lagrangian algorithm for optimizationwith a combination of general and linear constraintsrdquo Tech RepSAND2006-5315 Sandia National Laboratories USA 2006

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 13: Optimizing the Geometry of Flexure System Topologies Using the …web.cs.ucla.edu/~ahatamiz/BLOT.pdf · 2019-10-24 · synthesized topology using dierent geometric parameter values

Mathematical Problems in Engineering 13

6 Conclusions and Future Work

This paper introduces an optimization tool called the Bound-ary Learning Optimization Tool (BLOT) which utilizes anautomated method for training neural networks to createaccurate models of general flexure system topologies syn-thesized using the FACT approach The BLOT uses thesemodels to plot the boundaries of regions containing thecombinations of desired performance capabilities that areachievable by different design instantiations of the FACT-synthesized topologies Both the neural network training andboundary identification portions of the BLOT are iteratedusing additional boundary data until the final boundary isguaranteed to be accurate within a value specified by theuser (eg less than 10 average error) A flexure system isprovided and optimized as a case study

TheBLOTwill be used in future works to generate Ashby-like material plots but for different architectured materialtopologies instead of for natural materials to compare theachievable properties of such microarchitectured structurescomposed of the same material These plots will enableengineers to identify trends among architectured materialsthat result from microstructure instead of composition

Disclosure

A preliminary version of this paperrsquos theory was first pre-sented at ASMErsquos IDETC as paper no DETC2017-67465

Conflicts of Interest

The authors declare that there are no conflicts of interestregarding the publication of this paper

Authorsrsquo Contributions

Ali Hatamizadeh and Yuanping Song are co-first authors astheir contributions to this paper are equal

Acknowledgments

This work was supported by the Air Force Office of ScienceResearch under Award no FA9550-15-1-0321 Program officerByung ldquoLesrdquo Lee is gratefully acknowledged This workused computational and storage services associated withthe Hoffman2 Shared Cluster provided by UCLA Institutefor Digital Research and Educationrsquos Research TechnologyGroup

References

[1] J B Hopkins Design of Parallel Flexure Systems via Freedomand Constraint Topologies (FACT) Massachusetts Institute ofTechnology 2007

[2] J B HopkinsDesign of Flexure-Based Motion Stages for Mecha-tronic Systems via Freedom Actuation and Constraint Topologies(FACT) Massachusetts Institute of Technology 2010

[3] J B Hopkins ldquoDesigning hybrid flexure systems and elementsusing freedom and constraint topologiesrdquoMechanical Sciencesvol 4 no 2 pp 319ndash331 2013

[4] Y LeCun Y Bengio and G Hinton ldquoDeep learningrdquo Naturevol 521 no 7553 pp 436ndash444 2015

[5] J B Hopkins K J Lange and C M Spadaccini ldquoDesigningmicrostructural architectures with thermally actuated prop-erties using freedom actuation and constraint topologiesrdquoJournal of Mechanical Design vol 135 no 6 Article ID 0610042013

[6] M F Ashby Materials Selection in Mechanical Design Butter-worth-Heinemann 2005

[7] X P Cheng and R V Patel ldquoNeural network based trackingcontrol of a flexible macro-micro manipulator systemrdquo NeuralNetworks vol 16 no 2 pp 271ndash286 2003

[8] W He Y Chen and Z Yin ldquoAdaptive neural network controlof an uncertain robot with full-state constraintsrdquo IEEE Transac-tions on Cybernetics vol 46 no 3 pp 620ndash629 2016

[9] H Kobayashi and R Ozawa ldquoAdaptive neural network controlof tendon-driven mechanisms with elastic tendonsrdquo Automat-ica vol 39 no 9 pp 1509ndash1519 2003

[10] J Takeuchi and Y Kosugi ldquoNeural network representation offinite element methodrdquo Neural Networks vol 7 no 2 pp 389ndash395 1994

[11] R I Levin and N A J Lieven ldquoDynamic finite elementmodel updating using neural networksrdquo Journal of Sound andVibration vol 210 no 5 pp 593ndash607 1998

[12] E Boillat S Kolossov R Glardon M Loher D Saladinand G Levy ldquoFinite element and neural network models forprocess optimization in selective laser sinteringrdquo Proceedingsof the Institution of Mechanical Engineers Part B Journal ofEngineering Manufacture vol 218 no 6 pp 607ndash614 2004

[13] M Lefik ldquoHybrid finite element-artificial neural networkmodel for composite materialsrdquo Journal of Theoretical andApplied Mechanics vol 42 pp 539ndash563 2004

[14] Y M A Hashash S Jung and J Ghaboussi ldquoNumerical imple-mentation of a neural network based material model in finiteelement analysisrdquo International Journal for Numerical Methodsin Engineering vol 59 no 7 pp 989ndash1005 2004

[15] L Manevitz M Yousef and D Givoli ldquoFinite-element meshgeneration using self-organizing neural networksrdquo Computer-Aided Civil and Infrastructure Engineering vol 12 no 4 pp233ndash250 1997

[16] Z Li andD Cao ldquoConceptual Design of CompliantMechanismBased on Port Ontologyrdquo Advances in Mechanical Engineeringvol 5 p 401492 2015

[17] Y Qin and Z Feng ldquoStructural dynamicmodification of flexurehinge structure based on artificial neural networkrdquo AviationPrecision Manufacturing Technology vol 5 no 11 2006

[18] F G Kong Q Li and W J Zhang ldquoAn artificial neuralnetwork approach tomechanism kinematic chain isomorphismidentificationrdquo Mechanism and Machine Theory vol 34 no 2pp 271ndash283 1999

[19] E K Burke andGKendall Eds SearchMethodologies SpringerUS Boston MA USA 2005

[20] Y V Haimes L S Lasdon and D A Wismer ldquoOn a bicriterionformulation of the problems of integrated system identificationand system optimizationrdquo IEEE Transactions on Systems Manand Cybernetics vol SMC-1 pp 296-297 1971

[21] P L Yu ldquoA class of solutions for group decision problemsrdquoManagement Science vol 19 no 8 pp 936ndash946 1973

14 Mathematical Problems in Engineering

[22] A P Wierzbicki ldquoOn the completeness and constructiveness ofparametric characterizations to vector optimization problemsrdquoOR Spectrum vol 8 no 2 pp 73ndash87 1986

[23] A P Wierzbicki ldquoA mathematical basis for satisficing decisionmakingrdquo in Organizations Multiple Agents with Multiple Cri-teria vol 190 of Lecture Notes in Economics and MathematicalSystems pp 465ndash486 Springer Berlin Heidelberg Berlin Hei-delberg 1981

[24] I Das and J E Dennis ldquoNormal-boundary intersection a newmethod for generating the Pareto surface in nonlinear multi-criteria optimization problemsrdquo SIAM Journal on Optimizationvol 8 no 3 pp 631ndash657 1998

[25] D E Goldberg Genetic Algorithms in Search Optimizationand Machine Learning Addison-Wesley Longman PublishingBoston MA USA 1st edition 1989

[26] ldquoExceptional papermdashlexicographic orders utilities anddecisionrules a surveyrdquo Management Science vol 20 pp 1442ndash14711974

[27] A Charnes and W W Cooper ldquoGoal programming and mul-tiple objective optimizationsrdquo European Journal of OperationalResearch vol 1 no 1 pp 39ndash54 1977

[28] K A de Jong Evolutionary Computation a Unified ApproachMIT Press Cambridge Mass USA 2006

[29] N Padhye P Bhardawaj and K Deb ldquoImproving differentialevolution through a unified approachrdquo Journal of Global Opti-mization vol 55 no 4 pp 771ndash799 2013

[30] O Sigmund ldquoOn the design of compliant mechanisms usingtopology optimizationrdquo Mechanics of Structures and Machinesvol 25 no 4 pp 493ndash524 1997

[31] M P Bendsoslashe and O Sigmund Topology Optimization TheoryMethod and Application Springer Berlin Heidelberg BerlinGermany 2003

[32] Z Luo L Chen J Yang Y Zhang and K Abdel-MalekldquoCompliant mechanism design using multi-objective topologyoptimization scheme of continuum structuresrdquo Structural andMultidisciplinary Optimization vol 30 no 2 pp 142ndash154 2005

[33] L Cao A T Dolovich A L Schwab J L Herder and WZhang ldquoToward a unified design approach for both compliantmechanisms and rigid-body mechanisms module optimiza-tionrdquo Journal of Mechanical Design vol 137 no 12 Article ID122301 2015

[34] H B Demuth M H Beale O Jess De andM T HaganNeuralNetwork Design 2nd edition 2014

[35] D E Rumelhart G E Hinton and R J Williams ldquoLearningrepresentations by back-propagating errorsrdquo Nature vol 323no 6088 pp 533ndash536 1986

[36] R Hecht-Nielsen ldquoTheory of the backpropagation neural net-workrdquo in Proceedings of the International Joint Conference onNeural Networks (IJCNN rsquo89) vol 1 pp 593ndash605 WashingtonDC USA June 1989

[37] FDanForesee andMTHagan ldquoGauss-Newton approximationto Bayesian learningrdquo in Proceedings of the International Con-ference on Neural Networks (IJCNN rsquo97) vol 3 pp 1930ndash1935IEEE Houston Tex USA June 1997

[38] L E Scales Introduction to Non-Linear Optimization Macmil-lan Education UK London 1985

[39] M H Beale M T Hagan and H B Demuth Neural NetworkToolbox119879119872Userrsquos Guide forMATLABR2012a NatickMA USA2012

[40] K Levenberg ldquoA method for the solution of certain non-linearproblems in least squaresrdquo Quarterly of Applied Mathematicsvol 2 pp 164ndash168 1944

[41] D Marquardt ldquoAn algorithm for least-squares estimation ofnonlinear parametersrdquo SIAM Journal on Applied Mathematicsvol 11 no 2 pp 431ndash441 1963

[42] J S Armstrong and F Collopy ldquoErrormeasures for generalizingabout forecasting methods empirical comparisonsrdquo Interna-tional Journal of Forecasting vol 8 no 1 pp 69ndash80 1992

[43] C Audet and J Dennis ldquoAnalysis of generalized pattern search-esrdquo SIAM Journal on Optimization vol 13 no 3 pp 889ndash9032002

[44] P E Gill W Murray andM HWright Practical OptimizationAcademic Press 1981

[45] R Fletcher Practical Methods of Optimization John Wiley ampSons New York NY USA 2nd edition 2000

[46] P E Gill W Murray and M H Wright Numerical LinearAlgebra and Optimization Addison-Wesley 1991

[47] A R Conn N I Gould and P Toint ldquoA globally convergentaugmented Lagrangian algorithm for optimization with generalconstraints and simple boundsrdquo SIAM Journal on NumericalAnalysis vol 28 no 2 pp 545ndash572 1991

[48] A R Conn N Gould and P L Toint ldquoA globally convergentLagrangian barrier algorithm for optimization with generalinequality constraints and simple boundsrdquo Mathematics ofComputation vol 66 no 217 pp 261ndash288 S1ndashS11 1997

[49] T G Kolda R M Lewis and V J Torczon ldquoA generating setdirect search augmented Lagrangian algorithm for optimizationwith a combination of general and linear constraintsrdquo Tech RepSAND2006-5315 Sandia National Laboratories USA 2006

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 14: Optimizing the Geometry of Flexure System Topologies Using the …web.cs.ucla.edu/~ahatamiz/BLOT.pdf · 2019-10-24 · synthesized topology using dierent geometric parameter values

14 Mathematical Problems in Engineering

[22] A P Wierzbicki ldquoOn the completeness and constructiveness ofparametric characterizations to vector optimization problemsrdquoOR Spectrum vol 8 no 2 pp 73ndash87 1986

[23] A P Wierzbicki ldquoA mathematical basis for satisficing decisionmakingrdquo in Organizations Multiple Agents with Multiple Cri-teria vol 190 of Lecture Notes in Economics and MathematicalSystems pp 465ndash486 Springer Berlin Heidelberg Berlin Hei-delberg 1981

[24] I Das and J E Dennis ldquoNormal-boundary intersection a newmethod for generating the Pareto surface in nonlinear multi-criteria optimization problemsrdquo SIAM Journal on Optimizationvol 8 no 3 pp 631ndash657 1998

[25] D E Goldberg Genetic Algorithms in Search Optimizationand Machine Learning Addison-Wesley Longman PublishingBoston MA USA 1st edition 1989

[26] ldquoExceptional papermdashlexicographic orders utilities anddecisionrules a surveyrdquo Management Science vol 20 pp 1442ndash14711974

[27] A Charnes and W W Cooper ldquoGoal programming and mul-tiple objective optimizationsrdquo European Journal of OperationalResearch vol 1 no 1 pp 39ndash54 1977

[28] K A de Jong Evolutionary Computation a Unified ApproachMIT Press Cambridge Mass USA 2006

[29] N Padhye P Bhardawaj and K Deb ldquoImproving differentialevolution through a unified approachrdquo Journal of Global Opti-mization vol 55 no 4 pp 771ndash799 2013

[30] O Sigmund ldquoOn the design of compliant mechanisms usingtopology optimizationrdquo Mechanics of Structures and Machinesvol 25 no 4 pp 493ndash524 1997

[31] M P Bendsoslashe and O Sigmund Topology Optimization TheoryMethod and Application Springer Berlin Heidelberg BerlinGermany 2003

[32] Z Luo L Chen J Yang Y Zhang and K Abdel-MalekldquoCompliant mechanism design using multi-objective topologyoptimization scheme of continuum structuresrdquo Structural andMultidisciplinary Optimization vol 30 no 2 pp 142ndash154 2005

[33] L Cao A T Dolovich A L Schwab J L Herder and WZhang ldquoToward a unified design approach for both compliantmechanisms and rigid-body mechanisms module optimiza-tionrdquo Journal of Mechanical Design vol 137 no 12 Article ID122301 2015

[34] H B Demuth M H Beale O Jess De andM T HaganNeuralNetwork Design 2nd edition 2014

[35] D E Rumelhart G E Hinton and R J Williams ldquoLearningrepresentations by back-propagating errorsrdquo Nature vol 323no 6088 pp 533ndash536 1986

[36] R Hecht-Nielsen ldquoTheory of the backpropagation neural net-workrdquo in Proceedings of the International Joint Conference onNeural Networks (IJCNN rsquo89) vol 1 pp 593ndash605 WashingtonDC USA June 1989

[37] FDanForesee andMTHagan ldquoGauss-Newton approximationto Bayesian learningrdquo in Proceedings of the International Con-ference on Neural Networks (IJCNN rsquo97) vol 3 pp 1930ndash1935IEEE Houston Tex USA June 1997

[38] L E Scales Introduction to Non-Linear Optimization Macmil-lan Education UK London 1985

[39] M H Beale M T Hagan and H B Demuth Neural NetworkToolbox119879119872Userrsquos Guide forMATLABR2012a NatickMA USA2012

[40] K Levenberg ldquoA method for the solution of certain non-linearproblems in least squaresrdquo Quarterly of Applied Mathematicsvol 2 pp 164ndash168 1944

[41] D Marquardt ldquoAn algorithm for least-squares estimation ofnonlinear parametersrdquo SIAM Journal on Applied Mathematicsvol 11 no 2 pp 431ndash441 1963

[42] J S Armstrong and F Collopy ldquoErrormeasures for generalizingabout forecasting methods empirical comparisonsrdquo Interna-tional Journal of Forecasting vol 8 no 1 pp 69ndash80 1992

[43] C Audet and J Dennis ldquoAnalysis of generalized pattern search-esrdquo SIAM Journal on Optimization vol 13 no 3 pp 889ndash9032002

[44] P E Gill W Murray andM HWright Practical OptimizationAcademic Press 1981

[45] R Fletcher Practical Methods of Optimization John Wiley ampSons New York NY USA 2nd edition 2000

[46] P E Gill W Murray and M H Wright Numerical LinearAlgebra and Optimization Addison-Wesley 1991

[47] A R Conn N I Gould and P Toint ldquoA globally convergentaugmented Lagrangian algorithm for optimization with generalconstraints and simple boundsrdquo SIAM Journal on NumericalAnalysis vol 28 no 2 pp 545ndash572 1991

[48] A R Conn N Gould and P L Toint ldquoA globally convergentLagrangian barrier algorithm for optimization with generalinequality constraints and simple boundsrdquo Mathematics ofComputation vol 66 no 217 pp 261ndash288 S1ndashS11 1997

[49] T G Kolda R M Lewis and V J Torczon ldquoA generating setdirect search augmented Lagrangian algorithm for optimizationwith a combination of general and linear constraintsrdquo Tech RepSAND2006-5315 Sandia National Laboratories USA 2006

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom

Page 15: Optimizing the Geometry of Flexure System Topologies Using the …web.cs.ucla.edu/~ahatamiz/BLOT.pdf · 2019-10-24 · synthesized topology using dierent geometric parameter values

Hindawiwwwhindawicom Volume 2018

MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Mathematical Problems in Engineering

Applied MathematicsJournal of

Hindawiwwwhindawicom Volume 2018

Probability and StatisticsHindawiwwwhindawicom Volume 2018

Journal of

Hindawiwwwhindawicom Volume 2018

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawiwwwhindawicom Volume 2018

OptimizationJournal of

Hindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom Volume 2018

Engineering Mathematics

International Journal of

Hindawiwwwhindawicom Volume 2018

Operations ResearchAdvances in

Journal of

Hindawiwwwhindawicom Volume 2018

Function SpacesAbstract and Applied AnalysisHindawiwwwhindawicom Volume 2018

International Journal of Mathematics and Mathematical Sciences

Hindawiwwwhindawicom Volume 2018

Hindawi Publishing Corporation httpwwwhindawicom Volume 2013Hindawiwwwhindawicom

The Scientific World Journal

Volume 2018

Hindawiwwwhindawicom Volume 2018Volume 2018

Numerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisNumerical AnalysisAdvances inAdvances in Discrete Dynamics in

Nature and SocietyHindawiwwwhindawicom Volume 2018

Hindawiwwwhindawicom

Dierential EquationsInternational Journal of

Volume 2018

Hindawiwwwhindawicom Volume 2018

Decision SciencesAdvances in

Hindawiwwwhindawicom Volume 2018

AnalysisInternational Journal of

Hindawiwwwhindawicom Volume 2018

Stochastic AnalysisInternational Journal of

Submit your manuscripts atwwwhindawicom