Anda di halaman 1dari 5

UNIVERSIDADE DE CAXIAS DO SUL CAMPUS UNIVERSITRIO DA REGIO DOS VINHEDOS CENTRO DE CINCIAS EXATAS, DA NATUREZA E DE TECNOLOGIA DEPARTAMENTO DE ENGENHARIA

E INFORMTICA CURSO DE BACHARELADO EM SISTEMAS DE INFORMAO TIAGO BUCHI CAPPELLARO

TRABALHO SOBRE GRAFOS

BENTO GONALVES JULHO 2012

Grafos
A primeira evidncia do uso de grafos data de 1736, quando Euler utilizou-os para resolver um problema de caminhar atravs de pontes entre duas ilhas cortadas por um rio (veja J.L Szwarcfiter, Grafos e Algoritmos Computacionais, Ed. Campus, 1984). Desde ento, grafos tem sido utilizados em uma grande variedade de aplicaes que vo desde circuitos eltricos at cincias sociais. Grafo um tpico unificador em Cincia da computao, pela sua capacidade, atravs de uma representao abstrata, de se ajustar as mais variadas aplicaes. Uma aplicao bastante comum utilizando grafos na rea de mapas, onde pode-se avaliar a ligao dos pontos e suas possibilidades. Ex: Ruas, avenidas, bairros. Um grafo pode descrever: Sistemas de transporte; Circuitos eltricos; Interaes humanas; Redes de telecomunicao;

Um grafo G = (N,A) definido por: Um conjunto N de ns (ou vrtices); Um conjunto A de arcos (ou arestas), consistindo de pares (ordenados ou noordenados) de vrtices pertencentes a N.

Exemplo:

N = {1, 2, 3, 4, 5, 6} A = {(1,2), (2,1), (2,3), (2,4), (3,3), (4,1), (4,3), (5,6)}

Terminologia

Nodo ou Vrtice: qualquer elemento do conjunto N; Aresta ou Arco: qualquer elemento do conjunto A; Ns adjacentes (relao de adjacncia): so ns ligados por um arco: o n A adjacente ao n D; Arco incidente (relao de incidncia): um arco incidente em um n quando leva a esse n: o arco (C,D) incidente em D; Grau de um nodo: o nmero de arcos incidentes (arestas que chegam ao nodo e arestas que saem do nodo); Caminho: seqncia de um ou mais arcos: um caminho que leva o n A ao n C o caminho dado por: < (A,B), (B,D), (D,C) > Circuito (ciclo): o caminho que leva ao mesmo n do qual saiu: < (A,B), (B,D), (D,A) > Lao: um circuito de um nico arco: < (C,C) >

Subgrafo: o grafo formado por um subconjunto de ns de um grafo dado, contendo todos os arcos, cujas duas extremidades so ns desse subconjunto. Exemplo, o grafo abaixo um subgrafo do grafo original;

Ns ligados por arcos so ditos adjacentes: o n 2 adjacente a 1,3 e 4. Arcos so incidentes de (ou a) determinados ns, conforme partam (ou cheguem) a eles: (1,2) incidente de 1 (e a 2). Um caminho uma sequncia de um ou mais arcos ((a,n1), (n1,n2), . . . , (ni-1,ni), (ni,b)) que permite que, a partir de um n a, se atinja o n b. Exemplos: embora 1 e 3 no sejam conectados, pode-se, a partir de 1, atingir 3, percorrendo os arcos (1,2) e (2,3). De 4 para 3, temos o caminho (4,3) e o caminho (4,1),(1,2) e (2,3) . Observe que, no segundo exemplo, o caminho mais longo no necessariamente o pior (pense em uma rede de estradas...). Em um caminho [(a,n1), (n1,n2), . . . , (ni-1,ni), (ni,b)] quando a=b, temos um circuito ou ciclo. Ex: (1,2), (2,4), (4,1). Um circuito de um nico arco um lao. Ex: (3,3). Um grafo conexo quando possui um n a partir do qual h caminhos para todos os demais. O grafo acima no conexo. Entretanto, o subgrafo contitudo pelos ns 1,2,3,4 conexo. Um subgrafo se define como um subconjunto dos ns de um grafo juntamente com todos os arcos cujas duas extremidades so ns desse subconjunto. Um grafo dito fortemente conexo se de todos os ns pode-se atingir todos os demais. O subgrafo citado (1,2,3,4) no fortemente conexo

Em um grafo parcial, permanecem todos os ns do grafo original, mas tomado um subconjnto de seus arcos, na figura acima, em b, tem-se um grafo parcial do primeiro. Uma das propriedades do grafo parcial acima obtido que ele acclico: no contm nenhum circuito.

Operaes elementares
Insero de uma curva ou vrtice; Retirada de curvas e/ou vrtices; Rotao ou redesignao dos vrtices pela troca entre eles num dos sentidos; Fuso ou juno de dois vrtices em um; Inverso ou troca do sentido dos arcos.

Potencial de modelagem
Na modelagem de uma rede de estradas, os ns podem representar cidades (e junes de estradas), onde alguns pares so conectados por estradas. Na anlise de interaes humanas, os ns tipicamente representam pessoas, e os arcos conectam pares de pessoas relacionadas.

Dirigido x no-dirigido
Um grafo G = (N,A) no-dirigido se: arco (x, y) A implica que (y, x) tambm pertence a A.Caso contrrio, dizemos que o grafo dirigido. Um grafo dirigido (em A) e outro no dirigido (em B) A B

Valorados x no-valorados
Em grafos valorados, a cada arco (ou n) de G associado um valor numrico, ou peso. Grafos valorados requerem algoritmos mais sofisticados. Em grafos no-valorados, no h distino valorativa entre os vrios ns e arcos. Para determinar o caminho mais curto entre dois ns. Para grafos no valorados, o caminho mais curto o que tem o menor nmero de arcos.

Simples x Complexo
Certos tipos de arcos tornam mais complexa a tarefa de trabalhar com grafos. Laos (self-loop): arcos (x, x) envolvendo um nico vrtice. Um arco (x, y) um multi-arco se ele ocorre mais de uma vez em um grafo. Essas particularidades requerem cuidado especial na implementao de algoritmos. OBS: as caractersticas acima discutidas influenciam a escolha das estruturas de dados usadas para melhor represent-los.

Estruturas de dados para grafos


Seja o grafo G = (N,A) com n ns e m arcos. Matriz de adjacncia representa-se G por uma matriz M de ordem nn, onde o elemento M[i, j] V, se (i, j) um arco de G, e F caso contrrio. Obs: comum empregar-se 1 ou 0 ao invs de V ou F.

Para o grafo ao lado a matriz de adjacncia seria.

rpida resposta pergunta (i, j) pretence a G? gil atualizao quando da insero e excluso de arcos.

Referncias Bibliograficas
http://claudiaboeres.pbworks.com/f/CursoTeoriaDosGrafoAula04.pdf http://www.univasf.edu.br/~marcelo.linder/arquivos_aed2/aulas/aula18.pdf http://pt.wikipedia.org/wiki/Grafo http://www.dsc.ufcg.edu.br/~abrantes/CursosAnteriores/TG051/Representacao.pdf http://www2.dem.inpe.br/ijar/grafos2.htm