Cursusinhoud
Introductie tot Reinforcement Learning
Introductie tot Reinforcement Learning
Wat Is Temporeel Verschil Leren?
Zowel dynamisch programmeren als Monte Carlo-methoden bevatten waardevolle concepten, maar kennen ook aanzienlijke nadelen.
Dynamisch Programmeren
Dynamisch programmeren biedt een efficiënte manier om de waarde van toestanden te berekenen en hieruit een optimaal beleid af te leiden. Het maakt gebruik van bootstrapping — het berekenen van de waarde van de huidige toestand op basis van de waarden van toekomstige toestanden — om dit te realiseren.
Hoewel het concept van bootstrapping krachtig is, kent dynamisch programmeren twee grote nadelen:
- Het vereist een volledig en expliciet model van de omgeving;
- De waarden van toestanden worden voor elke toestand berekend, zelfs als deze toestand zich ver van het optimale pad bevindt.
Monte Carlo-methoden
Monte Carlo-methoden lossen de twee nadelen van dynamisch programmeren op:
- Ze vereisen geen model, omdat ze leren van ervaring;
- De manier waarop ze leren van ervaring beperkt de verkenning, waardoor niet-belangrijke toestanden zelden worden bezocht.
Maar ze introduceren een nieuw nadeel — het leerproces vindt pas plaats nadat de episode is afgelopen. Dit beperkt de toepasbaarheid van Monte Carlo-methoden tot kleine episodische taken, omdat grotere taken een absurd groot aantal acties zouden vereisen voordat de episode is afgerond.
Temporal Difference Learning
Temporal difference (TD) learning is het resultaat van het combineren van ideeën uit zowel dynamisch programmeren als Monte Carlo-methoden. Het neemt de leren uit ervaring-benadering van Monte Carlo-methoden en combineert dit met bootstrapping uit dynamisch programmeren.
Als resultaat lost TD-learning de belangrijkste problemen van beide methoden op:
- Leren uit ervaring pakt het probleem van het vereisen van een model en het probleem van grote toestandsruimten aan;
- Bootstrapping pakt het probleem van episodisch leren aan.
Hoe werkt het?
TD-leren werkt via een eenvoudige lus:
- Waarde schatten: de agent begint met een eerste schatting van hoe goed de huidige toestand is;
- Actie uitvoeren: de agent voert een actie uit, ontvangt een beloning en komt in een nieuwe toestand terecht;
- Schatting bijwerken: met behulp van de beloning en de waarde van de nieuwe toestand past de agent zijn oorspronkelijke schatting lichtjes aan om deze nauwkeuriger te maken;
- Herhalen: na verloop van tijd, door deze lus te herhalen, bouwt de agent geleidelijk betere en nauwkeurigere waardeschattingen op voor verschillende toestanden.
Vergelijkingstabel
Bedankt voor je feedback!