HOME

TheInfoList



OR:

In
computer science Computer science is the study of computation, information, and automation. Computer science spans Theoretical computer science, theoretical disciplines (such as algorithms, theory of computation, and information theory) to Applied science, ...
, a mobile agent is a piece of
software agent In computer science, a software agent is a computer program that acts for a user or another program in a relationship of agency. The term ''agent'' is derived from the Latin ''agere'' (to do): an agreement to act on one's behalf. Such "action on ...
combined with data that is able to migrate from one computer to another autonomously and continue its execution on the destination with the ability to interact with other agents there. Rather than a client requesting data and performing actions, a mobile agent is sent to a server to perform those tasks. This paradigm delegates the work from the client and onto the server.


Definition and overview

A ''mobile agent'' is a type of
software agent In computer science, a software agent is a computer program that acts for a user or another program in a relationship of agency. The term ''agent'' is derived from the Latin ''agere'' (to do): an agreement to act on one's behalf. Such "action on ...
, with the feature of ''autonomy'', ''social ability'', ''learning'', and most significantly, ''mobility''. More specifically, a mobile agent is a
process A process is a series or set of activities that interact to produce a result; it may occur once-only or be recurrent or periodic. Things called a process include: Business and management * Business process, activities that produce a specific s ...
that can transport its state from one environment to another, with its data intact, and be capable of performing appropriately in the new environment. Mobile agents decide when and where to move. Movement is often evolved from RPC methods. Just as a user directs a web browser to "visit" a website (the browser merely downloads a copy of the site, or one version of it in the case of dynamic web sites), a mobile agent accomplishes a move through data duplication. When a mobile agent decides to move, it saves its own state ( process image), transports this saved state to the new host and resumes execution from the saved state. A mobile agent is a specific form of
mobile code In distributed computing, code mobility is the ability for running Computer program, programs, code or objects to be data migration, migrated (or moved) from one machine or application to another. This is the process of moving mobile code across t ...
, within the field of
code mobility In distributed computing, code mobility is the ability for running programs, code or objects to be migrated (or moved) from one machine or application to another. This is the process of moving mobile code across the nodes of a network as oppose ...
. However, in contrast to the remote evaluation and code on demand programming paradigms, mobile agents are active in that they can ''choose'' to migrate between computers at any time during their execution. This makes them a powerful tool for implementing distributed applications in a
computer network A computer network is a collection of communicating computers and other devices, such as printers and smart phones. In order to communicate, the computers and devices must be connected by wired media like copper cables, optical fibers, or b ...
. There are two types of mobile agents. The classification is based on their migration path. # Mobile agents with predefined path: these have a static migration path. # Free roaming mobile agent: these have a dynamic migration path. Depending on the present network condition, the mobile agent chooses its path. An open multi-agent system (MAS) is a system in which agents, that are owned by a variety of stakeholders, continuously enter and leave the system.


History and Evolution

In the early 1990s,
General Magic General Magic was an American software and electronics company co-founded by Bill Atkinson, Andy Hertzfeld, and Marc Porat. Based in Mountain View, California, the company developed precursors to "USB, software modems, small touchscreens, to ...
created the Telescript language and environment for writing and executing mobile agents, and described it with the now-popular "
cloud In meteorology, a cloud is an aerosol consisting of a visible mass of miniature liquid droplets, frozen crystals, or other particles, suspended in the atmosphere of a planetary body or similar space. Water or various other chemicals may ...
" metaphor; as described by Andy Hertzfeld: The company was unsuccessful, however.


Advantages

Some advantages which mobile agents have over conventional agents are: * Computation bundles - converts computational client/server round trips to relocatable data bundles, reducing network load. * Parallel processing -asynchronous execution on multiple heterogeneous network hosts * Dynamic adaptation - actions are dependent on the state of the host environment * Tolerant to network faults - able to operate without an active connection between client and server * Flexible maintenance - to change an agent's actions, only the source (rather than the computation hosts) must be updated *Bandwidth conversion which is conversion the bandwidth one host to another host. *Reduces compilation time. One particular advantage for remote deployment of software includes increased portability thereby making system requirements less influential.


References


External links


Seven Good Reasons for Mobile AgentsMobile Agent Technologies
developer of AgentOS agent-based operating system. The inventor of Automatic Thread Migration (ATM).

hosts a center for investigating the security of mobile agents.
AgentLink IIIMobile-C
a multi-agent platform for mobile C/C++ agents.
JADE
an OSS mobile agent framework written in Java.
The Foundation for Intelligent Physical Agents
a standards body that defines an interface for agent-based interactions.

a project to develop a secure mobile agent server (last release 2007).
AgentLink III
{{Authority control Distributed computing architecture fr:Agent mobile