A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

MATCHINGS Grafos e Teoria da Complexidade Prof. Fabio Tirelo.

Apresentações semelhantes


Apresentação em tema: "MATCHINGS Grafos e Teoria da Complexidade Prof. Fabio Tirelo."— Transcrição da apresentação:

1 MATCHINGS Grafos e Teoria da Complexidade Prof. Fabio Tirelo

2 Matchings  Seja G = ( V, E ) um grafo não-dirigido  Um matching em G é um conjunto M de arestas não adjacentes duas-a-duas  Quando nenhuma aresta puder ser incluída em M, dizemos que M é maximal  Vértices e arestas podem ser livres ou associados  Um matching perfeito não possui vértices livres  Exemplos: A F B E C D A F B E C D 2 5 1 6 7 3 4 5 1 2 5 1 6 7 3 4 5 1

3 Matchings...  Um matching M é máximo se |M| for máximo em G  Um caminho alternado intercala arestas livres e arestas associadas  Um caminho de aumento é um caminho alternado que inicia e termina em vértices livres  Se M for um matching e P for um caminho de aumento com relação a M, então M  P é um matching de cardinalidade |M| + 1  Um matching é máximo se não possuir caminhos de aumento

4 Matchings...  Seja G = ( X  Y, E ) um grafo bipartido  Um matching completo de X para Y é um matching em que nenhum vértice de X está livre  Condição suficiente:  Se existe k tal que d ( x )  k  d ( y ), para todo x  X, y  Y, então G possui um matching completo  Teorema de Hall:  Existe um matching completo de X para Y se e somente se |  ( S )|  | S | para todo S  X

5  Considere que cada aresta e de G receba um peso associado w e  O peso de um matching é dado por  Um matching M é um matching de peso máximo se wt ( M ) for máximo em G  Um matching M é um matching de peso mínimo se wt ( M ) for mínimo em G Matchings...

6 Problema da Atribuição Linear  Considere que há n funcionários (conjunto C ) que deverão ser escolhidos para executarem n tarefas (conjunto T )  w ij = capacidade do funcionário i executar a tarefa j  Determinar quais funcionários deverão ser escalados para cada tarefa de modo a obtermos a maior soma das capacidades possível  Grafo:  Vértices = C  T  Arestas = ( c, t ), c  C, t  T, com peso w ct  Solução: encontrar o matching de peso máximo

7 Algoritmo de Hopcroft-Karp  Entrada:Grafo bipartido G = ( U  W, E ) Matching M em G  Saída: Um caminho de aumento com relação a M ou uma prova de que M é máximo Oriente cada aresta e = (u,w) para obter um grafo dirigido D da seguinte maneira: Se e  M, então oriente e como (w,u) Se e  M, então oriente e como (u,w) Seja A = {x  V : x é um vértice associado com relação a M} Seja U’ = U  A e W’ = W  A Se houver um caminho em D de algum vértice de U’ para algum vértice de W’ Então caminho de aumento encontrado Senão M é um matching máximo

8 Matchings em Grafos Quaisquer  Vértice par/ímpar em caminho alternado P  Sejam u, v dois vértices pares em P ; se ( u, v )  E, então P  {( u, v )} contém um circuito chamado blossom  Gera-se um blossom comprimido quando um blossom B é reduzido a um único vértice b, e toda aresta ( x, y ) ( x  B, y  B ), é transformada em uma aresta ( b, y )  (Edmonds) Seja G B um grafo gerado pelo compressão de um blossom B de G ; G contém um caminho de aumento se e somente se G B contiver 123 4 5 612b6 B

9 Formação de Duplas  Dado um conjunto de pessoas, definir pares que possuam um determinado conjunto de características em comum ou complementares  Exemplos: mesma língua, mesmo curso, habilidades complementares, etc.  Objetivo: formar o maior número possível de pares com as mesmas características  Grafo:  Vértices: pessoas  Arestas: ( p, q ) se p e q possuírem as mesmas características  Solução: encontrar um matching máximo no grafo

10 Carteiro Chinês  Encontrar um caminho fechado que passe por todas as arestas de um grafo G = ( V, E )  W = { v  V : d ( v ) é ímpar}  Monte o grafo completo H = ( W, F ) associando à aresta ( u, v ) peso igual ao negativo do menor caminho de u para v em G  Determine o matching (perfeito) M de peso máximo em H  Para cada ( a, b )  M, duplique as arestas do menor caminho de a para b em G  O grafo resultante é euleriano


Carregar ppt "MATCHINGS Grafos e Teoria da Complexidade Prof. Fabio Tirelo."

Apresentações semelhantes


Anúncios Google