Instituto de Computação - UNICAMP

MC658 - Projeto e Análise de Algoritmos III
Professor Cid C. de Souza (turma A)
1º semestre de 2019


Novidades Docente Locais e horários Objetivos Programa da disciplina Referências bibliográficas Material didático Avaliação Listas de exercícios Datas importantes

Novidades: Consulte esta seção freqüentemente.

  1. Média Final.
    Food for thought:
    [15/07/2019]
  2. Disponibilizadas as médias do semestre e relação de alunos em exame.
    [01/07/2019]
  3. Veja o relatório completo da correção do TP4 preparado pelo PED.
    Observação: você tem até terça-feira, 2/7, para solicitar revisão da sua nota, o que pode ser agendado por email com o PED.
    [01/07/2019]
  4. Disponibilizadas as notas da P2.
    Observação: a revisão da prova só poderá ser feita nesta quinta-feira, 27/6, na sala 322 do IC3 às 16 horas.
    [27/06/2019]
  5. Veja o relatório completo da correção do TP3 preparado pelo PED.
    Nota: de acordo com as regras da disciplina, você tem até quarta-feira, 26/6, para solicitar revisão da sua nota, o que pode ser agendado por email com o PED.
    [19/06/2019]
  6. Slides referentes à última aula sobre algoritmos aproximados: α-aproximações usando programação linear e esquemas de aproximação
    Nota: alguns destes slides foram gentilmente cedidos pelo Prof. Flávio Miyazawa. Abaixo uma referência para o estudo deste último tópico.

    Tópico:

    Referências
    (para ver a numeração siga o link acima)
    Páginas
    Esquemas de Aproximação (Completamente) Polinomiais [PTAS e FPTAS]
    [3]
    429-427

    [18/06/2019]

  7. Guia de estudos para o material sobre algoritmos aproximados visto em aula até esta data:

    Tópico:

    Referências
    (para ver a numeração siga o link acima)
    Páginas
    Algoritmos Aproximados (aproximação absoluta, relativa, questão P×NP)
    [4]
    559--577
    α-aproximações para o TSP métrico
    [3]
    411-418

    [13/06/2019]

  8. Slides referentes às duas primeiras aulas sobre algoritmos aproximados: aproximações absolutas e α-aproximações
    Nota: alguns destes slides foram gentilmente cedidos pelo Prof. Flávio Miyazawa.
    [13/06/2019]
  9. Disponibilizadas listas sobre algoritmos aproximados:
    1. Algoritmos Aproximados (preparada pelo docente)
    2. Algoritmos Aproximados (gentilmente disponibilizada pelo Prof. Eduardo Xavier)
    [11/06/2019]
  10. Avisos importantes: [05/06/2019]
  11. Informações sobre o TP4: [03/06/2019]
  12. Slides referentes à terceira aula sobre relaxação lagrangiana podem ser baixados aqui
    [03/06/2019]
  13. Disponibilizados o enunciado e as instâncias de teste do TP4.
    Os grupos para realização do TP4 são os mesmos do TP3.
    [30/05/2019]
  14. Slides referentes à segunda aula sobre relaxação lagrangiana podem ser baixados aqui
    [30/05/2019]
  15. Slides referentes à primeira aula sobre relaxação lagrangiana podem ser baixados aqui.
    [29/05/2019]
  16. Novos slides referentes às aulas sobre heurísticas: busca tabu e grasp
    Nota: estes slides foram gentilmente cedidos pelo Prof. Flávio Miyazawa.
    [24/05/2019]
  17. Disponibilizado o conjunto completo das instâncias de teste do TP3.
    [18/05/2019]
  18. Disponibilizadas as notas do TP2. Veja o relatório completo da correção dos trabalhos preparado pelo PED.
    Veja também o gráfico de distribuição das notas do trabalho.
    Nota: de acordo com as regras da disciplina, você tem até terça-feira, 21/5, para solicitar revisão da sua nota, o que pode ser agendado por email com o PED.
    [18/05/2019]
  19. Slides referentes às aulas sobre heurísticas: conceitos básicos (heurísticas construtivas e de busca local e simulated annealing
    Nota: parte significativa destes slides foram gentilmente cedidos pelo Prof. Flávio Miyazawa.
    [18/05/2019]
  20. Disponibilizado o enunciado do TP3 que deverá ser entregue até o dia 30/05/2019. Por enquanto, estão liberados os arquivos de entrada correspondentes a duas instâncias: Até o dia 21/05, próxima terça, as demais instâncias do benchmark poderão ser baixadas nesta página.

    Grupos para o TP3:

       
    grupo RA dos integrantes
    01 156059 156074
    02 187890 188115
    03 171119 176665
    04 167236 176848
    05 170013 184403
    06 138309 150630
    07 90996 148246
    08 171509 135680
    09 118607 157065

    [14/05/2019]
  21. Material usado nas aulas sobre programação por restrições: Algumas páginas interessantes (além daquelas já indicadas nos slides): [14/05/2019]
  22. Baixe aqui o código do Minizinc para o jobshop scheduling problem visto na aula de ontem.
    [07/05/2019]
  23. Disponibilizadas as notas da P1.
    Veja gráfico de distribuição das notas da prova.
    Nota: de acordo com as regras da disciplina, você tem até sexta-feira, 3/5, para solicitar revisão da sua nota, o que pode ser agendado por email. Você poderá ver pessoalmente sua prova amanhã, após a aula.
    [01/05/2019]
  24. Disponibilizadas as notas do 1º trabalho prático. Veja o relatório completo da correção dos trabalhos preparado pelo PED.
    Veja gráfico de distribuição das notas do trabalho.
    [30/04/2019]
  25. URGENTE!!!
    Hoje não haverá aula em virtude da suspensão das atividades acadêmicas no campus em decorrência de uma pane elétrica no Restaurante Universitário (RU). Veja o anúncio oficial na página da UNICAMP.
    [30/04/2019]
  26. Divulgado o enunciado do 2 º trabalho prático. Fique atento à data de entrega (07/05) e à nova formação dos grupos (houve mudanças!!!).
    [23/04/2019]
  27. Leia a folha de instruções da P1
    [15/04/2019]
  28. Disponibilizados os exemplos de modelos em Julia usados em sala de aula.
    Nota: para rodar estes modelos, não esqueça de selecionar corretamente no código o resolvedor (CPLEX ou Gurobi) que você quer usar.
    [12/04/2019]
  29. Sobre a entrega do TP1, a seguinte mensagem foi enviada a todos os alunos:
       Alguns alunos me procuraram para saber se podiam entregar o TP1 com
       atraso.
    
       Darei uma tolerância até sábado. Porém, a cada dia de atraso haverá
       um decréscimo  na nota, o qual  será decido a posteriori,  tendo em
       vista que  a solicitação só foi  feita na data de  hoje!  Portanto,
       após as  24:00 horas deste  sábado, dia 13/4, nenhum  trabalho será
       mais recebido.
    
       Observação: via de  regra, o quanto antes o  trabalho for entregue,
       mesmo que contendo alguns erros, melhor!
    [11/04/2019]

  30. Baixe a planilha do gnumeric corrigida para o problema do flowshop.
    Desafio (ainda valendo 2×10-37 na média): descreva uma estratégia para encontrar o erro na planilha do flowshop usada em aula.
    Dica: lembre que nós conhecíamos uma solução viável com valor melhor que aquela retornada pelo solver da planilha. Como isso pode nos ajudar a encontrar o erro? :)

    As planilhas para sua análise podem ser baixadas clicando nos links apropriados ao lado:   planilha corrigida   planilha com erro (usada em aula)

    Note que o arquivo com a descrição do modelo sofreu pequenas correções de digitação. Você pode baixá-lo novamente aqui
    [05/04/2019]

  31. A tabela abaixo serve de guia de estudos para o tópico Programação Linear Inteira.

    Tópico:

    Referências
    (para ver a numeração siga o link acima)
    Páginas
    PLI [7]+[8] capítulos (incluindo exercícios) sobre modelagem usando PLI
    [9] 38--39

    [04/04/2019]

  32. Disponibilizada a lista de exercícios de formulações usando PLI e matrizes TU
    [04/04/2019]
  33. Exemplos de planilhas eletrônicas na resolução de problemas NP-difíceis (aulas 9 e 10): [03/04/2019]
  34. Divulgada a lista dos grupos para o TP1. São 11 duplas e uma tripla (grupo 8). Os grupos de 1 a 7 foram formados conforme solicitação dos seus integrantes. Os demais tiveram os nomes de seus integrantes escolhidos aleatoriamente pelo docente.
    Não serão permitidas alterações na composição dos grupos!
    [31/03/2019]
  35. Disponibilizado o enunciado do TP1 que deverá ser entregue até o dia 11/04/2019. Outros arquivos necessários para a preparação do trabalho são: Os nomes dos integrantes das duplas que farão o trabalho devem ser informados via email enviado ao docente até esta 5ª-feira 28/03. Alunos que não tenham se manifestado até esta data serão alocados aleatoriamente pelo docente a duplas formadas pelo docente e tomarão conhecimento dos seus parceiros até o dia 02/04.
    [26/03/2019]
  36. A tabela abaixo serve de guia de estudos para o material visto em aula até a data de hoje.

    Tópico:

    Referências
    (para ver a numeração siga o link acima)
    Páginas
    Programação Dinâmica
    [1]
    Capítulo 15
    Backtracking
    [4]
    323--369
    [2]
    358--361
    Branch-and-bound
    [3]
    438--448

    [21/03/2019]

  37. Houve uma pequena alteração no tutorial preparado pelo PED para a instalação de pacotes essenciais para a realização de alguns trabalhos práticos. Considere baixá-lo novamente caso jã tenha realizado o download antes dessa desta.
    [21/03/2019]
  38. Baixe aqui os slides sobre a breve revisão de programação linear e sobre modelagem usando programação linear inteira. (sexta a nona aula).
    [21/03/2019] (atualizado em [03/04/2019])
  39. Disponibilizada a lista de exercícios de backtracking e branch-and-bound (algoritmos exatos - enumeração implícita)
    [21/03/2019]
  40. Disponibilizada a lista de exercícios de programação dinâmica (algoritmos exatos pseudopolinomiais)
    [21/03/2019]
  41. Baixe aqui os slides sobre algoritmos de branch-and-bound (quarta e quinta aula).
    [19/03/2019]
  42. Baixe aqui os slides sobre algoritmos de backtracking (terceira e quarta aula).
    [15/03/2019]
  43. Baixe aqui a planilha do gnumeric exemplificando o algoritmo de programação dinâmica para o problema da mochila binária com custos inteiros.
    [13/03/2019]
  44. Baixe aqui o tutorial preparado pelo PED para a instalação de pacotes essenciais para a realização de alguns trabalhos práticos que serão propostos no semestre. Sugere-se fortemente que as instalações sejam feitas o quanto antes para que não haver problemas com prazo de entrega de trabalhos.. Fique atento para instalar as versões que serão usadas para corrigir os trabalhos.
    [13/03/2019]
  45. Baixe aqui os slides sobre programação dinâmica e algoritmos pseudopolinomiais (segunda e terceira aula).
    [12/03/2019]
  46. Definido o local e horário de atendimento do PED.
    [07/03/2019]
  47. Baixe aqui os slides usados na primeira e segunda aulas.
    [07/03/2019]
  48. Baixe aqui o plano de desenvolvimento da disciplina para o semestre.
    [07/03/2019]
  49. Início das aulas.
    [28/02/2019]

Docente:

Dias e locais das aulas e do atendimento:

Objetivos da Disciplina:

Programa:  (em verde encontra-se o material já coberto)

Referências bibliográficas:

Material didático: Transparências usadas em aula serão disponibilizadas nesta seção, sempre que possível, antes da data de seu uso efetivo.

Avaliação:

Listas de exercícios:

Datas Importantes:


Cid C. de Souza