Agent-based Systems


Master of Science in Informatics Engineering,
1st year, 2nd semester

[ Portuguese Version ]

Goals

The purpose of this course is to impart knowledge about the new programming and systems development paradigm, the Agent-based Systems. The students should also be able to identify the opportunity and the adequateness of this technology to particular problems and domains. They should be able to specify, design, develop ant test Intelligent Agents and simple Multi-Agent Systems.

Evaluation Methods and Contents

Requirements

This course requires basic knowledge of the Prolog programming language.

Course Contents

1. Introduction to Agents - Origin; different visions; definitions
2. Agent Classification - Sensorial capabilities; Reactive and Deliberative Agents; Autonomous and Semi-autonomous Agents; Proactive Agents; Agents with social skills; Persistent Agents; Agents with learning abilities; Mobile Agents; Flexible and Agile Agents; Agents portraying personalities; Intelligent Agents
3. Examples of Agents and Multi-Agents Systems - Electronic commerce; Robotics; Manufacturing Systems; Traffic control
4. Agent-based solutions’ limitations - Lack of a central controller; lack of a global perspective; mistrust on responsibility delegation
5. Pitfalls in Agent-based Systems development - Political problems; Management problems; Conceptual problems; Analysis and project problems; Implementation problems
6. Architectures - Agent architecture; BDI model (Beliefs, Desires and Intentions); Brooks’ reactive architecture; ARCHON architecture; Holon architecture; Multi-Agent Systems architectures
7. Support services - Communication problems; Message exchange; Point-to-point, Group and Broadcast messages; Blackboards; Synchronization; Pooling; Forwarding; Naming permissions and encryption services; Talks; Security problems
8. Planning - Basic concepts; Plan classification; Agent’s internal planning; Domain and Agent’s activities planning; Multi-Agent systems’ planning
9. Negotiation - Definition; One to One negotiation (client/server); One to Many (Contract network); Many to One negotiation; Indecision problems; Many to Many negotiation; Renegotiation; Auctions; Argumentation techniques
10. Conflict Resolution - Knowledge and Data conflicts; Conflicts of Responsibility and Purpose; Agents credibility
11. Agents Interaction - Common vocabulary and Ontologies; Knowledge exchange formats (KIF); Knowledge querying and Manipulation Language (KQML); Agents communication languages (ACL)
12. Multi-Agent systems development tools - OAA; AgentBuilder; ZEUS
13. Agents applications - Intelligent Agents in the Web; Digital Assistants; Interface Agents; Agents for gathering, filtering, and classifying information; Agents in Electronic Commerce; Agents in Manufacturing; Agents in Telecommunications; Agents in the open electricity market; Simulation using agents; Cooperative Information Systems; Agents in Virtual Companies; Agents in the entertaining business; Agents for Space applications; Agents in hostile environments; Agents in Robotics

Evaluation methods and criteria

The evaluation process during the normal scholar period will have several components:
1. One practical assignment, split in two parts, independently assessed, with a 50% total weight. Its purpose is to ascertain that the students are able to specify, design, develop ant test Intelligent Agents and Multi-Agent Systems with a certain complexity. It is mandatory, even for students that require to be exempt from the continuous evaluation. They can be done individually or by a group of two students. The evaluation will be performed in an individual basis, though.
2. One small test at mid-semester, with a 35% weight. It will consist of a small practical problem to be solved using Prolog. For the students that don’t do this test at the right time, it can still be done at the same day of the final exam.
3. One assignment of theoretical synthesis, with a 15% weight. The student must prepare a short report (not more than 20 pages) about a specific subject and present it in the classroom (15 min).
In order not to have a NF grade the student must complete at least one of the previous assignments.

The last 30% will be assigned to the final theoretical exam.

The final grades will be computed with the following formula:

( xNFREQ + yNPE ) / ( x + y )

x = 70
y = 30
Min NFREQ = 8

NFREQ - Assignments grade
NPE - Theoretical exam grade

The students will be allowed to improve the grades obtained in the intermediate test and in the final exam.