Monday, May 9, 2016

What is Software Agent

What is Software Agent?

One of the new paradigm in software engineering is the paradigm of software agents. However actually, in theory, have long existence revealed by researchers, especially in the field of Artificial Intelligence. Nowadays with the development of computer network technology, including the Internet therein, the paradigm needs software and programs that can perform tasks delegated to them independently, has intelligence, and ability to move in a computer network environment, is very urgent. Here, the role of software agents to be something that can not, should exist to address some of the problems that arise as mentioned above. This paper will discuss the software agent technology, both in theory and practical review, and also describes the application of agent technology in various fields of research.

1. INTRODUCTION
Today commonly used vocabulary agent, both in the field of informatics and computer science, such as software engineering, artificial intelligence (AI), distributed system, etc., as well as in other related fields such as industry, manufacturing, business, electronic commerce, etc. The popularity of the use of agent technology in various fields of knowledge does not mean to make a clear definition of agent. But it makes less and less clear definition of agent, because each researchers attempted to define the agent in accordance with the background knowledge they have. However until now there is no agreement of the researchers on the formal definition of what is called the agent. Consequences arising from the absence of a consensus definition agent is, the emergence of use agent with a banner that vary, although is sometimes the same, or there are no significant differences in it, example is the use of words, intelligent agents, agent technology, software agents, autonomous agent, or agent. In this paper we use the word agent and a software agent to represent some of the vocabulary of the above. In this paper will be discussed on agent technology, both in theory and practical review, and also describes the application of agent technology in various fields of research. The organization of this paper is as follows. The explanation we start with the history, background and definition of agent (parts 1 and 2), with the aim that we can equate the initial perception of the agent we talked about. After also described in detail on the characteristics, the areas associated with agent (parts 3 and 4). In section 5 will
discussed several related fields of science and influential in the software agent. And in section 6 will be explained about the benefits obtained in the framework of the use of software agents. Log in to the 7, will be discussed on the general architecture of the software agent. Then will discuss the issues of methodology and tools in software development agent in section 8. Research and applications relating to the software agent will be described in more detail in section 9, and continued on the 10th with an explanation of the agent software standardization efforts and organizations that support in that direction. This paper concludes with a summary and a list of pointers or resource associated with software agents.
http://www.qer.us/2016/05/what-is-software-agent.html


2. HISTORY AND BACKGROUND SOFTWARE AGENT
According Nwana [Nwana, 1996], the concept of agent has been long known in the field of AI, precisely introduced by a researcher named Carl Hewitt [Hewitt, 1977] with concurrent actor his model in 1977. In his model Hewitt theorized about an object that he calls the actor, who has the characteristics of master himself, interactive, and can respond to the messages that come from other similar objects. From various studies related to the above, then was born the branch of a large which is a derivative of AI that is Distributed Artificial Intelligence (DAI), which among other things oversees the areas of research, Distributed Problem Solving (DPS), Parallel Artificial Intelligence (PAI), and Multi-Agent system (MAS). This period is known for the first generation of future research software agent, ie the period from 1970 to 1990. In general, the concentration of research in this period directed towards: internal modeling agent symbolically, macro issues regarding interaction, coordination, and communication among agents within the framework of MAS. The main objective is to analyze, design, and integrating the system within the framework of an agent that can collaborate with each other. Various studies conducted on the first generation (1970-1990) was summarized in a complete and well-organized in books edited by Bond and Gasser [Bond et. al., 1988], Gasser and Huns [Gasser et. al., 1989], and Chaib-draa [Chaib-draa et. al., 1992]. Then the second generation period of the study agent is the period of 1990 to date. Concentration of research on this period in particular is on: the development and study of the theory agent (agent theory), architecture agent (agent architecture) and the programming language used (the agent language). Well summarized in books and papers by Wooldridge and Jennings [Wooldridge et. al., 1994], [Wooldridge et. al., 1995], and [Wooldridge et. al., 1996].

3. DEFINITIONS AND CHARACTERISTICS SOFTWARE OWNED BY AGENT
3.1. Definition of Software Agent

First of all let's start defining agent of the dictionary meaning. In the Webster's New World Dictionary [Guralnik, 1983], the agent is defined as:
A person or thing that acts or is capable of acting or is empowered to act, for another. Here there are two points that we can take:
  • Agent has the ability to perform a task / job.
  • Agent perform a task / work in the capacity for something, or to someone else.
Withdrawn from the points above Caglayan [Caglayan et al., 1997] defines a software agent as:
An entity is a computer software that allows the user (users) to delegate tasks to him independently (autonomously). Then some other researchers have added one more point, namely that the agent should run within the framework of the network environment (network environment) [Brenner et. al., 1998]. Definition agent of other researchers are essentially similar, although there are add attributes and characteristics of the agent into the definition. A complete definition of agent and Compare, summary by Franklin in his paper [Franklin et. al., 1996].

3.2. Characteristics and Attributes Software Agent
To deepen the understanding of the software agent, functions, roles, and associated software are fundamental differences existing programs, the following will be explained about some of the attributes and characteristics possessed by a software agent. Of course not all of the characteristics and attributes are summarized in a single agent (see section 4 concerning the classification of software agent). In essence the list of characteristics and attributes below are the results of a survey of the characteristics possessed by agents
that exist at the moment.

  1. Autonomy: Agents can perform tasks independently and is not affected directly by the user, the other agent or by the environment (environment). To achieve the objective in performing their duties independently, agents must have the ability to control every action they do, both out of action as well as into [Wooldridge et. al., 1995]. And one more important thing that supports autonomy is a matter of intelligence (intelligence) of the agent.
  2. Intelligence, Reasoning, and Learning: Each agent must have a minimum standard to be called agent, namely intelligence (intelligence). in concept intelligence, there are three components must be present: internal knowledge base, reasoning ability, based on a knowledge base that is owned and learning ability to adapt in a changing environment.
  3. Mobility and Stationary: Especially for mobile agent, he must have the ability that is characteristic of the highest he has that mobility. The opposite of that is stationary agent. However both still have the ability to send messages and communicate with another agent.
  4. Delegation: As its name suggests and as we have already discussed in the definitions section, the agent moves within the framework of carrying out the tasks ordered by user. The phenomenon of delegation (delegation) are the main characteristics of a program called agent.
  5. Reactivity: Characteristics of the other agent is the ability to be able to quickly adapt to any changes in the information contained in an environment (environment). That environment may include: another agent, the user, the information from the outside, etc. [Brenner et. al., 1998].
  6. Proactivity and Goal-Oriented: The nature of proactivity might say is a continuation of the nature of reactivity. Agent not only required to adapt to changes in the environment, but also must take steps to resolve any initiatives to be taken [Brenner et. al., 1998]. For the agent to be designed own goal (goal) is clear, and is always oriented to the purpose to which it aspires (goal-oriented).
  7. Communication and Coordination Capability: Agent must have the ability to communicate with the user and also the other agent. Problems of communication with the user is entered into the user interface and device problems, while the issue of communication, coordination, and collaboration with other agents is a central problem of research Multi Agent System (MAS). However to be able to coordinate with other agents in the line of duty, necessary standard language to communicate. Tim Finin [Finin et al., 1993] [Finin et al., 1994] [Finin et al., 1995] [Finin et al., 1997] and Yannis Labrou [Labrou et al., 1994] [Labrou et al., 1997] is a researcher software agent that is a lot involved in research on language and communication protocols between agent. One of their products is the Knowledge Query and ManipulationLanguage (KQML). This then is still associated with communication between the agent is Knowledge Interchange Format (KIF).

4. CLASSIFICATION SOFTWARE AGENT
4.1. According Characteristic Classification Software Agent Owned
Classification techniques pioneered by the agent according to the characteristics of Nwana [Nwana, 1996]. According Nwana, agents can be classified into seven based on its characteristics.

  1. Collaborative Agent: Agent who has the ability to perform collaboration and coordination between agents within the framework of Multi-Agent System (MAS).
  2. Interface Agent: Agent who has the ability to collaborate with the user, performs the function of monitoring and learning to meet the needs of the user.
  3. Mobile Agent: Agent who has the ability to move from one place to another, and independently perform tasks of his new place, in a computer network environment.
  4. Information and Internet Agent: Agent who has the ability to surf the Internet for searching, filtering, and presentation of information to the user, independently. Or in other words, to manage the information in the Internet network.
  5. Reactive Agent: Agent who has the ability to be able to quickly adapt to a new environment where it is located.
  6. Hybrid Agent: We do have five classifications agent. Then the agent who has characteristic which is a function of the characteristics that we mentioned earlier is entered into the hybrid agent.
  7. Heterogeneous Agent System: In an environment of Multi Agent System (MAS), if there are two or more hybrid agents that have different abilities and characteristics.

No comments:

Post a Comment