Coloração Equilibrada de Arestas

685 visualizações

Publicada em

0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
685
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
7
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Coloração Equilibrada de Arestas

  1. 1. Coloração Equilibrada de Arestas Afonso Henrique Sampaio Henrique Chevreux Thiago Fioravante
  2. 2. Apresentação do problema <ul><ul><li>Dada uma coloração própria, pretende-se obter uma coloração com distribuição mais equilibrada entre as cores utilizadas(ie, busca-se equilibrar a quantidade de elementos em cada matching) </li></ul></ul><ul><ul><li>Aplicações:  </li></ul></ul><ul><ul><ul><li>Alocação de professores a turmas buscando minimizar o número de períodos requeridos para ministrar todas aulas necessárias </li></ul></ul></ul><ul><ul><ul><li>Alocação de canais de comunicação em redes sem fio </li></ul></ul></ul>
  3. 3. Entrada <ul><ul><li>Entrada consiste em um grafo propriamente colorido(potencialmente não-equilibrado) </li></ul></ul>
  4. 4. Saída <ul><ul><li>Saída é o grafo de entrada com coloração própria e equilibrada </li></ul></ul>
  5. 5. Definindo equilíbrio <ul><ul><li>Dada uma k- coloração própria, é sempre possível obter outra  k - coloração própria que usa cada cor no mínimo piso(|E|/k) e no máximo  teto(|E|/k) </li></ul></ul><ul><ul><li>Portanto, a diferença entre a quantidade de vezes que cada cor é utilizada(no equilíbrio) é no máximo 1 - ou então 0 quando  piso(|E|/k)   =   teto(|E|/k) .  </li></ul></ul><ul><ul><li>No exemplo anterior: </li></ul></ul><ul><ul><ul><li>|E| = 18 </li></ul></ul></ul><ul><ul><ul><li>  k = 7 </li></ul></ul></ul><ul><ul><ul><li>piso(|E|/k) = piso(18/7) = 2 </li></ul></ul></ul><ul><ul><ul><li>teto(|E|/k) = teto(18/7) = 3 </li></ul></ul></ul>
  6. 6. Não-equilibrada <ul><ul><li>|Laranja| = 1; |Azul-escuro| = 2; |Verde-claro| = 3; |Verde-escuro| = 3; |Vermelho| = 3; |Rosa| = 3; |Azul-claro| = 3;  </li></ul></ul>
  7. 7. Equilibrada <ul><ul><li>|Laranja| = 2; |Azul-escuro| = 2; |Verde-claro| = 3; |Verde-escuro| = 3; |Vermelho| = 3; |Rosa| = 3; |Azul-claro| = 2;  </li></ul></ul>
  8. 8. Implementação <ul><ul><li>Estruturas de dados implementadas </li></ul></ul><ul><ul><ul><li>Grafo armazenado em matriz de adjacências ponderada(o peso é a cor atual da aresta) </li></ul></ul></ul><ul><ul><ul><li>Cada matching é uma lista de arestas </li></ul></ul></ul><ul><ul><ul><li>Para cada vértice há uma lista das cores representadas naquele vértice </li></ul></ul></ul>
  9. 9. |V| = 10; |E|=40; k=10; limites=[4, 4]
  10. 10. antes da troca: |roxo| = 1; |verde-claro| = 5
  11. 11. depois da troca: |roxo| = 2; |verde-claro| = 4
  12. 12. antes da troca: |roxo| = 2; |verde-escuro| = 5
  13. 13. depois da troca: |roxo| = 3; |verde-escuro| = 4
  14. 14. antes da troca: |roxo| = 3; |laranja| = 5
  15. 15. caminhos de Kempe para cores laranja e roxo
  16. 16. construindo caminho de Kempe(começa com (1, 4))
  17. 17. insere aresta (4, 2) no caminho
  18. 18. insere aresta (2, 7) no caminho
  19. 19. insere aresta (1, 9) no outro extremo do caminho
  20. 20. insere aresta (9, 8) no caminho
  21. 21. inverte as cores no caminho de Kempe
  22. 22. coloração equilibrada, após todas as trocas
  23. 23. grafo original
  24. 24. Próximos passos <ul><ul><li>Testar o programa para instâncias maiores </li></ul></ul><ul><ul><li>Avaliar estratégias ou estruturas mais eficientes </li></ul></ul><ul><ul><li>Comparar execução para estratégias diferentes de implementação(cada uma utilizando uma estrutura em particular) </li></ul></ul>

×