Disseny de Sistemes Multiagents

Esteu aquí

Crèdits
4
Tipus
Optativa
Requisits
Aquesta assignatura no té requisits, però té capacitats prèvies
Departament
CS
L'objectiu principal del curs es el proveir els estudiants de guies metodològiques per l'anàlisi, disseny i impelmentació de sistemes de programari distribuït. El curs presenta diversos mètodes, tècniques i tecnologíes que ja s'apliquen en la construcció de sistemes distribuïts per tal de fer-los més flexibles, adaptables i reconfigurables.

La primera meitat del curs presenta un paradigma nou de disseny, la Enginyería del Software Orientada a Agents (AOSE), ón l'anàlisi i disseny delssistemes distribuïts utilitza conceptes de les societats i organitzacions humanes (actor, rol, responsabilitat, delegació de tasques) per modelar, d'una forma flexible, les interaccións entre els components distribuïts del sistema i les formes de recuperar-se de fallides.

La segona meitat del curs presentarà diversos mecanismes socials (Confiança&Reputació, Estructures Socials, Teoria d'Organitzacions, Sistemes Normatius), inspirats en les societats humanes i animals, que es poden impelmentar computacionalment per a gestionar l'equilibri entre la flexibilitat de cada component i el control del sistema en el seu conjunt.

Professorat

Responsable

  • Javier Vazquez Salceda ( )

Hores setmanals

Teoria
2
Problemes
0.4
Laboratori
0
Aprenentatge dirigit
0.6
Aprenentatge autònom
4.33

Competències

Competències Tècniques Generals

Genèriques

  • CG3 - Capacitat per a la modelització, càlcul, simulació, desenvolupament i implantació en centres tecnològics i d'enginyeria d'empresa, particularment en tasques de recerca, desenvolupament i innovació en tots els àmbits relacionats amb la Intel·ligència Artificial.

Competències Tècniques de cada especialitat

Professionals

  • CEP3 - Capacitat d'aplicació de les tècniques d'Intel·ligència Artificial en entorns tecnològics i industrials per a la millora de la qualitat i la productivitat.
  • CEP7 - Capacitat de respectar la normativa legal i la deontologia en l'exercici professional.

Competències Transversals

Treball en equip

  • CT3 - Ser capaç de treballar com a membre d'un equip interdisciplinari, ja sigui com un membre més o duent a terme tasques de direcció, amb la finalitat de contribuir a desenvolupar projectes amb pragmatisme i sentit de la responsabilitat, tot assumint compromisos considerant els recursos disponibles.

ús solvent dels recursos d'informació

  • CT4 - Gestionar l'adquisició, l'estructuració, l'anàlisi i la visualització de dades i informació de l'àmbit d'especialitat, i valorar de forma crítica els resultats d'aquesta gestió.

Analisis i sintesis

  • CT7 - Capacitat d'anàlisi i resolució de problemes tècnics complexos.

Bàsiques

  • CB6 - Que els estudiants sàpiguen aplicar els coneixements adquirits y la seva capacitat de resolució de problemes en entorns nous o poc coneguts dins de contexts més amplis (o multidisciplinaris) relacionats amb la seva àrea d'estudi.
  • CB8 - Que els estudiants sàpiguen comunicar les seves conclusions i els coneixements i raons darreres que les sustenten- a públics especialitzats i no especialitzats d'una manera clara i sense ambigüitats.
  • CB9 - Que els estudiants posseeixin les habilitats d'aprenentatge que els permetin continuar estudiant d'una manera que haurà de ser en gran mesura autodirigida o autònoma.

Objectius

  1. Conèixer els orígens i les bases de la computació distribuïda a Internet
    Competències relacionades: CG3, CEP3,
  2. Conèixer possibles aplicacions de la Intel•ligència Artificial per als sistemes distribuïts a Internet
    Competències relacionades: CG3, CEP3, CB6, CB9,
  3. Entendre els conceptes bàsics d'Orientació a Agents
    Competències relacionades: CT4, CT7, CB6,
  4. Analitzar un problema de naturalesa distribuïda i identificar-ne els diferents actors i les seves funcionalitats
    Competències relacionades: CG3, CT4, CT7, CB6,
  5. Dissenyar sistemes distribuits aplicant una metodologia orientada a agents
    Competències relacionades: CG3, CEP3, CT3, CT7, CB6, CB8,
  6. Extreure i representar el coneixement necessari sobre el context per a construir una aplicació distribuïda a Internet que sigui flexible i robusta.
    Competències relacionades: CG3, CEP7, CT3, CT4, CT7, CB6,
  7. Dissenyar ontologies sobre un context aplicant adequadament una metodologia
    Competències relacionades: CG3, CT3, CT4, CT7, CB6, CB8,

Continguts

  1. Introducció a la Orientació a Agents
    Trends in modern (distributed) computing. Origins of Multiagent design. Agent Design and Society Design. Approaches to Agent-Oriented Design. Agent properties. Environment properties. Agent types and architectures.
  2. Disseny d'agents: raonament en els agents
    Definition of Reasoning. Automated Reasoning. Reasoning Paradigms. Symbolic Reasoning Agents. Deductive Reasoning Agents. Agent-Oriented Programming. MetateM. Practical Reasoning. BDI Agents. BDI Agent Control Loop
  3. Metodologies Orientades a Agents
    Current trends in Software engineering. Agent-Oriented Software Engineering. Agent-Oriented Methodologies. The GAIA Methodology. The Prometheus Methodology
  4. Disseny social: coordinació y models socials
    Coordination in MAS. Coordination Structures. Social Models for Coordination. Trust and Reputation Models. Organizational Models. Institutional Models.
  5. Aplicacions del disseny orientat a agents
    Agent-Oriented Design for 1) Electronic Negotiation Support, 2) Flexible Dynamic Web services, 3) Multi-robotic environments. Case studies for the practical assignments.

Activitats

Activitat Acte avaluatiu


Introducció a la Orientació a Agents

L'alumne coneixerà els orígens i les bases de la Orientació a Agents així com algunes de les arees d'aplicació. Per reforçar l'aprenentatge l'alumne haurà de llegir el capítol 1 del llibre de Russel i Norvig (disponible on-line) i el llibre "Agent Technology: Computing as interaction. A Roadmap to Agent Based Computing" (també disponible on-line).
Objectius: 1 3
Continguts:
Teoria
3h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
7h

Raonament en agents

L'alumne no només haurà d'atendre a les exposicions del professor, sino també participar a les discussions amb el professor i els seus companys sobre quan i com utilitzar cadascun dels tipus de raonament. Al primer treball del curs haurá d'identificar les característiques del típus de raonament que suporta l'entorn/llenguatge de programació d'agents escollit. Els alumnes presentaran a l'aula les conclussions del seu treball d'anàlisi davant els companys a l'entrega del primer treball.
Objectius: 3 5
Continguts:
Teoria
6h
Problemes
0.8h
Laboratori
0h
Aprenentatge dirigit
0.5h
Aprenentatge autònom
14h

Metodologíes Orientades a Agents

Students not only should attend the teacher lectures, but also participate in discussions with the teacher and other students on how to model distributed systems using the proposed methodologies. During the second assignment students should apply one of the methodologies to a real-like scenario to make an agent oriented design. During the presentation of the second assignment students will describe at the classroom their proposed design to the rest of the class.
Objectius: 5 4
Continguts:
Teoria
5h
Problemes
2h
Laboratori
0h
Aprenentatge dirigit
0.5h
Aprenentatge autònom
10h

Presentació del primer treball del curs: Anàlisi d'un Entorn/Llenguatge orientat a agents

This work will have two parts * A 30-45 min presentation (if possible with slides) in which students present their analysis on the agent-oriented framework they have chosen. The presentation should be understandable and didactic, and students should answer the questions made by others about their analysis. * a short written document which summarizes the important parts of the analysis made.
Objectius: 1 3
Setmana: 4
Tipus: entrega
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
1h
Aprenentatge autònom
0h

Coordinació i models socials

Students not only should attend the teacher lectures, but also participate in discussions with the teacher and other students on the different social structures and abstractions presented and how to model more flexible distributed systems. During the second assignment students should apply one or some of the social structures to their design. During the presentation of the second assignment students will describe at the classroom the social abstrations they included into thier design to the rest of the class.
Objectius: 5 4 6
Continguts:
Teoria
6h
Problemes
1h
Laboratori
0h
Aprenentatge dirigit
0.5h
Aprenentatge autònom
8h

Aplicacions del disseny orientat a agents

Students not only should attend the teacher lectures, but also participate in discussions with the teacher and other students on the discussion bout the different application examples. Furthermore, during the second assignment students should propose a real-like scenario where agent-oriented solutions are appropriate and apply the abstractions, mechanisms and social structures seen in the course. During the presentation of the second assignment students will describe at the classroom the chosen real-like scenario and motivate the suitability of an agent-oriented solution for it.
Objectius: 2 5 4 6 7
Continguts:
Teoria
4h
Problemes
1h
Laboratori
0h
Aprenentatge dirigit
0.7h
Aprenentatge autònom
7h

Presentación del segón treball del curs: Disseny d'un sistema orientat a agents

This work has two parts: * A 30-45 min presentation (if possible with slides) in which students explain the results of the programming exercise in a concise and dydactic way. At the end of the presentations the students should also properly answer the questions made by others about their work. * A demo of the prototype that has been built. * A written document which properly describes A) Description of the problem to solve; B) Design of a multiagent system using an Agent-oriented methodology seen during the course; C) Description of the prototype finally built; D) Analysis of the chosen agent language/platform
Objectius: 2 5 4 6 7
Setmana: 13
Tipus: entrega
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
2h
Aprenentatge autònom
0h

Exàmen Final

Examen final sobre tots els continguts del curs.
Objectius: 1 3 5 4
Setmana: 15 (Fora d'horari lectiu)
Tipus: examen final
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
6h

Metodologia docent

Les clases estan dividides en sessions de teoria i problemes.

A les sessions de teoria es desenvoluparan els coneixements de l'assignatura, intercalant l'exposició de nou material teòric amb exemples i la interacció amb els alumnes per tal de discutir els conceptes.

Les classes de problemes permetran aprofondir en els conceptes, les técniques i metodologíes explicats a les sessions de teoria. S'estimularà la participació de l'alumne per tal de comentar les alternatives possibles.

Apart de les clases de teoria es desenvoluparan petites pràctiques utilitzant eines i llenguatges propis de la Enginyeria del Software Orientada a Agents que permetran practicar i reforçar els coneixements de les classes de teoria. Els alumnes presentarán els resultats del seu treball als seus companys en sessións dedicades a l'aula.

Mètode d'avaluació

L'avaluació constarà d'un exàmen final i les notes dels treballs pràctics realitzats.

El càlcul de la nota final es farà de la següent manera:

NPT = nota del primer treball
NST = nota del segon treball
NF = nota de l'examen final

NOTA = NPT*0.3 + NST*0.5 + NF*0.2

Les competències del curs es valoraràn com a part de les notes de les activitats avaluatives.

Bibliografia

Bàsica:

Complementaria:

Capacitats prèvies

Capacitats prèvies sobre Lògica:
- Coneixement dels conceptes bàsics de lògica de proposicions i predicats
- Capacitat de formular un problema en termes lògics.
- Coneixements sobre Inferència lògica i resolució. Entendre les estratègies de resolució.

Capacitats prèvies sobre Programació i Algorísmica:
- Coneixement de les estructures d'arbres i grafs,
- Coneixement dels algorismes de recorregut i cerca sobre arbres i grafs.
- Nocions bàsiques de complexitat algorísmica.

Capacitats prèvies sobre programació d'agents assolits a l'assignatura previa "Introduction to Multi-Agent Systems"* :
- Coneixement dels conceptes bàsics: agent, sistema multiagent, entorn, percepció, actuació.
- Coneixement d'alguns mètodes basic de coordinació d'agents.
- Coneixement de les formes de comunicació d'agents.
- Nocions bàsiques sobre la programació de sistemes multiagents composats per agents reactius

*Els alumnes que no hagin cursat l'assignatura prèvia "Introduction to Multi-Agent Systems" rebràn un material específic a l'inici del curs per poder assolir el nivell bàsic necessari per un seguiment adequeat del mateix.