ELC1014 - Inteligência Artificial
Primeiro Semestre de 2011
Professora: Juliana Kaizer Vizzotto
Carga horária: 60h
Horários: Terças-feiras, das 8:30 às 10:30, e quintas-feiras, das 8:30 às 10:30
Sala: 368
Material de Apoio
- (10/03/2011) Introdução Inteligência Artificial
Texto com histórico, conceitos, paradigmas e plano de ensino da disciplina - (12/04/2011) Busca Cega
Texto de apoio. - (04/05/2011) Programação Dinâmica
Exemplo de Multiplicaçao de Cadeias de Matrizes. - (10/05/2011) Busca Heurística - Busca Gulosa
Slides. - (10/05/2011) Busca Heurística - A(star): minimizando o custo do caminho total
Slides. - (19/05/2011) Inventando Heurísticas
Slides - Artigo para Leitura para a aula de 19/05
Armand E. Prieditis. Machine Discovery of Effective Admissible Heuristics.
- Solvability of the 8-puzzle
- (26/05/2011) CSP e Hill Climbing
Slides - Resolução do n-queens com Hill Climbing (Alunos: André, Bernardo e Fred)
Codigo C.
- (31/05/2011) Simulated Annealing
Slides. - Exemplo Simualted Annealing n-queens
Página Web com animação. - Artigo sobre Implementação do Simulated Annealing
Sergio Ledesma, Gabriel Aviña e Raul Sanchez. - Resolução do n-queens com Simulated Annealing (Alunos: Bernardo e Fred)
Código C. - (16/06/2011) Game Playing: MINIMAX ou MINMAX
Slides.
Avaliações
- Crédito extra: é possível obter até 1,0 ponto extra em um dos bimestres, com atividades aprovadas pela professora. Formas de obtenção: exercícios e pesquisas realizados por iniciativa própria, resumos de conteúdo, leitura e resumo de artigos relacionados à disciplina, desenvolvimento de código para a disciplina, etc. Converse com a professora antes de realizar atividades para crédito extra!
Trabalhos
- (19/04/2011) Implementação dos Canibais e Missionários com busca em largura e implementação de um agente de busca de rotas com busca de custo uniforme (Dijkstra' search).
- Seminários (grupos de 4 Alunos - 5 grupos no máximo - 21/06 início das apresentações). O grupo deve preparar um seminário/apresentação com exercícios e questões ao final. A duração do seminário deve ser de 1h30min, incluindo os exercícios. As apresentações devem ser enviadas
para a professora com 4 dias de antecedência da data da apresentação.
Sugestão de Tópicos (3 primeiros são obrigatórios).
- Algoritmos Genéticos
- Lógica Fuzzy
- Redes Neurais
- Métodos Estatísticos (grupo deve focar)
- Sistemas Especialistas (grupo deve focar)
- Vida Artificial (Artificial Life)
- Sociedades Artificiais
- Controle e Simulação de Tráfego
- Sugestões também são aceitas :)
Avaliação dos trabalhos
- A avaliação dos trabalhos levará em conta a funcionalidade e a legibilidade dos programas desenvolvidos, bem como a pontualidade na entrega.
- Atenção: Havendo suspeita de plágio (cópia) de trabalhos, os alunos envolvidos poderão ser submetidos a outra avaliação. A penalização para casos de plágio será de redução da nota de uma ou mais avaliações.
Links
Artigos
- Computer Machinery and Intelligence
Artigo original do Alan Turing sobre Inteligência Artificial (1950)
Livros
- Artificial Intelligence: A Modern Approach
Website do livro do Stuart Russel e Peter Norvig
Revisão Análise de Complexidade
- Video com Aulas do livro Introduction to Algorithms
Lectures 1 e 2. Introduction to Algorithms de Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein - MIT Press (2009).
Dica do aluno Cícero Augusto.
Linguagem Python
- Python Programming Language
Official Website
Linguagem Java
- AIMA-JAVA
Java implementation of algorithms from Norvig And Russell's "Artificial Intelligence - A Modern Approach 3rd Edition."
- Java Agent Template
Pacote de Programas Java para criação de agentes que se comunicam através da internet - Java Agent DEvelopment Framework
Plataforma open-source para aplicações baseadas em agentes peer-to-peer