Complexidade computacional
|
|
|
- Ayrton Amaral
- 6 Há anos
- Visualizações:
Transcrição
1 Complexidade computacional Marina Andretta ICMC-USP 15 de setembro de 2015 Baseado no livro Uma introdução sucinta a Algoritmos de Aproximação, de M. H. Carvalho, M. R. Cerioli, R. Dahab, P. Feofiloff, C. G. Fernandes, C. E. Ferreira, K. S. Guimarães, F. K. Miyazawa, J. C. Piña Jr., J. A. R. Soares e Y. Wakabayashi. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
2 Palavras Para resolver um problema usando um computador é necessário descrever os dados do problema por meio de uma sequência de caracteres. Qualquer sequência de caracteres será chamada de uma palavra. Não é difícil representar números inteiros, números racionais, vetores, matrizes, grafos, etc. por meio de palavras. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
3 Palavras Por exemplo, o grafo com vértices {a, b, c, d, e} e arestas {{a, b}, {b, c}, {a, d}, {b, d}, {c, e}, {d, e}} a b c d e pode ser representado pela palavra ({a, b, c, d, e}, {{a, b}, {b, c}, {a, d}, {b, d}, {c, e}, {d, e}}). Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
4 Palavras Em geral, não fazemos distinção entre um objeto e uma palavra que o representa. Um vetor racional c indexado por um conjunto finito E pode ser representado por uma sequência de pares (e, c e ), onde e é um elemento de E. Por exemplo, a palavra (({a, b}, 2), ({b, c}, 1), ({a, d}, 3/2), ({b, d}, 7), ({c, e}, 0), ({d, e}, 1)}) codifica um vetor indexado pelo conjunto das arestas do grafo anterior. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
5 Palavras O tamanho de uma palavra w, denotado por w, é o número de caracteres usados em w (contando-se multiplicidades). Como faremos estimativas a menos de uma constante, não é necessário contar rigorosamente os caracteres {, }, (, ) e, dos exemplos anteriores. Assim, o tamanho de um vetor c reduz-se à soma dos tamanhos de seus componentes, ou seja, c = e c e. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
6 Palavras O tamanho dos números inteiros e racionais merece especial atenção. O tamanho de um inteiro α é essencialmente log α. Analogamente, se α é um número inteiro e β é um número inteiro não nulo então o tamanho do racional α/β é, essencialmente, log α + log β. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
7 Problemas Informalmente, um problema é uma questão ou tarefa. Exemplos de problemas são: o problema do circuito hamiltoniano (Hamiltonian circuit problem), denotado pela sigla HCP e o problema da árvore geradora mínima (minimum spanning tree problem), denotado pela sigla MST. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
8 Problema do circuito hamiltoniano - HCP(G) Dado um grafo G, ele possui um circuito hamiltoniano? Ou seja, existe um circuito que passe por todos os vértices de G exatamente uma vez? a b c d e Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
9 Problema da árvore geradora mínima - MST(G, c) Um grafo G é conexo se para cada par de vértices u e v de G há um caminho de u para v. Uma árvore é um grafo conexo sem circuitos. Uma árvore geradora T = (V T, E T ) de um grafo G = (V, E) é uma árvore com os mesmos vértices de G e que tem como arestas um sub-conjunto das arestas de G. Ou seja, V T = V e E T E. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
10 Problema da árvore geradora mínima - MST(G, c) Dados um grafo G e um custo c e em Q para cada aresta e, encontrar uma árvore geradora de custo mínimo. a 7 2 d 1 1 b 4 e 2/3 c Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
11 Problemas Cada conjunto específico de dados de um problema define uma instância do problema. O tamanho de uma instância é o tamanho de uma palavra que representa a instância. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
12 Problemas Um problema que pede uma resposta do tipo sim ou não é chamado de problema de decisão. Um problema que procura um elemento de um conjunto de soluções viáveis que seja melhor possível em relação a algum critério é um problema de otimização. Os problemas HCP e MST são exemplos de problemas de decisão e otimização, respectivamente. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
13 Algoritmos e modelo de computação Um algoritmo é uma sequência finita de instruções ou operações que resolve um problema. A formalização matemática clássica de um algoritmo é a maquina de Turing. Um modelo de computação é uma descrição abstrata e conceitual (não necessariamente realista) de um computador que será usado para executar um algoritmo. Um modelo de computação especifica as operações elementares que um algoritmo pode executar e o critério empregado para medir a quantidade de tempo que cada operação consome. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
14 Modelo de computação Exemplos de operações elementares típicas são operações aritméticas entre números e comparações. O modelo de computação RAM (random access machine) baseia-se na manipulação de caracteres. Esse modelo é capaz de executar operações envolvendo números racionais. Usaremos o RAM durante todo o curso. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
15 Modelo de computação Um dos critérios para medir o consumo de tempo de cada operação é o critério logarítmico (logarithmic cost criterion). Neste critério, o consumo de tempo de cada operação depende do tamanho dos operandos. Por exemplo, a multiplicação de dois números α e β consome essencialmente α β unidades de tempo. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
16 Modelo de computação Um outro critério para medir o consumo de tempo, aparentemente menos realista, é o critério uniforme (uniform cost criterion), que supõe que cada operação elementar consome uma quantidade de tempo constante, ou seja, o consumo de tempo de cada operação elementar independe do tamanho dos operandos. Este modelo é equivalente ao anterior se o tamanho dos operandos for limitado por uma função polinomial do tamanho da instância do problema. Este critério de consumo de tempo constante por operação elementar, juntamente com operandos de tamanho limitado, será empregado em todo o curso. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
17 Análise de algoritmos Ao analisarmos um algoritmo em um determinado modelo de computação queremos estimar o seu consumo de tempo como uma função do tamanho da instância do problema. Por exemplo, exprimimos o consumo de tempo de algoritmos para o MST(G, c) como uma função de (G, c). Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
18 Análise de algoritmos Ao expressar a quantidade de tempo consumida por um algoritmo, ignoramos os fatores constantes. Mais precisamente, dizemos que um algoritmo A resolve um problema em tempo O(f (n)), para uma função f de Z em Z, se existe uma constante c tal que a quantidade de tempo consumida por A para resolver uma instância I do problema é limitada por cf ( I ). Isto corresponde à chamada análise do pior caso do algoritmo. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
19 Algoritmos polinomiais O algoritmo A é dito polinomial se resolve o problema em tempo O(p(n)) para alguma função polinomial p. É claro que o conceito de algoritmo polinomial depende não só do algoritmo, mas também do modelo de computação. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
20 Critério de eficiência: classes P, NP e co-np Dizemos que um algoritmo é eficiente se ele é um algoritmo polinomial. A classe de todos os problemas de decisão que podem ser resolvidos por algoritmos polinomiais é denotada por P. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
21 Critério de eficiência: classes P, NP e co-np A classe NP (abreviação de nondeterministic polynomial time) é composta pelos problemas de decisão para os quais uma resposta afirmativa possui um certificado que pode ser verificado em tempo polinomial. Ou seja, a classe NP é formada pelos problemas de decisão para os quais existe um problema Π em P e uma função polinomial p(n) tais que, para cada instância I do problema Π, existe um objeto C com C p( I ) tal que a resposta a Π(I ) é sim se e somente se a resposta a Π(I, C) é sim. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
22 Critério de eficiência: classes P, NP e co-np O objeto C é dito um certificado polinomial (ou certificado curto) da resposta sim a Π(I ). Com um algoritmo polinomial para Π, um verificador incrédulo pode, após gastar uma quantidade de tempo polinomial, testar a validade de uma resposta sim. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
23 Critério de eficiência: classes P, NP e co-np Por exemplo, se a resposta a uma dada instância G do problema do circuito hamiltoniano é sim então um circuito hamiltoniano em G é um objeto que certifica a resposta: dados um grafo G e um circuito H de G pode-se verificar em tempo O( G ) se H é um circuito hamiltoniano. Logo, o problema HCP pertence a NP. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
24 Critério de eficiência: classes P, NP e co-np Claramente P NP, já que se Π é um problema em P, então pode-se tomar a sequência de instruções realizadas por um algoritmo polinomial para resolver Π(I ) como certificado polinomial da resposta sim a Π(I ). Acredita-se que a classe NP é maior que a classe P, ainda que isso não tenha sido provado até agora. Este é o intrigante problema matemático conhecido pelo rótulo P NP?. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
25 Critério de eficiência: classes P, NP e co-np Um problema de decisão Π está em co-np se admite um certificado polinomial para a resposta não. É claro que P NP co-np. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
26 Redução Uma redução de um problema Π a um problema Π é um algoritmo eficiente σ, que transforma uma instância de Π em uma instância de Π, tal que se I é uma instância de Π que tem resposta sim, então σ(i ) é uma instância de Π que tem resposta sim; se I é uma instância de Π que tem resposta não, então σ(i ) é uma instância de Π que tem resposta não. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
27 Redução Usamos a notação Π P Π para denotar a existência de uma redução de Π a Π. Note que, se Π P Π, a existência de um algoritmo polinomial para resolver o problema Π implica na existência de um algoritmo polinomial para resolver Π. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
28 Exemplo de redução Considere o problema do caminho Hamiltoniano (s, t) (Hamiltonian (s, t)-path problem), denotado pela sigla HPP: Dado um grafo G e dois vértices s e t de G, existe um caminho de s a t, que passe exatamente por todos os vértices de G? Vamos reduzir o problema HPP(G, s, t) ao problema HCP(G). Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
29 Exemplo de redução Tome uma instância HPP, ou seja, um grafo G = (V, E) e dois vértices s e t ao problema HCP(G). s a b t c Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
30 Exemplo de redução Construa o grafo G = (V, E ) com os mesmos vértices de G, acrescidos de um vértice w, e as mesmas arestas de G, acrescidas das arestas {w, s} e {s, t}. Ou seja, V = V {w} e E = E {{w, s}, {w, t}}. s w a b t c Esta transformação é polinomial no tamanho da instância de HHP. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
31 Exemplo de redução Note que, se é possível encontrar um circuito Hamiltoniano em G, é possível encontrar um caminho Hamiltoniano de s a t em G. Para isto, basta eliminar o trecho {s, w, t} do circuito obtido. Mais ainda, se é possível encontrar um caminho Hamiltoniano de s a t em G, basta unir este caminho ao trecho {s, w, t} para obter um circuito Hamiltoniano em G, Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
32 Exemplo de redução s w a b t c Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
33 Exemplo de redução s w a b t c Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
34 Exemplo de redução Portanto, HPP P HCP. Ou seja, se existir um algoritmo polinomial para resolver o problema HCP, também existe um algoritmo polinomial para resolver HPP. Isso dá uma ideia de que o problema HCP é ao menos tão difícil quanto o problema HPP. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
35 NP-completude Um problema Π em NP é NP-completo se cada problema em NP pode ser reduzido a Π. É evidente que se Π pertence a P e Π pode ser reduzido a Π, então Π pertence a P. Isto implica que existe um algoritmo polinomial para um problema NP-completo se e somente se P = NP. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
36 NP-completude O primeiro problema que se demonstrou (por Cook e Levin) ser NP-completo é o problema da satisfatibilidade (satisfiability problem), denotado por Sat. Problema Sat(C): Dada uma coleção C de cláusulas booleanas, existe uma valoração que satisfaz todas as cláusulas em C? Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
37 NP-completude Um problema Π, não necessariamente em NP, é NP-difícil se a existência de um algoritmo polinomial para Π implica em P = NP. Por exemplo, considere o problema MaxSat. Problema MaxSat(V, C): Dada uma coleção C de cláusulas booleanas sobre um conjunto V de variáveis, encontrar uma valoração x de V que satisfaça o maior número de cláusulas de C? Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
38 NP-completude Note que, se temos um algoritmo polinomial A para resolver MaxSat, podemos definir um algoritmo A da seguinte forma: execute A; verifique se todas as de cláusulas de C foram satisfeitas; em caso positivo, devolva sim; em caso negativo, devolva não. Claramente, A é um algoritmo polinomial que resolve Sat em tempo polinomial. Como Sat é NP-completo, a existência de A (e, consequentemente, de A ) implica em P = NP. Portanto, MaxSat é NP-difícil, Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
39 NP-completude Alguns exemplos de problemas NP-difíceis são: Escalonamento; MinCC - Cobertura mínima por conjuntos; Mochila; TSPM - Caixeiro viajante métrico; TSP - Caixeiro viajante; MinMCut - Multicorte mínimo; MinCV - Cobertura mínima por vértices; Empacotamento. Marina Andretta (ICMC-USP) sme0216 e de setembro de / 39
Problemas NP-completos
Problemas NP-completos Marina Andretta ICMC-USP 15 de setembro de 2015 Marina Andretta (ICMC-USP) sme0216 e 5826 15 de setembro de 2015 1 / 26 Sat é NP-completo Já vimos que o primeiro problema que se
Algoritmos de aproximação - Problema do caixeiro viajante
Algoritmos de aproximação - Problema do caixeiro viajante Marina Andretta ICMC-USP 30 de setembro de 2015 Baseado no livro Uma introdução sucinta a Algoritmos de Aproximação, de M. H. Carvalho, M. R. Cerioli,
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.
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
Análise de Algoritmos. Slides de Paulo Feofiloff
Análise de Algoritmos Slides de Paulo Feofiloff [com erros do coelho e agora também da cris] Algoritmos p. 1 Redução polinomial Permite comparar o grau de complexidade de problemas diferentes. Uma redução
Redução polinomial. Permite comparar o grau de complexidade de problemas diferentes.
Redução polinomial Permite comparar o grau de complexidade de problemas diferentes. Uma redução de um problema Π a um problema Π é um algoritmo ALG que resolve Π usando uma subrotina hipotética ALG que
Algoritmos de aproximação - Método primal-dual
Algoritmos de aproximação - Método primal-dual Marina Andretta ICMC-USP 28 de outubro de 2015 Baseado no livro Uma introdução sucinta a Algoritmos de Aproximação, de M. H. Carvalho, M. R. Cerioli, R. Dahab,
Projeto e Análise de Algoritmos NP Completude. Prof. Humberto Brandão
Projeto e Análise de Algoritmos NP Completude Prof. Humberto Brandão [email protected] Universidade Federal de Alfenas versão da aula: 0.4 Introdução Problemas intratáveis ou difíceis são comuns
Complexidade computacional
Complexidade computacional CLRS sec 34.1 e 34.2 Algoritmos p. 1 Algumas questões Por que alguns problemas parecem ser (computacionalmente) mais difíceis do que outros? Algoritmos p. 2 Algumas questões
Complexidade de Algoritmos. Edson Prestes
Edson Prestes O limite superior de complexidade de um problema refere-se ao melhor algoritmo que o resolve. nlog 2 n é um limite superior para o problema de classificação. O limite inferior de um problema
INTRATABILIDADE e NP-COMPLETUDE
INTRATABILIDADE e NP-COMPLETUDE Sandro Santos Andrade Doutorado Multiinstitucional em Ciência da Computação UFBA/UNIFACS/UEFS Junho/2008 Grafos e Análise de Algoritmos Introdução Para alguns problemas
Como saber se um problema está em NP e não está em P?
? P = NP Uma das principais questões em aberto é se P = NP, isto é, se de fato tudo o que pode ser feito em tempo polinomial por uma MTND poderia ser feito por uma MTD em tempo polinomial, talvez com um
P, NP e NP-Completo. André Vignatti DINF- UFPR
P, NP e NP-Completo André Vignatti DINF- UFPR Problemas Difíceis, Problemas Fáceis O mundo está cheio de problemas de busca. Alguns podem ser resolvidos eficientemente, outros parecem ser muito difíceis.
Teoria da Complexidade Computacional
Teoria da Complexidade Computacional 25 de novembro de 2011 Enquanto a teoria de análise de algoritmos estuda a análise de complexidade de algoritmos, a teoria da complexidade estuda a classificação de
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?
5COP096 TeoriadaComputação
Sylvio 1 Barbon Jr [email protected] 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
Teoria da Computação. Computabilidade
Cristiano Lehrer Introdução O objetivo do estudo da solucionabilidade de problemas é investigar a existência ou não de algoritmos que solucionem determinada classe de problemas. Ou seja, investigar os
Complexidade de Algoritmos. Edson Prestes
Edson Prestes A classe P consiste nos problemas que podem ser resolvidos em tempo Polinomial (Problemas tratáveis) A classe NP consiste nos problemas que podem ser verificados em tempo polinomial (Problemas
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 5 de dezembro de 2017 Marco Antonio
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
Aula 10: Tratabilidade
Teoria da Computação DAINF-UTFPR Aula 10: Tratabilidade Prof. Ricardo Dutra da Silva Na aula anterior discutimos problemas que podem e que não podem ser computados. Nesta aula vamos considerar apenas problemas
Uma introdução à complexidade parametrizada
Vinicius Fernandes dos Santos - CEFET-MG Uéverton dos Santos Souza - UFF/CEFET-RJ 34 o JAI - Jornadas de Atualização em Informática XXXV Congresso da Sociedade Brasileira de Computação Recife, Julho 20
Algoritmos Combinatórios: Introdução
[email protected] 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?
Análise e Projeto de Algoritmos
Análise e Projeto de Algoritmos Prof. Eduardo Barrére www.ufjf.br/pgcc www.dcc.ufjf.br [email protected] www.barrere.ufjf.br A Classe de Problemas P A classe de algoritmos P é formada pelos procedimentos
Pontos extremos, vértices e soluções básicas viáveis
Pontos extremos, vértices e soluções básicas viáveis Marina Andretta ICMC-USP 19 de outubro de 2016 Baseado no livro Introduction to Linear Optimization, de D. Bertsimas e J. N. Tsitsiklis. Marina Andretta
Projeto e Análise de Algoritmos
Projeto e Análise de Algoritmos A. G. Silva Baseado nos materiais de Souza, Silva, Lee, Rezende, Miyazawa Unicamp Ribeiro FCUP 18 de agosto de 2017 Conteúdo programático Introdução (4 horas/aula) Notação
Teoria da Complexidade Computacional
Teoria da Complexidade Computacional Letícia Rodrigues Bueno UFABC Motivação Motivação I can t find an efficient algorithm, I guess I m just too dumb. Fonte: GAREY, M. R. e JOHNSON, D. S. Computers and
Notações e revisão de álgebra linear
Notações e revisão de álgebra linear Marina Andretta ICMC-USP 17 de agosto de 2016 Baseado no livro Introduction to Linear Optimization, de D. Bertsimas e J. N. Tsitsiklis. Marina Andretta (ICMC-USP) sme0211
André Vignatti DINF- UFPR
Notação Assintótica: O André Vignatti DINF- UFPR Notação Assintótica Vamos expressar complexidade através de funções em variáveis que descrevam o tamanho de instâncias do problema. Exemplos: Problemas
Agenda. Complexidade Não Determinista A classe NP. A classe Co-NP Reduções de tempo polinomial. Definida por. Exemplos em:
A Classe NP Agenda Complexidade Não Determinista A classe NP Definida por aceitação em tempo polinomial por NTM s instâncias positivas com provas de tamanho polinomial aceitação por verificadores em tempo
Introdução à classe de problemas NP- Completos
Introdução à classe de problemas NP- Completos R. Rossetti, A.P. Rocha, A. Pereira, P.B. Silva, T. Fernandes FEUP, MIEIC, CAL, 2010/2011 1 Introdução Considerações Práticas Em alguns casos práticos, alguns
Interpolação polinomial: Diferenças divididas de Newton
Interpolação polinomial: Diferenças divididas de Newton Marina Andretta ICMC-USP 9 de maio de 2013 Baseado no livro Análise Numérica, de R. L. Burden e J. D. Faires. Marina Andretta (ICMC-USP) sme0500
Medida do Tempo de Execução de um Programa
Medida do Tempo de Execução de um Programa Livro Projeto de Algoritmos Nívio Ziviani Capítulo 1 Seção 1.3.1 http://www2.dcc.ufmg.br/livros/algoritmos/ Comportamento Assintótico de Funções O parâmetro n
Teoria dos Grafos. Valeriano A. de Oliveira Socorro Rangel Departamento de Matemática Aplicada.
Teoria dos Grafos Valeriano A. de Oliveira Socorro Rangel Departamento de Matemática Aplicada [email protected], [email protected] Grafos e Algoritmos Preparado a partir do texto: Rangel, Socorro.
Teoria dos Grafos. Valeriano A. de Oliveira, Socorro Rangel, Silvio A. de Araujo. Capítulo 16: Grafos Planares. Departamento de Matemática Aplicada
Teoria dos Grafos Valeriano A. de Oliveira, Socorro Rangel, Silvio A. de Araujo Departamento de Matemática Aplicada Capítulo 16: Grafos Planares Preparado a partir do texto: Rangel, Socorro. Teoria do
Complexidade de Algoritmos
Complexidade de Algoritmos Classes de Complexidades de Problemas Prof. Osvaldo Luiz de Oliveira Estas anotações devem ser complementadas por apontamentos em aula. Tempo polinomial Um algoritmo A, com entrada
Redução de Cook-Levin e Considerações Finais
Redução de Cook-Levin e Considerações Finais André Vignatti DINF- UFPR Fechando o Ciclo de Reduções Nós reduzimos o SAT para diversos problemas de busca, como mostra a figura: Todos problemas NP CIRCUIT
Complexidade de Tempo e Espaço
Complexidade de Tempo e Espaço Profa. Sheila Morais de Almeida DAINF-UTFPR-PG junho - 2018 Sheila Almeida (DAINF-UTFPR-PG) Complexidade de Tempo e Espaço junho - 2018 1 / 43 Este material é preparado usando
Representação de poliedros
Representação de poliedros Marina Andretta ICMC-USP 8 de novembro de 2016 Baseado no livro Introduction to Linear Optimization, de D. Bertsimas e J. N. Tsitsiklis. Marina Andretta (ICMC-USP) sme0211 -
Departamento de Engenharia de Produção UFPR 22
Departamento de Engenharia de Produção UFPR 22 Geralmente, temos três objetivos i. Redução de custos (custos variáveis) Redução de capital (investimento, custos fixos) i Melhoria do serviço (pode conflitar
Lema de Farkas e desigualdades lineares
Lema de Farkas e desigualdades lineares Marina Andretta ICMC-USP 30 de outubro de 2016 Baseado no livro Introduction to Linear Optimization, de D. Bertsimas e J. N. Tsitsiklis. Marina Andretta (ICMC-USP)
Aula 19: Lifting e matrizes ideais
Aula 19: Lifting e matrizes ideais 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... Branch-and-bound Formulações
Projeto e Análise de Algoritmos
Projeto e Análise de Algoritmos Aula 01 Complexidade de Algoritmos Edirlei Soares de Lima O que é um algoritmo? Um conjunto de instruções executáveis para resolver um problema (são
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
Teoria da Computação Aula 9 Noções de Complexidade
Teoria da Computação Aula 9 Noções de Complexidade Prof. Esp. Pedro Luís Antonelli Anhanguera Educacional Análise de um Algoritmo em particular Qual é o custo de usar um dado algoritmo para resolver um
Complexidade de algoritmos Notação Big-O
Complexidade de algoritmos Notação Big-O Prof. Byron Leite Prof. Tiago Massoni Engenharia da Computação Poli - UPE Motivação O projeto de algoritmos é influenciado pelo estudo de seus comportamentos Problema
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
Algoritmos de Aproximação para o Problema do Caixeiro Viajante
TSP p.1/19 Algoritmos de Aproximação para o Problema do Caixeiro Viajante 24 de agosto de 2004 TSP p.2/19 Problema do Caixeiro Viajante Dados grafo comprimento da aresta ( ) TSP p.2/19 Problema do Caixeiro
Capítulo 2: Procedimentos e algoritmos
Capítulo 2: Procedimentos e algoritmos Para estudar o processo de computação de um ponto de vista teórico, com a finalidade de caracterizar o que é ou não é computável, é necessário introduzir um modelo
Árvores Árvores Geradoras de Custo Mínimo 0/16
Conteúdo 1 Árvores 2 Árvores Geradoras de Custo Mínimo Árvores Árvores Geradoras de Custo Mínimo 0/16 Árvores Definição (Grafo Acíclico) Um grafo acíclico é um grafo que não contém ciclos. Árvores Árvores
Interpolação polinomial: Diferenças divididas de Newton
Interpolação polinomial: Diferenças divididas de Newton Marina Andretta ICMC-USP 16 de maio de 2012 Baseado no livro Análise Numérica, de R. L. Burden e J. D. Faires. Marina Andretta (ICMC-USP) sme0500
Teoria dos Grafos. Grafos Planares
Teoria dos Grafos Valeriano A. de Oliveira Socorro Rangel Silvio A. de Araujo Departamento de Matemática Aplicada [email protected], [email protected], [email protected] Grafos Planares
TEORIA DE COMPLEXIDADE
UFMG/ICEX/DCC PROJETO E ANÁLISE DE ALGORITMOS TEORIA DE COMPLEXIDADE PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO 1 O SEMESTRE DE 2008 Antonio Alfredo Ferreira Loureiro [email protected] http://www.dcc.ufmg.br/~loureiro
Volmir Eugênio Wilhelm Departamento de Engenharia de Produção UFPR 21
Volmir Eugênio Wilhelm Departamento de Engenharia de Produção UFPR 21 Três objetivos i. Redução de custos (custos variáveis) ii. iii. Redução de capital (investimento, custos fixos) Melhoria do serviço
Projeto e Análise de Algoritmos NP Completude Parte 2. Prof. Humberto Brandão
Projeto e Análise de Algoritmos NP Completude Parte 2 Prof. Humberto Brandão [email protected] Universidade Federal de Alfenas Departamento de Ciências Exatas versão da aula: 0.2 Última aula
Jorge Figueiredo, DSC/UFCG. Análise e Técnicas de Algoritmos 2005.1. Jorge Figueiredo, DSC/UFCG. Análise e Técnicas de Algoritmos 2005.
Agenda Análise e Técnicas de Algoritmos Jorge Figueiredo Conceitos básicos Classes de de Complexidade P NP Redução Problemas NPC NP-Completude Introdução Existem alguns problemas computacionais que são
ANÁLISE DE ALGORITMOS (INF 1721)
PUC-Rio Departamento de Informática Prof. Marcus Vinicius S. Poggi de Aragão (3WA) Horário: 2as. e 4as. 9-11hs (3WA) 3 de dezembro de 2016 Período: 2016.2 ANÁLISE DE ALGORITMOS (INF 1721) 3 a Lista de
Aula 01. Murilo V. G. da Silva DINF/UFPR
Aula 01 DINF/UFPR Antes de qualquer coisa... Computação quântica é algo quente nos noticiários... Antes de qualquer coisa... Computação quântica é algo quente nos noticiários... mas Antes de qualquer coisa...
Resolução de sistemas de equações lineares: Método de eliminação de Gauss - estratégias de pivotamento
Resolução de sistemas de equações lineares: Método de eliminação de Gauss - estratégias de pivotamento Marina Andretta ICMC-USP 28 de março de 2012 Baseado no livro Análise Numérica, de R. L. Burden e
Aula 1. Teoria da Computação III
Aula 1 Teoria da Computação III Complexidade de Algoritmos Um problema pode ser resolvido através de diversos algoritmos; O fato de um algoritmo resolver um dado problema não significa que seja aceitável
DINTER UFF/IFTM - Análise e Síntese de Algoritmos - Lista de Exercícios
DINTER UFF/IFTM - Análise e Síntese de Algoritmos - Lista de Exercícios - 2013 1. Uma pessoa sobe uma escada composta de n degraus, com passos que podem alcançar entre 1 e k n degraus. Escrever equações
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 Classes de Comportamento Assintótico Se f é uma função de complexidade para um algoritmo F, então
Algoritmos e Estruturas de Dados I Prof. Tiago Eugenio de Melo
Algoritmos e Estruturas de Dados I Prof. Tiago Eugenio de Melo [email protected] www.tiagodemelo.info Observações O conteúdo dessa aula é parcialmente proveniente do Capítulo 11 do livro Fundamentals of
Marina Andretta. 10 de outubro de Baseado no livro Introduction to Linear Optimization, de D. Bertsimas e J. N. Tsitsiklis.
Solução básica viável inicial Marina Andretta ICMC-USP 10 de outubro de 2016 Baseado no livro Introduction to Linear Optimization, de D. Bertsimas e J. N. Tsitsiklis. Marina Andretta (ICMC-USP) sme0211
Método de Newton truncado
Método de Newton truncado Marina Andretta ICMC-USP 8 de outubro de 2018 Baseado no livro Numerical Optimization, de J. Nocedal e S. J. Wright. Marina Andretta (ICMC-USP) sme5720 - Otimização não-linear
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
