Direct naar inhoud
Alle termenReinforcement Learning & agents

Wat is Discount Factor?

Een getal tussen 0 en 1 dat bepaalt hoe belangrijk toekomstige beloningen zijn ten opzichte van directe beloningen, waardoor een AI-agent leert om vooruit te plannen in plaats van alleen op korte termijn te optimaliseren.

Wat is Discount Factor

Wat is een discount factor eigenlijk?

Stel je voor dat je een kind leert schaken. Je kunt het belonen voor elke pion die het pakt — maar dan leert het alleen pionnen pakken, niet winnen. Of je beloont het pas aan het einde voor de échte winst. De discount factor is het mechanisme waarmee een AI-agent leert hoeveel waarde hij moet hechten aan beloningen die pas later komen.

In technische termen: het is een getal tussen 0 en 1 (vaak aangeduid als gamma of γ) dat bepaalt hoeveel een toekomstige beloning nu waard is. Een discount factor van 0,9 betekent dat een beloning die je over één stap krijgt, nu 90% van zijn waarde heeft. Over twee stappen wordt dat 81% (0,9 × 0,9), enzovoort.

Waarom heb je dit nodig?

Zonder discount factor zou een reinforcement learning-agent alleen maar op de directe beloning letten — zoals een kind dat alleen maar snoep wil, nu meteen. Met een discount factor leer je de agent om ook rekening te houden met wat er daarna gebeurt.

Een voorbeeld: een zelfrijdende auto die moet beslissen of hij een file inrijdt:

  • Zonder discount factor (of γ=0): "Deze rijstrook is nu vrij, ik ga!"

  • Met discount factor (γ=0,95): "Deze rijstrook is nu vrij, maar over 10 seconden sta ik vast. Die andere route duurt 2 minuten langer maar vermijdt de file — dat is uiteindelijk meer waard."

Hoe hoger de discount factor (dichter bij 1), hoe meer de agent vooruitdenkt. Hoe lager (dichter bij 0), hoe kortzichtiger.

Hoe werkt het in de praktijk?

Als een reinforcement learning-agent een beslissing neemt, berekent hij de "verwachte waarde" van elke actie. Daarbij telt hij alle toekomstige beloningen bij elkaar op, maar elke stap verder in de toekomst wordt vermenigvuldigd met de discount factor.

Stel: een robotarm die een pakketje moet verplaatsen krijgt:

  • +1 punt voor het oppakken (nu)

  • +5 punten voor het op de juiste plek zetten (3 stappen later)

Met een discount factor van 0,9 rekent de agent:

  • Oppakken: 1 × 1 = 1 punt

  • Juiste plek: 5 × 0,9³ = 5 × 0,729 = 3,645 punten

  • Totaal: 4,645 punten

De toekomstige grote beloning telt nog steeds zwaar mee, maar niet even zwaar als een directe beloning van 5 punten zou zijn. Dit helpt de agent om realistisch te plannen: dingen die verder weg liggen zijn onzekerder, dus mogen iets minder zwaar wegen.

Waar kom je het tegen?

Discount factors zijn standaard in vrijwel alle reinforcement learning-toepassingen:

  • Game-AI (AlphaGo, OpenAI Five, Dota 2-bots): moet ver vooruit denken in een strategisch spel

  • Robotica: robots die complexe taken moeten leren (grijpen, lopen, sorteren)

  • Aanbevelingssystemen: platforms die niet alleen op de volgende klik optimaliseren, maar op langdurige gebruikerstevredenheid

  • Autonome voertuigen: routeplanning en verkeersgedrag waarbij veiligheid en efficiëntie over tijd worden afgewogen

  • Datacenterbeheer: AI die energieverbruik optimaliseert over uren/dagen heen

In onderzoek zie je vaak γ = 0,99 of γ = 0,95 als standaardwaarde — een balans tussen vooruitdenken en praktische rekenkracht.

Wat kun je er zelf mee?

Als je met reinforcement learning werkt of een AI-agent traint, is de discount factor één van de belangrijkste knoppen die je kunt aanpassen. Te laag, en je agent wordt kortzichtig — goed voor snelle reacties, maar slecht voor strategie. Te hoog, en hij probeert eindeloos ver vooruit te plannen, wat traag en instabiel kan worden.

Begrijp je hoe discount factors werken, dan snap je ook waarom sommige AI-systemen zich anders gedragen dan je verwacht: misschien zijn ze getraind met een lage discount factor en optimaliseren ze puur op korte termijn. Of juist andersom: ze nemen beslissingen die nu raar lijken, maar later uitpakken. Het helpt je om slimmer te sturen op wat je wilt dat een agent leert.

FAQ

Veelgestelde vragen over Discount Factor

De drie meest gestelde vragen over dit onderwerp, kort beantwoord.

Wat is Discount Factor?

Een getal tussen 0 en 1 dat bepaalt hoe belangrijk toekomstige beloningen zijn ten opzichte van directe beloningen, waardoor een AI-agent leert om vooruit te plannen in plaats van alleen op korte termijn te optimaliseren.

Waarom is Discount Factor belangrijk?

Stel je voor dat je een kind leert schaken. Je kunt het belonen voor elke pion die het pakt — maar dan leert het alleen pionnen pakken, niet winnen. Of je beloont het pas aan het einde voor de échte winst. De discount factor is het mechanisme waarmee een AI-agent leert hoeveel waarde hij moet hechten aan beloningen die pas later komen.

Hoe wordt Discount Factor toegepast?

In technische termen: het is een getal tussen 0 en 1 (vaak aangeduid als gamma of γ) dat bepaalt hoeveel een toekomstige beloning nu waard is. Een discount factor van 0,9 betekent dat een beloning die je over één stap krijgt, nu 90% van zijn waarde heeft. Over twee stappen wordt dat 81% (0,9 × 0,9), enzovoort.

Deel: