Créditos
4
Tipos
Optativa
Requisitos
Esta asignatura no tiene requisitos
, pero tiene capacidades previas
Departamento
CS
Web
http://www.cs.upc.edu/~jvazquez/teaching/masd/index.php
La primera mitad del curso presenta un nuevo paradigma de diseño, la Ingeniería del Software Orientada a Agentes (AOSE), dónde el análisis y diseño delssistemes distribuidos utiliza conceptos de las sociedades y organizaciones humanas (actor, rol, responsabilidad, delegación de tareas) para modelar, de una forma flexible, las interacciones entre los componentes distribuidos del sistema y las formas de recuperarse de quiebras.
La segunda mitad del curs presentará diversos mecanismos sociales (Confianza & Reputación, Estructuras Sociales, Teoría de Organizaciones, Sistemas Normativos), inspirados en las sociedades humanas y animales, que se pueden impelmentar computacionalmente para gestionar el equilibrio entre la flexibilidad de cada componente y el control del sistema en su conjunto.
Profesorado
Responsable
- Javier Vazquez Salceda ( jvazquez@cs.upc.edu )
Horas semanales
Teoría
3
Problemas
0
Laboratorio
0
Aprendizaje dirigido
0
Aprendizaje autónomo
5.33
Competencias
Genéricas
Profesionales
Trabajo en equipo
Uso solvente de los recursos de información
Analisis y sintesis
Básicas
Objetivos
-
Conocer los orígenes y las bases de la computación distribuida en Internet
Competencias relacionadas: CG3, CEP3, -
Conocer posibles aplicaciones de la Inteligencia Artificial para los sistemas distribuidos en Internet
Competencias relacionadas: CG3, CEP3, CB6, CB9, -
Entender los conceptos básicos de Orientación a Agentes
Competencias relacionadas: CT4, CT7, CB6, -
Analizar un problema de naturaleza distribuida e identificar los diferentes actores y sus funcionalidades
Competencias relacionadas: CG3, CT4, CT7, CB6, -
Diseñar sistemas distribuidos aplicando una metodologia orientada a agentes
Competencias relacionadas: CG3, CEP3, CT3, CT7, CB6, CB8, -
Extraer y representar el conocimiento necesario sobre el contexto para construir una aplicación distribuida en Internet que sea flexible y robusta.
Competencias relacionadas: CG3, CEP7, CT3, CT4, CT7, CB6, -
Diseñar ontologias sobre un contexto aplicando adecuadamente una metodologia
Competencias relacionadas: CG3, CT3, CT4, CT7, CB6, CB8,
Contenidos
-
Introducció a la Orientación a Agentes
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. -
Diseño de agentes: razonamiento en los agentes
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 -
Metodologias Orientadas a Agentes
Current trends in Software engineering. Agent-Oriented Software Engineering. Agent-Oriented Methodologies. The GAIA Methodology. The Prometheus Methodology -
Diseño social: coordinación y modelos sociales
Coordination in MAS. Coordination Structures. Social Models for Coordination. Trust and Reputation Models. Organizational Models. Institutional Models. -
Aplicaciones del diseño orientado a agentes
Agent-Oriented Design for 1) Electronic Negotiation Support, 2) Flexible Dynamic Web services, 3) Multi-robotic environments. Case studies for the practical assignments.
Actividades
Actividad Acto evaluativo
Introducción a la Orientación a Agentes.
El alumno conocerá los orígenes y las bases de la Orientación a Agentes así como algunas de las áreas de aplicación. Para reforzar el aprendizaje del alumno deberá leer el capítulo 1 del libro de Russel y Norvig (disponible on-line) y el libro "Agent Technology: Computing as interaction. A Roadmap to Agent Based Computing" (también disponible on-line).Objetivos: 1 3
Contenidos:
Teoría
3h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
5h
Razonamiento en Agentes
El alumno no sólo deberá atender a las exposiciones del profesor, sino también participar en las discusiones con el profesor y sus compañeros sobre cuándo y como utilizar cada uno de los algoritmos. En el primer trabajo del curso tendrán que indentificar las características del tipo de razonamiento que soporta el entorno/lenguaje de programación de agentes escogido. Los alumnos presentarán en el aula las conclusiones de su trabajo de análisis delande de sus compañeros durante la entrega del primer trabajo del curso.Objetivos: 3 5
Contenidos:
Teoría
6h
Problemas
0.8h
Laboratorio
0h
Aprendizaje dirigido
0.5h
Aprendizaje autónomo
10h
Metodologias Orientadas a Agentes
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.Objetivos: 5 4
Contenidos:
Teoría
5h
Problemas
2h
Laboratorio
0h
Aprendizaje dirigido
0.5h
Aprendizaje autónomo
10h
Presentación del primer trabajo del curso. Análisis de un Entorno/Lenguaje orientado a agentes
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.Objetivos: 1 3
Semana: 4
Teoría
0h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
0h
Coordinación i modelos sociales
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.Objetivos: 5 4 6
Contenidos:
Teoría
6h
Problemas
1h
Laboratorio
0h
Aprendizaje dirigido
0.5h
Aprendizaje autónomo
8h
Aplicaciones del diseño orientado a agentes
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.Objetivos: 2 5 4 6 7
Contenidos:
Teoría
4h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0.7h
Aprendizaje autónomo
5h
Presentación del segundo trabajo del curso: Diseño de un sistema orientado a agentes
This work has three 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/platformObjetivos: 2 5 4 6 7
Semana: 13
Teoría
0h
Problemas
0h
Laboratorio
0h
Aprendizaje dirigido
0h
Aprendizaje autónomo
0h
Metodología docente
Las clases están divididas en sesiones de teoría y problemas.En las sesiones de teoría se desarrollarán los conocimientos de la asignatura, intercalando la exposición de nuevo material teórico con ejemplos y la interacción con los alumnos para discutir los conceptos.
Las clases de problemas permitirán profundizar en los conceptos, las técnicas y metodologías explicados en las sesiones de teoría. Se estimulará la participación del alumno a fin de comentar las alternativas possibles.
Aparte de las clases de teoria, se desarrollarán pequeñas prácticas utilizando herramientas y lenguajes propios de la Ingeniería del Software Orientada a Agentes que permitirán practicar y reforzar los conocimientos de las clases de teoría. Los alumnos presentarán los resultados de su trabajo a sus compañeros en sesiones dedicadas en el aula.
Método de evaluación
La evaluación constará de un examen final y las notas de los trabajos prácticos realizados.El cálculo de la nota final se hará de la siguiente manera:
NPT = nota del primer trabajo
NST = nota del segundo trabajo
NF = nota del examen final
NOTA = NPT*0.3 + NST*0.5 + NF*0.2
Las competencias del curso se valorarán como parte de las notas de las actividades avaluatorias.
Bibliografía
Básico
-
An introduction to multiagent systems
- Wooldridge, M,
John Wiley & Sons,
2009.
ISBN: 9780470519462
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003779579706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Artificial intelligence: a modern approach
- Russell, S.J.; Norvig, P,
Pearson,
2022.
ISBN: 9781292401133
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991005066379806711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Moral origins: the evolution of virtue, altruism, and shame
- Boehm, C,
Basic Books,
2012.
ISBN: 9780465020485
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991004000919706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Agent technology: computing as interaction: a roadmap for agent based computing
- Luck, M.; McBurney, P.; Shehory, O.; Willmott, S,
University of Southampton,
2005.
ISBN: 0854328459
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991004000109706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Multiagent systems
- Weiss, G. (ed.),
The MIT Press,
2013.
ISBN: 9780262018890
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991004001869706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Multiagent systems : algorithmic, game-theoretic, and logical foundations
- Shoham, Yoav; Leyton-Brown, Kevin,
Cambridge University Press,
2009.
ISBN: 9780521899437
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003722939706711&context=L&vid=34CSUC_UPC:VU1 -
Developing intelligent agent systems : a practical guide
- Padgham, Lin; Winikoff, Michael,
John Wiley & Sons,
cop. 2004.
ISBN: 0470861207
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003068249706711&context=L&vid=34CSUC_UPC:VU1
Complementario
-
Rules of encounter: designing conventions for automated negotiation among computers
- Rosenschein, J.S.; Zlotkin, G,
The MIT Press,
1994.
ISBN: 0262181592
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991001432519706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
Capacidades previas
Capacidades previas sobre Lógica:- Conocimiento de los conceptos básicos de lógica de proposiciones y predicados
- Capacidad para formular un problema en términos lógicos.
- Conocimientos sobre Inferencia lógica y resolución. Entender las estrategias de resolución.
Capacidades previas sobre Programación y Algorísmica:
- Conocimiento de las estructuras de árboles y grafos,
- Conocimiento de los algoritmos de recorrido y búsqueda sobre árboles y grafos.
- Nociones básicas de complejidad algorítmica.
Capacidades previas sobre programación de agentes alcanzados en la asignatura previa "Introduction to Multi-Agent Systems"* :
- Conocimiento de los conceptos básicos: agente, sistema multiagente, entorno, percepción, actuación.
- Conocimiento de algunos métodos básicos de coordinación de agentes.
- Conocimiento de las formas de comunicación de agentes.
- Nociones básicas sobre la programación de sistemas multiagentes compuestos por agentes reactivos