XLVI Pesquisa Operacional na Gestão da Segurança Pública
|
|
- Izabel da Rocha Ramalho
- 6 Há anos
- Visualizações:
Transcrição
1 Conexão de Terminais com Número Restrito de Roteadores e Elos Mitre C. Dourado 1 UFRJ - Depto. de Ciência da Computação Rio de Janeiro, RJ 1 mitre@nce.ufrj.br, Rodolfo A. Oliveira 2 UFRJ - PPGI/NCE Rio de Janeiro, RJ 2 r.oliveira@ppgi.ufrj.br, Fábio Protti 3 UFF - Instituto de Computação Niterói, RJ 3 fabio@ic.uff.br, Uéverton S. Souza 4 CEFET-RJ - Departamento de Informática Rio de Janeiro, RJ 4 ueverton.souza@cefet-rj.br RESUMO O PROBLEMA DA ÁRVORE GERADORA e o PROBLEMA DA ÁRVORE STEINER visam a obtenção de um subgrafo acíclico que conecta um conjunto de vértices terminais e satisfaz algumas propriedades. Ambos os problemas têm aplicações importantes em várias áreas que envolvem interconexões de elementos. Seja G um grafo. A árvore de conexão de um subconjunto W V (G) é um subgrafo acíclico e conexo T de G tal que W V (T ) e todas as folhas de T estão em W. Em uma árvore de conexão, existem três tipos de vértices: (1) vértices terminais, que são aqueles que pertencem a W ; (2) vértices não-terminais com grau dois em T, chamados elos; (3) vértices não-terminais com grau pelo menos três em T, chamados roteadores. Motivados por seu grande potencial de aplicação, propomos um novo problema, denominado PROBLEMA DE CONEXÃO DE TERMINAIS (TCP), onde o número de vértices não-terminais (elos e/ou roteadores) é limitado. Neste trabalho, provamos casos NP-completos e polinomiais para variantes do TCP. Além disso, analisamos a complexidade do problema TCP quando os vértices terminais são folhas, e para o mesmo problema apresentamos um algoritmo parametrizado, o qual provamos pertencer à classe FPT, quando o grau máximo, o número de rotadores e o número de elos são limitados. Palavras-chave: Árvore de Steiner. Árvore Geradora. Ávore de Conexões. Complexidade Computacional. FPT. Teoria e Algoritmos em Grafos. ABSTRACT The SPANNING TREE PROBLEM and the STEINER TREE PROBLEM aim at obtaining an acyclic subgraph connecting a set of terminal points and satisfying some properties. Both problems have several important network applications. Let G be a graph. A connection tree of a subset W V (G) is an acyclic, connected subgraph T of G such that W V (T ) and all leaves of T are in W. In a connection tree, there are three types of vertices: (1) terminal vertices, i.e., those belonging to W ; (2) non-terminal vertices with degree two in T, called linkers; (3) non-terminal 2965
2 vertices with degree at least three in T, called routers. Motivated by its large potential applicability, we propose a new problem in graphs, called TERMINAL CONNECTION PROBLEM (TCP), where the number of non-terminal vertices (linkers and/or routers) is bounded. In this work, we prove NP-complete and polynomial cases for variants of the TCP. Furthermore, we analyze the complexity of the TCP when the terminal vertices are leaves, and we present an FPT algorithm when the maximum degree, the number of routers, and the number of linkers are limited. Keywords: Steiner tree. Spanning tree. Connection Tree. Computational Complexity. FPT. Theory and Algorithms on Graphs. 1 Introdução Em [Prim (1957)], discute-se a relevância de conectar pontos terminais com custo mínimo de traços, ou seja, para um determinado conjunto de pontos terminais, o problema consiste em conectar todos os terminais com conexões terminal-a-terminal com o menor comprimento total possível (soma dos comprimentos do traços). Este problema é chamado de PROBLEMA DA ÁRVORE GERADORA e tem várias aplicações em projeto de redes, em particular em comunicação, distribuição e redes de transporte. Outro problema importante é o PROBLEMA DA ÁRVORE STEINER [Hakimi (1971), Levin (1971)]: dado um grafo G conexo e ponderado e um subconjunto W V (G), o problema consiste em encontrar um subgrafo de custo mínimo contendo W, onde o uso de pontos não-terminais adicionais, chamados vértices de Steiner, é permitido. Para grafos não ponderados, uma árvore de Steiner é um subgrafo conexo T de G tal que W V (T ) e E(T ) é mínimo. Veja a Figura 1, que ilustra os dois problemas citados. u x z 2 (i) v y u x z 2 (ii) v y Figura 1. (i) Temos que qualquer árvore geradora para W = {u, v, x, y} tem custo mínimo 6; (ii) A árvore de Steiner para W = {u, v, x, y} é a árvore geradora de custo mínimo para W {z}, cujo valor é 4. Uma árvore de conexão para um subconjunto W V (G) é um subgrafo acíclico e conexo T de G, onde W V (T ) e todas as folhas de T estão em W. Claramente, toda árvore Steiner para W é uma árvore de conexão. Em uma árvore de conexão, existem três tipos de vértices : (1) vértices de W, chamados terminais; (2) vértices em V (T )\W com grau dois em T, chamados elos; (3) vértices em V (T )\W com grau pelo menos três em T, chamados roteadores. 2966
3 Motivados por potenciais aplicações, estudamos a complexidade de determinar se um grafo não ponderado G admite uma árvore de conexão T para um dado subconjunto W V (G) satisfazendo as seguintes condições: (i) V (T ) contém no máximo r roteadores; (ii) V (T ) contém no máximo l elos. A ideia de limitar o número de vértices não-terminais surgiu de algumas questões em segurança da informação em redes, uma vez que os vértices não-terminais usados para estabelecer a conexão podem tentar acessar informações privadas compartilhadas apenas pelos terminais. Além disso, em algumas situações, estes limites representam o cenário real ao criar diferentes estruturas de conexão, tais como encontrar formas de construir estradas ou ferrovias para conectar um conjunto de localidades, ou decidir políticas de roteamento através da internet para o tráfego multicast. Note que a determinação de uma árvore de conexão mínima satisfazendo (i) e (ii) é equivalente a determinar uma árvore geradora para W = V (G), quando r = 0 e l = 0; e é equivalente a determinar uma árvore Steiner quando r = l = V (G)\W. Neste artigo, provaremos que decidir se existe uma árvore de conexão T satisfazendo (i) e (ii) é um problema NP-completo, mesmo quando: (a) o parâmetro l é um valor constante fixo; (b) o parâmetro r é um valor constante fixo. Por outro lado, mostraremos que, quando os dois parâmetros são fixos, o problema pode ser resolvido em tempo polinomial. Ainda neste trabalho, analisaremos a complexidade do problema E-TCP, variação do problema TCP onde exige-se que todos os vértices de W sejam folhas da árvore de conexão. Dentre os resultados obtidos para o problema E-TCP, mostramos que o problema permanece NP-completo quando o grafo de entrada possui grau máximo 6 e o número de elos exigidos na árvore de conexão é limitado por uma constante. Além disso, apresentamos um algoritmo parametrizado que prova que o problema é tratável por parâmetro fixo quando o grau máximo, o número de roteadores e o número de elos são parâmetros. 2 Complexidade Computacional O PROBLEMA DA ÁRVORE GERADORA é bem conhecido por ser solucionável em tempo polinomial [Prim (1957)]; em contrapartida, encontrar uma árvore de Steiner é NP-difícil [Garey (1990)]. Em [Dreyfus (1972)], Dreyfus e Wagner apresentaram um algoritmo que, utilizando como ferramenta a programação dinâmica, obtém uma árvore de Steiner em tempo O(n 3 + n 2 2 k 1 + n3 k 1 ), onde k é um parâmetro que representa o número de terminais; este resultado (obtido de forma independente por Levin [Levin (1971)]) implica em um algoritmo de tempo polinomial quando k é limitado por um valor constante ou por uma função de ordem O(log n). Definimos o PROBLEMA DE CONEXÃO DE TERMINAIS da seguinte forma: 2967
4 PROBLEMA DE CONEXÃO DE TERMINAIS TCP Instância: Um grafo conexo G, um subconjunto W V (G), e dois inteiros não negativos l e r. Questão: O grafo G contém uma árvore de conexão T com no máximo l elos e r roteadores? Claramente, o TCP está em NP, pois é fácil verificar se uma árvore T conecta W usando no máximo l elos e r roteadores. Definindo valores constantes para alguns parâmetros do TCP, três variantes são formuladas: TCP(l) - versão do TCP com l limitado por uma constante; TCP(r) - versão do TCP com r limitado por uma constante; TCP (l, r) - versão do TCP com l e r limitados por constantes. de W. Note que TCP(0, 0) é equivalente a encontrar uma árvore contendo apenas vértices Teorema 1. TCP(l) é NP-completo. Prova. A prova utiliza uma redução do problema 3-SAT. Mostramos que, dada uma fórmula booleana F com m cláusulas e n variáveis, existe uma atribuição de valores verdadeiro e falso às variáveis de F que a satisfaçam se e somente se, no grafo associado G, existe uma árvore de conexão para um subconjunto específico W V (G) com r = 2n + 1 roteadores e l = 2 elos. (Para outros valores de l, mesmo para l = 0, a prova pode ser facilmente adaptada.) Dada uma fórmula booleana F com m cláusulas e n variáveis onde cada cláusula contém exatamente 3 literais, construimos um grafo associado G da seguinte forma: Para cada cláusula C j de f, crie três vértices c 1 j, c 2 j, c 3 j em G; Para cada variável X i de F, crie um subgrafo g i, composto pelos vértices x i, t xi, f xi, W 1 x i, w 2 x i e pelas arestas (w 1 x i, x i ), (x i, t xi ), (t xi, w 2 x i ), (w 2 x i, f xi ), (f xi, x i ); Crie o subgrafo g f que consiste nos vértices f, w 1 f, w2 f, l1, l 2 e nas arestas (f, l 1 ), (f, l 2 ), (l 1, w 1 f ), (l 2, w 2 f ); Para todo i, adicione uma aresta (f, x i ) a G; Adicione as arestas (t xi, c 1 j), (t xi, c 2 j) e (t xi, c 3 j) se e somente se a cláusula C j contém o literal X i ; Adicione as arestas (f xi, c 1 j), (f xi, c 2 j) e (f xi, c 3 j) se e somente se a cláusula C j contém o literal X i ; Inclua em W vértices w 1 f, w2 f, w1 x i, w 2 x i, c 1 j, c 2 j e c 3 j (para todos os i, j). Inicialmente, provaremos que, se F é satisfatível, então o grafo associado G contém uma árvore de conexão T com r = 2n + 1 roteadores e l = 2 elos. Por construção, o subgrafo g f deve estar contido em T. Para todo i adicionamos a T as arestas (f, x i ) e 2968
5 (x i, w 1 x i ). Seja A uma atribuição de verdade para F. Suponha que cada variável torna pelo menos uma cláusula de F verdadeira (é fácil ver que tal atribuição sempre existe se F é satisfatível). Adicione a aresta (x i, t xi ) a T se a variável X i =verdadeiro em A; caso contrário, adicione a aresta (x i, f xi ). Se t xi ( ou f xi ) pertence a T, então adicione a aresta (t xi, w 2 x i ) (ou (f xi, w 2 x i )) a T. Para cada vértice t xi (ou f xi ) em T, escolha um novo vértice c k j e insira uma aresta entre t xi (ou f xi ) e c k j em T. (Os vértices c k j são folhas de T.) Finalmente, para cada vértice c k j ainda não incluído em T, insira em T uma aresta de G conectando c k j a algum vértice t xi ou f xi já em T. Neste ponto, T é uma árvore de conexão para W contendo os dois elos em g f, e tendo como roteadores os vértices f, x 1, x 2,..., x n e t xi ou f xi para cada x i. Por outro lado, se G contém uma árvore de conexão para W utilizando no máximo r = 2n + 1 roteadores e l = 2 elos, então por construção T usa l 1 e l 2 como elos. Como x i é o único vizinho de w 1 x i em G, x i é um roteador em T (para todo i). Cada vértice x i em T é incidente a apenas uma das arestas (x i, t xi ) e (x i, f xi ), pois, caso contrário, isso implicaria a existência de mais do que 2n + 1 roteadores. Em outras palavras, isso mostra que ou t xi ou f xi é um roteador para todo i por causa de wx 2 i, pois esses vértices mais o vértice f e os vértices x i totalizam no mínimo 2n + 1 roteadores. Isto implica diretamente que f xi não está em T se t xi está, e vice-versa. Consequentemente, x i tem grau 3 e é adjacente a f. Cada vértice c k j em T é adjacente a exatamente um vértice, caso contrário T conteria um ciclo. Assim, podemos construir uma atribuição A para F da seguinte forma: atribua X i =verdadeiro se e somente se t xi pertence a T. Uma vez que cada c k j é adjacente a um vértice t xi ou f xi, pela construção A é uma atribuíção que satisfaz F. Note que para qualquer valor de l podemos construir um novo grafo para a redução. Para isso, basta adicionar novos vértices l j e w j f para o mesmo grafo, conforme feito para os vértices l 1, l 2, wf 1 e w2 f. A Figura 2 mostra o grafo G construído a partir da fórmula F = (x 1 +x 2 +x 3 ).(x 1 + x 2 + x 3 ).(x 1 + x 2 + x 3 ), e a Figura 3 ilustra a árvore de conexão T de G para W usando l = 2 elos e r = 7 roteadores. 2969
6 w 1 f l 1 l 2 f w 2 f w 1 x 1 w 1 x 2 x 1 x2 x 3 w 1 x 3 w 2 x 1 w 2 x 2 w 2 x 3 t x1 f x1 t x2 f x2 t x3 f x3 c 1 1 c 2 1 c 3 1 c 1 2 c 2 2 c 3 2 c 1 3 c 2 3 c 3 3 (a) Figura 2. O grafo G associado à fórmula F. w 1 f l 1 l 2 f w 2 f w 1 x 1 w 1 x 2 x 1 x2 x 3 w 1 x 3 w 2 x 1 w 2 x 2 w 2 x 3 t x1 f x2 f x3 c 1 1 c 2 1 c 3 1 c 1 2 c 2 2 c 3 2 c 1 3 c 2 3 c 3 3 (b) Figura 3. Uma árvore de conexão T para W. Teorema 2. TCP(r) é NP-completo. Prova. Esta prova utiliza uma redução a partir de um problema muito interessante descrito em [Garey (1990)]: DEGREE CONSTRAINED SPANNING TREE - DCST Instância: Um conexo grafo H e um inteiro positivo k. Pergunta: Existe uma árvore geradora para H em que nenhum vértice tem grau maior do que k? 2970
7 De acordo com [Garey (1990)], DCST é NP-completo para qualquer inteiro fixo k 2. Denote por DCST(2) a versão de DCST para k = 2, que é equivalente ao PROBLEMA DO CAMINHO HAMILTONIANO [Garey (1990)]. A partir de uma instância H de DCST(2), crie uma instância G de TCP(r) para r = 0 da forma a seguir. (A prova pode ser facilmente adaptada para outros valores de r). (1) Inicialmente, faça V (G) = V (H). (2) Para cada vértice v i V (G) faça: (a) crie dois vértices v i e v i em G; (b) atribua a v i e v i em G a mesma vizinhança de v i em H; (c) adicione as arestas (v i, v i) e (v i, v i ) em G. (3) Faça l = 2n, r = 0 e W = {v i 1 i n}. Note que todos os vértices em W têm grau dois em G. Se H contém uma árvore geradora T em que nenhum vértice tem grau maior do que 2, podemos construir uma árvore de conexão T para W usando no máximo l = 2n elos e r = 0 roteadores. Para cada aresta (v i, v j ) em T, basta adicionar as arestas (v i, v i), (v i, v j), (v j, v j ) a T. (Se v i ou v j já pertence a T, substitua-o por v i ou v j, respectivamente). Por outro lado, a partir de uma árvore de conexão T para W com no máximo 2n elos e sem roteadores, podemos construir uma árvore geradora T de H (que é um caminho Hamiltoniano), adicionando uma aresta (v i, v j ) a T se e somente se existe um caminho em T entre v i e v j cujos vértices internos são todos elos. Teorema 3. TCP(l, r) pode ser solucionado em tempo polinomial. Prova. A prova é baseada no seguinte algoritmo: para cada par L, R de subconjuntos tais que L, R V (G)\W, L R =, L l e R r, siga os passos abaixo: (1) Faça G = G[W L R] (2) Para cada floresta geradora T de G obtida escolhendo duas arestas de G incidentes a v para cada v L e três arestas de G incidentes a w para cada w R, onde deg T (v) = 2 para cada v L faça Se T é conexo então retorne T senão Seja S = E(G )\(E(T ) E(G [L])); Enquanto T não for conexo ou S não estiver vazio faça Remova uma aresta e de S e insira e em T, desde que T + e não contenha ciclo. Se T é conexo então retorne T O algoritmo acima retorna uma árvore de conexão para W utilizando os vértices em L como elos e os vértices em R como roteadores, caso esta árvore exista. O algoritmo 2971
8 considera O(n l n r ) pares de subconjuntos L, R. A linha (2) considera O(n 2l n 3r ) subgrafos T, onde um tempo O(n) é necessário para verificar se cada T é um subgrafo gerador e acíclico. As restantes operações são facilmente feitas feitas em tempo O(n + m). A complexidade geral é, portanto, O(n 3l+4r+1 m). 3 Conexão de Nós Estritamente Terminais O problema TCP consiste em conectar um conjunto W V (G) utilizando no máximo l elos e r roteadores. Sem perda de generalidade, podemos considerar que em uma árvore de conexão T todas as suas folhas são vértices pertencentes a W. Como podemos observar, não necessariamente todos os vértices de W são folhas em uma árvore de conexão; há árvores onde vértices em W possuem grau maior ou igual a dois, fazendo portanto a função de elos ou roteadores. No entanto, há aplicações em que espera-se que os nós terminais sejam folhas da árvore de conexão, ou seja, estes não podem simular um elo ou um roteador. Denotamos por E-TCP uma versão do problema TCP onde deseja-se determinar se existe uma árvore de conexão T para um conjunto W de vértices utilizando no máximo l elos e r roteadores, tal que todos os vértices de W são folhas em T. CONEXÃO DE NÓS ESTRITAMENTE TERMINAIS E-TCP Instância: Um grafo conexo G, um subconjunto W V (G), e dois inteiros não negativos l e r. Questão: O grafo G contém uma árvore de conexão T com no máximo l elos e r roteadores, tal que V (T ) W é o conjunto das folhas de T? Lema 4. TCP E-TCP. Prova. Seja (G, W, r, l) uma instância do problema TCP. Construímos uma instância (G, W, r, l ) do problema E-TCP da seguinte forma: (i) Faça G = G e W = W ; (ii) Para cada vértice v i W crie um vértice v i com a mesma vizinhança de v i em G, remova todas arestas incidentes a v i e adicione a aresta (v i, v i) a G ; (iii) Para cada vértice v i recentemente criado, crie um segundo vértice v i, adicione a aresta (v i, v i ), e faça W = W {v i }; (iv) Faça l = l e r = W + r. Seja S = V (G )\(W {v i : v i V (G )}). Note que G[S] é um grafo isomorfo a G. Além disso, todo vértice v i será roteador em qualquer árvore de conexão para W em G. Sendo assim, é fácil ver que G possui uma árvore de conexão para W utilizando l elos e r roteadores se e somente se G possui uma árvore que conecte W utilizando l = l elos e r = W + r roteadores. 2972
9 Corolário 5. E-TCP(l) é NP-completo. Prova. Segue diretamente da prova apresentada no Lema 4, ou alternativamente, da prova apresentada no Teorema 1. Lema 6. E-TCP(l, r) pode ser solucionado em tempo polinomial. Prova. O algoritmo apresentado no Teorema 3 pode ser facilmente adaptado para preservar a condição dos vértices em W serem folhas. Teorema 7. TCP(l) e E-TCP(l) permanecem NP-completos em grafos com grau máximo 6. Prova. O Teorema 1 demonstrou por uma redução do problema 3-SAT que TCP(l) e E-TCP(l) são problemas NP-completos. No entanto, o problema 3-SAT permanece NPcompleto mesmo quando cada variável ocorre no máximo três vezes e cada literal ocorre no máximo duas vezes [Garey (1990)]. Se considerarmos essa restrição em nossa construção, temos que o único vértice com grau maior que 6 no grafo obtido é o vértice f. Todavia, podemos substituir f na construção por uma subgrafo T f composto por uma árvore binária completa com n (número de variáveis) folhas, sendo cada folha vizinha de um vértice x i e a raiz de T f vizinha de l 1 e l 2. Para finalizar a construção, cada vértice em T f diferente da raiz será vizinho de dois novos vértices (vértices pendentes) que serão adicionados ao conjunto W. Neste ponto, o grafo resultante G possui grau máximo 6 e possuirá uma árvore que conecta W utilizando 2n + V (T f ) \ W roteadores e 2 elos se e somente se a fórmula F associada for satisfatível. 4 Algoritmo Parametrizado A teoria de complexidade parametrizada [Downey (1995)], proposta em 1995, surgiu como uma alternativa promissora para se trabalhar com problemas NP-difíceis, que passam a ter um conjunto K de parâmetros fixos adicionais à entrada. O interesse em parametrizar tais problemas se deve ao fato de que, em muitos casos, somente uma pequena faixa de valores de parâmetro é realmente importante na prática. Logo, a intratabilidade (aparente) desses problemas no caso geral é indevidamente pessimista. Analisando-se mais profundamente a estrutura da entrada (considerando-a com um conjunto de parâmetros adicionais), tenta-se limitar a explosão combinatória aparentemente inevitável na solução do problema. Muitas vezes, determinar o custo mínimo para a produção de uma empresa, ou o lucro máximo que esta poderá obter, por exemplo, são problemas difíceis de serem resolvidos. No entanto, na prática, as empresas geralmente necessitam determinar apenas se é possível efetuar a produção com um determinado orçamento ou verificar se é possível cumprir uma determinada meta de venda/lucro. Sendo assim, é possível adicionar aos problemas de custo mínimo ou lucro máximo destas empresas parâmetros fixos adicionais, como um orçamento ou uma meta, dando origem às suas versões parametrizadas, que podem 2973
10 ser mais fáceis de serem solucionadas (menos complexas) e ao mesmo tempo satisfazer as necessidades requeridas. Perante estes fatos, observa-se que a Teoria da Complexidade Parametrizada modela perfeitamente esta realidade; muitos problemas considerados intratáveis (a menos que P = NP ) sob o ponto de vista teórico, na prática são tratáveis por parâmetro fixo. Segundo a complexidade parametrizada [Flum (2006), Niedermeier (2006)], dado um conjunto K de parâmetros (fixados com valor constante), um problema NP-difícil Π é dito tratável por parâmetro fixo (F P T ) para K se, uma vez adicionando K à sua formulação, for possível desenvolver um algoritmo que solucione Π em tempo f(k)n α, onde n é o tamanho da entrada, f(k) é uma função arbitrária (possivelmente exponencial) em K e α é uma constante independente de n e K. Definição 8. Seja Π um problema. Então Π F P T com relação a um conjunto de parâmetros K se e somente se existe um algoritmo A para solucionar Π com tempo de execução f(k).n O(1), onde f() é uma função arbitrária. Dentre os métodos para construção de um algoritmo F P T, o método da árvore de busca limitada é provavelmente o mais fácil de ser aplicado, e é baseado no seguinte fato. Muitos problemas combinatórios podem ser solucionados através de algoritmos que podem ser decompostos em duas partes distintas: Primeiramente, com o algoritmo computamos, talvez de maneira ineficiente, algum espaço de busca que é com frequência uma árvore de busca de tamanho exponencial. Em seguida, executamos algum algoritmo relativamente eficiente para os ramos das árvores, em geral baseado na busca em profundidade. A complexidade exponencial do pior caso de tais algoritmos provém de instâncias que necessitam percorrer completamente a árvore. Para o propósito de parametrização, a principal observação é que para muitos problemas parametrizados, o tamanho da árvore depende somente dos parâmetros. Desta forma, para parâmetros fixos, o espaço de busca possui tamanho constante e o algoritmo é então eficiente para cada parâmetro fixo k. Teorema 9. E-TCP pode ser solucionado em tempo f(, r, l).n O(1). Prova. Construímos uma árvore enraizada de altura r + l + 1 da seguinte forma. Rotule a raiz da árvore com dois conjuntos vazios. Escolha um vértice w i W ; note que qualquer árvore de conexão de W (onde W consiste nas folhas) deve conter para o vértice w i W uma aresta (w i, v) E(G) tal que v / W. Sendo assim, criamos nós-filhos da raiz correspondendo a estas d(w i ) possibilidades. Assim, cada nó filho é rotulado com os conjuntos {(w i, v)} e {w i }. O conjunto de arestas do rótulo de um nó representa uma possível subárvore de conexão para W, e o conjunto de vértices representa os vértices que não precisam ser mais analisados na construção da árvore de conexão. 2974
11 A construção da árvore de conexão seguirá uma busca em largura. Assim, no segundo passo, será analisado o primeiro nó filho criado a partir da raiz. Neste ponto, seja v o vértice tal que (w i, v) pertence ao conjunto de arestas do rótulo do nó em análise e v / W. Como v não será terminal temos duas possibilidades: (i) v é um elo na árvore de conexão; neste caso v possuirá mais uma aresta no conjunto de arestas da árvore de conexão; (ii) v é um roteador na árvore de conexão; neste caso v possuirá pelo menos mais duas arestas no conjunto de arestas da árvore de conexão. Sendo assim, criamos nós-filhos do nó corrente para cada uma destas 2 1 possibilidades, onde cada nó-filho será rotulado com o conjunto de arestas de seu nó pai acrescido de um subconjunto distinto de arestas de v. O conjunto de vértices do rótulo deste nó criado será formado pelo conjunto de vértices do rótulo do seu nó-pai acrescido do vértice v. De uma forma geral, para cada nó rotulado com um conjunto S de arestas e um conjunto X de vértices, escolhemos um nó em V (S) \ X e criamos nós-filhos para cada uma das possibilidades deste nó (ser elo ou roteador), desde que as arestas adicionadas ao conjunto de arestas não gerem ciclos. Se criamos um nó de altura no máximo r + l + 1 na árvore de busca e o conjunto de vértices do rótulo do nó contém W então o conjunto de arestas do rótulo deste nó forma uma árvore de conexão utilizando no máximo r + l roteadores e elos. Desta forma, a construção da árvore de busca terá a seguinte condição de parada da ramificação de um nó: (a) atingir altura igual a r + l + 1; (b) o rótulo possuir mais do que r roteadores na árvore de conexão formada pelo seu conjunto de arestas; (c) o rótulo possuir mais do que l elos na árvore de conexão formada pelo seu conjunto de arestas. Dada a nossa árvore de busca, haverá uma árvore de conexão satisfazendo as condições exigidas para um determinado conjunto W de vértices se e somente se alguma das folhas desta árvore representa uma configuração contendo no máximo l elos, r roteadores e conectando todos os vértices em W. Como a árvore de busca possui altura no máximo r + l + 1 e grau máximo 2 1 a complexidade de tempo do nosso algoritmo será O((2 1 ) r+l+1 m), como requerido. Corolário 10. E-TCP pertence à classe FPT. 5 Conclusão Problemas relacionados a conexão de nós em uma rede são problemas combinatórios de grande interesse, e possuem diversas aplicações práticas. Neste trabalho analisamos o problema de decidir, em uma determinada rede, se existe uma árvore de conexão que conecta um determinado número de terminais utilizando um número restrito de roteadores e elos. Dentre os resultados obtidos, provamos que dado um grafo G e um conjunto W 2975
12 V (G), determinar se existe em G uma árvore que conecta W utilizando no máximo r roteadores e l elos é NP-completo quando r ou l são constantes. Porém, quando ambos os valores são limitados por constantes, o problema por ser solucionado em tempo polinomial. Além disso, analisamos a variação do problema onde todos os vértices em W devem ser folhas na árvore de conexão. Dentre os resultados obtidos, provamos que o problema permanece NP-completo mesmo se o grafo de entrada possui grau máximo 6 e o número de elos é fixado por uma constante. Também apresentamos um algoritmo parametrizado que prova que esta variação do problema é tratável por parâmetro fixo quando o grau máximo, o número de roteadores e o numero de elos são utilizados como parâmetros. Referências Downey, R. G. and Fellows, M. R. (1995). Fixed-parameter tractability and completeness I: Basic results. SIAM J. Comput., 24(4): Dreyfus, S. and Wagner, R. (1972). The Steiner problem in graphs. Networks, 1: Flum, J. and Grohe, M. (2006). Parameterized Complexity Theory (Texts in Theoretical Computer Science. An EATCS Series). Springer-Verlag New York, Inc., Secaucus, NJ, USA. Garey, M. R. and Johnson, D. S. (1990). Computers and Intractability; A Guide to the Theory of NP-Completeness. W. H. Freeman & Co., New York, NY, USA. Hakimi, S. (1971). Steiner s problem in graphs and its implications. Networks, pages Levin, A. Y. (1971). Algorithm for shortest connection of a group of graph vertices. Soviet Mathematical Doklady, 12: Niedermeier, R. (2006). Invitation to Fixed-Parameter Algorithms. Oxford Lecture Series in Mathematics and Its Applications. OUP Oxford. Prim, R. C. (1957). Shortest connection networks and some generalizations. The Bell Systems Technical Journal, 36(6):
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
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
Paulo Guilherme Inça. 7 de dezembro de 2016
Coloração de grafos é NP-Difícil Paulo Guilherme Inça 7 de dezembro de 2016 Sumário 1 Introdução 1 2 O Problema da Coloração de Grafos 2 3 3-Coloração é NP-Completo 3 4 Generalizações e Restrições 6 5
Reduções de Problemas Difíceis
Reduções de Problemas Difíceis André Vignatti DINF- UFPR Reduções de Problemas Difíceis Na figura abaixo, esquema das reduções que vamos (tentar) ver. Todos problemas NP CIRCUIT SAT SAT 3SAT INDEPENDENT
Grafos: componentes fortemente conexos, árvores geradoras mínimas
Grafos: componentes fortemente conexos, árvores geradoras mínimas SCE-183 Algoritmos e Estruturas de Dados 2 Thiago A. S. Pardo Maria Cristina 1 Componentes fortemente conexos Um componente fortemente
Introdução à Teoria dos Grafos (MAC-5770) IME-USP Depto CC Profa. Yoshiko. Capítulo 3
Introdução à Teoria dos Grafos (MAC-5770) IME-USP Depto CC Profa. Yoshiko Capítulo 3 Árvores Problema: Suponha que numa cidade haja n postos telefônicos. Para que seja sempre possível haver comunicação
Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo
PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó
Grafo planar: Definição
Grafo planar Considere o problema de conectar três casas a cada uma de três infraestruturas (gás, água, energia) como mostrado na figura abaixo. É possível fazer essas ligações sem que elas se cruzem?
Projeto e Análise de Algoritmos
Projeto e Análise de Algoritmos Tempo polinomial Verificação de tempo polinomial Diane Castonguay diane@inf.ufg.br Instituto de Informática Universidade Federal de Goiás Tempo polinomial Um algoritmo é
Projeto e Análise de Algoritmos NP Completude. Prof. Humberto Brandão
Projeto e Análise de Algoritmos NP Completude Prof. Humberto Brandão humberto@bcc.unifal-mg.edu.br Universidade Federal de Alfenas versão da aula: 0.4 Introdução Problemas intratáveis ou difíceis são comuns
Grafos: árvores geradoras mínimas. Graça Nunes
Grafos: árvores geradoras mínimas Graça Nunes 1 Motivação Suponha que queremos construir estradas para interligar n cidades Cada estrada direta entre as cidades i e j tem um custo associado Nem todas as
Problemas NP-Completos Bolas Mágicas
NP-Completo 1 Problemas NP-Completos Bolas Mágicas Já vimos antes alguns problemas NP-completos. Um deles é o jogo de cartões perfurados. Quem encontrar uma solução polinomial para o problema geral desse
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
01 Grafos: parte 1 SCC0503 Algoritmos e Estruturas de Dados II
01 Grafos: parte 1 SCC0503 Algoritmos e Estruturas de Dados II Prof. Moacir Ponti Jr. www.icmc.usp.br/~moacir Instituto de Ciências Matemáticas e de Computação USP 2011/1 Moacir Ponti Jr. (ICMCUSP) 01
Teoria dos Grafos. Fluxo Máximo em Redes
Teoria dos Grafos Valeriano A. de Oliveira Socorro Rangel Silvio A. de Araujo Departamento de Matemática Aplicada antunes@ibilce.unesp.br, socorro@ibilce.unesp.br, saraujo@ibilce.unesp.br Fluxo Máximo
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
Planaridade AULA. ... META Introduzir o problema da planaridade de grafos. OBJETIVOS Ao final da aula o aluno deverá ser capaz de:
Planaridade AULA META Introduzir o problema da planaridade de grafos. OBJETIVOS Ao final da aula o aluno deverá ser capaz de: Distinguir grafo planar e plano; Determinar o dual de um grafo; Caracterizar
PERCURSOS. André Falcão, Carlos Augusto, Rafael Broédel e Lucas Dipré
PERCURSOS André Falcão, Carlos Augusto, Rafael Broédel e Lucas Dipré Serra 2011 Índice 1...O que é caminho e circuito 1.1...Caminho 1.2...Circuito 1.3...Classificação 2...Caminhos Eulerianos 2.1...Definição
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
Árvores: Conceitos Básicos e Árvore Geradora
Árvores: Conceitos Básicos e Árvore Geradora Grafos e Algoritmos Computacionais Prof. Flávio Humberto Cabral Nunes fhcnunes@yahoo.com.br 1 Introdução No dia a dia aparecem muitos problemas envolvendo árvores:
TEORIA DE COMPLEXIDADE
TEORIA DE COMPLEXIDADE Fundamentos: classes P e N P Mauricio Ayala-Rincón Grupo de Teoria da Computaç~ao http://ayala.mat.unb.br/tcgroup Instituto de Ciências Exatas Universidade de Brasília, Brasília
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
Grafos Prismas Complementares Bem-cobertos
Grafos Prismas Complementares Bem-cobertos Rommel M. Barbosa, Márcia R. C. Santana, Instituto de Informática, UFG, Caixa Postal 131, CEP 74001-970, Goiânia, GO E-mail: rommel@inf.ufg.br, marcia@inf.ufg.br,
Cap. 2 Conceitos Básicos em Teoria dos Grafos
Teoria dos Grafos e Aplicações 8 Cap. 2 Conceitos Básicos em Teoria dos Grafos 2.1 Grafo É uma noção simples, abstrata e intuitiva, usada para representar a idéia de alguma espécie de relação entre os
Uma forma de classificação
Uma forma de classificação L. Não-RE ou f. nãocomputáveis LRE ou MT ou f. comput. L. Indecidíveis ou Procedimentos L. Recursivas ou Decidíveis ou Algoritmos Outra forma de classificação Problemas Indecidíveis
GRAFOS. Prof. André Backes. Como representar um conjunto de objetos e as suas relações?
8/0/06 GRAFOS Prof. André Backes Definição Como representar um conjunto de objetos e as suas relações? Diversos tipos de aplicações necessitam disso Um grafo é um modelo matemático que representa as relações
As Pontes de Königsberg
As Pontes de Königsberg Anderson Freitas Ferreira e Lívia Minami Borges 13 de junho de 2015 Resumo A teoria de grafos teve seu início em 1736, quando Euler utilizou uma estrutura para resolver o Problema
Lógica para Computação Segundo Semestre, Aula 10: SAT. Prof. Ricardo Dutra da Silva. ( p (q ( q r))) ( p r) ( p q) ( p q r) p r.
Lógica para Computação Segundo Semestre, 2014 Aula 10: SAT DAINF-UTFPR Prof. Ricardo Dutra da Silva Definição 10.1. SAT é o problema de decidir se existe uma valoração que satisfaça uma fórmula proposicional.
Cortes (cut sets) 2010/2 Teoria dos Grafos (INF 5037/INF2781) CC/EC/UFES
Cortes (cut sets) (INF 5037/INF2781) Corte por arestas Em um grafo conexo G, um corte de arestas é um conjunto de arestas cuja remoção de G torna G desconexo, desde que nenhum subconjunto próprio desse
Árvore Binária de Busca Ótima
MAC 5710 - Estruturas de Dados - 2008 Referência bibliográfica Os slides sobre este assunto são parcialmente baseados nas seções sobre árvore binária de busca ótima do capítulo 4 do livro N. Wirth. Algorithms
5COP096 TeoriadaComputação
Sylvio 1 Barbon Jr barbon@uel.br 5COP096 TeoriadaComputação Aula 12 Prof. Dr. Sylvio Barbon Junior Sumário - Árvore Geradora Mínima - Teorema pare reconhecer arestas seguras; - Algoritmo de Prim; - Algoritmo
04 Grafos: caminhos e coloração SCC0503 Algoritmos e Estruturas de Dados II
04 Grafos: caminhos e coloração SCC0503 Algoritmos e Estruturas de Dados II Prof. Moacir Ponti Jr. www.icmc.usp.br/~moacir Instituto de Ciências Matemáticas e de Computação USP 2011/1 Moacir Ponti Jr.
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 dos Grafos. Cobertura, Coloração de Arestas, Emparelhamento
Teoria dos Grafos Valeriano A. de Oliveira Socorro Rangel Silvio A. de Araujo Departamento de Matemática Aplicada antunes@ibilce.unesp.br, socorro@ibilce.unesp.br, saraujo@ibilce.unesp.br Cobertura, Coloração
Teoria dos Grafos. Edson Prestes
Edson Prestes Grafos Enumeração de Passeios/Caminhos O processo associado à enumeração de caminhos de um grafo/dígrafo é semelhante ao processo de contagem com a diferença de que usaremos uma matriz de
O Problema da 3- Coloração de Grafos
Otimização Combinatória O Problema da - Coloração de Grafos Guilherme Zanardo Borduchi Hugo Armando Gualdron Colmenares Tiago Moreira Trocoli da Cunha Prof.ª Marina Andretta Introdução ao Problema Problema
Definição e Conceitos Básicos
Definição e Conceitos Básicos Grafos e Algoritmos Computacionais Prof. Flávio Humberto Cabral Nunes fhcnunes@yahoo.com.br 1 Conceitos Básicos Em grafos ocorrem dois tipos de elementos: Vértices ou nós;
Teoria dos Grafos Aula 6
Teoria dos Grafos Aula 6 Aula passada Busca em grafos Busca em largura (BFS Breadth First Search) Propriedades Aula de hoje BFS implementação Complexidade Busca em profundidade (DFS) Conectividade, componentes
Introdução à Teoria dos Grafos
Capítulo 1 Introdução à Teoria dos Grafos 1.1 História O primeiro problema cuja solução envolveu conceitos do que viria a ser teoria dos grafos, denominado "problema das pontes de Königsberg", foi resolvido
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 antunes@ibilce.unesp.br, socorro@ibilce.unesp.br Grafos Eulerianos Preparado a partir do texto: Rangel, Socorro.
Conceito Básicos da Teoria de Grafos
1 Conceito Básicos da Teoria de Grafos GRAFO Um grafo G(V,A) é definido pelo par de conjuntos V e A, onde: V - conjunto não vazio: os vértices ou nodos do grafo; A - conjunto de pares ordenados a=(v,w),
Problema da Árvore Geradora Mínima
Instituto Federal do Espírito Santo Campus Serra Problema da Árvore Geradora Mínima Diego Pasti Jefferson Rios Sumário Apresentação do Problema da AGM...3 Raízes do Problema Definindo o Problema O Problema
Teoria dos Grafos Aula 5
Teoria dos Grafos Aula Aula passada Explorando grafos Mecanismos genéricos Ideias sobre BFS, DFS Aula de hoje Busca em grafos Busca em largura (BFS Breadth First Search) Propriedades Busca em Grafos Problema
15 - Coloração Considere cada um dos grafos abaixo:
15 - Coloração Considere cada um dos grafos abaixo: a) Quantas cores são necessárias para colorir os vértices de um grafo de maneira que dois vértices adjacentes não recebam a mesma cor? b) Qual é o número
INF1010 Lista de Exercícios 2
INF00 Lista de Exercícios 2 Árvores. Construir algoritmo para dada uma árvore n-ária, transformá-la em uma árvore binária. 2. Qual a maior e menor quantidade de nós que podem existir em uma árvore binária
Teoria dos Grafos AULA 2
Teoria dos Grafos Valeriano A. de Oliveira Socorro Rangel Departamento de Matemática Aplicada antunes@ibilce.unesp.br, socorro@ibilce.unesp.br AULA 2 Subgrafos, Operações com Grafos Preparado a partir
CONCEITOS BÁSICOS EM GRAFOS
Um grafo (simples) G é formado por um conjunto de vértices, denotado por V(G), e um conjunto de arestas, denotado por E(G). Cada aresta é um par (não ordenado) de vértices distintos. Se xy é uma aresta,
Triangulação de Delauney
Triangulação de Delauney Um pedaço da superfície terrestre é chamado de terreno. Um terreno é uma superfície 2-dimensional em um espaço 3-dimensional com uma propriedade especial: cada linha vertical intercepta
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
Matemática Discreta Capítulo 3 Versão preliminar
Matemática Discreta Capítulo 3 Versão preliminar Henri Anciaux e Derek Hacon October 25, 2007 1 Generalidades sobre grafos Um grafo G é simplesmente um par de dois conjuntos V e A, o segundo sendo constituído
Noções da Teoria dos Grafos. André Arbex Hallack
Noções da Teoria dos Grafos André Arbex Hallack Junho/2015 Índice 1 Introdução e definições básicas. Passeios eulerianos 1 1.1 Introdução histórica..................................... 1 1.2 Passeios
14 Coloração de vértices Considere cada um dos grafos abaixo:
14 Coloração de vértices Considere cada um dos grafos abaixo: a) Quantas cores são necessárias para colorir os vértices de um grafo de maneira que dois vértices adjacentes não recebam a mesma cor? b) Qual
Teoria dos Grafos Aula 24
Teoria dos Grafos Aula 24 Aula passada Caminho mais curto entre todos os pares Algortimo de Floyd Warshall Programação dinâmica Aula de hoje Caminho mais curto em grafos Algoritmo de Bellman Ford Algoritmo
Teoria da Computação. Clique de um Grafo. Alexandre Renato Rodrigues de Souza 1
Teoria da Computação Clique de um Grafo Alexandre Renato Rodrigues de Souza 1 O que é um grafo? Definição 1: grafo é uma estruturas utilizada para representar relações entre elementos de um dado conjunto.
Teoria dos Grafos AULA 3
Teoria dos Grafos Valeriano A. de Oliveira Socorro Rangel Departamento de Matemática Aplicada antunes@ibilce.unesp.br, socorro@ibilce.unesp.br AULA 3 Trajetos, Caminhos, Circuitos, Grafos Conexos Preparado
Teoria da Computação. Exercícios. 1 Máquinas de Registos Ilimitados 2013/2014
Teoria da Computação 2013/2014 Exercícios 1 Máquinas de Registos Ilimitados 1. Construa programas URM sem módulos que calculem as seguintes funções (a) quatro(x) = 4 (b) sg(x) retorna 0 se x > 0, 1 no
05 Grafos: ordenação topológica SCC0503 Algoritmos e Estruturas de Dados II
05 Grafos: ordenação topológica SCC0503 Algoritmos e Estruturas de Dados II Prof. Moacir Ponti Jr. www.icmc.usp.br/~moacir Instituto de Ciências Matemáticas e de Computação USP 2011/1 Moacir Ponti Jr.
Acesso Sequencial Indexado
Acesso Sequencial Indexado Utiliza o princípio da pesquisa seqüencial cada registro é lido seqüencialmente até encontrar uma chave maior ou igual a chave de pesquisa. Providências necessárias para aumentar
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
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
Grafos Eulerianos e o Problema do Carteiro Chinês
Prof. Ademir A. Constantino DIN - UEM 1 Grafos Eulerianos e o Problema do Carteiro Chinês Prof. Ademir Constantino Departamento de Informática Universidade Estadual de Maringá Prof. Ademir A. Constantino
Resumo das aulas dos dias 4 e 11 de abril e exercícios sugeridos
MAT 1351 Cálculo para funções uma variável real I Curso noturno de Licenciatura em Matemática 1 semestre de 2016 Docente: Prof. Dr. Pierluigi Benevieri Resumo das aulas dos dias 4 e 11 de abril e exercícios
A complexidade do problema sanduíche para grafos fortemente cordais-(2,1)
A complexidade do problema sanduíche para grafos fortemente cordais-(2,1) Fernanda Couto 1, Luerbio Faria 2, Sulamita Klein 1 1 Programa de Engenharia de Sistemas e Computação, Universidade Federal do
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 antunes@ibilce.unesp.br, socorro@ibilce.unesp.br Preparado a partir do texto: Rangel, Socorro. Teoria do Grafos,
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 loureiro@dcc.ufmg.br http://www.dcc.ufmg.br/~loureiro
Sobre Cortes em Grafos Aresta-Coloridos
Sobre Cortes em Grafos Aresta-Coloridos Luerbio Faria, Rubens Sucupira IME/UERJ UERJ, Rio de Janeiro, RJ, Brasil luerbio@cos.ufrj.br, rasucupira@gmail.com Sulamita Klein IM/UFRJ e PESC/COPPE UFRJ, Rio
Corte Máximo em Grafos Notas de aula de MAC-5727
Corte Máximo em Grafos Notas de aula de MAC-577 (Material Extra do Capítulo ) Prof. a Yoshiko Wakabayashi Versão pós-aula feita por Bruno Takahashi C. de Oliveira em 09/03/09 15 de agosto de 016 1 Definições
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
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
INSTITUTO FEDERAL DO ESPÍRITO SANTO CURSO BACHARELADO EM SISTEMAS DE INFORMAÇÃO
INSTITUTO FEDERAL DO ESPÍRITO SANTO CURSO BACHARELADO EM SISTEMAS DE INFORMAÇÃO ANTONIO CARLOS GOMES BASILIO EVANDRO DAS VIRGENS SCARPATI MARCOS AURÉLIO MELO DIAS RENAN COSMO PROBLEMA DO CAMINHO MÍNIMO
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 7 de outubro de 2016 Marco Antonio
Matemática Discreta 10
Universidade Federal do Vale do São Francisco Curso de Engenharia da Computação Matemática Discreta 10 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br - www.univasf.edu.br/~jorge.cavalcanti 1 Muitas
INTRODUÇÃO À TEORIA DOS CONJUNTOS
1 INTRODUÇÃO À TEORIA DOS CONJUNTOS Gil da Costa Marques 1.1 Introdução 1.2 Conceitos básicos 1.3 Subconjuntos e intervalos 1.4 O conjunto dos números reais 1.4.1 A relação de ordem em 1.5 Intervalos 1.5.1
Aula 19 Conjuntos disjuntos (Union-find)
MC3305 Algoritmos e Estruturas de Dados II Aula 19 Conjuntos disjuntos (Union-find) Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br 2Q-2015 1 Números de Ackermann 2 3 Ackermann A função de Ackermann
1.3 Isomorfismo 12 CAP. 1 CONCEITOS BÁSICOS
12 CAP. 1 CONCEITOS BÁSICOS I i I j. Essa relação de adjacência define um grafo com conjunto de vértices {I 1,...,I k }. Esse é um grafo de intervalos. Faça uma figura do grafo definido pelos intervalos
GRAFOS ORIENTADOS. PSfrag replacements. Figura 1: Exemplo de um grafo orientado.
Introdução à Teoria dos Grafos Bacharelado em Ciência da Computação UFMS, 2005 GRAFOS ORIENTAOS Resumo Existem ocasiões onde grafos não são apropriados para descrever certas situações. Por exemplo, um
Produtos de Grafos Z m -bem-cobertos
TEMA Tend. Mat. Apl. Comput., 13, No. 1 (2012), 75-83. doi: 10.5540/tema.2012.013.01.0075 c Uma Publicação da Sociedade Brasileira de Matemática Aplicada e Computacional. Produtos de Grafos Z m -bem-cobertos
SUMÁRIO. Fundamentos Árvores Binárias Árvores Binárias de Busca
ÁRVORES SUMÁRIO Fundamentos Árvores Binárias Árvores Binárias de Busca 2 ÁRVORES Utilizadas em muitas aplicações Modelam uma hierarquia entre elementos árvore genealógica Diagrama hierárquico de uma organização
Teoria dos Grafos. Edson Prestes
Edson Prestes Introdução Representação Mostre que todo passeio de u até v contém um caminho de u até v. Considere um passeio de comprimento l de u até v. Se l = 0 então temos um passeio sem nenhuma aresta.
Geometria Analítica II - Aula 4 82
Geometria Analítica II - Aula 4 8 IM-UFF K. Frensel - J. Delgado Aula 5 Esferas Iniciaremos o nosso estudo sobre superfícies com a esfera, que já nos é familiar. A esfera S de centro no ponto A e raio
Grafos: aplicações. Grafos: árvore geradora mínima
árvore geradora mínima caminhos mínimos problemas tipo 1 desejase conectar todos os computadores em um prédio usando a menor quantidade possível de cabos uma companhia aérea deseja voar para algumas cidades
Geometria Computacional
Geometria Computacional Professor: Anselmo Montenegro www.ic.uff.br/~anselmo Conteúdo: - Polígonos 1 Roteiro Introdução Polígonos Teorema da Curva de Jordan Decomposição de polígonos Triangulações Estrutura
Teoria dos Grafos. Edson Prestes
Edson Prestes As arestas possuem a função de indicar o relacionamento(espacial, comportamental, temporal) entre os elementos de um grafo. Em diversas situações esta relação não é simétrica, ou seja, par
Grafos Msc. Daniele Carvalho Oliveira. Doutoranda em Computação UFU Mestre em Computação - UFU Bacharel em Computação - UFJF 1
Grafos Msc. Daniele Carvalho Oliveira Doutoranda em Computação UFU Mestre em Computação - UFU Bacharel em Computação - UFJF 1 Árvore Geradora Mínima 2 Porque é um problema interessante Suponha que queremos
Percursos em um grafo
Percursos em um grafo Definição Um percurso ou cadeia é uma seqüência de arestas sucessivamente adjacentes, cada uma tendo uma extremidade adjacente à anterior e a outra a subsequente (à exceção da primeira
Teoria dos Grafos. Aula 5 - Estruturas de Dados para Grafos. Profª. Alessandra Martins Coelho. março/2013
Teoria dos Grafos Aula 5 - Estruturas de Dados para Grafos Profª. Alessandra Martins Coelho março/2013 Estrutura é o que caracteriza o próprio grafo e independe da forma como ele é representado. A representação
TEORIA DOS GRAFOS TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS MATEMÁTICA DISCRETA II PROFº MARCOS NASCIMENTO
TEORIA DOS GRAFOS TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS MATEMÁTICA DISCRETA II PROFº MARCOS NASCIMENTO Por que estudar grafos? Importante ferramenta matemática com aplicação em diversas áreas
PARTIÇÃO DE GRAFOS EM CIRCUITOS FECHADOS
PARTIÇÃO DE GRAFOS EM CIRCUITOS FECHADOS Gilcina Guimarães Machado Universidade do Estado do Rio de Janeiro Escola Naval gilcina @uerj.br RESUMO Uma partição do conjunto de vértices em um grafo não orientado
Oferta de Serviços. Grafo Planar. Notas. Teoria dos Grafos - BCC204, Planaridade. Notas
Teoria dos Grafos - BCC204 Planaridade Haroldo Gambini Santos Universidade Federal de Ouro Preto - UFOP 29 de maio de 2011 1 / 23 Oferta de Serviços Gás Luz Água Podemos oferecer os demais serviços para
ANÁLISE COMBINATÓRIA
Nome Nota ANÁLISE COMBINATÓRIA 1) De quantas maneiras diferentes 11 homens e 8 mulheres podem se sentar em uma fila se os homens sentam juntos e as mulheres também? 2!*11!*8! 2) O controle de qualidade
Problema de Árvore Geradora Mínima com Restrição de Grau Mínimo e Centrais Fixos 1
Problema de Árvore Geradora Mínima com Restrição de Grau Mínimo e Centrais Fixos 1 Manoel Campêlo, Rafael Castro de Andrade Departamento de Estatística e Matemática Aplicada, Universidade Federal do Ceará
Quinta-feira, 11 de abril
15.053 Quinta-feira, 11 de abril Mais alguns exemplos de programação inteira Técnicas de planos de corte para obter melhores limitações Entregar: Observações de Aula 1 Exemplo: Localização do corpo de
Cálculo Diferencial e Integral Química Notas de Aula
Cálculo Diferencial e Integral Química Notas de Aula João Roberto Gerônimo 1 1 Professor Associado do Departamento de Matemática da UEM. E-mail: jrgeronimo@uem.br. ÍNDICE 1. INTRODUÇÃO Esta notas de aula
Problema do Caminho Mais Curto. Problema do Caminho Mais Curto
Problema do Caminho Mais Curto " Podemos afectar pesos" aos arcos de um grafo, por exemplo, para representar uma distância entre cidades numa rede ferroviária: ria: Chicago 650 600 700 Toronto 200 New
Teoria dos Grafos. Edson Prestes
Edson Prestes Árvores Algoritmo de Kruskal O algoritmo de Kruskal permite determinar a spanning tree de custo mínimo. Este custo corresponde à soma dos pesos (distância, tempo, qualidade,...) associados
Otimização de horários Seminário. Clarisse Resende 25/01/2013
Otimização de horários Seminário Clarisse Resende 25/01/2013 O problema dos horários consiste numa sequência de atividades de programação, satisfazendo um conjunto de restrições de recursos. Pretende-se
Podemos representar a relação existente entre as entidades de um relacionamento 1:1 através do conjunto abaixo:
MÓDULO 10 MODELAGEM DE DADOS II Os relacionamentos devem ser enquadrados em três grandes grupos para que possam cumprir a finalidade de expressar a semântica das associações entre as entidades. As três
Árvores B. Prof. Flávio Humberto Cabral Nunes
Árvores B Prof. Flávio Humberto Cabral Nunes Conteúdo 1. Introdução 2. Busca 3. Inserção 4. Remoção 5. B* 6. B+ Capítulo: 8 (APOSTILA). Introdução Em muitas aplicações, a tabela considerada é muito grande
Grafos: algoritmos de busca
busca em grafos como caminhar no grafo de modo a percorrer todos os seus vértices evitando repetições desnecessárias do mesmo vértice? e por onde começar? solução: necessidade de recursos adicionais que
INTRODUÇÃO À TEORIA DOS CONJUNTOS1
INTRODUÇÃO À TEORIA DOS CONJUNTOS1 TÓPICO Gil da Costa Marques 1.1 Elementos da Teoria dos Conjuntos 1.2 Introdução 1.3 Conceitos Básicos 1.4 Subconjuntos e Intervalos 1.5 Conjuntos Numéricos 1.5.1 O Conjunto