Disciplina Curricular

Desenho e Análise de Algoritmos DAAlgo

Mestrado Bolonha em Ciência de Dados - 1_MCD 2018/19

Contextos

Grupo: 1_MCD 2018/19 > 2º Ciclo > Parte Escolar > Opcionais > 733 - MCD - Grupo 4

Período:

Grupo: 1_MCD 2018/19 > 2º Ciclo > Parte Escolar > Opcionais > 732 - MCD - Grupo 3

Período:

Peso

6.0 (para cálculo da média)

Objectivos

Esta unidade curricular objetiva desenvolver um conjunto de competências avançadas para complementar o conhecimento padrão de algoritmos e estruturas de dados. Após conclusão da unidade curricular, os alunos deverão ser conseguir: analisar a complexidade de algoritmos; saber decompor problemas para obter ganhos de desempenho; modelar problemas em diversos paradigmas; aplicar um conjunto de técnicas de desenho e análise para problemas no contexto de aplicações computacionais, como desenhar algoritmos de aproximação polinomiais para tarefas de complexidade exponencial ou desenvolver algoritmos aleatórios para resolução de tarefas.

Programa

Modelação de problemas com grafos. Algoritmos de pesquisa (pesquisa por retrocesso, pesquisa heurística) e de pertença (bloom filters, árvores prefixas, conjuntos disjuntos). Decomposição de Problemas (divide-and-conquer, algoritmos gananciosos, programação dinâmica). Programação com restrições. Algoritmos randomizados (Monte-Carlo, Las-Vegas, algoritmo de Metropolis). Elementos de Teoria da Complexidade. Algoritmos de Aproximação. Programação Probabilística.

Métodos de ensino e avaliação

Aulas teóricas de exposição da matéria e aulas teórico-práticas de resolução de exercícios. Avaliação contínua baseada no trabalho realizado nas aulas teórico-práticas, eventualmente completado fora da sala de aula. Projeto de investigação, envolvendo a análise de um problema, e o desenho e implementação de uma solução. Estudo aprofundado e apresentação oral de um tópico relacionado com as matérias lecionadas.

Disciplinas Execução

2023/2024 - 2 Semestre

2022/2023 - 2 Semestre

2021/2022 - 2 Semestre

2020/2021 - 2º semestre

2019/2020 - 2 Semestre

2018/2019 - 2 Semestre