Agentes adaptativos às
Normas externas
N
Estudo de Caso: StockAgents
Ricardo Gralhoz
[email protected]
Índice
• Motivação
N
• NoA – A Normative Agent Architecture
• Apresentação do Estudo de Caso
– Framework
– Andamento
• Conclusão
Laboratório de Engenharia de Software – PUC-Rio
Motivação
Contexto:
• Normas que devem ser obedecidas.
• Alterações nas Normas.
• Agentes que “entram”.
Busca por solução:
• Normas são prioridade em relação aos
objetivos/intenções dos Agentes;
• Normas devem ser externas aos Agentes;
• Agentes devem se adaptar às mudanças;
• Agentes que entram devem seguir as Normas.
Laboratório de Engenharia de Software – PUC-Rio
NoA – A Normative Agent Architecture (1/2)
Kollingbaum, M. J.; Norman T. J (2003) “NoA – A Normative
Agent Architecture”.
• E-commerce
• Desenvolver agentes motivados por Normas
(externas):
– obrigações,
– permissões,
– proibições.
• Normas com mais importância do que os desejos
e intenções (desires & intentions).
Laboratório de Engenharia de Software – PUC-Rio
NoA – A Normative Agent Architecture (2/2)
Kollingbaum, M. J.; Norman T. J (2003) “NoA – A Normative
Agent Architecture”.
• Elementos da arquitetura
– Linguagem NoA - especificar Planos e Normas .
– Interpretador NoA - interpretar a executar especificações
de Planos e Normas.
• Não prevê Adaptabilidade!!
Laboratório de Engenharia de Software – PUC-Rio
StockAgents:
Um Sistema para Apoio às Decisões
de Investidores de Ações
(instanciação do framework)
Ricardo Gralhoz
[email protected]
Índice (Estudo de Caso)
– Motivação
• Análise do Domínio
• O Framework
– Frozen-spots (Pontos fixos)
– Hot-spots (Pontos flexíveis)
• Análise dos Agentes
• Instanciação
• Andamento
Laboratório de Engenharia de Software – PUC-Rio
Motivação
• Estudo de caso em pesquisas
desenvolvidas no contexto do Seminário de
Governança de Sistemas Multi-Agentes
Abertos;
• Proposta para Trabalho Final da disciplina
Projeto de Sistemas de Software;
• A possibilidade real de realização de ganhos
financeiros;
Laboratório de Engenharia de Software – PUC-Rio
Motivação
• Estudo de caso
– Por quê?
– Agentes adaptativos?
– Organização dos agentes?
– Normas?
N
Laboratório de Engenharia de Software – PUC-Rio
Análise do Domínio
• O sistema deve:
– Monitorar o mercado acionário;
– Indicar momentos de compra e venda de
ações;
– Respeitar o perfil de cada um dos investidores;
– Atender aos critérios de satisfação, a
respeito do desempenho.
Laboratório de Engenharia de Software – PUC-Rio
Análise do Domínio
• Os principais serviços são:
–
–
–
–
Cadastro do Perfil do Usuário;
Acompanhamento do Portfólio do Usuário;
Monitoramento do mercado de ações;
Armazenamento de informações do mercado de ações na
Base de Conhecimento;
– Análise do mercado de ações e decisão de
compra/venda de ação, de acordo com sua estratégia;
– Guardar histórico das decisões na Base de
Conhecimento;
– Enviar oferta de compra/venda de ações ao Mercado, de
acordo com as decisões, com o Portfólio e com o Perfil do
usuário;
Laboratório de Engenharia de Software – PUC-Rio
O Framework: Frozen-spots
• Critérios de avaliação do desempenho do sistema;
• Interface com o Usuário:
– Perfil do Usuário,
N
– Acompanhamento do Portfólio;
• Armazenamento / busca de informações na Base
de Conhecimento;
Laboratório de Engenharia de Software – PUC-Rio
O Framework: Hot-spots
• Monitoramento (Recepção das informações) do mercado
de ações
– extração HTML;
– arquivo da Bovespa;
– rádio / satélite por prestadora de serviços
• Estratégias de análise e decisão de compra/venda de
ações disponíveis;
– Método da agulhada do Didi (03 médias móveis);
– Exponencial suavizada;
– Outros métodos / combinações destes
• Envio de oferta de compra/venda de ações ao Mercado.
– Atuação direta no mercado (corretora)
– Aviso ao usuário via Interface Gráfica
– SMS ao celular
Laboratório de Engenharia de Software – PUC-Rio
Análise dos Agentes
Agente UserAgent ;
U
A
Agente MarketMonitor ;
MM
Agente StockAnalyst ;
SA
Agente StockMarketBroker .
SMB
Laboratório de Engenharia de Software – PUC-Rio
Análise dos Agentes
N
N
Usuário
Bolsa
U
A
SMB
BC
N
MM
Bolsa
Laboratório de Engenharia de Software – PUC-Rio
SA
Análise dos Agentes
• Agente UserAgent
Responsável por fazer a interface com
U
oAUsuário.
– Cadastra informações sobre o Usuário;
– Cadastra informações sobre Perfil do Usuário;
N
– Permite ao Usuário o acompanhamento do Portfólio;
– Envia alterações das informações sobre Perfil do
Usuário ao Agente StockMarketBroker ;
– Permite a avaliação do desempenho do Sistema em
relação ao Portfólio.
Laboratório de Engenharia de Software – PUC-Rio
Análise dos Agentes
• Agente MarketMonitor ;
MM
Responsável por monitorar preços e informações do
mercado sobre uma determinada ação;
– Monitora o mercado de ações;
– Armazena informações do mercado de ações na Base de
Conhecimento;
– Envia um aviso ao Agente StockAnalyst sobre novas
informações sobre o mercado.
Laboratório de Engenharia de Software – PUC-Rio
Análise dos Agentes
• Agente StockAnalyst ;
SA
Responsável por gerar recomendações de compra ou venda
de ações;
– Busca informações do mercado de ações na Base de
Conhecimento;
– Analisa o mercado de ações e decide o momento de
compra/venda, de acordo com sua estratégia;
– Armazena decisão de compra/venda na Base de
Conhecimento;
– Envia um aviso ao Agente StockMarketBroker sobre
nova decisão de compra/venda .
N
Laboratório de Engenharia de Software – PUC-Rio
Análise dos Agentes
• Agente StockMarketBroker ;
SMB
Responsável por comprar ou vender as ações no mercado,
respeitando as preferências do cliente ;
– Busca informações sobre Portfólio do Usuário na Base
de Conhecimento;
– Busca informações sobre Perfil do Usuário na Base de
Conhecimento;
– Busca informações sobre decisão de compra/venda e
sobre ação na Base de Conhecimento;
– Decide comprar/vender ação do Portfólio;
N
– Envia oferta de compra/venda de ações ao Mercado.
Laboratório de Engenharia de Software – PUC-Rio
N
Instanciação
1. Recepção das informações do mercado
de ações:
– Recuperação via extração HTML;
• Site do Infomoney
Laboratório de Engenharia de Software – PUC-Rio
Instanciação
2. Estratégias de análise e decisão de
compra/venda de ações disponíveis:
– Método da agulhada do Didi (03 médias
móveis);
– Exponencial suavizada;
– Outros métodos / combinações destes.
– Qual?
Laboratório de Engenharia de Software – PUC-Rio
Instanciação
3. Envio de oferta de compra/venda de
ações ao Mercado.
– Aviso ao usuário via Interface Gráfica
Laboratório de Engenharia de Software – PUC-Rio
Andamento
• O que já existe...
– Diversas classes (?) criadas
– Interface de entrada (quase) implementada
– Sem documentação
• Trabalho relacionado
– Virtual Broker
Laboratório de Engenharia de Software – PUC-Rio
Andamento
• O que está sendo feito...
– Estudo das classes existentes
– Implementação de algoritmo Preditor
– Pesquisa sobre agentes normativos e agentes
adaptativos
Laboratório de Engenharia de Software – PUC-Rio
Conclusão
• Objetivos a alcançar
– Preparar um ambiente onde possam ser
testados / avaliados os conceitos
– Propor um melhoria à arquitetura
• Estratégia de decisão após predição:
– Agentes adaptativos?
– Organização dos agentes?
– Normas?
• Outras questões...
Laboratório de Engenharia de Software – PUC-Rio
Download

RicardoGralhozSeminario2 - (LES) da PUC-Rio