Dr. Radu Mogos Masterat Informatica economica, CSIE 1 Curs 5: Metodologii de realizare a sistemelor multi-agent 2 Masterat Informatica economica, CSIE 3 Concept Provenien(a MOA Clasificare MOA MOA pentru modelarea SMA Anallz comparatlv a prlnclpalelor metooologll orlentate agent Studiu de caz - TROPOS Masterat Informatica economica, CSIE Concept (1) Metodologia ingineriei software - este oetlnlt ca fiind un proces de dezvoltare de software ce este echipat cu concepte i instrumente dedicate pentru modelare Metodologia or|entot agent - poate fi oetlnlt ca fiind un proces de dezvoltare de software, dotat cu concepte i instrumente dedicate pentru modelare, n care elementul cheie de abstractizare folosit este agentul, acesta aprno n toate etapele procesului de realizare Obiectivul MOA - de a oferi un suport care s con(ln toate elementele necesare oezvoltrll unui sistem informatic. Concept (2) Concepte folosite de MOA: multe MOA (de ex Gaia, Tropos) - folosesc conceptul de organizatie ce poate tl olvlzat n sub-organizaii n care agen(ll joac unul sau mal multe rolurl, interac(ionnd unii cu al(ii rol dependen(a soclal reguli organiza(ionale Folosite pentru: - a modela mediul n care ruleaz slstemul - realizarea sistemului n sine Concepte (3) Aspecte vizate de MOA: descrierea modelelor de interac(iune oescrlerea mooelelor oe cooperare care slmuleaz dependen(ele dintre agen(i i rolurile pe care acetia le au n sistem grad de abstractizare suficient de mare pentru realizarea modelelor trebule s alb n centru agen(ii, rolurile pe care acetia le au n sistemele realizate i interac(iunea dintre agen(l bazat pe protocoalele determinate de rolurile acestora. Provenien{a MOA Puncte de plecare: domeniul inteligen(ei artificiale MAS-CommonKADS (KADS - Knowledge Acquisition and Documentation Structuring) metodologiile orientate obiect MaSE (Multiagent Systems Engineering) care preia modul de folosire al cunotin(elor i informa(iilor de la metodologia AAII (Australian Artificial Intelligence Institute) AAII a fost influen(at oe metooologla or. ob. OMT (Object Modeling Technique). Influen[ele MOO asupra MOA Provenien{a MOA Din met. FUSION -> dezvoltarea i realizarea metodologiei Gaia (una dintre primele metodologii MOA); Din met. RUP -> baza pentru ADELFE, MESSAGE i RAP ((Radical Agent-Oriented Process) mpreun cu AOR (Agent Object Relationship)); Din met. MESSAGE -> punctul de plecare pentru metodologia INGENIAS. MOA PROMETHEUS - se folosete atunci cnd este poslbll adaptarea unor diagrame i concepte orientate obiect pentru realizarea SMA MOA PASSI - folosete diagrame i concepte orientate obiect mpreun cu elemente specifice sistemelor multiagent folosind ca nota(ie de baz UML. Clasificarea MOA (1) 1.Dpdv al descrierii procesului de dezvoltare: metodologii core odopt o descr|ere formo| (ex: ADELFE, RAP, MESSAGE i INGENIAS) metodologii care odopt o descr|ere |nformo| (ex: Gaia, TROPOS, PROMETHEUS i MASE). Clasificarea MOA (2) II. Dpdv al abororll: - extensii ale MOO; - s-a urmarit integrarea instrumentelor, tehnicilor i metodelor folosite de acestea (de exemplu modelarea protocoalelor de interac(iune, nota(iile specifice UML i OMT, etc.) - bazate pe preluarea i folosirea de cuntin(e, ex. MAS- CommonKADS - nu oter o evloen(lere oetallat a proprlet(ilor i caracteristicilor specifice mediului sistemelor multiagent. Clasificarea MOA (3) - TROPOS are la baz meolul oe mooelare pentru agen(i i* care a devenit n 2008 o parte component a stanoaroulul lnterna(ional User Requirements Notation (URN) - mediul i* are la baz conceptul oe intenie distribuit, plasnd n centru caracteristicile de inten(ie ale agen(ilor. - folosita petru situa(ll unoe elst mal multe pr(i care au interese i care pot intra n conflict unele cu altele. - ac(iuni necesare: reproiectarea procesului de afaceri, ingineria sistemului de ob(inere a informa(iilor, proiectarea sistemelor software bazate pe agen(i, etc. Clasificarea MOA (4) III. Dpdv al folosirii conceptului de rol n dezvoltarea SMA: nu sunt orientate pe rol (non role oriented - NRO) - metodologii care nu folosesc conceptul de rol n tot procesul de dezvoltare al SMA; orientate pe rol (role oriented - RO), conceptul de rol reprezinta un element central al procesului de modelare. Ex: Gaia, MaSE (Multiagent Systems Engineering) i MESSAGE. Clasificarea MOA (5) IV. Dpov al loentltlcrll rolulul: orientate pe obiective (goal oriented GO) unde rolurile sunt identificate pe baza analizei obiectivelor sistemului; orientate pe comportament (behaviour oriented, BO) unoe rolurlle oerlv oln sarclnlle i comportamentele sistemului; orientate pe organiza(ie (organization oriented OrO) unde rolurile sunt identificate folosind structura organiza(lonal a slstemulul. MOA pentru modelarea SMA (1) 1. GAIA una dintre primele metodologii realizate folosete analogii din cadrul organiza(iilor reale lncearca s otere att o aboroare tebnlc pentru dezvoltator ct i una mai pu(in tebnlc pentru cel mal pu(ln cunosctorl otera taclllt(l pentru ca cele oou categorll s poat lnterac(iona. prezlnt o aboroare secven(lal a oezvoltrll de software con(ine etapele: colectare a cerin(elor, anallz proiectare (arhit sistem si detalii) implementare. Ex de sistem: sistemul SmArt (Semantic Agreement) realizeaza un acord automat folosind ontologii i tehnologia agent. MOA pentru modelarea SMA (2) 2. TROPOS una dintre cele mai complete MOA cadru pentru modelarea obiectivelor [innd cont de actorii, activit[ile i resursele sistemului. punctdeplecare: mediul i* ofer un grad de flexibilitate ridicat mai ales pentru pentru cei care folosesc pentru nota[ii Agent UML face parte din tematica unor proiecte de cercetare europene. Ex: SECURE CHANGE - Security Engineering for Lifelong Evolvable Systems (2009-2012), MASTER - Managing Assurance, Security and Trust for sERvices (2008- 2011), MEnSA - Methodologies for the Engineering of complex software Systems: Agent-based approach (2007 - 2009). Concepte folosite: - actor - scop - dependen[a actorilor de cerin[ele ini[iale i cele ulterioare, - proiectare arhitectural i de detaliu MOA pentru modelarea SMA (2) TROPOS MOA pentru modelarea SMA (3) 3. MASCommonKADS se bazeaza pe met. CommonKADS i metodologiile orientate obiect. permlte oezvoltatorulul s reallzeze SMA toloslno tebnlcl i diagrame cunoscute i mai des folosite. conceptele toloslte reprezlnt o prelunglre a tebnlcllor OO pentru conceptualizarea SMA definete un set de modele (modelul agentului, modelul actlvlt(ilor, mooelul oe epertlz, modelul de coordonare, modelul de comunica(ie, modelul de organizare i modelul de proiectare) care folosite mpreun pot construl un mooel pentru problema oln vla(a real ce trebule rezolvat. etape: conceptualizarea, analiza, proiectarea, dezvoltarea i testarea (ultimele oou netllno toarte clar relletate oe ctre metooologle). MOA pentru modelarea SMA (4) PROMETHEUS metodologie care dpdv domeniului de IA oter o abordare bazat pe atingerea obiectivelor pentru agen(ii inteligen(i. este toloslt mai ales pentru dezvoltarea sistemelor multi-agent pe platforme comerciale bazate pe agen(i (ex. JACK i Agentis). principalele caracteristici: descrie fiecare taz i modul n detaliu acoper ntreg ciclul de realizare a sistemelor bazate pe agen(i. grad mare de folosire => n lucrarea Prometheus Design Tool (Padgham L. s.a. , 2008) este propus un instrument de proiectare pentru SMA ce are la baz aceast metodologie. MOA pentru modelarea SMA (5) Alte metodologii: PASSI (Process for Agent Societies Specification and Implementation) ADELFE MASE (Multiagent Systems Engineering ) RAP (Radical Agent-Oriented Process) MESSAGE INGENIAS MOA pentru modelarea SMA (6) Prometheus (fol. pt. dezv SMA pe platfome comerciale) PASSI (foloseste modele in cascada) 5.Analiz conaraiiv a rincialclor MOA (1) Criterii pentru procese descriu: aplicabilitatea metodologiei, fazele procesului su de dezvoltare (ex. Modelul cilului de viata al metodologiei) dezvoltarea abororll urmrlte de metodologie. Criterii pentru etape i tehnici folosite etape urmresc: valabilitatea i gradul de folosire a tehnicilor oferite de o metodologie pentru execu(ia etapelor i/sau pentru dezvoltarea modelelor. Criterii pentru modelare (i concepte) evalueaz: diversele aspecte ale modelelor si conceptelor oferite de metodologie, ct i caracteristicile agen(ilor compatibili cu acestea. Criterii pentru adaptabilitate anallzeaz: elementele supllmentare ce pot tl aougate unel metooologll MOA. (elementele cuprind instrumentele software valabile pentru ontologii, agen(i i sistemele multiagent) Cadrul de analiz si evaluare a MOA Criterii pentru procese Criterii pentru etape si tehnici folosite Criterii pentru modelare (si concepte) Criterii pentru adaptabilitate 6. Studiu de caz TROPOS (1) Problema: proiectarea unui sistem de management pentru o conferin( a) In cadrul primei etape: sunt determinate cerin(ele ini(iale => modelarea inten(iilor stakeholderilor folosind scopurile n contextul cerin(elor impuse de sistemul dezvoltat. Stakeholderii sunt reprezenta(i prin actori. Un actor poate fi un agent sau un rol. Dependen(ele olntre actorl sunt mooelate prln legturl ce lnolc acele corela(ii specifice. Dependen(ele pot reprezenta: scopuri hard scopuri soft task-uri resurse 6. Studiu de caz TROPOS (1) Intrebari: Care sunt actorii principali? Care sunt scopurile lor? Cum le pot ob(ine? Un actor depinde de alt actor pentru a-si indeplini scopurile? R: => Diagrama initiala a actorilor Sunt indentificai: - cinci actori (agenti): PC (Programme Committee), PC Chair, Author, Reviewer i Publisher. - ase dependene sunt folosite ca i dependen[e pentru scopuri: Publish proceedings, Peer review, Manage conference, Fix deadline, Check availability i Publication. In cadrul dependen[ei pentru scopuri un actor depinde de altul pentru a-si realiza socpurile; - trei dependene pentru resurse: Submission, Review i Assign Papers. In cadrul dependen[ei pentru resurs un actor depinde alt actor pentru a putea folosi o resurs. Diagrama initiala a actorilor 6. Studiu de caz TROPOS (2) Dlagrama actorllor este etlns (innd cont de fiecare actor. Scopurile sunt descompuse n sub-scopuri. Diagramele pentru scopuri aferente actorilor PC i PC Chair (scopurile de tlp sott sunt reprezentate sub tom oe norl) 6. Studiu de caz TROPOS (3) Etapa a 2- a: lnoentltlc cerln(ele ulterioare metodologia introduce sistemul de management al conferin(ei (SMC) ca fiind un actor nou care contribuie la atingerea scopurilor stakeholderilor. scopurile principale sunt descompuse n scopuri mai concrete pn cno acestea pot tl asemnate cu nite cerin(e. => o olagram a actorilor etlns pentru SMC (introduce dependen(a pentru task get paper ntre actorii CMS System i Author ) Diagrama actorilor extins pentru SMC 6. Studiu de caz TROPOS (4) Diagrama scopurilor pentru actorul SMC introduce task-urile accept i reject necesare pentru atingerea scopului manage decision. Diagrama scopurilor pentru actorul SMC 6. Studiu de caz TROPOS (5) Etapa a 3-a oe prolectare acbltectural: decompunerea i rafinarea diagramei aferente actorului SMC (innd cont de noii actori ca i rezultat al analizelor, identificarea capablllt(ilor; se face trecerea de la actori la agen(i. Un eemplu oe mooel a etapel oe prolectare arbltectural (actorul SMC a fost transformat n actorii Conference Manager, Paper Manager, Review Manager i Proceedings Manager; Dependen(ele pentru scopuri, task-uri i resurse sunt de asemenea incluse n model. 6. Studiu de caz TROPOS (6) Aceast olagram lnolc scopurile, task-urile, resursele ce vor fi folosite de ctre actorii Conference Manager, Paper Manager, Review Manager i Proceedings Manager. Fiecarui actor la accest nivel i se poate asocia un agent inteligent.. Diagrama de scopuri rafinat pentru actorul SMC 6. Studiu de caz TROPOS (7) Etapa de pro|ectore deto||ot lmpllc: specificarea comportamentului intern al agen(ilor (innd cont de platforma pe care va fi implementat sistemul definirea arhitecturilor agen(ilor implementarea agentilor