====== Otimização combinatória (2020/1) ====== //If one would take statistics about which mathematical problem is using up most of the computer time in the world, then ... the answer would probably be linear programming. (László Lovász)// :!: Bem-vindo à otimização combinatória. ===== Informações gerais ===== **Carga horária:** 60 h (em 30 aulas de 2h)\\ **Créditos:** 4\\ **Súmula:** Modelagem matemática, programação linear e não-linear. Programação inteira e solução via métodos exatos. Algoritmos de aproximação e heurísticas.\\ **Turma:** A.\\ **Horário/Sala:** Seg/Qua 10.30, Zoom, [[http://mapa.ufrgs.br/index.php?verb=pan&building=1885|prédio 43413]] (67).\\ **Consultas:** Qui 13.30, Zoom, [[http://mapa.ufrgs.br/index.php?verb=pan&building=44|prédio 43425]].\\ **Detalhes:** {{sy.pdf|Programa}}. ===== Resultados ===== * [[2020-1-FF|Frequência]] * [[2020-1-Notas|Notas]] * [[2020-1-Trabalhos|Trabalhos]] * [[2020-1-Quiz|Quiz]] ===== Notícias ===== * 29 de julho: [[http://www.inf.ufrgs.br/~mrpritt/oc/ere.pdf|Informações sobre ERE]] * 29 de julho: Prazo para definição do trabalho! * 13 de julho: Definição do trabalho prático aberto! * 1 de maio: {{SyEad-approved.pdf|Plano de atuação aprovado pela COMGRAD}} * 16 de março: As aulas foram suspensas. * Otimização: [[https://youtu.be/Dc38La-Xvog|tudo que você consegue fazer eu faço melhor]]. 8-) ===== Materiais ===== * {{notas-10993.pdf|Notas de aula (Julho de 2020)}}. * Página da disciplina em [[2019-2|2019/2]], [[2019-1|2019/1]], [[2018-2|2018/2]], [[2018-1|2018/1]], [[2017-2|2017/2]], [[2017-1|2017/1]], [[2016-2|2016/2]], [[2016-1|2016/1]], [[2015-2|2015/2]], [[2015-1|2015/1]], [[2014-2|2014/2]], [[2014-1|2014/1]], [[2013-2|2013/2]], [[2013-1|2013/1]], [[2012-2|2012/2]], [[2012-1|2012/1]], [[2011-2|2011/2]], [[2011-1|2011/1]], [[2010-2|2010/2]], [[2010-1|2010/1]], [[2009-2|2009/2]], [[2009-1|2009/1]], [[2008-2|2008/2]], [[2008-1|2008/1]] e [[2007-2|2007/2]]. * [[https://apps.ankiweb.net|Anki]] flashcards para [[http://www.inf.ufrgs.br/~mrpritt/oc/Otimização combinatória_U1.apkg|unidade 1]], [[http://www.inf.ufrgs.br/~mrpritt/oc/Otimização combinatória_U2.apkg|unidade 2]] e [[http://www.inf.ufrgs.br/~mrpritt/oc/Otimização combinatória_U3.apkg|unidade 3]]. ==== Aulas ==== ^ No. ^ Data ^ Tópicos ^ Notas pág. ^ Exercícios ^ Soluções ^ Leitura ^ Prazos ^ | | | ** Programação linear ** |||||| | 1 | 09/03 | Administrativa, Introdução: Exemplos e solução gráfica. | 9-11 | {{q0120201.pdf|Q1}}, {{e0120201.pdf|E1}} | {{e0120201.pdf|S1}} | [[http://dx.doi.org/10.1007/978-1-4614-7630-6_1|V1]],MF1,2 | | 2 | 11/03 | Formulação e exemplos. | 11-13 | {{q0220201.pdf|Q2}} | | [[http://dx.doi.org/10.1007/978-1-4614-7630-6_1|V1]],MF2 | | ** :!: Cronograma para aulas não presenciais ** ||||||| | 3 | 11/05 | [[:inf05010:2020-1-lab1|Laboratório de formulação.]] | 14 | {{e0220201.pdf|L1}} | {{se0220201.pdf|SL1}} | | | 4 | 13/05 | [[:inf05010:2020-1-simplex1|Forma matricial e normal, introdução método simplex.]] | 15-20 | [[https://forms.gle/RdzdYs1XjpFwQV7PA|Q3]],{{q0320201.pdf|SQ3}} | {{q0320201.pdf|SQ3}} | [[http://dx.doi.org/10.1007/978-1-4614-7630-6_2|V2]].1,MF2,3 | | 5 | 18/05 | [[:inf05010:2020-1-simplex2|Método simplex. Sistemas ilimitados.]] | 27-35 | [[https://forms.gle/ENthrcHzAGBYkiPG6|Q4]],{{q0420201.pdf|SQ4}} | | [[http://dx.doi.org/10.1007/978-1-4614-7630-6_2|V2]].2,2.3,MF3.{1,2} | | 6 | 20/05 | [[:inf05010:2020-1-simplex3|Método simplex. Pivô tool, fase I. Soluções degeneradas.]] | 35-46 | [[https://forms.gle/DKvgosVaWNmVKxiy7|Q5]],{{q0520201.pdf|SQ5}} | | [[http://dx.doi.org/10.1007/978-1-4614-7630-6_2|V2]].4,MF3.3 | | 7 | 25/05 | [[:inf05010:2020-1-dualidade1|Dualidade: Introdução, teoremas de dualidade.]] | 35-42 | [[https://forms.gle/P16jajqAZbzeWbSJ6|Q6]] | | [[http://dx.doi.org/10.1007/978-1-4614-7630-6_5|V5]].{1,2,3,4,6},MF4 | | 8 | 27/05 | [[:inf05010:revisao120201|Revisão e exercícios.]] | | {{e0320201.pdf|E2}} | {{s0320201.pdf|S2}} | | Prazo A4Q3 | | 9 | 01/06 | [[:inf05010:2020-1-dualidade2|Dualidade: Folgas complementares. Método simplex dual.]] | 51-59 | [[https://forms.gle/zFUq4aXGnHqoBVbj7|Q7]] | | [[http://dx.doi.org/10.1007/978-1-4614-7630-6_3|V3]],MF3.6 | Prazo A5Q4 | | 10 | 03/06 | **Prova 1** | | [[https://forms.gle/nLTh7iN6fhB6Tu3U7|Formulário]] | {{sp0120201.pdf|SP1}} | | Prazo A6Q5 | | 11 | 08/06 | [[:inf05010:2020-1-dualidade3|Método simplex dual. Analise de sensibilidade.]] | 60-17 | [[https://forms.gle/mXjJoAUxSmDWavccA|Q8]] | | [[http://dx.doi.org/10.1007/978-1-4614-7630-6_6|V6]].{1,2,3},[[http://dx.doi.org/10.1007/978-1-4614-7630-6_7|V7]].1 | Prazo A7Q6 | | 12 | 10/06 | [[:inf05010:2020-1-dualidade4|Analise de sensibilidade.]] | 72-79 | [[https://forms.gle/F4xoWZFvqDKhNirVA|Q9]], {{e0420201.pdf|E3}} | {{s0420201.pdf|S3}} | [[http://dx.doi.org/10.1007/978-1-4614-7630-6_6|V6]].{1,2,3},[[http://dx.doi.org/10.1007/978-1-4614-7630-6_7|V7]].1 | Prazo A8E2 | | || ** Programação inteira I ** |||||| | 13 | 15/06 | [[:inf05010:2020-1-pi1|Introdução e aplicações.]] | 87-103 | [[https://forms.gle/LT6ZwSW3m2EVgP6b9|Q10]] | | W1.{1-4},PS13.1 | Prazo A9Q7 | | 14 | 17/06 | [[:inf05010:2020-1-pi2|Formulação e exemplos.]] | 105-112 | [[https://forms.gle/GWHASxUCSrDH76kC8|Q11]], {{e0520201.pdf|E4}} | {{s0520201.pdf|S4}} | W1.{5-7},PS13.1 | Prazo A11Q8 | | 15 | 22/06 | [[:inf05010:2020-1-pi3|Laboratório de formulação.]] | | {{l0620201.pdf|L2}} | {{sl0620201.pdf|SL2}} | | Prazo A12Q9 | | 16 | 24/06 | [[:inf05010:revisao220201|Revisão e exercícios.]] | | | | | Prazo A13Q10 | | 17 | 29/06 | **Prova 2** | | [[https://forms.gle/C8ScxcaLzmX8b1Rk8|Formulário]] | {{sp0220201.pdf|SP2}} | | | || ** Heurísticas e aproximação ** |||||| | 18 | 06/07 | [[:inf05010:2020-1-mh1|Busca local.]] | 155-169 | [[https://forms.gle/xJwmSSxs4oyXjNpT7|Q12]] | [[http://nbviewer.jupyter.org/url/www.inf.ufrgs.br/~mrpritt/oc/D01-tsp-h1.ipynb|D1]] | | Prazo A14Q11 | | 19 | 08/07 | [[:inf05010:2020-1-mh2|GRASP, Simulated annealing, Busca local iterada, VNS.]] | 169-179 | [[https://forms.gle/1L2TGSpv6X4kXAk1A|Q13]] | [[http://nbviewer.jupyter.org/url/www.inf.ufrgs.br/~mrpritt/oc/D02-tsp-h2.ipynb|D2]] | | Prazo A15L2 | | 20 | 13/07 | [[:inf05010:2020-1-mh3|Busca Tabu, Algoritmos genéticos, meméticos.]] | 181-190 | [[https://forms.gle/X228668qouojA9WL6|Q14]] | | | Prazo A16E3/E4 | | || ** Programação inteira II ** |||||| | 21 | 15/07 | [[:inf05010:2020-1-pi4|Matrizes totalmente unimodulares.]] | 121-128 | [[https://forms.gle/vSjZXX1b2eNU8pfB8|Q15]] | | W3.{1,2},K5.4,PS13.2 | | 22 | 20/07 | [[:inf05010:2020-1-pi5|Problemas com solução simples.]] | 128-130 | [[https://forms.gle/8Wy2mHGN3yKmbide6|Q16]] | | W3.{3,4},PS13.2 | Prazo A18Q12 | | 23 | 22/07 | [[:inf05010:2020-1-pi6|Desigualdades válidas.]] | 130-136 | [[https://forms.gle/uCQya6zGggcKXPFh7|Q17]] | | W8.{1-4} | Prazo A19Q13 | | 24 | 27/07 | [[:inf05010:2020-1-pi7|Algoritmos de planos de corte.]] | 137-141 | [[https://forms.gle/vvbtcjWkdyjMmqw8A|Q18]] | | W8.{5,6},PS14.1 | Prazo A20Q14 | | 25 | 29/07 | [[:inf05010:2020-1-pi8|Algoritmos de Branch-and-bound.]] | 141-147 | [[https://forms.gle/kMu8NNotJ1W26dLg9|Q19]] | | W7,G5.2.3 | Prazo A21Q15 | | 26 | 03/08 | [[:inf05010:revisao320201|Revisão e exercícios.]] | | {{l0720201.pdf|E5}} | {{sl0720201.pdf|S5}} | | Prazo A22Q16 | | 27 | 05/08 | [[:inf05010:2020-1-apr|Algoritmos de aproximação.]] | | | | | Prazo A23Q17 | | 28 | 10/08 | **Prova 3** | | [[https://forms.gle/sFTd9MGV9YYN2Luv6|Formulário]] | | {{sp0320201.pdf|SP3}} | Prazo A24Q18 | | | 12/08 | [[:inf05010:2020-1-qa1|Sessão de dúvidas trabalho.]] | | | | | Prazo A25Q19 | | 29 | 17/08 | Apresentação de trabalhos. | | | | | Prazo A26E5 | | 30 | 19/08 | Apresentação de trabalhos. | | | | | Prazo A27Q20 | | | 31/08 | Prova de recuperação. | | | | | | | ** Cronograma ERE para quem não participou nas provas e trabalhos ** |||||||| | || ** Programação linear ** |||||| | | 24/08 | Sessão de perguntas e respostas unidade 1 |||||| | | 02/09 | Revisão unidade 1 |||||| | | 09/09 | **Prova 1** |||| {{sp0120201a.pdf|SP1}} || | | 21/09 | Sessão de perguntas e respostas unidade 2 |||||| | || ** Programação inteira I ** |||||| | | 05/10 | Revisão unidade 2 |||||| | | 07/10 | **Prova 2** |||| {{sp0220201a.pdf|SP2}} || | || ** Heurísticas e aproximação ** |||||| | | 19/10 | Sessão de perguntas e respostas Heurísticas |||||| | || ** Programação inteira II ** |||||| | | 26/10 | Sessão de perguntas e respostas unidade 3 |||||| | | 09/11 | Revisão unidade 3 |||||| | | 11/11 | **Prova 3** |||| {{sp0320201a.pdf|SP3}} || | | 23/11 | Apresentação de trabalhos. |||||| | | 30/11 | Prova de recuperação. |||||| | | 02/12 | [[https://www.inf.ufrgs.br/~mrpritt/R025-27-07-2020.html#anexo|Término oficial das aulas.]] |||||| | ** :!: Final da suspensão atual: 31 de dezembro ** |||||||| Livros: [V] Vanderbei, [MF] Maculan, Fampa, [W] Wolsey, [G] Goldbarg, [K] Korte, Vygen, [PS] Papadimitriou/Steiglitz. ==== Material ==== * {{r.tex|Template em LaTeX}} para a lista de exercícios e {{r.pdf|uma versão compilada}}. * Uma {{GLPK-quickref.pdf|referéncia répida}} para o GLPK e MathProg ==== Ferramentas ==== * [[http://www.maths.ed.ac.uk/LP-Explorer|LP explorer]] * Vanderbei's [[http://www.princeton.edu/~rvdb/JAVA/pivot/simple.html|simple pivot tool]] and [[https://vanderbei.princeton.edu/JAVA/pivot/advanced.html|advanced pivot tool]]. * [[http://www.gnu.org/software/glpk|GNU Linear programming kit]] ==== Bibliografia ==== Locations of visitors to this page