Reinforcement Learning Flashcards

1
Q

Cos’è il reinforcement learning?

A

Il reinforcement learning è una branca dell’apprendimento automatico (machine learning) in cui un agente interagisce con un ambiente per apprendere a compiere azioni ottimali al fine di massimizzare una ricompensa.

In altre parole, è una tecnica di apprendimento automatico in cui un agente impara a prendere decisioni attraverso l’esperienza, ricevendo segnali di rinforzo positivi o negativi in base alle azioni che compie.

Il processo di reinforcement learning prevede solitamente i seguenti elementi:

Agente: L’entità che apprende e prende decisioni all’interno dell’ambiente. Questo agente può essere un robot, un programma informatico, un veicolo autonomo o qualsiasi altra cosa che debba imparare a compiere azioni ottimali in un ambiente specifico.

Ambiente: L’ambiente in cui l’agente opera e prende decisioni. L’ambiente può essere fisico, virtuale o simulato. Ad esempio, un ambiente può essere un gioco, un laboratorio di ricerca, una simulazione di guida, o qualsiasi altro contesto in cui l’agente debba apprendere a interagire.

Azioni: Le azioni sono le decisioni prese dall’agente per influenzare l’ambiente. L’agente seleziona azioni in base alla sua conoscenza attuale e agli obiettivi di massimizzazione della ricompensa.

Ricompense: Le ricompense sono segnali numerici che l’agente riceve dall’ambiente dopo aver compiuto un’azione. Le ricompense possono essere positive o negative e servono a indicare se l’azione dell’agente è stata buona o cattiva rispetto agli obiettivi stabiliti. L’obiettivo dell’agente è massimizzare le ricompense cumulate nel tempo. e, si va a rappresentare come
uno scalare Rt (ricompensa che riceve l’agente all’istante t)

Politica: La politica è una strategia o un insieme di regole che l’agente utilizza per selezionare le azioni in base alla sua percezione dell’ambiente. L’obiettivo del reinforcement learning è sviluppare una politica ottimale che massimizzi le ricompense nel lungo termine.

Value Function: è una previsione della ricompensa futura e viene utilizzata per valutare la validità degli stati e quindi per la scelta delle azioni da eseguire

Modello: predice ciò che l’ambiente farà in seguito P predice il prossimo stato R predice la ricompensa successiva

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Formalmente cos’è una ricompensa?

A

una ricompensa nel contesto del reinforcement learning è una funzione matematica che assegna un valore numerico a una determinata transizione di stato (stato corrente -> azione -> stato successivo) o a una sequenza di azioni compiute dall’agente in un ambiente. La funzione di ricompensa è spesso denotata come R(s,a,s) o semplicemente R ed è definita nei seguenti termini:

s: Lo stato corrente in cui si trova l’agente.

a: L’azione compiuta dall’agente.

s ′ : Lo stato successivo raggiunto dall’agente dopo aver compiuto l’azione a.

La funzione di ricompensa R assegna un valore reale a ciascuna transizione di stato-azione-stato o a ciascuna coppia stato-azione, indicando quanto la transizione o l’azione siano desiderabili o utili per il raggiungimento degli obiettivi dell’agente. La ricompensa può essere positiva, negativa o neutrale, a seconda del risultato ottenuto dall’agente.

Il Reinforcement Learning è basato sulla reward hypothesis:
Tutti gli obiettivi possono essere descritti come la massimizzazione della ricompensa cumulativa prevista

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Processo decisionale sequenziale

A

ad ogni step (passo temporale) nell’ambito del reinforcement learning, l’agente esegue una serie di azioni che possono essere descritte come segue:

Osservazione dello stato corrente (s_t ): L’agente riceve un’osservazione o una rappresentazione del suo stato corrente nell’ambiente. Questo stato può essere completo o parziale, a seconda delle informazioni disponibili per l’agente. Ad esempio, in un gioco, lo stato corrente potrebbe includere la posizione del personaggio, i nemici presenti e altro.

Scelta di un’azione (a_t): Basandosi sull’osservazione dello stato corrente (s_t) e sulla sua politica decisionale, l’agente seleziona un’azione (a_t) da compiere. La politica decisionale può essere una strategia, una funzione o un insieme di regole che guidano la scelta dell’azione.

Esecuzione dell’azione: L’agente esegue l’azione (a_t) nell’ambiente.

Ricezione di una ricompensa (r_t): Dopo aver eseguito l’azione, l’agente riceve una ricompensa (r_t) dal sistema dell’ambiente. Questa ricompensa riflette quanto l’azione è stata vantaggiosa o svantaggiosa rispetto agli obiettivi dell’agente.

Transizione di stato (s_t -> s_t+1): L’ambiente può cambiare in risposta all’azione dell’agente, portando l’agente da uno stato corrente (s_t) a un nuovo stato (s_t+1)

Questa transizione di stato è una conseguenza dell’azione compiuta dall’agente.

mentre l’ambiente:
l’ambiente svolge diverse funzioni durante ogni passo temporale:

Generazione dello stato iniziale (s_0): L’ambiente genera il primo stato iniziale (s_0) in cui si trova l’agente quando inizia l’interazione. Questo stato iniziale rappresenta la situazione iniziale dell’ambiente.

Ricezione dell’azione (a_t): Dopo che l’agente ha selezionato un’azione (a_t) in base allo stato corrente, l’ambiente riceve l’azione e determina come essa influenzi lo stato successivo.

Cambio di stato (s_t -> s_t+1): In risposta all’azione (a_t), l’ambiente cambia il suo stato corrente (s_t) in un nuovo stato (s_t+1). Questo processo è detto transizione di stato e riflette come l’ambiente risponde all’azione dell’agente.

Calcolo della ricompensa (r_t): Dopo la transizione di stato, l’ambiente calcola la ricompensa (r_t) in base all’azione dell’agente e alla nuova situazione. La ricompensa riflette quanto l’azione è stata vantaggiosa o svantaggiosa rispetto agli obiettivi dell’agente.

Fornitura dell’osservazione di stato (s_t+1): L’ambiente fornisce all’agente un’osservazione del nuovo stato (s_t+1) che è stato raggiunto dopo l’azione. Questa osservazione rappresenta la percezione attuale dell’ambiente da parte dell’agente e viene utilizzata per prendere decisioni nel passo successivo.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Cos’è la storia? Cos’è lo stato?

A

La storia è la sequenza di osservazioni, azioni, ricompense, cioè tutte le variabili osservabili fino al tempo t.
lo stato St è una funzione della storia

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Categorie degli agenti basati su RL

A

Value-based: Basati su Value Function ma Non utilizzano alcuna Policy

Policy-based: Basati su Policy ma non utilizzano alcuna Value Function

Actor Critic: Policy e Value Function

Model-free: Policy e/o Value Function ma Non utilizzano alcun Modello

Model-based: Policy e/o Value Function e Model

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Learning e planning

A

Learning:
-L’ambiente è inizialmente sconosciuto
-L’agente interagisce con l’ambiente
-L’agente migliora la sua policy

Planning:
-Un modello dell’ambiente è noto
-L’agente esegue le computazioni con il suo modello (senza alcuna interazione esterna)
-L’agente migliora la sua policy

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Cos’è l’exploration e l’exploitation?

A

Questi sono due approcci relativi alla scelta delle azioni (simili al trade-off bias variance)
● L’exploration trova più informazioni sull’ambiente.
● L’exploitation per massimizzare la ricompensa sfrutta le informazioni note.
Di solito si fa exploitation e solo qualche volta exploration, se non facessi exploration è possibile, dato che non è stato visitato tutto lo spazio, incorrere in un minimo locale.
Dunque questi sono due criteri da bilanciare quando si implementano algoritmi per rinforzo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Cos’è la prediction e cos’è il control?

A

Sono due fasi talvolta dello stesso algoritmo:

● Prediction: valutare il futuro (La policy è nota), determiniamo una funzione di valutazione in base ad una policy (risponde alla domanda quanto è buona questa policy?), valuto la policy
tramite la value function.

● Control: ottimizzare il futuro (Trova la miglior policy), vuol dire cambiare in meglio la policy,
migliorare la policy.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Ambienti completamente osservabili e parzialmente osservabili

A

Completamente osservabile:
In un ambiente completamente osservabile, l’agente ha accesso diretto e completo a tutte le informazioni rilevanti sull’ambiente. Questo significa che l’agente può percepire lo stato dell’ambiente in ogni momento senza alcuna ambiguità o incertezza. Gli ambienti completamente osservabili sono spesso chiamati anche “ambienti pienamente osservabili” o “ambienti con informazione completa”. Gli esempi includono i giochi da tavolo come gli scacchi o i giochi da videogiochi dove l’agente ha accesso completo alla mappa e alla posizione di tutti gli oggetti.

Parzialmente osservabile:
In un ambiente parzialmente osservabile, l’agente non ha accesso diretto a tutte le informazioni pertinenti sull’ambiente. Ciò significa che l’agente deve fare inferenze sullo stato dell’ambiente basandosi sulle informazioni limitate che può osservare. Gli ambienti parzialmente osservabili sono spesso chiamati anche “ambienti con informazione incompleta”. Gli esempi includono giochi come il poker, in cui i giocatori non possono vedere le carte degli altri giocatori, o i veicoli autonomi che devono fare inferenze sulle intenzioni degli altri veicoli sulla strada.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Componenti di un agente basato sul RL

A

Un agente basato su RL include una o più delle seguenti componenti:
● Policy: funzione di comportamento dell’agente, funzione che dice all’agente cosa deve fare (prende in input lo stato e gli dice l’azione da fare), lo scopo è trovare la migliore ipotesi per costruire la migliore policy.

● Value function: esprime quanto è valido ogni stato e/o azione, utile per esprimere la policy, ci permette di dire quanto lo stato è buono nel tempo non in quell’istante, io se vado nello stato s quanto mi aspetto di guadagnare non all’istante t ma nel tempo passando per quello stato?

● Modello: rappresentazione dell’ambiente ad opera dell’agente, è l’ambiente in cui si trova l’agente, non sempre è disponibile (nella realtà l’agente non ha il modello): è lo spazio degli stati

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Cos’è una policy?

A

Una policy π esprime il comportamento dell’agente, guida l’agente nelle sue scelte, stabilisce l’azione da eseguire in base allo stato in cui si trova l’agente, lo scopo è cercare di definirla in modo ottimale.
se la policy è deterministica allora se l’agente si trova in s chiede alla policy l’azione che deve fare, per ogni stato si può avere un’unica azione se è stocastica io avrò per ogni stato una probabilità di
eseguire una certa azione dunque a partire dallo stato s l’agente potrà eseguire diverse azioni ognuna con una certa probabilità. La policy è il risultato dell’algoritmo che dobbiamo implementare.

FORMULE SUL Q.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Cos’è una Value function

A

la value function ci dice quale è la ricompensa futura che potrei ottenere da un certo stato , ci dice quanto è buono un certo stato (serve alla policy per definire la migliore azione) dunque la policy dovrebbe seguire la value function per scegliere la migliore azione ma come è definita la value function per un certo stato s?
Data una policy la value function allo stato s è uguale alla previsione della ricompensa futura attesa e viene utilizzata per valutare la validità degli stati e quindi per la scelta delle azioni da eseguire, inoltre un certo stato s potrebbe avere una ricompensa bassa ma un valore v alto (ciò accade quando gli stati seguenti hanno una ricompensa alta)
La value function v della policy π allo stato s è uguale al valore atteso della policy π dato dalla somma delle ricompense che otteniamo nel tempo a partire dallo stato s, il gamma è il fattore di sconto ed è
un valore tra zero e uno, ci dice quanto considerare le ricompense future, se avranno lo stesso peso , le ricompense lontane vengono considerate quasi zero dato che al susseguirsi delle ricompense il
fattore di sconto aumenta di grado. Se ci troviamo in un certo stato bisognerà calcolare il valore considerando tutti le ricompense che ottengo passando da uno stato al successivo ovviamente se la
policy è stocastica ci possono essere più percorsi, ed in tal caso faccio il valore atteso di tutti i possibili percorsi che partono da s (si andrà a fare una media pesata rispetto alle probabilità associate
ad ogni percorso), se invece la policy è deterministica avrò un unico percorso (e la media non sarà pesata ma si andrà semplicemente a dividere per il numero di elementi come se calcolassimo una
media tradizionale).
Dunque riassumendo:
● se la policy è deterministica verrà fatta una media tradizionale.
● se la policy è stocastica si farà una media pesata.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Cos’è un modello?

A

Un modello predice ciò che l’ambiente farà in seguito, predice il prossimo stato, predice la ricompensa successiva (immediata), ad esempio:
Sono due matrici la prima (probabilità di transizione da uno stato all’altro) è la probabilità che con l’azione a da s vado in s1, la seconda matrice (ricompense che l’ambiente produce eseguendo una certa azione) mi dice il guadagno, la ricompensa media che ottengo in s eseguendo l’azione a

How well did you know this?
1
Not at all
2
3
4
5
Perfectly