AGENT BASED SEMANTICGRIDS: RESEARCHISSUES ANDCHALLENGES
OMER F. RANA
∗
AND LINE POUCHARD
†
Abstrat. TheuseofagentbasedserviesinaComputationalGridisoutlinedalongwithpartiularrolesthattheseagents
undertake. ReasonswhyagentsprovidethemostnaturalabstrationformanagingandsupportingGridserviesisalsodisussed.
Agentserviesaredividedintotwobroadategories: (1)infrastrutureservies,and(2)appliationservies.Infrastrutureservies
areprovidedbyexistingGridmanagementsystems,suhasGlobusandLegion,andappliationserviesbyintelligentagents.Usage
senariosareprovidedtodemonstratetheoneptsinvolved.
1. Introdution and Related Work. There hasbeenan inreasein interestreently within the Grid
ommunity[11℄ towardsServie Oriented Computing. Servies areoftenseen asanaturalprogressionfrom
omponent based software development [6℄, and as a means to integrate dierent omponent development
frameworks. A servie in this ontext may be dened as a behaviour that is provided by a omponent for
use by any other omponent based on a network-addressable interfae ontrat (generally identifying some
apabilityprovidedbytheservie). Aserviestressesinteroperabilityandmaybedynamiallydisoveredand
used. Aordingto[7℄,theservieabstrationmaybeusedtospeifyaesstoomputationalresoures,storage
resoures,andnetworksinauniedway. Howtheatualservieisimplementedishiddenfromtheuserthrough
theservieinterfae. Hene,aomputeserviemaybeimplementedonasingleormulti-proessormahine
however, these details may not be diretly exposed in the servieontrat. The granularity of aservie an
varyand aserviean be hosted ona singlemahine, orit maybedistributed. The TeraGrid projet[9℄
provides anexample ofthe use of serviesfor managing aess to omputational anddata resoures. Inthis
projet, aomputationalluster ofIA-64mahines maybeviewedasaomputeservie,for instanehiding
detailsof theunderlyingoperatingsystemandnetwork. Adeveloperwouldinterat withsuhasystemusing
theGT4.0[26℄systemviaaolletionofserviesandsoftwarelibraries.
Web Servies provide an important instantiation of the Servies paradigm, and omprise infrastruture
forspeifyingservieproperties(in XMLviatheWebServiesDesriptionLanguage(WSDL)forinstane),
interation between servies (via SOAP), mehanisms for servie invoation through a variety of protools
and messaging systems (via the Web Servies Invoation Framework), support for a servies registry (via
UDDI), tunnelling through rewalls (via a Web Servies Gateway), and sheduling (via the Web Servies
ChoreographyLanguage). A varietyoflanguagesandsupportinfrastrutureforWebServieshasappearedin
reentmonthsalthoughsomeofthesearestillspeiationsatthisstagewithnosupportingimplementation.
Web Servies play an important role in the Semanti Web [17℄ vision, aiming to add mahine-proessable
information to the largely human-language ontent urrently on the Web" [12℄. A list of publily aessible
WebServies(denedin WSDL)anbefoundat[21℄. Byprovidingmetadatatoenablemahineproessingof
information,theSemantiWebprovidesausefulmehanismtoenableautomatiinterationbetweensoftware
therebyalso providing auseful environmentfor agentsystemsto interat [8℄. The adoptionof moreomplex
representationshemes formetadata, suh asWebONT[13℄, suggest thatthe softwareusing this information
an be more adaptive, and support updates when new information beomes available. The agent paradigm
thereforeprovidesausefulmehanismformanagingandmediatingaesstoWebServies. Variousextensions
of Web servies throughthe agentsparadigm have been disussed by Huhns [8℄the most signiantin the
ontext of Grid omputing inlude self-awarenessand learningapability, the abilityto support anumber of
ontologies, and theformationofgroupsor teams of agents. Conversely,akeyadvantageofusing agentsisto
supportsemantiinteroperability(i.e. interationbetweensoftwaresystemsbasedonpre-agreed,semantially
grounded,denitions). Support oftehnologiessuh asWebONT in theontextof Web Serviesarelikelyto
providetheneessaryoreinfrastrutureforagentstoworkmoreeetivelyin dynamienvironmentssuhas
ComputationalGrids.
2. Role of Agents in Grids. Grid omputing urrently fouses on sharing resoures at regionaland
nationalentres. Generally,these inludelargeomputationalenginesordatarepositories,oftenrequiringthe
usertoaeptusagepoliy statementsfrom theentremanagersand owners. Similarly,resoureownersare
∗
ShoolofComputerSiene,CardiUniversity,UKo.f.ranas.f.a.uk
†
ComputerSieneandMathematisDivision,OakRidgeNationalLaboratory,POBox2008,OakRidgeTN37831-6367,USA
obliged under the poliy to guarantee aess one an external user has been approved. Aess rights to the
resouresaresupported throughX.509ertiateswherebyauserrequiringaess mustpossesaertiate.
Thegrid-proxy-initfuntioninGlobusprovidesamehanismfordelegationhowever,itislimitedinsope,
andprotetedmainlybystandardUnixaessrights. Inthismodel,atrust-hainmustbeestablishedbeforea
proxyrequestanbeaepted. Furthermore,systemadministratorsresponsibleforpartiularresouredomains
areaountableandoperatebasedonthepoliyofthesite. AsGridsystemsembraeservie-oriented
omput-ing,moreopenandexiblemehanismsareneessaryto supportservieprovisionandservieusage,asauser
providingaserviemaynotbelongtoapartiularentre. Hene,multipleprovidersmayoerasimilarservie,
andtheservieusernowhasto seletbetweenthem. Themoreopen perspetiveonGridswherebyservie
providers an be a olletionof entres or individualswould neessitate auser evaluating servie providers
based on anumber of dierent riteria, suh as: hoosing servies whih are best value for money, hoosing
the mostreputable servies, hoosing the most seureservies, or servieswhih havethe highestresponse
(exeution)time,orwhihhavebeenaroundthelongest. Theseriteriaarethereforemorediverseinsope,and
ansupportserviehoiebasedondynami,run-timeattributesofaservie. Weassumetwokindsofservies
to exist within aGrid: (1) oreservieswhihare provided bythe infrastrutureand bytrustedusers, and
(2)user servieswhihan beprovidedby anypartiipantutilising ommonGridsoftwaresuhasOGSA.
Twosuhoreserviesresponsibleformanagingaessto userserviesinlude:
•
Certiate Authority(Seurity Servie): The ertiateauthorityisexternally managed,and used to authentiateserviesbasedontheidentityofaservieprovider. Onlyafewoftheseserviesarelikelyto exist arossaGridand aimedat ensuring that servieprovidersanbeveried. The Certiate
Authorityserviesisalsousedto supportthe developmentof servieontratsbetweenaservieuser
and provider. A simple mehanism based on X.509 ertiates already exists, and additional work
is neessary to extend this to inlude users who requiretemporary ertiates, or may hange their
identity over time. A riteria to be assoiated with suh a servie inludes the risk of aessing a
serviewhihdoesnotpossesaertiate. Inthisontext,theservieusermustnowdeidewhether
to not aept any servie at all, or to hoose onewhih is non-trustable. Suh risk evaluation must
beundertakenwith other deisionsbeingmade bythe servieuserand within alimited time. The
deision making apability needed to undertake suh an evaluation an be supported through agent
systemsandhasbeenasubjetofextensiveresearhastrustmodels [31℄. Theoneptofriskan
bedenedin anumberofdierentwaysforinstane,ahighriskserviemaybeonethat islikelyto
givelow-aurayresults(foranumeriservie),oronethat isprovidedbyanunknownvendor. It is
thereforeimportantto qualifywhatismeantbyriskin apartiularinstane.
•
ReputationServie: EahservieanhaveanassoiatedReputation index, whihisused tolassify how often the providerhas fullled its Servie LevelAgreement (ontrat) in the past, and to whatdegreeofondene. ItispossibleforapartiularservieusertosubsribetomultiplesuhReputation
Serviesandindeedforalientservietolookupthereputationoftheprovidingserviefrommultiple
Reputation providers. The onept of Reputation Servies have been developed in the Peer-2-Peer
omputing ommunity [14℄, and aimed at inreasing aountability within a system of anonymous
peers. Anotheroneptofreputation(intheFreeHavenprojet[15℄)requiresservieownerstoprovide
reeipts (feedbak) to verify the orretness of results obtained from other servies they interat
with. Thesereeiptsareoupledwithserviesthatataswitnesses toensurethatreeiptshavebeen
generated,andtherebyan judgenodemisbehaviour. IntheontextofGridservies,witnessesanbe
externalnodeswhihmonitorthat agivennode hasmetits ServieLevelAgreement, andanverify
thatthefeedbakprovidedbytheuserontheservieproviderisaurate.
A Reputation or Certiate an be used by a lient servie to identify whether to use a partiular servie
provider. Thisondene inagivenservieis importantin theontext ofservie-orientedGridsasitallows
requestingserviesto seletbetweenmultipleproviderswithagreaterdegreeofauray. Agentsprovidethe
mostsuitablemehanismforoeringandmanagingGridservies. Eahagentanbeaservieprovideroruser,
oraninteratwithanexistinginformationservie.
WethereforeassumethatservieswithinaGridenvironmentaremanagedandexeutedviaagents.Itisalso
possibleforeahagenttosupportoneormoreservietypes(seesetion4.2). Weassumethreekindsofagents
to bepresent: (1)Servie Providers, (2) Servie Consumers, and (3)Community Managers(see setion 4.1).
Eah agentmust therefore providesupport for managing a ommunity desription, managing and sustaining
providerandaommunitymanagertoensurethat aservieprovideronformstoitsservieprovisionontrat.
Partiularly importantin Gridsystemsistheroleplayedbymiddleagentsprimarilyservieproviderswhih
do notoer an appliation servie, but at asbrokersto disoverother serviesof interest. The riteria for
serviedisoveryusedbyabrokermayrangefromservietypetoserviereputationandaservieonsumer
maysimultaneouslyinvokeanumberof dierentservieproviders(brokers)toundertakethissearh.
Thepartiularhallengesthereforeinludetheabilitytoassesstheriskassoiatedwithusingaservie,and
provide feedbak to potential usersto evaluate this risk. Middle agentsan support themanagement of risk
withinanagentommunityenablingagentstoombine theuseoftrustedserviesalongwithnewerones.
3. Servie Lifeyle. Eah agent is responsible for managing one or more serviesand eah agent
may utilise anumber of dierent infrastruture serviesto ahieve this. An agent exists within a partiular
ommunity,andutilisesinfrastrutureservies(suhasaseurityorregistrationservie)within itsommunity
rst. A servie lifeyle identies thestages in reating, managing,and terminating a servie. A new servie
may either bereatedby anagent, oraserviemay be assoiated withan agentby auserwhereaess to
theservie is subsequently mediated by theagent. A newservie may also be reatedbyombiningservies
oeredbydierentagentswherebyanagentmanages aservieaggregate. The agent isnowresponsible for
invoking serviesin theorderspeiedin theomposition proess (speiedin aservieenatmentontrat).
One a new servie has been reated, it must be registeredwith its ommunity manager by the agent. A
servieisinitialisedandinvokedbysendingarequesttotheagentmanagingtheservie,whihmayeitheragree
totherequest immediately, oroeraommitmentto perform theservieatalatertime. Servietermination
involvesanagentunregisteringaservieviatheommunitymanager,and removingalldataorrespondingto
theserviestate. Whenanagentneedstoexeuteanaggregateservie,itwill involveinterationswithagents
within multiple ommunities. The manager within eah ommunity is responsible for ensuring that servie
ontratsarebeingadheredto byagentswithinitsommunity. Theabilitytoreateaservieaggregateleads
tothe formationofdynami workowwherebyanagentdeidesat run timewhihother agentitneedsto
interatwithto ahieveapartiulargoal. Consequently,theexatinvoationsequenebetweenserviesisnot
pre-dened,andmayvarybasedontheoperatingenvironmentoftheagentundertakingtheaggregation. The
followingtehnialhallengesaresigniantintheontextofServieLifeyles:
•
ServieCreation: Creatingaserviedesriptionusingastandardformatisanimportantrequirement toenabletheservietobesubsequentlydisovered.Thereationofaserviealsoneessitatesassoiatingtheserviewithanagent. Anagentwouldreeivearequestforanappliationservieandreateanew
instane ofit using theFatory Interfae[7℄. Eah agent thereforeprovidesapersistentplae holder
foranappliationservie. Animportanthallengeinthisontextisdeterminingthenumberandtypes
ofserviesthat shouldbemanaged byasingleagent.
•
Servieadvertisinganddisovery:Registeringaserviewiththeloalommunitymanagermayrestrit aessunlessthere isalso somemehanismtoallowommunitymanagersto interat. Disoveringaserviearossmultiple network basedregistriesbeomes animportantonernand eieny of the
referral and query propagation mehanisms between ommunity managers beome signiant. The
greater the number of partiipantsthat need to be ontated to searh for a servie, the more time
onsumingandomplexthesearhproesswill be. Thenumberofregistriessearhedto ndaservie
of interest beomes an important riteria, as does the mehanism used to formulate and onstrain
thequery. The ability to divide aqueryinto sub-parts whih anbesimultaneouslysentto multiple
registriesisusefulinthisontextalthoughitrestritsthespeiationofaquery.
•
Contratenforement: Theommunity manageris responsiblefor ensuring that arequestfor servie provisionisbeinghonouredbyanagentwithintheommunity. Thereisaneedformonitoringtoolstoverifythataontratisbeingadheredtoalthoughthisrequiresanagenttorevealitsinternalstateto
themonitoringservie. Enforementofaontratalsorequirestheommunitymanagertode-register
theservieortorestritaess toitifitdoesnotmeetitsontrat. Aspreviouslydisussed, itisalso
possibleforaommunitymanagertohangetheriskorreputationindexofsuhaservieandutilise
monitoringtools to periodially update this. Contratenforement must be undertaken based on a
ommunityspeipoliy.
Aserviemayalsoregisterinterestinoneormoreeventtypesviaitsagentortheommunitymanager. Certain
Implementation
Technologies
Infrastructure
Technologies
Existing Codes
and Libraries
Hardware
Platforms
Services
Interfaces
Core Services
Application Services
Java, CORBA, Web Services (WSDL)
Standard Encoding
Name Service, Event Service, Transactions,
Factory Service
Codes in Fortran and C
NoWs, Parallel Machines, Scientific
Instruments, ImmersaDesks
Fig.4.1.TheServiesStak
onlymadeavailabletoaommunity(ortoexternalagents)foraleasedurationthe leaseismonitoredbythe
ommunitymanager. Whentheleaseperiodexpires,theservieagentmusteitherrenewtheleaseordeletethe
servie.
4. ServieTypesandInstanes. Figure4.1illustratesthelayerswithinservieorientedGridsstarting
from the servies themselves (whih an be infrastruture or user servies) and interfaes to these servies
enodedinsomeagreeduponformat. AtpresentnostandardexistswithintheGridommunity,althoughthere
are working groupsin the GGF [11℄ exploring standardinterfaesfor servieswithin apartiular appliation
domain. Existing work on the Common Component Arhiteture (CCA) [10℄ provides a useful preedene
for developing ommon interfae standards. Some of the servies may also wrap existing exeutable odes,
developedin CorFortranrequiringtheusersoftheselegayodestopublishinterfaestotheirode.
Serviesmaysubsequentlybeimplementedusinganumberofdierenttehnologiesandinterfae
deni-tionsusing WSDL maybind to anumberof dierentimplementations. Servieinteration is then supported
throughaninfrastruturethatprovidessupportforservieregistrationanddisovery,distributedeventdelivery
betweenservies,andsupportfortransationsbetweenservies. Currently,thisisprovidedbysystemssuh as
Globus,althoughtheneedforintegratingsuhinfrastrutureserviesfromotherplatforms,suhasEnterprise
JavaBeansorCORBA beomessigniant.
Servies are assumedto beof twoategories: (1) infrastruture serviesprovided viaGlobus/OGSA (for
instane),and(2)appliationserviesprovidedbyagents. ExamplesofinfrastrutureserviesinludeaSeurity
Servie, an AountingServie, aData Transferservie et. Examples ofappliation servies inlude Matrix
solvers, PDE Solvers, and omplete sienti appliations. Agents utilise infrastruture servies on-demand,
and may use typeinformation made available by infrastrutureservies. Agents an also interat with eah
otherbasedonagoaltheyareaimingtosatisfy.
A minimalsetof serviemetadatashould beagreeduponbyallagentswithin aommunity,regardlessof
the appliation domainreferredto as aServies Ontology". Suh anontologywould be used byagents to
disoverotherservieprovidersandservieonsumers,andthetypesof serviestheyoerandbasedonthe
Grid ServiesSpeiation(GSS) [22℄. Termswithin suhan ontologyaninlude theonept of le/servie
title,authors/serviemanager,loations,dates, andmetadataaboutleontentsuhasquality,provenane
et. Eahagentresponsibleforaserviemustalsodeidehowtoproessrequestsbeingmadetoagivenservie
thatitmanages. Theseriteriamaybeenforedbytheommunitymanager,orbasedontheattributesofthe
serviesbeingmanagedbytheagent.
4.1. Servie Interations and Communities. Interations betweenservies forman essentialpartof
ommon operations between servies (suh as o-sheduling operations on multiple mahines). Interations
between agents are onstrained by the paradigm usedsuh as the onept of a virtual marketwhereby
agentsan tradeserviesbasedonaomputationaleonomy[30℄. Animportantaspetofsuh aninteration
paradigmisthatagentsneedtomakedeisionsinanenvironmentoverwhihtheyhavelimitedontrol,restrited
informationaboutotheragents,and oftenalimitedunderstandingoftheglobalobjetivesoftheenvironment
they inhabit. The onept of ommunities beomes important to limit the omplexity of deisions eah
agent needs to make, bylimiting interations to a restrited set of other agents. In the ommunityontext,
agentsmustbeabletorstestablishwhih ommunitiestojoin,andsubsequentlyto deideuponmehanisms
for making their loal state visible to others. Eah ommunity must havea manager entity, responsible for
admittingotheragents,andforensuringthatagentsadheretosomeommonobligationswithintheommunity.
Interation between agents may also be mediated via suh a managerwhereby the manager also ats as a
protooltranslator. Theommunitymanagerisalsoresponsibleforadvertisingthepropertiesofaommunity
toothers,andforeventuallydisbandingaommunityifitisnon-persistent.
Service
Provider
Service
Provider
Service
User
GRIS
Server
GRIS
Server
GIIS
Server
Community
Manager
Community
Manager
MatchMaker
Information
Verification
Service
Service
MatchMaking Service (M)
MatchMaking Service (M)
Fig.4.2.ServieCommunity
Figure 4.2 illustrates the ore servies provided within eah ommunity, and onsists of servie
user-s/providers,aMathMaker(M)whihissupportedviaaveriationandinformationservie,andaommunity
manager. TheMathMakerprovidesanexampleofamiddleagent,failitatinginterationbetweenotherservie
usersand providerswithin theommunity. The information servie aninterat withthe GRIS/GIISserver
andloateotheromputationalresouresofinterestusingtheGlobussystem. Interationbetweentheservie
userand provideris undertaken basedon aommondata representationwhihenables thestateof a given
servietobequeriedatagiventime`t'(anexampleofthisdatamodelforomputationalserviesanbefound
in [23℄). Weassumethat there is asingleMwithin aommunity, although therequestfor math may utilise
dierentriteria. Theavailabilityofaservieovertimeextends from
t < t
urrent(usagehistory)to
t > t
urrent(projetedusage)andinludes
t
=
t
urrent(urrentusage). Availabilityovertimeisjust oneoftheparameters
that mustbesupported in thesystem, forinstane, wealsoonsider availabilityovertheset of servieusers.
Themathmakingservieworksasfollows:
•
EahServieProvidersendsanasynhronousmessagetoapre-denedmathmakingservie`M' (run-ning on a given host) to indiate itsavailability within the loal ommunity. Eah message may betaggedwiththeservietypethatisbeingsupported. Themessageontainsnoother information,and
issenttotheloal`M'.TheidentityofMmaybepre-builtintoeahserviewhenitisreated,ormay
beobtainedfromtheommunitymanageragent(viaamultiastrequestwithintheommunity).
in-doument (see [23℄), and ontainsspeialised keywordsthat orrespond to dynami information that
must be reordedforeveryserviemanaged bytheagent. Thedoument alsoontainsatime stamp
indiatingwhenitwasissued, andanaddressfor`M'.
•
TheservieprovideragentompletesthedoumentobtainingtheneessaryinformationviatheGIIS server(ifneessary),andsendsbaktheformto`M',maintainingaloalopy. Thedoumentontainstheoriginaltimestampof`M',andanewtimestampgeneratedbytheserviemanager. Somepartsof
thedoumentarestati, whileothersanbedynamiallyupdated. Thenewservieisnowregistered
withtheommunitymanager,andanbeinvokedbyaservieuser,untilitde-registerswith`M'.Ifthe
servieisterminatedorrashes,`M'willautomatiallyde-registeritwhenittriestoretrieveanewopy
ofthedoument. Analternativetehniquewould involvea`push'modelwherebyeahservieupdates
Mwith its stateon ahange. Typially, theupdate would be to desribehangesin availability, for
exampleafter areservationhasbeenmadebyaservieuser. However,theupdateouldalsoinvolvea
hangeinapability,forexampleanextraserviebeingaddedtotheloalsystem. Ifapushmehanism
isusedfromtheservietoMthenrepeatedpollingoftheresouresisnotneessary. Itisusefultonote
thattheommunitymanagerdoesnotdiretly maintainanyservieinformationorontentitself, and
interatswithMtoobtaintheneessaryserviedetails.
Agents within a ommunity may need to undertake multiple interations to reah onsensus. For instane,
anagenttryingto disoversuitable serviesmay needto issuemultiple disoveryrequestsbeforeit is ableto
nd a suitable servie. Interation mehanisms between agents therefore may be more omplex, and utilise
autionand negotiationmehanisms,orinterationrules. Theommunitymanagermayprovidemediationin
this proess, by restriting themaximum numberof messageexhanges between agents. The main objetive
beingto enableservieproviderstoenabletheirserviestobemoreeetivelyused.
Apartiularhallenge inthisontextistheabilitytoagreeonaommondatamodelforexhangeservie
apabilitydouments. TheremustbesomeagreementbasedonGSS[22℄,butalsotheabilityofaservieprovider
toidentify additionalpropertiesifavailable intheservieinterfae. Anotherimportanthallengeistoidentify
theomplexityof themath proess(fromasyntaxbasedmath to asemantimathforinstane)and to
enableausertolimittheomplexityofthemathin theirrequestto `M'.
4.2. ServieSemantis. Servieinterationsrequiredenitionsofommontermsthedenitionof
om-mon units when exhangingengineering datafor instane (where one serviemay reports itsresultsin miles,
whiletheservieuserundertakesitsproessinginkilometres). Serviesemantisaregenerallyassumedin
dis-tributedsystemswhereheksontheresultsanbemadebyauser. However,whenserviesinteratdiretly,
itisimportanttoensurethat theresultstheyproduefollowsomepredenedtypes.
Servietypesmaybeabstrattypesdiretlysupportedbyaservie,orderivedtypeswhihareobtained
byextendingorombiningabstrat types. An agentthereforealsopublishes typeinformationassoiatedwith
the servies it supportsenabling servie users (other agents) to undertake the neessary type onversions.
Servietypesanbebasedondatatypessupportedwithintheservieimplementationsuhasfloat,string,
et, or theymaybe appliation relatedsuh asa distanetype ora o-ordinatetype. The servietype
mehanismmaybeextendedintoanontologywhihmayalsoidentifyadditionalattributes,suhaspartiular
instanesoftypes,axiomsfortransformingbetweentypes,andonstraintsontypes.
Thetypemehanismis alsousedfordisoveringotherservies,andforlaunhingspeialistservieswhih
provide apartiular outputtype. The semantis assoiatedwith apartiular typemust also be dened bya
serviehene,aserviewhih usesaderivedtypedistane, must prexit withits servieidentity.
Conse-quently, servies with similartypes but dierentsemantis mayo-exist, and anpublish this information as
partoftheirinterfaedesriptions. Oneexampleofsemantiserviesinludemathematiallibraries(suhasin
theMONETprojet[20℄)withpredenedategorisationofthese numerilibraries. Inthisontexttherefore,a
searhforanumerisolverserviebyauserinapartiularappliationdomainwouldproeedbyontatingone
moremorebrokeragentsandperformmathingbasedonproblemdomain,alongwithvariousnon-mathematial
issuessuh astheuser'spreferenes forpartiularkindsorbrandsof software. Themotivationstemsfromthe
observation thatmanysientistspreferto useserviesfrom partiulardevelopers,adeisionoftendetermined
bytheappliationdomainofthesientist. Thissubjetiveriteriashould thereforebeutilisedwhen searhing
forsuitablenumeri serviesandusedalongwiththeoperationalinterfaetheservieoers.
support softwareinteroperability. There are therefore likelyto be anumberof ommon servies(based on a
generiserviesontology), andanumberof speialist servies(suhasmathematiallibraries,genelustering
software et), whih an only be invoked in a limited way, and by a restrited set of other servies. An
importanthallengeinthisontextistoidentifythegranularityatwhihthesedomainspeiserviesshould
bedesribed,andwhetheradvertisingofserviesshouldberestrited. Alsoimportantistoidentifyhowservies
arossdomains anbedened in ommonwaysforinstane, theuse oflusteringand dataanalysis servies
may be ommon in a number of dierent domains. However, the partiular desription shemes used may
vary. Manyoftheonernsrelatedtothedenitionofontologiesneedstobeundertakenwithinthepartiular
sienti ommunity involvedalthough ways of identifying ommon servies used by a number of dierent
ommunities wouldbeausefulundertaking.
5. Senario. Weillustrate the oneptsoutlined in this paper viaaprojetwhih usesagentsfor
man-aginguseraesstosientiinstrumentsatOakRidgeNationalLaboratory(ORNL).It wasmainlyaimedat
automatingan existing manual proess of approvinguser requests to obtaintime ona mirosope and other
sientiinstruments. TheprojetwasundertakenaspartoftheMaterialsMiroharaterizationCollaboratory
(MMC)[16℄projet,involvingORNLand variousotherpartiipants. Thepurpose ofollaborationwithin the
MMCistoharaterisethemirostrutureofmaterialsamplesusingtehniquessuhaseletronimirosopy,
andX-rayandneutrondiration. Observation,dataaquisition,andanalysisareperformedusinginstruments
suhastransmissionandsanningeletronimirosopes,andaneutronbeamline. Animportantaspetofthe
MMCprojetisthe omputero-ordinationand ontrolof remoteinstrumentation, datarepositories,
visuali-sationplatforms,omputationalresoures,andexpertise,allofwhiharedistributedatvarioussitesarossthe
US.Theroleof ORNLin thisollaboratorywasto provideaess to, andmanagementofexperimentswithin
theHighTemperatureMaterialsLaboratory[18℄. Asientistsisrequiredtoompleteapre-formattedproposal
doument(a part ofthis is illustratedin gure5.1), and pass thisto aentral faility. Basedon thetype of
experiment,andtheinstrumentidentied,thefailityseletsoneormoreexpertstoevaluatetheproposal. The
seletionriteriainvolveseonomifators(suhasindustrialimpattheexperimentislikelytohave),tehnial
fators(suh astypesofmaterialsto beanalysedin theexperiment),safetyfators(suh aswhether theuser
hashadradiationorgeneraltrainingontheinstrument),andredibilityfators(suhaswhatpubliationsthe
user alreadyhas in the eld, why the experiment is being requested et). These fators are weighed by the
expert,and adeisionismade onwhether theproposal to undertaketheexperimentshould begranted. The
projetwasoneivedtoautomatesomeoftheproessinginvolvedinreahingadeisionontheinitialproposal.
It was deidedthat replaingthe expert wasnota viableoption, asthis would involve adetailed knowledge
eliitationfromexistingexperts,andtheeortandtimeinvolvedinsuhanundertakingwouldbesigniant.
Instead,the approahadopted wasto support thedeisionmakingproessof theexpert, and toautomateas
muh analysisoftheproposalaspossible,priortodeliveryoftheproposalto theexpert.
The automation of the urrent system was ahieved using Web based forms, CGI sripts and an agent
development tool. An agent is used to represent every entity involved in the system, and inludes a User
agent, an Expert agent, an Instrument agent, an Experiment agent, and two utility/middle agents, a
Sheduling agentandaFailitator agent. Eah oftheseagentsperformapre-denedset ofservies,whih
must interat to omplete the overall request. Message exhanges between agents an relate to requests for
proposal to be veried, onrmation ordenial of a proposal, and averiation of shedulingrequest. Eah
agentoperatesasanautonomousentity,inthatitmanagesandmakesrequestsforinformationtootheragents,
inordertoahieveagivengoal. Thegoalsarespeiedbythephysialentitieswhiharebeingrepresentedby
theagentsuhasahumanuser(foraUseragent),oraninstrumentexpert(foranExpertagent). Eahagent
thentriestondaset ofserviestobeundertakento reahthegoalithasbeenset. Goalompletionisbased
oneahagenthoosinganinitialationthatwillleaditlosertoitsgoal,anddeterminedbythepre-onditions
foragivenationtobetaken,andpost-onditions(oreets)identifyingtheoutomeofagivenationonthe
agent itself, and itsenvironment. Theagentbasedapproah provides thebest optionformodellingsenarios
wherealargenumberofusers,instrumentsandexpertsano-exist,witheahentityontrollingandmanaging
itsownrequirementsandgoals.
MatML for Materials Property Data [25℄ is used for speifying intrinsi harateristis of materials. In
the DeepView systemdeveloped for the MMC [27℄, an instrument shemahas been designed for instrument
Fig.5.1. Formompletedbytheuser
the purpose and sope of anontology within the ontext of an agent-basedsystemas ourobjetive was to
enableausertoaessaninstrumentandperformaneofthesystemwasofissue[29℄. Withtheseonstraintsin
mind,itwasdeidedthattheoneptsintheontologymustfousonuseofinstrumentsandharateristisof
(human)usersratherthanonpropertiesofmaterialssuhashemialompositionandgeometry(MatML),and
instrument harateristissuh asvendorand resolution (DeepView). For these andother reasons,a domain
ontologyforoursystemwasreatedthatdidnotre-useoneptsin theshemasmentionedabove. Thedomain
ontologyisdividedintofourategories: Users,Experts,ExperimentsandInstrumentsgure5.2illustratesthe
Experimentontology.Termsusedwithintheontologyantakeonanumberofdierentontenttypessuh
asintegers, reals, stringsandonstraintsare dened asranges onthese basitypes. An important onern
wastoidentifymehanismstotranslateexistingtypessupportedintheform,into typesthatouldbediretly
interpreted by the agents. Some attributes in the ontologies utilised by the agents required an appropriate
representationofPhase"(intheInstrumentontology),theoneptofImpat (intheExperimentontology),
andommonwaystoenodetimeanddateinformation. Itwasalsoneessarytoonstrainparametersassoiated
withontologiesmaintainedbydierentagentstoenableinterationbetweenagentroles.
Eah agent in the system undertakes a partiular set of ations to ahieve its role". A role is dened
asa set of goalsthat need to be ompleted by an agent, in agiven ontext. Hene, a Useragent plays the
role of an external user. In the ontext of the MMC, this involves Creating a Proposal" and Aepting a
Proposal". A roleis denedat ahigher levelofabstration thanmethodalls onobjets,orsub-routine alls
insoureode. Inanagentbasedsystem,agivenentity(oragent)anonlyundertakepre-denedroleswhih
determineitsfuntioninagivensoietyofotheragents. Hene,aUseragentin thispartiularontextannot
sheduleoperationsonagiveninstrument,beauseitdoesnotpossessthisasarole. It anmakearequestto
aShedulingagentto undertakesuh anoperation,oralternatively,to ommuniate withanExpert agentto
request agivenshedule to be validated. Agentsan thereforepossesroles and relationshipswitheah other
basedontheirpartiularfuntionin theagentsoiety. Itisassumedinthisprojetthatagentsannothange
Experiment
Start Time
End Time
Start Date
End Date
Material
Requestor
Instrument Type
Approved
Properties
Impact
Type
Safety
Preparation
Previously Requested
UserID
Industry
Academic
Temperature
Environment
Fig.5.2. TheExperiment"ontology
User
Agent
Expert
Agent
Instrument
Agent
Scheduling
Agent
Experiment
Agent
Sub-ordinate
Relationship
Peer Relationship
Fig.5.3.Co-ordination mehanismandroleinterationbetweenollaboratingagentsforMMCresourealloation
AUseragentandanExpertagenthaveapeer-to-peerrelationship,aseahaninitiatearequesttotheother
one. An Instrument agentis asub-ordinateto an Expert agent, asan Expert agent anrequest information
from an Instrument agent, but not vie versa. Roles betweenagents in the MMC system are illustrated in
gure5.3. Eahagentinthesystem,and thepartiularserviesundertakesareasbelow:
•
User Agent: This agent undertakestwo basiservies: CreateProposaland AeptProposal. The CreateProposaltaskinvolvesreadingalefromdisk,basedonagivenUserID,andinitiatingaproposalrequesttoanExpertagent. TheAeptProposaltaskinvolvesverifyingthattheshedulegivenbythe
Expert agent is aeptablethe aeptane riteria is based on heking onstraints dened in the
proposalwiththeinitialrequestmadebytheUseragent.
toundertakeagivenexperiment. RequestInstrumentinvolvesverifyingonstraintsviatheInstrument
agent,basedonavailabilityoftheinstrument,andwhethertheparametersfortherequestedexperiment
arevalidforthegiveninstrument. Onlytwosuh parameterswere identiedasbeingrelevantforthis
prototypethe Operating Temperature" of the instrument, and the Phase ID". Both of these are
omparedwiththeinitialrequestfromtheUseragenttoonrmthatagiveninstrumentansupport
theserangesorabsolutevalues. TheChekSheduleandConrmSheduleinvolvehekingonstraints
ontheavailabilityoftheinstrument,withtheavailabilityoftheexpert. FortheMMC,itisidentiedas
arequirementthataninstrumentandanexpertareavailableoverthesametimeperiod,andthatthis
falls withinthedurationoftherequestedexperiment. TheChekSheduletaskvalidates thatsuhan
overlapexists,and theConrmSheduletask generatesamessageto theShedulingagentonrming
theShedule is valid. TheValidateRequest task isused by theExpert agentto onrm that agiven
requestfromaUseragentdoesnotviolateanyexistingshedulesthat havealreadybeendeided. The
ExpertagentahievesthisbyinteratingwiththeSheduleragent,andhekingthestoredshedules.
•
Instrument Agent: This agentats asa wrapperfor a mirosope, and is used to identify partiular aessparametersrequiredtorequestitforanexperiment.•
Experiment Agent: This agent aninterat with a Useragent oran Expert agentto help them pre-pare an experiment. It supportsthe generation of proposals by aUser agent, and theveriation orhekingof these by an Expert agent. Its primary purpose is to at asa support agentfor helping
formulateproposals,andhelptheUserandExpertagentsnegotiateoverparametersidentiedina
pro-posal. The Experiment agent undertakesthree servies: PrepareProposal,ChekProposalRequest
andValidateProposalRequest.ThePrepareProposaltask isativatedbyaUseragent,andinvolves
the Experiment agenthelping to omplete missing parameters in the proposal being sent to it. The
ChekProposalRequest isused by anExpert agent to ensurethat theparametersrequested in a
pro-posalarevalid. TheValidateProposalRequestisusedbytheExperimentagenttoundertaketheabove
twoserviesbased on itsloal databaseof fats. The databaseis anexternal programthat mustbe
providedbythedeveloperofthesystem.
•
Sheduling Agent: This agent maintains alist of all valid shedules at any time, and an undertake three servies: ReeiveRequest,ConfirmRequestandValidateShedule. The ReeiveRequest taskinvolvesaeptingarequestto verifying aproposalfrom anExpert agent. TheShedulingagentats
asasub-ordinateoftheExpert agent,and providessupportto theExpert agentto reahapartiular
goal. TheValidateSheduletaskinvolvesverifyingtherequestedsheduleagainstitsdatabasetoensure
that therequested shedule doesnotonit any alreadyassigned. The ConrmRequest taskis then
usedtosendamessageto thegivenExpertagenttoonrmordenytherequest.
•
FailitatorandNameServerAgents: Theseagentsatsasutilityagents,mappinganagentloationto itsIP address(fortheNameServeragent),andidentifying serviesthatagivenagentanundertake,insomerespetssimilartoayellowpageservie(fortheFailitatoragent).
•
GlobusGatewayAgent: TheGlobus/OGSAgatewayagentenablesanExperimentagenttolaunhjobs onremoteinstruments. JobmanagementanbesupportedviatheMatMLdatamodel. ThegatewayagentalsomakesuseoftheFailitatorandNameServertoloateandommuniatewithotheragents.
Aprototypesystemwasimplementedusing theZeusagentdevelopmenttools[32℄.
5.1. BarriersandDisussion. Serviessupportedbyagentsneedtointeratwithinfrastrutureservies
providedthroughtoolssuhasGlobus/OGSAalthoughthisisonlyneessarytosupportexeutionofsienti
odes. AgentsmustthereforeinteratwithexistingGridserviesviaoneormoregateways. Performaneissues
beomesigniantwhen deployingagentsto manageserviesasnodiret interationbetweenserviesexist.
ExistingWebserviestehnologiessuhastheuseofSOAPanhavesigniantoverheads,primarilydueto
theHTTPtransportusedandtheparsingofXMLbasedmessagesespeiallywhenenodingdatatypesalong
wit the ontent (a useful study on SOAP performane an be found in [33℄). Standards suh as DIME [19℄
mayprovidesomeperformaneimprovement. Therefore, althoughtheuseofWeb Serviesinfrastruturemay
provideanimportantrouteforawideruseofGridinfrastruture,theperformaneimpliationsintroduedby
suhtehnologies still needto beoverome(the sientiodesurrentlydeployedvia Gridmiddlewarehave
performaneasakeyrequirement). Althoughmanysientistsmaybewillingtorelinquishthisrequirementin
is stillbeingundertakenbehindrewalls. Itis also notapparenthowthe UDDI (servieregistries) areto be
managed,andbywhom. Shouldtherebeafewroot UDDIregistries(likeurrentDomainNameServers),or
should the registrationmehanismbemore distributed? Some of these onerns need to be evaluated in the
ontextofGridregistrationservies(urrentlyutilisingGlobus/OGSA),toenablemoreeetivesharingofGrid
Serviesarossappliations. Wealso seeanumberofsimilaritiesbetweenthePeer-2-Peer(P2P) approah[1℄
and agent systemsas bothfous onservie provision througha deentralised model of yle sharingor le
sharing. Whereasagentsystemsfousonthesemantisof thesharedservies,thefousin P2Psystemsis on
theeieny oftheroutingmehanismused.
Theuseoftheservieorientedapproahfordeployingsientiodesalsorequiresthedelegationofontrol
to a remote servie. This is espeially true when servie aggregation is being undertaken by an agent. It is
thereforeimportant toidentify howownership is delegatedin theontextof suh aompositionproess,and
how aservie ontratmust be dened and enforedfor the aggregateservie. Oneinentivefor supporting
suhanaggregationofserviesmaybebasedontheoneptofavirtualeonomy [30℄wherebyserviesan
have assoiated osts of aess and deployment. Although a useful model (and one whih losely resembles
the urrent usageof omputational resouresat national entres)it is unlearhow serviesare pried, and
whatrolesareneessarywithinsuhaneonomy. Shouldtheserolesbeentrally assignedandmanagedinthe
sameway as index servies are being used today, or anthey be distributed aross multiple sites? Another
loselyrelatedissueisthetypesofrelationshipsthatmustexistbetweenservieswithinsuhaneonomyfor
instane,shouldwebeabletosupportthemyriaddierentnanialtradingshemesthatexistinourmarkets,
andmoreimportantly,whatenforementmehanismsneedtobeprovidedtoensurethatthesetradingshemes
arebeingobserved.
6. Conlusion. Issuesin developingservieorientedGridsareoutlined. Weindiate whyagentsprovide
auseful abstration for managingservies in this ontext, andresearh hallenges that need to beaddressed
to make more eetive use of agents. The need to agree upon ommon data models/ontologies is
signi-ant, and we viewthis as asigniantfuture undertakingto make Grids morewidely deployable. The need
for partiular appliation ommunities to agree and implement ommon servie representations is therefore
importantasistheneedtoagreeuponaommonontologyfordeninggeneriservies. Asystemfor
manag-inguseraesstosientiinstrumentsisoutlinedidentifyingtheserviessupportedandinterationsbetween
agents.
REFERENCES
[1℄ Dejan S. Milojii, Vana Kalogeraki, Rajan Lukose, Kiran Nagaraja, Jim Pruyne, Bruno Rihard, Sami
Rollins,ZhihenXu,Peer-to-PeerComputing,HPLabs,TehnialReportHPL-2002-57,2002.
[2℄ S.J.Poslad, P.Bukle,and R. Hadingham,TheFIPA-OSAgent Platform: OpenSoureforOpenStandards,
Pro-eedingsof Workshop onSalabilityinMAS(Ed: T.Wagnerand O.F.Rana),at AutonomousAgents2000,Barelona,
Spain,2000.
[3℄ DavidDeRoure,NikJennings,andNigelShadbolt,SemantiGrids,http://www.semantigri d.or g/. Lastvisited:
September2002.
[4℄ LuMoreau,AgentsfortheGrid: aComparisonwithWebServies(PartI:TransportLayer),
http://iteseer.nj.ne.o m/m orea u02a gen ts.h tml.
[5℄ A.Avila-Rosas,L.Moreau,V.Dialani,S.Miles,andX.Liu,AgentsfortheGrid:AomparisonwithWebServies
(PartII:ServieDisovery),AgentCitiesWorkshopatAAMAS,Bologna,2002.
[6℄ M.Stevens,Servie-OrientedArhitetureIntrodution,Part1,
http://softwaredev.earthw eb. om/ mir oso ft/a rti le/ 010 720 _101 0451 _1, 00.h tml
[7℄ IanFoster,CarlKesselman,JeffreyM.Nik,StevenTueke,ThePhysiologyoftheGrid: AnOpenGridServies
ArhitetureforDistributedSystemsIntegration,http://www.globus.org/re sea rh/ pape rs/ ogsa .pdf ,2002.
[8℄ MihaelN.Huhns,AgentsasWebServies,IEEEInternetComputing,pp9395,July/August2002.
[9℄ TheTeraGridProjet,http://www.teragrid.org/.Lastvisited:September2002.
[10℄ TheCommonComponentArhitetureForum,http://www.a-forum.org /.Lastvisited:September2002.
[11℄ TheGlobalGridForum,http://www.gridforum.org /. Lastvisited: September2002.
[12℄ A.Swartz,MusiBrainz: ASemantiWebServie,IEEEIntelligentSystems,pp7677,January/February 2002.
[13℄ TheW3CWebOntologiesWorkingGroup,http://www.w3.org/2001 /sw/ WebO nt/ .Lastvisited:September2002.
[14℄ E.TuranandR.L.Graham,GettingtheMostfromAountabilityinP2P,ProeedingsofFirstInternationalConferene
onPeer-to-PeerComputing,IEEEComputerSoietyPress.
[15℄ R. Dingledine, M. Freedman, D. Molnar, The FreeHaven Projet, Massahussets Institute of Tehnology.
http://www.freehaven.net/ . Lastvisited: Otober2002.
[18℄ OakRidgeNationalLaboratory,TheHighTemperatureMaterialsLaboratoryUserProposalPakage,
http://www.ms.ornl.gov /htm lhom e/
[19℄ H. F. Nielsen, H. Sanders, R. Butek, and S. Nash, Diret Internet Message Enapsulation (DIME), June 2002.
http://msdn.mirosoft. om/ libr ary /en- us/d ngl obsp e/ html /dra ft- niel sen- dim e-02 .tx t
[20℄ MONET:MathematisontheNet,http://monet.nag.o.uk/. Lastvisited:September2002.
[21℄ WebServiesinWSDL,http://www.xmethods.net/.Lastvisited:Otober2002.
[22℄ S. Tueke, K. Czajkowski, I. Foster, J. Frey, S. Graham, C. Kesselman,Grid Servie Speiation, Opengrid
ServieInfrastrutureWG,GlobalGridForum,Draft2,7/17/2002.http://www.globus.org/res ear h/p aper s.h tml
[23℄ O.F. Rana, D.Bunford-Jones,D.W. Walker,M. Addis,M. Surridge, andK. Hawik,Resoure Disoveryfor
DynamiClustersinComputationalGrids,InProeedingsofHeterogeneousComputingWorkshop,atIPPS/SPDP,San
Franiso,California,April2001,IEEEComputerSoietyPress.
[24℄ TheGeneOntologyConsortium,http://www.geneontology.o rg/ . Lastvisited: Otober2002.
[25℄ MatMLHome,http://www.eramis.nis t.go v/m atml /mat ml. htm.Lastvisited: Otober2002.
[26℄ Argonne National Laboratory,TheGlobusProjet, SeeWebsiteat: http://www.globus.org/. Lastvisited: Otober
2002.
[27℄ B.Parvin,J.Taylor,G. Cong,M.O'Keefe, M.Barellos-Hof,DeepView: AChannelforDistributedMirosopy
andInformatis,ProeedingsoftheACM/IEEESC99Conferene,Portland,OR,November1999.
[28℄ http://vision.lbl.gov/Pro jet s/De epV iew/ Inst rum ents /In stru ment .dt d.Lastvisited: Otober2002.
[29℄ L.Pouhard,D.Walker,ACommunityofAgentsforUserSupportinaProblem-SolvingEnvironmentinTomWagner,
OmerRana(Eds.),InfrastrutureforAgents,Multi-AgentsSystems,andSalableMulti-Agent Systems,LetureNotes
inComputerSiene1887,SpringerVerlag,2001.
[30℄ R. Buyya, Eonomi Paradigm for Resoure Management and Sheduling for Servie-Oriented Grid Computing,
http://www.buyya.om/e ogr id/.Lastvisited: Otober2002.
[31℄ Variouspapers
5
th
International workshop onDeeption,FraudandTrustinAgent Soieties, atAAMAS2002,Bologna,
Italy.http://wwwist.ip.rm.nr. it/n ews/ wst rust .ht m
[32℄ TheZeusProjet,SeeWebsiteat:http://193.113.209.147/ proj ets /ag ents .htm , 2000.
[33℄ D. Davis and M. Parashar, Lateny Performane of SOAP Implementations, Proeedings of the
2
nd
International
Workshop onGlobalandPeer-to-PeeronLargeSaleDistributedSystems,IEEEInternationalSymposiumon Cluster
ComputingandtheGrid,Berlin,Germany,May2002.
Editedby: DanGrigoras,JohnP.Morrison,MarinPaprzyki
Reeived: August12,2002