Multiagent Systems


Brief Description

Multi-agent systems have emerged as one of the most important areas of research and development in information technology in the 1990s. A multi-agent system is one composed of multiple interacting software components known as agents, which are typically capable of co-operating to solve problems that are beyond the abilities of any individual member. Multi-agent systems are important primarily because they have been found to have very wide applicability, in areas as diverse as industrial process control and electronic commerce. This module will begin by introducing the student to the notion of an agent, and will lead them to an understanding of what an agent is, how they can be constructed, and how agents can be made to cooperate effectively with one-another to solve problems. The practical component of the module will based on the many Java agent frameworks currently available (e.g., the Java-based ``Jack'' programming language).

Aims

The aims of this module are:

  1. to introduce the student to the concept of an agent and multi-agent system, and the main applications for which they are appropriate;

  2. to introduce the main issues surrounding the design of intelligent agents;

  3. to introduce the main issues surrounding the design of a multi-agent society;

  4. to introduce a contemporary platform for implementing agents and multi-agent systems.

Learning Outcomes

Upon completing this module, a student will:

  1. understand the notion of an agent, how agents are distinct from other software paradigms (e.g., objects), and understand the characteristics of applications that lend themselves to an agent-oriented solution;

  2. understand the key issues associated with constructing agents capable of intelligent autonomous action, and the main approaches taken to developing such agents;

  3. understand the key issues in designing societies of agents that can effectively cooperate in order to solve problems, including an understanding of the key types of multi-agent interactions possible in such systems;

  4. understand the main application areas of agent-based solutions, and be able to develop a meaningful agent-based system using a contemporary agent development platform.

Outline Syllabus

  1. Introduction (1 week): what is an agent: agents and objects; agents and expert systems; agents and distributed systems; typical application areas for agent systems.

  2. Intelligent Agents (3 weeks):

  3. Multi-Agent Systems (5 weeks):

  4. Advanced topics (2 weeks):

    One issue selected from the contemporary research literature, perhaps by guest lecturer.

Assessment

Recommended texts

Other reading:

Lecture Slides