Fundamentos Lógicos da IA - 2023-1
UnB-\(\gamma\)

Table of Contents

1. Material Didático e conteúdo programático (preliminar)

  1. Introdução
  2. Introdução à lógica clássica
  3. Lógica de primeira ordem
  4. Representações proposicionais
  5. Procedimentos automáticos de prova
  6. Problema de satisfatibilidade (SAT)
  7. Algoritmos para SAT
  8. Busca em grafos e/ou
  9. Formas não clausais de representação
  10. Planejamento
    • Aplicações em planejamento \(1\)

2. Plano de aulas

2.1. Aula 1   29_ago

  • Introdução
    • Objetivos da disciplina
    • Método de avaliação
    • conceitos gerais

2.2. Aula 2   31_ago

2.3. Aula 3   05_set

  • Início da criação do domínio do supermercado

2.4. Aula 4   07_set feriado

  • feriado

2.5. Aula 5   12_set

  • Continuação do domínio do supermercado
    • Criando uma lista de compras

2.6. Aula 6   14_set

2.7. Aula 7   19_set

  • Apresentação dos domínios:
    • Bomberda
    • Puzznic

2.8. Aula 8   21_set

  • Apresentação dos domínios do trabalho 1

2.9. Aula 9   26_set semuni

  • Semana Universitária

2.10. Aula 10   28_set semuni

  • Semana Universitária

2.11. Aula 11   03_out

  • Continuação da apresentação dos domínios do trabalho 1

2.13. Aula 13   10_out

2.14. Aula 14   12_out feriado

  • feriado

2.15. Aula 15   17_out

  • Aula de preparação de apresentação e dúvidas

2.16. Aula 16   19_out icpc latam

  • professor em viagem, atividades remotas
  • Preparação da apresentação

2.17. Aula 17   24_out

  • Apresentação de domínios HDDL

2.18. Aula 18   26_out

  • Apresentação de domínios HDDL

2.19. Aula 19   31_out

  • discussão ampla sobre os domínios HDDL apresentados

2.20. Aula 20   02_nov feriado

  • feriado

2.21. Aula 21   07_nov

2.22. Aula 22   09_nov icpc

  • professor em viagem, atividades remotas
    • ICPC cancelado. Aulas normais

2.23. Aula 23   14_nov icpc

  • professor em viagem, atividades remotas
    • ICPC cancelado. Aulas normais

2.24. Aula 24   16_nov icpc

  • professor em viagem, atividades remotas
    • ICPC cancelado. Aulas normais

2.25. Aula 25   21_nov

2.26. Aula 26   23_nov

2.27. Aula 27   28_nov

  • Preparação do trabalho final

2.28. Aula 28   30_nov

2.29. Aula 29   05_dez HUWAEI TALENT SUMMIT 2023

  • Professor em evento internacional. Aula cancelada

2.30. Aula 30   07_dez

  • Preparação do trabalho FINAL

2.31. Aula 31   12_dez

  • Apresentações do trabalho final

2.32. Aula 32   14_dez

  • Apresentações do trabalho final

2.33. Aula 33   19_dez

  • finalização da disciplina

2.34. Aula 34   21_dez

  • finalização da disciplina

3. Plano de Aulas

O plano de ensino e plano de aulas é um PLANO e pode sofrer modificações ao longo do semestre de acordo com o rendimento da turma.

Curso: Engenharia de Software Período Letivo 2023/2
Disciplina: Tópicos Especiais de ES - FLIA Código  
Carga Horária: 60 horas Créditos 04

3.1. Horários das aulas e atendimento

  • Aulas:
    • {terça,quinta}-feira, das 14:00 às 15:50
  • Atendimento:
    • por e-mail nos dias e horário das aulas
      • caso necessário será aberto uma CALL para sanar as dúvidas
  • E-mail:
    • bruno.ribas EM unb.br
  • Página:

3.2. Método

Aula expositiva por meio de aula síncronas em Sala de Aula, quadro branco, lista de exercícios e, material de apoio disponibilizado no Youtube (gravados ou em live stream).

3.3. Critérios de Avaliação

  • A avaliação será feita por um conjunto de trabalhos, com pesos variáveis.
    • Os trabalhos deverão ser apresentados ao longo da disciplina, e representam os checkpoints dos assuntos estudados
  • As notas serão compostas por um número inteiro no intervalo \([0,100]\);
  • As avaliações serão compostas por questões, podendo ser, a critério do professor, teóricas e/ou práticas
  • Qualquer tentativa de fraude nas provas implicará em média ZERO no semestre para todos os envolvidos.

3.3.1. Presença

  • Em atividades presenciais será passada uma lista de presença;
  • Para atividades a distância uma atividade específica de presença será passada com um prazo determinado pelo professor.

A entrega DENTRO do prazo é obrigatória para todos os alunos.

3.3.2. Menção Final

As notas serão calculadas conforme a equação abaixo:

\begin{align} M_F = \frac{ \sum_{i=0}^{N}(K_i * T_i) + K_f*TF}{K_f+\sum_{i=0}^{N}(K_i)} \end{align}
  • Onde \(K_i\) e \(K_f\) são os pesos das atividades. Os pesos serão divulgados pelo professor no momento da divulgação da atividade

3.3.3. Critérios de aprovação

Obterá aprovação no curso o aluno que cumprir todas as exigências listadas abaixo:

  1. \(M_F >= 50\); e
  2. Presença em \(75\%\) ou mais das aulas.

Por fim, a menção final do curso é dada de acordo com a tabela abaixo:

\(M_F\) Menção Descrição
\(0\) SR Sem rendimento
\([1,29]\) II Inferior
\([30,49]\) MI Médio Inferior
\([50,69]\) MM Médio
\([70,89]\) MS Médio Superior
\([90,100]\) SS Superior

3.4. Bibliografia

  • Algorithms in C , Robert Sedgewick
  • CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L.; STEIN, Cli or. Algoritmos: Teoria e Prática. 2a.edição, Campus.
  • (eBrary) CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L. Introduction to Algorithms. MIT Press, 2014.
  • (eBrary) Biere, Armin and Heule, Marijn J. H. and van Maaren, Hans and Walsh, Toby Handbook of Satisfiability, 2009.
  • RIBAS Bruno C; Um método de pré-processamento de fórmulas SAT e pseudo-boolean baseado em técnicas de programação linear inteira mista, 2015
  • RIBAS Bruno C; Suguimoto RM; Montano RANR; Silva F; Bona LCE; Castilho M; On modelling virtual machine consolidation to pseudo-Boolean constraints, 2012
  • RIBAS Bruno C; Suguimoto RM; Montano RANR; Silva F; Bona LCE; Castilho M;PBFVMC: A New Pseudo-Boolean Formulation to Virtual-Machine Consolidation, 2013
  • Montano RANR; RIBAS BC; Planning as Mixed-Horn Formulas Satisfiability 2017
  • RUSSEL Stuart; Norvig Peter; Artificial Intelligence: A Modern Approach, 2020
  • https://planning.wiki/ - Planning.Wiki - The AI Planning & PDDL Wiki
  • Artificial Intelligence: A Modern Approach. 3a. Ed. S. Russel and P. Norvig. (cap 7, slides)
  • Chin-Liang Chang, Richard Char-Tung Lee. Symbolic logic and mechanical theorem proving. San Diego, CA : Academic Press, 1987.
  • A knowledge compilation map. A. Darwiche and P. Marquis. JAIR. 2002

4. Presença

  • Publicado diretamente no SIGAA

5. Notas

5.1. Trabalhos que valem nota

5.1.1. Trabalho 1 - Peso: 1

  • Apresentação de Domínio PDDL
    • prazo 21 de setembro
    • Devem ser apresentados domínios das competições de 2023 ou 2018
    • O que deve ser apresentado?
      • Tempo de apresentação: 10minutos
      • Os alunos devem apresentar:
        • Do que se trata o domínio
        • Qual a motivação do domínio existir
          • existe artigo científico publicado a respeito do domínio?
        • Análise crítica sobre o domínio e o conjunto de problemas
          • Deve ser apresentada uma tabela de execução dos problemas disponíveis
          • Existem ferramentas de apoio? (que criam arquivos de problema? que animam um plano ?)
            • apresentar as ferramentas existentes
          • Apresentar as principais ações e predicados do domínio
        • Após a apresentação os alunos devem enviar para o professor o PDF da apresentação
  • EQUIPES E DOMÍNIOS
Equipe Integrantes Domínio Material
1 Bruno, Igor, Danilo, Lucas Gobbi Ricochet Robots APRESENTAÇÃO, Repositório do Domínio
2 Rodrigo Lima, Marcos Tavares, Daniel, Vinícius, Lucas Nurikabe Relatório, APRESENTAÇÃO
3 Davi, João, Caio, Luís Organic Synthesis APRESENTAÇÃO
4 Breno, Breno, Henderson, Yogi Snake (2018) APRESENTAÇÃO
5 Ryan, João, Caio Urnau, Raphael Settlers (2018) APRESENTAÇÃO
6 Gabriel Mariano, Diógenes, Rodrigo Edmar, Danilo César Agricola (2018) APRESENTAÇÃO
7 Otávio, Nicolas, Deivid, Paulo Henrique Labyrinth  
8 Cauã Corrêa, Arthur Lima, Pedro Sena, Julio Costa Rubik's cube APRESENTAÇÃO

5.1.2. Trabalho 2 - Peso: 2

5.1.3. Trabalho 3 - Peso: 1

  • Apresentação de domínio HDDL
    • Início das apresentações: 24 de outubro
    • Devem ser apresentações domínios das competições de 2023 ou 2020
    • O que deve ser apresentado?
      • Tempo de apresentação: até 30minutos
      • Os alunos devem apresentar:
        • Do que se trata o domínio
        • Qual a motivação do domínio existir
          • existe artigo científico publicado a respeito do domínio?
        • O domínio se compara a algum domínio em PDDL?
          • Em caso afirmativo, como eles se comparam em desempenho? E na modelagem?
        • Análise crítica sobre o domínio e o conjunto de problemas
          • Deve ser apresentada uma tabela de execução dos problemas disponíveis
          • Existem ferramentas de apoio? (que criam arquivos de problema? que animam um plano ?)
            • apresentar as ferramentas existentes
          • Apresentar as principais ações e predicados do domínio
        • Após a apresentação os alunos devem enviar para o professor o PDF da apresentação
  • Equipes
Equipe Integrantes Domínio Material
1 Gabriel, Diógenes, Edmar, Danilo Cesar Minecraft - Regular SLIDES, PAPER(ORIGINAL), GITHUB IPC2020, GITHUB IPC2023
2 Vinícius Marcos, Daniel, Rodrigo Tiago Towers SLIDES
3 Breno, Breno, Henderson, Yogi SNAKE SLIDES
4 Danilo, Lucas, Bruno, Igor Colors SLIDES
5 Lucas, Cauã, Pedro Sena, Julio Costa Barman - BDI SLIDES
6 João Pedro, Davi, Luis, Caio Satelite SLIDES , PAPER(ORIGINAL), GITHUB
7 Caio Urnau, Ryan, Bruno Alves Factory Sample SLIDES
8 Nicolas, Arthur, Otavio Hiking não enviou

5.1.4. Trabalho 4 - Peso: 2

  • Exercício de criatividade: Criação de domínio HDDL
  • Submissão: e-mail
  • Prazo: 1 de dezembro de 2023 8 de dezembro
  • Este trabalho foi inspirado no trabalho da disciplina: Automated Planning and Scheduling, por Tomas Balyo and Dominik Schreiber
  • Em equipe: Máximo de 4 membros (podendo ser feito individualmente, dupla ou trios)
  • Projete um benchmark de planejamento de domínio HDDL. Você pode modelar qualquer coisa que desejar. Seja inspirado por quebra-cabeças, jogos de tabuleiro/vídeo, programas de TV, situações da vida real, aplicações industriais, hentai, etc., e tente incorporar conhecimento hierárquico útil sobre o domínio em seu modelo. Para obter a pontuação máxima, seu domínio deve ser totalmente escalável, ou seja, deve ser possível gerar problemas facilmente solucionáveis e problemas arbitrariamente difíceis. Forneça os seguintes arquivos:
    • Um arquivo domain.hddl que define formalmente o seu domínio. Defina pelo menos duas tasks distintas, pelo menos três methods distintos e pelo menos três action distintas (todos os quais devem ser úteis em alguns casos).
    • Um gerador de arquivos de problema que pode produzir arquivos problem.hddl com base em alguns parâmetros. O gerador pode ser escrito em qualquer linguagem de programação mainstream (mas sempre forneça as fontes!).
    • Um documento PDF de 2-3 páginas descrevendo seu domínio (propriedades, dificuldade, motivação, …) e instruções sobre como usar o gerador de problemas.
      • Apresente um benchmark do seu domínio com pelo menos dois planejadores, sendo um deles o PandaPI, e outro sendo algum planejador dentre os campeões da competição de HDDL de 2023.
        • O seu benchmark deverá possuir problemas de três categorias:
          • AGILE : com problemas pequenos e tempo limite de 150segundos por instância (não precisa, necessariamente, ter todas as instâncias resolvidas)
          • SATISFICING: problemas maiores e difíceis de encontrar solução e tempo limite de 900segundos
          • OPTIMAL: problemas maiores e defícies de provar ótimo e tempo limite de 900 segundos
      • Explore os parâmetros dos planejadores escolhidos
  • Os "melhores" domínios receberão 20 pontos extras (primeiro lugar) e 10 pontos extras (segundo lugar), respectivamente. A pontuação de cada domínio será determinada pela votação dos estudantes. Empates serão decididos por Bruno Ribas.

5.2. Consolidadas

matricula AL LT AL CL MF ♨️ AP SIT nome
190084600 050 ** 040 ** 015 ** II **
202017540 040 ** ** ** 006 ** II **
160114705 ** ** 050 ** 008 ** SR **
211039288 090 110 085 110 102 ** SS **
221021868 040 ** 000 ** 006 ** II **
221021877 080 010 070 065 050 ** MM **
211031673 080 115 060 085 090 ** SS **
211030980 095 114 085 ** 068 ** MM **
211039312 090 107 085 110 101 ** SS **
221031149 070 117 080 090 094 ** SS **
190086131 080 095 085 ** 059 ** MM **
190105267 095 072 085 095 085 005 SS **
200018167 095 072 085 095 085 005 SS **
222006795 040 107 040 055 067 ** MM **
150011903 ** ** ** ** 000 ** SR **
211029352 090 094 085 110 097 ** SS **
222006839 ** ** 050 060 028 ** II **
190030879 085 095 085 090 090 ** SS **
190089873 060 ** ** ** 010 ** SR **
211031744 080 103 060 ** 057 ** MM **
211062052 ** ** ** ** 000 ** SR **
211029441 090 094 085 110 097 ** SS **
190126248 070 ** 060 ** 021 ** II **
180066161 040 ** 085 ** 020 ** II **
170041042 095 200 090 090 127 ** SS **
200042360 040 ** 040 ** 013 ** II **
211043692 040 ** 040 ** 013 ** II **
170112900 ** ** ** ** 000 ** SR **
211029540 050 122 060 085 087 003 SS **
200027158 060 069 080 090 076 ** MS **
180037242 095 142 090 ** 078 ** MS **
221008436 080 010 070 065 050 ** MM **
170115500 095 100 080 ** 062 ** MM **
232014576 095 107 080 095 096 ** SS **
média 072 097 068 088 059 ** ** Média da turma
  • AL é A-PDDL
  • LT é LIGHTSOUT
  • AL é A-HDDL
  • CL é CRIAR-HDDL

Author: Bruno Ribas

Created: 2023-12-18 Mon 20:22

Validate