01.06.2013 Views

Facoltà di Ingegneria Corso di Laurea Magistrale in Ingegneria ...

Facoltà di Ingegneria Corso di Laurea Magistrale in Ingegneria ...

Facoltà di Ingegneria Corso di Laurea Magistrale in Ingegneria ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Ambiente <strong>di</strong> sviluppo<br />

sviluppatori <strong>in</strong> quanto rallenta notevolmente la CPU che viene sovraccaricata, <strong>in</strong>oltre le<br />

comunicazioni sono più lente e più complesse da realizzare <strong>in</strong> quanto occorre def<strong>in</strong>ire<br />

nel protocollo anche la piattaforma che si vuole <strong>in</strong><strong>di</strong>rizzare.<br />

- agenti implementati come threads Java che vivono all’<strong>in</strong>terno <strong>di</strong> Agent Conta<strong>in</strong>ers (AC) i<br />

quali provvedono all’esecuzione run-time degli agenti. Ogni AP contiene uno o più AC. La<br />

soluzione a threads consente agli agenti <strong>di</strong> eseguire più task concorrentemente e<br />

permette una comunicazione leggera ed efficiente.<br />

- più DFs FIPA-Compliants che possono essere avviati a run-time al f<strong>in</strong>e <strong>di</strong> implementare<br />

applicazioni multidom<strong>in</strong>io, dove un dom<strong>in</strong>io è un set logico <strong>di</strong> agenti i cui servizi sono<br />

<strong>in</strong>seriti <strong>in</strong> un “facilitator” comune. Ogni DF ere<strong>di</strong>ta un’<strong>in</strong>terfaccia GUI e tutte le capacità<br />

standard def<strong>in</strong>ite dalle specifiche FIPA (es. capacità <strong>di</strong> registrare, deregistrare, mo<strong>di</strong>ficare<br />

e cercare agenti; capacità <strong>di</strong> “federat<strong>in</strong>g” <strong>in</strong> una rete <strong>di</strong> DFs). È da notare, <strong>in</strong>oltre, che<br />

ogni agente della piattaforma può registrarsi a più DF della piattaforma <strong>in</strong> modo da<br />

fornire il proprio servizio ad una comunità <strong>di</strong> agenti più vasta.<br />

- una comunicazione basata sul trasporto <strong>di</strong> messaggi ACL che sono essi stessi oggetti<br />

Java. Tale soluzione facilita il programmatore nella creazione <strong>di</strong> messaggi.<br />

- un meccanismo <strong>di</strong> trasporto efficiente che utilizza i protocolli JAVA RMI, la notifica <strong>di</strong><br />

eventi ed il protocollo IIOP (Internet Inter-Orb Protocol). Il meccanismo è <strong>in</strong>telligente e<br />

per ogni messaggio utilizza automaticamente il protocollo più appropriato.<br />

- una libreria <strong>di</strong> protocolli <strong>di</strong> <strong>in</strong>terazione per la comunicazione fra agenti conformi agli<br />

standard def<strong>in</strong>iti da FIPA.<br />

- un servizio <strong>di</strong> nomi FIPA-compliant per cui all’atto della registrazione degli agenti presso<br />

l’AMS, questi ottengono il loro AID dalla piattaforma.<br />

- un supporto all’esecuzione <strong>di</strong> attività multiple, parallele o concorrenti degli agenti,<br />

attraverso modelli <strong>di</strong> comportamento <strong>di</strong> quest’utlimi già pre<strong>di</strong>sposti <strong>di</strong> tipo: run once,<br />

ciclico, sequenziale, parallelo, FSM (F<strong>in</strong>ite State Mach<strong>in</strong>e). JADE provvede allo schedul<strong>in</strong>g<br />

degli agenti <strong>in</strong> modo non-preemptive.<br />

33

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!