Escolar Documentos
Profissional Documentos
Cultura Documentos
AO DE ESTRUTURAS
DE VIZINHAN CA PARA O
PROBLEMA DA COLORA C
AO
ROBUSTA DE GRAFOS
IAGO AUGUSTO DE CARVALHO
12/05/2014
1 Introducao
Dado um grafo qualquer G = (V, E), um inteiro n e um custo c
uv
associado com todos os
pares uv associados com todos os vertices n ao adjacentes de G, a colorac ao robusta de vertices
consiste em associar uma cor C = (1, 2, . . . , n) para todo vertice de G de modo que nenhuma
aresta seja incidente sobre dois vertices coloridos com a mesma cor, e o custo total dos pares
de vertices da mesma cor e mnimo (Y a nes & Ramrez, 2003).
Na coloracao de vertices classica (GCP), o problema e colorir cada vertice de um grafo G
de forma que nenhuma aresta insira em dois vertices coloridos da mesma cor. Problemas de
assignacao de tarefas podem ser modelados como problemas de colorac ao de grafos, onde cada
tarefa esta associada com um vertice e arestas ligam os vertices que possuem tarefas sendo
executadas no mesmo instante, e cada cor representa uma pessoa ou equipe a ser designada
para dada tarefa. Nenhuma aresta pode ser incidente a dois vertices de uma mesma cor a
m de restringir que duas pessoas ou equipes quem respons aveis por mais de uma tarefa
simultaneamente .
Na pratica, tarefas sao muito sujeitas a atrasos e pode acontecer que duas tarefas designadas
para a mesma pessoa ou equipe tenham seus tempos sobrepostos, fazendo assim com que a
denicao das tarefas seja inviavel. Gerenciadores de tarefas interessados em uma assigna cao
robusta de equipes n ao sao sensveis a atrasos. Com este objetivo, pode-se associar pesos a
cada par de tarefas nao sobrepostas no tempo para indicar a probabilidade estimada que estas
tarefas se sobreponham em caso de atrasos, sendo assim formulado o problema da Colorac ao
Robusta de Vertices (RGCP) (Ya nes & Ramrez, 2003).
Aplicac oes desta extensao do problema classico de colorac ao de grafos v ao desde criac ao de
hor arios ate analise de clusters, abordando uma grande gama de problemas (Y a nes & Ramrez,
2003). Existem formulacoes matem aticas bin arias para este problema disponveis em Y a nes &
Ramrez (2003), Archetti et al, (2013), bem como propostas de heursticas para a soluc ao de
inst ancias de maior porte (Caramaia & DellOlmo, 2008; Gutierrez-Andrade et al, 2011; Wang
& Xu, 2011).
1
2 O problema
Primeiramente, vamos denir alguns aspectos pertinentes a colorac ao de grafos e alguns teore-
mas acerca do tema:
Denicao: Seja G um grapo sem loops. Uma k-colorac ao de G e uma designac ao de k
cores para os vertices em G de tal forma que vertices adjacentes s ao designados com diferentes
cores. Se G tem uma k coloracao, ent ao dizemos que G e k-colorvel. O n umero crom atico de
G, denotado por x(G), e o menor n umero k para o qual G e k-colorvel.
Usualmente, uma k-colorac ao e disposta como uma sequencia de n umeros 1, 2, 3, ..., k junto
a seus vertices. Esta denic ao e v alida somente para grafos sem self-loops, desde que qualquer
aresta tenha que ser adjacente a dois vertices de cores diferentes.
TEOREMA 1: Se G e um grafo simples e o maior grau de seus vertices e d, ent ao
x(g) d + 1.
Prova: Nos provamos este resultado por inducao matematica em n, o n umero de vertices de
G. Quando n 1, o grafo e K
1
, para o qual x(G) = 1 e d = 0, e o resultado e verdadeiro. Seja
G um grafo com n vertices, seja H o grafo obtido de G pela remoc ao de um vertice qualquer
v e as arestas incidentes a v. Desde que H tenha menos que n vertices e o seu grau maximo
seja d ou menos, ele segue o passo indutivo de que x(H) d +1, ou seja, H e (d +1) colorvel.
N os podemos obter uma (d+1)-colorac ao de G colorindo v por qualquer cor nao designada aos
(no m aximo) d vertices adjacentes a ele. Isto segue a premissa de que x(G) d + 1, e ent ao a
premissa e verdadeira para grafos com n vertices.
TEOREMA 2 (TEOREMA DE BROOKS): Seja G um grafo simples, conectado, cujo
maior grau de seus vertices e d. Se G n ao e um grafo ciclico com um n umero impar de vertices
nem um grafo completo, entao x(G) d.
O Teorema de Brooks, entretanto, n ao e satisfatorio para todas as inst ancias de grafos.
Em particular, seja um grafo G com poucos vertices de grau alto, entao um limite dado pelo
Teorema de Brooks e bem fraco. Por exemplo, se G e um grafo bipartido K
1,100
, ent ao x(G) = 2,
onde o Teorema de Brooks nos diz que x(G) 100.
Expandindo a colorac ao de grafos, podemos notar que f acil colorir um grafo n ao completo
G com mais do que x(G) cores. Dado um grafo G e sua colorac ao pr opria x(G) de acordo com
o Teorema de Brooks, podemos colorir G com x(G) + 1 cores simplesmente trocando a cor de
um vertice v V qualquer por uma cor igual a x(G) + 1, mantendo ainda a colorac ao valida.
E possvel denir k em um intervalo x(G) <= k <= |V | como o conjunto de n umero crom atico
valido com que e possvel colorir um grafo G.
2.1 Coloracao Robusta de Grafos
Dado um grafo G = (V, E), outro grafo G
= (V, E
, (u, v) /
E e E \ E
= . As arestas do grafo G
.
Podemos denir uma penalidade como o peso de uma aresta (u, v) E
. Podemos denir
uma penalidade ativa P
ij
quando f(u) = f(v), (u, v) E
.
2
Figura 1: Grafos E e E, respectivamente
Dado um mapa de penalidades P entre todo par de vertices uv V , tal que:
P
uv
= se uv E
P
uv
= c
uv
se uv / E
(1)
Diferentemente do problema cl assico de coloracao de grafos, n ao objetiva-se colorir o grafo
com o menor n umeros de cores possvel. Objetiva-se colorir o grafo G de forma a minimizar o
somat orio das penalidades ativas em G
.
2.2 Formulacao Matematica
1 C(i) = k
0 c.c.
i (1, ..., n) k (1, ..., c) (2)
y
ij
=
(3)
Logo ap os, podemos denir nosso modelo matem atico como
Min
(i,j)E
p
ij
y
ij
(4)
Sujeito a:
c
k=1
x
ik
= 1 i (1, ..., n) (5)
x
ik
+ x
jk
1 (i, j) E k (1, ..., c) (6)
x
ik
+ x
jk
1 y
ij
(i, j) E
e ativa ou n ao.
3
2.3 Objetivo
O objetivo deste trabalho e comparar estruturas de vizinhanca para o RGCP a partir de sua
aplica cao em variadas inst ancias, de forma a denir uma boa maneira de se realizar buscas
locais para otimizar o valor da func ao objetivo.
4
3 Referencial Te orico
Ele foi proposto inicialmente por Y a nes & Ramrez (2003) com uma formulac ao matematica e
a utiliza cao de um Algoritmo Genetico para resoluc ao de inst ancias de maior porte. Archetti
et al. (2011) prop os um Branch-and-Price e uma nova formulac ao matematica para o pro-
blema, baseada em uma formulac ao por representantes, que conseguiu resolver de forma exata
inst ancias maiores que a formulac ao Ya nes & Ramrez (2003).
Kong et al. (2003) prop os uma modica cao do Algoritmo Genetico inicial, introduzindo
etapas de busca local fora do framework padr ao do Algoritmo Genetico, obtendo resultados
superiores quando comparados a um Algoritmo Genetico sem a busca local.
Cruces et al. (2011) propos um Algoritmo de Colonia de Formigas para o problema, conse-
guindo resolver de forma eciente inst ancias de ate 90 vertices de forma aproximada.
Wang & Xu (2011) propuseram varias metaheursticas para o problema e as compararam,
denindo boas estrategias para cada tamanho de problema. Foram construdas, neste trabalho,
dentre elas um algoritmo de Hill Climbing, um Simulated Annealing, uma Busca Tabu, bem
como um Algoritmo Genetico e metaheursticas hbridas dentre estes metodos mencionados,
chegando a conclusao que Algoritmos Geneticos s ao a melhor soluc ao para inst ancias de pe-
queno porte e a Busca Tabu, juntamente ao algoritmo de Hill Climbing obtem as melhores
respostas para instancias de grande porte. Wang & Xu (2011) ainda propuseram as estruturas
de vizinhanca que ser ao utilizadas para comparacao neste trabalho, com pequenas modicacoes.
Contanto, por se tratar de um problema novo na literatura, n ao existem muitos estudos
sobre o tema, sendo ainda um assunto em aberto.
5
4 Metodologia
Tres estruturas de vizinhan ca sao propostas neste trabalho.
A primeira, denominada Troca de Vertices (TV), baseia-se na troca de cores entre dois
vertices no vetor de solucoes. A segunda, denominada Recoloracao Simples de Vertice (RSV),
baseia-se na troca de cores de um vertice da soluc ao, sendo recolorido com outra cor qualquer
m, sendo 0 <= m <= k. A terceira, denominada Melhoramento Baseado em k-Ciclos (MBK)
e baseada na denicao de ciclos de tamanho k em um grafo G, e a rotac ao de suas cores,
conseguindo recolorir k vertices em um unico movimento.
Todas estas estruturas de vizinhanca ser ao aplicadas em um algoritmo GRASP (Greedy
Randomized Adaptative Search Procedure), a m de denir qual estrutura de vizinhanca gera
melhores soluc oes.
Abaixo, segue uma descri cao mais detalhada de cada estrutura de vizinhanca.
4.1 Troca de Vertices
Esta estrutura foi baseada na estrutura Single Vertex Move de Wang & Xu (2011). A cada
itera cao, e feita a troca da cor de dois vertices simultaneamente. Denidos dois vertices u, v V ,
troca-se a cor dos dois vertices, ou seja, f(u) f(v) e f(v) f(u). Todas as permutac oes
possveis s ao realizadas, de forma a explorar toda a vizinhan ca. Sua complexidade e O(n
2
).
4.2 Recoloracao Simples de Vertice
Esta estrutura de vizinhanca e a mesma proposta por Wang & Xu (2011), denominada Enume-
rative Single Vertex Recoloring. Nesta estrutura de vizinhanca, e feita a troca das cores de cada
vertice por todas as cores possveis na solucao, como pode ser observado no algoritmo abaixo.
A cada iterac ao, somente um vertice tem sua cor trocada.
Algorithm 1: Recolorac ao Simples de Vertice
Data: c[colors], n, k, s*
for (i = 0 to n) do
for (j = 0 to k) do
aux = c[i];
c[i] = j;
s = avaliaSolucao();
if (s < s*) then
s* = s;
end
c[i] = aux;
end
end
Sua complexidade e O(n
2
k), sendo k o n umero de cores.
4.3 Melhoramento Baseado em K-Ciclos
Esta e a mesma vizinhanca proposta por Wang & Xu (2011), denominada Improvement Graph
Based K*-cycle. Ela consegue recolorir k vertices a cada itera cao.
O operador e denido sobre ciclos em G
, um K-ciclo l de G
6
corresponde a uma redesignac ao cclica de cores de l
i
para l
i+1
, para i = (K, K 1, ..., 1). Seja
w(l), denotado como peso de l, a reduc ao de peso total devido a uma redesiginacao cclica de
cores indicado por um K-ciclo l.
Encontrar um K-ciclo que maximiza os pesos em G