340 likes | 545 Views
Introduction to Intelligent Software Agents. Martin Beer, School of Computing & Management Sciences, Sheffield Hallam University, Sheffield, United Kingdom m.beer@shu.ac.uk. Contents. Agents as Tools of the Information Society Information Society
E N D
Introduction to Intelligent Software Agents Martin Beer, School of Computing & Management Sciences, Sheffield Hallam University, Sheffield, United Kingdom m.beer@shu.ac.uk
Contents • Agents as Tools of the Information Society • Information Society • Intelligent Software Agent as a tool of Information Society • Benefits from Intelligent Agent • Fundamental Concepts of Intelligent Software Agents • What is an Agent? • Definition of Intelligent Software Agents • Characteristics of Intelligent Software Agents • Classification
The Information Society • On the Way to the Information Society • Digitization • Networking • Internet • Tools of the Information Society • Browsers • Search Engines
Intelligent Software Agents • Intelligent Agents are • a new category of information society tools • software programs that independently perform tasks on behalf of a user in a network environment • Intelligent Agents in the Business Area • Intelligent Agents in the Private Area
Economic Potential(1/2) • Potential Benefit from the User’s Viewpoint • Improvement of efficiency in working with internet • Time-saving • Increase in speed of arriving at solutions in internet • Improvement of effectiveness in working with internet • Overcome the characteristics of human problem solving • Increase in the transparency and optimizations • Comparing information from various sources • User can select the most favorable • Intelligent agents have made Adam Smith’s ‘Invisible hand’ visible in the electronic business world
Economic Potential(2/2) • Potential Benefit from the Viewpoint of the Information and Communications Industry • Sales for intelligent agent (OVUM’s expectation) • 19 million dollars in 1996 • 357 million dollars in 1998 • 4.6 billion dollars in 2006 • OVUM expects that the agents for private household will become the primary innovation factor and from the start of the next millennium the sales with private households will exceed those of business and government
What is an Agent? • Agents are autonomous • Capable of acting independently • Over their own internal state System Output Input Environment
What makes Agents Interesting? • Trivial (ie non-interesting) agents • Thermostat • Unix daemon (biff, ftpd etc) • An intelligent Agent is a computer system capable of flexible autonomous action in some environment (Mike Wooldridge) • By flexible we mean • Reactive • Pro-active • social
Reactivity • If a program’s environment is guaranteed to be fixed, the program need never worry about its own success or failure • Example of a fixed environment – a compiler • The real world is not like that • Things change • Information is incomplete • Many (most?) environments are dynamic
Reactivity • Software is hard to build for dynamic environments • Program must take into account the possibility of failure • Ask itself whether it is worth executing! • A reactive system is one that maintains an ongoing interaction with its environment and responds to changes that occur in it • (in time for the response to be useful)
Proactiveness • Reacting to the environment is easy • (eg stimulus -> response rules) • But we generally want agents to do things for us • Hence goal directed behaviour • Proactiveness = generating and attempting to achieve goals • Not driven solely by events • Taking the initiative • Recognising opportunities
Social Ability • The real world is a multi-agent environment • We cannot go around attempting to achieve goals without taking others into account • Some goals can only be achieved with the cooperation of others • Similarly for many computer environments – witness the Internet • Social ability in agents is the ability to interact with other agents (and possibly humans) via some kind of agent communication language and perhaps cooperate with others
Other Properties • Mobility • The ability of an agent to move around an electronic network • Veracity • An agent will not knowingly communicate false information • Benevolence • Agents do not have conflicting goals, and that every agent will therefore always try to do what it is asked of it • Rationality • Agent will act to achieve its goals, and will not act in such a way as to prevent its goals from being achieved – at least insofar as its beliefs permit • Learning/adaption • Agents improve their performance over time
Definition of Intelligent Software Agents(1/2) • Three Major Categories of Agents • Human Agent / Hardware Agent / Software Agent
Definition of Intelligent Software Agents(2/2) • Two Major Requirement for Intelligent Agent • Autonomous Processing • Communication / Cooperation with other objects • A Definition of Intelligent Software Agent is • a software program that can perform specific tasks for a user and possesses a degree of intelligence that permits it to perform parts of its tasks autonomously and to interact with its environment in a useful manner • Information / Cooperation / Transaction Agent
Information Agent • Task • search for information in distributed systems or networks • locate information sources • extract information from the sources • filter the information of relevance for the user from the total quantity of found information using the user’s interest profile • prepare and present the results in an appropriate form
Cooperative Agents • Task • solve complex problems by using communication and cooperation mechanisms with other objects, such as agents, humans or external resources • used when a problem exceeds the capabilities of an individual agent or agents already exist that already have a solution and whose knowledge can be used by other agents • The demands on intelligence are higher than that of pure information agent
Transaction Agent • Task • processing and monitoring of transaction in classical database environments and in the areas of network management and electronic commerce • Such agents normally operate in very sensitive areas and represent their users for tasks that demand a high degree of responsibility, for example in the purchase of products using a user’s credit card
Characteristics of Intelligent Software Agents(1/2) • The characteristics can be grouped into two large categories : internal and external • Internal properties • determine the actions within the agent • Ex : the ability to learn, reactivity, autonomy, goal-oriented • External properties • affect the interaction of several agents or human-agent communication • Ex : communication, cooperation
Internal Properties(1/4) • Reactivity : • Capability of reacting appropriately to influences or information from its environment • Agent must have suitable sensors or possess its own internal model of its environment • Proactivity / goal-orientation • Capability for an agent itself to take the initiative under specific circumstances • Require that the agent has well-defined goals or even a complex goal system
Internal Properties(2/4) • Reasoning / learning • The intelligence of an agent is formed from three main components: • its internal knowledge base, • the reasoning capabilities based on the contents of the knowledge base, • and the ability to learn or to adapt to changes to the environment. • Reasoning power requires rationality • Rational processing requires the existence of a goal system • Ability to learn from previous experiences and to successively adapts its behavior to the environment is as important for the intelligent behavior of an agent
Internal Properties(3/4) • Autonomy • Capability to follow its goals autonomously, that is, without interactions or commands form the environment • To permit autonomous behavior, agent must be provided with those resources and capabilities, e.g. • availability of an electronic network, • capability to navigate through the network(mobility), • capability to make contact with other agents(communication). • Goal-orientation and ability to learn.
Internal Properties(4/4) • Mobility • Ability to navigate within electronic communications networks • Demands on network environment and raise questions regarding security, data privacy, and management • Reduces the network loading. It can go to the computer or agents with the required information, not sending a series of messages over network. Then perform all tasks locally on the target computer • Agency : Meeting points, serves as marketplace or discussion and communication forum
External Properties(1/2) • Communication / Cooperation • Interaction with its environment(human users, other agents, arbitrary information sources) • Communication require standardized protocol for exchange of information • Cooperation must augment the communications capability
External Properties(2/2) • Character • It’s desirable for agent to demonstrate human traits • An agent’s most important characteristics are honesty, trustworthiness, and reliability • It is important that agents with a high degree of interaction with people exhibit emotional states, such as joy, sadness, frustrations.
Classification • Three Criteria • Intelligence, Mobility, Number of Agents
Agents and Objects • Are agents just objects by another name? • Object • Encapsulates some state • Communicates by message passing • Has methods, corresponding to operations that may be performed on this state
Main Differences • Agents are autonomous • Agents embody a stronger notion of autonomy than objects, and in particular, they decide for themselves whether or not to perform an action on request from another agent • Agents are smart • Capable of flexible (reactive, pro-active, social) behaviour, and the standard object model has nothing to say about such types of behaviour • Agents are active • A multi-agent system is inherently multi-threaded, in that each agent is assumed to have at least one thread of active control
Summary • An agent is a computer system that is capable of independent action on behalf of its user or owner • A multi-agent system is one that consists of a number of agents which interact with one another • In order to interact successfully, agents need the ability to cooperate, coordinate and negotiate
Two key problems • How do we build agents that are capable of independent, autonomous action in order to successfully carry out tasks that we delegate to them? • How do we build agents that are capable of interacting (cooperating, coordinating, negotiating) with other agents in order to successfully carry out the tasks that we delegate to them, particularly when other agents can not be assumed to share the same interests/goals?