Você está na página 1de 40

DEPARTAMENTO DE INFORMTICA

Teoria dos Grafos


Estudo de Problemas Clssicos

Prof. Dario Jos Aloise

Mossor, 19 de janeiro de 2015

PROBLEMAS CLSSICOS

rvore Geradora Mnima


Caminho mais Curto
Matching ou emparelhamento
Colorao
Caixeiro Viajante
Roteamento de Veculos

Emparelhamento
( Matching )

MATCHING OU EMPARELHAMENTO

Definio: Um matching em um grafo G um conjunto de arestas que no


formam loops e que no compartilham vrtices entre si.

Exemplo:

Um vrtice incidente s arestas de um matching M dito saturado por M.

Um matching perfeito de G satura todos os vrtices de G.

MATCHING OU EMPARELHAMENTO

O tamanho de um matching M igual a quantidade de arestas de M.

Um matching M de um grafo G maximal se toda aresta que no participa


de M incidente a alguma aresta em M.
Se M for o matching de maior cardinalidade de G ento ele chamado
matching mximo.

MATCHING OU EMPARELHAMENTO
Um caminho alternante em um matching M um caminho cujas arestas alternam entre
aquelas que esto em M e aquelas que no esto em M.

Um caminho alternante, cujos vrtices extremos no so saturados por M, um


caminho de aumento de M.

Quando M possuir um caminho de aumento P podemos trocar as arestas deste


caminho, substituindo aquelas que no esto em M pelas que esto. Isto ir aumentar
em uma (1) unidade o tamanho do matching.

Observao: o matching mximo caracterizado pela ausncia de caminhos de


aumento.

MATCHING OU EMPARELHAMENTO

Matching Mximo X Matching Maximal

Um matching M mximo se no existe um matching M' tal que |M | > |M |.


A propsito, um matching M maximal se no existe um matching M' do qual M
faa parte prpria (portanto, M maximal se no existe aresta a fora de M tal
que M+{a } tambm um matching).

MATCHING OU EMPARELHAMENTO

FUNDAMENTAO TERICA
Teorema 1 (Berge, 1957): Um matching M tem cardinalidade mxima em G se
e somente se G no possui caminho M-aumentante.

Teorema 2 (Hall, 1956): Seja G um grafo bipartido com bipartio X, Y . Ento


G admite matching que satura todo vrtice de X se e somente se |N(S)| |S|,
para todo S X.

Corolrio 1: Seja G um grafo bipartido com bipartio X , Y. Ento G admite matching


perfeito se e somente se |X| = |Y | e |N(S)| |S|, para todo S X.

Corolrio 2: Um grafo bipartido tem um matching perfeito se e somente se |N(S)| |S|,


para todo S V .

Observao: A prova de ambos os teoremas pode ser encontrada em http://www.cos.ufrj.br/~celina/cos742/jai99.pdf

MATCHING OU EMPARELHAMENTO
Matching Perfeito
Dado um grafo G= (V,E), o problema de matching encontrar o matching
mximo de G. Quando a cardinalidade do matching V 2 , afirmamos
que o matching completo ou perfeito [PAPADIMITRIOU (1998)]. Isto
todos os vrtices esto casados. Em grafos bipartidos G=(U,V,E), devemos
ter V = U para que um matching perfeito possa existir.

Ref.: Christos H. Papadimitriou and Kenneth Steiglitz Combinatorial Optimization: Algorithms and
Complexity, Publisher: Dover Publications; Unabridged edition ,1998.

MATCHING OU EMPARELHAMENTO

PRINCIPAIS ALGORITMOS:

Algoritmo Hngaro (Grafos bipartidos sem pesos)

Algoritmo de Kuhn (Grafos bipartidos com pesos)

Algoritmo de Edmonds (Caso geral sem pesos)

Observao: Maiores detalhes sobre os algoritmos pode ser encontrado em:


http://www.cos.ufrj.br/~celina/cos742/jai99.pdf

MATCHING OU EMPARELHAMENTO

APLICAES:

Problema de atribuio de pessoal

Dados n funcionrios e n posies numa empresa. Cada funcionrio est qualificado


para uma ou mais posies. possvel atribuir uma posio a cada funcionrio, de
modo que cada funcionrio ocupe exatamente uma posio na empresa? O objetivo
encontrar uma atribuio ou uma alocao que maximize a eficincia total dos
funcionrios.

Problema dos casamentos

Dada uma matriz onde cada entrada 0 ou 1, um conjunto de entradas independente se


no temos duas entradas na mesma linha ou na mesma coluna. Pede-se encontrar um
conjunto independente de entradas de valor 1 que tem cardinalidade mxima. Podemos
interpretar as linhas da matriz como sendo rapazes e as colunas como sendo moas. Uma
entrada i, j com valor 1 seria o caso de rapaz e moa compatveis. O objetivo casar um
nmero mximo de casais compatveis.

MATCHING OU EMPARELHAMENTO

APLICAES:

Problema de construo de amostras

Um vendedor de brinquedos educativos possui em estoque brinquedos de vrias


formas geomtricas (cubos, pirmides, etc.), cada qual fabricado em vrias cores.
O vendedor quer carregar consigo o menor nmero de objetos tal que cada cor e
cada forma estejam representadas pelo menos uma vez.
Observao: Com base nesta aplicao pode-se provar a equivalncia entre o
problema de cobertura de cardinalidade mnima e o problema de emparelhamento
de cardinalidade mxima.

OUTROS PROBLEMAS

Alocao de tarefas
Elaborao de Horrios
K-servos
Empacotamento
Clique mxima
Cobertura de Vrtices
OTIM-SPT

Um exemplo de Aplicao

Otimizao do Corte do Layout : nfase


na Indstria de Confeces

MCC - Teoria dos Grafos

14

UM EXEMPLO DE APLICAO
Otimizao do Corte do Layout na
Indstria de Confeces

Objetivo

Encontrar uma seqncia tima de corte das


peas do enfesto, de forma a minimizar o
deslocamento total (ou percurso) do brao
mecnico (rob) que efetua o corte e atender
o mais rpido possvel o setor de montagem.

Processo de Produo

Exemplo de enfesto...

Problema do Encaixe

Um exemplo de Layout

Figura sem os rtulos

Aplicao de Grafos

Problema de Percurso:
O incio dos Problemas de Roteamento em Arcos

Leonhard Euler (1736) - Publicou o primeiro artigo em grafos


C

As pontes de Knigsberg e o multigrafo associado.

Construindo um Grafo Euleriano

Teorema - O nmero de vrtices mpares


de qualquer grafo conexo par.
Edmonds & Johnson (1973) props

Algoritmo 1-Matching
Complexidade: O ( n )

Problema de Matching

Problema do Carteiro Chins:===


O Problema do Carteiro Chins um problema de roteamento
onde se pretende achar um percurso fechado
(circuito) de
comprimento mnimo que passa por cada aresta de um grafo pelo
menos uma vez.=====================================
2

4
5

(b)

Formulao Matemtica do PCC:


Min Z cij xij

i j

iV jV

s.a :

x x
jV

ij

jV

ji

(i 1,

xij x ji 1
xij 0 e inteiro

V)

ij E

,
,

ij E

cij = custo de percorrer a aresta ij ;


xij = nmero de vezes que a aresta ij percorrida de i para j.

Inter-relacionamento entre
Matching e o PCC:

Algoritmo do Carteiro Chins [Edmonds (1973)

Matching Perfeito

Abordagem Exata:

Continuao:

Formulao Matemtica do Problema do Layout :


V

VO

VO

Min Z lij xij d rs yrs


i 1 j 1

{i j, r s }

r 1 s 1

s.a. :

xik

xik

i 1 ( k )

i 1 ( k )

j ( k )

xkj 0 , p/ k VE

rVO

xij x ji 1
xij , yij {0,1}

rk

)(

j ( k )

, i, j V

xkj

sVO

ks

) 0 , p/ k VO

Abordagem Heurstica:
O mtodo exato embora fornea a soluo tima
do problema quanto a minimizar o percurso
(tempo) de corte das peas no layout, do ponto
de vista prtico,no satisfaz a condio de
atender o mais rpido possvel o setor de
montagem.
O objetivo inclui, portanto, a prioridade de cortar
peas inteiras com a finalidade acima.
O problema passa agora a ser semelhante ao do
Carteiro Rural, o qual NP-difcil.

Heursticas Propostas:
HEURSTICA I
(sem prioridade de aresta ou vrtice)

Dados iniciais
1. Posio original do brao mecnico,
2. LAYOUT desenhado, com dimenses e referncias,
3. GRAFO ASSOCIADO;

ETAPA 0 PROCEDIMENTOS DE INICIALIZAO


Iniciar de um vrtice qualquer no grafo G=(V,E,c), denominando-o de ATIVO.
ETAPA 1 LAO DE CONTINUIDADE

ENQUANTO existir vrtice de grau FAA


1. Percorrer cortando a maior aresta associada ao vrtice ATIVO
1. SE encontrar um vrtice de grau , ENTO
Procurar o vrtice ativo (vrtice com alguma aresta associada) mais
prximo ao vrtice de grau (zero) .
SENO FINALIZE.
FIM DO ENQUANTO

HEURSTICA 2
(com prioridade: vrtice denso por arestas)

Dados iniciais
Posio original do brao mecnico,
LAYOUT desenhado, com dimenses e referncias,
GRAFO ASSOCIADO;
ETAPA 0 PROCEDIMENTOS DE INICIALIZAO
Iniciar de um vrtice qualquer denso por arestas no grafo G=(V,E,c),
denominado de vrtice ATIVO.
ETAPA 1 LAO DE CONTINUIDADE
REPITA
ENQUANTO existir aresta em ATIVO FAA

Percorrer cortando uma aresta de maior custo associada ao vrtice ATIVO.

Fixar ou tornar em evidncia a figura (pea) de menor ndice associada a


aresta citada.

Cortar a figura (pea) em evidncia, totalmente


FIM DO ENQUANTO

Procurar por um vrtice mais prximo, denominado-o de ATIVO (no


necessariamente percorrendo pelas arestas do Grafo Problema do Carteiro
Rural).
AT G=;

HEURSTICA 3
(com prioridade: vrtice denso por figuras)

Dados iniciais
Posio original do brao mecnico,
LAYOUT desenhado, com dimenses e referncias,
GRAFO ASSOCIADO;
ETAPA 0 PROCEDIMENTOS DE INICIALIZAO
Iniciar de um vrtice qualquer denso, isto , com um a quantidade razovel de
figuras (peas) associadas no grafo G=(V,E,c), denominando-o de ATIVO.
ETAPA 1 LAO DE CONTINUIDADE
REPITA
ENQUANTO existir figura associada ao vrtice ATIVO FAA

Percorrer cortando uma figura (pea), iniciando o corte pela aresta de maior
custo associada a ela.

SE existir mais de uma figura associada a essa aresta, ENTO


considerar em primeiro lugar aquela de menor ndice.

SE grau(ATIVO) = 0 e existir figura


por

um

vrtice

mais

prximo

parcialmente cortada, ENTO procurar

dentre

aqueles

pertencentes

as

figuras

associadas ao vrtice ATIVO e continuar o percurso de corte a partir desse


novo vrtice at que a figura fique totalmente cortada.
FIM DO ENQUANTO

SE grau (vrtice ATUAL 0 ), ENTO faa ATUAL = ATIVO.


SENO procurar por um vrtice de grau 0 mais prximo do vrtice
atual.

AT QUE G = ;

Ps-otimizao:
Caso 1 - O brao mecnico termina o procedimento de corte e volta ao ponto de partida (origem). Ento
a soluo tima permanecer como a do Carteiro Chins sobre o grafo Euleriano. E o matching perfeito
de peso mnimo refletir fielmente o deslocamento adicional mnimo do brao mecnico (rob).

Caso 2 - O rob ao terminar a ltima pea a ser cortada no retorna ao ponto de origem. Ento
deveremos comparar e retirar a maior das arestas encontradas pelo matching perfeito de peso mnimo e
aquela maior aresta encontrada por um dos diversos matching maximais, mas de tal forma que a
contribuio para o deslocamento do rob fique a menor possvel. Isto implica na seguinte formulao
matemtica para esta situao de parada do rob:

c ( *) min cij max i1i2


i1i2
ij

Concluses e Sugestes:
Esta pesquisa teve por mrito mostrar o quanto
importante tambm o corte do Encaixe ou Layout do
enfesto na Indstria de confeces;
A verificao que o timo nem sempre obtido atravs
do matching perfeito de peso mnimo;
A apresentao de algoritmos aproximativos polinomiais
para a resoluo do problema na prtica.
Como sugesto fica o desenvolvimento de um
trabalho que reconhea os pontos do grafo pelo simples
scanneamento do Encaixe.

Restries:

a faca no pode furar o meio


a faca no pode voltar
bordas com restries
os retalhos no podem ser cortados
h necessidade de priorizar peas no corte
h restries para prender o enfesto
a faca no trabalha com grandes angulosidades
etc.

FIM

Reptiles, 1943. MC Escher (1898-1972).