Article Preview
Top1.0 Introduction
The word agent has found its way into a number of technologies. It has been applied to aspects of artificial intelligence research and to constructs developed for improving the experience provided by collaborative online social environments. It is a branch on the tree of distributed computing (Chess, 1998).
1.1 WHAT ARE MOBILE AGENTS?
Mobile agents are programs that can migrate from host to host in a network, at times and to places of their own choosing. The state of the running program is saved, transported to the new host, and restored, allowing the program to continue where it left off. Mobile-agent systems differ from process-migration systems in that the agents move when they choose, typically through a ‘jump’ or ‘go’ statement, whereas in a process-migration system the system decides when and where to move the running process (typically to balance CPU load). Mobile agents differ from ‘applets’, which are programs downloaded as the result of a user action, then executed from beginning to end on one host (Robert, 1996).
1.2 CHARACTERISTICS OF MOBILE AGENTS?
Agents are software components that are designed and implemented to function as follows:
• Provide services, including carrying autonomous and collaborative computational operations,
• Run asynchronously, and communicate with one another, usually through the exchanging of messages in an agent communication language (ACL),
• Follow the principles of object-orientation, including encapsulating operations and data, decoupled from interfaces with other agents
• Enforce some type of persistent control, such as maintaining distinct processes are interoperable, supporting the exchanging of information and services among multiple systems
• Accommodate some degree of heterogeneity, including such things as differences in programs, programmers, time of development, platforms, and languages (Weisman, 2008).
Agents typically possess several (or all) of the following characteristics; they are:
Agents also tend to be small in size. They do not, by themselves, constitute a complete application. Instead, they form one by working in conjunction with an agent host and other agents. In many ways, agents are of the same scope as applet, small and of limited functionality on their own (Robert, 1996).
1.3 WHY STUDY AGENTS?
Agents make an interesting topic of study because they draw on and integrate so many diverse disciplines of computer science, including objects and distributed object architectures, adaptive learning systems, artificial intelligence, expert systems, genetic algorithms, distributed processing, distributed algorithms, collaborative online social environments, and security, just to name a few.
Agent technology is significant because of the sustained commercial interest surrounding it. Agent technology is also interesting for its potential to solve some nagging productivity problems that pester almost all modern computer users. Many agents are meant to be used as intelligent electronic gophers (automated errand boys). Tell them what you want them to do (search the Internet for information on a topic), or assemble and order a computer according to your desired specifications and they'll do it and let you know when they've finished (Robert, 1996).