SlideShare uma empresa Scribd logo
Coloraçãode grafos e suas aplicações
Cedemir Pereira
Mestrado de Computação Aplicada
UPF
Sumário
1) Introduçãoàcoloraçãode grafos
2) História
3) Aplicações
4) Algumas ideias e tentativas de solução
O que é um grafo?
Estrutura matemática abstrata.
Formada por dois conjuntos:
conjunto de vértices (pontos);
conjunto de arestas (arcos).
O que é um grafo?
Estrutura matematica abstrata.
Formada por dois conjuntos:
conjunto de vértices (pontos);
conjunto de arestas (arcos).
Pode ser usado para modelar situações do mundo real:
vértices representam pessoas, máquinas, etc.
arestas representam existência de ligação entre nós, distância
entre os nós, etc.
3 / 49
Coloração de grafos
Um problema de coloração em grafos consiste em atribuir cores a
certos elementos do grafo sujeito a determinadas condições
4 / 49
Coloração de grafos
Um problema de coloração em grafos consiste em atribuir cores a
certos elementos do grafo sujeito a determinadas condições.
Exemplo: coloração própria de vértices.
v1
v2 v3
v4
v5
4 / 49
Origem da coloração de grafos
Origem da coloração de grafos
Francis Guthrie (1852): Qualquer mapa político pode ser colorido
com no máximo quatro cores?
Francis Guthrie
Mapas e Grafos
Um mapa no plano pode ser representado por um grafo chamado de
grafo dual.
Teorema das Quatro Cores
Teorema das Quatro Cores [Appel e Haken, 1977]
Todo grafo planar possui uma coloração de vértices com no máximo
quatro cores.
Aplicações da coloração de vértices
Separaçãoo de produtos explosivos
Os vértices representam produtos quíımicos necessários em algum
processo de produção
Existe uma aresta ligando cada par de produtos que podem
explodir, se combinados.
O número cromático representa o número mı́nimo de
compartimentos para guardar estes produtos químicos em segurança.
Atribuição de frequências de rádio
Os vértices representam os transmissores das estaçõesde rádio.
Duas estações são adjacentes quando suas áreas de transmissão se
sobrepõem,o que resultaria em interferência se elas usassem a mesma
frequência.
Cada cor contém estaçõesque podem receber a mesma frequência.
Sudoku
6 1 4 5
8 3 5 6
1
8 4 7 6
6 3
7 9 1 4
5 2
7 2 6 9
4 5 8 7
9 6 3 1 7 4 2 5 8
1 7 8 3 2 5 6 4 9
2 5 4 6 8 9 7 3 1
8 2 1 4 3 7 5 9 6
4 9 6 8 5 2 3 1 7
7 3 5 9 6 1 8 2 4
5 8 9 7 1 3 4 6 2
3 1 7 2 4 6 9 8 5
6 4 2 5 9 8 1 7 3
O sudoku é uma variação da coloração de vértices.
At´ılio Gomes Luiz Colora¸cão de grafos e suas aplicac¸ões 17 / 49
Sudoku
6 1 4 5
8 3 5 6
1
8 4 7 6
6 3
7 9 1 4
5 2
7 2 6 9
4 5 8 7
9 6 3 1 7 4 2 5 8
1 7 8 3 2 5 6 4 9
2 5 4 6 8 9 7 3 1
8 2 1 4 3 7 5 9 6
4 9 6 8 5 2 3 1 7
7 3 5 9 6 1 8 2 4
5 8 9 7 1 3 4 6 2
3 1 7 2 4 6 9 8 5
6 4 2 5 9 8 1 7 3
O sudoku é uma variação da coloração de vértices.
Cada célula representa um vértice e existe uma aresta entre dois
vértices se eles estão em uma mesma linha, mesma coluna ou no
mesmo bloco.
At´ılio Gomes Luiz Colora¸cão de grafos e suas aplicac¸ões 17 / 49
Semáforos
Existem oito pistas de tráfego no cruzamento de duas ruas. Um
semáforoestá localizado na intersecção.Durante cada fase do semáforo,
somente os carros em pistas para as quais a luz está verde podem
prosseguir com segurança. Qual é o númeromínimode fases necessárias
de modo que, eventualmente, todos os carros possam prosseguir
através do cruzamento?
Semaforos
Existem oito pistas de tráfego no cruzamento de duas ruas. Um
semáforoestálocalizado na intersecção.Durante cada fase do semáforo,
somente os carros em pistas para as quais a luz estáverde podem
prosseguir com segurança. Qual é o númeromiınimode fases necessarias
de modo que, eventualmente, todos os carros possam prosseguir
através do cruzamento?
L1
L6 L4
L5
L2
L3
L7
L8
Semaforos
Existem oito pistas de tráfego no cruzamento de duas ruas. Um
semaforoesta localizado na intersecção. Durante cada fase do semáforo,
somente os carros em pistas para as quais a luz está verde podem
prosseguir com segurança. Qual é o númeromínimode fases necessárias
de modo que, eventualmente, todos os carros possam prosseguir
através do cruzamento?
L1
L6 L4
L5
L2
L3
L7
L8
O problema de coloração mínima
Definições
Não consideramos grafos com loops.
Não consideramos grafos com arestas múltiplas.
Considerados apenas grafos simples.
loop
arestas múltiplas
Definições
Dado um grafo simples G e v um vértice de G:
grau(v): o número de arestas incidentes em v.
grau(v1) = grau(v4) = 1
grau(v2) = grau(v3) = 3
grau(v5) = 2
v1 v2 v3 v4
v5
Definições
Dado um grafo simples G e v um vértice de G:
grau(v): o número de arestas incidentes em v.
grau(v1) = grau(v4) = 1
grau(v2) = grau(v3) = 3
grau(v5) = 2
v1 v2 v3 v4
v5
∆(G ) (Grau maximo de G ): é o maior grau dentre todos os graus
dos vértices de G.
Definicoes
Dado um grafo simples G e v um v´ertice de G:
grau(v): o número de arestas incidentes em v.
grau(v1) = grau(v4) = 1
grau(v2) = grau(v3) = 3
grau(v5) = 2
v1 v2 v3 v4
v5
∆(G ) (Grau maximo de G ): é o maior dentre todos os graus dos
vértices de G.
Dois vértices que possuem uma aresta em comum sãoditos
adjacentes.
Definições
α(G) = 2
Conjunto independente: subconjunto de verticesde G que não
possuem arestas em comum.
Definicoes
α(G) = 2
Conjunto independente: subconjunto de vérticesde G que não
possuem arestas em comum.
α(G): tamanho do maior conjunto independente de G.
Definicoes
Grafo bipartido: seus vertices podem ser particionados em dois
conjuntos independentes.
Definicoes
Grafo bipartido: seus vertices podem ser particionados em dois
conjuntos independentes.
Kn (Grafo completo com n vertices): quaisquer dois vertices sao
ligados por uma aresta.
Número cromático de um grafo
Numero cromatico de um grafo G: o menor inteiro positivo k tal
que G possui uma k-coloracaopropria de vertices.
Esse número é representado por χ(G).
G1 G2
χ(G1) = 1
χ(G2) = 2
Grafo bipartido
Número cromático de um grafo
1
1
2
2
3
v1
v2 v3
v4
v5
Grafo H
χ(H) ≤ 3
.
Número cromático de um grafo
1
1
2
2
3
v1
v2 v3
v4
v5
Grafo H
χ(H) ≤3.
É possı
́ vel colorir H com menos que três cores?
Número cromático de um grafo
1
1
2
2
3
v1
v2 v3
v4
v5
Grafo H
χ(H) ≤3.
É possı
́ vel colorir H com menos que três cores?
Como H contemum triangulo,temos que χ(H) ≥3.
Logo, χ(H) = 3.
Grafos bipartidos
Teorema
Um grafo G é bipartido se e somente se ele nao contem ciclo ımpar.
1
1
1 2
2
2
2
2
3
3
3
3
v1
v1
v2
v2
v3
v3 v4
v4
v5
v5
v6
v7
χ(G) = 3 χ(G) = 3
Grafos bipartidos
Como checar se um grafo é
bipartido?
a1
a2
a3
b1
b2
b3
A B
27 / 49
Algoritmo para checar se χ(G) = 2
Algorithm 1 Algoritmo para checar se G eh bipartido
Entrada: Vertice G. Vertice inicial
Comece com o vertice inicial v e pinte-o de AZUL.
2: Pinte todos os vizinhos de v de VERMELHO.
3: Continue a coloracao pintando os vizinhos dos vertices j
a coloridos,
usando ou o AZUL ou o VERMELHO. Ao atribuir cores, se
encontrarmos um vizinho colorido com a mesma cor do vertice
atual, entao o grafo naopode ser colorido com duas cores.
Ilustração do algoritmo
Ilustração do algoritmo
1
Ilustração do algoritmo
1
2
4
3
Ilustração do algoritmo
1
4
3
5
6
2
7
Ilustração do algoritmo
1
9
2
4
3
5
6
7
8
10
Ilustração do algoritmo
1
9
2
3
4
5
6
7
8
10
11
12
Ilustração do algoritmo
1
9
2
3
4
5
6
7
8
10
11
12
13
14
15
Ilustração do algoritmo
1
9
2
3
4
5
6
7
8
10
11
12
13
14
15
16
Limitantes inferiores para χ(G)
Mahnoticia: Ate hoje, nao se conhece nenhum bom algoritmo
para checar se um grafo G possui χ(G) = k, para k ≥3.
Limitantes inferiores para χ(G)
Mah noticia: Ate hoje, nao se conhece nenhum bom algoritmo
para checar se um grafo G possui χ(G) = k, para k ≥3.
Dado um grafo G , gostariamosde determinar limitantes inferiores e
superiores para χ(G).
Limitantes inferiores para χ(G)
a2
a3
a4
Mahnoticia: Atehoje, naoseconhece nenhum bom algoritmo
para checar se um grafo G possui χ(G) = k, para k ≥3.
Dado um grafo G , gostariamosde determinar limitantes inferiores e
superiores para χ(G).
a1
a5
a6
a7
χ(G) ≤ 4
Limitantes inferiores para χ(G)
a2
a3
a4
Mah noticia: Atehoje, nao conhece nenhum bom algoritmo
para checar se um grafo G possui χ(G) = k, para k ≥3.
Dado um grafo G , gostariamosde determinar limitantes inferiores e
superiores para χ(G).
a1
a5
a6
a7
χ(G) ≤4
Limitante 1: Para todo grafo G, χ(G) ≥ω(G).
Limitantes inferiores para χ(G)
Manoticia: Existe um grafo G sem triangulos e com numero cromatico
χ(G) = k, para todo k ≥1. [Mycielski, 1955]
χ(G) = 1 χ(G) = 2 χ(G) = 3 χ(G) = 4
31 / 49
Limitantes inferiores para χ(G)
Limitante 2
α(G)
Se G é um grafo com n vértices, então χ(G ) ≥ n .
χ(G) = 3 χ(G) = 4
. . . e os algoritmos para colorir?
Complexidade da Coloracao de Vertices
(Garey e Johnson, 1974): O problema de achar o numero
cromático de um grafo é NP-difı́cil.
Algoritmo de força bruta
Seja G um grafo simples com n v´ertices.
kn
v1 v2 v3 v4 v5 vn
k k k k k k =
Algoritmo de força bruta
Seja G um grafo simples com n v´ertices.
v1 v2 v3 v4 v5 vn
k k k k k k = kn
O algoritmo de forcabruta busca por uma k-coloracaode G
considerando cada uma das kn atribuicoespossiveis e checa se cada
uma delas é correta.
Algoritmo de força bruta
Seja G um grafo simples com n v´ertices.
v1 v2 v3 v4 v5 vn
k k k k k k = kn
O algoritmo de forcabruta busca por uma k-coloracaode G
considerando cada uma das kn atribuicoes possiveis e checa se cada
uma delas é correta.
Para calcular χ(G ), este procedimento é testado
k = 1, . . ., n −1.
=⇒ Computacionalmente inviavel para grandes instancias.
Algoritmo guloso
Algoritmo guloso é aquele que sempre realiza a escolha que
parece ser a melhor no momento, fazendo uma escolha otima local,
na esperanca de que esta escolha leve atéa solução otima global.
– Ele nunca volta atras.
Algoritmo guloso
Algoritmo guloso é aquele que sempre realiza a escolha que
parece ser a melhor no momento, fazendo uma escolha otima local,
na esperanca de que esta escolha leve até a solução otima global.
– Ele nunca volta atras.
“Como na vida real, algoritmos gulosos, algumas vezes podem levar a
melhor solucao, outras vezes podem levar a solucoes muito boas, e outras
vezes levara solucoesruins. O truque é determinar quando ser
ganancioso”— Ian Parberry, Problems on Algorithms.
Algoritmo guloso
Algorithm 2 Algoritmo Guloso para coloracaode vertices
Input: Vert
iices de G listados em ordem v1,v2, ... ,vn.
Conjunto de cores disponı́veis C = {1,2,... ,n}.
Output: Uma coloracao propria dos vertices de G.
37 / 49
Algoritmo guloso
v1
v2 v3
v5
v6 v7
v4 v8
C = {1, 2, . . ., 8}
Algoritmo guloso
1
v1
v2 v3
v5
v6 v7
v4 v8
C = {1, 2, . . ., 8}
Algoritmo guloso
1
2
v1
v2 v3
v5
v6 v7
v4 v8
C = {1, 2, . . ., 8}
Algoritmo guloso
1
1
2
v1
v2 v3
v5
v6 v7
v4 v8
C = {1, 2, . . ., 8}
Algoritmo guloso
1
1
2
3
v1
v2 v3
v5
v6 v7
v4 v8
C = {1, 2, . . ., 8}
Algoritmo guloso
1
1 2
2
3
v1
v2 v3
v5
v6 v7
v4 v8
C = {1, 2, . . ., 8}
Algoritmo guloso
1
1 2
2
3
4
v1
v2 v3
v5
v6 v7
v4 v8
C = {1, 2, . . ., 8}
Algoritmo guloso
1
1 2
2 3
3
4
v1
v2 v3
v5
v6 v7
v4 v8
C = {1, 2, . . ., 8}
Algoritmo guloso
1
1 2
2 3
3
4
5
v1
v2 v3
v5
v6 v7
v4 v8
C = {1, 2, . . ., 8}
Algoritmo guloso
1
1 2
2 3
3
4
5
v1
v2 v3
v5
v6 v7
v4 v8
C = {1, 2, . . ., 8}
Temos que χ(G) = 2, mas o algoritmo guloso de coloracao usou 5 cores.
Algoritmo guloso – Limitante superior
Teorema
Para todo grafo G, χ(G) ≤∆ (G) + 1.
Demonstracao:
Algoritmo guloso – Limitante superior
Teorema
Para todo grafo G, χ(G) ≤∆ (G) + 1.
Demonstracao:
Suponha que os vertices de G sejam listados na ordem v1,v2, . . . , vn
e que o algoritmo guloso é aplicado.
Algoritmo guloso – Limitante superior
Teorema
Para todo grafo G, χ(G) ≤∆ (G) + 1.
Demonstracao:
Suponha que os vértices de G sejam listados na ordem v1,v2, . . . , vn
e que o algoritmo guloso é aplicado.
1 2 3 ∆ (G)
vi
∆ (G) + 1
Algoritmo guloso – Limitante superior
Teorema
Para todo grafo G, χ(G) ≤∆ (G) + 1.
Demonstracao
Suponha que os vertices de G sejam listados na ordem v1,v2, . . . , vn
e que o algoritmo guloso é aplicado.
1 2 3 ∆ (G)
vi
∆ (G) + 1
Na i-esima iteracao do lacoao colorir o vertice vi , no maximo
∆(G ) cores terao sido utilizadas para colorir seus vizinhos. Se este
for o caso, entao escolhemos uma cor adicional para colorir vi .
Deste modo, teremos utilizados ∆(G ) + 1 cores para colorir G.
Heurı́stica
Heuristica é́ um método ou processo criado com o objetivo
de encontrar soluções para um problema. É um
procedimento simplificador que, em face de questões
difı ́ceis, envolve a substituição destas por outras de
resolução mais fácil a fim de encontrar respostas viáveis,
ainda que imperfeitas
Muitas heurı ́sticas para coloração de vértices se baseiam na
intuição de que um vértice de maior grau será mais difı ́cil de
colorir mais tarde do que um de menor grau.
Heurı́stica
Algorithm 3 Algoritmo de Welsh-Powell
Input: Grafo G com n vertices v1, v2,... ,vn.
Output: Uma coloracao propria dos vertices de G.
1: Calcule o grau de cada vértice de G .
2: Liste os vértices em ordem decrescente de grau.
3: Associe a cor 1 ao primeiro vértice da lista e ao próximo vértice da lista
não adjacente a ele, e sucessivamente para cada nó da lista não adjacente
a um nó com a cor 1.
4: Associe a cor 2 ao próximo vértice da lista ainda sem cor.
Sucessivamente associe a cor 2 para o próximo vértice da lista não
adjacente aos vértices com cor 2 e que ainda não está colorido.
5: Continue esse processo até que todos os vértices sejam coloridos.
Execucao do Algoritmo de Welsh-Powell
Exemplo de uma instância e uma ordenação ruim:
b
a
c
d
e
f
g
h
Ordenação dos vértices
Passo 1: b e c d g f a h
Execucao do Algoritmo de Welsh-Powell
Exemplo de uma instância e uma ordenação ruim:
1
a
b
c
d
e
f
g
h
Ordenação dos vértices
Passo 1: b e c d g f a h
Execucao do Algoritmo de Welsh-Powell
Exemplo de uma instância e uma ordenação ruim:
1
a
1
b
c
d
e
f
g
h
Ordenação dos vértices
Passo 1: b e c d g f a h
Execucao do Algoritmo de Welsh-Powell
Exemplo de uma instância e uma ordenação ruim:
1
a
1
b
c
d
e
f
g
h
Ordenação dos vértices
Passo 1: b e c d g f a h
Passo 2: b e c d g f a h
Execucao do Algoritmo de Welsh-Powell
Exemplo de uma instância e uma ordenação ruim:
1
a
1
2
b
c
d
e
f
g
h
Ordenação dos vértices
Passo 1: b e c d g f a h
Passo 2: b e c d g f a h
Execucao do Algoritmo de Welsh-Powell
Exemplo de uma instância e uma ordenação ruim:
1
a
1
2
2
b
c
d
e
f
g
h
Ordenação dos vértices
Passo 1: b e c d g f a h
Passo 2: b e c d g f a h
Execucao do Algoritmo de Welsh-Powell
Exemplo de uma instância e uma ordenação ruim:
1
a 2
1
2
2
b
c
d
e
f
g
h
Ordenação dos vértices
Passo 1: b e c d g f a h
Passo 2: b e c d g f a h
Execucao do Algoritmo de Welsh-Powell
Exemplo de uma instância e uma ordenação ruim:
1
a 2
1
2
2
2
b
c
d
e
f
g
h
Ordenação dos vértices
Passo 1: b e c d g f a h
Passo 2: b e c d g f a h
Execucao do Algoritmo de Welsh-Powell
Exemplo de uma instância e uma ordenação ruim:
1
a 2
1
2
2
2
b
c
d
e
f
g
h
Ordenação dos vértices
Passo 1: b e c d g f a h
Passo 2: b e c d g f a h
Passo 3: b e c d g f a h
Execucao do Algoritmo de Welsh-Powell
Exemplo de uma instância e uma ordenação ruim:
1
a 2
1
2
2
2
b
c
d
3 e
f
g
h
Ordenação dos vértices
Passo 1: b e c d g f a h
Passo 2: b e c d g f a h
Passo 3: b e c d g f a h
Execucao do Algoritmo de Welsh-Powell
Exemplo de uma instância e uma ordenação ruim:
1
a 2
1
2
2
2
b
c
d
3 e
3 f
g
h
Ordenação dos vértices
Passo 1: b e c d g f a h
Passo 2: b e c d g f a h
Passo 3: b e c d g f a h
Execucao do Algoritmo de Welsh-Powell
Exemplo de uma instância e uma ordenação ruim:
1
1
2
2
2
2
a
b
c
d
3 e
3 f
g
h
Ordenação dos vértices
No entanto, χ(G) = 2,
pois G naopossui ciclo impar
Passo 1: b e c d g f a h
Passo 2: b e c d g f a h
Passo 3: b e c d g f a h
Limitantes superiores para χ(G)
A partir do algoritmo de Welsh-Powell tambem ehpossivelprovarque
χ(G) ≤∆ (G) + 1.
44 / 49
Limitantes superiores para χ(G)
A partir do algoritmo de Welsh-Powell tambémé possível provar que
χ(G) ≤∆ (G) + 1.
Teorema [Brooks, 1941]
Se G é um grafo conexo que não é um grafo completo e nem um
ciclo impar, então χ(G) ≤∆ (G).
Conclusão
Conclusao
1. Coloracao de vertices de um grafo surgiu em 1852 a partir de um
problema de coloração de mapas.
2. Coloração de vértices possui diversas aplicações práticas.
3. Nao existem algoritmos eficientes que garantam uma coloracao
minima para grafos arbitrarios
1. Algoritmo guloso.
2. Algoritmo de Welsh-Powell.
1. Coloração de Grafos é uma área de pesquisa muito ativa em
Teoria dos Grafos.
Referências
Luiz, Atı́lio Gomes
- V Workshop de Tecnologia da Informação do Sertão Central
- Universidade Federal do Ceará – Campus Quixadá
- 13 de maio 2015

Mais conteúdo relacionado

Mais procurados

Teoria dos Grafos - História e COnceitos Iniciais
Teoria dos Grafos - História e COnceitos IniciaisTeoria dos Grafos - História e COnceitos Iniciais
Teoria dos Grafos - História e COnceitos Iniciais
Victor Hazin da Rocha
 
Expressoes Matematicas com o LaTeX
Expressoes Matematicas com o LaTeXExpressoes Matematicas com o LaTeX
Expressoes Matematicas com o LaTeX
Ivan Pagnossin
 
Inteligência Artificial - Aula2 - Busca em Grafos
Inteligência Artificial - Aula2 - Busca em GrafosInteligência Artificial - Aula2 - Busca em Grafos
Inteligência Artificial - Aula2 - Busca em Grafos
Rafael Pinto
 
Árvores Espalhadas Mínimas
Árvores Espalhadas MínimasÁrvores Espalhadas Mínimas
Árvores Espalhadas Mínimas
Diego Cavalca
 
Laboratório de Programação II: Grafos - Matriz de adjacência e Matriz de inci...
Laboratório de Programação II: Grafos - Matriz de adjacência e Matriz de inci...Laboratório de Programação II: Grafos - Matriz de adjacência e Matriz de inci...
Laboratório de Programação II: Grafos - Matriz de adjacência e Matriz de inci...
Alex Camargo
 
Aula Grafos
Aula GrafosAula Grafos
Aula Grafos
Ricardo Anjos
 
Apostila lógica matemática
Apostila lógica matemáticaApostila lógica matemática
Apostila lógica matemática
Sergio Gomes Ferreira
 
Intalgebra lna
Intalgebra lnaIntalgebra lna
Intalgebra lna
RJS8230
 
Lista de exercícios potência ca e triângulo de potências
Lista de exercícios potência ca e triângulo de potênciasLista de exercícios potência ca e triângulo de potências
Lista de exercícios potência ca e triângulo de potências
João Marcus Callegari
 
Logica fuzzy Conceitos e Aplicações
Logica fuzzy   Conceitos e AplicaçõesLogica fuzzy   Conceitos e Aplicações
Logica fuzzy Conceitos e Aplicações
Toni Esteves
 
3 ano mod 15 - medidores elétricos e ponte de wheatstone
3 ano   mod 15 - medidores elétricos e ponte de wheatstone3 ano   mod 15 - medidores elétricos e ponte de wheatstone
3 ano mod 15 - medidores elétricos e ponte de wheatstone
eduardorsilva
 
Grafos
GrafosGrafos
Grafos
GPslide1209
 
Grafos e Árvores
Grafos e ÁrvoresGrafos e Árvores
Grafos e Árvores
Patrick Momoli
 
Funcão Afim
Funcão AfimFuncão Afim
Funcão Afim
Nome Sobrenome
 
Matematica discreta fasciculo_3_v06
Matematica discreta fasciculo_3_v06Matematica discreta fasciculo_3_v06
Matematica discreta fasciculo_3_v06
CLEAN LOURENÇO
 
Matrizes
MatrizesMatrizes
Matrizes
rosania39
 
2016 matematica-escalonamento-sistemas lineares--_escalonamento (1)
2016 matematica-escalonamento-sistemas lineares--_escalonamento (1)2016 matematica-escalonamento-sistemas lineares--_escalonamento (1)
2016 matematica-escalonamento-sistemas lineares--_escalonamento (1)
matheus afonso
 
Materiais magnéticos
Materiais magnéticosMateriais magnéticos
Materiais magnéticos
valdecio lopes
 
Listadeexercicios1circuitoseltricos 141115104224-conversion-gate02
Listadeexercicios1circuitoseltricos 141115104224-conversion-gate02Listadeexercicios1circuitoseltricos 141115104224-conversion-gate02
Listadeexercicios1circuitoseltricos 141115104224-conversion-gate02
jovemdance
 
Sistemas lineares
Sistemas linearesSistemas lineares
Sistemas lineares
Rodrigo Carvalho
 

Mais procurados (20)

Teoria dos Grafos - História e COnceitos Iniciais
Teoria dos Grafos - História e COnceitos IniciaisTeoria dos Grafos - História e COnceitos Iniciais
Teoria dos Grafos - História e COnceitos Iniciais
 
Expressoes Matematicas com o LaTeX
Expressoes Matematicas com o LaTeXExpressoes Matematicas com o LaTeX
Expressoes Matematicas com o LaTeX
 
Inteligência Artificial - Aula2 - Busca em Grafos
Inteligência Artificial - Aula2 - Busca em GrafosInteligência Artificial - Aula2 - Busca em Grafos
Inteligência Artificial - Aula2 - Busca em Grafos
 
Árvores Espalhadas Mínimas
Árvores Espalhadas MínimasÁrvores Espalhadas Mínimas
Árvores Espalhadas Mínimas
 
Laboratório de Programação II: Grafos - Matriz de adjacência e Matriz de inci...
Laboratório de Programação II: Grafos - Matriz de adjacência e Matriz de inci...Laboratório de Programação II: Grafos - Matriz de adjacência e Matriz de inci...
Laboratório de Programação II: Grafos - Matriz de adjacência e Matriz de inci...
 
Aula Grafos
Aula GrafosAula Grafos
Aula Grafos
 
Apostila lógica matemática
Apostila lógica matemáticaApostila lógica matemática
Apostila lógica matemática
 
Intalgebra lna
Intalgebra lnaIntalgebra lna
Intalgebra lna
 
Lista de exercícios potência ca e triângulo de potências
Lista de exercícios potência ca e triângulo de potênciasLista de exercícios potência ca e triângulo de potências
Lista de exercícios potência ca e triângulo de potências
 
Logica fuzzy Conceitos e Aplicações
Logica fuzzy   Conceitos e AplicaçõesLogica fuzzy   Conceitos e Aplicações
Logica fuzzy Conceitos e Aplicações
 
3 ano mod 15 - medidores elétricos e ponte de wheatstone
3 ano   mod 15 - medidores elétricos e ponte de wheatstone3 ano   mod 15 - medidores elétricos e ponte de wheatstone
3 ano mod 15 - medidores elétricos e ponte de wheatstone
 
Grafos
GrafosGrafos
Grafos
 
Grafos e Árvores
Grafos e ÁrvoresGrafos e Árvores
Grafos e Árvores
 
Funcão Afim
Funcão AfimFuncão Afim
Funcão Afim
 
Matematica discreta fasciculo_3_v06
Matematica discreta fasciculo_3_v06Matematica discreta fasciculo_3_v06
Matematica discreta fasciculo_3_v06
 
Matrizes
MatrizesMatrizes
Matrizes
 
2016 matematica-escalonamento-sistemas lineares--_escalonamento (1)
2016 matematica-escalonamento-sistemas lineares--_escalonamento (1)2016 matematica-escalonamento-sistemas lineares--_escalonamento (1)
2016 matematica-escalonamento-sistemas lineares--_escalonamento (1)
 
Materiais magnéticos
Materiais magnéticosMateriais magnéticos
Materiais magnéticos
 
Listadeexercicios1circuitoseltricos 141115104224-conversion-gate02
Listadeexercicios1circuitoseltricos 141115104224-conversion-gate02Listadeexercicios1circuitoseltricos 141115104224-conversion-gate02
Listadeexercicios1circuitoseltricos 141115104224-conversion-gate02
 
Sistemas lineares
Sistemas linearesSistemas lineares
Sistemas lineares
 

Semelhante a slidesWtisc(1).pptx

Grafos
GrafosGrafos
numeros complexos e aplicações, com exercícios
numeros complexos e aplicações, com exercíciosnumeros complexos e aplicações, com exercícios
numeros complexos e aplicações, com exercícios
MarcosViniciusLemesL
 
Graph Theory - Exercises - Chapter 2 - Part II
Graph Theory - Exercises - Chapter 2 - Part IIGraph Theory - Exercises - Chapter 2 - Part II
Graph Theory - Exercises - Chapter 2 - Part II
Michel Alves
 
Teste nee
Teste neeTeste nee
Teste nee
nunograca
 
Introdução às Linguagens de Programação com Processing
Introdução às Linguagens de Programação com ProcessingIntrodução às Linguagens de Programação com Processing
Introdução às Linguagens de Programação com Processing
Articacc, Lda
 
Teoria de Grafos.ppt.pptx para estudar MACS
Teoria de Grafos.ppt.pptx para estudar MACSTeoria de Grafos.ppt.pptx para estudar MACS
Teoria de Grafos.ppt.pptx para estudar MACS
sandra soares
 
Atividade 1 2
Atividade 1 2Atividade 1 2
Atividade 1 2
Gilson Gameleira
 
Apostila grafos
Apostila grafosApostila grafos
Apostila grafos
afrodite2007
 
Análise de Algoritmos - Conceitos de Grafos
Análise de Algoritmos - Conceitos de GrafosAnálise de Algoritmos - Conceitos de Grafos
Análise de Algoritmos - Conceitos de Grafos
Delacyr Ferreira
 
Fuvest 2020 - fechada
Fuvest 2020 - fechadaFuvest 2020 - fechada
Fuvest 2020 - fechada
KalculosOnline
 
Simuladinho Diagnóstico 14
Simuladinho Diagnóstico 14Simuladinho Diagnóstico 14
Simuladinho Diagnóstico 14
Prof. Materaldo
 
Treinamento Para competições de Programação do INF-UFG - Grafos Parte 1 - Tur...
Treinamento Para competições de Programação do INF-UFG - Grafos Parte 1 - Tur...Treinamento Para competições de Programação do INF-UFG - Grafos Parte 1 - Tur...
Treinamento Para competições de Programação do INF-UFG - Grafos Parte 1 - Tur...
Murilo Adriano Vasconcelos
 
Apostila grafos
Apostila grafosApostila grafos
Apostila grafos
Carla Jaciara Sousa
 
Teoria dos grafos
Teoria dos grafosTeoria dos grafos
Teoria dos grafos
XequeMateShannon
 
9ºano mat ficha revisões
9ºano mat ficha revisões9ºano mat ficha revisões
9ºano mat ficha revisões
silvia_lfr
 
Floyd-Warshall
Floyd-WarshallFloyd-Warshall
Floyd-Warshall
Jean Figueiredo
 
12 m 2019_f1_c1
12 m 2019_f1_c112 m 2019_f1_c1
12 m 2019_f1_c1
SandraSalvador13
 
Introdução aos grafos: Principais conceitos
Introdução aos grafos: Principais conceitosIntrodução aos grafos: Principais conceitos
Introdução aos grafos: Principais conceitos
ssusera0fc94
 
Grafos_1.pptx
Grafos_1.pptxGrafos_1.pptx
Grafos_1.pptx
ssusera0fc94
 
Analise Comb E Probabilidades
Analise Comb E ProbabilidadesAnalise Comb E Probabilidades
Analise Comb E Probabilidades
gueste0e57c
 

Semelhante a slidesWtisc(1).pptx (20)

Grafos
GrafosGrafos
Grafos
 
numeros complexos e aplicações, com exercícios
numeros complexos e aplicações, com exercíciosnumeros complexos e aplicações, com exercícios
numeros complexos e aplicações, com exercícios
 
Graph Theory - Exercises - Chapter 2 - Part II
Graph Theory - Exercises - Chapter 2 - Part IIGraph Theory - Exercises - Chapter 2 - Part II
Graph Theory - Exercises - Chapter 2 - Part II
 
Teste nee
Teste neeTeste nee
Teste nee
 
Introdução às Linguagens de Programação com Processing
Introdução às Linguagens de Programação com ProcessingIntrodução às Linguagens de Programação com Processing
Introdução às Linguagens de Programação com Processing
 
Teoria de Grafos.ppt.pptx para estudar MACS
Teoria de Grafos.ppt.pptx para estudar MACSTeoria de Grafos.ppt.pptx para estudar MACS
Teoria de Grafos.ppt.pptx para estudar MACS
 
Atividade 1 2
Atividade 1 2Atividade 1 2
Atividade 1 2
 
Apostila grafos
Apostila grafosApostila grafos
Apostila grafos
 
Análise de Algoritmos - Conceitos de Grafos
Análise de Algoritmos - Conceitos de GrafosAnálise de Algoritmos - Conceitos de Grafos
Análise de Algoritmos - Conceitos de Grafos
 
Fuvest 2020 - fechada
Fuvest 2020 - fechadaFuvest 2020 - fechada
Fuvest 2020 - fechada
 
Simuladinho Diagnóstico 14
Simuladinho Diagnóstico 14Simuladinho Diagnóstico 14
Simuladinho Diagnóstico 14
 
Treinamento Para competições de Programação do INF-UFG - Grafos Parte 1 - Tur...
Treinamento Para competições de Programação do INF-UFG - Grafos Parte 1 - Tur...Treinamento Para competições de Programação do INF-UFG - Grafos Parte 1 - Tur...
Treinamento Para competições de Programação do INF-UFG - Grafos Parte 1 - Tur...
 
Apostila grafos
Apostila grafosApostila grafos
Apostila grafos
 
Teoria dos grafos
Teoria dos grafosTeoria dos grafos
Teoria dos grafos
 
9ºano mat ficha revisões
9ºano mat ficha revisões9ºano mat ficha revisões
9ºano mat ficha revisões
 
Floyd-Warshall
Floyd-WarshallFloyd-Warshall
Floyd-Warshall
 
12 m 2019_f1_c1
12 m 2019_f1_c112 m 2019_f1_c1
12 m 2019_f1_c1
 
Introdução aos grafos: Principais conceitos
Introdução aos grafos: Principais conceitosIntrodução aos grafos: Principais conceitos
Introdução aos grafos: Principais conceitos
 
Grafos_1.pptx
Grafos_1.pptxGrafos_1.pptx
Grafos_1.pptx
 
Analise Comb E Probabilidades
Analise Comb E ProbabilidadesAnalise Comb E Probabilidades
Analise Comb E Probabilidades
 

Mais de Cedemir Pereira

cdr-intro.pdf
cdr-intro.pdfcdr-intro.pdf
cdr-intro.pdf
Cedemir Pereira
 
Livro Cidades Inteligentes(2)-31-66.pdf
Livro Cidades Inteligentes(2)-31-66.pdfLivro Cidades Inteligentes(2)-31-66.pdf
Livro Cidades Inteligentes(2)-31-66.pdf
Cedemir Pereira
 
Cap11
Cap11Cap11
Cap9
Cap9Cap9
Cap7
Cap7Cap7
Cap6
Cap6Cap6
Cap4
Cap4Cap4
Cap12
Cap12Cap12
c-gui-programming-with-qt-4-2ndedition -Cap1e2
c-gui-programming-with-qt-4-2ndedition -Cap1e2c-gui-programming-with-qt-4-2ndedition -Cap1e2
c-gui-programming-with-qt-4-2ndedition -Cap1e2
Cedemir Pereira
 

Mais de Cedemir Pereira (9)

cdr-intro.pdf
cdr-intro.pdfcdr-intro.pdf
cdr-intro.pdf
 
Livro Cidades Inteligentes(2)-31-66.pdf
Livro Cidades Inteligentes(2)-31-66.pdfLivro Cidades Inteligentes(2)-31-66.pdf
Livro Cidades Inteligentes(2)-31-66.pdf
 
Cap11
Cap11Cap11
Cap11
 
Cap9
Cap9Cap9
Cap9
 
Cap7
Cap7Cap7
Cap7
 
Cap6
Cap6Cap6
Cap6
 
Cap4
Cap4Cap4
Cap4
 
Cap12
Cap12Cap12
Cap12
 
c-gui-programming-with-qt-4-2ndedition -Cap1e2
c-gui-programming-with-qt-4-2ndedition -Cap1e2c-gui-programming-with-qt-4-2ndedition -Cap1e2
c-gui-programming-with-qt-4-2ndedition -Cap1e2
 

slidesWtisc(1).pptx

  • 1. Coloraçãode grafos e suas aplicações Cedemir Pereira Mestrado de Computação Aplicada UPF
  • 2. Sumário 1) Introduçãoàcoloraçãode grafos 2) História 3) Aplicações 4) Algumas ideias e tentativas de solução
  • 3. O que é um grafo? Estrutura matemática abstrata. Formada por dois conjuntos: conjunto de vértices (pontos); conjunto de arestas (arcos).
  • 4. O que é um grafo? Estrutura matematica abstrata. Formada por dois conjuntos: conjunto de vértices (pontos); conjunto de arestas (arcos). Pode ser usado para modelar situações do mundo real: vértices representam pessoas, máquinas, etc. arestas representam existência de ligação entre nós, distância entre os nós, etc. 3 / 49
  • 5. Coloração de grafos Um problema de coloração em grafos consiste em atribuir cores a certos elementos do grafo sujeito a determinadas condições 4 / 49
  • 6. Coloração de grafos Um problema de coloração em grafos consiste em atribuir cores a certos elementos do grafo sujeito a determinadas condições. Exemplo: coloração própria de vértices. v1 v2 v3 v4 v5 4 / 49
  • 8. Origem da coloração de grafos Francis Guthrie (1852): Qualquer mapa político pode ser colorido com no máximo quatro cores? Francis Guthrie
  • 9. Mapas e Grafos Um mapa no plano pode ser representado por um grafo chamado de grafo dual.
  • 10. Teorema das Quatro Cores Teorema das Quatro Cores [Appel e Haken, 1977] Todo grafo planar possui uma coloração de vértices com no máximo quatro cores.
  • 12. Separaçãoo de produtos explosivos Os vértices representam produtos quíımicos necessários em algum processo de produção Existe uma aresta ligando cada par de produtos que podem explodir, se combinados. O número cromático representa o número mı́nimo de compartimentos para guardar estes produtos químicos em segurança.
  • 13. Atribuição de frequências de rádio Os vértices representam os transmissores das estaçõesde rádio. Duas estações são adjacentes quando suas áreas de transmissão se sobrepõem,o que resultaria em interferência se elas usassem a mesma frequência. Cada cor contém estaçõesque podem receber a mesma frequência.
  • 14. Sudoku 6 1 4 5 8 3 5 6 1 8 4 7 6 6 3 7 9 1 4 5 2 7 2 6 9 4 5 8 7 9 6 3 1 7 4 2 5 8 1 7 8 3 2 5 6 4 9 2 5 4 6 8 9 7 3 1 8 2 1 4 3 7 5 9 6 4 9 6 8 5 2 3 1 7 7 3 5 9 6 1 8 2 4 5 8 9 7 1 3 4 6 2 3 1 7 2 4 6 9 8 5 6 4 2 5 9 8 1 7 3 O sudoku é uma variação da coloração de vértices. At´ılio Gomes Luiz Colora¸cão de grafos e suas aplicac¸ões 17 / 49
  • 15. Sudoku 6 1 4 5 8 3 5 6 1 8 4 7 6 6 3 7 9 1 4 5 2 7 2 6 9 4 5 8 7 9 6 3 1 7 4 2 5 8 1 7 8 3 2 5 6 4 9 2 5 4 6 8 9 7 3 1 8 2 1 4 3 7 5 9 6 4 9 6 8 5 2 3 1 7 7 3 5 9 6 1 8 2 4 5 8 9 7 1 3 4 6 2 3 1 7 2 4 6 9 8 5 6 4 2 5 9 8 1 7 3 O sudoku é uma variação da coloração de vértices. Cada célula representa um vértice e existe uma aresta entre dois vértices se eles estão em uma mesma linha, mesma coluna ou no mesmo bloco. At´ılio Gomes Luiz Colora¸cão de grafos e suas aplicac¸ões 17 / 49
  • 16. Semáforos Existem oito pistas de tráfego no cruzamento de duas ruas. Um semáforoestá localizado na intersecção.Durante cada fase do semáforo, somente os carros em pistas para as quais a luz está verde podem prosseguir com segurança. Qual é o númeromínimode fases necessárias de modo que, eventualmente, todos os carros possam prosseguir através do cruzamento?
  • 17. Semaforos Existem oito pistas de tráfego no cruzamento de duas ruas. Um semáforoestálocalizado na intersecção.Durante cada fase do semáforo, somente os carros em pistas para as quais a luz estáverde podem prosseguir com segurança. Qual é o númeromiınimode fases necessarias de modo que, eventualmente, todos os carros possam prosseguir através do cruzamento? L1 L6 L4 L5 L2 L3 L7 L8
  • 18. Semaforos Existem oito pistas de tráfego no cruzamento de duas ruas. Um semaforoesta localizado na intersecção. Durante cada fase do semáforo, somente os carros em pistas para as quais a luz está verde podem prosseguir com segurança. Qual é o númeromínimode fases necessárias de modo que, eventualmente, todos os carros possam prosseguir através do cruzamento? L1 L6 L4 L5 L2 L3 L7 L8
  • 19. O problema de coloração mínima
  • 20. Definições Não consideramos grafos com loops. Não consideramos grafos com arestas múltiplas. Considerados apenas grafos simples. loop arestas múltiplas
  • 21. Definições Dado um grafo simples G e v um vértice de G: grau(v): o número de arestas incidentes em v. grau(v1) = grau(v4) = 1 grau(v2) = grau(v3) = 3 grau(v5) = 2 v1 v2 v3 v4 v5
  • 22. Definições Dado um grafo simples G e v um vértice de G: grau(v): o número de arestas incidentes em v. grau(v1) = grau(v4) = 1 grau(v2) = grau(v3) = 3 grau(v5) = 2 v1 v2 v3 v4 v5 ∆(G ) (Grau maximo de G ): é o maior grau dentre todos os graus dos vértices de G.
  • 23. Definicoes Dado um grafo simples G e v um v´ertice de G: grau(v): o número de arestas incidentes em v. grau(v1) = grau(v4) = 1 grau(v2) = grau(v3) = 3 grau(v5) = 2 v1 v2 v3 v4 v5 ∆(G ) (Grau maximo de G ): é o maior dentre todos os graus dos vértices de G. Dois vértices que possuem uma aresta em comum sãoditos adjacentes.
  • 24. Definições α(G) = 2 Conjunto independente: subconjunto de verticesde G que não possuem arestas em comum.
  • 25. Definicoes α(G) = 2 Conjunto independente: subconjunto de vérticesde G que não possuem arestas em comum. α(G): tamanho do maior conjunto independente de G.
  • 26. Definicoes Grafo bipartido: seus vertices podem ser particionados em dois conjuntos independentes.
  • 27. Definicoes Grafo bipartido: seus vertices podem ser particionados em dois conjuntos independentes. Kn (Grafo completo com n vertices): quaisquer dois vertices sao ligados por uma aresta.
  • 28. Número cromático de um grafo Numero cromatico de um grafo G: o menor inteiro positivo k tal que G possui uma k-coloracaopropria de vertices. Esse número é representado por χ(G). G1 G2 χ(G1) = 1 χ(G2) = 2 Grafo bipartido
  • 29. Número cromático de um grafo 1 1 2 2 3 v1 v2 v3 v4 v5 Grafo H χ(H) ≤ 3 .
  • 30. Número cromático de um grafo 1 1 2 2 3 v1 v2 v3 v4 v5 Grafo H χ(H) ≤3. É possı ́ vel colorir H com menos que três cores?
  • 31. Número cromático de um grafo 1 1 2 2 3 v1 v2 v3 v4 v5 Grafo H χ(H) ≤3. É possı ́ vel colorir H com menos que três cores? Como H contemum triangulo,temos que χ(H) ≥3. Logo, χ(H) = 3.
  • 32. Grafos bipartidos Teorema Um grafo G é bipartido se e somente se ele nao contem ciclo ımpar. 1 1 1 2 2 2 2 2 3 3 3 3 v1 v1 v2 v2 v3 v3 v4 v4 v5 v5 v6 v7 χ(G) = 3 χ(G) = 3
  • 33. Grafos bipartidos Como checar se um grafo é bipartido? a1 a2 a3 b1 b2 b3 A B 27 / 49
  • 34. Algoritmo para checar se χ(G) = 2 Algorithm 1 Algoritmo para checar se G eh bipartido Entrada: Vertice G. Vertice inicial Comece com o vertice inicial v e pinte-o de AZUL. 2: Pinte todos os vizinhos de v de VERMELHO. 3: Continue a coloracao pintando os vizinhos dos vertices j a coloridos, usando ou o AZUL ou o VERMELHO. Ao atribuir cores, se encontrarmos um vizinho colorido com a mesma cor do vertice atual, entao o grafo naopode ser colorido com duas cores.
  • 43. Limitantes inferiores para χ(G) Mahnoticia: Ate hoje, nao se conhece nenhum bom algoritmo para checar se um grafo G possui χ(G) = k, para k ≥3.
  • 44. Limitantes inferiores para χ(G) Mah noticia: Ate hoje, nao se conhece nenhum bom algoritmo para checar se um grafo G possui χ(G) = k, para k ≥3. Dado um grafo G , gostariamosde determinar limitantes inferiores e superiores para χ(G).
  • 45. Limitantes inferiores para χ(G) a2 a3 a4 Mahnoticia: Atehoje, naoseconhece nenhum bom algoritmo para checar se um grafo G possui χ(G) = k, para k ≥3. Dado um grafo G , gostariamosde determinar limitantes inferiores e superiores para χ(G). a1 a5 a6 a7 χ(G) ≤ 4
  • 46. Limitantes inferiores para χ(G) a2 a3 a4 Mah noticia: Atehoje, nao conhece nenhum bom algoritmo para checar se um grafo G possui χ(G) = k, para k ≥3. Dado um grafo G , gostariamosde determinar limitantes inferiores e superiores para χ(G). a1 a5 a6 a7 χ(G) ≤4 Limitante 1: Para todo grafo G, χ(G) ≥ω(G).
  • 47. Limitantes inferiores para χ(G) Manoticia: Existe um grafo G sem triangulos e com numero cromatico χ(G) = k, para todo k ≥1. [Mycielski, 1955] χ(G) = 1 χ(G) = 2 χ(G) = 3 χ(G) = 4 31 / 49
  • 48. Limitantes inferiores para χ(G) Limitante 2 α(G) Se G é um grafo com n vértices, então χ(G ) ≥ n . χ(G) = 3 χ(G) = 4
  • 49. . . . e os algoritmos para colorir?
  • 50. Complexidade da Coloracao de Vertices (Garey e Johnson, 1974): O problema de achar o numero cromático de um grafo é NP-difı́cil.
  • 51. Algoritmo de força bruta Seja G um grafo simples com n v´ertices. kn v1 v2 v3 v4 v5 vn k k k k k k =
  • 52. Algoritmo de força bruta Seja G um grafo simples com n v´ertices. v1 v2 v3 v4 v5 vn k k k k k k = kn O algoritmo de forcabruta busca por uma k-coloracaode G considerando cada uma das kn atribuicoespossiveis e checa se cada uma delas é correta.
  • 53. Algoritmo de força bruta Seja G um grafo simples com n v´ertices. v1 v2 v3 v4 v5 vn k k k k k k = kn O algoritmo de forcabruta busca por uma k-coloracaode G considerando cada uma das kn atribuicoes possiveis e checa se cada uma delas é correta. Para calcular χ(G ), este procedimento é testado k = 1, . . ., n −1. =⇒ Computacionalmente inviavel para grandes instancias.
  • 54. Algoritmo guloso Algoritmo guloso é aquele que sempre realiza a escolha que parece ser a melhor no momento, fazendo uma escolha otima local, na esperanca de que esta escolha leve atéa solução otima global. – Ele nunca volta atras.
  • 55. Algoritmo guloso Algoritmo guloso é aquele que sempre realiza a escolha que parece ser a melhor no momento, fazendo uma escolha otima local, na esperanca de que esta escolha leve até a solução otima global. – Ele nunca volta atras. “Como na vida real, algoritmos gulosos, algumas vezes podem levar a melhor solucao, outras vezes podem levar a solucoes muito boas, e outras vezes levara solucoesruins. O truque é determinar quando ser ganancioso”— Ian Parberry, Problems on Algorithms.
  • 56. Algoritmo guloso Algorithm 2 Algoritmo Guloso para coloracaode vertices Input: Vert iices de G listados em ordem v1,v2, ... ,vn. Conjunto de cores disponı́veis C = {1,2,... ,n}. Output: Uma coloracao propria dos vertices de G. 37 / 49
  • 57. Algoritmo guloso v1 v2 v3 v5 v6 v7 v4 v8 C = {1, 2, . . ., 8}
  • 58. Algoritmo guloso 1 v1 v2 v3 v5 v6 v7 v4 v8 C = {1, 2, . . ., 8}
  • 59. Algoritmo guloso 1 2 v1 v2 v3 v5 v6 v7 v4 v8 C = {1, 2, . . ., 8}
  • 60. Algoritmo guloso 1 1 2 v1 v2 v3 v5 v6 v7 v4 v8 C = {1, 2, . . ., 8}
  • 61. Algoritmo guloso 1 1 2 3 v1 v2 v3 v5 v6 v7 v4 v8 C = {1, 2, . . ., 8}
  • 62. Algoritmo guloso 1 1 2 2 3 v1 v2 v3 v5 v6 v7 v4 v8 C = {1, 2, . . ., 8}
  • 63. Algoritmo guloso 1 1 2 2 3 4 v1 v2 v3 v5 v6 v7 v4 v8 C = {1, 2, . . ., 8}
  • 64. Algoritmo guloso 1 1 2 2 3 3 4 v1 v2 v3 v5 v6 v7 v4 v8 C = {1, 2, . . ., 8}
  • 65. Algoritmo guloso 1 1 2 2 3 3 4 5 v1 v2 v3 v5 v6 v7 v4 v8 C = {1, 2, . . ., 8}
  • 66. Algoritmo guloso 1 1 2 2 3 3 4 5 v1 v2 v3 v5 v6 v7 v4 v8 C = {1, 2, . . ., 8} Temos que χ(G) = 2, mas o algoritmo guloso de coloracao usou 5 cores.
  • 67. Algoritmo guloso – Limitante superior Teorema Para todo grafo G, χ(G) ≤∆ (G) + 1. Demonstracao:
  • 68. Algoritmo guloso – Limitante superior Teorema Para todo grafo G, χ(G) ≤∆ (G) + 1. Demonstracao: Suponha que os vertices de G sejam listados na ordem v1,v2, . . . , vn e que o algoritmo guloso é aplicado.
  • 69. Algoritmo guloso – Limitante superior Teorema Para todo grafo G, χ(G) ≤∆ (G) + 1. Demonstracao: Suponha que os vértices de G sejam listados na ordem v1,v2, . . . , vn e que o algoritmo guloso é aplicado. 1 2 3 ∆ (G) vi ∆ (G) + 1
  • 70. Algoritmo guloso – Limitante superior Teorema Para todo grafo G, χ(G) ≤∆ (G) + 1. Demonstracao Suponha que os vertices de G sejam listados na ordem v1,v2, . . . , vn e que o algoritmo guloso é aplicado. 1 2 3 ∆ (G) vi ∆ (G) + 1 Na i-esima iteracao do lacoao colorir o vertice vi , no maximo ∆(G ) cores terao sido utilizadas para colorir seus vizinhos. Se este for o caso, entao escolhemos uma cor adicional para colorir vi . Deste modo, teremos utilizados ∆(G ) + 1 cores para colorir G.
  • 71. Heurı́stica Heuristica é́ um método ou processo criado com o objetivo de encontrar soluções para um problema. É um procedimento simplificador que, em face de questões difı ́ceis, envolve a substituição destas por outras de resolução mais fácil a fim de encontrar respostas viáveis, ainda que imperfeitas Muitas heurı ́sticas para coloração de vértices se baseiam na intuição de que um vértice de maior grau será mais difı ́cil de colorir mais tarde do que um de menor grau.
  • 72. Heurı́stica Algorithm 3 Algoritmo de Welsh-Powell Input: Grafo G com n vertices v1, v2,... ,vn. Output: Uma coloracao propria dos vertices de G. 1: Calcule o grau de cada vértice de G . 2: Liste os vértices em ordem decrescente de grau. 3: Associe a cor 1 ao primeiro vértice da lista e ao próximo vértice da lista não adjacente a ele, e sucessivamente para cada nó da lista não adjacente a um nó com a cor 1. 4: Associe a cor 2 ao próximo vértice da lista ainda sem cor. Sucessivamente associe a cor 2 para o próximo vértice da lista não adjacente aos vértices com cor 2 e que ainda não está colorido. 5: Continue esse processo até que todos os vértices sejam coloridos.
  • 73. Execucao do Algoritmo de Welsh-Powell Exemplo de uma instância e uma ordenação ruim: b a c d e f g h Ordenação dos vértices Passo 1: b e c d g f a h
  • 74. Execucao do Algoritmo de Welsh-Powell Exemplo de uma instância e uma ordenação ruim: 1 a b c d e f g h Ordenação dos vértices Passo 1: b e c d g f a h
  • 75. Execucao do Algoritmo de Welsh-Powell Exemplo de uma instância e uma ordenação ruim: 1 a 1 b c d e f g h Ordenação dos vértices Passo 1: b e c d g f a h
  • 76. Execucao do Algoritmo de Welsh-Powell Exemplo de uma instância e uma ordenação ruim: 1 a 1 b c d e f g h Ordenação dos vértices Passo 1: b e c d g f a h Passo 2: b e c d g f a h
  • 77. Execucao do Algoritmo de Welsh-Powell Exemplo de uma instância e uma ordenação ruim: 1 a 1 2 b c d e f g h Ordenação dos vértices Passo 1: b e c d g f a h Passo 2: b e c d g f a h
  • 78. Execucao do Algoritmo de Welsh-Powell Exemplo de uma instância e uma ordenação ruim: 1 a 1 2 2 b c d e f g h Ordenação dos vértices Passo 1: b e c d g f a h Passo 2: b e c d g f a h
  • 79. Execucao do Algoritmo de Welsh-Powell Exemplo de uma instância e uma ordenação ruim: 1 a 2 1 2 2 b c d e f g h Ordenação dos vértices Passo 1: b e c d g f a h Passo 2: b e c d g f a h
  • 80. Execucao do Algoritmo de Welsh-Powell Exemplo de uma instância e uma ordenação ruim: 1 a 2 1 2 2 2 b c d e f g h Ordenação dos vértices Passo 1: b e c d g f a h Passo 2: b e c d g f a h
  • 81. Execucao do Algoritmo de Welsh-Powell Exemplo de uma instância e uma ordenação ruim: 1 a 2 1 2 2 2 b c d e f g h Ordenação dos vértices Passo 1: b e c d g f a h Passo 2: b e c d g f a h Passo 3: b e c d g f a h
  • 82. Execucao do Algoritmo de Welsh-Powell Exemplo de uma instância e uma ordenação ruim: 1 a 2 1 2 2 2 b c d 3 e f g h Ordenação dos vértices Passo 1: b e c d g f a h Passo 2: b e c d g f a h Passo 3: b e c d g f a h
  • 83. Execucao do Algoritmo de Welsh-Powell Exemplo de uma instância e uma ordenação ruim: 1 a 2 1 2 2 2 b c d 3 e 3 f g h Ordenação dos vértices Passo 1: b e c d g f a h Passo 2: b e c d g f a h Passo 3: b e c d g f a h
  • 84. Execucao do Algoritmo de Welsh-Powell Exemplo de uma instância e uma ordenação ruim: 1 1 2 2 2 2 a b c d 3 e 3 f g h Ordenação dos vértices No entanto, χ(G) = 2, pois G naopossui ciclo impar Passo 1: b e c d g f a h Passo 2: b e c d g f a h Passo 3: b e c d g f a h
  • 85. Limitantes superiores para χ(G) A partir do algoritmo de Welsh-Powell tambem ehpossivelprovarque χ(G) ≤∆ (G) + 1. 44 / 49
  • 86. Limitantes superiores para χ(G) A partir do algoritmo de Welsh-Powell tambémé possível provar que χ(G) ≤∆ (G) + 1. Teorema [Brooks, 1941] Se G é um grafo conexo que não é um grafo completo e nem um ciclo impar, então χ(G) ≤∆ (G).
  • 88. Conclusao 1. Coloracao de vertices de um grafo surgiu em 1852 a partir de um problema de coloração de mapas. 2. Coloração de vértices possui diversas aplicações práticas. 3. Nao existem algoritmos eficientes que garantam uma coloracao minima para grafos arbitrarios 1. Algoritmo guloso. 2. Algoritmo de Welsh-Powell. 1. Coloração de Grafos é uma área de pesquisa muito ativa em Teoria dos Grafos.
  • 89. Referências Luiz, Atı́lio Gomes - V Workshop de Tecnologia da Informação do Sertão Central - Universidade Federal do Ceará – Campus Quixadá - 13 de maio 2015