Agentes para Balanceamento de
Carga e Alocação de Tarefas em
Sistemas Distribuídos.
Francimary P.Garcia [email protected]
•Roteiro
•
MOTIVAÇÃO.
•
ANALISANDO BALANCEAMENTO DE CARGA.
•
CONTRACT NET PROTOCOL.
•
UMA APLICAÇÃO DO CNP.
•
CONCLUSÃO.
Francimary P.Garcia [email protected]
MOTIVAÇÃO:
• Muitos são os problemas causados por
distribuições de cargas não balanceadas em
situações reais de nossa vida, como por
exemplo, o transito intenso em algumas
ruas, ou a alta utilização, em um CPD, das
máquinas mais poderosas, que tendem a
estar sempre sobrecarregadas, enquanto
outras menos poderosas estão livres.
Francimary P.Garcia [email protected]
ANALISANDO BALANCEAMENTO
DE CARGA.
• A distribuição de carga é essencial para o
uso eficiente de processadores em
ambientes computacionais distribuídos e
paralelos, onde existe compartilhamento
de recursos.
Francimary P.Garcia [email protected]
ANALISANDO BALANCEAMENTO
DE CARGA (cont.)
• O PROBLEMA DA ESCOLHA DO BAR:
•A decisão de ir a um bar é um processo
estocástico, mas a decisão de qual bar, é
uma decisão autônoma da pessoa.
•A priori não existe nenhuma relação entre a
pessoa e os bares disponíveis.
Francimary P.Garcia [email protected]
ANALISANDO BALANCEAMENTO
DE CARGA (cont.)
• Baseado na teoria da Aprendizagem
Reforçada, os agentes de tomada de decisão
agem em um padrão puramente local. Desta
forma, um agente só saberá quão eficiente é o
serviço em um restaurante depois que ele o
escolher como um lugar para comer.
Francimary P.Garcia [email protected]
ANALISANDO BALANCEAMENTO
DE CARGA (cont.)
• Um job pode rodar em qualquer recurso, não
existe limite no número de job’s servidos
simultaneamente por um dado recurso,
portanto não ocorre fila.
•No entanto, a qualidade do serviço fornecido
pelo recurso em um dado tempo, deteriora com
o número de agentes que o usam naquele
tempo.
Francimary P.Garcia [email protected]
ANALISANDO BALANCEAMENTO
DE CARGA (cont.)
•REGRAS DE SELEÇÃO DE RECURSO:
•É o coração desta discussão e se baseará
em informações puramente locais.
•Depois que cada agente executa um job,
ele guarda o nome do recurso R, os tempos
Tstart e T stop da execução e o tamanho do
job S.
•Entrada de SR (R,T1,T2,S).
Francimary P.Garcia [email protected]
ANALISANDO BALANCEAMENTO
DE CARGA (cont.)
•Cada agente A, condensa suas informações de execução
de job’s dentro de um vetor chamado ESTIMADOR DE
EFICIÊNCIA e denotado por eeA.
•O tamanho do vetor é o número de recursos, e a iéssima entrada no vetor representa a avaliação do agente
da eficiência corrente do recurso i.
•Existe também um vetor jdA, com o número de job’s
completados, submetidos por A, em cada um dos
recursos, desde o início do tempo.
Francimary P.Garcia [email protected]
ANALISANDO BALANCEAMENTO
DE CARGA (cont.)
•ATUALIZANDO O ESTIMADOR DE EFICIÊNCIA:
•eeA(R) := WT + (1-W)eeA(R)
•onde:
•T = (t2 - t1)/S
•W = w + (1 - w)/jdA(R)
Francimary P.Garcia [email protected]
ANALISANDO BALANCEAMENTO
DE CARGA (cont.)
•SELECIONANDO O RECURSO:
A
pd ' ( R) : {ee A( R)n se
E[ee A ]-n
se
jd A( R)  0
jd A (R)  0
•onde:
•n : valor real positivo
•E[eeA] :média dos valores de eeA(R)
para todos os recursos, quando jdA(R)>o
Francimary P.Garcia [email protected]
ANALISANDO BALANCEAMENTO
DE CARGA (cont.)
•SELECIONANDO O RECURSO:
•O valor de n definirá o recurso. Quando o n é
muito alto, n>=20, o agente sempre escolherá o
recurso com os melhores registros.
•No entanto, a técnica de sempre escolher os
melhores resultados, nem sempre é a mais
adequada, pois impede o agente de se aproveitar
das melhorias na capacidade ou carga de outros
recursos.
Francimary P.Garcia [email protected]
ANALISANDO BALANCEAMENTO
DE CARGA (cont.)
•BCSR X Regra de Aprendizagem com Baixo n:
•As regras de aprendizagem selecionam
recursos que não obtiveram melhores
resultados no passado. Visto que o
ambiente é dinâmico e os outros recursos
podem ter melhorado sua performance no
decorrer do tempo.
Francimary P.Garcia [email protected]
ANALISANDO BALANCEAMENTO
DE CARGA (cont.)
•Exemplos:
•Dois recursos R1 e R2, com capacidades
fixas, R1 = 2R2.
•Usando BCSR:
•CARGA BAIXA
•R1
•CARGA ALTA
•AGENTES ESCOLHEM R1
•R2
Francimary P.Garcia [email protected]
•AGENTES PREFEREM R2.
ANALISANDO BALANCEAMENTO
DE CARGA (cont.)
•Exemplos:
•Usando BCSR:
•CARGA BAIXA
•R1
•CARGA ALTA
•CARGA BAIXA
•AGENTES
•ESCOLHEM R2
•CONTINUAM COM R2
•AGENTES
• ESCOLHEM r1
•R2
Francimary P.Garcia [email protected]
ANALISANDO BALANCEAMENTO
DE CARGA (cont.)
•BCSR nem sempre é uma boa escolha;
•As mudanças de carga são imprevisíveis;
•Os agentes devem se adaptar as mudanças,
que podem ser mudanças de carga ou
mudanças na capacidade dos recursos.
Francimary P.Garcia [email protected]
ANALISANDO BALANCEAMENTO
DE CARGA (cont.)
•ANALISANDO CASOS:
•1- CARGA FIXA:
•Regras de seleção não adaptativas são
satisfatórias;
•2-MUDANDO A CARGA/CAPACIDADES:
•A performance melhora quanto maior é a
exploração que se faz dos recursos, ficando melhor
quando o agente atualiza os estimadores de
eficiência, de outra forma, o custo da atividade de
exploração será maior que o ganho.
Francimary P.Garcia [email protected]
CONTRACT NET PROTOCOL CNP.
• É um protocolo para alocação de tarefas,
efetivado através de contratos.
• Um contrato é um acordo explícito entre um
agente que gera uma tarefa - o gerente e um
agente disposto a executar a tarefa - o
contratado.
• Um agente pode ter as duas funções.
Francimary P.Garcia [email protected]
CNP (cont.)
• O PROCESSO DE NEGOCIAÇÃO:
• PASSO 1:
•AGENTE 1 RECEBE
UMA TAREFA PARA
EXECUTAR.
Francimary P.Garcia [email protected]
CNP (cont.)
• O PROCESSO DE NEGOCIAÇÃO:
• PASSO 2:
ANUNCIANDO.
•AG.3
•AG.2
•AG.1 GERENTE
•AG.4
Francimary P.Garcia [email protected]
•AG.5
CNP (cont.)
• O PROCESSO DE NEGOCIAÇÃO:
• PASSO 3 :
OFERTAS.
•AG.3
•AG.2
•AG.1 GERENTE
•AG.4
Francimary P.Garcia [email protected]
•AG.5
CNP (cont.)
• O PROCESSO DE NEGOCIAÇÃO:
• PASSO 4 :
ESCOLHER VENCEDOR.
•AG.3
•AG.2
•AG.1 GERENTE
•AG.4
Francimary P.Garcia [email protected]
•AG.5
CNP (cont.)
• PROBLEMAS:
– Não detecta nem resolve conflitos;
– O gerente não informa os ofertadores que foram
recusados;
– Agentes não podem recusar ofertas;
– Tarefas com tempo crítico não podem ser
atendidas;
– Gera intensa comunicação.
Francimary P.Garcia [email protected]
CNP (cont.)
• VANTAGENS:
– Agentes podem fazer ofertas para múltiplas
tarefas;
– Fornece um balanceamento de carga natural.
Francimary P.Garcia [email protected]
CNP (cont.)
• O PROBLEMA DA CONFIANÇA:
– Em negociações mútuas entre agentes, deve
existir confiança entre eles, no que se refere
ao serviço oferecido.
Francimary P.Garcia [email protected]
CNP (cont.)
• PROBLEMA DO CONGESTIONAMENTO:
– Destinatário Focalizado:
• Alta Carga: Agentes com recursos livres,
anunciam sua disponibilidade;
• Baixa Carga: Agentes com tarefas, anunciam
suas tarefas.
– Restringindo o Público:
• Agentes anunciam apenas para um
subconjunto de agentes.
Francimary P.Garcia [email protected]
UMA APLICAÇÃO DO CNP
• TRACONET - TRAnsportation Cooperation
NET
É um sistema de roteamento de veículos de
transporte, baseado no custo marginal.
- Agentes localmente calculam seu custo
marginal para executar um conjunto de tarefas.
- A escolha do contratador é baseada
unicamente neste custo.
- Atributos do veículo são avaliados.
Francimary P.Garcia [email protected]
CONCLUSÃO:
•Para maior produtividade de ambientes multirecursos é essencial a distribuição de cargas
de trabalho entre os diversos recursos, de
forma equilibrada, sem sobregarregar nem
subcarregar nenhum dos recursos.
Francimary P.Garcia [email protected]
REFERÊNCIAS:
• 1. Schaerf. Andrea, Shoham.Yoav,
Tennenholtz.Moshe. Adaptive Load Balancing: A
Study in Multi-Agent Learning. Journal of Artificial
Intelligence Research (1995).
• 2. Jenninngs.Nicholas, Sycara.Katia,
Wooldrige.Michael. A Roadmap of Agent Research
and Development.
• 3.Kraus.Sarit. An Overview of Incentive Contracting
• 4. Sandholm.Tuomas.An Implementation of the
Contact Net Protocol Based on Marginal Cost
Calculation.
Francimary P.Garcia [email protected]
REFERÊNCIAS (cont.):
• 5. Sandholm.Tuomas, Lesser.Victor. Issues in
Automated Negociation and Eletronic Commerce:
Extending the Contract Net Framework.
Francimary P.Garcia [email protected]
Download

discutindo alocação de tarefas em ambientes distribuídos.