Condução de Experimentos Computacionais com Métodos ...
Condução de Experimentos Computacionais com Métodos ...
Condução de Experimentos Computacionais com Métodos ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
2.3 <strong>Métodos</strong> Metaheurísticos 47<br />
As memórias são responsáveis por armazenar soluções ou informações relevan-<br />
tes para a resolução do problema, e <strong>com</strong>o elas são <strong>com</strong>partilhadas, a informação ou resul-<br />
tado produzido por um agente fica disponível aos <strong>de</strong>mais, ou seja, as memórias são uma<br />
forma <strong>de</strong> <strong>com</strong>unicação entre os agentes. As relações <strong>de</strong>finem <strong>com</strong>o as soluções são ma-<br />
nipuladas e <strong>com</strong>o os agentes po<strong>de</strong>m acessá-las no conjunto <strong>de</strong> memórias <strong>com</strong>partilhadas<br />
disponível.<br />
Um A-Team po<strong>de</strong> ser representado graficamente, <strong>com</strong>o mostra a Figura 2.7. Os<br />
retângulos equivalem às memórias, as setas os agentes. A memória M1 é uma <strong>com</strong>posição<br />
(memórias <strong>com</strong>postas por outras memórias básicas), pois contém as memórias M2 e M3.<br />
Existem 6 agentes: I, D, A1, A2, A3 e A4. O agente A1 lê da memória M2 e escreve na<br />
memória M3, A2 lê <strong>de</strong> M4 e escreve em M2, A3 lê <strong>de</strong> M1 (ou <strong>de</strong> M2 e/ou M3) e escreve em<br />
M4 e o agente A4 lê <strong>de</strong> M4 e escreve em M1 (ou em M2 e/ou M3). O agente I é o iniciador,<br />
que faz o preenchimento inicial das memórias. O agente D é um agente <strong>de</strong>strutor, que<br />
elimina <strong>de</strong>terminadas soluções e controla a quantida<strong>de</strong> das mesmas.<br />
I<br />
M 2<br />
A 2<br />
A 1<br />
A 3 A 4<br />
M 4<br />
Figura 2.7: Exemplo <strong>de</strong> A-Team <strong>com</strong> 1 <strong>com</strong>posição, 3 memórias<br />
M 3<br />
M 1<br />
básicas e 6 agentes. Retirado <strong>de</strong> [5].<br />
A i<strong>de</strong>ia básica dos A-Teams é que os agentes trabalhem <strong>de</strong> forma assíncrona<br />
(isto é, <strong>de</strong> forma paralela), autônoma, interativa e cíclica , sobre um conjunto <strong>de</strong> dados<br />
<strong>de</strong>positados em memórias <strong>com</strong>partilhadas fazendo operações <strong>de</strong> modificar, adicionar,<br />
remover ou alterar soluções. O conjunto <strong>de</strong> agentes forma um time e, <strong>com</strong>o estes agentes<br />
são in<strong>de</strong>pen<strong>de</strong>ntes, ou seja, não possuem sincronismo, disponibilizam os resultados <strong>de</strong><br />
seus trabalhos ou utilizam os resultados <strong>de</strong> outros <strong>com</strong>ponentes do time.<br />
Algumas características baseadas nos princípios das socieda<strong>de</strong>s <strong>de</strong> insetos po-<br />
<strong>de</strong>m ser utilizadas <strong>de</strong> forma a dar eficácia ao projeto do time. Dentre elas, encontram-se:<br />
• Fluxo <strong>de</strong> Dados Cíclico: as soluções armazenadas nas memórias geradas pelos<br />
agentes po<strong>de</strong>m ser disponibilizadas para os outros agentes, <strong>de</strong> forma <strong>de</strong> que possam<br />
alterar as soluções, <strong>com</strong> o objetivo <strong>de</strong> obter uma solução ótima, ou seja, as soluções<br />
po<strong>de</strong>m ser refinadas e trabalhadas a todo momento por qualquer agente;<br />
• Autonomia: todos os agentes tem a mesma capacida<strong>de</strong> <strong>de</strong> realizar tarefas, ou seja,<br />
não há hierarquia entre eles;<br />
D