Cap. 2 Conceitos Básicos em Teoria dos Grafos

Documentos relacionados
Conceitos Básicos da Teoria de Grafos

ESTRUTURAS DE DADOS. prof. Alexandre César Muniz de Oliveira. 1. Introdução 2. Pilhas 3. Filas 4. Listas 5. Árvores 6. Ordenação 7. Busca 8.

Estrutura de Dados e Algoritmos e Programação e Computadores II. Aula 10: Introdução aos Grafos

Percursos em um grafo

Definições Básicas para Grafos

Percursos em um grafo

Conceito Básicos da Teoria de Grafos

Grafos Orientados (digrafos)

Estruturas de Dados Grafos

Pesquisa Operacional II. Professor João Soares de Mello

GRAFOS. Prof. André Backes. Como representar um conjunto de objetos e as suas relações?

CAP4. ELEMENTOS DA TEORIA DE GRAFOS. Grafo [graph]. Estrutura que consiste num par ordenado de conjuntos, G ( V, E) , sendo:

Teoria dos Grafos. Profa. Alessandra Martins Coelho

Teoria dos grafos. FATEC Carapicuíba Augusto de Toledo Cruz Junior

Parte B Teoria dos Grafos

Algoritmos em Grafos COM11087-Tópicos Especiais em Programação I

GRAFOS E ALGORITMOS TEORIA DE GRAFOS

Teoria dos Grafos Aula 2

Teoria dos Grafos. Motivação

AULA 11 PROJETO E ANÁLISE DE ALGORITMOS. Conceitos básicos e representação de grafos Karina Valdivia Delgado

Grafos Parte 1. Aleardo Manacero Jr.

Alg l ori r t i m t os e E str t u r tu t ra r s d e D ados I I Intr t o r duçã ç o ã a a Gr G a r f a o f s P of o a. M. C r C ist s ina n a /

Volmir Eugênio Wilhelm Departamento de Engenharia de Produção UFPR 45

Matemática Discreta - Exercícios de Grafos

Algoritmos e Estruturas de Dados II Introdução a Grafos. Divisão do arquivo

Noções da Teoria dos Grafos. André Arbex Hallack

Noções da Teoria dos Grafos

GRAFOS Conceitos Básicos (Parte 1)

Teoria dos Grafos Caminhos. Profª. Alessandra Martins Coelho

ESTRUTURAS DISCRETAS (INF 1631) GRAFOS. 1. O que é um grafo? Defina um grafo orientado. Defina um grafo não-orientado.

MATEMÁTICA DISCRETA. Patrícia Ribeiro 2018/2019. Departamento de Matemática, ESTSetúbal 1 / 47

Introdução a Grafos Letícia Rodrigues Bueno

Matemática Discreta. Aula nº 22 Francisco Restivo

Teoria dos Grafos. Valeriano A. de Oliveira Socorro Rangel Departamento de Matemática Aplicada.

MÓDULO 3 - PROBLEMAS DE COBERTURAS DE ARCOS E NÓS

Noções da Teoria dos Grafos. André Arbex Hallack

PCC173 - Otimização em Redes

TGR BCC Representação Computacional de Grafos. Prof. Ricardo José Pfitscher

PERCURSOS. André Falcão, Carlos Augusto, Rafael Broédel e Lucas Dipré

UNIVERSIDADE FEDERAL DO RIO DE JANEIRO DEPARTAMENTO DE CIÊNCIAS DA COMPUTAÇÃO. 5 a Lista de Exercícios

x y Grafo Euleriano Figura 1

CONCEITOS BÁSICOS EM GRAFOS

GRAFOS Aula 04 Caminhos, Conexidade e Distância Max Pereira

TEORIA DOS GRAFOS TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS MATEMÁTICA DISCRETA II PROFº MARCOS NASCIMENTO

Lista de Exercícios Programação Inteira. x 2 0 e inteiros.

CES-11. Algoritmos e Estruturas de Dados. Carlos Alberto Alonso Sanches

SCC603 Algoritmos e Estruturas de Dados II Prof.a Rosane Minghim 1o sem. 2013

Comunicação e redes. Aula 2: Teoria dos Grafos Conceitos básicos. Professor: Guilherme Oliveira Mota.

01 Grafos: parte 1 SCC0503 Algoritmos e Estruturas de Dados II

Teoria dos Grafos. Valeriano A. de Oliveira, Socorro Rangel, Silvio A. de Araujo. Departamento de Matemática Aplicada

Teoria dos Grafos. Edson Prestes

Circuitos Eulerianos Ciclos Hamiltonianos O Problema do Caixeiro Viajante CAMINHAMENTOS BASEADO EM TOWNSEND (1987), CAP. 7.

Definição e Conceitos Básicos

Árvores: Conceitos Básicos e Árvore Geradora

Teoria dos Grafos. Edson Prestes

Teoria dos Grafos. Teoria dos Grafos. Profa. Sheila Morais de Almeida DAINF-UTFPR-PG. agosto

GRAFOS: UMA INTRODUÇÃO

GRAFOS ORIENTADOS. PSfrag replacements. Figura 1: Exemplo de um grafo orientado.

Teoria dos Grafos AULA 1

Oalgoritmo de Dijkstra

Grafos Planares. Grafos e Algoritmos Computacionais. Prof. Flávio Humberto Cabral Nunes

grafo nós vértices arcos arestas

Doutorado em Ciência da Computação. Algoritmos e Grafos. Raimundo Macêdo LaSiD/DCC/UFBA

Fluxo em Redes -01. Prof. Gustavo Peixoto Silva 2 modelos

TEORIA DOS GRAFOS UMA APLICAÇÃO DE LOGÍSTICA PARA O ENSINO MÉDIO. Profº M. Sc. Marcelo Mazetto Moala

Conteúdo. Histórico. Notas. Teoria dos Grafos BCC204. Notas. Notas. 1736: Euler e as Pontes de Königsberg

Matemática Discreta. Aula 06: Teoria dos Grafos. Tópico 01: Grafos e suas Representações. Observação

Teoria dos Grafos. Edson Prestes

GRAFOS Aula 03 Representações de Grafos Max Pereira

Grafos - Introdução. Pedro Ribeiro 2014/2015 DCC/FCUP. Pedro Ribeiro (DCC/FCUP) Grafos - Introdução 2014/ / 32

Teoria dos Grafos Aula 2

Teoria dos Grafos AULA 1

Teoria dos Grafos. Edson Prestes

Teoria dos Grafos Aula 1 - Introdução

Grafos: componentes fortemente conexos, árvores geradoras mínimas

Introdução à Teoria do Grafos Notas de aula. Socorro Rangel últimas atualizações: (2009), (2012)

Teoria dos Grafos. Valeriano A. de Oliveira Socorro Rangel Departamento de Matemática Aplicada.

Circuitos Hamiltorianos

CI065 CI755 Algoritmos e Teoria dos Grafos

Conteúdo. Conceitos e Resultados Gerais. 11 Combinatória. Introdução

SCC Modelagem Computacional em Grafos Profª Rosane Minghim 1º sem ª lista de exercícios

Algoritmos em Grafos - Aula 02 Introdução à Teoria dos Grafos

Transcrição:

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 objetos. Graficamente, aparece representado por uma figura com nós ou vértices, significando os objetos, unidos por um traço denominado aresta configurando a relação imaginada. Representação Matemática Um Grafo é representado matematicamente por: G=(V,E) 1 a 3 d 5 6 Onde V é o conjunto de vértices e E é o conjuntos de arestas ou ligações entre os vértices. ( V = n, E = m ) b 2 C 4 Figura 2.1 A figura acima (à direita) mostra o grafo G=(V,E). Observe que laços (self-loops) são permitidos pela definição. Múltiplas linhas não são permitidas. Neste exemplo, V={1,2,3,4,5,6} e E={{1,3},{2,3},{3,4},{3,5},{6,6}}. É comum a utilização da variável v i ou x i, i=1,2,...,n para a distinção dos nós (vértices). V = 6, E = 5. 2.2 Grafo direcionado (ou Digrafo) Um Grafo é dito direcionado ou Digrafo quando o sentido das ligações entre os vértices é considerado. Neste caso denomina-se de arco a aresta direcionada. Representação Matemática 5 Um Digrafo é representado matematicamente também por: G=(V,E) Onde V é o conjunto de vértices e E é uma relação binária em V (i.e., um conjunto de pares ordenados) das ligações. 1 b a 2 3 d C 4 6 Figura 2.2 Neste exemplo, V={1,2,3,4,5,6} e E={(3,1),(2,3),(4,4),(3,5),(6,6)}. V = 6, E = 5.

Teoria dos Grafos e Aplicações 9 2.3 Grafos valorados (Redes Networks) Uma Rede é um grafo não-direcionado (ou um digrafo) no qual um número real é associado os vértices e/ou ligações. Este número é freqüentemente referido como o peso da ligação. Essa classificação é dada de acordo com a necessidade, ou não, da indicação do fluxo entre os vértices. Na prática este número pode representar: - custos, distâncias, capacidades, e/ou suprimentos e demandas; tempo (trânsito, permanência, etc); confiabilidade de transmissão; probabilidade de ocorrer falhas; capacidade de carga; outros. Representação Matemática Um Rede é representado matematicamente também por: G=(V,E,w) Onde: V é o conjunto de vértices; E é o conjunto de ligações; e w é o peso associado aos vértices e/ou ligações.

Teoria dos Grafos e Aplicações 10 REDES / GRAFOS ESTRUTURA TOPOLÓGICA INFORMAÇÕES QUANTITATIVAS SOBRE ELEMENTOS Exemplos: Redes ferroviárias Redes de telecomunicações Redes de estradas Redes Elétricas Redes de esgotos Redes de transportes Redes de atividades scheduling de atividades em grandes projetos Nós, vértices atividades Arcos restrições de precedência X duração da atividade 0 1 7 4 10 6 5 5 8 início 0 2 2 10 8 5 7 9 8 0 3 15 2 10 3 fim Figura 2.4

Teoria dos Grafos e Aplicações 11 2.4 Grafo Parcial G=(V,E) G=(V,E ) E E Figura 2.5 2.5 - Subgrafo G =(V,E ) é subgrafo de G sss V ' V ; E' E Figura 2.6

Teoria dos Grafos e Aplicações 12 2.6 Grafo Completo w v v w v V e w E, v w ( v, w ) E ( w, v ) E Figura 2.7 2.6 Grafo Pleno Figura 2.8

Teoria dos Grafos e Aplicações 13 2.7 Grafo Bipartido a 1 a 2 a 3 b 1 b 2 X = X a X b X a X b = A X a x X b X a X b Aplicações : Probs. de Transporte (origem/destino) Probs. de Atribuição : (tarefas/pessoas) Namoro H O M E N S A B C 1 2 M U L H E R E S Figura 2.10 Procuramos um designação mais eficiente: nenhuma de duas linhas pode ser adjacente (encontrando-se num nó).

Teoria dos Grafos e Aplicações 14 PROBLEMA GERAL Problema de Designação Dado uma rede direcionada G=(X,A) Conjunto de nós X a X b (distintos) Linhas ( i, j ) somente de i X a para j X b Custos nas linhas c(a) Determine uma designação de custo mínimo de X a a X b : um conjunto de linhas (arestas) W * tendo custo total mínimo. CW ( ) = Ca ( ) a W FORMULAÇÃO DE PROGRAMAÇÃO LINEAR Seja c(a) = c ij o custo associado com a linha a = ( i, j ). Defina x i j = 1 se linha ( i, j ) está na designação W 0 caso contrário Designação Min. i, j cx ij ij s. a. x ik = 1 i x a k x kj = 1 j x b k x ij {0,1} NOTA: A última restrição pode ser substituída por 0 x ij 1, produzindo um programa linear que pode ser resolvido pelo MÉTODO SIMPLEX. Mas, não é aceitável devido a grande quantidade de soluções degeneradas produzidas. Algoritmos especializados : MÉTODO HÚNGARO, BARR.

Teoria dos Grafos e Aplicações 15 2.8 - Caminho, Percurso, Ciclo, Circuito e Comprimento Um caminho de um vértice v i0 para o vértice v ik é uma seqüência de arestas < v i0, v i1 >, < v i1, v i2 >,..., < v i,k 1, v ik >. Um caminho é dito elementar se passa exatamente uma vez por cada vértice e é simples se passa exatamente uma vez por cada aresta. Quando o grafo é não orientado o conceito de caminho é substituído por cadeia que pode ser representada pela seqüência de arestas que a forma ou dos vértices nela contidos. Alguns autores usam o termo percurso para denominar genericamente um caminho. Se os vértices inicial e final são coincidentes ( v i0 = v ik ), dizemos que o caminho é fechado e forma um ciclo que é chamado de circuito se o grafo for orientado. O comprimento de um percurso num grafo valorado é a soma dos custos de percorrer cada aresta e num grafo não valorado é igual ao número de arestas que o compõe. Na Figura 2.11 identificamos alguns destes elementos. Figura 2.11 - Grafo G com um Caminho e um Ciclo 2.9 - Ciclo Euleriano e Circuito Hamiltoniano Um Ciclo que passa por todas arestas de um grafo é dito Euleriano e um circuito elementar que passa por todos os vértices é chamado de Hamiltoniano. O problema do Caixeiro Viajante citado anteriormente consiste em analisar todos circuitos Hamiltonianos existentes para (n+1) pontos, e conforme vimos o número máximo destes caminhos é n!.

Teoria dos Grafos e Aplicações 16 2.10 - Conexidade Um Grafo G = (V, E) é conexo se para todo par de vértices existe pelo menos uma cadeia entre eles, por outro lado, se existir pelo menos um par de vértices que não é unido por nenhuma cadeia diz-se que o grafo é não-conexo, ou desconexo. Veja os exemplos da Figura 2.12. Figura 2.12 - Grafos Conexo ( G1 ) e Desconexo ( G2 ) Observe que o conceito de conexidade em grafos orientados não exige que haja um caminho ligando qualquer par de vértices, se isto acontecer diz-se que o grafo é fortemente conexo o que significa dizer que dados dois vértices v e w quaisquer, cada um pode ser atingido a partir do outro, ou seja partindo de v pode-se chegar a w ou vice-versa. A Figura 2.13 mostra um exemplo. Figura 2.13 - Grafo Dirigido Fortemente Conexo Como aplicação deste conceito podemos dizer que uma das características mais importante de uma rede de comunicação (telefonia, por exemplo) é sua conexidade.

Teoria dos Grafos e Aplicações 17 2.11 - Relação de Adjacência e de Incidência Dois vértices v V e w V de um grafo G = (V,E) são ditos adjacentes se existe a aresta (v,w), ou seja (v,w) E. Duas arestas são ditas adjacentes se possuem uma extremidade (vértice) comum. Uma aresta é incidente a um vértice se este vértice for uma de suas extremidades. Assim as arestas (u,v) e (v,w) são incidentes ao vértice v. 2.12 - Clique Clique ou grafo completo é um grafo, ou subgrafo, em que seus vértices são interligados ou adjacentes dois a dois; de forma que o caminho mais curto entre quaisquer dois vértices v e w é a aresta (v,w). A Figura 2.14 mostra um grafo com dois cliques. Figura 2.14 - Grafo com dois Cliques: {2,3,4} e {4,5,6,7} 2.13 - Grafos Planares Diz-se que um grafo é planar se for possível dispor seus vértices num plano de forma que não haja cruzamento de arestas. Pode-se então fazer uma associação entre um grafo planar e um mapa, onde cada região do mapa corresponde a um vértice e as fronteiras entre as regiões correspondem às arestas. Veja um exemplo na Figura 2.15. Figura 2.15 - Grafo Planar com 5 regiões Uma aplicação que utiliza o conceito de grafos planares é a disposição de circuitos impressos numa placa.

Teoria dos Grafos e Aplicações 18 2.14 - Árvores A definição clássica de árvore nos leva aos seguintes conceitos: Árvore é uma estrutura de dados que possui uma relação hierárquica entre seus elementos; Árvore é um conjunto finito de um ou mais nós, onde um deles é denominado raiz e os demais, recursivamente, formam uma nova árvore (ou sub-árvore). Quando num determinado nível a sub-árvore tem um único nó (sem descendentes) ele é chamado de folha. A árvore da Figura 2.16 tem as seguintes folhas : D, E, G, H e I. Figura 2.16 - Árvore de raiz A com duas sub-árvoes de raízes B e C Conforme conceitos definidos até aqui podemos dizer que uma árvore é um grafo conexo sem ciclos e que todo grafo G deste tipo que possuir n vértices tem exatamente (n 1) arestas. Outra característica que também pode ser observada é que todo par de vértices de G é unido por uma única cadeia simples. Por exemplo, a cadeia A-C-F-G da Figura 2.16 é a única que liga os vértices A e G. Convém salientar neste ponto que é desnecessário indicar as inúmeras aplicações de árvores em computação, por conseguinte, como estas são casos especiais de grafos notase quão importante é o estudo da Teoria dos Grafos, cuja bibliografia é extensa e deve ser consultada com mais profundidade, especialmente a referências [7].

Teoria dos Grafos e Aplicações 19 2.15 - Interrelacionamento entre vértices (Notação de Berge) * x j sucessor de x i (x i, x j ) A Γ + (x i ) = { x j / x j é sucessor de x i } d + (x i ) = card ( Γ + (x i )) ; d = grau * x j antecessor de x i (x j, x i ) A Γ - (x i ) = { x j / x j é antecessor de x i } d - (x i ) = card ( Γ - (x i )) ; * x j é adjacente (vizinho) a x i x i é sucessor ou antecessor de x j Γ (x i ) = { x j / x j é adjacente a x i }; Γ (x i ) = Γ + (x i ) U Γ - (x i ) Exemplo: X 2 Γ + (x 1 ) = {x 2,x 3,x 4 } X 1 X 3 Γ - (x 3 ) = {x 1,x 2,x 4 } X 4 2.16 - Fechos transitivos Fecho transitivo direto n Γ + (x i ) = {x i } U ( U Γ +k (x i ) ) k=1 onde Γ +2 = Γ + (Γ + (x i ))... Γ +n = Γ + (Γ +(n-1) (x i )) Exemplo : Seja G = ( X,A ) onde: X = { habitante da cidade} A = { (x i,x j ) / < x i conhece x j >} Γ + (x i ) pessoa é o conjunto de todas as pessoas às quais a pessoa x i pode fazer chegar alguma informação, através do contato entre pessoas conhecidas.

Teoria dos Grafos e Aplicações 20 2.17 Revisão Grafo Grafo completo Grafo conexo v u caminho de u a v Ciclo ciclo Hamiltoniano Árvore Árvore Geradora