Download presentation
Presentation is loading. Please wait.
1
Outline : Motivation & background Mobile agents and enterprise computing Algebra of itineraries Implementation and applications Demo Scripting Mobile Agents to Support Enterprise Applications
2
Mobile Agents 4 Agent 4 Agent: convenient metaphor for software system/component which acts on user’s behalf; situated in an environment and exhibits behaviour which can be viewed as pro-active, autonomous, communicative, persistent,... 4 Mobile agent 4 Mobile agent: software component (code, data, execution state) which can perform tasks by moving from one place to another (own volition/invited) and exhibits “agentness” 4 Needs software support for platform independent execution: e.g. Java “write once, go anywhere” 4 More than a dozen mobile agent toolkits: Aglets, Concordia, Telescript, Grasshopper, …
3
Mobile Agents … more 4 Some general applications: reduce network load, encapsulate protocols, adapt by moving, offload computations from mobile computers, proxy, 4 Mobile agent applications: network management, electronic commerce, distributed data retrieval, workflow management, community-ware, supply- chain management, groupware, parallel processing [no killer but unifier] 4 Mobile agent standards: OMG’s MASIF, FIPA
4
Mobile Agents … more 4 Mobile Agent: “program that moves across a computer network doing some computation” 4 MagicCap: “A distributed computing environment in which agent processes direct their own movement through a computer network. Place processes provide a computing context within which agent processes are interpreted.”
5
Technological trends 4 Networked enterprise 4 Dynamic ad hoc virtual communities 4 Peer to peer computing model
6
ITAG: Aim 4 A high-level language for reasoning with and programming the mobility behaviour of agents: –encourage separation of concerns: mobility, behaviour and task code details –structuring of mobile agent applications –economy of expression of mobility behaviour –identification and reuse of patterns in mobility behaviour
7
Mobile agents in the enterprise
8
An Algebra of Itineraries 4 Itinerary: describes the places an agent visits, the tasks/actions to be performed at each place, and the order of such traversal 4 Simple object-oriented model of agent: –mobile agent = state + action + mobility
9
Operators 4 Agent Movement 4 Parallel Composition 4 Sequential Composition 4 Independent Nondeterminism 4 Conditional Nondeterminism 4 Placement Operations and Language
10
Examples 4 Meeting Scheduling 4 schedule meeting among parties p,q,r,s and h (the initiator) 4 Sales Order Processing –us_sc = US stock control –asia_sc = Asian stock control –mat = raw materials seller –man = product manufacturer –ext = external product seller
11
Examples of Itinerary Commands 4 [A,Paris,readData] || [A,England,readData] [A,Australia,saveData] 4 [A,Sydney,priceCheck] : [A,Canberra,priceCheck] : [A,Brisbane,priceCheck] : [A,Tasmania,priceCheck] [A,home,showBestPrice] 4 [A,sales,contactMgr] | [A,engineering,contactMgr] | [A,research,contactMgr] | [A,customerservice,contactMgr] [A,headoffice,showResults] 4 Voting 4 Voting:
12
Features of the Itinerary Language not Supported 4 Places in an atomic activity that are a result of a function 4 The non-deterministic operator is ignored 4 The sequential operator does not have an associated method. The parallel operator does. –[A,melb,getInfo] || [A,syd,getInfo].{comb1}[A,melb,getInfo] –[A,melb,getInfo] || {combo1} [A,syd,getInfo]
13
Limited English Natural Language 4 Acts as a bridge between the user of the system and the raw itinerary language. 4 Much more understandable 4 May sometimes act as a shortcut command
14
Limited English Natural Language 4 move A to p doing a[A,p,a] 4 Then. 4 Otherwise: 4 Or| 4 parallel with|| 4 then using method.method 4 otherwise using method:method 4 or using method|method 4 parallel with using method||method 4 tour [agent] to [locations] in (series | parallel) doing [method] 4 tour [agent] (one of | if needed) [locations] doing [method]
15
Examples of Natural Language Commands - Voting (move V to p do vote) then (move V to q do vote) then (move V to r do vote) then (move V to s do vote)) then (return V do tabulate) then ((move V to p do announce)in parallel with (move V to q do announce)in parallel with (move V to r do announce)in parallel with (move V to s do announce)Alternatively: tour V to p,q,r,s in series do vote) then (return V do tabulate) then (tour V to p,q,r,s in parallel do announce)
16
Overall Design of the System
17
Grasshopper 4 Agent development toolkit 4 Agents –a self-contained software component responsible for autonomously carrying out one or multiple tasks. 4 Agencies –the run-time environment for Grasshopper. 4 Regions –a central location at which all agencies are registered in. 4 Places –a logical entity inside a Grasshopper agency.
18
Grasshopper at Work 4 Master - Slave paradigm 4 Intermediary object - proxy
19
Scenario 1: Serial operations
20
Scenario 2: Parallel operations
21
Scenario 3: Conditional operations
22
Enterprise applications 4 Meeting scheduling (tour M to p, j, r, s in series do ask) then (return M do finalize) then (tour M to p, j, r, s in parallel do inform) 4 Parallel processing ((move D to p do job1)in parallel with (move D to j do job2)in parallel with (move D to r do job3)in parallel with (move D to s do job4)) then (return D do combine_results) 4 Information gathering tour I if needed to db1, db2, db3 do search using found
23
Mobile agents & CSCW 4 Ad hoc virtual communities –Redeployment of components with agents to support distributed activities –Scripting approach –Web-based facility, control and coordination centre 4 Peer-to-peer computing –Peer identifiers
24
Live Demonstration Live Demonstration
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.