Logo UAB

Intel·ligència Artificial

Codi: 102768 Crèdits: 6
2024/2025
Titulació Tipus Curs
2502441 Enginyeria Informàtica OB 2

Professor/a de contacte

Nom:
Maria Isabel Vanrell Martorell
Correu electrònic:
maria.vanrell@uab.cat

Equip docent

Jordi Cortes Comellas
Joaquin Cerdà Company
Mehmet Anil Akbay

Idiomes dels grups

Podeu consultar aquesta informació al final del document.


Prerequisits

Atès el caràcter introductori de l’assignatura s’assumirà que no es posseeix cap tipus de coneixement previ sobre la matèria. És responsabilitat de la pròpia assignatura proporcionar a l'alumnat un mitjà per adquirir els coneixements descrits a l’apartat de continguts de l’assignatura.

Sobre altres coneixements s'espera de l'alumnat:

  • haver cursat el batxillerat tecnològic o científic
  • haver cursat les assignatures de programació de 1r i 2n
  • tenir les nocions bàsiques de programació en Python
  • tenir coneixements a nivell d’usuari d’algun tipus de plataforma (Windows, Mac o Linux),
  • tenir accés a un ordinador, si és portàtil millor.

 


Objectius

Aquesta assignatura té un caràcter general i introductori al camp de la intel·ligència artificial (IA). Els objectius que es persegueixen són dos:

a)    familiaritzar l'alumnat en la resolució de problemes d’IA amb les seves particularitats en la representació, l’avaluació i la metodologia específica de resolució, i

b)    fer que l'alumnat coneixi un ventall de tècniques i algorismes bàsics que permetran solucionar els problemes plantejats i millorar les seves habilitats en programació.

Més concretament aquests objectius perseguiran:

  • Proporcionar una introducció històrica i d’objectius del camp de la IA.
  • Introduir l'alumnat al problema de la selecció d'una bona representació de coneixement com a eix clau per a la resolució dels problemes de la IA.
  • Familiaritzar l'alumnat amb quatre representacions de coneixement bàsiques i els seus algorismes corresponents.
  • Dotar l’alumnat amb la capacitat de dissenyar solucions a problemes contextualitzats.
  • Dotar l’alumnat amb la capacitat de presentar i argumentar l’adequació de les solucions dissenyades.

Competències

  • Adquirir hàbits de pensament.
  • Adquirir hàbits de treball personal.
  • Capacitat per concebre, desenvolupar i mantenir sistemes, serveis i aplicacions informàtiques emprant els mètodes de l'enginyeria del software com a instrument per a assegurar-ne la qualitat.
  • Capacitat per concebre, redactar, organitzar, planificar, desenvolupar i signar projectes en l'àmbit de l'enginyeria informàtica que tinguin per objecte la concepció, el desenvolupament o l'explotació de sistemes, serveis i aplicacions informàtiques.
  • Coneixement, disseny i utilització eficient dels tipus i estructures de dades més adequades a la resolució del problema.
  • Conèixer i aplicar els principis fonamentals i les tècniques bàsiques dels sistemes intel·ligents i la seva aplicació pràctica.
  • Conèixer i aplicar els procediments algorítmics bàsics de les tecnologies informàtiques per dissenyar solucions a problemes i per analitzar la idoneïtat i la complexitat dels algoritmes proposats.

Resultats d'aprenentatge

  1. Aplicar diferents mètodes, arquitectures, conceptes i patrons software per al disseny, desenvolupament i anàlisi de programes informàtics.
  2. Desenvolupar el pensament sistèmic.
  3. Dissenyar, desenvolupar, seleccionar i avaluar aplicacions, assegurant la seva fiabilitat i seguretat.
  4. Identificar i definir la solució computacional al reconeixement de patrons, la presa de decisions basada en l'exploració d'alternatives, el raonament amb incertesa i la planificiació de tasques.
  5. Identificar la complexitat computacional d'un algorisme en termes de recursos de memòria i temps d'execució.
  6. Seleccionar i aplicar la combinació d'estructures de dades i estratègies de resolució més apropiada per resoldre de manera eficient un problema informàtic.
  7. Treballar de manera autònoma.

Continguts

1. Introducció a la IA. Objectius i breu història del camp. Definició d'agents racionals, metodologia de resolució de problemes i representació de coneixement.

2. Resolució de problemes de presa de decisions per exploració d'alternatives

2.1. Cerca No informada. Nocions bàsiquessobre cerca i recordatori d'algorismes de cerca no-informada. Anàlisi dels algorismes de cerca: completesa, optimitat i complexitat. Concepte d'heurística i exemples. 

2.2. Cerca informada: bàsica i òptima. GBFS i A* i les seves propietats Concepte de factor de ramificació efectiu. Propietats interessants de les heurístiques.

2.3. Cerca local.  Definicions bàsiques, avantatge i inconvenients. Reinterpretació de la cerca local com lexploració de la funció heurística. Cerca local quan coneixem lestat objectiu: Algorisme Hill-Climbing. Problemes de la Cerca local: màxims locals, planures i crestes. Cerca local quan no coneixem lestat objectiu: Steepest Ascent, Steepest Ascent amb control de màxims locals, Simulated Annealing.

2.4. Cerca amb adversaris basada en Minimax. Definicions bàsiques. AlgorismeMinimax i Poda alfa-beta. Anàlisi de les complexitats. Modificacions al Minimax: aprofundiment progressiu, heurística d'extensió singular (efecte horitzó). Exemples de funcions heurístiques

2.5. Ceraca amb adversaris basada en Simulacions aleatòries. Definicions bàsiques. Algorisme de Monte-Carlo Tree Search. Exemples.

3. Resolució de problemes de reconeixement de patrons.

3.1. Tècniques estadístiques. Espais de característiques com a representació pel raonament basat en casos. Definicions bàsiques de l'espai de característiques. Selecció de característiques i reducció de di1ensió. Classificació amb aprenentatge supervisat: funcions de decisió, assumpcions sobre les distribucions de les dades d'aprenentatge i cerca local per trobar les funcions de decisió i decisió basada en el veí més proper. Classificació amb aprenentatge no supervisat: algorisme k-means, cerca de la millor k amb el discriminant de Fisher. Anàlisi dels algorisme.

3.2. Tècniques estructurades. Grafs o xarxes semàntiques. Definicions bàsiques i representació amb matrius d'adjacència. El problema de la correspondència de grafs, algorismes bàsics, millores i complexitat. Correspondència de grafs inexacte: mesures de similitud, distància d'edició. Cas d'estudi: string matching.

4. Resolució de problemes de raonament

4.1. Lògica i mecanismes dinferència. Representació de coneixement: lògica proposicional i lògica de predicats. Repàs general dels algorismes bàsics: taules de veritat, deducció natural, resolució, unificació i algorismes de pas a forma clausal. Definicions bàsiques sobre sistemes basats en regles: base de regles, memòria de treball, encadenament de regles i estratègies de resolució de conflictes.

 


 

       Introducció a la IA. Objectius i breu historia del camp. Definició d'agents racionals, metodologia de resolució de problemes i representació de coneixement.

 

2.       Resolució de problemas de reconeixement de patrons.

2.1. Tècniques estadístiques. Espais de característiques com a representaciópel raonamentbasat en casos.<spanstyle="mso-spacerun: yes;">  Definicion bàsiques de larepresentació. El problema de la classificació automàtica i l'aprenentage supervisat i no-supervisat. Funcions de decisió. Assumpcions sobre les distribucions de les dades d'aprenentatge. Selecció de característiques. k-means.

2.2. Tècniques estructurades. Grafs o xarxes semàntiques.Definicions bàsiques. El problema de la correspondència de grafs. Repàs a la representació amb matrius d'adjacència. Introducció de mesures de similitud.

3.       Resolució de problemes de presa de decisions per exploració d'alternatives

3.1. Cerca informada.  Nocions bàsiques sobre cerca i recordatorid'algorismes de cerca no-informada. Anàlisi dels algorismes de cerca: completesa, optimalitat i complexitat. Concepte d'heurística i exemples. Cerca infomada bàsica i òptima. A* i anàlisi de les propietats de l'A*. Concepte de factor de ramificació efectiu. Propietats interessants de les heurístiques. Cerca informada local. Problemes de la cerca local. Hill-climbing, steepest ascent.

3.2.Cerca amb adversaris.  Definicions bàsiques. Algorisme del minimax. Exemples. Poda alfa-beta.Anàlisi de les complexitats. Modificacions al minimax: aprofundiment progressiu, poda heurística, heurística d'extensió singular (efecte horitzó). Exemples de funcions heurístiques.

3.3. Cerca per a satisfaccióde restriccions. Definicions bàsiques. Repàs de l'algorisme de Backtracking. Anàlisi de complexitat. Exemples en Prolog. Algorisme de Backtracking amb Forward checking. Aplicacióa la interpretació de figures trièdriques.

4.       Resolució de problemas de raonament

4.1. Lògica i mecanismos d’inferència.  Representació més general del coneixement. Repàs general dels mecanismos bàsics: deducció natural, resolució, formes normals i algorismes decanvi de forma, programació lògica, prolog. Problemes de la lògica per a la resolució de problemes de canvis d'estat. Càlcul de situacions. Mètode de Green. Problema del frame. Axiomes de marc de referència. Sistemes basatsen regles. Definicions bàsiques: base de regles, memòria de treball,encadenament de regles. Exemples. Encadenament endavant i enrere. Anàlisi de l'encadenament endavant.

4.2. Raonament amb incertesa.  Representació de coneixement amb incertesa o vaguetat. Aproximació basada en la definició de factors de certesa. Aproximació probabilística basada en les probabilitats condicionades i el teorema de Bayes. Aproximació basada en la teoria dels conjunts difusos. Aplicació en tots els casos a la propagació de la incertesa en coneixement representaten regles. Exemple de control difús d'un procés. 

 


Activitats formatives i Metodologia

Títol Hores ECTS Resultats d'aprenentatge
Tipus: Dirigides      
Classes de Teoria 30 1,2 2, 4, 5
Tipus: Supervisades      
Classes de Problemes 10 0,4 2, 4, 5, 7
Classes de Pràctiques 12 0,48 1, 4, 6
Tipus: Autònomes      
Estudi Individual 38 1,52 2, 4, 7
Pràctiques 51 2,04 1, 2, 3, 5, 6, 7

La intel·ligència artificial es defineix pels tipus de problemes que intenta solucionar, per tant és obvi que serà la tipologia de problemes la que dirigirà l’organització de tots els continguts. Es faran tres tipus de sessions:

Classes de teoria: Seran classes  de tipus magistrals en les que l’objectiu és que el professorat expliqui els continguts teòrics de l’assignatura, fomentant la participació que permeti assegurar que l'alumnat va entenent els continguts teòrics que es transmeten.

Classes de problemes: Seran classes amb grups més reduïts d'alumnat que facilitin la interacció. En aquestes classes es persegueix reforçar la comprensió dels temes de la teoria plantejant casos pràctics que requereixin el disseny d’una solució en la que es facin servir els mètodes vistos a les classes de teoria. És impossible seguir les classes de problemes si no es segueixen els continguts de les classes de teoria. A les sessions de problemes es faran qüestionaris interactius que permetin avaluar la participació i els assoliments dels estudiants. 

Classes de pràctiques: Són classes en les que es duran a terme diferents tipus d’activitats relacionades amb la realització individual i en equip de projectes contextualitzats. Es duen a terme tres tipus d'activitats: (a) sessions de treball en equip tutoritzades pel professor en les que es faran qüestionaris interactius que permetin avaluar la participació i els assoliments de l'alumnat.  (b) sessions d'examen per avaluar el coneixement individual del codi de l'alumnat, (c) sessions de presentació de resultats en que tots els membres de l'equip de treball expliquen els resultats del seu projecte.

 

Les competències transversals que es treballen són

  • L'adquisició d'hàbits de pensament, i en concret el desenvolupament del pensament sistèmic.

Aquesta competència s'adquireix tant a partir dels coneixements teòrics, ja que tots els continguts estan basats en la construcció de sistema intel·ligents amb mòduls que interactuen, com des del punt de vista de les pràctiques en que els estudiants treballen en equip i experimenten la dependència que es genera en el seu treball. Aquesta competències és avaluada en els exàmens de teoria, en l'avaluació de les entregues de problemes i en l'avaluació de la pràctica a tots els nivells.

  • L'adquisició d'hàbits de treball personal, i en concret el treballar de manera autònoma

Aquesta competència s'adquireix també en la capacitat d'estudiar autònomament els continguts teòrics, en l'entrega individual dels problemes i en la participació en la pràctica. En els tres àmbits el treball individual és avaluat, a teoria a través de l'examen, a problemes amb la revisió de les entregues per part del professorat i en les pràctiques a partir del qüestionari individual, la participació de l'alumnat en la presentació conjunta dels resultats, i la intra-avaluació que es fan entre ells dins de cada grup.

Nota: es reservaran 15 minuts d'una classe, dins del calendari establert pel centre/titulació, per a la complementació per part de l'alumnat de les enquestes d'avaluació de l'actuació del professorat i d'avaluació de l'assignatura/mòdul.


Avaluació

Activitats d'avaluació continuada

Títol Pes Hores ECTS Resultats d'aprenentatge
Defensa del projecte pràctic (Informe+Codi+Intra_grupal+Presentació+Qüestionari) 0.4 3 0,12 1, 2, 3, 4, 5, 6, 7
Entrega dels problemes 0.1 0 0 4, 5, 6, 7
Exàmens individuals 0.5 6 0,24 4, 5, 6

Per avaluar el nivell d’aprenentatge de l’alumnat s’estableix una fórmula que combina l’aprenentatge de coneixements, la capacitat de resolució de problemes i les capacitats de treballar en equip, així com de la presentació dels resultats obtinguts.

La nota final es calcula ponderadament de la següent manera i d’acord amb les diferents activitats que es duen a terme:

     Nota final = 0.5 * Nota Teoria + 0.1 * Nota Problemes + 0.4 * Nota Pràctiques

S'aplicarà aquesta fórmula sempre que la nota de teoria sigui més gran o igual que 5, i la nota de pràctiques sigui més gran que 6. No hi ha cap restricció sobre la nota de problemes. Si el càlcul de la fórmula surt >=5, però no arriba al mínim exigit en alguna de les activitats d'avaluació, aleshores la nota que es posarà a l'expedient és de 4.5. 

La nota de teoria es calcula a partir de la mitjana de les notes dels dos exàmens parcials:

    Nota Teoria = 0.5 * Nota Parcial 1 + 0.5 * Nota Parcial 2

per poder calcular aquesta nota, les notes dels Parcials han de ser superiors a 3.5. Quan es publiquin les notes dels exàmens s'anunciarà la data i l'hora d'una sessió de revisió de l'examen. 

Examen de recuperació. En cas que la nota de teoria no arribi al nivell adequat per obtenir una nota final aprovada, l'alumnat es pot presentar a un examen de recuperació. Per calcular la nota final de Teoria es considera el màxim entre la nota obtinguda en l'avaluació de cada parcial durant el curs i l’examen de recuperació de cada parcial.

La nota de problemes té com objectiu provocar que l’alumnat entri amb els continguts de l’assignatura de manera continuada i a partir de petits problemes que facin que es familiaritzi directament en l’aplicació de la teoria. Com a evidència d'aquesta activitat es demana una entrega setmanal dels problemes resolts i la participació activa de l'alumant a les sessions setmanals de problemes: 

    Nota Problemes = 0.7 * Avaluació Entregues + 0.15 * Assistència Sessions + 0.15 * Nota Qüestionaris Sessions

per poder calcular aquesta nota el % d'entregues fetes ha de ser superior al 70%. 

La nota de pràctiques té un pes essencial a la nota i pretén que l’alumnat implementi i explori les tècniques estudiades dins d'un projecte amb un objectiu global i contextualitzat. A més a més, l’alumnat ha de demostrar les seves habilitats en fer tot aquest treball individualment i en equip i presentar convincentment els resultats.La nota es calcula de la següent manera:

     Nota Pràctiques = 0.5 * Nota Projecte 1 + 0.5 * Nota Projecte 2

Per a poder calcular aquesta les Nota Projecte 1 i 2  han de ser superiors o igual a 6. La nota de cada projecte es calcula a partir d'un compendi de notes:

     Nota Projecte 1 = 0.6 * Nota Codi + 0.4 * Nota Qüestionari

  • Nota Codi: s’avalua amb una sèrie de proves de test que es passaran amb cada entrega. Aquestes avaluen la correctesa i l’eficiència del codi.
  • Nota Qüestionari: s'avalua en forma d'un examen amb accés al propi codi.

        La Nota de Codi i la Nota de Qüestionari han de ser superiors o iguals a 5.

     Nota Projecte 2= 0.75 * Nota Grup + 0.25 * Nota Individual

  • Nota Grup = 0.6 * Nota Codi + 0.3 * Informe + 0.1 * Presentació Grup
  • Nota Individual =  0.5 * Presentació Individual + 0.5 * Participació Grupal

        La Nota de Codi i la Nota Individual han de ser superiors o iguals a 5.

     L'assistència a les Sessions de Pràctiques ha de ser superior al 70% i l'assistència a la sessió de la presenació Oral és obligatòria per tots els membres del grup. Es recomana portar una ordinador portàtil personal per fer els exàmens de pràctiques i un telèfon mòbil per als qüestionaris de les Sessions de Problemes i Pràctiques. 

Sessions de recuperació. En el cas que la Nota d'un Projecte no arribi al nivell adequat per obtenir la nota final aprovada, l'alumnat tindrà l’opció de recuperació. En el cas d’haver de recuperar la Nota Individual del Projecte 2 aquesta es farà amb un Qüestionari semblant al del Projecte 1.En cas que alguna nota d'un projecte s’hagi hagut de recuperar la nota final d'aquell projecte serà com a màxim de 7.

Avaluació única

L’avaluació única de l’assignatura constarà de les següents activitats d’avaluació:

  • Activitats per a l'avaluació de la Teoria: S'han de fer 2 Exàmens Parcials quees recuperen per separat (50%, 25% cada un, 2.5 hores).
  • Activitats per a l'avaluació dels Problemes: S'han de fer Entrega de 12 Enunciats de Problemes Resolts (10%)
  • Activitats per a l'avaluació de les Pràctiques: S'han d'implementar 2 Projectes que requeriran diferents activitats per ser avaluats:
    1. Entrega Codi del Projecte 1 (12%)
    2. Examen del Projecte 1 (8%)
    3. Entrega Codi del Projecte 2 (12%)
    4. Entrega Informe del Projecte 2 (6%)
    5. Examen del Projecte 2 (2%)

Per a poder calcular la nota final caldrà que algunes notes de les activitats anteriors superin els següents llindars:

  • Exàmens parcials 1 i 2 superiors o iguals a 3.5.
  • Mitjana dels exàmens parcials 1 i 2  superior o igual a 5.
  • Codi del Projecte 1 superior o igual a 6.
  • Examen del Projecte 1 i del Projecte 2 superior o igual a 5.
  • Codi, Informe del Projecte 2  superiors o iguals a 5. 

Tant per la recuperació com per la revisió de la qualificació final, s'aplicarà el mateix sistema que per l’avaluació continuada.

Notes Importants:

En cas de no superar l'assignatura degut a que alguna de les activitats d'avaluació no arriba a la nota mínima requerida, la nota numèrica de l'expedient serà el mínim entre 4.5 i la mitjana ponderada de les notes, amb l'excepció que la nota numèrica de l'expedient serà el mínim entre 3.0 i la mitjana ponderada de les notes en cas que l'alumnat hagi comès irregularitats en un acte d'avaluació tals com els que l'expliquen més abaix (i per tant no serà possible l'aprovat per compensació).

L'alumnat tindrà la qualificació de "No Avaluable" en el cas que l'alumnat no hagi participat en cap de les activitat d'avaluació.

L'alumnat tindrà una nota de "Matricula d'Honor" si el seu número en el ranking està per sota del nombre màxims de MH permeses en el curs, i la seva nota final és superior a un llindar que establirà el professorat en el moment que tingui totes les notes finals.

Les dates d'avaluació continuada i lliurament de treballs es publicaran al Campus Virtual i poden estar subjectes a canvis de programació per motius d'adaptació a possibles incidències. Sempre s'informarà a cv.uab.cat sobre aquests canvis ja que s'entén que aquesta és la plataforma habitual d'intercanvi d'informació entre professorat i alumnat.

En el cas d'alumnat repetidor de l'assignatura no es farà cap convalidació amb una nota obtinguda en un any anterior.

Sense perjudici d'altres mesures disciplinàries que s'estimin oportunes, i d'acord amb la normativa acadèmica vigent, les irregularitats comeses per l'alumnat que puguin conduir a una variació de la qualificació es qualificaran amb un zero (0). Les activitats d'avaluació qualificades d'aquesta forma i per aquest procediment no seran recuperables. Si és necessari superar qualsevol d'aquestes activitats d'avaluació per aprovar l'assignatura, aquesta assignatura quedarà suspesa directament, sense oportunitat de recuperar-la en el mateix curs. Aquestes irregularitats inclouen, entre d'altres:

  • còpia total o parcial d'una pràctica, informe, o qualsevol altra activitat d'avaluació;
  • deixar copiar;
  • ús no autoritzat i/ono referenciat de la IA (p. ex,Copilot, ChatGPToequivalents) per a resoldre exercicis, pràctiques i/o qualsevol altra activitat avaluable;
  • presentar un treball de grup no fet íntegrament pels membres del grup;
  • presentar com a propis materials elaborats per un tercer, encara que siguin traduccions o adaptacions, i en general treballs amb elements no originals i exclusius de l'alumnat.
  • tenir dispositius de comunicació (com telèfons mòbils, smart watches, etc.) accessibles durant les proves d'avaluació teòric-pràctiques individuals (exàmens).

 En resum: copiar, deixar copiar o plagiar en qualsevol de les activitats d'avaluació equival a un SUSPENS amb nota inferior o igual a 3,0.

 

 


Bibliografia

  • S. Russell i P. Norvig, Artificial Intelligences - A modern approach. Prentice Hall, 2003, http://aima.cs.berkeley.edu/
  • Tveter, Donald R., (1998), The Pattern Recognition basis of Artificial Intelligence. IEEE Computer Society.
  • Stuart Russell. Human Compatible: AI and the Problem of Control Penguin Publishing Group, Octubre 2019
  • Melanie Mitchell. Artificial Intelligence: A Guide for Thinking Humans. Farrar, Straus and Giroux, Octubre 2019.

Vídeos interessants:

  • Documental CODEBREAKER http://www.turingfilm.com/about/overview
  • Documental Netflix AlphaGo (2017) https://es.wikipedia.org/wiki/AlphaGo_(pel%C3%ADcula)

Programari

Entorn de programació en Python amb especial atenció a la llibreria Numpy


Llista d'idiomes

Nom Grup Idioma Semestre Torn
(PAUL) Pràctiques d'aula 411 Anglès segon quadrimestre matí-mixt
(PAUL) Pràctiques d'aula 412 Anglès segon quadrimestre matí-mixt
(PAUL) Pràctiques d'aula 431 Català segon quadrimestre matí-mixt
(PAUL) Pràctiques d'aula 432 Català segon quadrimestre matí-mixt
(PAUL) Pràctiques d'aula 451 Català segon quadrimestre tarda
(PAUL) Pràctiques d'aula 452 Català segon quadrimestre tarda
(PLAB) Pràctiques de laboratori 411 Anglès segon quadrimestre matí-mixt
(PLAB) Pràctiques de laboratori 412 Anglès segon quadrimestre matí-mixt
(PLAB) Pràctiques de laboratori 413 Anglès segon quadrimestre matí-mixt
(PLAB) Pràctiques de laboratori 414 Anglès segon quadrimestre matí-mixt
(PLAB) Pràctiques de laboratori 415 Català segon quadrimestre matí-mixt
(PLAB) Pràctiques de laboratori 416 Català segon quadrimestre matí-mixt
(PLAB) Pràctiques de laboratori 417 Català segon quadrimestre matí-mixt
(PLAB) Pràctiques de laboratori 418 Català segon quadrimestre matí-mixt
(PLAB) Pràctiques de laboratori 419 Català segon quadrimestre matí-mixt
(PLAB) Pràctiques de laboratori 420 Català segon quadrimestre matí-mixt
(PLAB) Pràctiques de laboratori 421 Català segon quadrimestre matí-mixt
(PLAB) Pràctiques de laboratori 422 Català segon quadrimestre matí-mixt
(TE) Teoria 41 Anglès segon quadrimestre matí-mixt
(TE) Teoria 43 Català segon quadrimestre matí-mixt
(TE) Teoria 45 Català segon quadrimestre tarda