Proposta de um Algoritmo para Problema de Satisfação de...
Transcript of Proposta de um Algoritmo para Problema de Satisfação de...
![Page 1: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/1.jpg)
Proposta de um Algoritmo para Problema de Satisfação
de Restrição Distribuída
Formando: Daniel Moser TralamazzaOrientador: Jomi Fred Hübner
![Page 2: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/2.jpg)
Roteiro
• Introdução• Fundamentação• Desenvolvimento• Resultados• Conclusão
![Page 3: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/3.jpg)
Contexto
• Problemas de satisfação de restrição• Algoritmos distribuídos• Sistemas Multiagentes (SMA)
![Page 4: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/4.jpg)
Objetivos
• Implementar o algoritmo AWC proposto por Makoto Yokoo
• Criar um algoritmo derivado que utilize novas heurísticas
![Page 5: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/5.jpg)
Constraint SatisfactionProblems (CSP)
• Simples representação (TSANG 1993):– Conjunto de variáveisvariáveisvariáveisvariáveis x1, x2,... xn com valoresvaloresvaloresvalores v1,
v2,... vn pertencentes à domíniosdomíniosdomíniosdomínios D1, D2,... Dnnão vazios;
– Conjunto de restriçõesrestriçõesrestriçõesrestrições C1, C2,... Cn sobre os valores das variáveis.
• Em geral NP-Completos (YOKOO 2001)• Capaz de modelar diversos problemas na IA:
– Alocação de recursos;– Coloração de grafos;– Agendamento de tarefas.
![Page 6: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/6.jpg)
Exemplos
x2
x1
x4
x3
![Page 7: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/7.jpg)
Distributed CSP (DCSP)
• Pioneiro: Makoto Yokoo• Distribuição da informação entre agentes• Paralelismo: vantagens e desvantagens
![Page 8: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/8.jpg)
Asynchronous Backtracking(ABT)
• Assíncrono• Ordenação (estática) dos agentes• Completo
![Page 9: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/9.jpg)
Asynchronous Weak Commitment (AWC)
• Derivado do ABT• Ordenação dinâmica dos agentes
(prioridade)• Heurística para escolha de valores
![Page 10: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/10.jpg)
Funcionamento do AWC
0
0
2
1 1
2
0
0
1
0 0
0
0
0
0
0
![Page 11: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/11.jpg)
Desenvolvimento
• Utilização de um framework específico para DCSP desenvolvido pelo Grupo de Pesquisa de DCSP da FURB
• Implementado em Java Sun ®
![Page 12: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/12.jpg)
Framework
![Page 13: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/13.jpg)
Classe BaseAlg
![Page 14: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/14.jpg)
Desenvolvimento AWC
• Implementado a partir do pseudo-código original desenvolvido por Yokoo(2001)
![Page 15: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/15.jpg)
Classe AWC
![Page 16: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/16.jpg)
Heurística Min-Conflict
![Page 17: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/17.jpg)
Funcionamento do protótipo: Criação de launchers
![Page 18: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/18.jpg)
Execução distribuída
![Page 19: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/19.jpg)
Funcionamento do protótipo: Criação de agentes
![Page 20: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/20.jpg)
Avaliação do AWC
• Problema das n-Rainhas (40)• Número de computadores variando de
1 a 40• Configuração:
– Rede 100Mbit– Pentium 1GHz, 256 RAM– Conectiva Linux 9
![Page 21: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/21.jpg)
Resultado AWC
![Page 22: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/22.jpg)
Protótipo
• Heurísticas propostas:– Valores menos utilizados;– Ordenação de restrições.
• Não armazenamento de nogoods
![Page 23: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/23.jpg)
Conclusão
• O AWC foi implementado com sucesso• A garantia de completude AWC causa
grande perda de desempenho• Novas heurísticas para escolha de
valores aumentaram o desempenho
![Page 24: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/24.jpg)
Extensões
• DCSP dinâmicos• Domínios infinitos• Novos algoritmos e heurísticas• Segurança da comunicação e
exposição do problema• Tornar os agentes “menos” reativos
![Page 25: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/25.jpg)
Referencias Bibliográficas• YOKOO, M. Distributed constraint satisfaction. Berlin:
Springer, 2001.
• TSANG, E.Foundations of constraint satisfaction.London: Academic Press, 1993.
![Page 26: Proposta de um Algoritmo para Problema de Satisfação de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2004-1danielmtralamazz… · Asynchronous Backtracking (ABT) • Assíncrono](https://reader034.fdocuments.net/reader034/viewer/2022042314/5f0266217e708231d4041566/html5/thumbnails/26.jpg)
Demonstração
• AWC– Uma máquina com 4-Rainhas– 20 máquinas com 40-Rainhas
• AWC sem nogood– 20 máquinas com 40-Rainhas
• AWC sem nogood e least used values– 20 máquinas com 40-Rainhas