- Is situated within an execution environment;
- possesses the following mandatory properties:
Reactive : senses changes in the environment and acts in accordance with those changes.
Autonomous: has control over its own actions.
Goal-driven : is pro-active.
Temporally continuous : executes continuously.
- and others like Communicative ¾ can communicate with other agents;
Mobile : can travel from one host to another;
Learning : adapts in accordance with previous experience;
Believable : appears believable to the end-user.
Mobile Agent Can travel from one system to another, means is nt bound to any environment.
So here are seven good reasons to start using mobile agents:
- They reduce the network load. Distributed systems often rely on communication protocols that involve multiple interactions to accomplish a given task. This is especially true when security measures are enabled. The result is a lot of network traffic. Mobile agents allow us to package a conversation and dispatch it to a destination host where the interactions can take place locally. Mobile agents are also useful when it comes to reducing the flow of raw data in the network. When very large volumes of data are stored at remote hosts, these data should be processed in the locality of the data, rather that transferred over the network. The motto is simple: move the computations to the data rather than the data to the computations.
- They overcoming network latency. Critical real-time systems such as robots in manufacturing processes need to respond to changes in their environments in real time. Controlling such systems through a factory network of a substantial size involves significant latencies. For critical real-time systems, such latencies are not acceptable. Mobile agents offer a solution, since they can be dispatched from a central controller to act locally and directly execute the controller's directions.
-
They encapsulate protocols. When data are exchanged in a distributed system, each host owns the code that implements the protocols needed to properly code outgoing data and interpret incoming data, respectively. However, as protocols evolve to accommodate new efficiency or security requirements, it is a cumbersome if not impossible task to upgrade protocol code properly. The result is often that protocols become a legacy problem. Mobile agents, on the other hand, are able to move to remote hosts in order to establish "channels" based on proprietary protocols.
-
They execute asynchronously and autonomously. Often mobile devices have to rely on expensive or fragile network connections. That is, tasks that require a continuously open connection between a mobile device and a fixed network will most likely not be economically or technically feasible. Tasks can be embedded into mobile agents, which can then be dispatched into the network. After being dispatched, the mobile agents become independent of the creating process and can operate asynchronously and autonomously. The mobile device can reconnect at some later time to collect the agent.
-
They adapt dynamically. Mobile agents have the ability to sense their execution
environment and react autonomously to changes. Multiple mobile agents possess the unique ability to distribute themselves among the hosts in the network in such a way as to maintain the optimal configuration for solving a particular problem.
- They are naturally heterogeneous. Network computing is fundamentally
heterogeneous, often from both hardware and software perspectives. As mobile agents are generally computer- and transport-layer-independent, and dependent only on their execution environment, they provide optimal conditions for seamless system integration.
Let's stop here for introduction to mobile agent, we will continue tommorow for more about agent and its implementation..
Thanks alot... and waiting for ur comments
No comments:
Post a Comment