Coloração
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Número cromático (χ(G))
• Um grafo que requere k cores diferentes
para a sua coloração própria e nenhuma a
menos possui número cromático χ(G) = k
b
3-cromático
a
c
e
f
d
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Um exemplo de aplicação
• Problema dos exames: alocação de um
grupo de alunos aos exames de
recuperação que eles devem prestar em
um colégio
» Restrição: Duas disciplinas só podem ter
exames realizados simultaneamente se
não envolverem alunos em comum
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Um exemplo de aplicação
Alunos
Disciplinas
1
Mat.
x
Port.
x
2
3
4
5
8
9
10
11
Hist.
x
Física
x
x
x
14
15
x
x
x
x
x
x
x
x
x
x
x
Teoria dos Grafos
(INF 5037/INF2781)
x
16
x
x
x
x
x
13
x
x
x
12
x
x
Geog.
Biologia
7
x
Ingl.
Química
6
x
x
x
CC/EC/PPGI/UFES
Um exemplo de aplicação
M
P
B
I
Q
G
F
H
São necessários apenas dois horários
para realização dos exames: um para
os exames de Matemática, Geografia,
Biologia e História e outro, para os
exames de Português, Inglês, Física e
Química.
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Algumas considerações...
•
•
•
•
•
Coloração de vértices: considerado em
grafos simples e conexos
Grafo nulo: 1-cromático
Grafo com uma ou mais arestas: pelo
menos 2-cromático
Grafo com clique de tamanho k: pelo
menos k-cromático
Grafo cíclico: 2-cromático ou 3-cromático
CC/EC/PPGI/UFES
Teorema
Toda árvore com dois ou mais vértices
é 2-cromática
Obs: toda árvore é 2-cromática mas nem todo grafo 2cromático é uma árvore
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Teorema
Um grafo com pelo menos uma aresta é
2-cromático
sss
não possui ciclos com comprimento
ímpar
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Corolário
Um grafo G é bipartido
sss
G é 2-cromático
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Teorema
Seja Δ o grau máximo dos
vértices de G. Então
χ(G)  1 + Δ
Exercício!
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Coloração de arestas
Exemplo de aplicação:
Em um laboratório, uma lista de
tarefas deve ser cumprida o mais
rápido possível. Cada tarefa deve
ser realizada por uma dupla de
f
integrantes do laboratório e
necessita de 1 hora para ser
executada. Qual é o menor
Índice cromático:
número de horas necessárias
Menor número de cores para
para que todas
as tarefas
sejam
colorir
propriamente
cumpridas?as arestas de um grafo
a
b
c
e
d
CC/EC/PPGI/UFES
Partição Cromática
• Um grafo G k-cromático é p-partido sss k  p.
• Em um grafo p-partido, vértices de uma
mesma partição não são adjacentes.
• Um conjunto de vértices de um grafo é dito
independente se não possui vértices
adjacentes.
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Conjunto Independente de
vértices
c
a
g
e
b
d
f
Exemplos:
{a, c, d, g},
{e}, {a,d}
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Conjunto Independente de
vértices
• Incompatibilidade de horários entre
professores que devem aplicar prova final:
deseja-se obter o maior número possível de
turmas que realizarão prova final de várias
disciplinas em um mesmo horário. Turmas
com alunos em comum que farão prova final
de disciplinas diferentes não podem ser
alocadas no mesmo horário.
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Conjunto independente
maximal de vértices
Um conjunto independente
maximal é um conjunto
independente no qual não
se pode adicionar mais
nenhum vértice sem destruir
a propriedade de independência.
c
Exemplos:
{a,c,d,g},
{b,f}
a
e
b
d
Teoria dos Grafos
(INF 5037/INF2781)
g
f
CC/EC/PPGI/UFES
Conjunto Independente de
vértices maximal
• Existem vários conjuntos independentes
maximais em um grafo que podem ter
diferentes tamanhos.
• Qual é o de maior tamanho?
• (G) = número de independência de G
(cardinalidade do conjunto independente
de vértices de maior tamanho de G)
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
χ(G) X (G)
•
Seja G um grafo com n vértices e χ(G) =
k
•
Número de vértices coloridos com a
mesma cor  (G)
(G) ≥ n/ χ(G)
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Como achar um conjunto
independente maximal?
• Comece com um vértice qualquer.
• Selecione os próximos vértices sempre
testando se o conjunto ao qual eles estão
sendo inseridos continua independente
• Atenção: encontra-se um conjunto
maximal e não o maior de todos!
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
χ(G) X (G)
• Encontrar (G): consiste em encontrar
todos os conjuntos independentes
maximais e obter o maior;
• Encontrar χ(G): número mínimo de
conjuntos independentes maximais cuja
união resulta em V
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Partição cromática
• Dado um grafo simples e conexo G, os
vértices de G são particionados no menor
número possível de conjuntos
independentes de vértices disjuntos.
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Matchings
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Exemplo
• Sejam a1, a2, a3 e a4 candidatos a
preencher 6 vagas p1, p2, p3, p4, p5 e p6
de uma empresa. A qualificação de cada
candidato o possibilita a se candidatar
para um certo subconjunto de vagas,
conforme a figura a seguir:
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Exemplo
É possível empregar
todos os candidatos em
posições nas quais eles
são qualificados?
a1
p1
p2
a2
a3
p3
p4
a4
p5
Qual é o número máximo
de posições que podem
ser preenchidas pelo grupo
de candidatos?
p6
Problema de Matching
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Matching
• Um matching em um grafo é um
subconjunto de arestas não adjacentes.
Uma única aresta já é considerada um
matching.
• Um matching maximal é um matching no
qual nenhuma aresta a mais pode ser
adicionada sem ferir a propriedade de
matching
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Exemplos
a
b
a
b
a
b
d
c
d
c
d
c
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Exemplo de aplicação
Em um laboratório, cada
tarefa de uma lista de
tarefas especificadas,
deve ser realizada por
uma dupla de integrantes
do laboratório e necessita
de 1 hora para ser executada.
Qual é o maior número de
tarefas que podem ser
executadas em um
mesmo horário?
a
b
f
c
e
d
CC/EC/PPGI/UFES
Número de matching
• Um grafo pode ter muitos matchings
maximais;
• n° de matching: o número de arestas do
maior deles.
• qual é o número de matching do grafo do
slide anterior?
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Matching Perfeito
• Um matching perfeito é um matching no
qual todo vértice do grafo é um extremo de
algum elemento do matching
• Nem todo grafo contém um matching
a
b
perfeito:
e
d
Teoria dos Grafos
(INF 5037/INF2781)
c
CC/EC/PPGI/UFES
Observação
Todo matching perfeito é maximal
mas
nem todo matching maximal é perfeito
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Matching completo
• Definição válida para grafos bipartidos
• Em um grafo bipartido com subconjuntos
de vértices V1 e V2, um matching completo
de V1 em V2 é um matching no qual existe
uma aresta incidente a cada aresta de V1.
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Observação
um matching completo é o maior matching
maximal mas um matching maximal pode
não ser completo
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Exemplo
p1
a1
p2
a2
p3
a3
p4
a4
p5
p6
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Condições para existência de
um matching completo
• |V1|  |V2|;
• todo subconjunto de r vértices em V1 deve
ser adjacente a pelo menos r vértices em
V2, para r = 1, 2, ..., |V1|.
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Problema de representantes
distintos
Cinco senadores (s1, s2, s3, s4 e s5) são
membros de três comitês (c1, c2 e c3)
Um membro diferente
de cada comitê deve
participar de uma
comissão geral. É
possível realizar esse
matching?
c1
c2
c3
s1
s2
s3
s4
s5
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Teorema
Em um grafo bipartido, se existe
um inteiro positivo m tal que
d(v1) ≥ m ≥ d(v2) ,
com v1 de V1 e v2 de V2,
então
existe um matching completo de V1 para V2
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Prova
• Considere um subconjunto de r vértices em V1
• Cada um dos r vértices tem pelo menos m vértices de V2 incidentes
a ele. Assim esses r vértices tem pelo menos m.r arestas incidentes
• Cada uma das m.r arestas é incidente a algum vértice de V2
• Por sup. d(vi) ≤ m, vi de V2
• Então as m.r arestas são incidentes a pelo menos m.r/m = r vértices
• Assim, qualquer subconjunto de r vértices de V1 é adjacente a r ou
mais vértices de V2.
• Logo, G possui um matching completo
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Cobertura de vértices
• Um conjunto de vértices K de V é uma
cobertura de G se toda aresta de G possui
pelo menos um extremo em K
• Cobertura mínima: aquela que possui o
menor número possível de vértices
• Aplicações:
– Vigilância: menor número possível de câmeras de
segurança em lugares públicos.
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Exemplo
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Observações
• Se K é uma cobertura de vértices e M um
matching de G então K contém pelo menos
um extremo de cada aresta de M
• Para quaisquer K e M em G tem-se
|M|  |K|
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Cobertura de arestas
• Em um grafo G, um conjunto g de arestas
cobre G se todo vértice em G é incidente a
pelo menos uma aresta em g. O conjunto g
é chamado cobertura de G.
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Observações
• G consiste na sua própria cobertura
• Uma árvore geradora é uma cobertura
• Um ciclo hamiltoniano, se ele existe, é uma
cobertura
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Cobertura minimal
• Conjunto de arestas que cobre G de forma
que a retirada de uma única aresta destrói
essa propriedade
Teoria dos Grafos
(INF 5037/INF2781)
a
b
d
c
CC/EC/PPGI/UFES
Exemplo
Garantir a alocação
de todas as disciplinas
da oferta de um curso
aos professores do
departamento
CC/EC/PPGI/UFES
Observações
• G possui uma cobertura se não possui vértices isolados
• Uma cobertura de um grafo com n vértices possui pelo
menos n/2 arestas
• Toda aresta pendente de um grafo faz parte de toda
cobertura de G
• Toda cobertura contém uma cobertura minimal
• Nenhuma cobertura minimal contém um ciclo. Assim,
uma cobertura minimal contém no máximo n-1 arestas
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Nº de cobertura de G
• Número de arestas da cobertura minimal
de menor tamanho de G
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Teorema
Uma cobertura g de um grafo é minimal
se e somente se
g não contém caminhos
de comprimento 3 ou mais
Teoria dos Grafos
(INF 5037/INF2781)
CC/EC/PPGI/UFES
Download

CC/EC/PPGI/UFES