Inkrementaaliset Toteutukset
Jokaisen tuoton tallentaminen jokaista tila-toimintoparia kohden voi nopeasti kuluttaa muistin loppuun ja merkittävästi lisätä laskenta-aikaa — erityisesti suurissa ympäristöissä. Tämä rajoitus koskee sekä on-policy- että off-policy-Monte Carlo -ohjausalgoritmeja. Tämän ratkaisemiseksi käytetään inkrementaalisia laskentamenetelmiä, jotka ovat samankaltaisia kuin multi-armed bandit -algoritmeissa käytetyt menetelmät. Näiden menetelmien avulla arviot voidaan päivittää välittömästi, ilman että koko tuottohistoriaa tarvitsee säilyttää.
On-policy Monte Carlo -ohjaus
On-policy-menetelmässä päivitysstrategia muistuttaa MAB-algoritmeissa käytettyä strategiaa:
Q(s,a)←Q(s,a)+α(G−Q(s,a))missä α=N(s,a)1 keskiarvon estimaattia varten. Ainoat tallennettavat arvot ovat nykyiset toimintojen arviot Q(s,a) sekä tila-toimintaparin (s,a) käyntikertojen määrä N(s,a).
Pseudokoodi
Off-policy Monte Carlo -ohjaus
Off-policy-menetelmässä tavallisella tärkeyspainotuksella kaikki on samanlaista kuin on-policy-menetelmässä.
Mielenkiintoisempi tilanne syntyy painotetulla tärkeyspainotuksella. Yhtälö näyttää samalta:
Q(s,a)←Q(s,a)+α(G−Q(s,a))mutta α=N(s,a)1 ei voida käyttää, koska:
- Jokainen tuotto painotetaan ρ:lla;
- Lopullinen summa jaetaan ei N(s,a):lla, vaan ∑ρ(s,a):lla.
Tässä tapauksessa käytettävä α on yhtä suuri kuin C(s,a)W, missä:
- W on nykyisen trajektorian ρ;
- C(s,a) on yhtä kuin ∑ρ(s,a).
Ja joka kerta kun tila-toimintapari (s,a) esiintyy, nykyisen trajektorian ρ lisätään C(s,a):aan:
C(s,a)←C(s,a)+WPseudokoodi
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Can you explain the difference between on-policy and off-policy Monte Carlo control?
How does incremental computation improve efficiency in Monte Carlo methods?
Can you clarify how the weighted importance sampling update works?
Awesome!
Completion rate improved to 2.7
Inkrementaaliset Toteutukset
Pyyhkäise näyttääksesi valikon
Jokaisen tuoton tallentaminen jokaista tila-toimintoparia kohden voi nopeasti kuluttaa muistin loppuun ja merkittävästi lisätä laskenta-aikaa — erityisesti suurissa ympäristöissä. Tämä rajoitus koskee sekä on-policy- että off-policy-Monte Carlo -ohjausalgoritmeja. Tämän ratkaisemiseksi käytetään inkrementaalisia laskentamenetelmiä, jotka ovat samankaltaisia kuin multi-armed bandit -algoritmeissa käytetyt menetelmät. Näiden menetelmien avulla arviot voidaan päivittää välittömästi, ilman että koko tuottohistoriaa tarvitsee säilyttää.
On-policy Monte Carlo -ohjaus
On-policy-menetelmässä päivitysstrategia muistuttaa MAB-algoritmeissa käytettyä strategiaa:
Q(s,a)←Q(s,a)+α(G−Q(s,a))missä α=N(s,a)1 keskiarvon estimaattia varten. Ainoat tallennettavat arvot ovat nykyiset toimintojen arviot Q(s,a) sekä tila-toimintaparin (s,a) käyntikertojen määrä N(s,a).
Pseudokoodi
Off-policy Monte Carlo -ohjaus
Off-policy-menetelmässä tavallisella tärkeyspainotuksella kaikki on samanlaista kuin on-policy-menetelmässä.
Mielenkiintoisempi tilanne syntyy painotetulla tärkeyspainotuksella. Yhtälö näyttää samalta:
Q(s,a)←Q(s,a)+α(G−Q(s,a))mutta α=N(s,a)1 ei voida käyttää, koska:
- Jokainen tuotto painotetaan ρ:lla;
- Lopullinen summa jaetaan ei N(s,a):lla, vaan ∑ρ(s,a):lla.
Tässä tapauksessa käytettävä α on yhtä suuri kuin C(s,a)W, missä:
- W on nykyisen trajektorian ρ;
- C(s,a) on yhtä kuin ∑ρ(s,a).
Ja joka kerta kun tila-toimintapari (s,a) esiintyy, nykyisen trajektorian ρ lisätään C(s,a):aan:
C(s,a)←C(s,a)+WPseudokoodi
Kiitos palautteestasi!