Esistono diversi modi per affrontare la risoluzione dei problemi di gioco. Ad esempio, alcuni giochi possono essere risolti con algoritmi di ricerca. Funziona bene con i giochi di carte e da tavolo fino a un certo livello di complessità. Ad esempio, il Deep Blue di IBM era essenzialmente una ricerca euristica rapida per spostamenti ottimali.
Tuttavia, probabilmente l'algoritmo di apprendimento automatico più generico per addestrare un agente a svolgere un'attività in modo ottimale è l' apprendimento di rinforzo . Tecnicamente non è un algoritmo, ma una famiglia allargata di algoritmi correlati che risolvono tutti una specifica formalizzazione del problema di apprendimento.
Informalmente, Reinforcement Learning (RL) riguarda la ricerca di soluzioni ottimali ai problemi definiti in termini di un agente che può osservare lo stato di un ambiente , intraprendere azioni in quell'ambiente e sperimentare ricompense che sono in qualche modo legate allo stato e all'azione. I solutori di RL devono essere progettati per far fronte a situazioni in cui le ricompense vengono ricevute più tardi rispetto a quando sono state intraprese azioni importanti, e questo è di solito raggiunto dall'algoritmo che apprende un'aspettativa interna di ricompense successive associate a coppie di stato e / o stato-azione.
Ecco alcune risorse per studiare l'apprendimento per rinforzo:
Scoprirai che il soggetto in sé è piuttosto grande poiché sono necessarie variazioni sempre più sofisticate degli algoritmi man mano che il problema da risolvere diventa più difficile.
L'avvio di giochi per studiare l'apprendimento per rinforzo potrebbe includere:
Tik-tac-toe (alias Noughts and crosses) - questo può essere risolto facilmente usando la ricerca, ma risolve un semplice problema del giocattolo usando le tecniche di base RL.
Labirinti - nella letteratura sull'apprendimento per rinforzo, ci sono molti esempi di giochi "grid world" in cui un agente si muove in singole fasi N, E, S, W su una piccola scacchiera che può essere popolata con pericoli e obiettivi.
Blackjack (aka 21)
Se vuoi lavorare con agenti per giocare ai videogiochi, vorrai anche conoscere le reti neurali e probabilmente in qualche dettaglio: per elaborare la grafica dello schermo avrai bisogno di reti neurali profonde e convoluzionali.
Una risorsa relativamente nuova per RL è OpenAI Universe . Hanno lavorato molto per impacchettare ambienti pronti a formare agenti, il che significa che puoi concentrarti sullo studio degli algoritmi di apprendimento, anziché sullo sforzo di creare l'ambiente.
Per quanto riguarda il tuo elenco di competenze attuali: nessuna di esse è direttamente pertinente all'apprendimento per rinforzo. Però:
Se riesci a capire la matematica e la teoria del tuo corso precedente, dovresti anche essere in grado di comprendere la teoria dell'apprendimento per rinforzo.
Se hai studiato tecniche di apprendimento supervisionato online o in batch, queste possono essere utilizzate come componenti all'interno di un framework RL. In genere possono essere utilizzati per approssimare una funzione di valore dello stato del gioco, in base al feedback di successi e insuccessi finora.