L'objectiu d'aquesta assignatura és donar a l'alumne els coneixements bàsics sobre les últimes tendències en l'ús de tècniques d'Intelligència Artificial en sistemes distribuïts de forma que pugui entendre-les i emprar-les en la seva pràctica professional. Es preveu que el contingut de l'assignatura es vagui actualitzant contínuament per incorporar les noves tendències que vaguin sorgint.
En aquest curs es presentaran metodologies, tècniques i tecnologies de la Intelligència Artificial que s'estan aplicant ja en la enginyeria de sistemes distribuïts per fer-los més flexibles, adaptables i reconfigurables. Es veurà, d'una banda, un nou paradigma de metodologies de disseny del software basat en agents, a on l'anàlisi i disseny de sistemes distribuïts utilitza conceptes de les societats i organitzacions humanes (actor, rol, responsabilitat, delegació de tasques) per a modelar flexiblement les possibles interaccions dins el sistema i les formes de recuperar-se de fallades. D'altra banda veurem com s'estan aplicant tecnologies intelligents (raonadors lògics, planificadors automàtics, mecanismes de negociació i argumentació) per a estendre les tecnologies de serveis web semàntics cap al seu potencial màxim, i per a per fer-los més flexibles i adaptatius.
Professorat
Responsable
Javier Béjar Alonso (
)
Hores setmanals
Teoria
2
Problemes
1
Laboratori
1
Aprenentatge dirigit
0
Aprenentatge autònom
6
Competències
Competències Tècniques
Competències tècniques comunes
CT4 - Demostrar coneixement i capacitat d'aplicació dels procediments algorísmics bàsics de les tecnologies informàtiques per a dissenyar solucions a problemes, analitzant la idoneïtat i la complexitat dels algorismes
CT4.3
- Demostrar coneixement i capacitat d'aplicació dels principis fonamentals i de les tècniques bàsiques dels sistemes intel·ligents i de la seva aplicació pràctica.
Competències Tècniques de cada especialitat
Especialitat enginyeria del software
CES1 - Desenvolupar, mantenir i avaluar serveis i sistemes software que satisfacin tots els requisits de l'usuari, que es comportin de forma fiable i eficient, que tinguin un desenvolupament i un manteniment assequible i que compleixin normes de qualitat aplicant les teories, els principis, els mètodes i les pràctiques d'Enginyeria del Software.
CES1.4
- Desenvolupar, mantenir i avaluar serveis i aplicacions distribuïdes amb suport de xarxa.
Competències Transversals
Raonament
G9 [Avaluable] - Capacitat de raonament crític, lògic i matemàtic. Capacitat de resoldre problemes en la seva àrea d'estudi. Capacitat d'abstracció: capacitat de crear i utilitzar models que reflecteixin situacions reals. Capacitat de dissenyar i realitzar experiments senzills, i analitzar-ne i interpretar-ne els resultats. Capacitat d'anàlisi, de síntesi i d'avaluació.
G9.3
- Capacitat crítica, capacitat d'avaluació.
Objectius
Conèixer els orígens i les bases de la computació distribuïda a Internet
Competències relacionades:
CT4.3,
Entendre els conceptes bàsics: Computació per Interacció, Orientació a Serveis, Cloud Computing, Future Internet
Competències relacionades:
CT4.3,
Conèixer possibles aplicacions de la Intelligència Artificial per als sistemes distribuïts a Internet
Competències relacionades:
CT4.3,
Entendre els conceptes bàsics d'Orientació a Serveis
Competències relacionades:
CT4.3,
Entendre els conceptes bàsics d'Orientació a Agents
Competències relacionades:
CT4.3,
Analitzar un problema de naturalesa distribuïda i identificar-ne els diferents actors i les seves funcionalitats
Competències relacionades:
G9.3,
CES1.4,
Dissenyar sistemes distribuits aplicant una metodologia orientada a agents
Competències relacionades:
CES1.4,
CT4.3,
Analitzar un disseny orientat a agents i identificar els punts a millorar
Competències relacionades:
G9.3,
CES1.4,
Entendre els conceptes bàsics sobre representació del context.
Competències relacionades:
CT4.3,
Analitzar un problema de naturalesa distribuïda i identificar-ne la informació de context que és necessària.
Competències relacionades:
G9.3,
CES1.4,
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:
G9.3,
CES1.4,
Dissenyar ontologies sobre un context aplicant adequadament una metodologia
Competències relacionades:
CES1.4,
CT4.3,
Entendre els conceptes relacionats amb la composició dinàmica de serveis
Competències relacionades:
CT4.3,
Descriure serveis web de forma que puguin ser incorporats en un procés de composició dinàmica
Competències relacionades:
CES1.4,
CT4.3,
Extreure i representar les accions necessàries per a resoldre la composició dinàmica mitjançant un planificador
Competències relacionades:
CES1.4,
CT4.3,
Entendre el concepte d'aprenentatge i conèixer alguns dels seus tipus.
Competències relacionades:
CT4.3,
Entendre la relació entre adaptació i aprenentatge.
Competències relacionades:
CT4.3,
Entendre com es pot aplicar l'aprenentatge automàtic a la adaptació a l'usuari.
Competències relacionades:
CT4.3,
Entendre com es pot aplicar l'aprenentatge automàtic a la adaptació a fallades.
Competències relacionades:
CT4.3,
Continguts
Introducció
Evolució de la Computació Distribuïda: dels RPCs a SOA. Concepte de 'Computation as interaction'. Noves tendències: Cloud Computing i Future Internet. El paper de la IA a SOA i la Future Internet.
Disseny d'aplicacions distribuïdes orientades a agents
Introducció a la Orientació a Serveis i l'estàndard W3C. Limitacions del model. Introducció a la Orientació a Agents i l'estàndard IEEE-FIPA. Conceptes bàsics: Agent i Sistema Multiagent. Metodologíes de disseny orientat a agents. Avantatges.
Modelant el context en sistemes distribuïts
Modelant el contexte a SOA: llenguatges de descripció de serveis, orquestració i coreografíes. Representació del contexte: domini, model de domini, coneixement, representacio del coneixement. Enginyeria del coneixement aplicada al desenvolupament de sistemes distribuïts a la Web. Representacions basades en Ontologíes. Web Semàntica i Linked Data com a model de representació.
Composició dinàmica de serveis
Descripció semàntica de serveis, Service Discovery i Service Matchmakers. Problemes dels models estàtics d'orquestració i coreografía. Diferents aproximacions a la Composició dinàmica: goal driven, state driven, utility driven. Planificació aplicada a la composició dinámica de serveis.
Adaptació a l'usuari. Perfilat d'usuaris
Adaptació implica aprenentatge. Conceptes bàsics de perfilat: perfil individual i perfil social. Aprenentatge inductiu, Sistemes Recomanadors i aprenentatge per reforç.
Altres aplicacions d'IA a sistemes distribuits
Governança mitjançant models socials: reputació, normes. Models d'estructures socials: equips, aliances, coalicions, organitzacions. Exemples.
Activitats
ActivitatActe avaluatiu
Introducció a la computació distribuïda
L'alumne coneixerà els orígens i les bases de la Computació Distribuïda i les noves tendències de futur. Per reforçar l'aprenentatge l'alumne haurà de llegir un article de la Comissió Europea sobre "Future Internet", disponible a la xarxa. Objectius:1234 Continguts:
Disseny d'aplicacions distribuïdes orientades a agents
L'alumne no només haurà d'atendre a les exposicions del professor, sino també fer exercicis pràctics sobre modelatge orientat a agents, i participar a les discussions amb el professor i els seus companys sobre quina és la forma millor de modelar problemes distribuits. Al laboratori l'alumne haurà d'aplicar el que ha aprés a un problema de dificultat mitjana. Objectius:45678 Continguts:
Entrega de la pràctica de modelat orientat a agents
Entrega de l'informe sobre la pràctica de modelat orientat a agents que els alumnes han realitzat a les sessions de laboratori. Objectius:5678 Setmana:
6 (Fora d'horari lectiu)
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Modelant el context en sistemes distribuïts
L'alumne no només haurà d'atendre a les exposicions del professor, sino també fer exercicis pràctics sobre modelatge del contexte, i participar a les discussions amb el professor i els seus companys sobre quina és la forma millor de modelar diferents aspectes del context d'un sistema distribuit. Al laboratori l'alumne haurà d'aplicar el que ha aprés a un problema de dificultat mitjana. Objectius:9101112
Teoria
7h
Problemes
4h
Laboratori
3h
Aprenentatge dirigit
0h
Aprenentatge autònom
21h
Entrega de la práctica sobre modelatge d'ontologíes
Entrega de l'informe de la pràctica sobre modelatge d'ontologíes que els alumnes han desenvolupat al laboratori. Objectius:9101112 Setmana:
8 (Fora d'horari lectiu)
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
2h
Parcial d'ECSDI
Parcial sobre modelatge orientat a agents i representació del contexte Objectius:56789101112 Setmana:
9
Teoria
2h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
5h
Composició dinàmica de serveis
L'alumne no només haurà d'atendre a les exposicions del professor, sinó també fer exercicis pràctics sobre descripció i composició de serveis, i participar a les discussions amb el professor i els seus companys sobre els problemes de la composició de serveis. Al laboratori l'alumne haurà d'aplicar el que ha aprés a un problema de dificultat mitjana. Objectius:131415 Continguts:
L'alumne no només haurà d'atendre a les exposicions del professor, sinó també fer exercicis pràctics sobre l'ús dels algorismes bàsics d'Aprenentatge Automàtic per l'aprenentatge de perfils, i participar a les discussions amb el professor i els seus companys sobre com utilitzar aquests algorismes. Objectius:16171819 Continguts:
L'alumne no només haurà d'atendre a les exposicions del professor, sinó també participar a les discussions amb el professor i els seus companys sobre l'impacte potencial que poden tenir les tècniques d'Intel·ligència Artificial sobre el futur d'Internet. Objectius:3 Continguts:
Entrega de la pràctica sobre composició de serveis
Entrega de l'informe de la pràctica sobre composició de serveis que els alumnes han desenvolupat al laboratori. Objectius:131415 Setmana:
14 (Fora d'horari lectiu)
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
1h
Examen final d'ECSDI
Examen final de tots els continguts del curs. Objectius:67810111214151819 Setmana:
15 (Fora d'horari lectiu)
Teoria
2h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
9h
Metodologia docent
Les clases estan dividides en sessions de teoria, problemes i laboratori.
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.
A les clases de laboratori es desenvoluparan petites pràctiques utilitzant eines i llenguatges propis de la Intel·ligència Artificial que permetran practicar i reforçar els coneixements de les classes de teoria.
Mètode d'avaluació
L'avaluació constarà d'un examen parcial, un exàmen final i una nota de laboratori.
L'examen parcial no és alliberatori i es farà a hores de clase.
La nota de laboratori provindrà dels informes que es faran de les pràctiques realitzades.
El càlcul de la nota final es farà de la següent manera:
NP = nota del parcial
NF = nota de l'examen final
NL = nota de laboratori
NOTA = max ((NP*0.25 + NF*0.25), (NP*0.15 + NF*0.35)) + NL*0.45 + Nota Competència
Avaluació de les competències
L'avaluació de la competència sobre raonament es basa en el treball realitzat durant les pràctiques de laboratori. La nota ABCD i la nota de curs es calcula a partir d'una rúbrica detallada que es donarà als alumnes a l'inici de curs.
Capacitats prèvies sobre arquitectures de serveis i disseny de serveis adquirides a l'assignatura Arquitectura del software (AS):
- Coneixement de les arquitectures de serveis.
- Coneixement dels principis del disseny de serveis.
- Coneixement dels patrons de disseny de serveis.
Capacitats prèvies sobre Lògica adquirides a l'assignatura Fonaments Matemàtics (FM):
- 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ó.