Podríem descriure l’aprenentatge per reforç d’aquesta manera.
“Molt bé! Té, un caramel!”
D’aquesta manera, l’individu que rep el caramel sap que allò que ha fet està bé, i que els passos que l’han dut a fer allò també són bons ja que el permeten obtenir un benefici.
En el camp de la Intel·ligència Artificial també existeix aquest concepte manllevat del camp de la psicologia, i es fa servir en problemes que són massa complexos com per programar-los explícitament. Quan la casuística és molt gran, de vegades és millor deixar que l’agent (un robot, un jugador “màquina” en un joc, la intel·ligència que controla una planta hidroelèctrica…) trobi la millor solució per prova i error.
Q-Learning és una tècnica d’aprenentatge per reforç que treballa sobre el model de decisió de Markov. Aquesta tècnica s’estudia a l’assignatura d’Aprenentatge a la FIB, i de fet acostuma a entrar com a problema a l’examen final.
Els elements que componen un problema d’aprenentatge per reforç són un conjunt d’estats possibles, un conjunt d’accions que l’agent pot realitzar i una funció de reforç que informa l’agent dels resultats obtinguts després d’efectuar una acció a l’entorn.
Durant un procés d’entrenament generalment llarg, el robot prova diferents seqüències d’estats, canviant d’un al altre de manera aleatòria o prefixada, i va calculant el reforç que s’obté per cadascuna de les seves accions. Si s’arriba a un estat que proporciona un reforç, aquest es propaga pels estats anteriors que permeten arribar en aquest, de manera que el camí cap a l’èxit es va poc a poc definint.
Per provar de manera visual aquesta funció, vaig desempolsar el robot de Lego, i li vaig implementar Q-Learning. Aquí podeu veure el codi abans d’aplicar-lo al robot, de manera que el podeu provar sense tenir-ne. En aquest exemple els reforços són implícits en el codi, és a dir que per cada transició ja hi ha un esforç definit.
A la versió aplicada al robot, el reforç és obtingut quan aquest aconsegueix prémer el polsador. El diagrama de les accions que pot realitzar el robot és el següent:
Els dibuixets dels palets negres són el braç robòtic. Com podeu veure no hi ha cap reforç definit, i serà quan premi el polsador quan el rebrà. D’aquesta manera serà un robot molt dinàmic.
En aquest vídeo podeu observar-ne el comportament.
Els primers moviments que fa són d’entrenament. Un cop acabat l’entrenament i estudiat el reforç que ha obtingut, executa les accions que li proporcionen més reforç. Durant la primera part del video, el fet de prémer el botó li proporciona reforç, mentre que a la segona part del vídeo, figura que el botó li proporciona un càstig.
Podeu veure com a la primera part aprèn que ha de pitjar el botó, mentre que a la segona part aprèn que s’ha de quedar allunyat del botó.
Si teniu idees per fer seran benvingudes!
Fins la propera!







