Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Reasons for Migrating Code The principle of dynamically configuring a client to communicate to a server. The client first fetches the necessary software,

Similar presentations


Presentation on theme: "1 Reasons for Migrating Code The principle of dynamically configuring a client to communicate to a server. The client first fetches the necessary software,"— Presentation transcript:

1

2 1 Reasons for Migrating Code The principle of dynamically configuring a client to communicate to a server. The client first fetches the necessary software, and then invokes the server.

3 2 Models for Code Migration Alternatives for code migration. Transfer only the code, with initialization data Executable segment can be transferred Example, applet

4 3 Migration and Local Resources Actions to be taken with respect to the references to local resources when migrating code to another machine ----- GR: establish a global system-wide reference MV: move the resource CP: copy the value of the resource RB: rebind processes to locally available resource UnattachedFastenedFixed By identifier By value By type MV (or GR) CP ( or MV, GR) RB (or GR, CP) GR (or MV) GR (or CP) RB (or GR, CP) GR RB (or GR) Resource-to machine binding Process-to- resource binding example, files Example, database and complete web site Example, device

5 4 Migration in Heterogeneous Systems The principle of maintaining a migration stack to support migration of an execution segment in a heterogeneous environment 3-15

6 5 Software Agents Definition: an autonomous process capable of reacting to, and initiating changes in, its environment, possibly in collaboration with users and other agents. Collaborative agent: agent that forms part of a multi-agent system, in which agents seek to achieve some common goal through collaboration Mobile agent: agent having the capability to move between different machines. Interface agent: agent that assists an end user in the use of one or more applications. (learning) Information agent: agent that manages information from different sources.

7 6 Software Agents in Distributed Systems Some important properties by which different types of agents can be distinguished. Property Common to all agents? Description AutonomousYesCan act on its own ReactiveYesResponds timely to changes in its environment ProactiveYesInitiates actions that affects its environment CommunicativeYes Can exchange information with users and other agents ContinuousNoHas a relatively long lifespan MobileNoCan migrate from one site to another AdaptiveNoCapable of learning

8 7 Challenges in agent systems How can the inherent interdependence between agents be managed efficiently?  Common goals: how to interact through communication, negotiation, coordination, and organizational division of jobs and responsibilities  No common goals: manage and minimize the negative effects of the inherent independence What type of agent control and organization structure is appropriate: centralized? distributed?  Depends on constraints of the environment, the task, the agent What protocol/language should be used as a common base for communication? What capabilities should the agent be given?  Intelligence?

9 8 What should be modeled as an Agent To take advantage of distributed computing resources To coordinate teams of interacting robots To increase system robustness To assist humans To model communities of interacting experts To simplify modeling of complex processes To model processes that are normally conducted by multiple agents

10 9 Agent Technology The general model of an agent platform (adapted from [fipa98-mgt]). Agent communication channel

11 10 Agent Communication Languages (1) Examples of different message types in the FIPA ACL [fipa98-acl], giving the purpose of a message, along with the description of the actual message content. Message purposeDescriptionMessage Content INFORMInform that a given proposition is trueProposition QUERY-IFQuery whether a given proposition is trueProposition QUERY-REFQuery for a give objectExpression CFPAsk for a proposalProposal specifics PROPOSEProvide a proposalProposal ACCEPT-PROPOSALTell that a given proposal is acceptedProposal ID REJECT-PROPOSALTell that a given proposal is rejectedProposal ID REQUESTRequest that an action be performedAction specification SUBSCRIBESubscribe to an information source Reference to source

12 11 Agent Communication Languages (2) A simple example of a FIPA ACL message sent between two agents using Prolog to express genealogy information. FieldValue PurposeINFORM Sendermax@http://fanclub-beatrix.royalty-spotters.nl:7239 Receiverelke@iiop://royalty-watcher.uk:5623 LanguageProlog Ontologygenealogy Contentfemale(beatrix),parent(beatrix,juliana,bernhard)

13 12 Applications for Agents Communities of cooperating robots Web-based agents, electronic personal assistants Agents in entertainment –Interactive agents with roles and personalities Modeling economic and business practice Monitoring agents –Patient, satellite, … Group decision making and problem solving –Concurrent engineering: design and manufacturing Intelligent design assistant –Decision-making support: military logistics, command, control Filtering information, generate plan alternatives, replan when circumstances change, assess hypotheses based on uncertain data

14 13 Issues in Agent-Based Systems Agent architecture Communication frameworks Control Coordination and cooperation Negotiation Reconfigurable/reusable agents


Download ppt "1 Reasons for Migrating Code The principle of dynamically configuring a client to communicate to a server. The client first fetches the necessary software,"

Similar presentations


Ads by Google