agent co-ordination aided distributed computational engineering design

11
Agent co-ordination aided distributed computational engineering design Graham Coates School of Engineering, Durham University, Durham, United Kingdom Abstract Co-ordination is a key research area in engineering design and distributed artificial intelligence, as well as a number of other disci- plines. This paper highlights the need for co-ordination within distributed computational design environments. The key characteristics of co-ordination identified are coherence, communication, task management, resource management, schedule management, and real- time support. These key characteristics are integrated within a methodology, which is realised in a multi-agent system aimed at co-ordi- nating distributed computational design. Co-ordination in real-time is responsive and adaptive to changes in the distributed environment, such that the computational design analysis can be performed in an efficient manner. The agent-based co-ordination system has been applied to two case studies. Firstly, to a theoretical research-based case study related to an aspect of structural analysis involved in conceptual aircraft wing design. Secondly, the system is applied to a practical industrial-based case study involving turbine blade design. In both case studies the multi-agent system enables the respective computational design analysis to be conducted in a coherent and organised fashion making more efficient use of time and resources. Ó 2006 Elsevier Ltd. All rights reserved. Keywords: Co-ordination; Agents; Distributed design 1. Introduction Throughout the design process, many engineering com- panies use computational simulation tools to assist their engineers in analysing, evaluating and developing products. In the context of this paper, a simulation tool is defined as an individual software module that performs an engineer- ing design related calculation. In some instances, these sim- ulation tools may have been produced in-house over a period of time and, as such, may be incompatible in an integrated, operational sense. Consequently, engineers may often be required to manually link together the input and output of such simulation tools, which can be error- prone and time-consuming. The concept of constructing an integrated framework in which a system of new and/or legacy simulation tools can be made to inter-work is not new. Indeed, agent-based sys- tems have been recognised as an enabling technology to facilitate such inter-working (Wooldridge & Jennings, 1999). However, the notion of permeating such a system of simulation tools with appropriate mechanisms enabling distributed computational design to be performed in a co- ordinated fashion is acknowledged as an area requiring fur- ther dedicated research. This paper focuses on this area of research and, as such, presents an overview of a methodol- ogy, and its realisation in a multi-agent system, which employs mechanisms to enable a computational design analysis to be co-ordinated. The mechanisms implemented within the design co-ordination system (DCS) are founded on key characteristics of co-ordination stemming from research in a number of relevant disciplines (Coates, 2001). Further, the DCS has been applied to case studies resulting in the efficient performance of the respective com- putational design analysis. In order to present the research, this paper is organised as follows. Section 2 briefly discusses work related to 0957-4174/$ - see front matter Ó 2006 Elsevier Ltd. All rights reserved. doi:10.1016/j.eswa.2006.01.016 E-mail address: [email protected] www.elsevier.com/locate/eswa Expert Systems with Applications 31 (2006) 776–786 Expert Systems with Applications

Upload: graham-coates

Post on 15-Jul-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Agent co-ordination aided distributed computational engineering design

www.elsevier.com/locate/eswa

Expert Systems with Applications 31 (2006) 776–786

Expert Systemswith Applications

Agent co-ordination aided distributed computationalengineering design

Graham Coates

School of Engineering, Durham University, Durham, United Kingdom

Abstract

Co-ordination is a key research area in engineering design and distributed artificial intelligence, as well as a number of other disci-plines. This paper highlights the need for co-ordination within distributed computational design environments. The key characteristicsof co-ordination identified are coherence, communication, task management, resource management, schedule management, and real-time support. These key characteristics are integrated within a methodology, which is realised in a multi-agent system aimed at co-ordi-nating distributed computational design. Co-ordination in real-time is responsive and adaptive to changes in the distributedenvironment, such that the computational design analysis can be performed in an efficient manner. The agent-based co-ordination systemhas been applied to two case studies. Firstly, to a theoretical research-based case study related to an aspect of structural analysis involvedin conceptual aircraft wing design. Secondly, the system is applied to a practical industrial-based case study involving turbine bladedesign. In both case studies the multi-agent system enables the respective computational design analysis to be conducted in a coherentand organised fashion making more efficient use of time and resources.� 2006 Elsevier Ltd. All rights reserved.

Keywords: Co-ordination; Agents; Distributed design

1. Introduction

Throughout the design process, many engineering com-panies use computational simulation tools to assist theirengineers in analysing, evaluating and developing products.In the context of this paper, a simulation tool is defined asan individual software module that performs an engineer-ing design related calculation. In some instances, these sim-ulation tools may have been produced in-house over aperiod of time and, as such, may be incompatible in anintegrated, operational sense. Consequently, engineersmay often be required to manually link together the inputand output of such simulation tools, which can be error-prone and time-consuming.

The concept of constructing an integrated framework inwhich a system of new and/or legacy simulation tools canbe made to inter-work is not new. Indeed, agent-based sys-

0957-4174/$ - see front matter � 2006 Elsevier Ltd. All rights reserved.

doi:10.1016/j.eswa.2006.01.016

E-mail address: [email protected]

tems have been recognised as an enabling technology tofacilitate such inter-working (Wooldridge & Jennings,1999). However, the notion of permeating such a systemof simulation tools with appropriate mechanisms enablingdistributed computational design to be performed in a co-ordinated fashion is acknowledged as an area requiring fur-ther dedicated research. This paper focuses on this area ofresearch and, as such, presents an overview of a methodol-ogy, and its realisation in a multi-agent system, whichemploys mechanisms to enable a computational designanalysis to be co-ordinated. The mechanisms implementedwithin the design co-ordination system (DCS) are foundedon key characteristics of co-ordination stemming fromresearch in a number of relevant disciplines (Coates,2001). Further, the DCS has been applied to case studiesresulting in the efficient performance of the respective com-putational design analysis.

In order to present the research, this paper is organisedas follows. Section 2 briefly discusses work related to

Page 2: Agent co-ordination aided distributed computational engineering design

G. Coates / Expert Systems with Applications 31 (2006) 776–786 777

co-ordination, with an emphasis on agents. Further, anoverview is given of the key characteristics of co-ordina-tion. A methodology integrating these characteristics ispresented in Section 3. Section 4 outlines a realisation ofthe methodology in a multi-agent system. Also, the func-tionality of the system is briefly discussed in terms of theintegrated management of tasks, resources and schedules.Two applications of the multi-agent system, and the corre-sponding results, are summarised in Section 5. More specif-ically, a theoretical research-based case study associatedwith an aspect of the structural analysis for conceptual air-craft wing design, and a practical industrial-based casestudy relating to turbine blade design. Section 6 discussesthe multi-agent system in relation to the applications.Finally, Section 7 concludes the research presented.

2. Co-ordination

Co-ordination is widely recognised as being a significantchallenge in engineering design (Andreasen, Duffy, Mac-Callum, Bowen, & Storm, 1996; Chao, Norman, Anane,& James, 2002; Crabtree, Fox, & Baid, 1997; Madhusudan,2005; Merlo & Girard, 2004; Wilson & Shi, 1996) and dis-tributed artificial intelligence, more specifically multi-agentsystems (Cox & Durfee, 2005; Heck, 1999; Jennings, 1999;Lesser, 1999). Also, within organisational theory, co-ordi-nation has long been viewed as a highly relevant issue(Fayol, 1949; Malone & Crowston, 1994; Van de Ven, Del-becq, & Koenig, 1976).

2.1. Agents and co-ordination

Although there are well developed tools to enableindividual engineering activities, support for autonomousco-ordination of distributed design tasks is minimal(Madhusudan, 2005). Further, it is highlighted that co-ordination of modern design processes is still performedin an ad hoc, sub-optimal and inefficient manner. Conse-quently, management of distributed design requires newapproaches in areas such as co-ordination.

Agent co-ordination is cited as a key feature of a multi-agent system (Park & Sugumaran, 2005). Also, co-ordi-nation is viewed as playing a fundamental role in theapplication of multi-agent systems since it allows agentsto interact with one another in a productive way (Cabri,Ferrari, & Leonardi, 2004). Indeed, co-ordination is widelyacknowledged as a central issue in expert systems involvinginteracting agents in dynamic, distributed environments.Several authors view the performance of distributed organ-isational structures as depending on the ability of theagents to co-ordinate their activities (Anussornnitisarn,Nof, & Etzion, 2005; Araujo Macedo & Assis Silva,2005; Lo Nigro, Noto La Diega, Perrone, & Renna,2003). Similarly, it is recognised that there is a need forintelligent agents inhabiting a shared environment to co-ordinate their activities, and that to be effective any agentco-ordination strategy should address the problems of task

allocation and resource negotiation (Jiang & Jiang, 2005).On a related theme, Kwon and Lee state that within intel-ligent agent-based support systems, the central concern isco-ordination of conflicts (Kwon & Lee, 2002). Further,co-ordination is defined as the support for the activity ofmanaging dependencies and possible conflicts betweenagents involved in common and inter-related tasks of a col-laborative activity. Nwana et al. define co-ordination as aprocess in which agents engage in order to ensure a com-munity of individual agents acts in a coherent manner toprevent chaos, distribute expertise-resources-information,manage dependencies between agents’ actions, and effi-ciency (Nwana, Lee, & Jennings, 1996).

In the context of agent technology and applications,flexibility is cited as the characteristic distinguishing anagent from any piece of software (Madhusudan, 2005).Further, flexibility is said to be linked to an agent beingresponsive, pro-active and social. In agreement, Chaoet al. view agents that are pro-active, reactive and autono-mous as providing a flexible and dynamic approach todistributed multi-disciplinary design, which can improveco-ordination (Chao et al., 2002).

The use of multi-agent systems to solve complex prob-lems in distributed software environments is growing.The concept of a multi-agent system offers a solution con-sisting of a set of non-centralised, mutually co-operatingautonomous agents (Hadeli, Valckenaers, Kollingbaum,& Van Brussel, 2004). Multi-agent systems are reportedas offering a new dimension for co-ordination in an enter-prise resulting in a more systematic and organised opera-tion (Kwon & Lee, 2002). As an example, Huang et al.present an agent-based framework for the co-ordinationof collaborative product development on the internet(Huang, Huang, & Mak, 2000). As indicated, multi-agentsystems are viewed as an enabling technology that can beused to solve complex distributed problems, but such tech-nology has to be associated with a mechanism allowingagents to co-ordinate with each other to reach a commongoal (Lo Nigro et al., 2003). For example, a multi-agentsystem has been used as the enabling technology to solvethe distributed resource allocation problem in a collabora-tive environment (Anussornnitisarn et al., 2005). However,it is recognised that as agents with increasingly complexplans are deployed in dynamic shared environments toundertake a variety of tasks, the problem of co-ordinatingthem and their conflicting plans assumes greater signifi-cance (Cox, Clement, Pappachan, & Durfee, 2001). Indeed,the multi-agent plan co-ordination problem is described asarising whenever multiple agents plan to achieve their indi-vidual goals independently, but may mutually benefit byco-ordinating any conflicting interactions between theirplans in order to avoid working at cross-purposes or dupli-cating effort (Cox & Durfee, 2005).

Within multi-agent system environments, the issue ofcentralised or distributed control is widely reported (Jiang& Jiang, 2005; Lo Nigro et al., 2003). A centralisedapproach involves a single agent having all of the necessary

Page 3: Agent co-ordination aided distributed computational engineering design

778 G. Coates / Expert Systems with Applications 31 (2006) 776–786

information to make planning decisions for the entire agentcommunity. It is acknowledged that centralised approachesare theoretically better at pursuing global system perfor-mance, however they suffer drawbacks such as reliabilityand reactiveness (Lo Nigro et al., 2003), and are ineffectivein highly dynamic systems (Anussornnitisarn et al., 2005).For example, a centralised managing agent may become aperformance bottleneck due to task allocation demandsand the volume of information it must hold and process.Park and Sugumaran echo this issue of a co-ordinator agent

or facilitator agent being a potential performance bottle-neck (Park & Sugumaran, 2005). Despite this drawback,architectures using centralised control to co-ordinateagents are still employed (Paderewski-Rodriguez, Rodri-guez-Fortiz, & Parets-Llorca, 2003). A decentralisedapproach involves each agent in the environment havingthe necessary information to make autonomous decisions,while a common goal is reached through co-operationamong the community (Lo Nigro et al., 2003). However,environments with no central authority are viewed as beingcomplex to manage and, as such, require an appropriateapproach to ensure effectiveness and efficiency. Co-ordi-nated multi-agent systems are viewed as a suitable meansof delivering such an approach.

2.2. Co-ordination based systems

Several co-ordination based systems are aimed at incre-mentally revising and developing project plans and sched-ules by supporting the co-ordinated interleaving ofmanagement activities such as planning, scheduling andenactment (Bendeck, Goldmann, Holz, & Kotting, 1998;Dellen & Maurer, 1996; Goldmann, 1996; Kwon, Chung,& Pentland, 2002). The need to co-ordinate and interleavethese management activities arises due to the occurrenceof changes or decisions being made as more informationbecomes available. For example, CoMo-Kit supports pro-ject planning and co-ordination for complex, distributeddesign processes by alternating planning and enactment(Dellen & Maurer, 1996). Procura is a project managementmodel enabling planning and scheduling agent-based designprojects to occur concurrently (Goldmann, 1996). Also,manufacturing integration and design automation system(MIDAS) is a distributed environment infrastructure forthe planning and execution of design and manufacturingprocesses (Kwon et al., 2002). In this system, a controlmechanism and common communication layer enableinformation to be shared in a distributed environment suchthat design and manufacturing tasks can be undertaken col-laboratively. A multi-agent based co-ordination engine(MACE) is proposed as a central co-ordination mechanismaimed at controlling disputing multi-agents behaviour andmanaging conflicts in an enterprise (Kwon & Lee, 2002).Co-ordination is viewed as supporting the activity of man-aging dependencies and possible conflicts between collabo-rative agents involved in common and inter-related tasks ofa collaborative activity.

A number of systems are designed to co-ordinate andmanage tasks of human and/or computational agents (Cle-etus, Cascaval, & Matsuzaki, 1996; Decker & Lesser, 1995;Koulinitch & Sheremetov, 1998; Madhusudan, 2005). Forexample, a support tool for distributed, co-operative workconsists of computational agents assisting people in co-ordinating their activities by managing their agenda(Decker & Lesser, 1995). Agents situated at each user’sworkstation manage computational agents such that adistributed process can be co-ordinated resulting in thecollaborative production of agendas. Similarly, ProjectAssessment and Co-ordination for Teams (PACT) is amulti-user system aimed at managing projects and co-ordi-nating people (Cleetus et al., 1996). PACT’s communica-tion interface provides the mechanism to co-ordinateteam members who are able to notify and query othersregarding tasks such that each is constantly aware of thestatus of each others work. The concurrent configurationdesign advisor (CCDA) is a multi-agent expert system inwhich Design Agents are associated with tasks, and aresupported by Assistant Agents (Koulinitch & Sheremetov,1998). In addition, a Facilitator Agent is responsible forlocal co-ordination between Design Agents and globalco-ordination between other Facilitator Agents. Globalco-ordination involves Facilitator Agents sharing commonknowledge and mediating agent interactions. Collectively,the agents solve a decision-making problem, which isdivided into fragments or parts of a technical system.Mudhusudan presents an agent-based process co-ordina-tion (APC) framework to support distributed dynamicdesign process management (Madhusudan, 2005). Thiscentralised planning, distributed execution architecture isbased on the task sharing approach to distributed problemsolving. Further, APC is underpinned by an approach withthe co-ordination of the design process involving interleav-ing both manual design activities and automated designtools. The design process plan is executed by a centralisedco-ordination agent with the assistance of various serviceagents specialising is supporting specific tasks by enablingthe automation of the activities of specialised design roles.Service agents can only communicate with the central co-ordination agent, which includes a task planning module,a task agenda management module, and a task dispatchingand execution monitoring module.

2.3. Key characteristics of co-ordination

Co-ordination has been observed as an important andpervasive characteristic in many research areas, and insome cases is acknowledged as the basis for successfulimplementation. However, despite being widely cited asan important characteristic, the interpretations and under-standing of co-ordination varies considerably. As such, itis apparent that co-ordination lacks a unified understand-ing. However, recent dedicated research has aimed toaccount for the numerous varying perceptions from severaldisciplines, and resulted in the identification of six key

Page 4: Agent co-ordination aided distributed computational engineering design

Co-ordination

Resource Management

Schedule Management

Real-time Support

Coherence

Task Management

Communication

Fig. 1. Key characteristics of co-ordination.

Monitoring

Tasks

Monitoring & Forecasting

Informationmanagement

Schedules

Dependencymanagement

Directing & Undertaking

Dynamic scheduling

Tasks / Resources

Planning

Resources

Fig. 2. Overview of co-ordination methodology.

G. Coates / Expert Systems with Applications 31 (2006) 776–786 779

characteristics (Coates, Duffy, Whitfield, & Hills, 2004) asindicated in Fig. 1.

The key characteristics are defined as follows:

• Coherence involves the harmonious integration ofresource effort and tasks within a distributedenvironment.

• Communication relates to interaction involving the struc-tured exchange of meaningful information.

• Task management entails the organisation and controlof tasks, and the dependencies between them, such thatthey can be undertaken in a structured manner.

• Resource management involves monitoring and control-ling resources to enable their continuous optimisedutilisation.

• Schedule management includes managing the planningand dynamic assignment of tasks to resources, and theenactment of the ensuing schedules.

• Real-time support relates to the management of the pre-vious five key characteristics in a dynamic setting.

These characteristics have been used in the developmentof a methodology, which coupled with agent technology,has enabled the realisation of a multi-agent system to facil-itate co-ordination aided distributed computational design.

3. Co-ordination methodology

The key characteristics of co-ordination have been inte-grated within a methodology, which has been realised in amulti-agent system. The methodology exercises co-ordina-tion in real-time such that distributed design can continu-ously be conducted in a coherent and organised mannerby adapting to the occurrence of events as and when theyarise. More specifically, co-ordination enables inter-relatedtasks to be undertaken whilst utilising resources, of varyingperformance capability, in an optimised fashion accordingto dynamically generated schedules within a distributeddesign environment. Furthermore, co-ordination in real-time facilitates the efficient performance of the design anal-ysis to be sustained. The term real-time refers to the featureof appropriate adjustments being made to resume efficient

performance when an event occurs causing the perfor-mance of the design analysis to be degraded. This involvesresource utilisation being adjusted and tasks being re-allo-cated appropriately. Co-ordination in real-time alsoensures that adjustments only occur if appropriate and, ifso, periods of resource adjustment and task re-allocationare utilised effectively.

An overview of the integrated methodology to facilitatethe co-ordination of distributed design is shown in Fig. 2.Initially, the tasks to be undertaken are defined. Planningenables the outstanding tasks and available resources tobe considered for scheduling. As a result of scheduling, aschedule is generated forming the basis for the directionand undertaking of tasks. Prior to a task being undertaken,dependency relationships must be checked to ensure allpreceding related tasks have been completed. In addition,any necessary information must be managed such that itis made available to allow the task to be completed. Mon-itoring facilitates the detection of deviations between theactual and expected performance of a resource. If a devia-tion in resource performance significantly degrades the per-formance of the design analysis, forecasts are made ofresource performance capability. Consequently, but onlyif appropriate, planning and scheduling are repeated inorder to produce a more suitable schedule.

Page 5: Agent co-ordination aided distributed computational engineering design

780 G. Coates / Expert Systems with Applications 31 (2006) 776–786

In periods of transition between successive schedules,tasks continue to be completed and resources utilised inan efficient manner. Monitoring is conducted throughoutthe design analysis such that at any time, and if appropri-ate, the operational course of action can be adapted withrespect to the prevailing circumstances.

4. Design co-ordination system

The methodology outlined in Section 3 has been realisedwithin the DCS, which is a multi-agent system aimed at thereal-time, decentralised co-ordination of a distributed com-putational design analysis. Within the DCS, the group ofdistributed agents act as members of a multi-functionalteam operating coherently. As such, inter-related tasks,i.e. executions of simulation tools, can be undertaken in astructured manner with respect to time and the utilisationof the resources, i.e. workstations, within the distributedcomputational design environment. This involves agentstaking the opportunity to perform executions of simulationtools concurrently when and where appropriate. However,the emphasis is placed on co-ordination in that agentactions are carried out appropriately with respect to thetime and order in which they are performed.

Fig. 3 shows an overview of the architecture of themulti-agent system. The double headed arrows indicatethe bi-directional communication between the varioustypes of agent.

Each of the six types of agent fulfils a particular role andis capable of performing a number of activities. In addi-tion, all agents are co-operative in that they assist eachother to satisfy the overall objective of completing a com-putational design analysis in the least time possible. Anoutline is now given of the main responsibilities of eachtype of agent operating within the DCS.

4.1. Task management

The co-ordination mechanisms associated with taskmanagement are implemented by agents known as Infor-mation Managers, Task Managers and Activity Directors.

The prime responsibility of an Information Manager isthe pre and post management of input/output data con-cerned with simulation tool executions. As such, an Infor-mation Manager provides input data for use by Task

ActivityDirectors Scheduler

TaskManagers

ResourceManager

Information Managers

ResourceMonitors

ComputationalDesign

Environment

Fig. 3. Overview of multi-agent system’s architecture.

Managers, whose principal duty is to execute their associ-ated simulation tool. Once a simulation tool has been exe-cuted, an Information Manager organises the output dataproduced such that, if necessary, it can be used in any sub-sequent simulation tool execution.

The main responsibility of the Activity Directors is tomanage the enactment of its designated part of the currentschedule. That is, ensure that the Task Managers executethe right simulation tool with the right input data in the rightorder at the right time utilising the right workstation. Thisalso involves carrying out dependency checks to make surethat any preceding related simulation tool executions havebeen completed before that under consideration can com-mence. Managing task dependencies ensures the preserva-tion of the natural execution order of the simulation tools.

4.2. Resource management

The principal role of the Resource Manager is to main-tain accurate information within the resource model relatedto the remote workstations employed by the DCS in thedistributed computational design environment. In particu-lar, the resource model consists of an up-to-date perfor-mance capability for each of the remote workstations.The upkeep of the resource model provides the basis forthe optimised scheduling and utilisation of these worksta-tions throughout the computational design analysis.

Resource Monitors are responsible for sensing, forecast-ing and disseminating the performance capability of theirassociated remote workstation. That is, a Resource Moni-tor ensures that throughout a computational design analy-sis the performance capability of its associated workstationis observed such that, if any significant change occurs, aforecast is made and reported to the Resource Manager.Consequently, if appropriate, action may be taken toresume the optimised utilisation of remote workstationsvia re-scheduling, which is performed by the Scheduler.

4.3. Schedule management

The primary responsibility of the Scheduler is to sche-dule the outstanding simulation tool executions utilisingthe workstations within the distributed computationaldesign environment, such that dependencies are preserved,and the overall time to complete their enactment is mini-mised. Scheduling is performed using a genetic algorithm.

The Scheduler has a number of additional responsibili-ties including maintaining the task model, which holdsinformation pertaining to the specific executions of the sim-ulation tools. Also, the Scheduler’s duties include manag-ing dependencies between simulation tool executions, anddecision-making regarding re-scheduling. In addition togenerating a new schedule when appropriate, a conse-quence of taking the decision to re-schedule is the creationof an interim schedule, which can be enacted during re-scheduling so as to maintain the efficient utilisation of theremote workstations during this period.

Page 6: Agent co-ordination aided distributed computational engineering design

Stringers

SkinSpars

Fig. 5. Cross-section of a conceptual aircraft wing design.

G. Coates / Expert Systems with Applications 31 (2006) 776–786 781

5. Applications and results

The DCS has been applied to two case studies in orderto evaluate the multi-agent system and its underpinningmethodology. Firstly, the DCS has been applied to a theo-retical research-based case study involving an aspect of thestructural analysis in conceptual aircraft wing design. Apresentation of this application is given in terms of howthe agents operate within the system and how they contrib-ute to co-ordinating the computational design analysis in adistributed environment. The results obtained from thestructural analysis are not presented. Secondly, a summaryis given of an application of the DCS to a practical indus-trial-based case study involving turbine blade design. Dueto company confidentiality, the summary is brief and thenature of the simulation tools is not divulged.

5.1. Theoretical research-based case study

An application of the DCS has been facilitated using atheoretical research-based case study involving simulationtools developed to perform an aspect of structural analysisfor conceptual aircraft wing design. In particular, an aspectof structural analysis at concept design level using well-established techniques to perform a bending analysis andshear flow analyses for varying two-dimensional winggeometry configurations and loading cases.

Fig. 4 shows an overview of the analysis for this casestudy, which results in direct stresses and shear stressesbeing calculated for a given two-dimensional wing geome-try and a specified loading.

For illustrative purposes, Fig. 5 shows an example cross-section of a conceptual aircraft wing design, which com-prises spars, stringers and skin.

Loading Cases

Bending Shear Torsion

Direct stresses

Wing Geometry

Shear Flow Analysis

Shear Flow Analysis

Bending Analysis

Shear stresses

Fig. 4. An aspect of a computational structural analysis for conceptualaircraft wing design.

Fig. 6 represents a structural idealisation of this cross-section, which preserves the geometry and cross-sectionalarea of the wing.

Structural idealisations at various locations along thespan of the wing provide the input for the wing geometry.Subsequently, considering the wing geometry at each span-wise location with each loading case, a bending analysisand shear flow analyses are performed. The direct stressesobtained from the bending analysis and shear stresses cal-culated in the shear flow analyses are used to determinestress profiles in the span-wise direction for each structuralidealisation. The stress profiles can then be assessed todetermine if the wing geometry is acceptable according tospecified structural strength criteria. These profiles alsoallow the identification of locations that experience thegreatest level of stress.

For the theoretical research-based case study, the analy-sis to be performed involved three conceptual wing designs,each having three structurally idealised cross-sections, i.e.located at the root, mid span and tip of the wing. Also, fourloading cases, each of which involved performing threeanalyses, were to be applied to each conceptual wingdesign. Consequently, the computational design analysisentailed one hundred and eight simulation tool executions,i.e. number of conceptual wing designs · number of struc-tural idealisations · number of loading cases · number ofanalyses. As a benchmark for this case study, utilisingone workstation, a single enactment of the computationaldesign analysis, which involved nine simulation tool execu-tions, was completed in approximately 55 s. Thus, by linearextrapolation, if the entire case study were performedsequentially using a single workstation, the estimated com-pletion time of the computational design analysis would beapproximately 11 min.

Skin Stringers

Spar caps

Spar webs

Fig. 6. Structural idealisation of a conceptual aircraft wing design.

Page 7: Agent co-ordination aided distributed computational engineering design

782 G. Coates / Expert Systems with Applications 31 (2006) 776–786

An overview of the DCS agents’ co-ordination activitiesduring the application to the theoretical research-basedcase study is now described. On invoking the system on alocal workstation, the Scheduler uses a genetic algorithmto generate a schedule, which is distributed amongst theActivity Directors to facilitate decentralised control oneach remote workstation. The schedule is optimised interms of performance capability of each remote worksta-tion available to be utilised, and the relationships betweenthe simulation tool executions to be undertaken. From theschedule generated, the estimated time to complete thecomputational design analysis was approximated at5 min. This original schedule was constructed based onone hundred and eight simulation tool executions to beperformed utilising three workstations having performancecapabilities, expressed as a percentage, of 89%, 84% and97%, respectively.

Simultaneous to the generation of the original schedule,each Resource Monitor began monitoring, at 5 s intervals,the various constituents of central processing unit (CPU)usage of their associated remote workstation. As such, eachResource Monitor could observe any significant deviationin their workstation’s performance capability, which maylead to a delay in the completion of the computationaldesign analysis. Based on the observations, each ResourceMonitor determined the performance capability, RPC, of itsassociated workstation at each time interval using the fol-lowing expression:

RPC ¼ RCF � Ridle þ RDCS þRexternal

nð1þ RsystemÞ

� �;

where for each workstation:

• RCF is a coefficient based on relative processor speedmaking forecasts of performance capability for allremote workstations directly comparable, which is nec-essary for re-scheduling.

• Ridle and Rsystem are idle and system processes,respectively.

• RDCS is the component of user processes associated withthe DCS operation comprising agent activities and sim-ulation tool executions.

• Rexternal is the component of user processes associatedwith non-DCS operation, i.e. other user processes.

• n is the number of processes being executed on theworkstation.

In the expression stated, the parameters Ridle, Rsystem,RDCS and Rexternal are all expressed as a percentage propor-tion of the current utilisation of the associated remoteworkstation. Further, the expression caters for the replace-ment of a DCS user process as well as the addition of otherprocesses. Also, it further divides the utilisation attributedto users into those associated with the operation of theDCS and those not. Assumptions regarding this relation-ship are that the replacement process will be entitled to

all of the existing DCS and idle utilisation availability,and a fair share of other user utilisation availability.

With regard to the computational design analysis, after2 min of enacting the original schedule, forty one of theone hundred and eight simulation tool executions hadbeen completed through the co-ordinated effort of Activ-ity Directors, Information Managers and Task Managers.In addition, significantly, the performance capability ofone of the remote workstations fell below the 50% thresh-old. Consequently, this change in performance capabilitycaused the associated Resource Monitor to forecast itsassociated workstation’s future performance capabilityand disseminate this information to the Resource Man-ager. More specifically, the Resource Monitor used statis-tical regression analysis, via a dynamically generatedorthogonal polynomial, to forecast performance capabilityto be 46%. As instructed by the Resource Manager, theResource Monitors associated with the two remainingremote workstations also prepared forecasts of perfor-mance capability, which had marginally altered fromthose originally predicted at the outset of the computa-tional design analysis. Once all Resource Monitorsreported their forecasts to the Resource Manager, theresource model was updated. Fig. 7 presents an overviewof the resource monitoring and management within theDCS.

With an up-to-date resource model, the Resource Man-ager informed the Scheduler of the possibility of a newschedule being required. Based on empirically derivedinformation regarding the performance of the genetic algo-rithm for given characteristics of the outstanding simula-tion tool executions and the remote workstations, theScheduler made a decision to re-schedule. This decisionwas taken since the estimated time to enact the existingschedule was greater than the sum of the estimated timesto re-schedule and enact the new schedule.

For illustrative purposes, Fig. 8 indicates the three timeestimations calculated and considered by the Schedulerwhen deciding whether or not to re-schedule.

Specifically, the Scheduler determined that the estimatedtime to complete the existing schedule was 6 min 45 s, i.e.4 min 45 s from the point of considering re-scheduling since2 min had already elapsed. This extension of 1 min 45 s onthe initial estimate of 5 min was attributable to the signifi-cant reduction in performance capability of one of theremote workstations. The estimated times to re-scheduleand then enact the new schedule were approximated at25 s and 3 min 40 s, respectively. Hence, the Schedulerdecided to re-schedule since this action would lead to thecomputational design analysis being completed in an esti-mated 4 min 5 s from the point of re-scheduling rather than4 min 45 s if no remedial action was taken. This reductionof approximately 40 s, i.e. approximately 13% of the initialestimated duration to undertake the analysis, was based onthe assumption that the computational design analysiswould be uninterrupted to completion in accordance withthe new schedule.

Page 8: Agent co-ordination aided distributed computational engineering design

Fig. 7. Overview of resource monitoring and management.

Existingschedule

Newschedule

Time to enact existing schedule

Time to enactnew schedule

Time tore-schedule

Fig. 8. Real-time decision-making for re-scheduling.

G. Coates / Expert Systems with Applications 31 (2006) 776–786 783

An important outcome of the decision-making processregarding re-scheduling was the creation of an interimschedule, which when enacted ensured the continued util-isation of the remote workstations during the estimated25 s re-scheduling period. Specifically, eight outstandingsimulation tool executions were performed during re-scheduling.

As at the outset of the computational design analysis,the Scheduler invoked a genetic algorithm in order to gen-erate a new schedule. This revised schedule enabled the util-isation of the remote workstations to be optimised withrespect to the outstanding fifty nine simulation tool execu-tions. The schedule was distributed to and implemented bythe Activity Directors, which orchestrated Task Managerssuch that their newly designated simulation tool executionscould be performed in a structured manner. Prior to exe-cuting the relevant simulation tools, in consultation with

the Scheduler, Activity Directors conducted dependencychecks to ensure that all preceding related simulation toolexecutions had been completed. Once all of the dependencychecks were completed, Task Managers requested theappropriate input data from their related InformationManagers. As Task Managers completed their simulationtool executions, they informed their related InformationManagers, which stored the resulting output data for usein any subsequent execution. Also, the Activity Directorsinformed the Scheduler as simulation tool executions werecompleted. This allowed the Scheduler to up-date the taskmodel in order to keep a record of the status of simulationtool executions.

Towards the end of the computational design analysis,the performance capability of the remote workstation,which had earlier experienced a significant reduction,increased to a level of approximately 90%. As describedpreviously, Resource Monitors forecasted performancecapability and disseminated this information to theResource Manager, which up-dated the resource modeland informed the Scheduler. Due to being in the latterstage of the computational design analysis, the Schedulerdecided to adhere to the current schedule through to com-pletion since the estimated time to do so was less than thesum of the estimated times to re-schedule and enact thenew schedule.

This application of the DCS resulted in three structuralidealisations for each of the three conceptual wing designs,with four loading cases each comprising three analyses,being analysed in approximately 6 min 10 s, which is lessthan that linearly extrapolated from the benchmark, i.e.11 min. However, the DCS employed three remote work-stations as opposed to one. The time reduction in the com-putational design analysis is not only attributable to the

Page 9: Agent co-ordination aided distributed computational engineering design

784 G. Coates / Expert Systems with Applications 31 (2006) 776–786

greater number of workstations utilised, but also the co-ordination activities of the agents operating within theDCS. That is, the agents and the co-ordination mecha-nisms facilitated the simulation tools being executed in astructured manner while workstations were continuouslyutilised in an optimised fashion within a dynamic, distrib-uted computational design environment. Indeed, enablingthe distributed computational design analysis to maintainbeing performed in an efficient manner, through respon-siveness and adaptability to changes in the environment,is a key feature of the multi-agent system and its underpin-ning co-ordination methodology.

5.2. Practical industrial-based case study

The DCS has been applied to a practical industrial-based case study provided by Siemens Power GenerationLimited. Within the engineering function of the company,the design team is responsible for the design and develop-ment of turbines. Aspects of this work are the optimisationof thermodynamic efficiency and mechanical design integ-rity. The case study involves the use of a suite of inter-related simulation tools, which are used to calculate stressand vibration characteristics of the turbine blades. As men-tioned earlier, for reasons of confidentiality, descriptions ofthe nature of the simulation tools were not divulged by thecompany.

Traditionally, the simulation tools are executed sequen-tially by an engineer using a single workstation. Further-more, dependencies exist between the various simulationtools, and their executions, meaning that there is a strictorder of use. However, due to considering several designssimultaneously, potential exists for concurrent computa-tion if more engineers and workstations are available,and their activities could be co-ordinated. Typically, anengineer would complete the computational analysis for asingle design in approximately 8 min by executing the sim-ulation tools on a dedicated workstation.

Applying the DCS resulted in a single design being ana-lysed using the simulation tools in approximately 3 min.While this analysis time is less than that achieved by anengineer within the company, the DCS employed fourremote workstations of variable performance capability.However, as recognised in the theoretical research-basedcase study, it is not only the additional workstations thatlead to the reduction in time to complete the computationaldesign analysis, but also the co-ordination mechanismsused and coherent actions of the DCS agents.

6. Discussion

For the purposes of this discussion, the applications ofthe DCS are examined collectively.

In terms of the performance of a computational designanalysis in a distributed environment, the co-ordinationagent-based system has demonstrated time reductions incomparison to a single engineer using a single workstation.

The time savings achieved are not only attributable to agreater number of workstations being used, but are alsodirectly related to the severity of the changes in worksta-tion performance capability and the stage at which theyoccur in the computational design analysis. Clearly, a rela-tionship exists in that a greater number of disruptions tothe analysis require a greater level of co-ordination. Thisis observed in the theoretical research-based case studywhen re-scheduling was considered twice but the decisionwas made to perform it only once. Despite not re-schedul-ing on one occasion, the relevant agents still needed toperform their associated co-ordination activities in prepa-ration for the decision to be made and the subsequent workneeding to be undertaken if the decision had been to re-schedule. Consequently, this co-ordination activity length-ened the computational design analysis time, althoughfrom an overall perspective co-ordination resulted in areduction in analysis time in the two case studies consid-ered. However, it is acknowledged that applications ofthe DCS to the same case studies would not always resultin a reduced analysis time.

The applications of the DCS have also shown that thesystem is flexible in that its agents can react and adapt tochanges in the distributed computational environment.However, the timeliness of the DCS’s reaction is dependenton the frequency that the Resource Monitor agents observethe performance capability of the workstations within thecomputational environment. This frequency is an impor-tant factor in ensuring the optimised (a) utilisation of theworkstations, (b) operation of the agents, and (c) perfor-mance of the computational analysis. Further, it is under-stood that different environments would require differentlevels of monitoring so as to ensure that reactions aretimely and, thus, appropriate.

An acknowledged problem of distributed scheduling isthat local schedules may conflict with each other in thesense that the same task may be planned to be undertakenmore than once. A key feature of the DCS is centralisedscheduling that enables the creation of an optimised globalschedule that can be decomposed into local schedules andthen distributed amongst Activity Directors. These agentscan then coherently orchestrate the enactment of their localschedules and co-ordinate simulation tool executions. Thisattribute of the DCS avoids chaos and duplicated effort. Afurther strength of the DCS agents is related to ensuringcontinuous utilisation of workstations during periods ofre-scheduling. That is, certain simulation tool executionscould be performed during this period so as to contributeto the overall reduction in time to complete the computa-tional design analysis.

7. Conclusions

The importance and requirement for co-ordination hasbeen highlighted within engineering design and distributedartificial intelligence, specifically multi-agent systems. Fur-ther, based on research conducted in these disciplines, key

Page 10: Agent co-ordination aided distributed computational engineering design

G. Coates / Expert Systems with Applications 31 (2006) 776–786 785

characteristics of co-ordination have been cited as coher-ence, communication, task management, resource manage-ment, schedule management and real-time support. In lightof these key characteristics, co-ordination mechanismshave been integrated within a methodology, which hasbeen realised in a multi-agent system.

The DCS has been applied to a theoretical research-based case study related to an aspect of structural analysisfor conceptual aircraft wing design, and a practicalindustrial-based case study involving turbine blade design.These applications of the DCS have proved useful inevaluating the multi-agent system and its underpinningmethodology. With regard to the theoretical research-based case study, an aspect of the structural analysis ofconceptual aircraft wing designs was able to be conductedin an organised and controlled manner within a dynamic,distributed computational environment leading to a nota-ble reduction in time to complete the analysis. Similarly,the practical industrial-based case study demonstrated thatthe methodology’s co-ordination mechanisms implementedin the multi-agent system facilitated a reduction in analysistime. In summary, co-ordinated agent effort involving arange of activities enabled real-time adjustments to bemade in the assignment of simulation tool executionsresulting in significant reductions in the time to completethe computational design analyses. However, it is acknowl-edged that these reductions were also related to the numberof workstations used and the stage of completion ofthe computational design analysis when adjustment wasmade.

With regard to the methodology and its realisationwithin the DCS, the agent community and co-ordinationmechanisms developed provide an agile and effective meansof aiding distributed computational design. That is, sup-port has been provided to enable the structured undertak-ing of simulation tool executions while optimisingworkstation utilisation in real-time through the coherentbehaviour, communication and interaction between thevarious agents. As such, throughout the computationaldesign analysis, it has been ensured that the relevant simu-lation tools were executed using the required input datawhile utilising the most appropriate workstations at theright time.

Potential future work could focus on offering the bene-fits of faster analysis times in a range of dynamic computa-tional design environments. Also, future work could beaimed at using agent co-ordination to enable a greaternumber of conceptual designs to be considered effectively,and thus increase the likelihood of designing betterproducts.

Acknowledgement

The author would like to offer his sincere thanks to Sie-mens Power Generation Limited for supplying the practicalindustrial-based case study.

References

Andreasen, M. M., Duffy, A. H. B., MacCallum, K. J., Bowen, J., &Storm, T. (1996). The design co-ordination framework: Key elementsfor effective product development. In Proceedings of the first interna-

tional engineering design debate (pp. 151–174).Anussornnitisarn, P., Nof, S. Y., & Etzion, O. (2005). Decentralized

control of cooperative and autonomous agents for solving thedistributed resource allocation problem. International Journal of

Production Economics, 98, 114–128.Araujo Macedo, R. J., & Assis Silva, F. M. (2005). The mobile groups

approach for the coordination of mobile agents. Journal of Parallel and

Distributed Computing, 65, 275–288.Bendeck, F., Goldmann, S., Holz, H., & Kotting, B. (1998). Coordinating

management activities in distributed software development projects. InProceedings of the seventh workshop on enabling technologies: Infra-

structure for collaborative enterprises (pp. 33–38).Cabri, G., Ferrari, L., & Leonardi, L. (2004). Agent role-based collab-

oration and coordination: A survey about existing approaches.Proceedings of international conference on systems, man and cybernetics,

Vol. 6, 5473–5478.Chao, K. M., Norman, P., Anane, R., & James, A. (2002). An agent-

based approach to engineering design. Computers in Industry, 48,17–27.

Cleetus, K. J., Cascaval, G. C., & Matsuzaki, K. (1996). PACT—Asoftware package to manage projects and coordinate people. InProceedings of the fifth workshop on enabling technologies: Infrastruc-

ture for collaborative enterprises (pp. 162–169).Coates, G. (2001). An approach to operational design co-ordination.

Ph.D. Thesis, University of Newcastle.Coates, G., Duffy, A. H. B., Whitfield, R. I., & Hills, W. (2004).

Engineering management: Operational design co-ordination. Journal

of Engineering Design, 15(5), 433–446.Cox, J. S., & Durfee, E. H. (2005). An efficient algorithm for multi-agent

plan coordination. In Proceedings of the fourth international joint

conference on autonomous agents and multi agent systems (pp. 828–835).

Cox, J. S., Clement, B. J., Pappachan, P. M., & Durfee, E. H. (2001)Integrating multiagent coordination with reactive plan execution. InProceedings of the fifth international conference on autonomous agents

(pp. 149–150).Crabtree, R. A., Fox, M. S., & Baid, N. K. (1997). Case studies of co-

ordination activities and problems in collaborative design. Journal of

Research in Engineering Design, 9(2), 70–84.Decker, K. S., & Lesser, V. R. (1995). Coordination assistance for mixed

human and computational agent systems. UMass Computer ScienceTechnical Report 95-31.

Dellen, B., & Maurer, F. (1996). Integrating planning and execution insoftware development processes. In Proceedings of the fifth workshop

on enabling technologies: Infrastructure for collaborative enterprises (pp.170–176).

Fayol, H. (1949). General and industrial management. Translated byConstance Storrs from the 1916 French original AdministrationIndustrielle et Generale, Pitman.

Goldmann, S. (1996). Procura: A project management model of concur-rent planning and design. In Proceedings of the fifth workshop on

enabling technologies: Infrastructure for collaborative enterprises (pp.177–183).

Hadeli, K., Valckenaers, P., Kollingbaum, M., & Van Brussel, H. (2004).Multi-agent coordination and control using stigmergy. Computers in

Industry, 53, 75–96.Heck, P. S. (1999). Steps toward a theory of co-ordination for intelligent

agent societies. In Proceedings of the twenty third annual international

computer software and applications conference (pp. 299–300).Huang, G. Q., Huang, J., & Mak, K. L. (2000). Agent-based workflow

management in collaboration product development in the Internet.Computer-Aided Design, 32, 133–144.

Page 11: Agent co-ordination aided distributed computational engineering design

786 G. Coates / Expert Systems with Applications 31 (2006) 776–786

Jennings, N. R. (1999). Agent-based computing: Promise and perils. InProceedings of the sixteenth international joint conference on artificial

intelligence (pp. 1429–1436).Jiang, Y. C., & Jiang, J. C. (2005). A multi-agent coordination model for

the variation of underlying network topology. Expert Systems with

Applications, 29, 372–382.Koulinitch, A. S., & Sheremetov, L. B. (1998). Coordination and

communication issues in multi-agent expert system: Concurrentconfiguration design advisor. Expert Systems with Applications, 15,295–307.

Kwon, P., Chung, M. J., & Pentland, B. (2002). A grammar-basedframework for integrating design and manufacturing. ASME Journal

of Manufacturing Science and Engineering, 124(4), 899–907.Kwon, O. B., & Lee, K. C. (2002). MACE: Multi-agents coordination

engine to resolve conflicts among functional units in an enterprise.Expert Systems with Applications, 23, 9–21.

Lesser, V. R. (1999). Co-operative multiagent systems: A personal view ofthe state of the art. IEEE Transactions on Knowledge and Data

Engineering, 11(1), 133–142.Lo Nigro, G., Noto La Diega, S., Perrone, G., & Renna, P. (2003).

Coordination policies to support decision making in distributedproduction planning. Robotics and Computer Integrated Manufactur-

ing, 19, 521–531.

Madhusudan, T. (2005). An agent-based approach for coordinatingproduct design workflows. Computers in Industry, 56, 235–259.

Malone, T. W., & Crowston, K. (1994). The interdisciplinary study of co-ordination. ACM Computing Surveys, 26(1), 87–119.

Merlo, C., & Girard, P. (2004). Information system modelling forengineering design co-ordination. Computers in Industry, 55, 317–334.

Nwana, H. S., Lee, L., & Jennings, N. R. (1996). Co-ordination insoftware agent systems. BT Technol Journal, 14(4), 79–88.

Paderewski-Rodriguez, P., Rodriguez-Fortiz, M. J., & Parets-Llorca, J.(2003). An architecture for dynamic and evolving cooperative agents.Computer Standards and Interfaces, 25, 261–269.

Park, S., & Sugumaran, V. (2005). Designing multi-agent systems: Aframework and application. Expert Systems with Applications, 28,259–271.

Van de Ven, A. H., Delbecq, A. L., & Koenig, R. (1976). Determinants ofco-ordination modes within organizations. American Sociological

Review, 41, 322–338.Wilson, J. L., & Shi, C. (1996). Co-ordination mechanisms for co-

operative design. Engineering Applications of Artificial Intelligence,

9(4), 453–461.Wooldridge, M. J., & Jennings, N. R. (1999). Software engineering with

agents: Pitfalls and pratfalls. IEEE Internet Computing, 3(3), 20–27.