Google
 
   
Login
Username:

Password:


Lost Password?

Register now!
Search
Main Menu
top books
Polls
What do you think about php-deluxe.net?
Excellent!
Cool
Hmm..not bad
What the hell is this?
encyclopedia
recommendation
compare webbrowser
Freenet DSL
Who's Online
8 user(s) are online (8 user(s) are browsing encyclopedia)

Members: 0
Guests: 8

more...
browser tip
Unix Befehle
manual of unix befehle
recommendation!
Sponsored
partner

Software agent

In computer science, a software agent is software that acts as an agent for another as in a relationship of Agency (law). When several agents act they may form a multi-agent system.

Some software agents are claimed to be autonomous being self-contained and capable of making independent decisions and taking actions to satisfy internal goals based upon their perceived environment. Such claims are controversial. All software agents in important applications are closely supervised by people who start them up, monitor and continually modify their behavior, and shut them down when necessary. Adaptive software agents are refered to as intelligent agents.

For software agents to work together efficiently they must share semantics of their data elements. This can be done by having computer systems publish their Metadata.

=Definition=

The term Agent can a kind of software abstraction, an idea, or a concept, such as like OOP terms like methods, functions, and objects. Being a high-leveled software abstraction, an agent provides a convenient and powerful way to describe a complex software entity, and is capable of acting exactingly in order to accomplish tasks on behalf of its user. But unlike objects, which defined in terms of methods and attributes , an agent is defined in terms of its behavior.

For an end-user, an agent is a program that assists people and acts on their behalf. For a whole dedicated system, an agent is situated within an execution environment, possessing both mandatory properties like reactive, autonomous, goal-driven, and orthogonal properties like communicative, mobile, learning .. etc. The birth and development of agent s technology of the software are results that the artificial intelligence combined with network technology, it is a special procedure , a procedure finishing the work of appointing for the user, the difference of tasks according to appointing, its function , the characteristic and operation way will be different to some extent. Agents may be classified by their mobility as either deliberative or reactive. Along several ideal and primary attributes which agents should exhibit: autonomy, learning and cooperation. by their roles (preferably, if the roles are major ones)etc. Software agents can have following features: Autonomy, Goal-driven, Reactive, Temporally continuous , Communication, Learning.

Agent makes things easier by enabling users to focus on the important and essential properties of a problem, to which users should pay their major attention, and hides the incidental components of that problem, which users don t need to understand, or to worry about. Thus said, Agents provide a new way of managing complexity because they provide a new way of describing a complex system or process. It is easier to define a system in terms of agent-mediated processes by using agents.

=History=

The concept of an agent can be traced back to Actor model (Hewitt, 1977) - A Self-contained, interactive and concurrently-executing object, possessing internal state and communication capability.

To be more academic, software agent systems are a direct evolution from Multi-Agent Systems (MAS). MAS evolved from Distributed Artificial Intelligence (DAI), Distributed Problem Solving (DPS) and Parallel AI (PAI), thus inheriting all characteristics (good and bad) from DAI and AI.

John Sculleys 1987 Knowledge Navigator video portrayed an image of relationship between end-users and agents. Being an ideal first, this field experienced a series of unsuccessful top-down implementation, instead of piece-to-piece, bottom-up approach. Range of agent types is now broad(from 1990) WWW, Search engines,etc.

Everything is now an agent.

=Factors=

  • Agent Machinery - Engines of various kinds, which support the varying degrees of intelligence
  • Agent Content - Data employed by the machinery in Reasoning and Learning
  • Agent Access - Methods to enable the machinery to perceive content and perform actions as outcomes of Reasoning
  • Agent Security - Concerns related to distributed computing, augmented by a few special concerns related to agents
  • The agent uses its access methods to go out into local and remote databases to forage for content. These access methods may include setting up news stream delivery to the agent, or retrieval from bulletin boards, or using a spider to walk the Web. The content that is retrieved in this way is probably already partially filtered by the selection of the newsfeed or the databases that are searched. The agent next may use its detailed searching or language-processing machinery to extract keywords or signatures from the body of the content that has been received or retrieved. This abstracted content (or event) is then passed to the agents Reasoning or inferencing machinery in order to decide what to do with the new content. This process combines the event content with the rule-based or knowledge content provided by the user. If this process finds a good hit or match in the new content, the agent may use another piece of its machinery to do a more detailed search on the content. Finally, the agent may decide to take an action based on the new content; for example, to notify the user that an important event has occurred. This action is verified by a security function and then given the authority of the user. The agent makes use of a user-access method to deliver that message to the user. If the user confirms that the event is important by acting quickly on the notification, the agent may also employ its learning machinery to increase its weighting for this kind of event.

    =Applications==

    ==Buyer Agents (Shopping Bots)==

    These bots help Internet surfers find products and services they are searching for. For example, when a person surfs for an item on [http://www.ebay.com eBay], at the bottom of the page there is a list of similar products that other customers who did the same search looked at. This is because it is assumed the user tastes are relatively similar and they will be interested in the same products.

    ==User Agents (Personal Agents)==

    These agents are meant to carry out tasks automatically for the user. For example, some bots sort emails according to the user s order of preference, assemble customized news reports (e.g. [http://www.newshub.com newshub]), or fill out webpage forms with the user s stored information.

    ==Monitoring-and-surveillance (Predictive) Agents==

    These agents are used to observe and report on equipment, usually computer systems. For example, the agents keep track of company inventory levels, observe competitors prices and relay them back to the company, watch stock manipulation by insider trading and rumors, etc.

    ==Data Mining Agents==

    This agent uses information technology to find trends and patterns in an abundance of information from many different sources. The user can sort through this information in order to find whatever information they are seeking. An example of this class of bot would be a data mining agent that detects market conditions and changes and relays them back to a user/company so that the user/company can make decisions accordingly. For example, the agent may detect a decline in the construction industry for an economy; based on this relayed information construction companies will be able to make intelligent decisions regarding the hiring/firing of employees or the purchase/lease of equipment in order to best suit their firm.

    ==Other examples==

    Some other examples of current Intelligent agents include some Spam (e-mail) filters, game bot, and server monitoring tools. Search engine indexing bots also qualify as intelligent agents. More examples can be found at [http://www.botspot.com BotSpot].

    *user agent - For browsing the World Wide Web () *Mail Transfer/Filtering Agent - For serving E-mail, such as Microsoft Outlook . Why It communicates with the POP3 mail server, without users having to understand POP3 command protocols. It even has rule sets that filter mail for the user, thus sparing them the trouble of having to do it themselves.

    *SNMP agent *DAML - Defence Agent Markup Language *Ontology Web Language

  • Daemon (computer software)s in Unix-like systems. See the mascot for BSD systems. CTSS first named daemons; see also Maxwell s demon.
  • *In Unix-style networking servers, httpd is an HTTP daemon which implements the Hyper-Text Transfer Protocol at the root of the World Wide Web *Management agents used to manage telecom devices

    ==Outline of an agent==

    --- the following content is based on Ch2 of An introduction to multiagent systems by Michael Wooldridge ---

  • Definition of Agent:
  • An agent is a computer system that is situated in some environment, and that is capable of autonomous action in this environment in order to meet its design objectives . (Wooldridge & Jennings, 1995)

  • capabilities of Intelligent agents
  • * reactivity: perceive their environment and respond to surrounding changes * proactiveness: goal-directed behaviour * social ability:interact with other agents

  • Agents vs. Objects
  • * agents are more autonomous than object, decide what to do to achieve a goal * agents have flexible behaviour: reactive, proactive, social. * agents have at least one thread of control

  • Agents vs. Expert systems
  • * expert systems are not coupled to their environment * Agents are capable of reactive, proactive behaviour. * Expert systems do not consider social ability

    The definition of agent processing can be approached from two interrelated directions: *internal state processing and ontologies for representing knowledge *interaction protocols - standards for specifying communication of tasks

    Agent systems are used to model real world systems with Concurrency (computer science) or parallel processing.

    =See also=

  • GNUBrain - Implementation of a multi agent framework (GPL)
  • Agent environments
  • =External links =

    *http://www.agentland.com/ - Commercial site *http://fipa.org/ - Foundation for Intelligent Physical Agents *http://www.msci.memphis.edu/~franklin/AgentProg.html - University of Memphis, Department of Mathematical Sciences paper entitled Is it an Agent, or just a Program: A Taxonomy for Autonomous Agents *http://agtivity.com/ - Focuses on turning the construction and deployment of Software Agent Technology into a science rather than folklore and ad-hoc art and craft *http://agtivity.com/aglinks.htm - Extensive list of web-based resources for Software Agent Technology *http://www.agentos.net - Mobile Agent Technologies - Developer of AgentOS an agent based operating system. Inventor of patent pending process for Automatic Thread Migration (ATM). *http://www.agentlink.org - European Co-ordination Action for Agent Based Computing

    = Further reading=

  • Artificial Intelligence: A Modern Approach (2nd Edition) by Stuart J. Russell & Peter Norvig, (2002) Prentice Hall, ISBN 0137903952
  • Carl Hewitt and Jeff Inman. DAI Betwixt and Between: From Intelligent Agents to Open Systems Science IEEE Transactions on Systems, Man, and Cybernetics. Nov./Dec. 1991.
  • Hyacinth S. Nwana, Divine T. Ndumu: An Introduction to Agent Technology, Software Agents and Soft Computing 1997: 3-26.
  • Chyi-Ren Dow, Chi-Ming Lin, and Chen-Ming Lin, Network Agent Application, Mobile Computing Laboratory, Dept. of IECS, Feng Chia University, Taiwan, R. O. C., 2005.
  • =Legal Aspects=

    *http://www.softwareagents.nl - This site presents an overview of existing or proposed legislation, legal and in general technical articles, projects, implementations, companies and examples on the topic of Software Agents.