Sentient Computing for Everyone - CiteSeerX

5 downloads 73734 Views 262KB Size Report
em, known as. TRIP, whose low-cost, off-the-shelf hardware requirements a nd easy ..... on their physical location (host), their CORBA object reference (or IOR).
SentientComputingforEveryone

Diego LópezdIepiña(1)and Sai-Lai Lo (2) (1) LaboratoryforCommunicationsEngineering,DepartmentofEngineering,Unive Cambridge,Cambridge,UK (2) AT&TLaboratoriesCambridge,24aTrumpingtonStreet,Cambridge,UK

rsityof

Key words:

Context-AwareComputing,Location-AwareComputing,CORBA,

Abstract:

SentientComputinggivesperceptiontocomputingsystemssot hattheycan detect,interpret and respond tcohanging aspects of user contexts The . location attributeoafuser’scontextisosfpecialinterestbecause itmakeshumancomputerinteractions more natural. In the last few years, several sophisticated indoorlocationtechnologies,whichcantrackuserwhereabouts, havebeen developed.However,theyareyettobewidelyadoptedbecause oftheirhigh costandcomplexitiesindeployment,configurationandmaintenance. This paperdescribesanovelvision-basedsoftwarelocationsyst em,knownas TRIP,whoselow-cost,off-the-shelfhardwarerequirementsa ndeasy deploymentfeaturesovercomeothersystems’limitations. Nevertheless,in orderto fosterthedeploymentof “sentientspaces”thatbring services to users wherevertheyareorabouttomoveto,alocationsystem mustalsobe accompaniedbythemiddlewaretofacilitateuser-boundsoftware service activation,migrationanddeactivation.LocALEaddressesthi sissueby providingaCORBA-basedsolutionthatdealswithheterogeneouso bject lifecycleandlocationcontrol.Somedistributedapplications combining TRIP’sandLocALE’scapabilitiesarepresentedtodemonstrat tehatSentient Computing canbm e adereadily availableforeveryoneandevery where.

1.

Mobility

INTRODUCTION

UbiquitousComputing[16]envisionsphysicalspaces,suchas offices, meetingroomsorhomes,tobeaugmentedwithfullyint egratedcomputing devices.Iat imstomakeservicesprovidedbythesed evicesascommonly 1

2

DiegoLópezdIepiña(1)andSai-LaiLo(2)

availableaeslectricity.WithUbiquitousComputing,perso nalcomputersare nolongerthefocusofattention.Instead,thedevic esinthephysicalspace providetheirservicesunobtrusivelyandmaynotrequire thedirect commandsfrom the user. SentientComputing[5]isourapproachtomakeUbiquitousCo mputinga reality.Itstemsfromthebasicideathattomakec omputerisedservices pervasiveinourlife,thedevicesprovidingsuchservi cesmustbegiven perception,i.e.thecapabilityto seeor hearwhatentitiesarearoundthem; whattheseentitiesaredoing;wheretheyareandw hensomethingis happening.Onlythenitispossiblefor theunderlyingcomputingsystemto undertakesuitableactionstomatchtheenduserexpectat ions.Forexample, whenauserentershisoffice,dependingonthetime anddayothe f week,the sentientenvironmentcouldautomaticallyinitiatethe playbackofaspecific kindofmusic.Iafcolleaguelateroncomesintothe roomtodiscusssome projectideas,themusicvolumecouldbeautomaticallyad justedtofacilitate communication.Inordertodoso,SentientComputingm ustcollectdata fromavarietyofsensorsintheenvironmentandac tuponthesestimuli according tporeviously specified userpreferences. Location-AwareComputing[9],whosebehaviourisdetermi nedbythe positionoof bjectsintheenvironment,representsan interestingsubsetofthe SentientComputingparadigmsincelocationios ftenan essentialattributeof thecontext.Thishasmotivatedthedevelopmentosf e veralindoorlocation systemsfeaturingdifferentlocationgranularity,ran gingfromroom-scale resolutionsuchastheinfrared-basedActiveBadge[15], tothemore accurate3Dresolutionofferedbysystemssuchastheult rasound-based ActiveBat[4]otrheradio-based3D-iD[17].Thesesyst emsrequirepeople orobjectstowearanelectronictagthattransmits auniqueidentifiervia infrared,ultrasoundoradiotoanetworkosensors f onthewallsoceilings. r A LocationServer thenpollsandanalysesthedatafromthesensorsa nd makestheinformationavailabletoapplications.These systemsshareseveral drawbacks.Thetagstheyuseneedbatterypowerandare expensive.The infrastructurerequired,anetworkofsensors,iscompl exandexpensiveto installandmaintain.Thesefactorsmaylimittheir practicaluseoutside researchlaboratories.Wehavedevisedanalternativ esensortechnology, calledTRIP,thatprovidesabettertrade-offbetween thepriceandflexibility ofthetechnologyandtheaccuracyotfhelocationd ataprovided.TRIPisa vision-basedsensortechnologythatrecognisesandl ocatesprinted2D circularbarcode tagsusing inexpensive low-resolution CC Dcameras. InordertopromotetheuseotfheSentientComputingpa radigminour livingspaces,iitsnotsufficienttomakecomputings ystemsawareotfhe user’spresence,movementorpreciselocation,itisi mportant thatthese systemsareprovidedwiththecapabilitytoautomatical lyactivateservices

SentientComputingforEveryone

3

onbehalfoftheuserwhentheappropriatecontextualcond Furthermore,itisdesirabletoenableuser-boundservice ashemovesthroughthephysicalspace,andtodeacti whentheuserleavesthespace.Inotherwords,what middlewareinfrastructurethatgivessentientapplicati computingobject’slifecycleandlocationinanetwork frameworkios urmiddlewaresolutiontothisneed.Se theTRIPtechnologyandthedistributedsysteminfras it.LocALEisintroducedinsection4Section . 5descr combiningTRIPandLocALE.Section6summarizessomer Thisifsollowed btyhe conclusionsisnection 7.

2.

itionsaremet. stofollowtheuser vatesuchservices isneededisa onsthecontrolovera .TheLocALE ctions2and3explore tructurebuiltontopof ibessomeapplications elatedresearch.

TRIP: A DOWNLOADABLELOCATIONSENSOR

TRIP(TargetRecognitionusingImageProcessing)[8] isanovelvisionbasedsensorsystemthatusesacombinationofvisualm arkers(2-D ringcodes)andconventionalvideocamerastoidentifytagged objectsinthe fieldofview.RelativelylowCPUdemandingimagepr ocessingand computervisionalgorithmsareappliedtovideoframes toobtainthe identifier( TRIPcode)andpose(3Dlocationandorientation)otfhetarge ts relative ttohe viewing camera. even-parity sectors

1

syncsector

0

2

* 102011221210001 Figure 1.TRIPcoderepresenting number1,160,407

TRIPconstitutesaverycheapandversatilesensorte ringcodesareprintable,andcanthereforebaettached suchabs ooksooffice r stationeries(e.g.stapler).A readincounter-clockwisefashionfromitssynchroni

chnology.Its2-D eventolow-costitems, TRIPcode(seeFigure1), sationsector,represents

4

DiegoLópezdIepiña(1)andSai-LaiLo(2)

13 aternarynumberintherange1-3 (1,594,323).Onlyoff-the-shelfhardware isrequired,i.e.low-resolution CCDcamerasand CPU processing power. TheTRIPsoftwarewillbemadepubliclydownloadablein duecourse. Userswithaweb-camattachedtotheirPCscaneasi lyinstallandrunthis software sensorand hence provide visual awarenessto theircomputers. Whenthe TargetRecognitionAlgorithm isappliedtotheimages,asetof imageprocessingstagesisexecutedinordertodeterm inetheidentitiesand positions(x-ycoordinatesintheimage)whereTRIPco desarespotted.[8] fullydescribesthemathematicsinvolved.Inaddition ,aPoseExtraction Algorithmisemployed.Givenasingleviewofatarg et,thismethod  , ,  t)hat determinesthetranslationvector(t tx, yt, za) ndrotationangles( definetherigidbodytransformationbetweenthecame racoordinatesystem andthetarget-centredcoordinatesystem.Themetho dappliedibs asedonthe POSE_FROM_CIRCLEmethod given i[n3]. TheC++implementationoftheTargetRecognitionAlg orithmprocesses 15640x480pixelsframespersecondonan800MHzPentiumIII.When the targetrecognitionandposeestimationaresimultaneo uslyundertaken,the performanceachievedisabout12Hz.TRIPcodesarerecogn isedaslongas thetarget’splaneorientationanglesarelessthan 70ºanditsimageoccupies atleast20x20pixels.The3Dlocationothe f centreoatf argetrelativetothe viewingcameraisobtainedwithlessthan5%error.A nevenerrorparity check (see Figure 1isu) sed tporeventthe identificat ion ofalse f positives.

3.

TRIP: A DISTRIBUTED

SENSORSYSTEM

Anevent-baseddistributedarchitecturehasbeendevised aroundTRIPin ordertomanipulateanddistributethesensordataprovi dedbythis technology.ThefunctionalityoftheTRIPsystem,i. e.itstargetrecognition andposeextraction,hasbeenencapsulatedbyaCORBA[11] component, named TRIParser.ThiscomponentoffersaUNIX pipe-likeinterfacethat enablesapplicationstoconnectdistributed FrameGrabber components, whichsupply imagesfromcameras,toTRIParsers.ATRIParsermay consumeimagessuppliedbyoneomore r FrameGrabbers TRIP . processing resultsare,bydefault,asynchronouslycommunicatedin anevent-formtoa CORBA NotificationChannel [10], whichis associated with each TRIParser.TheNotificationChannelservesasadecouplerbetweenthe frame analysersand the componentsinterested itnhe results. ATRIParserpushes TRIPevents(seeFigure2)toitsassociated NotificationChannel.Thepartiesinterestedinagi venTRIParser’slocation datasubscribetoitsassociatedchannelandconveya setofconstraintsthat specifytheeventstheyareinterestedinreceiving. TheNotificationChannel

SentientComputingforEveryone

5

undertakesconsumerregistration,eventfilteringand communicationon behalfofitsrepresentingTRIParser.Thefiltercons traintlanguagesupported istheconstraintlanguagedefinedbytheOMGTrading Service.Hierarchical interconnectionsoftheseNotificationChannelscan becreatedinorderto ensuretheefficientandscalabledisseminationotfh eTRIParseroutput.The TRIParseralsoprovidesasynchronousinvocationinte rface( processFrame) thatanalysesasubmittedframeandreturnsthelocati ondatainferredfrom it. Hence,applicationscaninteractwithaTRIParsereit her synchronouslyor asynchronously.However,forefficiencypurposes,anappl icationshould establishdirectcommunicationbetweena FrameGrabber andaTRIParser, and registerasaenventconsumerto the parser’sNot ification Channel. struct TRIPevent { string TRIPcode; // code ternary representation string cameraID; // capturing camera identifier paramsEllipse params; // bull’s-eye’s outer ellipse parameters (x,y,a,b, θ) targetPosition pose; // translation vector from camera origin to target centre targetOrientation angels; // ( ,  ,  ) };

Figure 2.TRIPeventcontents

3.1

TheTRIPDirectoryServer

ATRIPDirectoryServer(TDS)hasbeencreatedwith thepurposeof regulatingtheTRIPcodegrantingprocessandestablish ingmappings betweenreal-worldobjectsandTRIPcodes.Thiscompone ntensuresthe efficientutilisationotfheTRIPcodeaddressspacea nditsclassificationinto categories.TheTDSoffersCORBAinterfacesforthe creation,modification, deletion and retrieval ofboth TRIPcodesand theirc ategories.

3.2

TheSentientInformation Framework

TheSentientInformationFramework(SIF)definesan application constructionmodeltostreamlinesentientapplication development.SIF isolatescontextcaptureandabstractionfromapplication semantics.Athe sametime,ipt rovidesefficientmechanismsforcont extcommunication.Its mainfunctionitsotransformcontextinformationint otheformatsdemanded bytheapplications.SIFisnotconstrainedtoTRIPsi nceitissensortechnologyindependent.Inthisframework,component sarecategorisedinto 3types(seeFigure3):(1) ContextGenerators (CGs),(2) ContextChannels (CCs)and(3) ContextAbstractors (CAs). ContextGenerators encapsulate

6

DiegoLópezdIepiña(1)andSai-LaiLo(2)

sensors,suchaT s RIP,andthesoftwarethatextracts informationfrom them. Theyaresourcesofsensorialevents. ContextChannels ,inourcase implementedasCORBANotificationChannels,receive eventsand,after consumerspecifiedfiltering,passtheeventstothec onsumers. Context Abstractors achievetheseparationocf oncernsbetweencontextsen singand applicationsemantics.Theyconsumetherawsentientd ataprovidedbyCGs (e.g.TRIPcode1234spotted),interpretitscontents(e.g user . Diegospotted) andaugmentit(e.g.Diego’sloginids ipina)toproduc enhancedcontextual eventsthatcanbedirectlyusedbyapplications.Theyc analso correlate otherCAs’oC r Gs’outcomestogeneratetherequired sentientdata.Fora more detailed description oSIF f referto [6]. Context Generator 1

Context Generator 3

Context Generator 2

push events CG3

push events CG2

push events CG1

Context Channel B

Context Channel A

push filtered events

push filtered events

Context Abstractor 1 push events CA1

Application 1

push filtered events

push events CA2

Context Channel C push filtered events

Context Abstractor 2

Context Channel D

pull filtered events

Application 2

Application 3

Figure 3.TheSIFArchitecture

4.

LOCALE:MIDDLEWAREFOROBJECT LIFECYCLE ANDLOCATIONCONTROL

Inordertomakesentientcomputingavailableforever yoneand everywhere,wehave,sofar,describedanewcost-ef fectiveandeasily deployablelocationsensortechnology,TRIP,andase ntientapplication constructionmodel,SIF,fortheefficientmanipulatio nanddisseminationof sensorialdata.However,onequestionstillhastobe answered,i.e.oncea sentientsystemreceivesahighlevelevent(e.g.D iegoentershisoffice),how canthesystemeffectivelytriggertherequiredacti on,i.e.activates, deactivatesomigrates r user-bound a software service?

SentientComputingforEveryone

7

Ourexperiencewithsentientapplicationdevelopmenthas pointedusto theneedforaninfrastructuretostreamlinethelife cyclecontrolofuserassociatedservices.Otherwise,everytimeanewse ntientapplicationis developed,thedistributedcomponentsinvolvedinitso perationhavetobe manually started. This makes sentient application deplo yment very cumbersome.Moreover,user-relatedservicesareoften boundtouser locations,e.g.theactivationoaf nMP3playermustt akeplaceinoneotfhe PCsinaroomwhereauserpresenceids etected.Ther efore,itisdesirableto controlboththelifecycleandlocationofuser-bounds ervicesbya middleware designed forthispurpose. TheLocALE(Location-AwareLifecycleEnvironment) framework[7] definesasimplemechanismformanagingthelifecycl eandlocationof distributedCORBAobjectsresidingonanetwork.Inad dition,ipt rovides load-balancingandfault-tolerancefeaturestotheobje ctswhoselifecycleit manages.Theemphasisofitsdesignisplacedonprovi dingasuitable interfaceforthirdparty object-locationcontrollers T . hesecontrollerscan intelligentlydirectwhenandwherecomponentsarea ctivatedormoved basedontheinputsonuserwhereaboutsandthelocation, loadand capabilitiesofcomputingresources.LocALEoffersanobj ect-lifecycle infrastructure,simplifyingsentientapplicationdeployme ntand enabling CPUintensivesystems,suchaT s RIP,toreusethespar reesourcesavailable in network. a

4.1

LocALEArchitecture

TheLocALEmiddlewarehas3½-tier a architecture(Fig ure4).Itconsists ofclientapplicationsand the following 3typesocom f ponents: – The LifecycleManager (LCManager)providesobject-typeindependent lifecyclecontrolinterfacesandmediatesthelifec ycleoperationsoverany CORBAobjectresidinginalocationdomain.Alocati ondomainisa groupofmachinesonaLANthatarephysicallylocated inthesame place,suchasabuilding,afloororaroom.Everyobje ctcreation, movementordeletionrequestisroutedthroughthisco mponent.This permitstheLCManagertocachethecurrentlocationo efveryobjectina domainandthusactasa forwardingagentthatredirectsclientrequests afterobjectreferencesheldbyclientsarebrokendue toeitherobject movementofrailure.Inthelattercase,theLCManag ertriestorecover the failed object,and,in case osuccess, f returnsth neew objectreference. – LifecycleServer(s) (LCServer)arecontainersoLocALE-enabled f objects thataresubjectedtolifecyclecontrol.Lifecycleope rationsinvokedonan LCManageraredelegatedtosuitableLCServers.Theys ubsumestandard stronglytypedfactoryfunctionalitiesbyprovidinga typespecific

8

DiegoLópezdIepiña(1)andSai-LaiLo(2)

creationmethodwithhard-codedtypes.Furthermore,t heyalsoassist theirlocalobjectsontheirmigrationtootherLCSe rvers.Theycanbe startedeithermanuallyorbythelocalLCManageraft eracreationor migrationrequestarrivesaaltocationwherethere quiredLCServertype doesnotexist.Ineithercase,theyregisterwitht hemanagerbypassing ontheirphysicallocation(host),theirCORBAobject reference(orIOR) and dataspecificttohe type oobjects f they handle. – Type-specificProxyFactories areplacedinbetweenclientsand LCManagers.Theysaveclientapplicationsfromdealin gwiththegeneric objectcreationinterfaceofferedbyanLCManager.Us ingtype-specific interfacesmakesclientcodefarshorterandsimpler tounderstand.With thegenericversion,iafmismatchinthetypeoaf constructorargument occurs,theclientwouldonlyreceiveanerrorartuntimeratherthanat compiletime. Type-specificProxyFactories offertypespecificobjectcreationmethodswiththesameargumenttypesandsem anticsasthe LCServerstheyrepresent.Theymaptypespecificrequest tsothegeneric formatdemandedbyLCManagers.Theyareondemandac tivatedbythe local LCManager. Type A Proxy Factory strongly-typed creation requests LocALE Client 1

… Type X Proxy Factory

… LocALE Client N

Tier 1

generic creation requests

Lifecycle Manager migration, removal & redirection requests

Type A Server lifecycle Lifecycle at Host 1 operations delegation



Type A Lifecycle Server at Host N



Type X Lifecycle Server at Host 1



Tier 2



Type X Lifecycle Server at Host N

Tier 3

Figure 4. LocALE3½-tierarchitecture

TheLocALEarchitectureguaranteescompile-timetypesa fetyofclients withrespecttothelifecyclecontroloftheirservi ces.Clientsfind,through theLCManager,objectreferencestotype-specificproxy factoriesandissue throughthemobjectcreationrequests.Objectmigration anddeletion requestsaredirectlyinvokedontheLCManagerbecause theyareobjecttype independent.TheLCManagerthendelegatesincomingl ifecycleoperations to the appropriate LCServers.

SentientComputingforEveryone

4.2

9

Location-constrained LifecycleControl

OneofthemainadvantagesofCORBA[11]isthatiot fferslocation transparencytoapplications,i.e.im t akesmethodinv ocationsas impleon remoteobjectsaos nlocalobjects.LocALEleverages onCORBA’slocation transparencybutiitsabletocontrol whereservicesarelocated.Itcanalso settheconstraintsunderwhichtheseservicescanl aterbere-located.We thinkthesefunctionsmaybringimportantbenefits.For example,loadbalancing systemsmaywishtoinitiatenewserviceinstances onthehostsof thesameLANwiththelowestprocessingload.Follow -mesentient applicationsmaywanttomoveobjectstiedtoauser’s physicallocationto thenearesthostwiththerequiredcapabilities.LocAL Eallowsapplications tocontrolthelocationofCORBAobjects.Itextends conventionalobject factorieswithadditionaldistributedobjectconstructi onsemantics.The followingtwoattributesareappendedtotheobjectcrea tioninterfaces offered btyhe proxy factories: – Locationattribute( LocSpec):specifies “where”aserviceshouldbe instantiated (or moved to). The formats available fo r location specificationare:(1) hostDN(hostName),(2) roomID(room)and(3) hostGroup(listHostName). hostDNand roomIDareusedwhenthe applicationwantstocreateanobjectonaspecifichos ot irnaspecific room.Bysetting hostNameor roomattribute to “ANY”in eitherotfhese LocSpecsthe , programmercaninstantiatelocation-independent services. The hostGroupformatisusefultospecifyanarbitrarysetofhosts where an objectmay bcereated,e.g.hostsiroom an with a udio capabilities. – LifeCyclecontraints ( LCconstraintsa) ttribute:determineswhetherthe objectcreatedshouldbeconsideredas RECOVERABLEand/or MOVABLE withinthelocationscopeinwhichiis tcreated,i. e.onahost,inaroom orahostgroup.Arecoverableobjectiseitherastate lessoapersistent r objectwhose state can breestored afterfailure. Withrespecttotheabilitytocreateobjectsbasedon thelocation constraintssupplied,theLCManagerprovidesasimilar functionasa conventionalTrader.TheLCManagermatchescliento bjectcreation specificationsagainsttheregisteredobjectLifecycl eServertypesand locations,and delegatesthe operation tsuitable ao L CServer.

4.3

LocALEImplementation

TheLCManagerhasbeenimplementedinC++usingtheCO C++ORBomniORB[1].Itsimplementationmakesextensiv advancedfeaturesprovidedbytheCORBA2.3’sPortableObj (POA).Amongthese,irteliesonthePOAdefinedst

RBA2.3 euseosf ome ectAdapter andardmechanismto

10

DiegoLópezdIepiña(1)andSai-LaiLo(2)

generateLOCATION_FORWARDreplymessages.Thesemessa gesaresent byLCManagerstoclientORBstoindicatethenewloc ationofanobject wherepreviouslyissuedrequestshavetoberedirected. Adetailed descriptionontheimplementationotfheLocALEmiddl ewareias vailablein [7].

5.

TRIP-ENABLEDSENTIENT APPLICATIONS

Thissectiondescribesthreesentientapplications sensingwithLocALE’sobjectlifecycleandlocation demonstratehowourworkstreamlinesthedeploymento and make icatost-effective process.

5.1

1

thatcombineTRIP management.They fsentientsystems

TheLCESentientLibrary

Thissystemaugmentsaconventionallibrarycatalogue systemwith sentientfeatures.Apartfromthetypicalfunctionaliti esexpectedinabook cataloguingsystem,theLCESentientLibraryoffersc ontextualinformation aboutthebooksinourlab.Detailsonthelastseenbook locationandits proximitytootherfixeditemsintheenvironmentare offered.This applicationisanillustrationofTRIP’sversatilityf ortrackinganytag-able entitiesitnhe environment.

Figure 5.LCESentientLibrary snapshot

Everylocationwhereabookmaybelocatedinourlabh witha location-categoryTRIPcode.Similarly, havebeenattachedtobookspines.Periodically,theL 1 The firsttwo applicationsareavailableat:

asbeentagged book-categoryTRIPcodes CElibrarianwanders

http://www-lce.eng.cam.ac.uk/~dl231/#Demos.

SentientComputingforEveryone aroundourlabwithavideocamerarecordingTRIPtagg books.Thesystemautomaticallyupdatesthebookdatabase processingofthebook-sightingvideo.Thisprocessi operationofaVideoFrameGrabber,whichprovidesacce frames,aTRIParser,whichanalysesthoseframes,a Server,wherebookdetailsandcontextualdataarerec FrameGrabberandTRIParsercomponentsareautomaticall LocALE. AwebinterfaceallowsLCEmembersto(1)browseallth categories,(2)listbooksinacategory,(3)obtainboo performkeyword-basedsearchobf ooks.Figure5showsth search with thiswebinterface.

5.2

11 edlocationsand bytheoff-line nvolvesthecosstothevideo nd theTRIPDirectory orded.TheVideo yactivatedby ebook kdetailsand(4) reesultofabook

ActiveTRIPboard

Figure 6.ActiveTRIPboardsnapshot

Thisapplicationaugmentsaconventionalwhiteboardwit hinteractive commandsissuedbyplacingTRIPcodesinthefieldofv iewofacamera pointingathewhiteboard.Someexampleactionsthatc anbetriggeredare: (1)capturewhiteboardsnapshotandemailitsweblinkto peoplecurrently presentintheroom,(2)printoutacopyotfhewhiteboar dsnapshotforeach personintheroom. Theapplicationcomponents:aFram eGrabberanda TRIParserareactivatedviaLocALEeitherwhenaper sonappearsinthe meetingroomorthroughawebinterface(seeFigure6). TheActiveBadge indoorlocationsystemdeployedinourlabisusedtod etermineperson presence.Infuture,themeetingroomwillbepopulatedwi thsufficient camerastocoverallthefieldofviewsoftheroom a, ndsopermitpeople

12

DiegoLópezdIepiña(1)andSai-LaiLo(2)

wearingTRIPcodetagstobedetected.ThroughLocALE, activatedinaload-balancingwaybyrandomlypicking candidatelist.ItfheTRIParserfails,theapplicati becauseLocALE’sfault-tolerancesupportwillrecreateth the available host.

5.4

theTRIParser is oneotfhehostsina onrecoverstransparently eparserononeof

Follow-meAudio

Thisapplication providesmobileuserswithmusicfromthenearest speakers wherevertheyare. Thesourceom f usicisanMP3jukeboxserver whoseoperationiscontrolledbyshowingjukebox-typeTR IPcodestowebcamsattachedtosomeofourlab’sPCs.Apersonalsof twareagent, associatedwitheachlabperson,listensforthatpers on’smovementevents generatedbya PersonLocationMonitorContextAbstractor .This componentobtainspeoplesightingsfromthe ContextChannels ofthe TRIParserscorrespondingtothePCweb-camsspreadth roughoutthe laboratory.FromrawTRIPsightingevents,itgenera tespersonnelpresence andmovementevents.Thepersonalagent,actingasa componentmigration controller,requestsLocALEtomigratetheaudioplaye ar ndMP3decoder componentstothehostnearesttotheuserthatcand eliverthemusic.Asthe userwandersaroundthelocation-awarecomputingenviro nment,themusic followshim.Thestateofthesystemandtimeindex intothecurrentsong persistsasthecomponentsmigrate.Thisapplication makesuseoT f RIP’s trackingcapabilities,SIF’scontextmodellingfeatures andLocALE’s migration support.

6.

RELATED WORK

SONY’sCyberCode[12]isvisual a taggingsystem basedo barcodethatcanbeusedtodeterminethe3Dpositionan taggedobjects.Severalaugmentedrealityapplications basedonthissystem,e.g.thevisitorviewofCyberC museumisaugmentedwithsynthesisedinformation.The ofCyberCodesrequirehigherimageresolutionforthei andlocationthanTRIP.BBC’sfree-d[14]locationsy precisepositionandorientationofstudiocameras,by cameramountedonthebackofaconventionalmovingc circularmarkers,similartoTRIPcodes,placedonthe recordingstudio.Ahardwareimplementationofitsal necessarytoachieverealtimeprocessing.Thesyste reality TV production.Itisexpensive and cumbersome to

2D na square didentifierof havebeenproduced odetaggeditemsina geometricfeatures ar ccuraterecognition stemmeasuresthe usinganauxiliary amerapointingto ceilingofaTV gorithmswas misusedforvirtual deploy.

SentientComputingforEveryone

13

GeorgiaTech’sContextArchitectureproject[2]attempts tomakesentient applicationdevelopmentassimpleasGUIdevelopment.Fo rthatit introducesContextWidgetsthatseparatecontextsensin gfromcontext-use. IthassomesimilaritiestoSIFbutdoesn’ttackleef ficientcontext informationdissemination.Microsoft’sEasyLiving[ 13]projecttriesto createreactivecontext-awarelivingspaceswithoutth euserhavingtowear anylocationtagocomputing r device.Theirapproachtr ackspeoplebasedon colourhistogramswithoutrequiringtheusertowearan ymarker.Thishasa muchheaviercomputationaldemandandproduceslessreli ableresultsthan TRIP.AT&T’sSentientComputingproject[5]aimstorepl acehumancomputerdirectinteraction(throughmouseokr eyboard) byenablingusers toinsteadinteractwiththeirsurroundingspacebased onthepreciselocation andorientationprovidedbytheActiveBatLocationS ystem[4].This concepthasbeen explored with several sophisticated sen tientapplications.

7.

CONCLUSION

TRIP,anovelcost-effectiveandeasilydeployablelo cationsensor technology,hasbeenintroduced.Thissensorrequires onlyinexpensiveand off-the-shelfhardware,whichmakesthecreationof location-awarereactive environments,eveninthehome,anaffordableproposit ion.Allthatis requiredtoaugmentastandardPCwithvisualawarenes isasweb-camand TRIP’sdownloadable software. SIF,anapplicationconstructionmodeltoeasethedev elopmentof distributed sensor-driven systemshasalso been descri bed. LocALE,anobjectlifecycleandlocationcontrolmid dlewarethat streamlinesuser-boundserviceactivation,migrationa nddeactivationand,at thesametime,permitsapplicationdeveloperstoreuset hesparenetworked computingresourcesinaLAN,hasbeenpresented.LocALE complements TRIP’sminimalcostanddeploymentcomplexity.Itisa veryusefultoolfor sentientapplicationsthathavetotriggeruser-relate dservicesinresponseto captured sensordata. To validate our contributions, several TRIP-enabled appli cations, followingtheSIFmodelandleveragingontheLocAL Einfrastructurehave beendevelopedanddescribedinthispaper.Theinitial resultsare encouraging.

14

DiegoLópezdIepiña(1)andSai-LaiLo(2)

ACKNOWLEDGEMENTS DiegoLópezdeIpiñaisverygratefultotheBasqueGov DepartmentofEducationforthesponsorshipohf isPhD also due tA o T&TLaboratoriesCambridge forsponsoring

ernment’s studies.Thanksare the TRIPproject.

REFERENCES [1] AT&TLaboratoriesCambridge,“omniORBC++CORBA ORB” , http://www.uk.research.att.com/omniORB/omniORB.html [2]DeyA.K.,SalberD.,FutakawaMand . AbowdG“An . archite cturetosupportcontextawareapplications”,12thACM’sUIST,1999 [3]ForsythD.,MundyJ.L.,ZissermanA., CoelhoC.,HellerA.andRothwellC.“Invariant Descriptorsfor3-DObjectRecognition and Pose”, IEEE Tr ansactions on Pattern Analysis andMachineIntelligence,Vol.13,No.10,pp.971-991,October1991 [4]HarterA.,HopperA.,StegglesP.,WardAand . WebsterP.“TheAnatomy oC af ontextAwareApplication”,ProceedingsoMOBICOM’99, f August1999 [5]Hopper.A.“SentientComputing”,TheRoyalSocietyCliff ordPatersonLecture,AT&T LaboratoriesCambridge,TechnicalReport1999.12,1999 [6]LópezdeIpiña,D". BuildingComponentsforaDistributedSenti entFrameworkwith PythonandCORBA ", Proceedingsotfhe8thInternationalPythonConference,January 24 27, - 2000 [7]López deIpiña,Da. ndLoS."LocALE:aLocation-AwareLifecyc leEnvironmentfor UbiquitousComputing", ProceedingsoICOIN-15, f February 2001 [8]LópezdIepiñaD.,”TRIP: A Distributedvision-basedSensor System”,TechnicalReport, Laboratory forCommunicationEngineering,Cambridge,September 1999 [9]NelsonG.“Context-AwareandLocationSystems”.PhDThes is.CambridgeUniversity ComputerLab,UK,January 1998 [10] ObjectManagementGroup.“NotificationServiceSpecific ation”,June2000 [11]ObjectManagementGroup.“TheCommonObjectRequestBroker Architecture: ArchitectureandSpecification”,October1999 [12]RekimotoJand . AyatsukaY“CyberCode: . Designing Augmented Reality Environments withVisualTags”,Designing AugmentedReality Environments( DARE2000),2000 [13] ShaferS,etal.“ThenewEasyLiving ProjectatMicr osoftResearch,Microsoft,1999 [14]ThomasGA., . JinJ.,NiblettT.,UrquhartC.“A versa tilecamera positionmeasurement system forvirtualreality inTVproduction”,Proceedingso IBC’97, f September1997 [15]WantR.,HopperA.,FalcãoAand . GibbonsJ“The . Active BadgeLocationSystem”, ACMTransactionsonInformationSystems,Vol.10,No.1.91102, January 1992 st [16] WeiserM.“TheComputerforthe21 Century”. Scientific American,September1992 [17]WerbJ.andLanzlC“. Designingapositioningsystemfor findingthingsandpeople indoors”,IEEESpectrum,pp.71-78,September1998