BCC204 - Teoria dos Grafos

Documentos relacionados
BCC204 - Teoria dos Grafos

Casamento em GB. Casamento em Grafos. Notas. Teoria dos Grafos - BCC204, Casamento em Grafos. Notas. Descrição

BCC204 - Teoria dos Grafos

BCC204 - Teoria dos Grafos

BCC204 - Teoria dos Grafos

Conteúdo. Histórico. Notas. Teoria dos Grafos BCC204. Notas. Notas. 1736: Euler e as Pontes de Königsberg

A resposta para este problema envolve a partição do conjunto de arestas de tal forma que arestas adjacentes não pertençam a um mesmo conjunto.

Grafos e Algoritmos Raimundo Macêdo. Teorema de Hall (Prova por Indução)

Gabriel Coutinho DCC035 - Pesquisa Operacional Lista 6

PCC173 - Otimização em Redes

PCC104 - Projeto e Análise de Algoritmos

BCC204 - Teoria dos Grafos

Pesquisa Operacional

A resposta para este problema envolve a partição do conjunto de arestas de tal forma que arestas adjacentes não pertençam a um mesmo conjunto.

Teoria dos Grafos. Cobertura, Coloração de Arestas, Emparelhamento

Aula 19: Lifting e matrizes ideais

Aula 20: Revisão Otimização Linear e Inteira Túlio A. M. Toffolo

Problemas de Afectação (PA)

Lista de Exercícios 02

Problema de Designação. Fernando Nogueira Problema de Designação 1

Fábio Protti - UFF Loana T. Nogueira - UFF Sulamita Klein UFRJ

Coloração de Mapas. O Grafo. Notas. Teoria dos Grafos - BCC204, Coloração de Grafos. Notas

Análise e Projeto de Algoritmos

Resumo. O Problema da Atribuição de Tarefas pode ser traduzido para a Teoria dos Grafos da seguinte

Problema de designação

Teoria dos Grafos Aula 3

Em vários problemas, é preciso particionar os vértices de um grafo em conjunto de vértices independentes.

Noções da Teoria dos Grafos

Uma Introdução Sucinta à Teoria dos Grafos

MATEMÁTICA DISCRETA. Patrícia Ribeiro 2018/2019. Departamento de Matemática, ESTSetúbal 1 / 47

Teoria dos Grafos Aula 2

Noções da Teoria dos Grafos. André Arbex Hallack

Problema de Transporte (Redes) Fernando Nogueira Problema de Transporte 1

Instituto de Computação - Universidade Federal Fluminense Teoria dos Grafos - Lista de exercícios

Programação Matemática

Emparelhamento em Grafos Algoritmos e Complexidade

Exemplo de um problema de transporte, com 3 fontes e 3 destinos. Custos unitários de transporte para o exemplo de problema de transporte

Lista de Exercícios2

TGR BCC Representação Computacional de Grafos. Prof. Ricardo José Pfitscher

Teoria dos Grafos. Fluxo Máximo em Redes

PESQUISA OPERACIONAL Problema de Designação. Professor Volmir Wilhelm Professora Mariana Kleina

Instituto de Computação - Universidade Federal Fluminense Teoria dos Grafos - Lista de exercícios

Teoria dos Grafos. Valeriano A. de Oliveira, Socorro Rangel, Silvio A. de Araujo. Departamento de Matemática Aplicada

Teoria dos Grafos. Coloração de Vértices

ESTRUTURAS DISCRETAS (INF 1631) GRAFOS. 1. O que é um grafo? Defina um grafo orientado. Defina um grafo não-orientado.

O Método Simplex. Prof. Gustavo Peixoto Silva Departamento de Computação Univ. Federal de Ouro Preto

GRAFOS Aula 09 Coloração de Grafos Max Pereira

Problema de Transportes

Lógica do Método Simplex: Passar de Solução Básica Factível para outra Solução Básica, buscando melhorar a Função Objetivo e manter factibilidade

DESIGNAÇÃO. Introdução

UNIVERSIDADE FEDERAL DO RIO DE JANEIRO DEPARTAMENTO DE CIÊNCIAS DA COMPUTAÇÃO. 5 a Lista de Exercícios

Teoria dos Grafos Aula 18

GRAFOS Aula 08 Árvore Geradora Mínima: Algoritmos de Kruskal e Prim-Jarnik Max Pereira

Melhores momentos AULA 24. Algoritmos p.906/953

Pesquisa Operacional Programação em Redes

Branch-and-Bound para problemas de Otimização Combinatória

Aula 20: Matrizes (Parte 2)

Teoria dos Grafos Aula 2

GRAFOS Aula 03 Representações de Grafos Max Pereira

Trabalho final de Teoria dos Grafos: O problema de coloração de vértices de grafos. Alessander Botti Benevides.

CONCEITOS BÁSICOS EM GRAFOS

Fluxo em Redes. > Fluxo em Redes Modelando com Fluxo Máximo 1/20

Problemas de Fluxo em Redes

Teoria dos Grafos Aula 14

Reduções de Problemas Difíceis

GRAFOS Aula 05 Algoritmos de percurso: busca em largura e profundidade Max Pereira

Instituto de Computação Universidade Federal Fluminense. Notas de Aula de Teoria dos Grafos. Prof. Fábio Protti Niterói, agosto de 2015.

Lista de Exercícios I - Gabarito

5COP096 TeoriadaComputação

Transcrição:

BCC204 - Teoria dos Grafos Marco Antonio M. Carvalho (baseado nas notas de aula do prof. Haroldo Gambini Santos) Departamento de Computação Instituto de Ciências Exatas e Biológicas Universidade Federal de Ouro Preto 30 de janeiro de 2017 Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 1 / 27

Avisos Site da disciplina: http://www.decom.ufop.br/marco/ Lista de e-mails: bcc204@googlegroups.com Para solicitar acesso: http://groups.google.com/group/bcc204 Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 2 / 27

Avisos Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 3 / 27

Conteúdo 1 Introdução 2 Casamento em Grafos Bipartidos 3 O Problema de Atribuição 4 O Método Húngaro Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 4 / 27

Casamento em Grafos Descrição Dado um grafo, um casamento (também conhecido como emparelhamento, acoplamento ou matching) é um conjunto independente de arestas, ou seja, um conjunto de arestas sem vértices em comum. Exemplos de casamentos em grafos. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 5 / 27

Casamento em Grafos Casamento Maximal e Casamento Máximo Um casamento é considerado maximal caso a adição de alguma aresta descaracterize o casamento. Um casamento é considerado máximo caso possua o maior número de arestas possível, ou seja, caso seja o maior casamento possível no grafo. Exemplo de grafo, casamento maximal e casamento máximo. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 6 / 27

Casamento em Grafos n-casamento Uma generalização do conceito de casamento considera o caso no qual todos os vértices possuem o mesmo grau n > 1 chamado de n-casamento. Exemplo de grafo e um 2-casamento. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 7 / 27

Casamento em Grafos Casamento Perfeito Diz-se que um vértice que faz parte do casamento é um vértice saturado (ou acoplado). Caso contrário, o vértice é não saturado (ou não acoplado) Um casamento perfeito (ou completo) ocorre quando todos os vértices são saturados. Exemplo de grafo e casamentos perfeito. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 8 / 27

Cadeia M-aumentante Definição Considere um grafo G e um casamento M. Uma cadeia M-aumentante é um percurso entre dois vértices não saturados por M que alternam arestas de M e arestas de G \ M. Melhoramento Sempre que encontrarmos uma cadeia M-aumentante poderemos aumentar o casamento. De fato, o modo acima é o único modo de melhorar um casamento. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 9 / 27

Cadeia M-aumentante Definição Considere um grafo G e um casamento M. Uma cadeia M-aumentante é um percurso entre dois vértices não saturados por M que alternam arestas de M e arestas de G \ M. Melhoramento Sempre que encontrarmos uma cadeia M-aumentante poderemos aumentar o casamento. De fato, o modo acima é o único modo de melhorar um casamento. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 9 / 27

Cadeia M-aumentante Definição Considere um grafo G e um casamento M. Uma cadeia M-aumentante é um percurso entre dois vértices não saturados por M que alternam arestas de M e arestas de G \ M. Melhoramento Sempre que encontrarmos uma cadeia M-aumentante poderemos aumentar o casamento. De fato, o modo acima é o único modo de melhorar um casamento. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 9 / 27

Exercício 1 Considerando o grafo abaixo, crie: Um casamento maximal; Dois casamentos máximos e perfeitos. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 10 / 27

Casamento em Grafos Bipartidos Y Definição Seja G um grafo bipartido com uma partição (X, Y ) dos vértices. Dizemos que temos um casamento de X em Y quando um acoplamento de G satura Y (não necessariamente X ). Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 11 / 27

Casamento em Grafos Bipartidos S N(S) Teorema do Casamento (Hall,1935) Seja G um grafo bipartido com uma partição de vértices {X, Y }. Então G tem um casamento que satura X se e somente se N(S) a S S X. a N(S) indica o conjunto de vértices adjacentes aos vértices do conjunto S. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 12 / 27

O Problema de Atribuição Definição Consiste em determinar a maneira ótima de se atribuir n tarefas à n agentes de modo que nenhuma tarefa deixe de ser executada e que todos os agentes tenham uma tarefa designada a eles. Atribuir o melhor executor à melhor tarefa. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 13 / 27

O Problema de Atribuição Exemplo: Em uma fábrica temos 3 operários e 3 máquinas. Pelo conhecimento e pelas características de cada operário o custo por hora é diferente, segundo a atribuição das máquinas a cada operário. Qual a atribuição de menor custo? Operário\Máquina 1 2 3 1 3 5 6 2 5 4 2 3 2 3 4 3 5 6 5 4 2 2 3 4 Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 14 / 27

Exemplo Operário\Máquina 1 2 3 1 3 5 6 2 5 4 2 3 2 3 4 3 5 6 5 4 2 2 3 4 Ao atribuir uma máquina para cada operário estamos tomando 3 elementos da matriz tais que: Cada elemento está em uma linha diferente; Cada elemento está em uma coluna diferente; Cada linha e coluna contém exatamente 1 elemento. Uma solução 1 : x 1,1, x 2,2, x 3,3, com custo 11. Solução ótima? 1 x i,j indica a seleção do elemento da linha i e coluna j. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 15 / 27

O Método Húngaro Definição Origem em 1935, por H. W. Kuhn, porém, inventado em 1931, pelos húngaros E. Egerváry e D. König; Resolve o problema de atribuição em tempo polinomial (normalmente O(n 3 )); Utiliza transformações na matriz de custo. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 16 / 27

O Método Húngaro Teorema 1 Se um número real é somado ou subtraído de todas as entradas de uma linha ou coluna, então uma alocação ótima para a matriz resultante é também uma alocação ótima para a matriz original. Ao diminuir as linhas e colunas, estamos comparando-as com valores relativos. 3 5 6-3 5 4 2 2 3 4 0 2 3 5 4 2 2 3 4 0 2 3 5 4 2 2 3 4 Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 17 / 27

Método Húngaro - Sumário Passo 1 Identifique o mínimo de cada linha e subtraia; Passo 2 Identifique o mínimo de cada coluna e subtraia; Passo 2a Identifique o mínimo de riscos que cubra todos os zeros; Passo 2b Sem solução viável (nr. riscos<n): pegue o o valor mínimo das entradas não riscadas e subtraia dessas entradas; para entradas cobertas por dois riscos adicione esse valor; Passo 2c Sem solução viável novamente, então volte para 2a; Caso contrário, vá para o Passo 3; Passo 3 Identifique a solução ótima na solução viável encontrada. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 18 / 27

O Método Húngaro Completando para as linhas e em um passo seguinte ajustando as colunas: 3 5 6 3 5 4 2 2 2 3 4 2 0 2 3 3 2 0 0 1 2-1 0 1 3 3 1 0 0 0 2 A solução ótima fica evidente. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 19 / 27

O Método Húngaro Completando para as linhas e em um passo seguinte ajustando as colunas: 3 5 6 3 5 4 2 2 2 3 4 2 0 2 3 3 2 0 0 1 2-1 0 1 3 3 1 0 0 0 2 A solução ótima fica evidente. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 19 / 27

O Método Húngaro Completando para as linhas e em um passo seguinte ajustando as colunas: 3 5 6 3 5 4 2 2 2 3 4 2 0 2 3 3 2 0 0 1 2-1 0 1 3 3 1 0 0 0 2 A solução ótima fica evidente. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 19 / 27

O Método Húngaro Outro caso: 2 6 7 2 3 6 10 3 2 2 4 2 0 4 5 0 3 7 0 0 2-2 0 4 3 0 3 5 0 0 0 Solução infactível, mais zeros necessários. Continuando... Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 20 / 27

Factibilidade 0 4 3 0 3 5 0 0 0 Teorema de König Sempre que se conseguir riscar todos os zeros da matriz n n com menos de n riscos a solução é infactível. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 21 / 27

Factibilidade 0 4 3 0 3 5 0 0 0 Teorema de König Sempre que se conseguir riscar todos os zeros da matriz n n com menos de n riscos a solução é infactível. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 21 / 27

Factibilidade (cont. i) Operação de Factibilização: 0 4 3 0 3 5 0 0 0 Pega-se o valor do menor elemento não coberto e diminui-se em todos os elementos não cobertos. Para elementos cobertos em posições onde passam duas linhas adiciona-se esse valor. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 22 / 27

Factibilidade (ex.:) 0 4 3 0 3 5 3 0 0 0 0 1 0 0 0 2 3 0 0 Matriz Original: 2 6 7 3 6 10 2 2 4 Solução com custo 12. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 23 / 27

Factibilidade (ex.:) 0 4 3 0 3 5 3 0 0 0 0 1 0 0 0 2 3 0 0 Matriz Original: 2 6 7 3 6 10 2 2 4 Solução com custo 12. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 23 / 27

Factibilidade (ex.:) 0 4 3 0 3 5 3 0 0 0 0 1 0 0 0 2 3 0 0 Matriz Original: 2 6 7 3 6 10 2 2 4 Solução com custo 12. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 23 / 27

O Método Húngaro Ajustes... O método húngaro só resolve problemas de minimização em matrizes quadradas; Porém, o algoritmo pode ser adaptado para problemas de maximização, bastando multiplicar a matriz de custos por -1; Além disto, matrizes não quadradas podem se tornar quadradas pela inclusão de linhas/colunas zeradas. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 24 / 27

Exercício 18 11 7 9 13 7 4 9 15 14 6 12 13 17 18 13 10 12 15 17 12 9 9 14 14 Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 25 / 27

Exercício Sobre o grafo de Petersen (P), acima representado, responda: 1 Encontre um casamento maximal de P com 3 arestas. 2 Use cadeias aumentantes para encontrar um casamento maximal de P com 4 arestas. 3 Encontre um casamento máximo de P. Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 26 / 27

Dúvidas? Marco Antonio M. Carvalho (UFOP) BCC204 30 de janeiro de 2017 27 / 27