Skip to main content

Sessione 1

Control Task

Il Task di Controllo è una sequenza di stati e azioni, gli elementi dei task di controllo sono:

1) Stati S(t) -  sono, come dice la parola, sono dei momenti nel tempo che assumono un certo valore

2) Azioni A -  sono le azioni eseguibili nell'ambiente basate sullo stato del task ed eseguite in un determinato momento nel tempo

3) Ricompensa R - è un valore che l'agente riceve dopo aver eseguito un'azione

4) Agente - è l'entita che partecipa al task che osserva lo stato ed effettua le azioni.

5) L'ambiente - è dove vengono eseguite le azioni da parte dell'agente ed ottenuta una ricompensa e una osservazione.

MDP

MDP sta per processo decisionale di Markov, è un template che serve per descrivere e gestire i task di controllo.

E' un controllo di processo stocastico basato su un tempo discreto.

Screenshot 2023-09-10 102822.png

L'MDP si basa su 4 elementi detti (S,A,R,P) ovvero:

  • il set di possibili stati appartenenti al task
  • il set di possibili azioni che possono essere intraprese in ciascun stato
  • il set di possibili ricompense restituite a fronte di una azione intrapresa nello stato
  • la probabilità di passare da uno stato all'altro eseguendo ogni possibile azione.

Screenshot 2023-09-10 102822.png

L'MDP ha una importante proprità, ovvero la probabilità di visitare lo stato successivo dipende esclusivamente dallo stato attuale, il processo di Markov NON ha quindi memoria del passato.

MDP si diverifica in due tipologie ovvero:

  • Finito
  • Infinito
  • Episodico
  • Continuo

Nella versione versione finita le azioni, gli stati e le ricompense sono finite, mentre nella versione infinita uno o più dei tre valori sono infiniti. (un esempio di task finito è il labirinto griglia, mentre infinito può essere la guida automatica perchè il valore della velocità è infinito)

Nella versiona episofica l'episodio ha uno stato terminale mentre (come per es. l'uscita dal labirinto) nella versione continua non esiste uno stato stato terminale.

Traiettoria vs Episodio

La traiettoria è la seguenza: stato-azione-ricompensa,  partendo da uno stato iniziale fino a giungere ad uno stato finale. La traiettoria di identifica con la lettera greca tau 𝛕

Screenshot 2023-09-10 102822.png

L'episodio in invece è una traiettoria che inizia da uno stato e finisce nello stato finale.

Ricompensa vs Ritorno

La ricompensa è il risultato immediato che l'azione produce.

Il ritorno è la somma delle ricompense che l'agente ottiente da un certo momento nel tempo (t) finchè lo stato è completato. Il ritorno è identificato dalla lettera G

Ovvero:

image.png

L'intento è quindi quello di massimizzare il ritorno atteso.


Fattore di sconto

Il fattore di sconto serve per massimizzare il ritorno nella maniera più veloce e ottimale possibile.

Per ottimizzare il ritorno bisogna quindi moltiplicare la rimpensa ottenuta da ciascuna azione per un fattore di sconto gamma (rappresentato dal carattere γ)  compreso tra zero e uno γ [0,1] elevato al momento nel tempo, ovvero:

image.png

In questo modo vengono ridotti i valori di ricompensa ottenuti nel futuro, più è alto l'esponente più il valore nel futuro è ridotto, il tutto fino alla fine dell'episodio.

Se il valore di gamma valesse zero, allora non verrebbero considerate le ricompense future (perchtè tutte portate a zero), e questa sarebbe una visione miope del task; al contrario del gamma valesse uno, allora non verrebbe calcolato l'episodio ottimale in quanto le ricompense non verrebbero scontate. Un valore gamma spesso utilizzato è 0.99 che garantisce - in genere - di massimizzare il ritorno, ovvero la somma delle ricompense scontate.

Policy

La policy è una funzione che prende in input uno stato e ritorna l'azione che deve deve essere eseguita nello stato stesso. E' rappresentata la lettera greca pigreco (π)

π : S -> A

Le due tipiche rappresentazioni in questo corso sono π(a|s) e π(s)

π(a|s) è la probabilità di eseguire un'azione "a" nello stato "s"

π(s) è invece l'azione "a" da eseguire nel dato stato "s".

Dipende dal contesto, in alcuni casi verrà restituita la probabilità in altri l'azione.

Tipologie di Policy

Le policy possono essere stocastiche o deterministiche.

Una policy deterministica sceglie sempre la stessa azione nello stesso stato, ovvero: π(s) -> a

es.  π(s) = a1

Una policy stocatica, sceglie un'azione sulla base di determinate probabilità, ovvero: π(s) = [p(a1),p(a1),........p(an)]

es. π(s) = [0.3,0.2,0.5] che significa che la policy ha la probabilità del 30% di scegliere la prima azione, del 20% la seconda e del 50% la terza.

La policy ottimale, rappresentata da π* il cui scopo è massimizzare la somma dei valori di ricompensa scontati alla lunga.

Stato valore

capitoloIl 15valore dello stato è il ritorno dello stato interagendo con l'ambiente seguendo la policy π fino alla fine dell'episodio.

image.pngche si indica:

Vπ(s) = 𝔼[Gt | St=s]

di cui il dettaglio della formula:

image.png

dove è visibile l'esplosizione del ritorno Gt come la solla delle ricompense scontate partendo dallo stato "s" per giungere allo stato finale "T".

Stato-azione (Q-Value)

Se invece vogliamo valutare una azione in un determinato stato, lo facciamo attraverso la media dei valori Q.

Il valore Q nello stato "s" con l'azione "a" è il ritorno ottenuto eseguendo l'azione "a" partendo dallo stato "s" interagendo con l'ambiente tramite la policy π fino alla fine dell'episodio.

Di cui ka formula generica

image.png

e la versione dettagliata:

image.png

𝔼

L'equazione di Bellman

L'equa

𝔼