Teoria dos Grafos. Edson Prestes



Documentos relacionados
Teoria dos Grafos. Edson Prestes

Teoria dos Grafos. Edson Prestes

Teoria dos Grafos. Edson Prestes

Teoria dos Grafos. Edson Prestes

Complexidade de Algoritmos. Edson Prestes

Teoria dos Grafos. Edson Prestes

Complexidade de Algoritmos. Edson Prestes

PESQUISA OPERACIONAL TEORIA DOS GRAFOS

RELAÇÕES BINÁRIAS Produto Cartesiano A X B

26/08/2013. Árvore. Árvore. Árvore. Floresta :: Exemplo. Floresta ÁRVORES

CAPÍTULO 2. Grafos e Redes

Teoria dos Grafos. Aulas 3 e 4. Profa. Alessandra Martins Coelho

BCC204 - Teoria dos Grafos

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS

6.3 Equivalência entre Autômatos com Pilha Não-Determinísticos e Gramáticas Livre do Contexto

O Problema do Troco Principio da Casa dos Pombos. > Princípios de Contagem e Enumeração Computacional 0/48

Oficina Ensinando Geometria com Auxílio do Software GEOGEBRA. Professor Responsável: Ivan José Coser Tutora: Rafaela Seabra Cardoso Leal

Conceitos e fórmulas

IFSP - EAD - GEOMETRIA TRIÂNGULO RETÂNGULO CONCEITUAÇÃO :

Prof. Bruno Holanda - Semana Oĺımpica Nível 1. Teoria dos Grafos

Material Teórico - Módulo de Métodos sofisticados de contagem. Princípio das Casas dos Pombos. Segundo Ano do Ensino Médio

Matemática Essencial: Alegria Financeira Fundamental Médio Geometria Trigonometria Superior Cálculos

Figura 1 Busca Linear

EAD Árvore árvore binária

Árvores. Algoritmos e Estruturas de Dados 2005/2006

36ª Olimpíada Brasileira de Matemática GABARITO Segunda Fase

EXAME NACIONAL DE QUALIFICAÇÃO GABARITO. Questão 1.

4.2 Produto Vetorial. Orientação sobre uma reta r

Árvores Binárias de Busca

Dadas a base e a altura de um triangulo, determinar sua área.

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO PROGRAMA DE EDUCAÇÃO TUTORIAL - MATEMÁTICA PROJETO FUNDAMENTOS DE MATEMÁTICA ELEMENTAR

Pesquisa Operacional Programação em Redes

Árvores Binárias e Busca. Jeane Melo

Universidade Estadual de Santa Cruz. Departamento de Ciências Exatas e Tecnológicas. Especialização em Matemática. Disciplina: Estruturas Algébricas

Departamento de Matemática - UEL Ulysses Sodré. Arquivo: minimaxi.tex - Londrina-PR, 29 de Junho de 2010.

O B. Podemos decompor a pirâmide ABCDE em quatro tetraedros congruentes ao tetraedro BCEO. ABCDE tem volume igual a V = a2.oe

Notas de Cálculo Numérico

Algoritmos e Estrutura de Dados III. Árvores

Exercícios Teóricos Resolvidos

a 1 x a n x n = b,

CONCEITOS BÁSICOS EM GRAFOS

N1Q1 Solução. a) Há várias formas de se cobrir o tabuleiro usando somente peças do tipo A; a figura mostra duas delas.

Controle do Arquivo Técnico

QUADRADO MÁGICO - ORDEM 4

Algumas Aplicações da Teoria dos Grafos

GEADA. Gerador de Expressões Algébricas em Digrafos Acíclicos. para versão 1.0, de agosto/2008. Autor: Márcio Katsumi Oikawa

PROGRAMAÇÃO II 4. ÁRVORE

Roteamentos AULA ... META. Introduzir alguns problemas de roteamento. OBJETIVOS. Ao final da aula o aluno deverá ser capaz de:

Grafos: árvores geradoras mínimas. Graça Nunes

Árvore Binária de Busca

RESOLUÇÃO Matemática APLICADA FGV Administração

Material Teórico - Módulo de Divisibilidade. MDC e MMC - Parte 1. Sexto Ano. Prof. Angelo Papa Neto

FACULDADE CAMPO LIMPO PAULISTA MESTRADO EM CIÊNCIA DA COMPUTAÇÃO. Projeto e Análise de Algoritmos II Lista de Exercícios 2

Aula 02 Excel Operações Básicas

O ESPAÇO NULO DE A: RESOLVENDO AX = 0 3.2

Grafos Msc. Daniele Carvalho Oliveira. Doutoranda em Computação UFU Mestre em Computação - UFU Bacharel em Computação - UFJF 1

Online Survivable Network Design

Busca. Pesquisa sequencial

Teoria dos Grafos. Edson Prestes

Respostas dos Exercícios Cap. 2 Russell & Norvig

ESCALAS. Escala numérica objeto. é a razão entre a dimensão gráfica e a dimensão real de um determinado. d/d = 1/Q

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

Trabalho Computacional

a soma dois números anteriores da primeira coluna está na segunda coluna: (3m +1) + (3n +1) = 3(m + n) + 2.

INE Fundamentos de Matemática Discreta para a Computação

QUESTÃO 1 ALTERNATIVA B

Aula 21: Roteamento em Redes de Dados

Análise e Complexidade de Algoritmos

Sistemas Numéricos e a Representação Interna dos Dados no Computador

PROBLEMA DO CARTEIRO CHINÊS

UFSM Prof. Ghendy Cardoso Junior

CT-234. Análise de Algoritmos e Complexidade Estrutural. Carlos Alberto Alonso Sanches

&XUVRGH,QWURGXomRDR (GLWRUGH3ODQLOKDV([FHO

Teoria dos Grafos. Edson Prestes

Exercício 8 Busca de Músicas

Capítulo 7. Topologia Digital. 7.1 Conexidade

Podemos até dizer que a hipótese é bem convincente, isto é...

Potenciação no Conjunto dos Números Inteiros - Z

Árvores: Conceitos Básicos e Árvore Geradora

Teoria dos Grafos Aula 27

Lista n 0 1 de Exercícios de Teoria da Computação

Aula 4 Estatística Conceitos básicos

AULA 6 - Operações Espaciais

Nesta aula iremos continuar com os exemplos de revisão.

Universidade Federal de Goiás Instituto de Informática Processamento Digital de Imagens

Dicas para a 6 a Lista de Álgebra 1 (Conteúdo: Homomorfismos de Grupos e Teorema do Isomorfismo para grupos) Professor: Igor Lima.

Resolução de sistemas lineares

Lema do Bombeamento Linguagens Livres de Contexto

Árvores de Suporte de Custo Mínimo

Display de 7. PdP. Autor: Tiago Lone Nível: Básico Criação: 16/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos

Matemática - UEL Compilada em 18 de Março de Prof. Ulysses Sodré Matemática Essencial:

BC-0506: Comunicação e Redes Algoritmos em Grafos

INTRODUÇÃO À MATEMÁTICA FINANCEIRA

Álgebra Booleana. Introdução ao Computador 2010/01 Renan Manola

9xy yx9 = (9 100+x 10+y) (y 100+x 10+9) = (8 y) (y+1)

A Otimização Colônia de Formigas

Transcrição:

Edson Prestes

Grafos Cliques Maximais Para determinar os cliques maximais de um grafo G podemos usar o método de Maghout em Dado o grafo abaixo, calcule Determine os conjuntos independentes maximais em

Grafos Cliques Maximais Para o grafo abaixo temos Os conjuntos independentes de são {b,d,e,f}; {c,e,f}, {a,b}, {a,c}

Grafos Cliques Maximais Dado o dígrafo abaixo, calcule os seus cliques maximais D D

Grafos Cliques Maximais Para o dígrafo abaixo temos Os cliques maximais são {a,b,d}, {a, c}, {e}

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 adjacência modificada, chamada matriz latina. Matriz de Adjacência Matriz Latina Note que a Matriz Latina contém todos os passeios de comprimento 1

Grafos Enumeração de Passeios/Caminhos Vimos que a quantidade de caminhos de comprimento 2 era obtida através de M 2 =M.M, onde M é a matriz de adjacência de G. Aqui calcularemos L 2 através de L.L', onde L é a matriz latina e L' é uma matriz latina modificada construida da seguinte maneira. Matriz Latina L Remoção 1o. elemento de cada entrada Matriz L

Grafos Enumeração de Passeios/Caminhos Cada elemento (i,j) de L 2 é igual a onde n=v(g) e a operação seguintes regras: é uma operação binária não comutativa que obedece as Se L(i,j)=p e L'(j,m)=p' são dois subcaminhos, então L(i,j) L'(j,m)=pp'. Se L(i,j) ou L'(j,m) forem iguais ao conjunto vazio, então L(i,j) L'(j,m)=

Grafos Enumeração de Passeios/Caminhos Se quisermos enumerar todos os caminhos de comprimento 3 em um grafo G basta calcularmos Generalizando, os caminhos de comprimento n são determinados por

Grafos Enumeração de Passeios/Caminhos Enumere os caminhos de comprimento 2 e 3 do dígrafo abaixo Matriz de Latina L Matriz L Matriz Latina L 2 Matriz Latina L 3 Se o preenchimento de L' fosse igual ao de L, teriamos algumas distorções. Por exemplo, se L(i,j)=ab e L'(j,m)=bc, teriamos L(i,j) L (j,m)=abbc, o que na verdade corresponde ao caminho abc.

Grafos Enumeração de Passeios/Caminhos Para determinar todos os passeios/caminhos que não passam por um vértice v, basta gerar as matrizes latinas L e L', sem considerar a linha e a coluna associadas ao vértice v. Quais são os caminhos de comprimento 3 que não possuem o vértice d? Matriz de Latina L Matriz L

Grafos Enumeração de Passeios/Caminhos Matriz de Latina L Matriz de Latina L Matriz de Latina L 2 Matriz de Latina L 3

Grafos Enumeração de Passeios/Caminhos Para determinar todos os passeios/caminhos que não passam por um determinado arco/ aresta (x,y), basta gerar as matrizes latinas L e L deixando vazia a entrada (x,y). Por exemplo, se quisermos calcular os caminhos de comprimento 3 que não passam pelo arco (b,c) devemos usar as seguintes matrizes Matriz de Latina L Matriz L Matriz de Latina Original

Árvores Uma árvore é um grafo conexo aciclico, ou seja, um grafo conexo sem ciclos. Uma folha é um vértice de grau 1. Uma floresta é um grafo que não contém ciclos. Uma árvore é uma floresta conexa. Todo componente de uma floresta é uma árvore.

Árvores Teorema: Para um grafo G=(V,A) de n-vértices (n>0), as seguintes afirmações são verdadeiras (e caracterizam uma árvore com n vértices). a) G é conexo e não possui ciclos b) G é conexo e tem n-1 arestas c) G tem n-1 arestas e nenhum ciclo d) Para dois vértices u,v tem exatamente um caminho entre u e v.

Árvores Cada aresta de uma árvore é uma aresta de corte. A adição de uma aresta em uma árvore forma exatamente um ciclo. Cada grafo conexo que é árvore contém exatamente uma spanning tree. Uma spanning tree de um Grafo é um subgrafo que é árvore e que contém todos os nós de G. Uma spanning forest é obtida quando o grafo não é conexo. Ela consiste em uma floresta de spanning tree. Grafo G Spanning Tree de G

Árvores O diâmetro de uma árvore é calculado de forma similar ao de um grafo que não é árvore. Ele corresponde a maior distância entre qualquer par de vértices, ou seja, A excentricidade de um vértice u é a maior distância entre u e qualquer vértice de G, ou seja, O raio de um Grafo G é denotado por

Árvores O centro de um grafo G é o subgrafo induzido pelos vértices de excentricidade mínima. O centro de uma árvore é um vértice ou uma aresta. Encontre a excentricidade de cada vértice, o raio e o centro do grafo abaixo. Raio(G) =

Árvores Sabemos que com um ou dois vértices apenas uma árvore pode ser formada. Entretanto com três vértices podemos formar três árvores. Com quatro vértices temos quatro estrelas e doze caminhos (eliminando os automorfismos) totalizando 16 árvores. Se tivermos cinco vértices temos 125 árvores. Cayley demonstrou que para um conjunto de n vértices distintos existem n n-2 árvores associadas. Cada uma das árvores pode ser codificada por uma lista de comprimento n-2, chamada Código Prüfer. Esta lista permite-nos determinar de forma unívoca a árvore em questão.

Árvores Código Prüfer Este algoritmo recebe como entrada uma árvore T com um conjunto S de n vértices. A cada passo, o algoritmo remove a folha b i com menor rótulo e armazena o seu vizinho, a i. Isto é feito até restar apenas uma única aresta. Ao final do processo, teremos uma (n-2)-upla com os nós não folhas de T. A partir desta tupla e do conjunto S é possível recuperar a árvore T. Calcule o código Prüfer da árvore abaixo

Árvores Código Prüfer A cada passo, o algoritmo remove a folha b i com menor rótulo e armazena o seu vizinho, a i O código Prüfer da árvore acima é (7,4,4,1,7,1)

Árvores A recuperação da árvore a partir do código prüfer é como segue. Inicialmente são criadas uma seqüência e um conjunto de vértices: a seqüência S que representa o código Prüfer e o conjunto V dos vértices que não aparecem no código Prüfer. Em seguida contruimos uma floresta com todos os vértices da árvore em questão. A cada passo, pegamos o primeiro elemento, a 1, de S e o menor elemento m de V e criamos a aresta (a 1,m). Removemos tanto a 1 quanto m de seus locais de origem. Se após este processo a 1 não aparecer mais em S, então o incluimos em V. O processo é repetido até que S seja o conjunto vazio. Quando S for o conjunto vazio unimos os dois vértices que sobraram em V. Recupere a árvore associada ao código Prüfer (7,4,4,1,7,1)

Árvores

Árvores Código Prüfer Dado um conjunto de inteiros positivos d 1,d 2,...,d n totalizando 2n-2 (2n-2, deve-se ao fato de que uma árvore com n vértices possui exatamente n-1 arestas.logo, a soma dos graus de cada vértice é igual a 2(n-1)) então existem (n 2)! n i=1 (d i 1)! árvores com um conjunto de n vértices tal que o grau do vértice i é d i Prova: Observe que cada vértice não folha x é registrado exatamente d x -1 vezes no código prüfer, pois ele tem d x vértices vizinhos e após a remoção de seus d x -1 vizinhos "folha", ele será folha de seu último vizinho. Logo ele aparecerá d x -1 vezes. O código prüfer possui n-2 elementos e pode ter (n-2)! permutações, entretanto devido a repetição de alguns vértices, teremos várias permutações iguais. Para cada vértice x que aparece no código, teremos (d x -1)! permutações iguais. Logo a retirada destes elementos iguais é dada por (n 2)! n i=1 (d i 1)!

Árvores Código Prüfer Considere o seguinte conjunto de vértices S={1,2,3,4,5,6,7} e os graus em ordem de cada elemento de S {3,1,2,1,3,1,1}. Quantas árvores podemos gerar a partir deste conjunto? Considerando que temos como vértices não folha os vértices {1,3,5} teremos Árvores. Alguns exemplos podem ser vistos abaixo

Árvores Spanning Tree Teorema: O número de árvores enraizadas com vértices não distintos é definido pela seguinte função geradora Onde T r é o número de árvores enraizadas com r vértices Teorema: O número de árvores não enraizadas com vértices não distintos é definido por Trabalho : calcular a quantidade de árvores enraizadas e não enraizadas com vértices não distintos usando 2,3,4,5 e 6 vértices

Árvores Spanning Tree Teorema: Dado um grafo G simples com um conjunto de vértices V={v 1, v 2,...,v n } faça a i,j ser o número de arestas entre os vértices v i e v j. Construa uma matriz Q quadrada de ordem n de forma que a entrada Q(i,j) seja igual a -a i,j se e igual a d(v i ) se i=j. Se Q* é a matriz obtida removendo a linha s e coluna t de Q, então o número de spanning trees de G é igual a (-1) s+t Q* Determine o número de spanning trees do grafo abaixo

Árvores Spanning Tree Removendo linha e coluna c Grau dos vértices Quantidade de arestas

Árvores Spanning Tree Liste as 8 spanning trees do grafo.