Inteligência Artificial

Ementa:

Resolução de problemas. Representação do conhecimento. Sistema especialista. Aprendizagem de máquina. Representação da incerteza. Redes neurais artificiais. Computação evolucionária. Mineração de dados.

Aptidões:

Os alunos de Engenharia de Computação devem ser preparados para conhecer os aspectos teóricos das diversas técnicas passíveis de uso na área, bem como ter um espírito prático que permita o projeto de sistemas e, também, a sua implementação. Dentro desta visão, tem-se o programa de aprendizagem Inteligência Artificial, o qual busca fornecer os conceitos básicos das principais técnicas da área, tanto em sua visão clássica (métodos de busca e técnicas baseadas em lógica), quanto nas abordagens mais recentes (redes neurais artificiais. computação evolucionária, mineração de dados e outros). Ao mesmo tempo, o programa de aprendizagem busca promover a aplicação dessas técnicas em situações reais, desenvolvendo nos alunos a capacidade de analisar os diversos problemas e definir a melhor técnica a ser utilizada para então implementá-la. As aptidões apresentadas caracterizam-se como tecnológicas e contribuem para o desenvolvimento de ferramentas básicas ou aplicativos. - Aptidões específicas: Implementar algoritmos de busca em profundidade e largura sobre estruturas do tipo árvore. Implementar os algoritmos de busca heurística em largura, em profundidade, com aprofundamento iterativo e busca A*. Representar conhecimentos na forma de regras de produção. Implementar um sistema especialista baseado em shell. Aplicar uma metodologia de aquisição de conhecimentos. Aplicar algoritmos de aprendizagem de máquina para classificação. Aplicar algoritmos de aprendizagem de máquina para agrupamento. Representar a incerteza por meio de conjuntos fuzzy e redes de crenças. Aplicar a lógica fuzzy. Especificar uma rede neural artificial. Treinar uma rede neural artificial. Modelar um problema baseado em computação evolucionária. Utilizar a metodologia escolhida para resolução de problemas. Reconhecer as diversas etapas de um processo de mineração de dados. Especificar metodologias e ferramentas a serem usadas na extração de conhecimentos para um problema indicado.

Temas de Estudo:

Resolução de problemas usando busca cega em profundidade e largura e busca informada A*. Sistema especialista: arquitetura e estratégia de inferência. Aprendizagem de máquina: classificação, agrupamento e associação. Redes neurais artificiais. Computação evolucionária. Mineração de dados.

Metodologia:

A metodologia adotada baseia-se em princípios que levam os alunos ao aprender a aprender, colocando-os em uma situação que requer leituras, trabalhos em grupos, aulas expositivas dialogadas, pesquisas e produções de conhecimentos. As pesquisas serão por meio de livros e periódicos atualizados. A produção de conhecimentos deverá seguir padrões científicos. Os assuntos serão desenvolvidos segundo os seguintes procedimentos: - Aula expositiva, pesquisa bibliográfica, produção individual, produção coletiva. - Apresentação de um problema, resolução parcial do problema, resolução completa do problema, apresentação do resultado final e discussão. Todas as aptidões serão desenvolvidas através de situações/atividades ligadas diretamente ao domínio do curso.

Procedimentos de Avaliação:

O processo avaliativo terá como referencial o conjunto de aptidões em desenvolvimento. Os procedimentos serão distribuídos em duas notas parciais, formadas por provas escritas e trabalhos em laboratório (sobre situações-problema).

Bibliografia:

  1. Básica:

    • RUSSEL, S. J.; NORVIG, P. Inteligência artificial. 2. ed.; Editora Campus, 2004.
    • REZENDE, Solange Oliveira (Coord.). Sistemas inteligentes – fundamentos e aplicações. Editora Manole, 2002.
    • MITCHELL, T.M. Machine learning. WCB/McGraw-Hill, 1997. ISBN 0-07-042807-7.

  2. Complementar:

    • COHEN, P. R. Empirical methods for artificial intelligence. The MIT Press, 1995.
    • BENDER, E.A. Mathematical methods in artificial intelligence. IEEE Computer Society Press, 1996.
    • LUGER, G. F.; STUBBLEFIELD, W. A. Artificial intelligence: structures and strategies for complex problem solving. The Benjamin Cummings Publishing Company, Inc., 1993.
    • LIEBOWITZ, J.; DE SALVO, D.A. (Eds.). Structuring expert systems - domain, design and development. Yourdon Press - Prentice Hall Building, 1989.
    • FAUSETT, L.V. Fundamentals of neural networks. Ed. Prentice-Hall, 1994. ISBN 0133341860.
    • BÄCK, T.; FOGEL, D.B.; MICHALEWICZ, T. (Eds.). Evolutionary computation 1 – basic algorithms and operators. Institute of Physics Publishing, 2000. ISBN 0-7503-0664-5.