Notas. Notas. encontrem a solução ótima em tempo polinomial para qualquer instância do problema que estamos trabalhando 2 / 19.

Tamanho: px
Começar a partir da página:

Download "Notas. Notas. encontrem a solução ótima em tempo polinomial para qualquer instância do problema que estamos trabalhando 2 / 19."

Transcrição

1 Projeto e Análise de Algoritmos Algoritmos Aproximados Haroldo Gambini Santos Universidade Federal de Ouro Preto - UFOP 2 de maio de / 19 Situação Ideal Desejamos algoritmos que: encontrem a solução ótima em tempo polinomial para qualquer instância do problema que estamos trabalhando Enquanto P NP : para problemas NP-completos temos que nos contentar com 2 desses 3 2 / 19 Algoritmos Aproximados Algoritmo com garantia de produzir soluções sempre em um fator da solução ótima. Uma heurística pode ser um algoritmo aproximado caso exista tenha sido provado que para qualquer caso possível um padrão de qualidade se mantém. Heurísticas sem essa prova não são denominadas algoritmos aproximados. 3 / 19

2 Alg. Aproximados - Def. Um algoritmo é dito α aproximado se: 1 o mesmo roda em tempo polinomial; 2 o mesmo sempre produz uma solução dentro de um fator α da solução ótima. Convenções minimização α > 1 maximização α < 1 4 / 19 Algoritmos Aproximados - Motivação 1 problemas NP-Difíceis precisam de soluções; 2 forma matematicamente rigorosa de se estudar heurísticas; 3 enter o quão difíceis são os problemas. 5 / 19 Analisando a qualidade Questão Como avaliar a distância da solução ótima se calcular a solução ótima já é altamente custoso? Limites Para um problema de minimização(/maximização) difícil, calcular um Limite Inferior (/Superior ) pode ser fácil. Uma vez mostrado que nosso algoritmo sempre produz uma solução no máximo α vezes o custo da do limite em questão já ca provado que isso vale para a solução ótima. Ponto fundamental: qualidade do limite. 6 / 19

3 Exemplo: Balanceamento de carga 5 tarefas (n = 5), com tempos de processamento t j : t 1 = 3 t 2 = 7 t 3 = 5 t 4 = 1 t 5 = 4 3 máquinas (m = 3) 7 / 19 Objetivo: Diminuir o makespan Uma solução com makespan 8: M 1 M 2 M 3 t 1 = 3 t 4 =1 t 5 = 4 t 2 = 7 t 3 = 5 makespan=8 tempo Uma solução com makespan 7: M 1 t 1 = 3 t 5 = 4 M 2 t 2 = 7 t 3 = 5 t 4 =1 M 3 makespan=7 tempo 8 / 19 Um algoritmo guloso Idéia Alocar as tarefas, uma-a-uma, colocando a nova tarefa sempre na máquina com menor carga. procedure GreedyScheduling (t 1,..., t n, m ) T i 0, A(i) i 1..., m ; for j 1 to n do Encontre k : T k = min {1,...,m} T i ; A(k) A(k) {j} ; T k T k + t j ; 9 / 19

4 Limites Inferiores para o Makespan ótimo OPT Relaxação OPT n j=1 t j m Tarefa grande OPT n max j=1 t j Limite Inferior n LB = max{ max n t j=1 j, t j j=1 m } 10 / 19 Teorema: GreedyScheduling é 2-Aproximado. Prova: Seja M i a máquina determinante do makespan. Seja j a última tarefa alocada nessa máquina. A carga T i que a máquina M i apresenta antes de j ser das máquinas. inserida é a menor entre as cargas T i m m T i T i = i=1 j j=1 t j n t j m LB j=1 T i = t j + T i t j + LB n max j + LB j=1 2 LB 2 OPT 11 / 19 Resultados ruins entre OPT e 2 OPT quatro tarefas (n = 3) t 1 = 2, t 2 = 1, t 3 = 15, t 4 = 2 duas máquinas (m = 2) Para quais ordens GreedyScheduling oferece soluções melhores? 12 / 19

5 GreedyScheduling Melhorado: GreedySchedulingI Idéia Alocar as tarefas em ordem decrescente de tamanho, uma-a-uma, colocando a nova tarefa sempre na máquina com menor carga. procedure G r e e d y S c h e d u l i n g I (t 1,..., t n, m ) T i 0, A(i) i 1..., m ; for j 1 to n do t a j-ésima maior tarefa ; Encontre k : T k = min {1,...,m} T i ; A(k) A(k) {t } ; T k T k + t t ; 13 / 19 Provando a superioridade de GreedySchedulingI se n m: resultado ótimo; para n > m, novo limite: OPT t m + t m+1 ; Partindo dos resultados anteriores: E considerando que: T i t j + LB 2 LB t j t m + t m OPT OPT 2 GreedySchedulingI é 3 2 aproximado. 14 / 19 O Problema da Mochila 0/1 Entrada Capacidade S n itens com lucros e pesos (l 1, p 1 ),..., (l n, p n ) 15 / 19

6 Problema da Mochila 0/1 - Algoritmo Guloso procedure GreedyKnapsack1 (S, n, (l 1, p 1 ),..., (l n, p n ) ) Ordene os itens em ordem decrescente de li p ; i i f n i=1 p i S then return sol g = n else Encontre o maior k {1,..., n} k tal que i=1 S ; return sol g = k 16 / 19 Falhando miseravelmente Considere uma mochila com grande capacidade, digamos B. Considere a existência de um item i com lucro l i = 2 e peso p i = 1, juntamente com um item de lucro B e peso B. 17 / 19 Problema da Mochila 0/1 - Algoritmo Guloso Corrigido procedure GreedyKnapsack2 (S, n, (l 1, p 1 ),..., (l n, p n ) ) Ordene os itens em ordem decrescente de li p ; i i f n i=1 p i S then return sol g = n else Encontre o maior k {1,..., n} k tal que i=1 S ; sol 1 = k sol 2 = l k+1 ; return sol g = max {sol 1, sol 2 } 18 / 19

7 Teorema: GreedyKnapsack2 é 2-Aproximado. Prova: Considere novamente k {1,..., n} so o maior valor tal que k i=1 S. Os seguintes limites para a solução ótima sol são válidos: k i=1 k+1 l i sol i=1 l i 19 / 19

Situação Ideal. Algoritmos Aproximados - Motivação

Situação Ideal. Algoritmos Aproximados - Motivação Situação Ideal Desejamos algoritmos que: encontrem a solução ótima em tempo polinomial para qualquer instância do problema que estamos trabalhando Universidade Federal de Ouro Preto Departamento de Computação

Leia mais

Branch and Bound - Ramicar e Limitar

Branch and Bound - Ramicar e Limitar Programação Linear Inteira Branch and Bound Haroldo Gambini Santos Universidade Federal de Ouro Preto - UFOP 30 de agosto de 2011 1 / 19 Branch and Bound - Ramicar e Limitar Idéia Básica O algoritmo roda

Leia mais

PCC104 - Projeto e Análise de Algoritmos

PCC104 - Projeto e Análise de Algoritmos PCC104 - Projeto e Análise de Algoritmos Marco Antonio M. Carvalho Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal de Ouro Preto 1 de novembro de 2018 Marco Antonio

Leia mais

Branch-and-Bound para problemas de Otimização Combinatória

Branch-and-Bound para problemas de Otimização Combinatória para problemas de Otimização Combinatória Rafael Antônio Marques Gomes Orientador: Haroldo Gambini Santos Departamento de Computação UFOP 26 de julho de 2011 Rafael Antônio Marques Gomes BB para problemas

Leia mais

Algoritmos Combinatórios: Backtracking com Bounding

Algoritmos Combinatórios: Backtracking com Bounding Algoritmos Combinatórios: Backtracking com Bounding lucia@site.uottawa.ca UFSC, Fevereiro, 2010 Backtracking com bounding Backtracking com bounding Quando aplicamos backtracking para um problema de otimização,

Leia mais

Aula 13: Branch-and-bound

Aula 13: Branch-and-bound Aula 13: Branch-and-bound Otimização Linear e Inteira Túlio A. M. Toffolo http://www.toffolo.com.br BCC464/PCC174 2018/2 Departamento de Computação UFOP Previously... Modelagem em PI / Problemas Combinatórios

Leia mais

Escalonamento em uma máquina

Escalonamento em uma máquina Capítulo 4 Escalonamento em uma máquina Veremos neste capítulo vários problemas relacionados ao escalonamento em uma máquina. Estes problemas são importantes, pois além de fornecerem idéias para problemas

Leia mais

Análise e Síntese de Algoritmos

Análise e Síntese de Algoritmos Análise e Síntese de Algoritmos Algoritmos de Aproximação CLRS, Cap. 35 Resumo Algoritmos de aproximação Algoritmos, com complexidade polinomial, que calculam soluções aproximadas para problemas de optimização

Leia mais

BCC204 - Teoria dos Grafos

BCC204 - Teoria dos Grafos BCC204 - Teoria dos Grafos Marco Antonio M. Carvalho (baseado nas notas de aula do prof. Haroldo Gambini Santos) Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal

Leia mais

BCC204 - Teoria dos Grafos

BCC204 - Teoria dos Grafos BCC204 - Teoria dos Grafos Marco Antonio M. Carvalho (baseado nas notas de aula do prof. Haroldo Gambini Santos) Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal

Leia mais

Modelos e Métodos de Resolução para Problemas de Escalonamento de Projetos

Modelos e Métodos de Resolução para Problemas de Escalonamento de Projetos Universidade Federal de Ouro Preto Departamento de Computação Modelos e Métodos de Resolução para Problemas de Escalonamento de Projetos Haroldo Gambini Santos Túlio A. Machado Toffolo Marco A.M. de Carvalho

Leia mais

Pesquisa Operacional Aplicada à Mineração

Pesquisa Operacional Aplicada à Mineração Pesquisa Operacional Aplicada à Mineração Módulo de Otimização Parte II-b Prof. Marcone J. F. Souza Prof. Túlio A. M. Toffolo marcone.freitas@yahoo.com.br tulio@toffolo.com.br Departamento de Computação

Leia mais

Escalonamento usando múltiplos períodos

Escalonamento usando múltiplos períodos 3 Escalonamento usando múltiplos períodos O escalonamento usando múltiplos períodos consiste em dividir a carga total em fragmentos de carga e enviá-las a cada processador mais de uma vez, segundo períodos.

Leia mais

Medida do Tempo de Execução de um Programa. David Menotti Algoritmos e Estruturas de Dados II DInf UFPR

Medida do Tempo de Execução de um Programa. David Menotti Algoritmos e Estruturas de Dados II DInf UFPR Medida do Tempo de Execução de um Programa David Menotti Algoritmos e Estruturas de Dados II DInf UFPR Medida do Tempo de Execução de um Programa O projeto de algoritmos é fortemente influenciado pelo

Leia mais

Medida do Tempo de Execução de um Programa. Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP

Medida do Tempo de Execução de um Programa. Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP Medida do Tempo de Execução de um Programa Bruno Hott Algoritmos e Estruturas de Dados I DECSI UFOP Medida do Tempo de Execução de um Programa O projeto de algoritmos é fortemente influenciado pelo estudo

Leia mais

Programação Dinâmica. Prof. Anderson Almeida Ferreira

Programação Dinâmica. Prof. Anderson Almeida Ferreira Programação Dinâmica Prof. Anderson Almeida Ferreira Programação Dinâmica 1950, Bellman Evitar recálculos dos subproblemas em comum Menor para maior (bottom-up) Tabelas ou memorização É uma técnica de

Leia mais

Métodos Exatos para PI - Parte 1: Branch-and-Bound

Métodos Exatos para PI - Parte 1: Branch-and-Bound Introdução à Otimização Combinatória Métodos Exatos para PI - Parte 1: Professora: Rosiane de Freitas (rosiane@icomp.ufam.edu.br) Bruno Raphael Cardoso Dias Prof. Estágio em Docência (bruno.dias@icomp.ufam.edu.br)

Leia mais

BCC204 - Teoria dos Grafos

BCC204 - Teoria dos Grafos BCC204 - Teoria dos Grafos Marco Antonio M. Carvalho (baseado nas notas de aula do prof. Haroldo Gambini Santos) Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal

Leia mais

4 Resolução exata do PAG

4 Resolução exata do PAG 4 Resolução exata do PAG No capítulo anterior foram apresentadas duas formulações para o Problema de Alocação Generalizada, (PAG-C) e (PAG-Exp). Uma aplicação da primeira destas formulações para a resolução

Leia mais

Otimização Combinatória - Parte 4

Otimização Combinatória - Parte 4 Graduação em Matemática Industrial Otimização Combinatória - Parte 4 Prof. Thiago Alves de Queiroz Departamento de Matemática - CAC/UFG 2/2014 Thiago Queiroz (DM) Parte 4 2/2014 1 / 33 Complexidade Computacional

Leia mais

Problemas de otimização

Problemas de otimização Problemas de otimização Problemas de decisão: Existe uma solução satisfazendo certa propriedade? Resultado: sim ou não Problemas de otimização: Entre todas as soluções satisfazendo determinada propriedade,

Leia mais

Pesquisa Operacional

Pesquisa Operacional Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Fabrício Maciel fabricio@feg.unesp.br Departamento de Produção 1 Programação linear Sumário Modelagem e limitações da Programação

Leia mais

Busca e Decisão. Problemas de Otimização. Kakuro. P e NP. Pode-se resolver o Kakuro somente resolvendo problemas de decisão?

Busca e Decisão. Problemas de Otimização. Kakuro. P e NP. Pode-se resolver o Kakuro somente resolvendo problemas de decisão? Busca e Decisão Universidade Federal de Ouro Preto Departamento de Computação P e NP Decisão: Respostas SIM ou NÃO Eiste uma clique de tamanho k no grafo? Eiste um preenchimento da mochila com lucro z?

Leia mais

Ciclos hamiltonianos e o problema do caixeiro viajante

Ciclos hamiltonianos e o problema do caixeiro viajante Ciclos hamiltonianos e o problema do caixeiro viajante Algoritmos em Grafos Marco A L Barbosa cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual 4.0 Internacional.

Leia mais

Non-clairvoyant Scheduling Games

Non-clairvoyant Scheduling Games 1/35 Non-clairvoyant Scheduling Games Mijail Gamarra Holguin 9 de novembro de 2012 /35 Agenda 1 Introdução Definições Preliminares 2 Equiĺıbrio de Nash Random em máquinas uniformes Random em máquinas não

Leia mais

Algoritmo Aproximação. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3

Algoritmo Aproximação. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3 Algoritmo Aproximação Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3 Heurísticas para Problemas NP- Completo Heurística: algoritmo que pode produzir um bom resultado (ou até a solução ótima),

Leia mais

Investigação Operacional

Investigação Operacional Investigação Operacional Programação Linear Licenciatura em Engenharia Civil Licenciatura em Engenharia do Território Problema Uma firma fabrica dois produtos P e P em três máquinas M, M e M. P é processado

Leia mais

Metaheurísticas. Gustavo Peixoto Silva

Metaheurísticas. Gustavo Peixoto Silva Metaheurísticas Introdução à Otimização Gustavo Peixoto Silva Métodos de Refinamento Métodos de Refinamento = Busca Local Método da Descida/Subida = Min/Max Aplicação ao PCV Aplicação ao Problema da Mochila

Leia mais

Paradigmas de Projetos de Algoritmos

Paradigmas de Projetos de Algoritmos Paradigmas de Projetos de Algoritmos Luciana Assis 9 de junho de 2016 Luciana Assis (UFVJM) 9 de junho de 2016 1 / 36 1 Introdução 2 Força Bruta 3 Abordagem Incremental ou Construtiva 4 Recursão 5 Divisão

Leia mais

Algoritmo Aproximado. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3

Algoritmo Aproximado. Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3 Algoritmo Aproximado Prof. Anderson Almeida Ferreira [DPV]9.2 [ZIV]9.2.2 e 9.2.3 Heurísticas para Problemas N P- Completo Heurística: algoritmo que pode produzir um bom resultado (ou até a solução ótima),

Leia mais

Sistemas de Produção em Fluxo

Sistemas de Produção em Fluxo Uma introdução a problemas de sequenciamento em sistemas de produção em fluxo Faculdade de Ciências da Universidade do Porto 18 de Janeiro de 2012 Sumário Introdução Literatura (Makespan) Pesquisa Local

Leia mais

Teoria da Computação. Complexidade computacional classes de problemas

Teoria da Computação. Complexidade computacional classes de problemas Teoria da Computação Complexidade computacional classes de problemas 1 Universo de problemas Problemas indecidíveis ou não-computáveis Não admitem algoritmos Problemas intratáveis Não admitem algoritmos

Leia mais

Paradigmas de Projeto de Algoritmos

Paradigmas de Projeto de Algoritmos Projeto de Algoritmos Cap.2 Paradigmas de Projeto de Algoritmos 1 Paradigmas de Projeto de Algoritmos indução, recursividade, algoritmos tentativa e erro, Paradigmas de Projeto de Algoritmos divisão e

Leia mais

Complexidade de Algoritmos

Complexidade de Algoritmos Complexidade de Algoritmos! Uma característica importante de qualquer algoritmo é seu tempo de execução! é possível determiná-lo através de métodos empíricos, considerando-se entradas diversas! é também

Leia mais

NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016

NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016 NOTAS DE AULA 1 METAHEURÍSTICA 13/10/2016 Metaheurística: São técnicas de soluções que gerenciam uma interação entre técnicas de busca local e as estratégias de nível superior para criar um processo de

Leia mais

Programação Linear. Gabriel Ferreira Gabriel Tutia Gabriel Yida Thiago Ferraz

Programação Linear. Gabriel Ferreira Gabriel Tutia Gabriel Yida Thiago Ferraz Programação Linear Gabriel Ferreira 8989404 Gabriel Tutia 8989085 Gabriel Yida 8989432 Thiago Ferraz 8989001 O que é? É um caso especial de programação matemática ou otimização matemática Método para encontrar

Leia mais

Tópicos em Métodos Heurísticos META-HEURÍSTICAS

Tópicos em Métodos Heurísticos META-HEURÍSTICAS Tópicos em Métodos Heurísticos META-HEURÍSTICAS MÉTODOS HEURÍSTICOS QUE PERMITEM A CONTINUIDADE DAS EXPLORAÇÕES ALÉM DA OTIMALIDADE LOCAL, EM PARTICULAR, SUPERPONDO-SE A HEURÍSTICAS DE BUSCA LOCAL I) SIMULATED

Leia mais

O estudo utilizando apenas este material não é suficiente para o entendimento do conteúdo. Recomendamos a leitura das referências no final deste

O estudo utilizando apenas este material não é suficiente para o entendimento do conteúdo. Recomendamos a leitura das referências no final deste O estudo utilizando apenas este material não é suficiente para o entendimento do conteúdo. Recomendamos a leitura das referências no final deste material e a resolução (por parte do aluno) de todos os

Leia mais

Programação Linear Inteira. C. Requejo (UA) Métodos de Investigação Operacional MIO / 30

Programação Linear Inteira. C. Requejo (UA) Métodos de Investigação Operacional MIO / 30 Programação Linear Inteira Programação Linear Inteira C. Requejo (UA) Métodos de Investigação Operacional MIO 2016 1 / 30 Programação Linear Inteira Programação Linear Inteira Resolução de problemas de

Leia mais

Algoritmos de aproximação - Problema de cobertura por conjuntos

Algoritmos de aproximação - Problema de cobertura por conjuntos Algoritmos de aproximação - Problema de cobertura por conjuntos Marina Andretta ICMC-USP 22 de setembro de 205 Baseado no livro Uma introdução sucinta a Algoritmos de Aproximação, de M. H. Carvalho, M.

Leia mais

Algoritmos de Aproximação Segundo Semestre de 2012

Algoritmos de Aproximação Segundo Semestre de 2012 Algoritmos de Aproximação Segundo Semestre de 2012 Aproximação p. 1 Problema dos k-centros Dados: um grafo completo G = (V,E), um inteiro k > 0 e distâncias d ij para cada i e j em V tais que d ii = 0

Leia mais

3 Extensões dos modelos matemáticos

3 Extensões dos modelos matemáticos 3 Extensões dos modelos matemáticos Os modelos matemáticos definidos por (2-1) (2-6) e (2-7) (2-13), propostos por Achuthan e Caccetta e apresentados no Capítulo 2, são reforçados neste trabalho através

Leia mais

BCC204 - Teoria dos Grafos

BCC204 - Teoria dos Grafos BCC204 - Teoria dos Grafos Marco Antonio M. Carvalho (baseado nas notas de aula do prof. Haroldo Gambini Santos) Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal

Leia mais

Uma heurística para o problema sequenciamento de tarefas com restrições adicionais em um centro de distribuição

Uma heurística para o problema sequenciamento de tarefas com restrições adicionais em um centro de distribuição Trabalho apresentado no XXXVII CNMAC, S.J. dos Campos - SP, 2017. Proceeding Series of the Brazilian Society of Computational and Applied Mathematics Uma heurística para o problema sequenciamento de tarefas

Leia mais

Problemas Intratáveis ou computação eficiente X computação ineficiente

Problemas Intratáveis ou computação eficiente X computação ineficiente Problemas Intratáveis ou computação eficiente X computação ineficiente Problemas Tratáveis Os problemas que podem ser resolvidos em tempo polinomial em um computador típico são exatamente os mesmos problemas

Leia mais

Complexidade de Algoritmos

Complexidade de Algoritmos Complexidade de Algoritmos Prof. Diego Buchinger diego.buchinger@outlook.com diego.buchinger@udesc.br Prof. Cristiano Damiani Vasconcellos cristiano.vasconcellos@udesc.br Estudo da Tratabilidade de Problemas

Leia mais

Complexidade de Algoritmos

Complexidade de Algoritmos Complexidade de Algoritmos ACH2002 - Introdução à Ciência da Computação II Delano M. Beder Escola de Artes, Ciências e Humanidades (EACH) Universidade de São Paulo dbeder@usp.br 08/2008 Material baseado

Leia mais

Algoritmos em Grafos - Aula 07 Algoritmos Gulosos

Algoritmos em Grafos - Aula 07 Algoritmos Gulosos Algoritmos em Grafos - Aula 07 Algoritmos Gulosos Prof a. Laura Silva de Assis PPCIC - Programa de Pós-graduação em Ciência da Computação CEFET/RJ - Centro Federal de Educação Tecnológica Celso Suckow

Leia mais

MATEMÁTICA 1 MÓDULO 2. Divisibilidade. Professor Matheus Secco

MATEMÁTICA 1 MÓDULO 2. Divisibilidade. Professor Matheus Secco MATEMÁTICA 1 Professor Matheus Secco MÓDULO 2 Divisibilidade 1. DIVISIBILIDADE 1.1 DEFINIÇÃO: Dizemos que o inteiro a é divisível pelo inteiro b (ou ainda que a é múltiplo de b) se existe um inteiro c

Leia mais

Pesquisa Operacional aplicada ao Planejamento e Controle da Produção e de Materiais Programação Linear

Pesquisa Operacional aplicada ao Planejamento e Controle da Produção e de Materiais Programação Linear Pesquisa Operacional aplicada ao Planejamento e Controle da Produção e de Materiais Programação Linear Introdução à Pesquisa Operacional Origens militares Segunda guerra mundial Aplicada na alocação de

Leia mais

Otimização discreta Modelagem com variáveis binárias: problemas clássicos

Otimização discreta Modelagem com variáveis binárias: problemas clássicos Otimização discreta Modelagem com variáveis binárias: problemas clássicos Importância histórica...... e prática. Usados para modelar problemas reais e como subproblemas em problemas maiores (e mais freqüentes

Leia mais

Introdução aos Problemas de Roteirização e Programação de Veículos

Introdução aos Problemas de Roteirização e Programação de Veículos Introdução aos Problemas de Roteirização e Programação de Veículos PNV-2450 André Bergsten Mendes HEURÍSTICA DE INSERÇÃO DE SOLOMON (VRPTW) Exercício Para o problema de roteirização com janela de tempo

Leia mais

Lista de Exercícios I - Gabarito

Lista de Exercícios I - Gabarito UNIVERSIDADE FEDERAL DO AMAZONAS INSTITUTO DE COMPUTAÇÃO Lista de Exercícios I - Gabarito ICC500 - Introdução à Otimização Combinatória PGINF566 - Otimização Combinatória Profa. Rosiane de Freitas Questão

Leia mais

4. O Makespan com Tempos de Preparação de Máquina Dependentes da Sequência

4. O Makespan com Tempos de Preparação de Máquina Dependentes da Sequência 40 4. O Makespan com Tempos de Preparação de Máquina Dependentes da Sequência Para problemas de sequenciamento em um única máquina com todos os r j = 0 e tempos de preparação de máquinas (tempos de set

Leia mais

Projeto e Análise de Algoritmos

Projeto e Análise de Algoritmos Projeto e Algoritmos Pontifícia Universidade Católica de Minas Gerais harison@pucpcaldas.br 26 de Maio de 2017 Sumário A complexidade no desempenho de Quando utilizamos uma máquina boa, ela tende a ter

Leia mais

Programação Linear - Parte 5

Programação Linear - Parte 5 Matemática Industrial - RC/UFG Programação Linear - Parte 5 Prof. Thiago Alves de Queiroz 1/2016 Thiago Queiroz (IMTec) Parte 5 1/2016 1 / 29 Dualidade Os parâmetros de entrada são dados de acordo com

Leia mais

Técnicas de projeto de algoritmos: Indução

Técnicas de projeto de algoritmos: Indução Técnicas de projeto de algoritmos: Indução ACH2002 - Introdução à Ciência da Computação II Delano M. Beder Escola de Artes, Ciências e Humanidades (EACH) Universidade de São Paulo dbeder@usp.br 08/2008

Leia mais

3. Resolução de problemas por meio de busca

3. Resolução de problemas por meio de busca Inteligência Artificial - IBM1024 3. Resolução de problemas por meio de busca Prof. Renato Tinós Local: Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3. Resolução de problemas por

Leia mais

Toward an Architecture-Independent Analysis of Parallel Algorithms

Toward an Architecture-Independent Analysis of Parallel Algorithms 1/22 Introdução O algoritmo de aproximação Aplicações em Problemas Concretos Problemas Abertos Referências Toward an Architecture-Independent Analysis of Parallel Algorithms Mijail Gamarra Holguin 18 de

Leia mais

Grafos Hamiltonianos e o Problema do Caixeiro Viajante. Prof. Ademir Constantino Departamento de Informática Universidade Estadual de Maringá

Grafos Hamiltonianos e o Problema do Caixeiro Viajante. Prof. Ademir Constantino Departamento de Informática Universidade Estadual de Maringá Grafos Hamiltonianos e o Problema do Caixeiro Viajante Prof. Ademir Constantino Departamento de Informática Universidade Estadual de Maringá Grafo Hamiltoniano Definição: Um circuito hamiltoniano em um

Leia mais

Programação Dinâmica. Prof. Anderson Almeida Ferreira. Adaptado do material elaborado por Andrea Iabrudi Tavares

Programação Dinâmica. Prof. Anderson Almeida Ferreira. Adaptado do material elaborado por Andrea Iabrudi Tavares Programação Dinâmica Prof. Anderson Almeida Ferreira Adaptado do material elaborado por Andrea Iabrudi Tavares Programação Dinâmica 1950, Bellman Evitar recálculos dos subproblemas em comum Menor para

Leia mais

Teoria dos Grafos Aula 15

Teoria dos Grafos Aula 15 Teoria dos Grafos Aula 15 Aula passada Técnicas para constriução de algoritmos Paradigma guloso Escalonamento de tarefas Aula de hoje Coloração Algoritmo guloso Número cromático Teorema das 4 cores Colorindo

Leia mais

Alinhamentos de Múltiplas Seqüências. Rogério T. Brito Orientador: José A. R. Soares

Alinhamentos de Múltiplas Seqüências. Rogério T. Brito Orientador: José A. R. Soares 1 Alinhamentos de Múltiplas Seqüências Rogério T. Brito Orientador: José A. R. Soares 2 Motivação Problema em Biologia: saber qual é o grau de parentesco entre um conjunto de espécies (construção de árvores

Leia mais

Problema de seleção de atividades. Aula 14. Exemplo. Algoritmos Gulosos. Algoritmos Gulosos. Intervalo: par ordenado de números

Problema de seleção de atividades. Aula 14. Exemplo. Algoritmos Gulosos. Algoritmos Gulosos. Intervalo: par ordenado de números Problema de seleção de atividades Aula 14 Algoritmos Gulosos Prof. Marco Aurélio Stefanes marco em dct.ufms.br www.dct.ufms.br/ marco Intervalo: par ordenado de números [s[i],f[i]): início e fim do intervalo

Leia mais

Programação de Computadores

Programação de Computadores INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA RIO GRANDE DO NORTE Programação de Computadores Escopo de variáveis Copyright 2013 IFRN O que veremos hoje? Introdução Escopo de variáveis Escopo local

Leia mais

Análise de Algoritmos

Análise de Algoritmos Análise de Algoritmos Parte 1 Prof. Túlio Toffolo http://www.toffolo.com.br BCC202 Aula 04 Algoritmos e Estruturas de Dados I Qual a diferença entre um algoritmo e um programa? Como escolher o algoritmo

Leia mais

Paradigmas de Projeto de Algoritmos

Paradigmas de Projeto de Algoritmos Projeto de Algoritmos Cap.2 Paradigmas de Projeto de Algoritmos 1 Conteúdo do Capítulo 2.1 Indução Paradigmas de Projeto de Algoritmos 2.2 Recursividade 2.2.1 Como Implementar Recursividade 2.2.2 Quando

Leia mais

Análise e Projeto de Algoritmos

Análise e Projeto de Algoritmos Análise e Projeto de Algoritmos 2018.2 Classes P e NP P São os problemas que podem ser resolvidos em tempo polinomial por uma Máquina de Turing Determinística. NP São os problemas que podem ser decididos

Leia mais

Problema da Mochila Booleana: Uma Solução Usando Programação Dinâmica. Gabriel Rosa Guilherme Alves

Problema da Mochila Booleana: Uma Solução Usando Programação Dinâmica. Gabriel Rosa Guilherme Alves Problema da Mochila Booleana: Uma Solução Usando Programação Dinâmica Gabriel Rosa Guilherme Alves Agenda O problema, definição e exemplo Construindo uma solução... Expressão recursiva Algoritmo recursivo

Leia mais

PROGRAMAÇÃO DINÂMICA

PROGRAMAÇÃO DINÂMICA PROGRAMAÇÃO DINÂMICA Programação dinâmica é tipicamente aplicada para problemas de otimização. O desenvolvimento de um algoritmo de programação dinâmica pode ser divido em 4 etapas. Caracterizar uma solução

Leia mais

Algoritmos Combinatórios: Introdução

Algoritmos Combinatórios: Introdução lucia@site.uottawa.ca UFSC, Fevereiro, 2010 Estruturas e Problemas Combinatórios Introdução a Algoritmos Combinatórios O que são: Estruturas Combinatórias? Algoritmos Combinatórios? Problemas Combinatórios?

Leia mais

Teoria e Algoritmos em Grafos

Teoria e Algoritmos em Grafos Teoria e Algoritmos em Grafos 2018.2 Percursos Caminhos que percorrem todos os vértices ou todas as arestas de um grafo são chamados percursos. Ciclo Hamiltoniano Ciclos Hamiltonianos são ciclos que percorrem

Leia mais

Casamento em GB. Casamento em Grafos. Notas. Teoria dos Grafos - BCC204, Casamento em Grafos. Notas. Descrição

Casamento em GB. Casamento em Grafos. Notas. Teoria dos Grafos - BCC204, Casamento em Grafos. Notas. Descrição Teoria dos Grafos - BCC20 Casamento em Grafos Haroldo Gambini Santos Universidade Federal de Ouro Preto - UFOP 16 de maio de 2011 1 / 18 Descrição Casamento em Grafos Em grafos, um Casamento (Matching

Leia mais

Teoria dos Grafos Aula 18

Teoria dos Grafos Aula 18 Teoria dos Grafos Aula 18 Aula passada Coloração Algoritmo guloso Número cromático Teorema das 4 cores Aula de hoje Clusterização (ou agrupamento) Algoritmo Variação Clusterização Coleção de objetos Agrupar

Leia mais

Pesquisa Operacional / Programação Matemática

Pesquisa Operacional / Programação Matemática Pesquisa Operacional / Programação Matemática Otimização discreta Modelagem com variáveis binárias: problemas clássicos Breve Comentários (aula anterior) Em geral, não faz sentido resolver a relaxação

Leia mais

Algoritmos gulosos (greedy)

Algoritmos gulosos (greedy) Algoritmos gulosos (greedy) CLRS 16.1 e mais... Algoritmos p. 1 Algoritmos gulosos Algoritmo guloso procura ótimo local e acaba obtendo ótimo global costuma ser muito simples e intuitivo muito eficiente

Leia mais

Bioinformática. Ney Lemke. Departamento de Física e Biofísica. logo

Bioinformática. Ney Lemke. Departamento de Física e Biofísica. logo Bioinformática Ney Lemke Departamento de Física e Biofísica 2009 Outline 1 Bibliografia 2 Introdução 3 Algoritmos 4 Aplicações 5 Algoritmos Recursivos 6 Tipos de Algoritmos Outline 1 Bibliografia 2 Introdução

Leia mais

Aula 20: Revisão Otimização Linear e Inteira Túlio A. M. Toffolo

Aula 20: Revisão Otimização Linear e Inteira Túlio A. M. Toffolo Aula 20: Revisão Otimização Linear e Inteira Túlio A. M. Toffolo http://www.toffolo.com.br BCC464 / PCC174 Departamento de Computação - UFOP Breve Revisão Programação Linear vs Programação Inteira Modelagem

Leia mais

5COP096 TeoriadaComputação

5COP096 TeoriadaComputação Sylvio 1 Barbon Jr barbon@uel.br 5COP096 TeoriadaComputação Aula 13 Prof. Dr. Sylvio Barbon Junior Sumário - Problemas NP-Completo Algoritmos Não-deterministas; Classes NP-Completo e NP-Dificil; Teorema

Leia mais

Complexidade computacional

Complexidade computacional Complexidade computacional Classifica os problemas em relação à dificuldade de resolvê-los algoritmicamente. CLR 36 ou CLRS 34 Algoritmos p. 1 Palavras Para resolver um problema usando um computador é

Leia mais

Abordagens para Problemas Intratáveis

Abordagens para Problemas Intratáveis Abordagens para Problemas Intratáveis Letícia Rodrigues Bueno UFABC Motivação Se você se depara com um problema intratável... Motivação Se você se depara com um problema intratável... I can t find an efficient

Leia mais

Projeto e Análise de Algoritmos Aula 8: Algoritmos Gulosos (5)

Projeto e Análise de Algoritmos Aula 8: Algoritmos Gulosos (5) 1 Projeto e Análise de Algoritmos Aula 8: Algoritmos Gulosos (5) DECOM/UFOP 2012/2 5º. Período Anderson Almeida Ferreira Adaptado do material de Andréa Iabrudi Tavares BCC241/2012-2 3 Algoritmos Gulosos

Leia mais

Análise de Algoritmos

Análise de Algoritmos Análise de Algoritmos Parte destes slides são adaptações de slides do Prof. Paulo Feofiloff e do Prof. José Coelho de Pina. Algoritmos p. 1/36 Complexidade computacional Classifica os problemas em relação

Leia mais

Melhores momentos AULA 24. Algoritmos p.906/953

Melhores momentos AULA 24. Algoritmos p.906/953 Melhores momentos AULA 24 Algoritmos p.906/953 Problemas polinomiais Analise de um algoritmo em um determinado modelo de computação estima o seu consumo de tempo e quantidade de espaço como uma função

Leia mais

14 Projeto de Algoritmos: paradigmas SCC201/501 - Introdução à Ciência de Computação II

14 Projeto de Algoritmos: paradigmas SCC201/501 - Introdução à Ciência de Computação II 14 Projeto de Algoritmos: paradigmas SCC201/501 - Introdução à Ciência de Computação II Prof. Moacir Ponti Jr. www.icmc.usp.br/~moacir Instituto de Ciências Matemáticas e de Computação USP contém material

Leia mais

Algoritmos de Aproximação Segundo Semestre de 2012

Algoritmos de Aproximação Segundo Semestre de 2012 Algoritmos de Aproximação Segundo Semestre de 2012 Aproximação p. 1 Bin Packing Dados: n itens ([n] = {1,...,n}) Dados: comprimento a[i] do item i (i = 1,...,n) Aproximação p. 2 Bin Packing Dados: n itens

Leia mais

BCC204 - Teoria dos Grafos

BCC204 - Teoria dos Grafos BCC204 - Teoria dos Grafos Marco Antonio M. Carvalho (baseado nas notas de aula do prof. Haroldo Gambini Santos) Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal

Leia mais

Tópicos Avançados em Algoritmos - exercícios de Prog. Din. com correcção parcial

Tópicos Avançados em Algoritmos - exercícios de Prog. Din. com correcção parcial Armando Matos, 2008/2009 Tópicos Avançados em Algoritmos - exercícios de Prog. Din. com correcção parcial 1. Optimizar o produto de matrizes Considere o problema da parentização óptima de uma multiplicação

Leia mais

Solução de problemas de PL com restrições do tipo >= e =

Solução de problemas de PL com restrições do tipo >= e = Solução de problemas de PL com restrições do tipo >= e = Seja o Problema de maximização abaixo: O problema na forma padrão: Tem-se um problema, não existe na restrição 3 uma variável de folga para entrar

Leia mais

Algoritmos de aproximação - Problema da Mochila

Algoritmos de aproximação - Problema da Mochila Algoritmos de aproximação - Problema da Mochila Marina Andretta ICMC-USP 11 de novembro de 2015 Baseado nos livros Minicurso de Análise de Algoritmos, de P. Feofiloff; e Uma introdução sucinta a Algoritmos

Leia mais

MODELO DE PROGRAMAÇÃO LINEAR INTEIRA MISTA PARA MINIMIZAÇÃO DOS ADIANTAMENTOS E ATRASOS EM FLOW SHOP COM SETUP DEPENDENDE DA SEQUÊNCIA

MODELO DE PROGRAMAÇÃO LINEAR INTEIRA MISTA PARA MINIMIZAÇÃO DOS ADIANTAMENTOS E ATRASOS EM FLOW SHOP COM SETUP DEPENDENDE DA SEQUÊNCIA MODELO DE PROGRAMAÇÃO LINEAR INTEIRA MISTA PARA MINIMIZAÇÃO DOS ADIANTAMENTOS E ATRASOS EM FLOW SHOP COM SETUP DEPENDENDE DA SEQUÊNCIA Cristiano Marinho Vaz, cmv02@hotmail.com Vinícius Ferreira da Silva

Leia mais

Algoritmos Combinatórios: Sudoku via Backtracking e o Problema da Cobertura Exata

Algoritmos Combinatórios: Sudoku via Backtracking e o Problema da Cobertura Exata Algoritmos Combinatórios: Sudoku via Backtracking e o Problema da lucia@site.uottawa.ca UFSC, Fevereiro, 2010 Solução Sudoku O jogo/puzzle Sudoku consiste de uma matriz 9 9, dividida em 9 regiões, que

Leia mais

Teoria da Decisão. Introdução às Metaheurísticas. Prof. Lucas S. Batista. lusoba

Teoria da Decisão. Introdução às Metaheurísticas. Prof. Lucas S. Batista.   lusoba Teoria da Decisão Introdução às Metaheurísticas Prof. Lucas S. Batista lusoba@ufmg.br www.ppgee.ufmg.br/ lusoba Universidade Federal de Minas Gerais Escola de Engenharia Graduação em Engenharia de Sistemas

Leia mais

BCC202 - Estrutura de Dados I

BCC202 - Estrutura de Dados I BCC202 - Estrutura de Dados I Aula 06: Análise de Algoritmos (Parte 3) Reinaldo Fortes Universidade Federal de Ouro Preto, UFOP Departamento de Ciência da Computação, DECOM Website: www.decom.ufop.br/reifortes

Leia mais

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves

CAP 254 CAP 254. Otimização Combinatória. Professor: Dr. L.A.N. Lorena. Assunto: Metaheurísticas Antonio Augusto Chaves CAP 254 CAP 254 Otimização Combinatória Professor: Dr. L.A.N. Lorena Assunto: Metaheurísticas Antonio Augusto Chaves Conteúdo C Simulated Annealing (2//7). C2 Busca Tabu (22//7). C3 Colônia de Formigas

Leia mais

Sistemas de Computação

Sistemas de Computação Sistemas de Computação Breve Histórico Haroldo Gambini Santos Universidade Federal de Ouro Preto - UFOP 26 de abril de 2010 Haroldo Gambini Santos Sistemas de Computação 1/9 Seção 1 Pré-História 2 Geração

Leia mais

PCC173 - Otimização em Redes

PCC173 - Otimização em Redes PCC173 - Otimização em Redes Marco Antonio M. Carvalho Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal de Ouro Preto 31 de maio de 2017 Marco Antonio M. Carvalho

Leia mais

Unidade 6 Aplicações do estudo das derivadas

Unidade 6 Aplicações do estudo das derivadas Unidade 6 Aplicações do estudo das derivadas Máximos e mínimos de uma função Definição 6.. Dada a função f : I, um ponto x I é chamado de (i) ponto de máximo relativo (ou local) da função quando f ( x)

Leia mais

Marcelo Keese Albertini Faculdade de Computação Universidade Federal de Uberlândia

Marcelo Keese Albertini Faculdade de Computação Universidade Federal de Uberlândia Introdução à Análise de Algoritmos Marcelo Keese Albertini Faculdade de Computação Universidade Federal de Uberlândia Aula de hoje Nesta aula veremos: Sobre a disciplina Exemplo: ordenação Sobre a disciplina

Leia mais