您好,欢迎来到小侦探旅游网。
搜索
您的当前位置:首页The prometheus methodology

The prometheus methodology

来源:小侦探旅游网
ThePrometheusMethodology

LinPadghamandMichaelWinikoff

RMITUniversityMelbourne,AUSTRALIA{linpa,winikoff}@cs.rmit.edu.au

April2004

1Introduction

“Oneofthemostfundamentalobstaclestolarge-scaletake-upofagenttechnologyisthelackofmaturesoftwaredevelopmentmethodologiesforagent-basedsystems.”[37,page11].

Itiswidelyacceptedintheagentresearchcommunitythatakeyissueinthetransitionofagentsfromresearchlabstoindustrialpracticeistheneedforamaturesoftwareengineeringmethodologyforspecifyinganddesigningagentsystems.InthischapterwedescribethePrometheus1methodologywhichaimstoaddressthisneed.

Prometheusisintendedtobeapracticalmethodology.Assuch,itaimstobecomplete:provid-ingeverythingthatisneededtospecifyanddesignagentsystems.OtherdistinguishingfeaturesofthePrometheusmethodologyare:

•Prometheusisdetailed–itprovidesdetailedguidanceonhowtoperformthevariousstepsthatformtheprocessofPrometheus.

•Prometheussupports(thoughisnotlimitedto)thedesignofagentsthatarebasedongoalsandplans.Webelievethatasignificantpartofthebenefitsthatcanbegainedfromagent-orientedsoftwareengineeringcomesfromtheuseofgoalsandplanstorealiseagentsthatareflexibleandrobust.•Prometheuscoversarangeofactivitiesfromrequirementsspecificationthroughtodetaileddesign.•Themethodologyisdesignedtofacilitatetoolsupport,andtoolsupportexistsintheformofthePrometheusDesignTool(PDT)whichisfreelyavailable.•Prometheusisaimedatindustrialsoftwaredevelopersandundergraduatestudents,notresearchersandpost-graduatestudents.•Prometheushasbeensuccessfullytaughttoundergraduatestudentsandusedbysummerstudents.Feedbackfromthesestudentshasbeenusedtoimprovethemethodology.WehavealsoworkedwithAgentOrientedSoftware,aninternationalcompanywithheadquartersinMelbourne,Australiawhichspecialisesinagenttechnology.

ThesefeaturesofPrometheusdistinguishitfromexistingmethodologies.Whiletherearemanyagentorientedsoftwareengineeringmethodologies(forexample[2–5,8,9,14,15,19–22,25,26,30,31,33–36,41,48,51,]and,ofcourse,theotherchaptersinthisbook),noneofthemhaveallofthefeaturesde-scribedabove.

WeshallnotattempttocomparePrometheustoexistingmethodologiesinthischapter.ComparisonsofPrometheuswithothermethodologiescanbefoundin[17,18].Othercomparisonsofagent-orientedmethodologiesinclude[12,48,49].

aftertheTitanwhowas,amongstotherthings,theprotectorofmankind.Prometheus,accordingtoGreekmythology,

stolefirefromZeusandgaveitasagifttohumanity;anactthathewaspunishedfor.(www.greekmythology.com).

1Named

1

IntheremainderofthischapterwedescribethePrometheusmethodology(section2),brieflyoutlineacasestudy(section3)anddiscussthestrengthsandweaknessesofPrometheus(section4)beforeconclud-ing(section5).OurdescriptionofPrometheusisnecessarilybrief–forafulldescriptionsee[44].

2ThePrometheusMethodology

BeforewepresentPrometheusitisimportanttoconsiderthequestion“whatisamethodology?”Thisisnotjustanacademicexercise:ifweviewamethodologyasconsistingpurelyofnotationsfordescribingdesignsorasconsistingonlyofahighlevelprocessthenweendupwithaverydifferentresult.

Weadoptapragmaticstance:ratherthandebatingwhatshouldandshouldnotbeconsideredpartofamethodologywesimplyincludeinPrometheuseverythingthatwethinkisnecessary.Inparticular,thePrometheusmethodologyasdescribedin[44]includesadescriptionofconceptsfordesigningagents,aprocess,anumberofnotationsforcapturingdesigns,aswellasmany“tips”ortechniquesthatgiveadviceonhowtocarryoutthestepsofPrometheus’process.

Sincedesignisahumanactivitythatisinherentlyabouttradeoffs,ratherthanaboutfindingthesinglebestdesign(whichoftendoesnotexist),itisnotpossibletoprovidehardandfastrules.However,itisimportanttoprovidedetailedtechniquesandguidelinesforcarryingoutsteps.

WewouldliketostressthatPrometheusisageneralpurposemethodology.Althoughthedetaileddesignphasemakessomeassumptionsabouttheagentarchitecture,therestofthemethodologydoesnotmaketheseassumptions.Itisnotpossibletoprovideadetailedmethodologythatproceedstodetaileddesignandtowardsimplementationwithoutmakingsomeassumptions.Forexample,Tropos[3,25]alsotargetsBDI2-likesystems.

2.1AgentConcepts

Beforeweproceedtopresenttheprocess,notations,andtechniquesthatareassociatedwiththePrometheusmethodologywebeginbydiscussingconcepts[53].

Thereasonwhyitisimportanttoconsideranddiscussconceptsisthattheconceptsarethefounda-tionwhichasoftwareengineeringmethodologybuildsupon.Forinstance,object-orientedmethodologiesassumethatthedesignerisfamiliarwithconceptssuchasobjects,classesandinheritance.

Theconceptsthatareappropriatefordesigningagentsare,notsurprisingly,differentfromthosethatareusedforobjects.Whereastheconceptsofobject-orientedprogrammingarewell-known,thoseassociatedwithagent-orientedprogrammingarenot,andsowefeelthatitisusefulandimportanttodiscussthem.Inconsideringwhatconceptsareappropriatefordesigningagentsystemswetakeasastartingpointthedefinitionofanintelligentagentasbeingsoftwarethatissituated,autonomous,reactive,proactive,flexible,robustandsocial[44,55].

Letusbeginwithabasicproperty:agentaresituatedinanenvironment.Asaresult,capturingtheagent’sinterfacewiththeenvironmentisimportant(andisdoneaspartofPrometheus’systemspecifi-cationphase).Theagent’sinterfaceisexpressedintermsof(percepts3)providinginformationfromtheenvironmentandactionswhichtheagent(s)canperformtochangetheenvironment.

Agentsarealsoproactiveandreactive.Aproactiveagentisonethatpursuesgoals,andsoakeydesign(andimplementation!)conceptthatisusedtobuildagentswiththispropertyisgoals.Areactiveagentisonethatrespondstosignificantoccurrences(events).Theseeventsmaybeperceptsfromtheenvironment,butmayalsobemessagesfromanotheragent,oreveninternaloccurrences.

Agentsarealsosocial.Therearemanyconceptsthatcouldbeusedtorealisesocialagentsincludingcommitments[11,56],norms[10],andteams[13].Forthemoment,Prometheusmerelydesignsintermsofmessagesbetweenagentsthatformpartofinteractionprotocols.

Therearetwootherconceptsthatwebelieveareimportanttodesigningintelligentagents:beliefsandplans.Beliefsareimportantbecauseagentsneedtostorestate,unlesstheyaretobepurelyreactive.Plansareimportantbecausethereisoftennotenoughtimetoplanfromfirstprinciples,andhavingalibraryofplanstoachievegoalsorrespondtoeventsenablesagentstorespondmorerapidly.

2Belief3From

DesireIntention

theLatin“perceptum”whichistherootoftheEnglishword“perceive”.

2

SystemSpecificationArchitecturalDesignDetailedDesign

DynamicModelsScenarios(interactiondiagrams)InteractionProtocolsProcessDiagramsStructuralOverviewModelsGoals(couplingdiagram)(agentacquaintance)SystemOverviewAgentOverviewCapabilityOverview

EntityDescriptorsFunctionalitiesactions&percepts

AgentsMessagesCapabilitiesPlans,Data,Events

Figure1:TheMajorModelsofPrometheus

OurexperiencewithteachingagentconceptshasbeenthattheconceptsetdiscussedissufficientinordertodesignBDIstyleagentsystemsandalsoeasiertounderstandthan,forexample,thestandardBDIconcepts(particularlyintentions).

Prometheus,asamethodology,isintendedtobeabletosupportdesignofBDIsystems,althoughitisnotlimitedtosuch:allbutthelowestlevelofdesign,leadingintocode,canbeusedequallywellfornon-BDIsystems.However,thelowestlevelneedstobemodifiedtoaccommodatetheparticularstyleofimplementationplatformbeingtargeted.ForinstanceifbuildingJADEagents,thelowestlevelwouldspecifybehavioursratherthanplans,andtherewouldbesomechangesindetails.

2.2OverviewofthePrometheusMethodology

WenowturntoconsideringtheoverallstructureofthePrometheusmethodology.ThesectionsbelowgothrougheachofPrometheus’threephasesinmoredetailandwilldiscussthenotationsusedbythemethodologyaswellassomespecifictechniques.

ThePrometheusmethodologyconsistsofthreephases:•SystemSpecification:wherethesystemisspecifiedusinggoalsandscenarios;thesystem’sinterfacetoitsenvironmentisdescribedintermsofactions,perceptsandexternaldata;andfunctionalitiesaredefined.

•Architecturaldesign:whereagenttypesareidentified;thesystem’soverallstructureiscapturedinasystemoverviewdiagram;andscenariosaredevelopedintointeractionprotocols.

•Detaileddesign:wherethedetailsofeachagent’sinternalsaredevelopedanddefinedintermsofcapabilities,data,eventsandplans;processdiagramsareusedasasteppingstonebetweeninteractionprotocolsandplans.

Eachofthesephasesincludesmodelsthatfocusonthedynamicsofthesystem,(graphical)modelsthatfocusonthestructureofthesystemoritscomponents,andtextualdescriptorformsthatprovidethedetailsforindividualentities.

Notetoeditor:figure2isfrom[44]andwillneedtohavea“usedwithpermission”note.Wewouldverystronglyprefertobeabletousethisfigure,butfigure1isanalternativeincasecopyrightissuesprohibituseofthisfigure.

Inthefollowingsectionswebrieflydescribetheprocessesandmodelsassociatedwitheachofthethreephases.Duetospacelimitationsandthedesiretodescribeallofthemethodology,thischaptercannotdojusticetoPrometheus.Inparticular,wecannotdescribearunningexampleindetail,andthedetailedtechniques,thatishowparticularstepsintheprocessareperformed,arenotdescribed.FormoreinformationonPrometheus,includingacompletedescription,see[44].

2.3SystemSpecification

Systemspecificationbeginswitharoughideaofthesystem,whichmaybesimplyafewparagraphsofroughdescription,andproceedstodefinetherequirementsofthesystemintermsof:

3

specificationSystemScenariosSystem goalsInitial FunctionalitydescriptorsActions, perceptsKeyfinal design artifactintermediatedesign toolcrosscheckderivesArchitectural designInteractiondiagramsagentacquaintanceData couplingmessagesshareddataProtocolsSystemOverviewAgent descriptorsDetaileddesignProcessAgentOverviewCapabilitydescriptorsCapabilityoverviewEventdescriptorsDatadescriptionsPlandescriptorsFigure2:ThephasesofthePrometheusmethodology

•Thegoalsofthesystem•Usecasescenarios•Functionalities,and

•Theinterfaceofthesystemtoitsenvironment,definedintermsofactionsandpercepts.

Wewouldliketostressthatthesearenotconsideredinsequence.Rather,workononeofthesewillleadtofurtherideasonanother.Forexample,thegoalsofthesystemareanaturalstartingpointfordevelopingusecasescenarios.Conversely,developingthedetailsofusecasescenariosoftensuggestsadditionalsub-goalsthatneedtobeconsidered.Thussystemspecificationisaniterativeprocess.

Sinceagentsareproactive,andhavegoals,itisnaturaltoconsiderusinggoalstodescriberequire-ments4.

Theprocessforcapturingthegoalsofthesystembeginsbycapturinganinitialsetofgoalsfromthehigh-levelsystemdescription.Forexample,fromadescriptionsuchas“wewishtodevelopagroupschedulingsystemthatallowsuserstobookmeetingswithotherusers...”wecanextractgoalssuchasschedulingmeetings,re-schedulingmeetings,andmanagingusers’calendars.

Theseinitialgoalsarethendevelopedintoamorecompletesetofgoalsbyconsideringeachgoalandaskinghowthatgoalcouldbeachieved[50],thisidentifiesadditionalsub-goals.Forexample,byaskinghowmeetingscanbescheduledwemayrealisethatweneedtofindacommonfreetime.Thisisanewsub-goalofthetoplevelgoalofschedulingameeting.

Inadditiontoidentifyingadditionalgoals,thesetofgoalsisalsorevisedascommonsub-goalsareidentified.Forexample,bothschedulingandre-schedulingmeetingsmayhaveasub-goalofdeterminingacommonfreetimefortheparticipants.

Thegoalsarerepresentedusingagoaldiagramthisdepictsgoalsasovalsandshowsthesub-goalrelationshipswitharrowsfromparentgoalstosub-goals.

4In

fact,therearealsootherreasonsforconsideringgoal-orientedrequirements[50].

4

Aswerevisethegroupingsofgoalsweareattemptingtoidentifywhatweterm“functionalities”–coherentchunksofbehaviourwhichwillbeprovidedbythesystem.Afunctionalityencompassesanumberofrelatedgoals,perceptsthatarerelevanttoit,actionsthatitperforms,anddatathatituses.Functionalitiescanbethoughtofas“abilities”thatthesystemneedstohaveinordertomeetitsdesignobjectives,indeed,oftenfunctionalitiesofthesystemendupascapabilitiesofagentsinthesystem.

Aninitialsetoffunctionalitiesisidentifiedbyconsideringgroupingsofgoals.Thefunctionalitiesareoftenthenrevisedasaresultofconsideringtheagenttypes(doneaspartofarchitecturaldesign).

Functionalitiesaredescribedusingdescriptors.Thesearejusttextualformsthatcapturenecessaryinformation.Inadditiontoa(brief)naturallanguagedescription,thedescriptorformforafunctionalityincludesthegoalsthatarerelatedtoit,theactionsthatitmayperform,and“triggers”–situationsthatwilltriggersomeresponsefromthefunctionality.Triggersmayincludepercepts,butmoregenerallywillincludeeventsaswell.Finally,thedescriptorformalsoincludesnotesontheinformationusedandproducedbythefunctionality.

Thethirdaspectofsystemspecificationisusecasescenarios.Usecasescenariosareadetailedde-scriptionofoneparticularexamplesequenceofeventsassociatedwithachievingaparticulargoal,orwithrespondingtoaparticularevent.

Scenariosaredescribedusinganame,description,andatriggeringevent.However,thecoreofthescenarioisasequenceofsteps.Eachstepconsistsofthefunctionalitythatperformsthatstep,thenameofthestep,itstype(oneofACTION,PERCEPT,GOAL,SCENARIOorOTHER)and,optionally,theinformationusedandproducedbythatstep.

Inaddition,scenariosoftenbrieflyindicatevariations.Forexample,whenschedulingameetingascenariomayincludeastepthatselectsapreferredtimefromalistofpossibletimes.Avariationofthisscenariomightbewherethereisonlyasingletimewhenallparticipantsareavailable.Inthiscase,theselectionstepisomitted.

Finally,theenvironmentwithinwhichtheagentsystemwillbesituatedisdefined.Thisisdonebydescribingtheperceptsavailabletothesystem,theactionsthatitwillbeabletoperform,aswellasanyexternaldatathatisavailableandanyexternalbodiesofcode.

Whenspecifyingperceptswealsoconsiderperceptprocessing.Oftenperceptswillneedtobepro-cessedinsomewaytoextractusefulinformation.Forexample,rawimagedataindicatingthatafireexistsatacertainlocationmaynotbesignificantiftheagentisalreadyawareofthisfire.

Whenagentsaresituatedinphysicalenvironmentsthenperceptprocessingcanbequiteinvolved.Forexample,extractingfeaturesofinterestfromcameraimages.Similarly,actionsmayalsobecomplexandrequiredesign.

2.4ArchitecturalDesign

•Decidingontheagenttypesinthesystem:whereagenttypesareidentifiedbygroupingfunction-alitiesbasedonconsiderationsofcoupling;andtheseareexploredusingacouplingdiagramandanagentacquaintancediagram.Onceagroupingischosentheresultingagentsaredescribedusingagentdescriptors.•Describingtheinteractionsbetweenagentsusinginteractiondiagramsandinteractionprotocols:whereinteractiondiagramsarederivedfromusecasescenarios;andthesearethenrevisedandgeneralisedtoproduceinteractionprotocols.

•Designingtheoverallsystemstructure:wheretheoverallstructureoftheagentsystemisdefinedanddocumentedusingasystemoverviewdiagram.Thisdiagramcapturestheagenttypesinthesystem,theboundariesofthesystemanditsinterfacesintermsofactionsandpercepts,butalsointermsofdataandcodethatisexternaltothesystem.

Inthearchitecturaldesignphasethefocusison:

Decidingontheagenttypesthatwillexistinthesystemisperhapsthemostimportantdecisionthatismadeinthisphase.Ideally,eachagenttypeshouldbecohesiveandcouplingbetweenagentsshouldbelow.

5

InPrometheusanagenttypeisformedbycombiningoneormorefunctionalities.Differentgroupingsoffunctionalitiesgivealternativedesignsthatareevaluatedbasedonthecohesivenessoftheagenttypes,andthedegreeofcouplingbetweenagents.

Somereasonsthatmightneedtobeconsideredwhengroupingagentsinclude:•Iftwofunctionalitiesareclearlyrelatedthenitmightmakesensetogroupthemtogetherinthesameagenttype.Conversely,iftwofunctionalitiesareclearlynotrelatedthentheyshouldperhapsnotbegroupedinthesameagenttype.

•Iftwofunctionalitiesneedthesamedatathentheyshouldperhapsbegroupedtogether.

Ausefultoolforsuggestinggroupingsoffunctionalitiesisthedatacouplingdiagram.Thisdepictseachfunctionality(asarectangle)andeachdatarepository(asadatasymbol)showingwherefunctionalitiesreadandwritedata.Itisoftenfairlyeasytoextractsomeconstraintsonthedesignbyvisuallyexaminingadatacouplingdiagram.

Theprocessofderivingagenttypesbygroupingfunctionalities,withtheaidofadatacouplingdiagram,canoftensuggestpossiblechangestothefunctionalities.Forexample,supposethatthedesignincludestwofunctionalitieswhichareunrelatedandwewouldliketoputthemintwodifferentagenttypes.However,thetwofunctionalitiesbothreadaparticulardatasource.Wecouldchangeoneofthefunctionalitiessothatratherthanreadthedatasourcedirectly,itsendsamessagetoanotheragentrequestingtheinformation.Theresultofthisprocessisanumberofpossibledesigns,eachdesignconsistingofagroupingoffunctionalitiesintoagenttypes.Wenowneedtoselectadesign.Onetechniquethatisusefulincomparingthecouplingofdifferentalternativesistheuseofagentacquaintancediagrams.Anagentacquaintancedia-gramshowstheagenttypesandthecommunicationpathwaysbetweenthem.Agentacquaintancediagramsprovideaconvenientvisualisationofthecouplingbetweentheagenttypes:thehigherthelinkdensity,thehigherthecoupling.

Onceagenttypeshavebeendecidedupontheyaredocumentedusinganagentdescriptor.Inadditiontocapturingtheinterfaceoftheagent,whatgoalsitachieves,whatfunctionalitieswerecombinedtoformit,andwhatprotocolstheagentisinvolvedwith;thedescriptorpromptsthedesignertothinkaboutlifecycleissues:whenareinstancesofthisagenttypecreated?whenaretheydestroyed?whatneedstobedonewhenagentsarecreated/destroyed?

Thenextstepinthearchitecturaldesignistoworkontheinteractionsbetweenagents.Thesearedevel-opedusinginteractiondiagramsandinteractionprotocols.Specifically,thenotationsusedareasimplifiedvariantofUMLsequencediagramsforinteractiondiagrams,andAUML(therevisedversion)[29]forinteractionprotocols5.

Interactiondiagramsarederivedfromusecasescenariosusingafairlymechanicalprocess(althoughnotcompletelymechanical).Inessence,ifstepNisperformedbyanagentA,andthisisfollowedbystepN+1performedbyadifferentagentB,thenamessageneedstobesentfromAtoB.

Likeusecasescenarios,interactiondiagramsshowexampleinteractionsratherthanallpossibleinter-actions.Inordertodefineplansthatwillhandleallnecessaryinteractionsweuseinteractionprotocolstocaptureallpossiblesequencesofmessages.

Oftenaninteractionprotocolwillcombineanumberofinteractiondiagrams.Forexample,iftherearethreeinteractiondiagramscorrespondingtodifferentcasesofschedulingameetingthentherewillbeaninteractionprotocolthatcoversallcasesandwhichsubsumestheinteractiondiagrams.Whenlookingattheusecasescenarioswealsoconsiderthedocumentedvariationsofthesescenarios.

Anotherusefultechniquefordevelopinginteractionprotocolsistoconsidereachpointintheinteractionsequenceandask“whatelsecouldhappenhere?”Iftheinteractiondiagramshowsanexamplesequencewherearequestforpossiblemeetingtimesisrepliedtowithanumberofpossibletimes,thenanalternativepossibilityisthattherewon’tbeanymeetingtimesavailable.

Theinteractionprotocolsareaccompaniedwithdescriptorsforboththeprotocolsandforthemessages.Thesedescriptorscaptureadditionalinformationsuchastheinformationcarriedbyamessage.

Finally,theoverallarchitectureofthesystemiscapturedusingasystemoverviewdiagram.ThesystemoverviewdiagramisoneofthemostimportantdesignartifactsproducedinPrometheusandisoftenagood

5Other

notationsthatcouldbeusedforthispurposeincludetheoriginalversionofAUML[41]andPetrinets[16,38,46].

6

Figure3:NotationusedinSystemOverviewDiagram

Figure4:NotationusedinAgentOverviewDiagrams

startingpointwhentryingtounderstandthestructureofasystem.Thesystemoverviewdiagramshowsagents,percepts,actions,messages,andexternaldataasnodes.Eachofthesenodetypeshasitsowndistinctvisualdepiction(seefigure3).Directedarrowsbetweennodesindicatemessagesbeingsentandreceivedbyagents,actionsbeingperformedbyagents,perceptsbeingreceivedbyagents,anddatabeingreadandwrittenbyagents.

2.5DetailedDesign

•Developingtheinternalsofagents,intermsofcapabilities(and,insomecasesdirectlyintermsofevents,plansanddata).Thisisdoneusingagentoverviewdiagramsandcapabilitydescriptors.•Developprocessdiagramsfrominteractionprotocols.

•Developthedetailsofcapabilitiesintermsofothercapabilitiesaswellasevents,plansanddata.Thisisdoneusingcapabilityoverviewdiagramsandvariousdescriptors.Akeyfocusisdevelopingplansetstoachievegoalsandensuringappropriatecoverage.

Detaileddesignconsistsof:

Capabilities[6,42]areastructuringmechanismakintomodules.Acapabilitycancontainplans,data,andevents.Itcanalsocontainothercapabilitiesallowingforahierarchicalstructure.

Inidentifyingthecapabilitiesthateachagenttypecontains,oneusuallystartsbyconsideringacapa-bilityforeachfunctionalitythatwasgroupedintheagenttype.Thisinitialdetaileddesignisthenrefinedbymergingcapabilitiesthataresimilarandsmall,splittingcapabilitiesthataretoolarge,andaddingcapa-bilitiesthatcorrespondtocommon“library”code.

Thestructureofeachagentisdepictedbyanagentoverviewdiagram.Thisissimilartothesystemoverviewdiagramexceptthatitdoesnotcontainagentnodesanddoesnot(usually6)containprotocolnodes.However,theagentoverviewdiagramdoes(usually)containcapabilitynodesand(sometimes)plannodes.Thenodetypesfoundinagentoverviewdiagramsareshowninfigure4.

Duringthearchitecturaldesignphasethesystem’sdynamicsweredescribedusinginteractionproto-cols.Theseareglobalinthattheydepicttheinteractionbetweentheagentsfroma“bird’seye-view”.Inthedetaileddesignphasewedevelopprocessdiagramsbasedontheinteractionprotocols.Theprocessdiagramsdepictlocalviewsforeachagent.Typicallyeachinteractionprotocolwillhavemultiplepro-cessdiagramscorrespondingtotheviewpointsofdifferentagents.ThenotationthatweuseforprocessdiagramsisanextensionofUMLactivitydiagrams[23];formoredetailssee[44,chapter8].

Thedesignofeachagentis,usually,intermsofcapabilities.Thesecapabilitiesarethenrefinedinturn.Eventuallythedesignofhoweachagentachievesitsgoalsisexpressedintermsofplans,eventsanddata.Atthispointthedesignprocessneedstomakecertainassumptionsabouttheimplementationplatform.

itmaymakesensetoallowprotocolnodesinagentoverviewdiagrams,thecurrentversionofthePrometheusDesign

Tooldoesnotsupportthis.

6Although

7

Specifically,weassumethattheagentsareimplementedusingaplatformthatsupportsplanswhicharetriggeredbygoals.SuchplatformsincludePRS[24],JAM[27],dMars[1],andJACK[7].

Designingappropriatesetsofplans,alongwithtriggeringeventsandsuitablecontextconditionsisadesigntaskuntoitself.However,weshallnotgointodetailshere–insteadwereferthereaderto[44,chapter9].

2.6ToolSupport

Wehaveattemptedtostresstheiterativenatureofdesign,bothacrossthephasesofPrometheusandwithinphases.Oneconsequenceoftheiterativenatureisthatthedesignisoftenmodified.Asthedesignbecomeslargeritbecomesmoredifficulttoensurethattheconsequencesofeachchangearepropagatedandthatthedesignremainsconsistent7.

Perhapsthesimplestexampleofintroducedinconsistencyisrenaminganentityandfailingtorenameiteverywhereitismentioned.Otherformsofinconsistencythatcanbeeasilyintroducedwhenmakingchangestoadesignincludeaddingamessagetoanagentinthesystemoverviewdiagram,butfailingtoensurethatthemessageappearsintheagentoverviewdiagramofthatagenttype.

Ourexperience,andtheexperienceofstudentswhousedthePrometheusmethodologyinitsearlierdays,wasthatdevelopingdesignsbyhand(usingonlystandardtoolssuchaswordprocessors)isquiteerrorproneandthattoolsupportisinvaluable.AsaresultthePrometheusDesignTool(PDT)wasdeveloped.ThePrometheusDesignTool(seefigure5)allowsuserstocreateandmodifyPrometheusdesigns.Itensuresthatcertaininconsistenciescannotbeintroducedandprovidescrosscheckingthatdetectsotherformsofinconsistency.Thetoolcanalsoexportindividualdesigndiagramsaswellasgenerateareportthatcontainsthecompletedesign.

FormoredetailsontoolsupportforPrometheussee[43].ThePrometheusDesignToolisfreelyavailable8andfurtherfunctionalityisunderdevelopment.

AnothertoolthatsupportsthePrometheusmethodologyistheJACK9DevelopmentEnvironment(JDE)whichprovidesadesigntoolthatallowsPrometheus-styleoverviewdiagramstobedrawn.TheJDEcanthengenerateskeletoncodefromthesediagrams.Thisfacilityhasprovenquiteuseful.

3CaseStudy:CalendarSystem

ThecasestudydescribedbelowwassetasthemainassignmentfortheundergraduateclassAgentOrientedProgrammingandDesign,runinthesecondhalfof2003.Studentsweregivenahigh-leveldescriptionofacalendarsystemandwererequiredtoproduceadesignusingPrometheusandtoimplementthesystemusingJACK.

Thedescriptionofthesystemprovidedwasessentiallythefollowing.

“Thecalendarsystemsupportsthescheduling,rescheduling,andcancellationofmeetingsinvolvingusers.Whenameetingisrequestedwithcertainusersthesystemattemptstofindasuitabletime.Findingsuchatimemayfail,mayrequirethatexistingmeetingsaremovedautomatically,ormaycreateadoublebookingforcertainusersthatmustbemanuallyresolved.Eachuserhastheirownapplicationinstancewithwhichtheyinteract.Theseapplicationscancontainmultipleagentsthatinteractwiththeapplicationsofotheruserstocoordinateandschedulemeetings.

Inschedulingmeetings,someusersmaybeessentialtothemeetingandothersmaynotbeessential.Ifanessentialuserpullsoutofameetingafteritisset(orcannotmakeaproposedtime)thenthemeetingneedstoberescheduled.

Settingorreschedulingmeetingsmaybeimpossiblewithoutchangingexistingmeetings.Do-ingthisshouldtakecaretoavoidcreatinga“cascade”whereinordertoschedulemeetingA,

thegeneralsense,notintheformalsenseofalogicaltheorybeingconsistent.www.cs.rmit.edu.au/agents/pdt

9JACKisacommercialagentdevelopmentplatformdevelopedbyAgentOrientedSoftware.

8From7In

8

Figure5:ThePrometheusDesignTool(PDT)

9

meetingBismovedwhichcreatesaclashwithmeetingCwhichismovedcreatingaclashwithDetc.Somepossibilitiesfordealingwiththissituationinclude(a)assigningprioritiestomeetings(andinparticularmarkingsomemeetingsasnotmovable,oronlymanuallymov-able);(b)usingtheheuristicthatwhereaclashiscreatedonlyameetingwithfewerpeople(orlessseniorpeople?)willbemoved.

Thesystemshouldallowuserstonominatewhentheyareavailable(andwhentheyarenotavailable)andshouldalsoallowforcertainconstraintstobespecifiedsuchasonlyschedulingamaximumof4hoursofmeetingsonacertainday(e.g.toallowtimetopreparealecture).Or,moregenerally,onlyschedulingNhoursofmeetingsinacertaintimeperiod(Mdays)”Thedesignthatwepresentinthissectionwasproducedbyastudent,JohnSietsma,aspartofthecourseandwasdevelopedusinganearlierversionofthePrometheusDesignTool.Inthischapterwereproduce(withpermission)selecteddiagramsfromJohn’sdesign.

Duetospacelimitationsweonlydiscusspartofthearchitecturaldesign.OneofthekeypartsofthearchitecturaldesignphaseinPrometheusisdecidingontheagenttypesthatwillexistinthesystem.Thisisdonebygroupingfunctionalities,and,asdiscussedinsection2.4,thedatacouplingdiagramisusefulinhelpingtoidentifypossiblegroupings.

Figure6showsadatacouplingdiagram10forthefollowingfunctionalities:•ContactManager:Inchargeofmanagingcontactinformationforotherusers.•ContactNotify:Providesameansofcommunicatingwithotherusers.•MeetingManager:Managesmeetinginformation.

•MeetingScheduler:Schedulesmeetingssubjecttoprovidedconstraintsanduserhabits/preferences.•Negotiator:Negotiateswithotheruserstodeterminemeetingtimes.ThisdiffersfromMeetingSchedulerinthatNegotiatorisaboutinter-userconstraints,whereasMeetingSchedulerisconcernedonlywiththeconstraintsofasingleuser.•UserInteraction:Interactswiththeuser(asopposedtointeractingwithotherusers,whichisdonebyContactNotify).•UserInformationManager:Managesinformationabouttheusersuchastheirpreferences.•UserMonitor:Observesuser,attemptingtolearntheirhabits.

•UserNotify:Remindsuserofevents.DiffersfromUserInteraction(a)inthatitusesarangeofcommunicationmediasuchasSMS,email,andsoon;butalso(b)inthatitwaitsforconditionstoariseandremindstheuser,ratherthanreceivinginputfromtheuser.Inthiscasethestudentchosetocreatefouragenttypes:

•UserInterface:combiningthefunctionalitiesofUserInteractionandUserNotify.Thisgroupingmadesensebecausebothfunctionalitiesareconcernedwithinteractionwiththeuser.

•ContactTracker:basedontheContactManagerfunctionalityandincludingtheContactInformationdatabase.AlthoughtheContactNotifyfunctionalitycouldhavebeenincludedinthisagenttype,itinteractsmorewiththefunctionalitiesconcernedwithschedulingmeetingsandsowasgroupedwiththemintheMeetingsagent.•Meetings:combiningthefunctionalitiesofMeetingScheduler,MeetingManager,NegotiatorandContactNotify;andincludingtheMeetingsDatabase.Thesefunctionalitiesarebothrelatedandinteractwitheachother.

10The

diagramisslightlymodifiedfromtheonethatwaspreparedbyJohn.

10

Figure6:DataCouplingDiagram.

•UserManager:combiningtheUserMonitorandUserInformationManagerfunctionalities;andincludingtheUserHabitsandUserPreferencesdatabases11.Oneresultofthisgroupingwasthatcertainagentswerewritingdatathatwasinotheragents.Forex-ample,theUserInteractionfunctionalitywithintheUserInterfaceagentwritestotheMeetingsDatabase.Thesewritesneedtobechangedtomessagestotheappropriateagentwhichthenupdatesitsowndata.Havingdecidedontheagenttypeswenowskipaheadtothedevelopingtheagentoverviewdiagramfromthesystemoverviewdiagram.Figure7showstheoveralldesignofthesystem.Itdepictsthefouragenttypesidentifiedandalsoshowsthemessagesbetweenthem,perceptsreceivedbytheUserInterfaceagentanddatareadandwritten.

IndevelopingtheagentoverviewdiagramfortheMeetingagentwebeginwithitsinterface:thedatathatitreadsandwrites,andtheincomingandoutgoingmessages.Thenextstepistodevelopcapabilitiesthatwilltogetherprovidetheagent’srequiredfunctionality,aswellasinternalmessagesbetweenthecapabilities.

4StrengthsandWeaknesses

Asdiscussedintheintroduction,Prometheusaimstobeapracticalmethodologythatcanbeusedbyundergraduatestudentsandindustrypractitioners.The(anecdotal)evidencesupportsourbeliefthatwehavesucceededinthisregard,andthisisakeystrengthofPrometheus.

Prometheushasbeendevelopedoveranumberofyears.Duringthistimeithasbeentaughttounder-graduatestudents,usedbystudentsdoingsummerprojects,andbeentaughtatindustryworkshops.Theseactivitiesyieldedfeedbackthathasbeenvaluableinrefiningandimprovingthemethodology.

Ontheindustrialside,aprototypeweatheralertingsystemdevelopedbyAgentOrientedSoftwarefortheAustralianBureauofMeteorology[39]usedPrometheusoverviewdiagramstocaptureanddocumentthedesign.ThesediagramswereproducedusingtheJACKDevelopmentEnvironment(JDE).

InordertoobtainaslightlymorereliableassessmentofPrometheus,wehaveontwooccasionssetsummerprojects12wherethestudentwasgivenwrittendescriptionofthePrometheusmethodology,in-11which12These

arerenamedinthefinalversionofthedesigntoUserHabitsDBandUserPreferencesDBrespectively.aredonebyundergraduatestudentsovereightweeksfulltimeduringthesummernon-teachingperiod.

11

Figure7:ExampleSystemOverviewDiagram

Figure8:ExampleAgentOverviewDiagram:MeetingAgent

12

tentionallylimitedsupportfromstaffmembers,andwasinstructedtodesignandbuildanagentsystem.Inthe2001/2002ChristmasvacationasecondyearstudentproducedadesignandimplementationforaHolonicmanufacturingsystem.Inthe2002/2003Christmasvacationa(different)studentproducedade-taileddesignforatourismapplication.Theseexperiencescontrastwithpre-Prometheusexperienceswheregraduatestudentsstruggledtodesignagentsystemsandrequiredconsiderablesupportfromstaff.

InourteachingwehavefoundthatthePrometheusmethodologyhasmadeasignificantdifference.Be-forethemethodologyhadbeendevelopedgraduatestudentsstruggledtodesignandimplementreasonableagentsystems,whereasnowwearesuccessfullyteachingPrometheusandJACKinaone-semestercourse.Thiscourse,whichistaughttoundergraduatestudents,seesmostofthemsuccessfullydesignandbuildreasonableagentsystemswithintheperiodofasemester.

TheseexperiencesprovideevidencethatPrometheusisusefulaswellasbeingusablebyitsintendedtargetaudience.

AnotherstrengthofthePrometheusmethodologyisthepossibilityandexistenceoftoolsupport.

However,Prometheusisnotwithoutweaknesses.Itssupportforthesocialaspectofagentsiscurrentlyfocussedonthelowestcommondenominator:messagesandprotocols.Extendingthemethodologytosupportmorespecifictypesofagentinteractionandrelationships,suchasteamsofagents[13]andopensocietiesofagents,isoneoftheareasthatwearecurrentlyfocussingon.Theareaofsoftwaremethodolo-giesfordesigningopenagentsystemsisquitenewandexciting.Existingworkthatweintendtobuildonincludes[28,32,40].

Prometheusalsodoesnotdealatallwithmobileagents.Thishasnotbeenapriorityaswedonotseemobilityascentralforintelligentagentsystems.However,ifadeveloperisdesigningasystemwheremobilityisasignificantaspect,thenPrometheusislikelytobeinadequateasadesignmethodology.

Prometheuscoversthesystemspecification,highleveldesign,anddetaileddesignactivitieswithsomediscussionofimplementationissues[44,chapter10].Therehasalsobeensomeworkonusingdesignmodelstohelpindebuggingagentsystems[46,47].However,thesupportforimplementation,testinganddebuggingislimitedatthemoment.Also,PrometheuscurrentlyhaslessfocusonearlyrequirementsandanalysisofbusinessprocessesthanamethodologysuchasTropos.ThesearehoweverallareasinwhichPrometheusisundergoingdevelopmentandcanbeexpectedtoevolve.

Finally,PrometheusisnotbasedonUML.Thiscanberegardedasbeingeitherastrengthoraweakness.Fromthepointofviewofdevelopingamethodologythatiswell-suitedtodesigningagents,wefeelthatnotstartingwithaperspectivethatisveryobject-centrichasbeenagooddecision.Ontheotherhand,UMLisclearlythestandardnotation13,whichmostdevelopersarefamiliarwith.WehavetriedtobuildonaspectsofUMLandObject-Orienteddesignwhereappropriate.Howeverthereareotherapproacheswhichdothistoagreaterextent[45,52].

5Conclusion

WehavebrieflypresentedthePrometheusmethodologyfordesigningintelligentsoftwareagentsandagentsystems.Themethodologyprovidesdetailedguidanceintermsofprocessesaswellasnotations.Itisnotintendedtobeprescriptive,butisratheranapproachwhichhasevolvedoutofexperience,andwhichtheauthorsexpecttobefurtheradapted,refinedanddevelopedtosuittheneedsofagentsoftwaredevelopers.RecentyearshaveseenasubstantialgrowthofactivityintheareaofSEmethodologiessuitedtoanagentprogrammingparadigm,Asthesematureanddevelop,andareincreasinglyusedbeyondtheimme-diatesphereofthedevelopers,weexpectthemtobearfruitintermsofincreaseduseofagenttechnology,andmorewidespreadfamiliaritywithbuildingofagentsystems.

isimportanttonotethatUMLisonlyanotation,notamethodology.However,itisoftenusedtogetherwiththeRationalUnifiedProcess(RUP).

13It

13

Acknowledgements

WewouldliketoacknowledgethesupportoftheAustralianResearchCouncil(ARC)undergrantCO010693414,anditscontinuation,grantLP045348615.

WewouldalsoliketothankJamesHarland,JohnThangarajahandDavidPoutakidisofRMITUni-versity;aswellasRalphR¨onnquist,AndrewLucas,AndrewHodgson,PaulMaisano,andJamieCurmiofAgentOrientedSoftware,aswellasthemanystudentsandworkshopparticipantswhohaveprovidedcomments,examplesandfeedback.

ThePrometheusDesignToolwasinitiallydevelopedbyAnnaEdbergandChristianAndersson.FurtherdevelopmenthasbeenbyClaireHennekamandJasonKhallouf.

References

[1]AAII.dMARSTechnicalOverview.ThedMARSV1.6.11SystemOverview,1996.

[2]F.M.T.Brazier,B.M.Dunin-Keplicz,N.R.Jennings,andJ.Treur.DESIRE:Modellingmulti-agentsystemsinacompositionalformalframework.IntJournalofCooperativeInformationSystems,6(1):67–94,1997.[3]PaoloBresciani,PaoloGiorgini,FaustoGiunchiglia,JohnMylopoulos,andAnnaPerini.Tropos:

Anagent-orientedsoftwaredevelopmentmethodology.TechnicalReportDIT-02-0015,UniversityofTrento,DepartmentofInformationandCommunicationTechnology,2002.[4]B.Burmeister.Modelsandmethodologyforagent-orientedanalysisanddesign.WorkingNotesof

theKI’96WorkshoponAgentOrientedProgrammingandDistributedSystems,1996.[5]P.BurrafatoandM.Cossentino.Designingamulti-agentsolutionforabookstorewiththePASSI

methodology.InProceedingsoftheFourthInternationalBi-ConferenceWorkshoponAgent-OrientedInformationSystems(AOIS-2002),Toronto,2002.Availablefromhttp://mozart.csai.unipa.it/passi/.[6]PaoloBusetta,NicholasHowden,RalphR¨onnquist,andAndrewHodgson.StructuringBDIagents

infunctionalclusters.InAgentTheories,Architectures,andLanguages(ATAL-99),pages277–2.Springer-Verlag,2000.LNCS1757.[7]PaoloBusetta,RalphR¨onnquist,AndrewHodgson,andAndrewLucas.JACKIntelligentAgents

-ComponentsforIntelligentAgentsinJava.Technicalreport,AgentOrientedSoftwarePty.Ltd,Melbourne,Australia,1998.Availablefromhttp://www.agent-software.com.[8]GeoffBush,StephenCranefield,andMartinPurvis.TheStyxagentmethodology.TheInformation

ScienceDiscussionPaperSeries2001/02,DepartmentofInformationScience,UniversityofOtago,NewZealand.,2001.Availablefromhttp://divcom.otago.ac.nz/infosci.[9]GiovanniCaire,FranciscoLeal,PauloChainho,RichardEvans,FranciscoGarijo,JorgeGomez,Juan

Pavon,PaulKearney,JamieStark,andPhilippeMassonet.AgentorientedanalysisusingMES-SAGE/UML.InMichaelWooldridge,PaoloCiancarini,andGerhardWeiss,editors,SecondInterna-tionalWorkshoponAgent-OrientedSoftwareEngineering(AOSE-2001),pages101–108,2001.[10]C.Castelfranchi,F.Dignum,C.Jonker,andJ.Treur.Deliberatenormativeagents:Principlesandar-chitectures.InN.JenningsandY.Lesp´erance,editors,IntelligentAgentsVI,pages3–378.Springer-Verlag,2000.[11]LawrenceCavedonandLizSonenberg.Onsocialcommitment,rolesandpreferredgoals.InInter-nationalConferenceonMulti-AgentSystems(ICMAS),1998.

14Simplifying15Advanced

theDevelopmentofAgent-OrientedSystems,ARCSPIRTGrant,2001-2003.

SoftwareEngineeringSupportforIntelligentAgentSystems,ARCLinkageGrant,2004-2006

14

[12]L.CernuzziandG.Rossi.Ontheevaluationofagentorientedmodelingmethods.InProceedings

oftheOOPSLA2002WorkshoponAgent-OrientedMethodologies,pages21–30,Seattle,November2002.[13]P.R.CohenandH.J.Levesque.Teamwork.Nous,25(4):487–512,1991.

[14]AnneCollinot,AlexisDrogoul,andPhilippeBenhamou.Agentorienteddesignofasoccerrobot

team.InProceedingsofICMAS’96,1996.[15]M.CossentinoandC.Potts.ACASEtoolsupportedmethodologyforthedesignofmulti-agent

systems.InProceedingsoftheInternationalConferenceonSoftwareEngineeringResearchandPractice(SERP’02),LasVegas,2002.Availablefromhttp://mozart.csai.unipa.it/passi/.[16]R.ScottCost,YeChen,TimFinin,YannisLabrou,andYunPeng.UsingcoloredPetri

netsforconversationmodeling.InWorkshoponAgentCommunicationLanguagesattheSix-teenthInternationalJointConferenceonArtificialIntelligence(IJCAI-99),1999.Availablefromhttp://www.csee.umbc.edu/∼jklabrou/.[17]KhanhHoaDam.Evaluatingagent-orientedsoftwareengineeringmethodologies.Master’sthesis,

SchoolofComputerScienceandInformationTechnology,RMITUniversity,Melbourne,Australia,2003.(supervisors:MichaelWinikoffandLinPadgham).[18]KhanhHoaDamandMichaelWinikoff.Comparingagent-orientedmethodologies.InPaoloGiorgini

andMichaelWinikoff,editors,ProceedingsoftheFifthInternationalBi-ConferenceWorkshoponAgent-OrientedInformationSystems,pages52–59,Melbourne,Australia,2003.[19]J.DebenhamandB.Henderson-Sellers.Fulllifecyclemethodologiesforagent-orientedsystems

–theextendedOPENprocessframework.InProceedingsofAgent-OrientedInformationSystems(AOIS-2002)atCAiSE’02,Toronto,2002.[20]ScottA.DeLoach,MarkF.Wood,andClintH.Sparkman.Multiagentsystemsengineering.Interna-tionalJournalofSoftwareEngineeringandKnowledgeEngineering,11(3):231–258,2001.[21]A.DrogoulandJ.Zucker.Methodologicalissuesfordesigningmulti-agentsystemswithmachine

learningtechniques:Capitalizingexperiencesfromtherobocupchallenge.TechnicalReportLIP61998/041,Laboratoired’InformatiquedeParis6,1998.[22]M.ElammariandW.Lalonde.Anagent-orientedmethodology:High-levelandintermediatemodels.

InG.WagnerandE.Yu,editors,Proc.ofthe1stInt.Workshop.onAgent-OrientedInformationSystems.,1999.[23]MartinFowlerandKendall.UMLDistilled:ABriefGuidetotheStandardObjectModelingLanguage

(thirdedition).ObjectTechnologySeries.Addison-Wesley,2003.[24]M.P.GeorgeffandA.L.Lansky.Proceduralknowledge.ProceedingsoftheIEEESpecialIssueon

KnowledgeRepresentation,74:1383–1398,1986.[25]FaustoGiunchiglia,JohnMylopoulos,andAnnaPerini.TheTropossoftwaredevelopmentmethodol-ogy:Processes,modelsanddiagrams.InThirdInternationalWorkshoponAgent-OrientedSoftwareEngineering,2002.[26]NorbertGlaser.TheCoMoMASmethodologyandenvironmentformulti-agentsystemdevelopment.

InChengqiZhangandDicksonLukose,editors,Multi-AgentSystemsMethodologiesandApplica-tions,pages1–16.SpringerLNAI1286,1996.SecondAustralianWorkshoponDistributedArtificialIntelligence.[27]MarcusJ.Huber.JAM:ABDI-theoreticmobileagentarchitecture.InProceedingsoftheThird

InternationalConferenceonAutonomousAgents,(Agents’99),pages236–243,Seattle,WA,1999.

15

[28]Marc-PhilippeHuget.Nemo:anagent-orientedsoftwareengineeringmethodology.InProceedings

oftheOOPSLA2002WorkshoponAgent-OrientedMethodologies,pages41–53,Seattle,2002.[29]Marc-PhilippeHuget,JamesOdell,ØysteinHaugen,Mariam“Misty”Nodine,StephenCranefield,

RenatoLevy,andLinPadgham.Fipamodeling:Interactiondiagrams.Onwww.auml.orgunder“WorkingDocuments”,2003.FIPAWorkingDraft(version2003-07-02).[30]CarlosIglesias,MercedesGarijo,andJos´eGonz´alez.Asurveyofagent-orientedmethodologies.In

J¨orgM¨uller,MunindarP.Singh,andAnandS.Rao,editors,Proceedingsofthe5thInternationalWorkshoponIntelligentAgentsV:AgentTheories,Architectures,andLanguages(ATAL-98),pages317–330.Springer-Verlag:Heidelberg,Germany,1999.[31]CarlosArgelIglesias,MercedesGarijo,Jos´eC.Gonz´alez,andJuanR.Velasco.Analysisanddesign

ofmultiagentsystemsusingMAS-commonKADS.InAgentTheories,Architectures,andLanguages,pages313–327,1997.[32]T.Juan,A.Pearce,andL.Sterling.ROADMAP:ExtendingtheGaiamethodologyforcomplex

opensystems.InProceedingsoftheFirstInternationalJointConferenceonAutonomousAgentsandMulti-AgentSystems(AAMAS2002),pages3–10.ACMPress,2002.[33]E.A.Kendall,M.T.Malkoun,andC.H.Jiang.Amethodologyfordevelopingagentbasedsystems.

InChengqiZhangandDicksonLukose,editors,FirstAustralianWorkshoponDistributedArtificialIntelligence,1995.[34]DavidKinnyandMichaelGeorgeff.Modellinganddesignofmulti-agentsystems.InIntelligent

AgentsIII:ProceedingsoftheThirdInternationalWorkshoponAgentTheories,Architectures,andLanguages(ATAL-96).LNAI1193.Springer-Verlag,1996.[35]DavidKinny,MichaelGeorgeff,andAnandRao.Amethodologyandmodellingtechniqueforsys-temsofBDIagents.InSeventhEuropeanWorkshoponModellingAutonomousAgentsinaMulti-AgentWorld,1996.[36]J¨urgenLind.Adevelopmentmethodformultiagentsystems.InCyberneticsandSystems:Proceed-ingsofthe15thEuropeanMeetingonCyberneticsandSystemsResearch,Symposium“FromAgent

TheorytoAgentImplementation”,2000.[37]MichaelLuck,PeterMcBurney,andChrisPreist.Agenttechnology:Enablingnextgener-ationcomputing:Aroadmapforagent-basedcomputing.AgentLinkreport,availablefromwww.agentlink.org/roadmap,2003.ISBN08327886.[38]NowostawskiM.,PurvisM.,andCranefieldS.Alayeredapproachformodellingagentconversations.

InProceedingsofthe2ndInternationalWorkshoponInfrastructureforAgents,MAS,andScalableMAS,5thInternationalConferenceonAutonomousAgents,Montreal,pages163–170,2001.[39]IanMathieson,SandyDance,LinPadgham,MalcolmGorman,andMichaelWinikoff.Anopen

meteorologicalalertingsystem:Issuesandsolutions.InVladimirEstivill-Castro,editor,Proceedingsofthe27thAustralasianComputerScienceConference,pages351–358,Dunedin,NewZealand,2004.[40]PhilippeMathieu,Jean-ChristopheRoutier,andYannSecq.Towardsapragmaticmethodologyfor

openmulti-agentsystems.InProceedingsofthe14thInternationalSymposiumonMethodologiesforIntelligentSystems(ISMIS),pages206–210,MaebashiCity,Japan,2003.[41]J.Odell,H.Parunak,andB.Bauer.ExtendingUMLforagents.InProceedingsoftheAgent-Oriented

InformationSystemsWorkshopatthe17thNationalconferenceonArtificialIntelligence.,2000.[42]LinPadghamandPatrickLambrix.Agentcapabilities:ExtendingBDItheory.InProceedingsof

SeventeenthNationalConferenceonArtificialIntelligence-AAAI2000,pages68–73,2000.

16

[43]LinPadghamandMichaelWinikoff.Prometheus:Apragmaticmethodologyforengineeringintelli-gentagents.InProceedingsoftheOOPSLA2002WorkshoponAgent-OrientedMethodologies,pages97–108,Seattle,2002.[44]LinPadghamandMichaelWinikoff.DevelopingIntelligentAgentSystems:APracticalGuide.John

WileyandSons,2004.ISBN0-470-86120-7.[45]M.PapasimeonandC.Heinze.ExtendingtheUMLfordesigningJACKagents.InProceedingsof

theAustralianSoftwareEngineeringConference(ASWEC01),2001.[46]DavidPoutakidis,LinPadgham,andMichaelWinikoff.Debuggingmulti-agentsystemsusingdesign

artifacts:Thecaseofinteractionprotocols.InProceedingsoftheFirstInternationalJointConferenceonAutonomousAgentsandMultiAgentSystems(AAMAS’02),2002.[47]DavidPoutakidis,LinPadgham,andMichaelWinikoff.Anexplorationofbugsanddebuggingin

multi-agentsystems.InProceedingsofthe14thInternationalSymposiumonMethodologiesforIntelligentSystems(ISMIS),pages628–632,MaebashiCity,Japan,2003.[48]OnnShehoryandArnonSturm.Evaluationofmodelingtechniquesforagent-basedsystems.In

ProceedingsoftheFifthInternationalConferenceonAutonomousAgents,pages624–631.ACMPress,2001.[49]ArnonSturmandOnnShehory.Aframeworkforevaluatingagent-orientedmethodologies.InPaolo

GiorginiandMichaelWinikoff,editors,ProceedingsoftheFifthInternationalBi-ConferenceWork-shoponAgent-OrientedInformationSystems,pages60–67,Melbourne,Australia,2003.[50]A.vanLamsweerde.Goal-orientedrequirementsengineering:Aguidedtour.InProceedingsofthe

5thIEEEInternationalSymposiumonRequirementsEngineering(RE’01),pages249–263,Toronto,2001.[51]L.Z.Varga,N.R.Jennings,andD.Cockburn.Integratingintelligentsystemsintoacooperating

communityforelectricitydistributionmanagement.IntJournalofExpertSystemswithApplications,7(4):563–579,1994.[52]GerdWagner.AUMLprofileforexternalAORmodels.InThirdInternationalWorkshoponAgent-OrientedSoftwareEngineering,2002.[53]MichaelWinikoff,LinPadgham,andJamesHarland.Simplifyingthedevelopmentofintelligent

agents.InAI2001:AdvancesinArtificialIntelligence.14thAustralianJointConferenceonArtificialIntelligence,pages555–568.Springer,LNAI2256,2001.[]M.Wooldridge,N.R.Jennings,andD.Kinny.TheGaiamethodologyforagent-orientedanalysisand

design.AutonomousAgentsandMulti-AgentSystems,3(3),2000.[55]MichaelWooldridge.AnIntroductiontoMultiAgentSystems.JohnWiley&Sons(Chichester,Eng-land),2002.ISBN047149691X,http://www.csc.liv.ac.uk/∼mjw/pubs/imas/.[56]PınarYolumandMunindarP.Singh.Flexibleprotocolspecificationandexecution:Applyingevent

calculusplanningusingcommitments.InProceedingsofthe1stJointConferenceonAutonomousAgentsandMultiAgentSystems(AAMAS),pages527–534,2002.

17

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- xiaozhentang.com 版权所有 湘ICP备2023022495号-4

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务