Agentes e Inteligência Artificial Distribuída
Áreas Científicas |
Classificação |
Área Científica |
OFICIAL |
Inteligência Artificial |
Ocorrência: 2020/2021 - 1S
Ciclos de Estudo/Cursos
Língua de trabalho
Português - Suitable for English-speaking students
Objetivos
A unidade curricular assume-se como de Engenharia (evidenciando apenas a teoria essencial para se entender as aplicações práticas) e proporciona uma perspetiva global das técnicas associadas à computação baseada em agentes, explorando, por um lado, a modelação e simulação de sistemas complexos baseadas em agentes computacionais, e também o desenvolvimento de aplicações de agentes inteligentes e de sistemas multi-agente com capacidade de adaptação.
A Programação e a Engenharia de Software Orientada a Agentes são apresentadas como uma nova metáfora para a descrição e programação de sistemas computacionais distribuídos.
Os conhecimentos adquiridos serão consolidados através da utilização de ferramentas de software apropriadas, com as quais os estudantes são incentivados a elaborar pequenos projetos de desenvolvimento. O objetivo principal é que os estudantes saibam especificar e implementar sistemas complexos, adaptativos, distribuídos e descentralizados usando o paradigma dos sistemas multi-agente.
Resultados de aprendizagem e competências
No final da unidade curricular, os estudantes deverão ser capazes de:
- Modelar sistemas complexos recorrendo a agentes computacionais
- Projetar sistemas distribuídos e descentralizados seguindo o paradigma dos sistemas multi-agente
- Desenvolver agentes de software inteligentes, seguindo diferentes arquiteturas
- Avaliar a execução de uma simulação baseada em agentes ou de um sistema multi-agente distribuído
- Desenvolver sistemas multi-agente com mecanismos de adaptabilidade
Modo de trabalho
Presencial
Pré-requisitos (conhecimentos prévios) e co-requisitos (conhecimentos simultâneos)
É útil o conhecimento de técnicas de Inteligência Artificial
Programa
1. Computação baseada em agentes
- Objetivos e enquadramento
- Simulação baseada em agentes vs sistemas multi-agente
- Ferramentas para desenvolvimento de sistemas multiagente e para simulação baseada em agentes: JADE e Repast
2. Agentes inteligentes
- Definições
- Agentes e ambientes
- Tipos básicos de agentes
- Arquiteturas de agentes. Raciocício dedutivo. Raciocínio prático: agentes BDI. Agentes reativos: arquitetura de subsumpção.
3. Sistemas multi-agente
- Definições
- Comunicação. Atos de discurso. ACL. Standards FIPA. Protocolos de interação. JADE.
- Engenharia de Software Orientada a Agentes
4. Tomada de decisão multiagente
- Teoria de jogos. Utilidades e preferências. Estratégias dominantes. Equilíbrio de Nash. Ótimo de Pareto. Incerteza. Jogos cooperativos.
- Desenho de mecanismos. Teoria da escolha social.
- Leilões. Protocolos de leilão. Leilões combinatórios. Leilões duplos.
- Negociação. Attributos da negociação. Táticas de negociação:tempo e comportamento. Negociação para alocação de tarefas. Acordos e utilidades. Acordos Pareto-ótimos e individualmente racionais. Protocolo de concessão monótona. Negociação na alocação de recursos.
5. Introdução à simulação baseada em agentes
- Modelação e simulação baseada em agentes (ABMS).
- Modelos baseados em agentes e systemas complexos adaptativos.
- Elementos de uma ferramenta ABMS.
- Repast: componentes de um modelo, escalonador, coleção e visualização de dados, visualização do ambiente.
6. Agentes conversacionais
- Chatbots e agentes de diálogo baseados em objetivos.
- O teste de Turing.
- Marcos históricos: ELIZA, PARRY, ALICE, Tay, Siri e Alexa.
- Arquiteturas de chatbots. Domínios abertos vs fechados. Respostas preformatadas vs generativas.
- Desenvolvimento de chatbot. Locuções, intenções, entidades e ações.
- A framework Rasa.
7. Aprendizagem por reforço
- Agentes com aprendizagem.
- Aprendizagem por reforço. Funções de reforço e valor. Processos de decisão de Markov. Tarefas episódicas e contínuas. Aprendizagem por diferença temporal. Q-learning.
- Deep reinforcement learning
Bibliografia Obrigatória
Michael Wooldridge;
An introduction to multiagent systems. ISBN: 978-0-470-51946-2 (2nd Edition, 2009)
Bibliografia Complementar
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
Métodos de ensino e atividades de aprendizagem
Exposição com interação nas aulas teóricas. Exploração de ferramentas nas aulas teorico-práticas.
Acompanhamento da realização dos trabalhos práticos. Aprendizagem orientada por projetos.
Software
Plataforma de Sistemas Multi-Agente JADE
Ambiente de Simulação REPAST
Palavras Chave
Ciências Físicas > Ciência de computadores > Cibernética > Inteligência artificial
Ciências Físicas > Ciência de computadores > Arquitectura de computadores > Computação distribuída
Ciências Tecnológicas > Engenharia > Engenharia de simulação
Tipo de avaliação
Avaliação distribuída com exame final
Componentes de Avaliação
Designação |
Peso (%) |
Exame |
50,00 |
Trabalho laboratorial |
50,00 |
Total: |
100,00 |
Componentes de Ocupação
Designação |
Tempo (Horas) |
Estudo autónomo |
44,00 |
Frequência das aulas |
52,00 |
Trabalho laboratorial |
66,00 |
Total: |
162,00 |
Obtenção de frequência
Um aluno inscrito obtém frequência se cumprir a assiduidade às aulas teórico-práticas (máximo de faltas permitido corresponde a 25% das aulas previstas).
Fórmula de cálculo da classificação final
Nota Final = 50% * Trabalho + 50% * Exame
Trabalho = 70% * Trabalho1 + 30% * Trabalho2
Para obter aprovação, aplicam-se as seguintes classificações mínimas:
- Trabalho1: 8.0 valores em 20
- Trabalho2: 8.0 valores em 20
- Exame: 7.0 valores em 20
Provas e trabalhos especiais
A avaliação em épocas especiais consiste na elaboração de dois Trabalhos práticos e de um Exame escrito (com consulta), valendo cada uma destas componentes 50% da nota final. A aprovação na Unidade Curricular pressupõe a obtenção de uma classificação mínima de 8.0 valores em 20, em cada um dos trabalhos e de uma classificação mínima de 7.0 em 20 no exame escrito.
Avaliação especial (TE, DA, ...)
Todos os componentes de avaliação são exigidos a todos os alunos, independentemente do regime de inscrição e da necessidade de obter avaliação de frequência. Os alunos inscritos ao abrigo de regimes especiais sem frequência de aulas práticas devem acordar com os docentes sessões de acompanhamento e avaliação prática.
Melhoria de classificação
A melhoria da classificação só pode ser obtida na edição seguinte da Unidade Curricular.