Extracted and somewhat edited from WhatIsAnAgent
An agent can be a person, a machine, a piece of software, or a variety of other things. The basic dictionary definition
of agent is one who acts. However, for developing IT systems, such a definition is too general: IT-related
SoftwareAgents need additional properties. Some of the properties that agents may possess in various combinations
include these PropertiesOfAgents:
-
- Autonomous - is capable acting without direct external intervention. It has some degree of control over its internal state and actions based on its own experiences.
-
- Interactive - communicates with the environment and other agents.
-
- Adaptive - capable of responding to other agents and/or its environment to some degree. More advanced forms of AdaptiveAgents can modify their behavior based on their experience.
-
- Sociable - interaction that is marked by friendliness or pleasant social relations, that is, where the agent is affable, companionable, or friendly.
-
- Mobile - able to transport itself from one environment to another.
-
- Proxy - may act on behalf of someone or something, that is, acting in the interest of, as a representative of, or for the benefit of some entity.
-
- Proactive - goal-oriented, purposeful. It does not simply react to the environment.
-
- Intelligent - state is formalized by knowledge (i.e., beliefs, goals, plans, assumptions) and interacts with other agents using symbolic language.
-
- Rational - able to choose an action based on internal goals and the knowledge that a particular action will bring it closer to its goals.
-
- Unpredictable - able to act in ways that are not fully predictable, even if all the initial conditions are known. It is capable of nondeterministic behavior. (See also EmergentBehavior)
-
- Temporally continuous - is a continuously running process.
-
- Credible - believable personality and emotional state.
-
- Transparent and accountable - must be transparent when required, yet must provide a log of its activities upon demand.
-
- Coordinative - able to perform some activity in a shared environment with other agents. Activities are often coordinated via a plans, workflows, or some other process management mechanism.
-
- Cooperative - able to coordinate with other agents to achieve a common purpose; nonantagonistic agents that succeed or fail together. (Collaboration is another term used synonymously with cooperation.)
-
- Competitive - able to coordinate with other agents except that the success of one agent implies the failure of others (the opposite of cooperative).
-
- Rugged - able to deal with errors and incomplete data robustly.
-
- Trustworthy - adheres to ThreeLawsOfRobotics and is truthful.
See also AdaptiveAgent.
CategoryAgentOriented