Inteligência Artificial

Código:
14345
Ano:
3
Semestre:
S1
Créditos ECTS:
6
Carga Horária:
PL(30H)/T(30H)
Área Científica:
Informática
Tipo de ensino:
Presencial
Estágios:
Não aplicável
Objectivos de Aprendizagem:
A unidade curricular visa proporcionar uma visão integrada dos fundamentos da Inteligência Artificial. No final, os estudantes deverão ser capazes de:
O1 - compreender os principais conceitos, áreas e paradigmas da IA, enquadrados pelo conceito de agente inteligente;
O2 - modelar problemas como espaços de estados;
O3 - conhecer e aplicar algoritmos de procura não informada e informada;
O4 - representar conhecimento através de lógica e regras;
O5 - compreender os fundamentos da aprendizagem automática, incluindo treino, teste, overfitting, métricas e validação;
O6 - compreender e aplicar árvores de decisão, Random Forest e redes neuronais;
O7 - conhecer os princípios dos algoritmos evolucionários,
O8 - utilizar Python, NumPy, Pandas, Matplotlib e Scikit-Learn na implementação de soluções de IA;
O9 - comparar soluções, interpretar resultados e comunicar conclusões fundamentadas.
Conteúdos programáticos:
C1. Introdução à IA: história, conceitos, áreas, paradigmas e agentes inteligentes.
C2. Formulação de problemas e espaços de estados: estados, ações, operadores, custos e objetivos.
C3. Procura não informada: DFS, BFS e Uniform Cost Search.
C4. Procura heurística: heurísticas, Greedy Best-First Search e A*.
C5. Representação do conhecimento: lógica, regras e inferência.
C6. Aprendizagem Automática: dados, treino, teste, generalização e overfitting.
C7. Árvores de decisão e Random Forest.
C8. Redes neuronais: perceptrão e MLP.
C9. Avaliação de modelos: métricas de classificação e validação.
C10. Algoritmos evolucionários e algoritmo genético simples.
C11. Programação aplicada à IA: Python, estruturas de dados e controlo, funções e módulos, NumPy, Pandas, Matplotlib e Scikit-Learn;
C12. Implementação de algoritmos de procura e modelos de IA.
Metodologias de Ensino e Critérios de Avaliação:
A UC contempla aulas teóricas e aulas práticas laboratoriais.
Nas aulas teóricas o docente apresenta os tópicos do programa e discute os seus conteúdos com os estudantes. Nas aulas práticas os estudantes resolvem problemas propostos usando a linguagem Python.

Avaliação de conhecimentos (14 valores - 70%) - 2 testes ou o exame
Trabalho prático (6 valores - 30%)

Bibliografia principal:
- Costa, E., & Simões, A. (2008). Inteligência Artificial - Fundamentos e Aplicações . FCA. ISBN: 978-972-722-269-8.
- Russell, S., & Norvig, P. (2009). Artificial Intelligence: A Modern Approach (3rd ed.). Prentice Hall/Pearson. ISBN: 978-0-13-604259-4.
- Costa, E. (2024). Programação em Python: Fundamentos e Resolução de Problemas (2.a ed.). FCA. ISBN: 978-972-722-940-6.
- Géron, A. (2022). Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow (3rd ed.). O'Reilly Media. ISBN: 978-1-098-12597-4.

Documentos disponibilizados no moodle.
Língua:
Português
Esta informação promove os seguintes Objetivos de Desenvolvimento Sustentável da ONU:
Garantir o acesso à educação inclusiva, de qualidade e equitativa, e promover oportunidades de aprendizagem ao longo da vida para todos Alcançar a igualdade de género e empoderar todas as mulheres e raparigas Reduzir as desigualdades no interior dos países e entre países