Agents and Distributed Artificial Intelligence
Keywords |
Classification |
Keyword |
OFICIAL |
Artificial Intelligence |
Instance: 2020/2021 - 1S 
Cycles of Study/Courses
Acronym |
No. of Students |
Study Plan |
Curricular Years |
Credits UCN |
Credits ECTS |
Contact hours |
Total Time |
MIEIC |
168 |
Syllabus since 2009/2010 |
4 |
- |
6 |
56 |
162 |
Teaching language
Suitable for English-speaking students
Objectives
This course has an engineering bias and proposes a global perspective on the techniques associated with agent-based computing, exploring, on one hand, agent-based complex systems modeling and simulation, and the development of intelligent agents and multi-agent system applications.
Agent-Oriented Programming and Software Engineering are presented as a new metaphor to describe and program distributed computational systems.
The acquired knowledge is consolidated through the use of appropriate software tools, with which students are incentivized to work on the development of small projects. The main goal is that students are able to specify and implement complex, adaptive, distributed, and decentralized systems using the multi-agent systems paradigm.
Learning outcomes and competences
At the end of the course, the student is expected to be able to:
- Model complex systems through computational agents
- Project distributed and decentralized systems following the multi-agent systems paradigm
- Develop intelligent software agents, using different architectures
- Evaluate the execution of an agent-based simulation or a distributed multi-agent system
- Develop multiagent systems with adaptability mechanisms
Working method
Presencial
Pre-requirements (prior knowledge) and co-requirements (common knowledge)
Knowledge of Artificial Intelligence techniques
Program
1. Agent-based computing
- Motivation and goals
- Agent-based simulation vs multi-agent systems
- Tools for MAS development and agent-based simulation: JADE and Repast
2. Intelligent agents
- Definitions
- Agents and environments
- Basic kinds of agent programs
- Agent architectures. Deductive reasoning agents. Practical reasoning: BDI agents. Reactive agents: the subsumption architecture
3. Multi-agent systems
- Definitions.
- Communication. Speech acts. ACL. FIPA standards.
- Interaction protocols. JADE.
- Agent-Oriented Software Engineering
4. Multi-agent decision making
- Game theory. Utilities and preferences. Dominant strategies. Nash equilibria and Pareto-efficiency. Uncertainty. Cooperative game theory.
- Mechanism design. Social choice theory.
- Auctions. Auction protocols. Combinatorial auctions. Double-sided auctions.
- Negotiation. Negotiation attributes. The alternating offers protocol. Negotiation tactics: time and behavior. Negotiation for task allocation. Deals and utilities. Dominance. Pareto optimal and individual rational deals. The monotonic concession protocol. Negotiation in resource reallocation.
5. Introduction to agent-based simulation
- Agent-based modeling and simulation (ABMS)
- Agent-based models and complex adaptive systems
- Elements of an ABMS tool
- Repast: model constructs, scheduler, data collection and visualization, environment displays
6. Conversational agents
- Chatbots and goal-based dialog agents.
- The Turing test
- Historical marks: ELIZA, PARRY, ALICE, Tay, Siri and Alexa.
- Chatbot architectures. Open vs closed domain. Retrieval vs generative responses.
- Chatbot development. Utterances, intents, entities, and actions.
- The Rasa framework.
7. Reinforcement Learning
- Learning agents.
- Reinforcement learning. Policies, rewards, and value functions. Markov decision processes. Episodic and continuing tasks. Discounted returns. Temporal-difference learning. Q-learning.
- Deep reinforcement learning
Mandatory literature
Michael Wooldridge;
An introduction to multiagent systems. ISBN: 978-0-470-51946-2
Complementary Bibliography
Shoham Yoav;
Multiagent systems. ISBN: 978-0-521-89943-7
S. Russel and P. Norvig;
'Artificial Intelligence: A Modern Approach', Prentice Hall, 2003
Richard S. Sutton, Andrew G. Barto; Reinforcement Learning: An Introduction, A Bradford Book, 2018. ISBN: 978-0262039246
Teaching methods and learning activities
Oral presentation of the themes of the course in theoretical classes, with interaction with students. Tool experimentation and exploration in the practical classes.
Practical classes will be based on the supervision of assignments. Project-oriented learning.
Software
Plataforma de Sistemas Multi-Agente JADE
Ambiente de Simulação REPAST
keywords
Physical sciences > Computer science > Cybernetics > Artificial intelligence
Physical sciences > Computer science > Computer architecture > Distributed computing
Technological sciences > Engineering > Simulation engineering
Evaluation Type
Distributed evaluation with final exam
Assessment Components
Designation |
Weight (%) |
Exame |
50,00 |
Trabalho laboratorial |
50,00 |
Total: |
100,00 |
Amount of time allocated to each course unit
Designation |
Time (hours) |
Estudo autónomo |
44,00 |
Frequência das aulas |
52,00 |
Trabalho laboratorial |
66,00 |
Total: |
162,00 |
Eligibility for exams
Enrolled students are admitted to the exam if they do not exceed the allowed number of non-attendance to lab classes (maximum 25% of non-attendance).
Calculation formula of final grade
Final Grade = 50% * Assignment + 50% * Exam
Assignment = 70% * Assigment1 + 30% * Assignment2
In order to obtain approval in the course, the following minimum scores apply:
- Assignment1: 8.0 values out of 20
- Assignment2: 8.0 values out of 20
- Exam: 7.0 values out of 20
Examinations or Special Assignments
Evaluation in special seasons consists of two practical Assignments and a written Exam, where each of these components weights 50% on the final grade. Approval in the course demands for a minimum score of 8.0 out of 20 in each of the practical assignments, and a minimum of 7.0 out of 20 in the written exam.
Special assessment (TE, DA, ...)
All assessment components are required for all students. Students enrolled using special frequency modes, without obligation to attend to the practical classes, must arrange with teachers appropriate consultation and evaluation sessions.
Classification improvement
The improvement of classification can only be obtained in the next edition of the course.