Unidade Curricular:Código:
Inteligência Artificial833IART
Ano:Nível:Curso:Créditos:
1MestradoEngenharia Informática (Sistemas de Informação e Multimedia)6 ects
Período Lectivo:Língua de Instrução:Nº Horas:
Segundo SemestrePortuguês/Inglês78
Objectivos de Aprendizagem:
Competências (Descritores Dublin):
1. Conhecimento e compreensão:
1.1. Evolução da IA e do seu impacto em diversas áreas da sociedade.
1.2. Diferentes abordagens/áreas da IA.
1.3. Algoritmos básicos de IA.
1.4. Das competências necessárias ao desenvolvimento de sistemas com IA de um modo geral.
2. Aplicação de conhecimento e compreensão:
2.1. Integrar equipas de desenvolvimento de sistemas/aplicações que usem IA.
2.2. Utilizar e integrar algoritmos de IA de forma consistente com os objetivos a atingir.
3. Avaliação/tomada de decisões:
3.1. Escolha de abordagens de IA adequadas a situações específicas
3.2. Integrar e participar nas tomadas de decisão de equipas de desenvolvimento de projetos de IA.
4. Comunicação:
4.1. Descrever sistemas baseados em IA.
4.2. Trabalhar em grupo.
4.3. Argumentar oralmente e por escrito.
5. Autonomia e aprendizagem:
5.1. Aprendizagem autónoma de novas tecnologias em desenvolvimento
Conteúdos Programáticos:
1. Introdução à Inteligência Artificial (IA)
2. Agentes Inteligentes (AGI)
2.1 Projeto de AGI
2.2 Ambientes e Propriedades
3. Métodos de Resolução de Problemas (RP)
3.1 RP através de Agentes de Pesquisa
3.1.1 Formulação de Problemas, exemplos e soluções
3.1.2 Pesquisa não informada: análise e comparação
3.2 Pesquisa Informada
3.3 Computação Evolucionária
3.4 Problemas com Satisfação de Restrições (PSR)
3.5 Problemas Considerando Adversários (Jogos)
4. Representação do Conhecimento, Raciocínio e Lógica
4.1 Introdução, Estruturas e Objetos
4.3 Manipulação de Estruturas Simbólicas
4.4 Agente Baseado em Conhecimento
4.5 Representação, Raciocínio e Lógica
4.6 Transformação do Conhecimento em Ação
4.7 Lógica Proposicional, de Predicados, Modal e Temporal
5. Introdução à Programação em Lógica
5.1 Cláusulas, Factos e Regras
5.2 Sintaxe e Tipos de Dados em Prolog
5.3 Mecanismos de Unificação e Retrocesso
6. Aprendizagem Máquina
6.1 Aprendizagem indutiva
6.2 Redes neuronais
Demonstração da Coerência dos Conteúdos Programáticos com os Objectivos da Unidade Curricular:
Os conteúdos programáticos apresentados são coerentes com os objectivos de aprendizagem da unidade curricular uma vez que existe uma grande convergência entre os capítulos do programa da cadeira e os conhecimentos que é suposto o aluno adquirir em cada um desses capítulos.
Os conceitos fundamentais de inteligência artificial e de agentes inteligentes são apresentados nos capítulos introdutórios, nos capítulos seguintes são apresentados vários métodos e técnicas de inteligência artificial como a pesquisa e a lógica. É, ainda, dado destaque à área de aprendizagem máquina.
Os objetivos da aprendizagem são atingidos complementando os conceitos teóricos com exemplos e exercícios concretos executados em ambiente de laboratório recorrendo a software apropriado.
Metodologias de Ensino (Avaliação Incluída):
Componente teórico-prática (TP) e prático-laboratorial (PL). Nas aulas TP os conceitos são apresentados intercalados com exemplos e exercícios. Nas aulas PL são colocados e resolvidos exercícios e problemas, eventualmente recorrendo a software apropriado.
Nota_Final_IA = (1/2) x Nota_TP + (1/2) x Nota_PL
Obrigatório:
Nota_TP >= 10
Nota_PL >= 10
Nota_PL: obrigatoriamente por avaliação contínua e não é sujeita a exame. Consiste num projeto de programação realizado durante o semestre. Caso o aluno não submeta o projeto terá zero valores e apenas poderá realizar o projeto numa edição subsequente da UC.
Nota_PL = Nota do projeto prático
Nota_TP:
Em avaliação contínua, duas frequências F1 e F2, Nota_TP = (50%) x F1 + (50%) x F2
Em exame, Nota_TP = Nota_Exame_TP
Se apenas uma componente TP ou PL for positiva fica válida durante um prazo máximo de dois anos lectivos após o ano em que o aluno obteve aprovação nessa componente. Durante esse período a UC está não concluída (NC)
Demonstração da Coerência das Metodologias de Ensino com os Objectivos de Aprendizagem da Unidade Curricular:
A metodologia de ensino/aprendizagem aplicada nesta unidade curricular bem como o seu sistema de avaliação encontram-se perfeitamente alinhados com os objectivos a atingir pelos alunos no final do período letivo. Os conceitos teóricos são apresentados, discutidos, aplicados e avaliados no contexto das aulas teóricas o que garante aos alunos uma base sólida de conhecimentos fundamentais para entenderem de forma aprofundada os desafios que se colocam a esta área do conhecimento. Por outro lado, para que o estudo não fique restrito a modelos conceptuais, nas aulas práticas são apresentados casos de estudo concretos e implementadas soluções para problemas reais recorrendo a ferramentas de software apropriadas. Esta combinação garante uma formação aos alunos que lhes permite conhecer os fundamentos científicos essenciais a uma boa compreensão do tema bem como a capacidade de eles se adaptarem a mudanças tecnológicas constantes. O processo de avaliação constituído por testes teóricos e trabalhos práticos garante também um correto equilíbrio entre o esforço dedicado a ambas as componentes. O objetivo é formar profissionais conhecedores das técnicas e ferramentas do estado da arte mas também garantir a sua capacidade de evolução futura. Nesta unidade curricular os conceitos relacionados com a inteligência artificial são apresentados e avaliados na componente teórica. Estes conceitos são depois aplicados na resolução de fichas e trabalhos práticos no contexto das aulas práticas.
Bibliografia:
[1] Russell, Stuart ; Norvig, Peter, “Artificial Intelligence: A Modern Approach”, Prentice Hall, 3rd edition, 2009
[2] Costa, E.; Simões, A., “Inteligência Artificial - Fundamentos e Aplicações”, Editora FCA, 2ª edição, 2008
[3] Witten, Frank, Hall, Pal, “Data Mining: Practical Machine Learning Tools and Techniques, 4rd Edition”, Morgan Kaufmann, 2017
[4] I. Bratko, "Prolog Programming for Artificial Intelligence, 4th edition", Pearson Education, 2011
Docente (* Responsável):
José Manuel Torres (jtorres@ufp.edu.pt)