Teoria dos Grafos Aula 18

Documentos relacionados
Teoria dos Grafos Aula 14

Grafos: conceitos básicos e métricas

Teoria dos Grafos Aula 2

Teoria dos Grafos Aula 26

Redes Complexas Aula 2

Árvores: Conceitos Básicos e Árvore Geradora

MATEMÁTICA DISCRETA PARA ENGENHARIA DE COMPUTAÇÃO

Redes Complexas Aula 14

GRAFOS Aula 09 Coloração de Grafos Max Pereira

Redes Complexas Aula 2

Grafos Parte 1. Aleardo Manacero Jr.

Teoria dos grafos. Caminho euleriano e Hamiltoniano. Prof. Jesuliana N. Ulysses

Teoria dos Grafos Aula 8

Teoria dos Grafos Aula 2

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

Grafos: árvores geradoras mínimas. Graça Nunes

Teoria da Computação. Clique de um Grafo. Alexandre Renato Rodrigues de Souza 1

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

Grafos: componentes fortemente conexos, árvores geradoras mínimas

15 - Coloração Considere cada um dos grafos abaixo:

Grafos Hamiltonianos e o Problema do Caixeiro Viajante. Prof. Ademir Constantino Departamento de Informática Universidade Estadual de Maringá

Introdução à Teoria dos Grafos (MAC-5770) IME-USP Depto CC Profa. Yoshiko. Capítulo 3

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

Grafos - Introdução. Pedro Ribeiro 2014/2015 DCC/FCUP. Pedro Ribeiro (DCC/FCUP) Grafos - Introdução 2014/ / 32

Ciclos hamiltonianos e o problema do caixeiro viajante

Noções da Teoria dos Grafos

Teoria dos Grafos Aula 24

Algoritmos de aproximação - Problema do caixeiro viajante

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

Busca com informação e exploração. Inteligência Artificial. Busca pela melhor escolha. Romênia com custos em km. Busca com informação (ou heurística)

Teoria dos Grafos Aula 5

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

Teoria da Computação. Complexidade computacional classes de problemas

Teoria dos Grafos Aula 23

5COP096 TeoriadaComputação

Percursos em um grafo

Otimização em Grafos

Teorema 1 - Todo corte de arestas de um grafo conexo G contém pelo menos uma aresta em comum com qualquer árvore geradora de G. Exemplo 2 - Seja T:

Teoria dos Grafos. Edson Prestes

Definição e Conceitos Básicos

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

04 Grafos: caminhos e coloração SCC0503 Algoritmos e Estruturas de Dados II

Algoritmos em Grafos COM11087-Tópicos Especiais em Programação I

Teoria dos Grafos Aula 3

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

Teoria dos Grafos Aula 6

Percursos em um grafo

Aula 14. Aula de hoje. Aula passada

O Problema da 3- Coloração de Grafos

Teoria dos Grafos. Edson Prestes

Algoritmos de Aproximação para o Problema do Caixeiro Viajante

GRAFOS BUSCAS E MENOR CAMINHO. Prof. André Backes

Estruturas de Dados para Conjuntos Disjuntos: Union-find Letícia Rodrigues Bueno

Projeto e Análise de Algoritmos

Teoria dos Grafos. Valeriano A. de Oliveira, Socorro Rangel, Silvio A. de Araujo. Capítulo 5: Grafos Conexos. Departamento de Matemática Aplicada

Algoritmos de aproximação - Problema de cobertura por conjuntos

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

Teoria dos Grafos Aula 22

14 Coloração de vértices Considere cada um dos grafos abaixo:

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

x y Grafo Euleriano Figura 1

Teoria dos Grafos. Conjuntos de Corte e Conectividade

BCC204 - Teoria dos Grafos

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

Transcrição:

Teoria dos Grafos Aula 18 Aula passada Coloração Algoritmo guloso Número cromático Teorema das 4 cores Aula de hoje Clusterização (ou agrupamento) Algoritmo Variação

Clusterização Coleção de objetos Agrupar os objetos em conjuntos Objetos similares no mesmo conjunto Problema: Como agrupar os objetos da melhor maneira possível? Problema fundamental (muitas aplicações)

Exemplos Fotografias agrupamento de fotografias Biologia agrupamento de espécies Web agrupamento de páginas Redes sociais agrupamento em comunidades Estrelas agrupamento em galáxias Etc...

Medindo Similaridade Problema: como medir similaridade entre objetos? Definir uma função de distância entre os objetos valor da função é inversamente proporcional a similaridade (menor valor, mais similar) d(o i, o j ) : distância entre objetos o i e o j d(o i, o j ) > 0 se i!= j d(o i, o i ) = 0 d(o i, o j ) = d(o j, o i ) (simétrica)

Medindo Similaridade Função de distância depende do domínio Distância entre fotografias ex. número de pixels cuja diferença de cor é maior do que D Distância entre espécies ex. percentagem de gens do DNA que são diferentes Distância entre documentos Etc. ex. fração de palavras que são diferentes

Medindo a Clusterização K: número de conjuntos a serem produzidos Problema: como agrupar n objetos em K conjuntos? Existem muitas maneiras de agrupar n objetos em K conjuntos número exponencial Qual delas é a melhor maneira? Definir uma métrica para a qualidade da clusterização

Exemplo 16 objetos K = 3 (dividir em 3 conjuntos) C 1 C 2 C 3 Qual é a melhor clusterização? Depende!

Espaçamento de uma Clusterização Dado K conjuntos e as alocações C 1, C 2,..., C K Espaçamento: menor distância entre quaisquer dois objetos de grupos diferentes Melhor agrupamento é aquele que tem maior espaçamento Objetivo: produzir um agrupamento ótimo (maximizar o espaçamento)

Abstração e Algoritmo Abstração via grafos Vértices: objetos Pesos nas arestas: distância entre objetos Grafo completo com n vértices (objetos) Idéias para algoritmo? Guloso: agrupar objetos mais próximos primeiro Grupos são as componentes conexas

Algoritmo Começar com grafo totalmente desconexo Adicionar arestas em ordem crescente de peso mais próximo primeiro Parar quando tivermos exatamente k componentes conexos Cada passo (cada aresta) ou uni dois componentes conexos ou adiciona aresta dentro de um componente conexo

Conexão com MST Similaridade com o MST? Algoritmo de Kruskal Mesmo algoritmo, mas paramos antes Antes de adicionar as últimas k-1 arestas que Kruskal adicionaria Algoritmo equivalente: obter a MST e remover as K-1 mais pesadas MST to the rescue!

Análise do Algoritmo Complexidade? Obter a MST (em um grafo completo) + remover K-1 arestas Complexidade da MST Algoritmo produz agrupamento ótimo Componentes conexos obtidos pela remoção das K-1 arestas da MST constituem uma clusterização com K grupos com espaçamento máximo

Outra Métrica de Qualidade Dado K conjuntos e as alocações C 1, C 2,..., C K Muitas métricas para definir a qualidade da clusterização Outra métrica: maior distância entre dois objetos de um mesmo grupo Mede diâmetro de cada grupo Objetivo: produzir agrupamento ótimo (minimizar a métrica)

Dificuldade da Clusterização Métrica 1 Grupos cujos objetos diferentes estão distantes Maximizar espaçamento entre grupos Métrica 2 Grupos cujos objetos estão próximos Minimizar espaçamento intra grupos Métrica 1: algortimo polinomial (via MST) Métrica 2: não se conhece algoritmo polinomial (surpreendente!) Muitas heurísticas (ex. Algoritmo k-means)