21
A-Design: An Agent-Based Approach to Conceptual Design in a Dynamic Environment Matthew I. Campbell 1 , Jonathan Cagan 1 and Kenneth Kotovsky 2 1 Computational Design Laboratory, Department of Mechanical Engineering; 2 Department of Psychology, Carnegie Mellon University, Pittsburgh, PA, USA Abstract. This paper provides an introduction to a new design methodology known as A-Design, which combines aspects of multi-objective optimization, multi-agent systems, and automated design synthesis. The A-Design theory is founded on the notion that engineering design occurs in interaction with an ever-changing environment, and therefore computer tools developed to aid in the design process should be adaptive to these changes. In this paper, A-Design is introduced along with some simple test problems to demonstrate the capabilities of different aspects of the theory. The theory of A-Design is then shown as the basis for a design tool that adaptively creates electro-mechanical configuration designs for changing user preferences. Keywords: Adaptive search; Agents; Design synth- esis; Multi-objective optimization 1. Introduction Traditionally, the engineering design process is a cooperative effort among engineers and management, where virtual and physical prototypes are constructed, tested and evaluated. Based on constantly changing design goals, available technologies, and design constraints, managers refine the design specifications and appropriate design teams, while engineers within those teams collaborate to affect changes to the design to meet target specifications. The goals of a design problem are established to address market-driven issues such as product cost or performance, and engineering objectives such as target lifecycle or efficiency. One company’s product can be distinguished from others in the manner in which it achieves the various product design goals. While some companies produce inexpensive designs in order to find a profitable market niche, others may produce high-end products; to position one’s product amongst competing products a constant awareness of market demands is required. However, in the conceptual design phase, it is not always possible to set the relative importance of the various objectives and constraints prior to generating solutions, as is required in most automated design systems. Current computer tools tend to be static in, and unresponsive to, such changes in the problem description and the solution strategy. These limitations motivate the conceptual design methodology introduced in this paper, which is capable of adapting to changes in design problem specifications. This paper introduces A-Design – a new search strategy for the conceptual stages of engineering design that incorporates agent collaboration with an adaptive selection of designs. Having a multitude of agents that are responsible for the same task yet present different strategies and differing knowledge for solving the same design problem generates a greater variety of design alternatives. The system gains robustness due to the collaboration of these varying agents, thus affording the design process the ability to change focus when the user’s preference changes. These agents are analogous to individual specialists within a design firm. As with a company, there is usually not a single optimal design, but rather designs evolve and, as they do so, the company selects designs at certain states and markets them as products. This dynamic nature of true engineering design is the foundation for creating A-Design in a manner that is adaptive in both the design process and design specification. The basic subsystems of the A-Design theory are (1) an agent architecture that is responsible for creating and improving design alternatives, (2) a representation of the conceptual design problem that is comprehended by the agents in order to create design concepts, (3) a scheme for multi-objective Research in Engineering Design (1999)11:172–192 ß 1999 Springer-Verlag London Limited Research in Engineering Design Correspondence and offprint requests to: Dr. J. Cagan, Computa- tional Design Laboratory, Department of Mechanical Engineering, Carnegie Mellon University, Pittsburgh, PA 15213, USA

Engineering Design A-Design: An Agent-Based Approach to

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

A-Design: An Agent-Based Approach to Conceptual Design in a DynamicEnvironment

Matthew I. Campbell1, Jonathan Cagan1 and Kenneth Kotovsky2

1Computational Design Laboratory, Department of Mechanical Engineering;2Department of Psychology, Carnegie Mellon University,Pittsburgh, PA, USA

Abstract. This paper provides an introduction to a newdesign methodology known as A-Design, which combinesaspects of multi-objective optimization, multi-agent systems,and automated design synthesis. The A-Design theory isfounded on the notion that engineering design occurs ininteraction with an ever-changing environment, and thereforecomputer tools developed to aid in the design process shouldbe adaptive to these changes. In this paper, A-Design isintroduced along with some simple test problems todemonstrate the capabilities of different aspects of thetheory. The theory of A-Design is then shown as the basisfor a design tool that adaptively creates electro-mechanicalconfiguration designs for changing user preferences.

Keywords: Adaptive search; Agents; Design synth-esis; Multi-objective optimization

1. Introduction

Traditionally, the engineering design process is acooperative effort among engineers and management,where virtual and physical prototypes are constructed,tested and evaluated. Based on constantly changingdesign goals, available technologies, and designconstraints, managers refine the design specificationsand appropriate design teams, while engineers withinthose teams collaborate to affect changes to the designto meet target specifications.

The goals of a design problem are established toaddress market-driven issues such as product cost orperformance, and engineering objectives such astarget lifecycle or efficiency. One company’s productcan be distinguished from others in the manner inwhich it achieves the various product design goals.While some companies produce inexpensive designsin order to find a profitable market niche, others may

produce high-end products; to position one’s productamongst competing products a constant awareness ofmarket demands is required. However, in theconceptual design phase, it is not always possible toset the relative importance of the various objectivesand constraints prior to generating solutions, as isrequired in most automated design systems. Currentcomputer tools tend to be static in, and unresponsiveto, such changes in the problem description and thesolution strategy. These limitations motivate theconceptual design methodology introduced in thispaper, which is capable of adapting to changes indesign problem specifications.

This paper introduces A-Design – a new searchstrategy for the conceptual stages of engineeringdesign that incorporatesagent collaboration with anadaptive selection of designs. Having a multitude ofagents that are responsible for the same task yetpresent different strategies and differing knowledgefor solving the same design problem generates agreater variety of design alternatives. The systemgains robustness due to the collaboration of thesevarying agents, thus affording the design process theability to change focus when the user’s preferencechanges. These agents are analogous to individualspecialists within a design firm. As with a company,there is usually not a single optimal design, but ratherdesigns evolve and, as they do so, the companyselects designs at certain states and markets them asproducts. This dynamic nature of true engineeringdesign is the foundation for creating A-Design in amanner that is adaptive in both the design process anddesign specification.

The basic subsystems of the A-Design theory are(1) an agent architecture that is responsible forcreating and improving design alternatives, (2) arepresentation of the conceptual design problem thatis comprehended by the agents in order to createdesign concepts, (3) a scheme for multi-objective

Research in Engineering Design (1999)11:172–192ß 1999 Springer-Verlag London Limited

Research in

EngineeringDesign

Correspondenceand offprint requeststo: Dr. J. Cagan,Computa-tional DesignLaboratory,Departmentof MechanicalEngineering,CarnegieMellon University, Pittsburgh,PA 15213,USA

decision making that retains solutions exhibitingdifferent patterns of strengthsand weaknessesinorderto accommodatechangein userpreferences,and(4) an evaluation-basediterative algorithm forimproving basic designconceptstowardssuccessfulsolutions.This paperintroducesthe A-Designtheoryfor conceptualengineeringdesign,with someexam-ples to illustrate its general search technique andadaptability. The theory is then implementedon aproblemwherethe goal is to produceconfigurationsfor a specified electro-mechanical function. Theseconfigurationsare composedof actual componentschosenfrom a catalogof variousmanufacturers,andthe topologicconnectionof thosecomponentswithinthedesign.This electro-mechanicalA-Designprocessdiffers from previouswork in that (1) designsarenotonly generatedbut iteratively improveduponto bestmeet current objectives specified by a user, (2)synthesis of designs is performed within a richdescriptiverepresentationof componentsandconfig-urations that models real-world componentinterac-tions, and (3) key designalternativesare retainedtoallow the systemthe flexibility to adjust to futurechangesin the problemspecifications.

The flexibility in the electro-mechanicalA-Designmethod allows for the production of a variety ofsolutionsfor a given designproblem.For examplein

Fig. 1 theuserhasdefineda designproblemto createweighingmachines(fully describedin Section6) forwhich the processcreatesa variety of results withdifferent strengthsand weaknesses.In this problem,theuserposesthreeobjectivesto beoptimizedwithinthe A-Design process: minimize cost, minimizedisplacementat the input, and minimize the error inthedial. This figureshowsthreedifferentdesignsthatwere generatedby the systemand exhibit differentstrengthsin eachof theobjectives.Throughchoosingthe relative importance of the design goals, thedesigner can guide the A-Design process as itgeneratespractical and useful alternatives for agiven setof needs.The designer’spreferencefor theobjectivescanbe changedthroughoutthe process,inresponseto the types of designs that are beingproducedandto changesin themarketforcesthataredriving the process.

In the remainderof this paper,we first describerelatedwork andintroducetheA-Designtheory.Nextwe presenttwo examplesthat illustrate the searchstrategyandadaptabilityof the approach.Implemen-tation of A-Design as an electro-mechanicalconfig-urationdesigntool is thenpresented,andtheresultingsystemis testedon a practical designproblem, thedesignof a weighing machine.Finally, the implica-tions of the techniquearediscussed.

2. Related Work

The A-Design methodology combines innovationsfrom artificial life, genetic algorithms, stochasticoptimization, multi-objective optimization, qualita-tive physics and asynchronousteams.This sectionplaces A-Design within the perspectiveof theseapproaches.Table 1 summarizes the four basicsubsystemsof A-Design,and showshow they relate

Fig. 1. Initial weighing machine results: (a) Low cost design,(b)minimum input displacement design,(c) accuratedial design.

Table 1. DerivationandInnovationsof the A-Designtheoryandthe electro-mechanicalimplementation

A-Design Agent Iterative-based Designselection Representationofsubsystems archecture searchstrategy electro-mechanical

systems

Relatedwork Artificial Life, MADS,A-Teams

StochasticOptomization,GeneticAlgorithms

ParetoOptimality QualitativePhysics,FunctionalGrammars

A-Designinnovations Agentsaregoal-directedandworkwithin a specificA-Designhierarchywherefeedbackto agentsprovidesfor an ever-changingenvironment

A-Designiterativelyimprovesuponexistingdesignalternativesandcreatesnew ideasthroughmanagementofmaker-andmodification-agents

Designsaredividedinto threeuniquepopulationsthat areusedto addadaptabilityanddiversity to designstatesandto provideamechanismof feedbackfor agents.

Two tier representationallows systemto bothdescribebehaviorofcomponentsandinstantiatebehaviorwith real-worldcomponents.

A-Design:An Approachto ConceptualDesignin a DynamicEnvironment 173

to each of the different approaches.The third rowdescribes how A-Design has expanded upon ordiverged from these researchideas to create theunique constituentsof the theory. The followingsubsectionsdiscusseachof theseareasasthey relateto A-Design.

2.1. Artificial Life

Recentinsightson how natureperformscomplicatedproblemsolvinghaveled to thefield of Artificial Life(Langton 1988, Holland 1992). Artificial Life putscomputationin the handsof naı̈ve agentswho often,through following simple reflexive operations,achieve a complicated emergent behavior. Thecomplexadaptivesystemscreatedby the interactionof agentshasthe benefitof a highly distributedandparallelprocessthat can leadto enhancedrobustnessand computational speed. Similarly, A-Design’scombinationof different agent behaviorsoccurringtogetherwithin an engineeringdesignsettingideallyleads to more creative solutions than would beobtainedfrom a systemhaving one intelligent agentperformingall designtasks.

2.2. Multi-Agent DesignSystems(MADS) andAsynchronousTeams

Multi-agentsystemshavepreviouslybeenappliedina numberof engineeringdesignapplications(seetheoverview by Lander 1997). The approachin thesemulti-agentsystemsis to useagentsto handlethepre-andpost-processingof variouscomputationalanalysistools suchas spreadsheetsor CAD systemsin orderestablishacommoncommunicationamongthem.Theagents, which communicate through a commonframework, act as ‘experts’ in that they representthe results producedby their encapsulatedapplica-tions and presentit to the design process(see theexample in Goldstein 1994). Currently, these ap-proachesoffer an unobtrusiveapproachto commu-nicating betweenthe large computer tools used inconcurrentengineeringdesign. Other researchpro-jects in this area are incorporating reasoningandlearning(GrecuandBrown 1996)into theseagentsinorder to more closely simulate strategiesused byhumandesigners.

Asynchronous Teams, or A-Teams (Talukdar1996), is a computational methodology whichcombines design utilities such as optimizationtechniqueswith autonomousagents.Theseautono-mous agents perform computations independentlyfrom other agents,and contribute their results in a

parallel and distributed fashion. It is believed thatcombiningprogramsin a cooperativeyet anarchisticmannerwill producebetter resultsthan if programswere executed individually. Talukdar (1993) de-scribesthis as synergy:‘‘When the effectivenessofcooperationis sogreatthat a super-objectis, in somesense, greater than the sum of its parts, thecooperationis synergistic’’. The philosophy of theagent-basedapproachof A-Designis similar to thatofA-Teams.Note that A-Teamshavealsoexploredtheuseof a multi-objectiveselectionof designs,asseenin Murthy (1992) and Quadrel et al (1993). Theseprojectsweresimilar to A-Designbothin thedivisionof labor in agents,and in the agentpreferencesfordesignobjectives.What differentiatesour work (aswill bediscussedbelow) is our functionalrepresenta-tion usedto model and evaluatedesignalternatives,our hierarchicaland specializedagentsthat operateuponvarioussubtaskswithin thedesignproblem,andour managementand dynamicmodificationof agentpopulations.

2.3. Genetic Algorithms

Genetic algorithms are a popular form of problemsolving (see the overviews in Mitchell 1996 andGoldberg 1989), and have been applied to variousengineeringdesignproblems(e.g.Queipoet al. 1994,Koza et al. 1996,GageandKroo 1995).Often, theyare used to find solutions in highly constrainedsituationswhere the user is more concernedaboutfinding feasiblesolutionsandlessaboutoptimizing.

Geneticalgorithmssynthesizesolutionsby combin-ing the configurationsof other alternatives.Thesealgorithmsstore many designstatessimultaneously,as is done in A-Design, in order to compare,propagateand modify alternativesin a similar wayto that used in natural evolution. A-Design differsmost from thesealgorithmsin that it maintainsandevolvesboth populationsof designsand populationsof the designcreators,the agents.Further,modifica-tion of designsin A-Design is determinedby goal-directedagentsratherthanonly randommutationandcrossover,allowing for a more efficient searchoffeasibledesignstatesby preventingundirecteddesigncreation.

2.4. Multi-Objective Optimization

Paretooptimality hasbeenfrequentlyusedto addressmulti-objectiveoptimizationproblems,for exampleinBalachandranand Gero (1984)and in Eschenaueretal. (1990). Many algorithms, especially genetic

174 M. I. Campbellet al.

algorithms,haveincorporatedthis notion of compar-ing designs(seetheoverviewin FonsecaandFleming1995). For example, Schaffer (1985) developedVEGA, a genetic algorithm that incorporatesbothPareto optimality and computational search. Thecombination of Pareto optimality and agents hasbeenexploredby Petrieet al. (1995),whereexistingsoftwaretools are controlled by a single governingagentthat makesdecisionsto keepdesignsbasedonPareto optimality. Other than Pareto optimality,multi-objective conceptual design is also tackledthrough multi-attribute selection (Thurston 1991,D’Ambrosio and Birmingham 1995), and throughspectraloptimization(Dong andAgogino 1995).Ourwork usesParetooptimality asthe basisfor dividingdesignsinto thethreepopulationsof Pareto,goodandpoor,which is doneto give theA-Designsystembothflexibility and focus on the changing problemspecificationsasshownin Section7.

2.5. StochasticOptimization

Few optimization techniquesare able to addressthehighly nonlinear, discontinuous and multi-modalproblems found in engineering design. However,stochasticoptimizationtechniquessuchas simulatedannealing (Kirkpatrick et al. 1983), Tabu search(Glover 1989) and hybrid methods(Fox 1992) havebeenableto solvetheseproblemswith somesuccess.These approachesmake numerousperturbationstosolutionswhile evaluatingtheobjectivefunctionwitheach change,therebyallowing the systemto movethroughthe designspacein searchof optimal states.Sincethesealgorithmsrely heavilyon randommovesand statistical behavior, they need to performnumerous iterations to arrive at good results.Optimization of this sort can be costly if theevaluationof eachiteration is time-consuming,as isoften the casein designproblems.A-Design’suseofagentsattemptsto reducethe inefficientmovesin thedesign space by having agents make intelligentdirecteddecisionsabouthow to improve designs.Astochasticinfluence is still present in the randomselectionof appropriateagents,andcomponents.

2.6. Conceptual DesignGeneration andRepresentation

To implementa conceptualdesigngenerationtool forelectro-mechanicaldesign, comprehensionof func-tional behavior is important. Much of the work inqualitativephysics(seetheoverviewin Forbus1988)is devoted to producing computer models that

understandhow the physical world operateson asymbolic or qualitative level. While a few researchprojects have addressedfunctionality as a conse-quenceof the geometryof interacting components(Stahovichet al. 1998),mostdescribecomponentsashaving non-dimensionalinfluence on one another(Hoover and Rinderle1989,Gero 1990,Navinchan-dra et al. 1991, Chandrasekaranet al. 1993). Therepresentationaspectof our work buildsprimarily onthework of WelchandDixon (1994)andSchmidtandCagan(1995),with extensionsto allow for real-worldcomponentsandcomplexcomponentconfigurations.

3. A-Design Theory

The A-Design theory presentedhere is an iterativeprocessthat incorporatesboth populationsof designsas well as populationsof agents,the creatorsof thedesigns. In each iteration, the agents modify thepopulationof designs,and are themselvesmodifiedbasedon the quality of designsthey produce.In thismanner,A-designcapturesthe evolutionarynatureofdesign, and overcomes multi-modal, non-linear,discontinuous design spaces that are typical ofconceptualelectro-mechanicaldesignproblems.Thissectiondescribeseachof the four partsof the theory.First, we presentan overview of the entire iterativeprocess (Section 3.1), followed by a detaileddescriptionof the adaptivedesignselectionmethod(Section 3.2), then the representationof designs(Section3.3), andfinally the creatorsof the designs,the agents(Section3.4).

3.1. Iterative Process

Figure 2 showsa flowchart of the overall process.Initially, the system accepts a starting point ordescriptionof theproblemto besolved.For example,the initial specificationfor electro-mechanicaldesignis a formal descriptionof input andoutputbehaviors.One classof agents,known as maker-agents,worksdirectly with theseinput specificationsto produceapopulationof designalternatives.Thesedesignstatesarethenevaluatedon thevariousobjectivesspecifiedby the user.The designsortingmethodis capableofretaining flexibility in the design process, andallowing for robust selection of designsregardlessof the numberof objectives.The strategydividesthedesignsinto threepopulations– Paretooptimal,goodandpoor – via the designselectionprocessdescribedin the following section.As seenin the figure, thePareto optimal designs are copied to the nextiteration, as well as sent with the good designsto

A-Design:An Approachto ConceptualDesignin a DynamicEnvironment 175

modification-agents.This modification phaseof theprocessinvolves agentsthat attemptto improve thesolutionsandeffectively refinethe currentsetof bestdesigns.Poor designsare discardedsince they havethe leastpotential to improve future designs,and tomakeroomfor additionalmodifiedor newdesignsinfuture iterations.Throughoutthe process,manager-agentsprovide design sorting criteria, feedbacktoagents,and convergencecriteria for the process.Asthe processunfolds, designstatescycle through theexchangebetween maker-agentsand modification-agentsuntil the systemconvergesor resourceandtime constraintsrequirethe acceptanceof the currentbestdesign.

This methodology is intended for open-endeddesign problemswhere there is not a well-definedsolution;hence,anin-depthsearchof thedesignspaceand adaptability to user preferencesis required.Solutionsto the designproblemareconstantlybeingimproved upon via the selection of designs in amannersimilar to that done in genetic algorithms.From a population of design alternatives,the bestonesareselectedto propagateinto the next iteration,while theremainingonesarediscardedto makeroomfor newsolutions.In geneticalgorithms,this selectionpressureor ‘survival of the fittest’ is the primarymotivating factor in finding optimally directed de-signs. A-Design’s selection pressureconservativelyeliminates only the designs that would never bedesired under any user preference. The user’s

preference,however, is used to guide the processtowards solutions that best exemplify the desiredtrade-offsby propagatinga higher concentrationofdesignsthat meet the current user preference.Thisselectionof designsis the process’main methodofsearchingthespace,andis describedin moredetail inthe next section.

Along with selection pressure,A-Design is alsoable to search for improved designs throughintelligent modification of past alternatives andthrough feedbackprovided to agents.The modifica-tion-agents do not perform simple mutation andcrossoveroperationsas in genetic algorithms, butinsteadperform intelligent fragmentingor chunkingof portionsof a designbasedon theevaluationsof thedesign.For example,a heavydesignmight have itsmore massivecomponentsremovedin an attempttoimprove the designwhen it is reconstructedby themaker-agents.

3.2. DesignSelection

In a conceptual design problem where one isconsideringvarious componentchoicesand config-urations,thereare often many goalsand constraintsthat need to be addressed.These can includeobjectivesof various levels of specificity, from themore generalsuch as minimizing weight, cost andsize to more specific goals such as minimizing theamountof movementat a given point, or minimizingovershootin a transientresponse.Constraintspresentin a design description can include, for example,preventingexcessivepressuresin fluid lines or notexceeding maximum temperature requirements.Further, the problem description in conceptualdesign often changesduring the design process,thereby necessitating that a conceptual designalgorithm be able to handlemultiple objectivesin aflexible manner.To do so in A-Design, the processfocuses on current user preferencesto determinewhich objectivesandconstraintsaremost important,while also maintainingdesignsthat exemplify otherrelative strengths.Thesealternativesact as recessivedesigntraits in that they preservecombinationsnotoptimal under the current user preference, butpotentially so underotherpreferences,thusallowingA-Designto quickly respondto changesin thedesignenvironment.

The algorithm thus maintains a population ofdesigncandidatesthat is divided into threeseparatepopulationslabeledpoor designs,good designsandParetooptimal designs,asdescribedbelow.By usingthe ideaof Paretooptimality, we canmathematically

Fig. 2. Generalflowchart for A-Design theory.

176 M. I. Campbellet al.

determinewhich designalternativesareclearly betterthanotherswithout simplifying theobjectivesto onlya single scalar,either by a weighted sum or othermethodsused in utility-theory. The best design forany userpreferencecanbe found in a setof designscalled the Paretooptimal set,definedas(Eschenaueret al. 1990):

x*[ X is a Paretooptimal point if andonly ifthereis no othervectorx[ X suchthatfj(x) 4 fj(x*) V j [ {1, ......, m} (1)andfj(x) < fj(x*) A j [ {1, ......, m}

In this equation,f is an objective, m is the totalnumberof objectives,andX is the setof designs.Byrequiring all objectives to be optimized throughminimization, it is necessaryto note that no otherdesignshouldexist that hasmoreminimal valuesforthe total of the objectives presented.This can bevisually determinedthroughplotting alternativeson agraph,with theaxesrepresentingdifferentobjectives,as in Fig. 3(a). If only two objectives are to beoptimized,onecanview designalternativeson a two-dimensionalgrid, andthe Paretooptimal designscaneasilybe determined.Thesedesignsform a ‘front’ ofsolutionsthatarecloseto thecoordinateaxes.Despitethe difficulty in viewing the Paretooptimal set forhigher dimensions,the designscan still be found byapplying the mathematicalcriteria statedabove.

The essence of the A-Design process is topropagatethis Paretofront to constantlyfind bettersolutions,asseenin Fig. 3(b). However,at anygiventime in theprocess,theusermight changetherelativeimportanceof objectives.As mentionedabove, themulti-objective selectionis useful in handling largenumbersof objectivesor constraintsin a morerobustmanner,but it is also useful in tailoring designsforspecificdesignerneedsor consumermarkets.Imaginea situation in which performanceand cost are twocompetingobjectivesin a conceptualdesignproblem.A-Designmight be initiated to conceptualizedesigns,with more importancegiven to minimizing cost than

maximizing performance.The processconcentratesits effort on this userpreference,but by maintainingthe complete Pareto optimal set, the system canaccommodatechangesto this preference.The userpreferencecanbe implementedin a variety of ways.In the current implementation,the user defines alinear weighting; however,multi-attribute decision-making (Thurston1991), for example,could also beused.

Outside of Pareto optimal designs, the systemfurther dividessolutionsinto goodandpoor designs.At a given time, A-Designconcentratesits effort onimprovingdesignsthat bestmeettheuserpreference.Somedesigns,while not Paretooptimal,might bettermeetuserpreferencethansomeof theoutlying Paretooptimal alternativesthat are preservedfor extremechangesin userpreference.This set of preferredbutnon-Paretodesignsmakes up the good populationwhich, for example,can be visualized as a set ofsolutions located within a given radius of theintersection of current user preference and theParetoset (Fig. 3(c)). In general,the good designsare a user-definedpercentage(25% in the currentimplementation)of the non-Paretodesignsthat bestmeet the user preference. By concentrating onimproving the setof gooddesigns,A-Designfocuseson the desired user preference.If the preferencechanges,thenthelocationof thegoodpopulationwithrespectto theParetooptimalsetwill alsochange.Thepurpose of the good designs is to propagatealternativeswhich might not currently be optimal,but which throughsomemodificationmight provetobe a successfuldesignalternative.The goodpopula-tion servesto adddiversityin designconfigurationsasopposedto diversity in objectivevalues,asis donebythe Pareto optimal designs. The remaining poordesignsare discardedby the systemto make roomfor new designstatesin subsequentiterations.

Another important feature of the division ofdesignsis to track the agentsthat createdthem.Weincreasethe prevalenceof agentsthat createParetoand good designsso that, in future iterationsdesignactivity will producemore designslike the currentParetoandgoodset.Conversely,agentsthat producepoor designs are penalized in order to eliminatedesign activity that leads to inferior design states.Manager-agentscontrol this feedback mechanism,which modifies the maker-agentand modification-agent populations; in future, more sophisticatedfeedbackwill be explored.

This division of designsinto Pareto,goodandpooris thustheprocess’methodof keepingtrackof usefulalternatives,aswell asproviding feedbackto agents.It is this division and the propagationof the Pareto

Fig. 3. (a) Two-dimensionalplot of designsdepicting paretooptimal set,(b) propagatingParetosurfacewhile consideringuserpreference, (c) bulb of good populations move with userpreference.

A-Design:An Approachto ConceptualDesignin a DynamicEnvironment 177

front thatprovidesthe foundationfor our approachtomaintaining recessive characteristics,providing apoolof designsfor possibleevolution,andinfluencingagentselection.

3.3. DesignRepresentation

It is necessaryin anycomputationalprocessto haveaformal descriptionof the artifact being manipulated,createdor optimized. Traditionally, in engineeringoptimization,therepresentationis asimplevectorof afixed length, set prior to execution, containingvariablesrepresentingdifferent physicalattributesofa design.The perturbationof this vector, x, is oftendone either randomly or through knowledge ofprevious evaluationsof x. In the case of geneticalgorithms,for example,the x is often expandedto abit string to representa genotype encoding. Themannerin which the string is manipulatedcan haveunpredictableor far-reachingeffectsin thephenotypeor physicalconstructionof the design.The unsyste-matic changesthat can result by manipulating thedesign encoding make logical modification of thedesignstatedifficult.

It is for this reasonthatwe developa descriptionofthe designstatethat is most natural to modelingtheactualdevice,and not a descriptionwhich is merelybeneficial for the manipulation and creation ofdesignsthrough computationalmethods.As will beseenin Section5.2,anelectro-mechanicalrepresenta-tion is developed to model a range of electro-mechanicaldevices,and doesnot dependupon themannerof constructingor alteringdesigns.Allowingmore freedom in constructingcomputationalrepre-sentations,be it through data structuresor variablelength vectors,allows design synthesisto be moregeneral without the restrictions imposed by theconstruction process.The drawback of having amore general design description, however, is theneed for more involved techniquesfor configuringdesigns,hence agentsare used to act as a bufferbetweenthe iterativeprocessandthe representation.

3.4. Agents

The creationof any onedesignin A-designis duetocollaborationamongseveraldifferent agents.Theseagentscontainknowledgeof how to designbasedontheir individual strategiesand preferences.They areconstructedto understandthe representationof adesign state, be it complete or incomplete, andcontribute in a manner that leads to successfulsolutions. The strategiesused by these agentsare

based on deterministic algorithms, such as tree-searching or pattern matching. In the currentimplementation,agentsare not autonomous,but aretriggeredby the systemor by otheragents.A simplehierarchyexists where one set of agents,known asmanager-agents,invokes the operationsof the otheragent classes:the maker- and modification-agents.Within eachagentclasssubclassescanexist, aswellas different agent types within each subclass,andpopulationsof agentsof the sameagent type. Forexample,the electro-mechanicalA-Design approachshown in Section5.3 has two subclassesof maker-agents,Configuration-agents(C-agents)andInstantia-tion-agents(I-agents);thereare 32 different C-agenttypes and six different I-agent types, and within agiven iteration of A-Design there is an averagepopulationof 3000maker-agentsin all.

The maker-agentshavetwo responsibilities:createdesignalternativesbasedon the problemdescription;and re-build designsreturnedby the modification-agents.Constructionof a complete design state isaccomplishedby severalmaker-agents,which eachaddtheir distinctivepartsto makea completestateasprescribedby the design representation.The mod-ification-agentsareactiveat theendof theevaluationphaseof the process(seeFig. 2) to takedesignstatesfrom the Paretoand good populationsand improvethembasedonhowtheywereevaluated.Theseagentsallow the processto movefrom currentdesignstatesto possibly better ones. As seen in Fig. 3(b), themodifications performed by these agents can sig-nificantly advancethe Paretooptimal front.

While the maker-andmodification-agents performdirected strategiesto constructor improve designs,themanager-agentsaddbotha stochasticandlearningaspectto the A-Design system.Initially, all maker-and modification-agentshave the samepopulation,andthemanager-agentsrandomlyinvoketheseagentsuntil all design tasks for the given iteration areaccomplished. At the end of the iteration, themanager-agentsanalyzethe designscreatedby theseagentsand provide feedbackabout how to improvethedesignprocessaccordingto theuser’spreferences.Currently, a single manageragent is implementedwhich providesfeedbackin the form of increasingordecreasingthe populationof particular agent types,therebyforcing the agentsto competefor survival bycontributingto betterdesigns.

Thereis someambiguityin computationalresearchover the properuseof the word ‘agent’. Our useofagentis consistentwith the definition of RussellandNorvig (1995),whereagentsareviewedasperceivingtheir environment (here, the design state) throughsensors(i.e. functional inputs) and acting upon their

178 M. I. Campbellet al.

environmentthrough effectors (i.e. modificationstothe design state). While some might argue thatwithout displaying specific behaviorsof autonomy,mobility or sociability (Sycara1998, Franklin andGraesser1996), the agentsin A-Design do not fullyconform to the definition of ‘agency’. However,within theArtificial Life community,agentsoftenaredefinedassimplestrategiesthat whencombinedleadto a more complex emergent behavior (Langton1988). Similarly, our agentsare defined as knowl-edge-basedstrategiesfor solving open-endedpro-blemsthat, whencooperativelycombinedwith othersimilar strategies,leadsto a morecomplexandoftenemergentbehaviorfor achievingthe designgoal.Forexample,in designingtravel pathsbetweentwo setdestinations,one can imagine different agents toaccomplish the goal. One agent might try todeterminethe best path for driving while anothermight look at possibleflight pathsfor connectingthestart and end points. The various agents wouldaccomplishthe samegoal but in different manners.Because,in design, there is no single or clear-cutanswer,different agentsworking on the samedesignproblemcangeneratecompletelydifferent solutions.By havingagentswith different abilities contributingto designs,theprocessgainsrobustnessandvariety insolving variousconceptualdesignproblems.

4. A-Design as SearchStrategy

The following two test examples explore theeffectivenessof the A-Design theory as a computa-tional searchtool. Theywerecreatedto testindividualsectionsof the theory, and are presentedhere toillustratethecapabilitiesof themethodology.Thefirstdemonstratesthe operation of the multi-objectivedesignselectionandinteractionof agentsubsystems,while the second challenges A-Design with anumerical optimization problem. In each of theseexamples,the design representationand agentsarequitesimple.After this explorationof theoperationofthe general components of A-Design, a richerrepresentationand set of agents is introduced inSection 5 for the conceptual design problem ofelectro-mechanicalconfigurationdesign.

4.1. Manhattan Transfer

This example presentsa problem for which it isrelatively easyto find solutions,but difficult to findsolutions that maximize the satisfaction of thetraveler’s preference.The object of the ManhattanTransfer problem is to get from one location to

anotherin a grid-basedcity in the minimum amountof time, costandeffort. A userspecifiesthe startandendlocationsof a trip astheinitial specificationto thealgorithm.It is the algorithm’sduty to find solutionsthat connectthe start and end locationsvia varioustransportationmedia. A simulated two-dimensionalgrid of squaresrepresentscity blocks, while thetransportationdevicesconsistof bike, walk, run, bus,taxi andsubway;eachhavingdifferent valuesfor thecost,time andeffort required.Theproblemspecifica-tion requiresA-Design to createalternativesusingcombinationsof the six transportationdevices inorder to best satisfy the user’s weightedcriteria ofminimizing cost,time andeffort.

The processstarts as in Fig. 2 with the maker-agentscontributingpartial travel pathsalongthe wayto the creationof completetrips. Rather than eachagentsolvingthecompleteproblemfrom startto end,the maker-agentssubgoal on shorter trips thatcombineto makea completesolution.Therefore,alldesignstatesare the resultof the combinedeffort ofseveralmaker-agents.Thesemaker-agentsdiffer inwhich transportationdevicetheyaddto a trip andhowtheyhandleconstraintsin thesystemsuchasbusandsubwaystops,andmaximumdistancesonecanwalkor run. After maker-agentscomplete designs, thedesignsare evaluatedon their cost, time and effort,and solutionsare sortedinto Pareto,good and poorpopulations.Next, modification-agentsremove ele-ments from solutions that are believed to bepreventingdesignsfrom reachingoptimal statesandreturn the fragmenteddesignsback to the maker-agentsfor reconstruction. After modification,anotheriteration ensuesuntil the process is finished andreturnsto the usera solution representedasa list oftransportation devices with their start and stoplocationsmakingup the completetravel plan.

The ManhattanTransfer resultsare generatedbyspecifying the beginning (0, 0) and end (20, 20)locations,as well as the relative importanceof eachobjective.At theendof theprocess,A-Designreturnsseveralsolutionsthat bestmeet the userpreference.For example,if the userfeelsthat minimizing cost ismore important than minimizing time or effort, asolutionsuchastheoneshownin Fig. 4 is suggested.This solution was generated for a user whosepreferencefor cost is five timesmore importantthantime and two times more important than effort. Thedesignwas found in 62 iterationswith a maximumdesignpopulationof 160. In addition,theuseris freeto changepreferencethroughouttheprocess,allowingthe systemto adaptappropriately.By examiningtheresultsproduced,the user can adjust the preferenceweightingto achievethedesiredtrip. In this example,

A-Design:An Approachto ConceptualDesignin a DynamicEnvironment 179

user preferencewas changedmidway through theprocessto prefer minimizing time twice as much aseffort, andfive timesasmuchascost,thusproducingthe resultof ‘take taxi from start to finish’. By usingthe population of designs created under the oldpreference,which includesa variety of designs,theprocessis easilyadaptedto this newpreference.As aresult, the algorithm took only 11 iterations toconverge,thusillustrating the powerof the recessivetraits stored in the Pareto set. It was determinedthroughaseparateexperimentthatthecompletespaceof uniquely evaluatable design states numbersapproximately1.2 million, and that of these,only99areParetooptimal.In comparison,A-Designfound40 Paretopointsof the99 while searchingonly 0.6%(approximately 7000 design states) of the designspace.

Although the ManhattanTransfer exampledealswith a highly abstractedsituation, it illustrates thatagentswith different characteristicsareable to worktogether to find optimal design configurations,andtheir interactionproducesa flexibility in adaptingtochanges.Alone, the agentsconsiderminimizing onlysingle objectives.For example,low-cost designsareusuallycreatedby agentsthatpreferlow-costdevices.Through the collaborationof different agent types,solutionsare constructedthat exemplify the prefer-encessuggestedby the user. The combination ofagentsthat prefer low-cost deviceswith agentsthatprefer low-effort deviceswill ideally lead to designsthat are both low in cost and low in effort. In theexample,the initial userpreferencewasfor low-cost

designs, but when the preference changed toemphasize quick trips, A-Design was able toaccommodatethis alteration and switch focus toagents with a preferencefor quick designs. Theexamplealsodemonstratesthe algorithm’seffective-nessin advancingtheParetooptimalfront throughthevarious iterations.Early iterations producea set ofalternativesthat through modification lead to betterstates,which in turn addnew solutionsto the Paretosurfaceand removepreviousonesthat are showntobe suboptimal.

4.2. Numerical Optimizati on

In addition to A-Design’sability to adaptto changesin user preference is the need for A-Design tooptimize the various objectives specified by theuser. This example, therefore, tests the optimizingpowerof A-Designapartfrom its useasa conceptualdesign generationtool. In its final form, A-Designcreates designs to best meet the objectives andconstraintsspecifiedby a user, and is thus driventowardoptimally directedconfigurations.

This examplesetsup two numericalfunctionsto beoptimized in order to maintain a multi-objectiveproblem. The two functions shown in Fig. 5, areexpressedby

f1�x; y� � 300�1 ÿ x�2eÿx2ÿ�y�1�2 ÿ1000

�x5ÿ x3 ÿ y5

�eÿx2ÿy2 ÿ 100

3eÿ�x�1�2ÿy2

ÿ jxj ÿ jyj �2�where the minimum is 759.2 and is found at (x =0.023,y = 72.105),and

f2(x,y) = x2 + y2 7 100sin(x) 7 100sin(y) (3)

wherethe minimum is 7234.6and is found at (x =71.57,y = 71.57).

Thesefunctionsare both highly multi-modal, andthereforedifficult to solveby traditionalmethods.A-Design was comparedwith a robustSQPalgorithm(Lawrenceet al. 1993) in finding an optimum for aweighted sum of the two objectives.Both systemswere first testedby weighting f1 ten-to-oneover f2,andthentestedagainwith aweightingof f2 ten-to-oneover f1 using the resultsof the first run as the initialspecificationsfor the secondrun. The 10:1 and 1:10preferencesare used to establish quite differentoptimal points for the lumped objective functions.Agentswithin this problemaresimple functionsthatincreaseor decreaseparameterswithin the equationsto reduceobjectivevaluesor avoid local minima.

Fig. 4. Possiblesolution for ManhattanTransferproblem.

180 M. I. Campbellet al.

A single run of A-Design proved to be a time-consuming process,partly due to the number ofdesignstateevaluationsand partly due to agentanddesignmanagement.AlthoughSQPfoundtheoptimalsolution quicker for the 10:1 weighting, it success-fully foundtheglobalminimumonly oneoutof seventimes.TheA-Designalgorithm,dueto its agent-basedsearchand storing of designalternatives,found thesolution in every run with a populationsize of 100andanaverageof 88 iterations.Whentheweightingschanged,A-Design only neededto perform a singleiterationto arriveat thenewoptimum,while SQPhadto bererun13 timesbeforefinding thenewoptimum.By retainingtheParetooptimal setfrom thefirst run,the A-Designalgorithmquickly adaptsto changesinweighting of the two objectives.Certainly,SQPis amoreefficient optimizationstrategyif it startsin theneighborhoodof theoptimum.However,A-Designis,in general, more robust in its ability to find theoptimum and the time requiredin arriving at Paretooptimal solutionsfor the first userpreferenceresultsin a largesavingswhentheprocessis reinitiatedwithdifferent weights.

Thetwo examplesdiscussedabovedemonstratetheversatility of the A-Design methodology. Bothexamplesillustrate the methodology’spotential out-side the intendeduse as a conceptualdesign tool.These examplesshow that A-Design, through itsunique design selection schemeof preserving theParetofront anditerative-basedagentoperations,cansuccessfullyproduce results for a wide variety ofproblems.

5. Electro-Mechanical ConfigurationDesign

5.1. Overview

Since the philosophybehind A-Design is to aid oreven automate portions of the conceptual designprocess,it is importantthat we constructan examplewhich capturesthe open-endedness of true design.The previous two examples simplify the designprocessto optimizing search,but the real designprocessis muchmorecomplicatedthansearchingfora single global optimal state. Design is an ever-changingprocesswhere not only doesthe spaceofrelevantdesignschange,but alsothe meansin whichthosedesignsareevaluated.

This sectiondescribesa completedimplementationof A-Design that createselectro-mechanicalconfig-uration designsfor a general class of user-definedproblems. In Fig. 6, a detailed flowchart for theelectro-mechanicalA-Design processis presented.Note that it is an augmentationof the generalA-Design flowchart presentedin Fig. 2. Initially, theuser defines a design problem by the functionaldescriptionof the inputs and outputsof an electro-mechanical device as the starting point for thealgorithm;it is assumedthatthedeviceto bedesignedis fully describableby the inputsandoutputs.Maker-agentsare divided into two groups: configuration-agents(C-agents)and instantiation-agents (I-agents).The configuration-agentsreason about how theseinputs and outputscan be successfullyconnectedtomake conceptualdesign alternatives.Theseconfig-

Fig. 5. Numericaloptimizationtest functions:(a) f1: peaksfunction, (b) f2: parabolaplus sinefunction.

A-Design:An Approachto ConceptualDesignin a DynamicEnvironment 181

urations consist of abstractcomponentdescriptionssuchas gear,spring and resistor,but do not specifyexact values for parameterswithin the component;this methodof representingdesignsis describedinSection5.2.

After C-agentsconstruct designson an abstractlevel, behavioralequationsare constructedfor eachdesign.Theseequations,which describehow inputsrelate to outputs,set up a methodfor choosingtheexact values of variables within the design. Byreferring to theseequations,instantiation-agents(I-agents)chooseactual componentsfrom a computercatalog to instantiate the conceptual components.After outfitting conceptualdesignswith real compo-nents, the maker-agentphaseis finished and alter-nativesarereadyfor evaluation.

Theevaluationphaserequiresthecalculationof allthe objectivesspecifiedby the user in order to sortdesignsinto Paretooptimal, good and poor popula-tions,asdescribedin Section3.2. All Paretooptimaldesignsarecopiedto thenext iterationto preservethesetof currentlybestalternativesin theprocess.Paretodesignsalongwith thegooddesignsarecopiedto themodification-agentsphaseof theprocess.This partof

the processimprovesupon the better ideascreatedthus far, and attemptsto use them to propagatetheParetosurface.Poordesignsarethoughtto hold littleor no designvalue,and are discardedto makeroomfor new alternatives.Note that, while thesedesignsarediscarded,their potentiallypromisingdescendentsin future iterations are not necessarilylost. It ispossibleto reachthesegood alternativesfrom otherparts of the spaceof designswith the help of themodification process.The elimination of the poordesignssimply actsto allow theprocessto searchthemost promising areasof the problem space– animportant strategy on problems such as creativedesigntasksthat aretoo largeto allow an exhaustivesearch.

At this point, theprocessis repeated.Themanager-agents(M-agents)make crucial decisionsabout theprocess.They determinehow the designsare to beseparated,how agentsaregiven feedback,andwhenthe processterminates.The processthen iterates,maintainingdesignpopulationsandagentpopulationsuntil termination at which point solutions arereturned, including a subsetwhich best meets theuser’spreference.

5.2. Functional Representation

For A-Designto createelectro-mechanical devices,athorough functional representationfor describingcomponentsanddesignsis required.This representa-tion is tailored to describingfunctionality in electro-mechanicalsystemsso that agentscan producereal-world design configurations.The representationwehave developed is based on qualitative physics(Forbus 1988), bond graphs (Paynter1961, Ulrichand Seering 1989) and functional block diagrams(PahlandBeitz 1988),andmorespecificallyon workdoneby Welch and Dixon (1994) and SchmidtandCagan(1995). A summaryof the representationisgiven in this section.

The fundamentalissuein creatinga representationfor describinga designconfigurationis developingaformalmethodfor howindividual componentsbehaveand, further, how the connectedsum of componentsbehave. In our representation, components aredescribedby their ports, or points of connectivitywith other components. Information about howcomponents are constrained at their ports, howenergy and signals are transformedbetweenports,andhow energyvariableswithin the systemrelatetoothers throughout the design is found in thecomponentdescriptions.Thesedescriptions,knownas embodiments,also contain information about the

Fig. 6. Electro-mechanicalA-Designflowchart.

182 M. I. Campbellet al.

kindsof parametersthatdescribethecomponentsuchas length, spring constant, cost and efficiency.Althoughthesedescriptionsembodythe functionalityof components,they do not containactualvaluesforthevariableswithin a component.Thesevariablesarereplaced with real values when a real-worldcomponentfrom the catalogis usedto instantiateanembodiment.

The user describesthe designproblem to the A-Design systemby supplying information about thedesired inputs and outputs of the device to beconstructed.In the test exampleshownin Fig. 7(a),the input is describedas a downwardforce suppliedby theuser(a specimen’sweight)andtheoutputis anangulardisplacementof adial. With theknowledgeofthe system’s inputs and outputs, the configuration-agents (C-agents) are able to construct designconfigurationsby individually adding one embodi-ment at a time to the configuration to createcompleted conceptualdesign alternativeslike thatshownin Fig. 7(b).

The basic design configurationsare then furtherprocessedto determinethe equationsthat describehow inputs in the systemrelate to outputs. Theseequationsarederivedfrom information storedin theembodiments that describe how the componentsoperateand interactwith oneanother.The equationsare then used to determine the best values forvariableswithin the system.A computercatalogofactual componentsincludes data on the possiblevaluesthat an embodimentvariablecanpossess.Forexample,thegearembodimentin Fig. 7(b) containsavariableradius(rgear) which appearsin the equationdescribing the relation of input and output in thedesign:

�dial � rgear rpulley1

kspring rpulley2Fweight �4�

In this equation,the r variablesrepresentthe radii ofthe gear and pulleys, kspring is the stiffness of the

spring, Fweight is the systeminput, and ydial is thesystemoutput.With thisequationandthedescriptionsof gears, pulleys and torsional springs in thecomponentcatalog,a rangecanbefoundto determinewhatgearsizescanfulfil thedesignrequirementof 0to 300 lb. input, and 0 to 5 radiansoutput. At thisstage, instantiation-agents (I-agents) can instantiatedesignswith thesecomponentsfrom the componentcatalog,thus producingfeasibledesignalternatives.Furtherdetailson the representationandapproachtoequationextractioncan be found in Campbellet al(1998b).

5.3. Agent Framework

Within electro-mechanicaldesign,agentsaredividedinto four categories:configuration-agents (C-agents),instantiation-agents(I-agents); fragment-agents(F-agents);andmanager-agents(M-agents).While futureagent types are planned, the maker-agentsarecurrently composedof the configuration-agents andinstantiation-agentswhile the modification-agentsarecomprised of the fragment-agents.All agents areimplementedas independentfunctions that acceptdesigns or partial design states, and return theirmodifications, additions or possible recommenda-tions.Throughouttheiterativeprocessandinteractionof agent types, the manageragentsmake decisionsabout which designsare better,and how the agentsshould be grouped,penalizedor rewardedfor theirdesigncontributions.

5.3.1.Maker-AgentsConfiguration-Agents (C-AGENTS): configuration-agentsare by far the most involved and interestingof the agenttypes.They havethe ability to take theuser-definedinputs and outputsand choosecompo-nentsto fulfil the functionalityof thedesignproblem.In doing so, C-agentssubgoalon the large problem,determine what portion of the system they willaddress,and find an embodimentthat most fulfilsthis functionality. For this reason,their operationisclosely linked to the functional representationdescribedin Section5.2. The embodimentspresentwithin a given designarethe resultof the variousC-agentbehaviors.

Initially, a C-agent examinesthe partial designstateit is givenanddetermineswhereto attacha newembodiment.In doing so, a C-agentcan add newembodimentsin series or parallel, and from inputtowardsoutputor from outputtowardsinput within aconfiguration.The C-agentssubgoalon the desiredinputs and outputsspecifiedby the user and break

Fig. 7. Weighing machine:(a) User-definedfunctional specifica-tions, (b) possibleconfigurationof embodimentsthat meet theweighingmachinespecifications.

A-Design:An Approachto ConceptualDesignin a DynamicEnvironment 183

themdown into simplerproblemsin orderto makeadecision about which embodiment to add to thedesign.For example,C-agentwill start by trying tofind an embodiment that satisfies all the goalrequirementsof the input and output ports; whenthis cannot be accomplished, they try to findintermediate embodimentsby diminishing the re-quirement until a satisfactory EB is found. Withdifferentmethodsof placingtheembodimentwithin adesign,choosingembodimentsfrom a catalog,andsubgoalingon the largerdesignproblem,32 differentC-agent types exist in the electro-mechanicalA-Designsystem.As seenin Table 2, whereeachboxhas severaldifferent strategiesor preferencesfor aspecificdecision,theselectionof oneitem from eachbox produces32 distinct C-agenttypes.

The specificsexplainedherearefor the currentsetof C-agents.They are by no meansthe only way toimplementsuchconfiguration-agents,and are shownto exemplify the amountof programmedintelligencethat cansuccessfullyleadto interestingdesignstates.It is important that agentsare directed enough topreventinfeasibledesignalternatives,but it is equallyimportant that they are not so directedas to undulylimit theexplorationof thedesignspace.Theiterativenatureof A-DesignrelievesC-agentsfrom having toproduceviable alternativesat the start.The spaceofpossiblesolutionsis searchedby C-agentsproducingpossibly extravagantalternativesat first, and thenimproving the more successfulalternativesthat arecarried over in the next iteration. The interplay of

goal-directedagentsand random searchis a majorfactor in allowing the A-Design processto solvedifficult conceptualdesignproblems.

Instantiation-Agents(I-AGENTS): the I-agentshaveasimpler job than the C-agents. They take theequationsdescribing the behavior of a design anddeterminewhich actual componentsbest meet thedesign specifications.Componentselection is per-formed by referencinga catalogof real componentsthat exists for eachembodimentin the process.Forexample, in Fig. 7(b), a gear embodiment isinstantiatedby gearcomponentsthat containdataonthe radiusof the gear(rgear) which is usedin solvingthe behavioralequation(Eq. (4)), as well as dataonother relevantdetailssuchas the pitch of gearteeth,andthe costandweight of the gear.

I-agentsrely on their variouspreferencesto choosea component.For example, some I-agents mightprefercheapercomponents,while othersmight preferlightweightcomponents.This propensityfor a certainobjective,alongwith theselectionof embodimentstoinstantiate, results in a variety of I-agent types.Throughthedifferent I-agentcharacteristics,differentinstantiateddesignscan result from a single con-ceptualdesignproducedby the C-agents.Again, thestrategiesshownin Table2 arenot the only possibleimplementations;they werecreatedin this mannertoreflect the theory’s desired combination of goal-directedknowledge-basedagentstrategiesfor select-ing componentsanda stochasticsearchprocess.

Table 2. Representationof currentsetof agents

C-Agents(32 agents) I-Agents(6 agents) F-Agents(32 agents)

Domain preference Objective preference DesignpreferenceelectricalEB’s prefer inexpensivecomponents modify expensivedesignstranslationalEB’s prefer lightweight components modify inexpensivedesignsrotationalEB’s preferefficient components modify heavydesignshydraulicEB’s modify light designs

Sourcevs. sinkVariable preference

Objective preferenceconnectto sourceFP’s

selectcomponentbasedon variablesremoveexpensivecomponents

connectto sink FP’spresentin behavioralequations

removeheavycomponentsselectcomponentbasedon constraintspresentin FP

Parallel vs. serial Degreeof fragmentationconnectEB’s in parallel removecomponentfrom designconnectin series removedoubledcomponentsfrom design

removeEB from designOther EB connections removedanglingEB’s from designlink new EB to existingFP’slink new EB to new groundFP

184 M. I. Campbellet al.

5.3.2.Modification-AgentsFragment-Agents(F-AGENTS): the designsthat arebrought to the modificationstageof the processarefragmented by agents attempting to improve thecurrentdesignstates.The fragmentagentsarecrucialin driving the systemtowardsoptimal designstates.F-agentsindividually choosea designto bemodified,and remove embodimentsand/or componentsfromthe design that are believed to be reducing thedesign’s worth. Various fragmenting tactics differ-entiate F-agent types from one another. Predomi-nantly, theseagentsdiffer from eachother in theirchoiceof objectiveto address;for example,someF-agents remove costly components, while othersremoveinefficient or heavycomponents.As seeninTable2, F-agentsalsodiffer in selectingwhichdesignor designsto modify, andthe degreeof modificationthat is performed.The fragmenteddesignscreatedbytheF-agentsarereturnedto theC-agentsandI-agentsin the next iteration for reconstruction.

Future extensions will include other types ofmodification-agents,such as agents that exchangecomponents,agentsthatmergedesigns,or agentsthatattemptto createfunction sharingin designs.

5.3.3.Manager-Agents(M-AGENTS)The populations of both designs and agents aremaintained by the manageragents. M-agents areresponsible for providing feedback to the otheragents, as well as controlling basic parameterswithin the system.By examining Paretoand gooddesign populations,M-agents adjust agent popula-tionsanddesignpopulationsto accommodatechangesin userpreference.

The rangeof possibleM-agentbehaviorsis largeand intricate, and lends itself to future research,however current simplified strategiesof providingfeedback have produced promising results. Ascurrently formulated, the single M-agent typereinforcesthenumberof agentsof a givenagent-typethathavecontributedto pastParetoandgooddesigns,while de-emphasizingagent-typesthathaveproducedpoorsolutions.This reinforcementmakesthe processmore efficient in subsequentiterations by reducing

the random and unproductivesearchproducedbyineffectiveagents,andfocusesonagentstrategiesthathave proven useful on the given design problem.Future work on manager-agentsinclude agentsthatsuggest useful combinations of components viachunking (Laird et al. 1986), or more sophisticatedfeedbackmechanismssuch as grouping agentsthathaveproducedradicallydifferentalternativestogetherin hopesof combiningbeneficialideas.

6. Test Results for Electro-MechanicalDesignExample

We now turn to an exampleof A-Designdesigningacompleteelectro-mechanicalconfiguration.The elec-tro-mechanicaldesigntestproblemshownin Fig. 7(a)of fabricating weighing machine alternatives hasproducedsomeinterestingresults.The implementedelectro-mechanicalA-Design system includes thefunctional representationalsystem, the C-, I-, F-agents,oneM-agentstrategy,the equationextractor,thedesignevaluationmechanism,designsorterandageneral framework for transferring designs to thevarioussub-processes.The systemis written in LISPandrunson a Silicon GraphicsIndigo 2. To posethedesignproblem,the usersuppliesthe desiredinputsand outputs,and objectives.In this case,we havechosento optimize four objectives:minimize cost,minimize mass,minimize dial error, and minimizeinput displacement.Note that, while the first twoobjectives(minimize cost, and minimize mass)arecalculated by summing data provided within thecatalog on each of the componentsused in thedesign, the latter two (minimize dial error, andminimize input displacement)are results of thevalues of the componentsused and the behaviorpredictedby thebehavioralequations.Theproblemisthereforedescribedto the processby the functionaldescription,aswell asthemetricsfor theobjectivesinthe problem.The catalogof componentsfor this testexampleconsistsof the variousembodimentsshownin Table 3. For eachof the 32 embodimentsshown,there currently exist actual componentsdrawn from

Table 3. Currentembodimentsimplementedin the system

battery cable capacitor electricalvalvegear inductorcoil lever (class1) lever (class2)

lever(class3) motor pipe pistonpotentiometer pulley rack relay

resistor rotationalbearing rotationaldamper rotationalvalveshaft solenoid spring sprocket

stopper switch tank torsionalspringtransistor translationalbearing translationaldamper worm gear

A-Design:An Approachto ConceptualDesignin a DynamicEnvironment 185

Allied Electronics,NordexInc., andMc-MasterCarrSupply catalogstotaling just over 300 componentsavailable for constructing designs. The computerrepresentationfor eachelementin thecatalogcontains

bothembodimentsandtheactualcomponentsusedtoinstantiatethe embodiments.The catalogis expand-ableto any numberof embodimentsandcomponentsallowing theuserto introducenewcomponents.

Fig. 8. Three different alternativescreatedby the A-Design process.Design (a) is found by an equal preferencefor the four designobjectives,whereasdesigns(b) and(c) are found by placingmore importanceon minimizing input displacement.

186 M. I. Campbellet al.

Figure8 showsthreeweighingmachinescreatedbythe process over 30 iterations with a maximumpopulationof 100 designs.1 The first solution (Fig.8(a)) was createdwhen the userpreferencewas forlow-cost low-weight designs,and as a result thesolution is relatively inexpensive and lightweightcomparedto theothertwo solutions,but it containsabit too muchmovementat the input (4.1 cm). Thesedeficiencies are due to the simple configurationestablished by the C-agents, as well as thecomponents chosen by the I-agents that hademphasizedlow-costand low-weight over parameterselectionlike propergearradiusandspringstiffness.The system was then instructed to place moreemphasison minimizing movementat the input. Asa resultof this preferenceshift, designswerecreatedthat although more costly and more massive,addressedtheissueof minimizing inputdisplacement.The secondand third designs(Figs 8(b), (c)) showtwo different ways in which the systemwas able tosolve this problem. Figure 8(b) usestwo hydrauliccylinders with different diameters,while Fig. 8(c)utilizes a seriesof levers to minimize input. Theseexamplesdemonstratetherichnessof alternativesthatare createdby the A-Design algorithm in solving anon-trivial designproblem.The challengeof havingan accuratedial with little displacementat the inputforcesagentsto constantlyfind betterconfigurationsas well as the combinationsof componentsto fulfilthose configurations.Earlier results for the sameproblemcanbe found in Fig. 1, andarediscussedinCampbellet al (1998a).

7. Experimental Testing

The claim is made that A-Design is an effectivemechanism for searching design spaces and foradapting to changing market demands or userpreferences.To test theseclaims, a seriesof testswere performed to analyze various performanceaspectsof theA-Designsystemappliedto theelectro-mechanical design problem. These experiments,which consistedof running the algorithm multipletimesandgatheringstatistics,testedtheimportanceofthe Paretopopulation, the importanceof the goodpopulation,andthe adaptabilityof the process.

Oneconcernis whetherthestochasticnatureof A-Design would allow too much randomnessin theresults to preventa proper comparisonof differentruns.Thus,the first test that wasperformedinvolves

determiningwhat effect the startingpoints or initialsetof designshason the final resultsof the process.To test this, a comparisonwas madeof 20 runs allwith the same initial population to 20 runs withrandominitial populations.Eachrun consistedof 60iterationsof the A-Designprocessusinga populationof 100 designs.The use of 20 runs is intendedtoensure that no idiosyncratic or outlying runs arepresented.As shown in Fig. 9(a), thesetwo setsofrunsarecomparedby plotting thebestdesignat eachiteration for a given userpreference.The dark solidlines all contain the same initial population, andthereforeall have the samebest designat the firstiteration, while the gray dashed lines have verydifferentbestdesignsin thefirst iterations.Noticethatalthoughthereis muchfluctuationin thebeginningofthe processes,all runs convergeto a fairly uniformvalue.Figure 9(b) clarifies the resultsshownin Fig.9(a) by averagingthe runs to a single line. Here thesolid black line and the dashedgray line are verysimilar at the end of the process,demonstratingthatthe there is little difference in the data producedthrough random starting points as opposedto setstarting points. The pruning of designs and theexecution of guided agentsquickly eliminates theeffect of starting at different points in the designspace.Therefore,in the following testsit is assumedthat the useof randomstartingpointshaslittle effecton the statisticalresults.

Thetheoryis basedstronglyon thedesignselectionmethodologydescribedin Section3.2, wheredesignsare divided into Pareto,good and poor populations.To observetheeffectsof this division,we isolatedthegood and Pareto populationsin separateruns andcompared their ability to optimize the user’sobjectives.Figure10 showsthe bestdesignsat eachiterationaveragedover 20 runsfor eachcase,aswasdonein Fig. 9(b), wherethe bestdesign’sevaluationis plotted with respectto a given user preference.Note that with just the goodpopulationin operation,the best design clearly has a higher, and thereforeinferior, lumpedevaluationvaluethantherunswith aPareto population. However, when comparing thefinal design from the ‘Pareto population only’ runwith the ‘both good and Pareto’ run, only smalldifferencesarefound; both processesfind a similarlyminimal value for their best design. From thisexperiment we can draw the conclusion that thePareto population contributes significantly to theprocess’ability to find optimally directedsolutions.This is a surprisinglyusefulconclusionto drawsincewe preserved the Pareto population to modeladaptabilityof changinguserpreferences.However,this conclusion shows the importance of saving

1.Figure 8 illustrations are the authors’ renditions of theappearanceof the embodimentsand instantiationsgeneratedbythe system.

A-Design:An Approachto ConceptualDesignin a DynamicEnvironment 187

diverse solutions, even in the exploration of apredetermineddesign problem. It is believed thatpreservingdiverse design statesallows the systembetter coverage of the search space of possibledesigns.

From the experimentshownin Fig. 10, one couldquestionthe importanceof the good population infinding improved designstates.Its inclusion in the‘both Paretoand good’ run leads to slightly bettersolutions over the Pareto only run, but not asubstantialenough amount to validate the theory.There is, however, a substantiallyquicker conver-genceof thebestdesignin the‘both Paretoandgood’comparedto the ‘Paretopopulationonly’ run seeninthe earlierpart of the process.Sincethe algorithmisrun for an arbitrary numberof iterations,as decidedby the user,quickerconvergencemay producebetter

design states if the user stops the algorithmprematurely.As will be seenin the next experiment,the good population is responsiblefor this quickconvergence,aswell asplayinga role in adaptingto achangein userpreference.

The next experimentteststhe adaptivecapabilitiesof A-Designby observingthe effect of switchingtheuserpreferenceat the30th iteration(of 60 iterations).Both Paretoand good populationsare in operation,andwhentheuserpreferencechanges,a newlocationfor the goodpopulationis definedwith respectto thePareto surface as is seen in Fig. 3(c). Again, theresultsshownFig. 11 are createdthroughaveragingover 20 separateruns of the A-Design processandplotting thebestdesignfor a givenuserpreference.Inthis experiment,three separateruns are compared.Figure 11(a) graphically depicts the various runsplotted in Figs 11(b) and 11(c). These plots aredepicting how the process reacts to a switch inpreferencefrom W1, which is a preferencefavoringlow-costandlow-weightdesigns(thesamepreferenceusedto producethe weighingmachinein Fig. 8(a) toW2, which favors minimizing input displacement(Figs 8(b) and 8(c)). Figure 11(a) shows five sub-procedureswithin theexperiment;sub-procedureE isthe focusof this experimentwhile A, B, C andD arethecontrol for theexperiment.Sub-proceduresA andB are createdundera constantuserpreference,W2,while sub-proceduresC andD togetherrepresentthesystemunderconstantuserpreferenceof W1. After30 iterationsunderpreferenceW1 (C), the processisstoppedandsub-proceduresD andE areinitiatedwiththe agent and design data last achieved in sub-procedureC.

Fig. 9. Comparisonof randomvs.setinitial designpopulations(a) Bestdesignat eachiterationfor 20 runs,(b) averageof bestdesignfrom20 runs.

Fig. 10. Comparisonof bestdesignsfrom Paretoonly, goodonlyandboth.

188 M. I. Campbellet al.

To view the results, all five sub-proceduresareplotted as viewed underW1 preference(Fig. 11(b))andunderW2 preference(Fig. 11(c)). Therefore,bycomparing the best lumped evaluationunder thesepreferences,we can determine how the processrespondsto optimizing the objectives under thesepreferences.It is importantto notethat while all fivesub-proceduresare plotted in both Figs 11(b) and11(c), eachprocedureconcentrateson only one userpreference.Therefore, the plots are showing someprocedures in a different preference than thatgoverningthe creationof the designs.For example,A is createdunder user preferenceW2, despitethefact that in Fig. 11(b) the bestdesignsunderW1 areplotted.It is for this reasonthat C andD havebetter

valuesin Fig. 11(b),while A andB havebettervaluesin Fig. 11(c).

The switch in preference(C to E) occursat thethirtieth iteration, at which point the processstopsoptimizing designsfor W1 and the good populationshifts focusto userpreferenceW2. Althoughviewingsub-procedureE in Fig. 11(b) appearsto offer noimprovementafter the switch, there is a significantgainshownwhenviewedfrom theperspectiveof W2(Fig. 11(c)), as is expected,sincethe processis nowoptimizing under W2. The switchedrun, E, almostcompletelyrecoversfrom the time spentdevelopingdesignsfor W1 asseenwhencomparingE with A andB, wheretheconcentrationwasconstanton W2 for afull 60 iterations.

Fig. 11.Adaptabilityof A-Design: (a) Flowchartof adaptabilityexperiment,(b) bestdesignsviewedby W1, (c) bestdesignsviewedby W2.

A-Design:An Approachto ConceptualDesignin a DynamicEnvironment 189

Due to the Pareto-basedconservationof diversedesigns,the processwas able to accommodatetheswitchto theW2 preferenceafterspendinghalf of theiterationsconcentratingonacompletelydifferentuserpreference.While it is believed that the recessivecharacteristicsin the Paretoset allow the systemtostart at an advancedstage in the search process,insteadof starting from undevelopeddesign states,this experimenthasshownthat the good populationallowstheprocessto concentrateon what is currentlydesiredby the user.In this experiment,theuseof thegood population in conjunction with the Paretopopulation has shown to be a successfulway tohandlechanginguser preference.The good popula-tion providesfocusfor theprocessin searchingunderthe current user preference, while the Paretopopulation allows flexibility if the preferencesshouldchange.

8. Discussionand Concluding Remarks

This paperhas introduceda new designgenerationtheory known as A-Design that, through its imple-mentation,hasshownthatcomputertoolscanadapttochangeaswell asplay a part in the conceptualphaseof thedesignprocess.A-Designis anagent-basedandadaptivestrategyfor performingconceptualengineer-ing design. The methodology has four distinctsubsystems:an agentarchitecture;a multi-objectivedesignselectionscheme;a functional representationfor electro-mechanical systems; and an iterative-based algorithm for evolving optimally directeddesignstates.According to the theory,eachof thesesubsystemsplays an important role in enabling theproductionof creativeand adaptivedesigns.The A-Design theory presentedhere providesa foundationfor computer tools that can be developedto aidindustriesin meetingfast designcycles,in choosingideal componentsfrom the overwhelmingnumberofsuppliers,and in meeting the variety of consumerdemands.

Other searchstrategiesor optimization techniquesthat solve problemsthroughnumerouspermutationsoften require the existenceof a well-definedset ofvariablesprior to execution.However,definingthesevariables is often part of the conceptual designproblem at hand. Knowledge-basedtechniquescanoften overcomeproblems in ill-defined conceptualdesign,but theseapproachesoftendo not explorethevast space of conceptual designs, as is done instochasticsearchstrategies.In fact, the conceptualdesignspaceis largerthanthe somewhatconstrainedparameteroptimizationspaceaddressedby stochastic

strategies,suggestingthatamechanismfor generatingconceptualdesignexploresas many alternativesaspossibleto find successfuldesignalternatives.It is forthis reasonthattheA-Designapproachpresentedherecombinesaspectsof both stochasticoptimizationandknowledge-baseddesignstrategies.The knowledge-basedstrategy is containedwithin software agentswhich interactwithin an iterativealgorithmto searchthedesignspacein a stochasticallyguidedmannerforsolutionsthat bestmeetuserspecifications.

Initial test examples help to demonstratetheeffectivenessof the algorithm’s adaptability andsearchsuccess.The ManhattanTransfertestexamplefindssolutionsfor a specificuserpreference,andcanquickly adjust when a changein preferenceoccurs.The numericaloptimizationtest examplepits the A-Design theory againsta traditional SQP algorithm,and although the SQP method runs faster than A-Design,it often getsstuck in local optima,while A-design is able to more consistentlyfind the globaloptimum. Agent interaction and Pareto designselectionin A-Designallow solutionsto be searchedin the non-monotonicandmulti-modal spacesof thetest examples.For a conceptualdesignproblem,theA-Designsystemhasalsobeenexperimentallyshownto producesuccessfuldesigns,asdemonstratedby theweighing machine example. Furthermore, experi-mentswith this problemhavevalidatedthe theory’sseparationof designs into Pareto, good and poorsubsets as an effective way to both optimizeobjectives and retain flexibility. The ‘recessive’characteristicspreservedin the array of alternativedesignsprovideadaptivenessto changingconditions.

Theelectro-mechanicaldesignsystemis capableofnot only producingreal designs,but of producingadiversity of solutions that are representableandconfigurableby the functional representationschemeand agentarchitecture.The agentsof the A-Designsystem contain very little information specific toelectro-mechanicaldesign. Agents are based onsimple reasoningstrategiessuch as tree searchandpattern matching. To keep agents as general aspossiblefor a wide variety of designproblems,theknowledgeof how componentsinfluenceoneanotherin a design has been placed in the embodimentrepresentations.This generalityallowsfor a varietyofembodimentssuch as multi-input/multi-output com-ponents,electricalcomponents,aswell ascharacter-istically different mechanicalcomponentsfrom therotational,hydraulicandtranslationaldomains.

The power of A-Design’s generalityis due to theiterative approach to design generation. Sincefunctionality of a given device is specifiedin partby the objectives that define the design problem,

190 M. I. Campbellet al.

generatedsolutionscan be comparedon a commonmetric of how well they satisfy the designspecifica-tions.Initially, agentsdesignrelativelypoorsolutions,but as the design selection schemeisolates betteralternativesand feedbackis provided to the agents,the processimprovesdesignsto bestmeetthe user’sdefined functionality. For examplein the weighingmachineproblem,accuracyof dial is anobjectivethatpartially defines the functionality of the device.Initially, agents may create solutions that do notevencausethe output dial to rotate.As the processunfolds, solutions appear that better meet theaccuracyobjective,and feasibleweighing machinesarecreated.Futurework with the electro-mechanicalA-Design approach will accommodate dynamicanalyses to allow the user to better describe adesign problem through desired system dynamics,suchas the settling time of the dial in the weighingmachineexample.

Thepremiseof this work is thatdesigntakesplacewithin a dynamic environment.Thus far, we havefocusedon changinguserpreferencesfor the variousobjectives describinga design problem. In currentwork, A-Design’sadaptabilityis beingtestedin caseswhereobjectivesnot only changein importance,butarealsoaddedor removedfrom the designproblem.This enables the addition and deletion of designconstraintswhen modeledas penalty functions andtreated as objectives in the optimization process.Finally, our model can also readily incorporatechangingcomponentembodiments;as new technol-ogies emergeor older onesare retired, componentscan be readily addedand removedfrom the catalog.Future work will explore theseand other meansofmodeling the changing environment in which A-Designis able to createusefulandinnovativedesignconcepts.

Acknowledgements

The researcheffort was partially sponsoredby theDefense Advanced Research Projects Agency(DARPA) andRomeLaboratory,Air ForceMaterielCommand,USAF, underagreementnumberF30602-96-2-0304.The U.S. Governmentis authorizedtoreproduceand distribute reprints for Governmentalpurposesnotwithstandingany copyright annotationthereon.The views andconclusionscontainedhereinarethoseof theauthors,andshouldnot beinterpretedas necessarilyrepresentingthe official policies orendorsements,either expressed or implied, ofDARPA, RomeLaboratory,or the U.S. Government.

The authorswould also like to acknowledgethefinancial supportof the NationalScienceFoundationundergrantEID-9256665.

References

BalachandranM, Gero JS (1984) A comparisonof threenethodsfor generatingthe Paretooptimal set.EngineeringOptimization,7:319–336.

CampbellM, CaganJ, KotovskyK (1998a)A-Design:Theoryandimplementationof anAdaptive,Agent-basedmethodofconceptualdesign.In JSGero,F Sudweeks(eds),ArtificialIntelligencein Design’98, Lisbon, July 20–23,579–598.

Campbell M, Cagan J, Kotovsky K (1998b) Agent-basedsynthesis of electro-mechanicaldesign configurations.Proceedings1998 ASME Design EngineeringTechnicalConferencesand Computersin EngineeringConference:Design Theory and Methodology Conference,DETC98/DTM-5673,Atlanta, GA, September13–16

ChandrasekaranB, Goel AK, Iwasaki Y (1993), Functionalrepresentationasdesignrationale.Computer26:48–56.

D’Ambrosio JG, BirminghamWP (1995)Preference-directeddesign.AI EDAM, 9:219–230

Dong A, Agogino AM (1995) A spectral optimizationalgorithm for multi-objective prototypeselection.DE-Vol.83, Proceedings of the ASME Design EngineeringTechnicalConferences2:447–453

EschenauerH, Koski J, OsyczkaA (eds)(1990)MulticriteriaDesignOptimization.Springer-Verlag,Berlin, Germany

FonsecaCM, FlemingPJ(1995)An overviewof evolutionaryalgorithms in multiobjective optimization EvolutionaryComputation3:1–16

Forbus KD (1988) Qualitative physics: Past, present,andfuture. In: H. Shrobe(ed),Exploring Artificial Intelligence.MorganKaufmann,239–296

Fox BL (1992)Uniting probabilisticmethodsfor optimization.In JJ Swain, D Goldsman,RC Crain, JR Wilson (eds),Proceedings1992Winter SimulationConference,500–505

Franklin S, GraesserA (1997) Is it an agent, or just aprogram?:A taxonomyfor autonomousagents.ProceedingsThird InternationalWorkshop on Agent Theories,Archi-tectures,and Languages:Intelligent Agents III. Springer-Verlag, 21–35

Gage PJ, Kroo IM (1995) Representationissuesfor designtopological optimization by genetic methods. In: GFForsyth, MAI: (eds), Industrial and EngineeringApplica-tions of Artificial Intelligence and Expert Systems:ProceedingsEighth InternationalConference,Melbourne,Australia.June6–8, 383–388

Glover F (1989) Tabu Search-Part1. ORSA Journal onComputing1(3):190–206

GoldbergDE (1989)GeneticAlgorithms in Search,Optimiza-tion, andMachineLearning.Addison-Wesley,Reading,MA

Goldstein D. (1994) An agent-basedarchitecturefor con-currentengineering.ConcurrentEngineering:ResearchandApplications2:117–123.

Grecu DL, Brown DC (1996) Design agentsthat learn. AIEDAM 10:149–150

Holland JH (1992) Adaptation in Natural and ArtificialSystems.MIT Press,Cambridge,MA

Hoover SP, Rinderle JR (1989) A synthesisstrategy for

A-Design:An Approachto ConceptualDesignin a DynamicEnvironment 191

mechanicaldevices.Researchin EngineeringDesign1:87–103

Kirkpatrick S, GelattJr. CD, Vecchi MP (1983)Optimizationby simulatedannealing.Science220:671-679.

KozaJR,BennettIII FH, AndreD (1996)Automateddesignofboth the topology and sizing of analogelectrical circuitsusinggeneticprogramming.In: JSGero,F Sudweeks(eds).Artificial Intelligencein Design151–170.

LandeSE (1997) Issuesin multiagentdesignsystems.IEEEExpert12:18–26

Langton CG (ed) (1988) Artificial Life. Addison-Wesley,Reading,MA

Lawrence CT, Zhou JL, Tits AL (1993) CFSQP: C-implemented Functional Sequential Quadratic Program-ming, University of Maryland, Institute for SystemsResearch,CollegePark,MD

Mitchell M (1996) An Introduction to Genetic Algorithms.MIT Press,Cambridge,MA.

Murthy SS (1992) Synergy in CooperatingAgents: DesignManipulatorsfrom Task Specifications,PhD Dissertation,CarnegieMellon University

Navinchandra D, Sycara KP, Narasimhan S (1991) Atransformational approach to case-basedsynthesis. AIEDAM 5:31–45

Pahl G, Beitz W (1988) EngineeringDesign– A SystematicApproach.Springer-Verlag,New York

Paynter HM (1961) Analysis and Design of EngineeringSystems.MIT Press,Cambridge,MA

Petrie CP, WebsterTA, Cutkosky MP (1995) Using Paretooptimality to coordinate distributed agents. AI EDAM9:269–281

Quadrel R, Woodbury R, Fenves S, Talukdar S (1993)Controlling asynchronousteam designenvironmentswithsimulated annealing. Research in Engineering Design5(2):88–104

Queipo N, DevarakondaR, Humphrey JAC (1994) Geneticalgorithmsfor thermosciencesresearch:applicationto theoptimized cooling of electroniccomponents.InternationalJournalHeatandMassTransfer37:893–908

RussellS, Norvig P (1995) Artificial Intelligence:A ModernApproach.Prentice-Hall,EnglewoodCliffs, NJ

SchafferJD(1985)Multiple objectiveoptimizationwith vectorevaluated genetic algorithms. In: JJ Grefensette (ed),Genetic Algorithms and their Applications: ProceedingsFirst International Conference on Genetic Algorithms,LawrenceErlbaum,93–100

Schmidt LC, Cagan J (1995) Recursive annealing: acomputational model for machine design. ResearchinEngineeringDesign7:102–125

StahovichTF, Davis R, ShrobeH (1998)Generatingmultiplenew designsfrom a sketch.Artificial Intelligence104:211–264

TalukdarS (1993) Asynchronousteams.Fourth InternationalSymposium on Expert Systems Applications to PowerSystems,La TrobeUniversity, Australia,January4–8

Talukdar S, BaerentzenL, Gove A, de Souza P (1996)Asynchronousteams:organizationsfor algorithmiccompu-tation. EDRC Tech-Report 18-56-96, EDRC CarnegieMellon University, Pittsburgh,PA

ThurstonDL (1991) A formal methodfor subjectivedesignevaluationswith multiple attributes.Researchin Engineer-ing Design3:105–122

Ulrich K, SeeringW (1989) Synthesisof schematicdescrip-tionsin mechanicaldesign.Researchin EngineeringDesign1:3–18

WelchRV, Dixon J (1994)Guidingconceptualdesignthroughbehavioral reasoning. Research in Engineering Design6:169–188

192 M. I. Campbellet al.