1 7 Teoria dos grafos Caminho euleriano e Hamiltoniano
Grafo Euleriano Grafo onde é possível achar um caminho fechado (ciclo), passando em cada aresta uma única vez Quais são os grafos de Euler? Teorema: um grafo conexo G é um grafo de Euler se e somente se todos os seus vértices têm grau par.
Caminho Euleriano Caminho Euleriano É um caminho simples que contém todas as aresta do grafo (não passa duas vezes na mesma aresta) Ciclo Euleriano É um caminho fechado (e simples) que contém todas as arestas do grafo
Grafo Semi-Euleriano Grafo Euleriano Possui um ciclo Euleriano Grafo não dirigido : todos os vértices tem grau par Um grafo dirigido: se todos os vértices tiverem grau de entrada igual ao seu grau de saída. Grafo Semi-Euleriano Possui um caminho Euleriano Tem dois vértices de grau ímpar
Algoritmo de Fleury Algoritmo para encontrar um ciclo Euleriano Inicie em qualquer vértice v e atravesse as arestas de maneira arbitrária, seguindo as regras: Apague a aresta que foi visitada e, se algum vértice ficar isolado, apague-o também Em cada estágio, nunca atravesse uma aresta se naquele momento a sua remoção divide o grafo em duas ou mais componentes (excluindo os vértices isolados) a b c g d e f
Caminho e Ciclo Hamiltoniano Ciclo Hamiltoniano É um caminho simples e fechado em que cada vértice é visitado uma única vez (com exceção do vértice final=inicial) Um ciclo Hamiltoniano em um grafo de n vértices tem n arestas Caminho Hamiltoniano É um caminho simples em que cada vértice é visitado uma única vez v2 c2 v3 c3 v4 c1 c6 c4 É um grafo Euleriano? Possui um ciclo Hamiltoniano? v1 c5 v5
Colorindo um Mapa 7 Mapa de regiões (estados) Colorir o mapa regiões vizinhas (com fronteira) não podem ter mesma cor Problema 1: Como colorir um mapa de forma atendendo a restrição Problema 2: Qual é o menor número de cores necessário?
Colorindo um Mapa 8 Abstração via grafos Vértices: regiões (estados) Arestas: duas regiões são vizinhas
Coloração em Grafos 9 Coloração de vértices Dado grafo G = (V, E) Restrição: vértices vizinhos não possuem mesma cor k-coloração: coloração que utiliza exatamente k cores grafo é k-colorível Número cromático: menor número de cores necessário colorir o grafo
Coloração em Grafos 10 Uma coloração qualquer? Número cromático? Coloração qualquer é fácil, número cromático é difícil
Colorindo vértices 11 Grafo G crom(g) = 4
Colorindo vértices 12 Podemos assumir que todos os grafos, para fins de coloração, são simples e conectados, já que arestas múltiplas e vértices isolados são irrelevantes para coloração de vértices.
Colorindo vértices 13 Está claro que crom(k n ) = n, então existem grafos com número cromático arbitrariamente grande. K 4 crom(k 4 ) = 4 K 6 crom(k 6 ) = 6
Colorindo vértices 14 No outro final da escala, crom(g) = 1 se e somente se G é um grafo nulo. E crom(g) = 2 se e somente se G é um grafo bipartido não nulo. N 4 crom(n 4 ) = 1 K 3,3 crom(k 3,3 ) = 2
Algoritmo de Coloração de Grafos 15 Liste os nós em ordem decrescente de grau Associe a cor 1 ao primeiro nó da lista e ao próximo nó da lista não adjacente a ele, e sucessivamente para cada nó da lista não adjacente a um nó com a cor 1. Associe a cor 2 ao próximo nó da lista ainda sem cor. Sucessivamente associe a cor 2 para o próximo nó da lista não adjacente aos nós com cor 2 e que ainda não está colorido. Continue com esse processo até que todos os nós sejam coloridos
Algoritmo de Coloração de Grafos 16 a b c d e f g h i j
Algoritmo de Coloração de Grafos 17 a b c d e f g h i j Ordem: e(6),a(4),b(4),c(4),f(4),h(4),i(4),d(2),g(2),j(2)
Algoritmo de Coloração de Grafos 18 Tomando a sequência: 4, 3, 2, 5, 6, 1 1 2 1 2 6 3 6 3 5 4 5 4
Problema de exames 19 A tabela a seguir mostra a alocação de um grupo de 16 alunos aos exames de recuperação que eles devem prestar em um colégio. Duas disciplinas só podem ter exames realizados simultaneamente se não envolverem alunos em comum. Pergunta: Qual é a quantidade mínima de horários diferentes que precisam ser reservados para a realização dos exames?
Problema de exames 20 Vamos construir um grafo com os vértices {M, P, I, G, H, F, Q, B}; Dois vértices estarão ligados se tiverem um aluno em comum. M P B Q I G F H