Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele SARSA: On-Policy TD -Oppiminen | Aikaisen Eron Oppiminen
Vahvistusoppimisen Perusteet Pythonilla

SARSA: On-Policy TD -Oppiminen

Pyyhkäise näyttääksesi valikon

Aivan kuten Monte Carlo -menetelmien kanssa, voimme käyttää yleistetyn politiikan iteroinnin (GPI) viitekehystä siirtyäksemme arvofunktioiden estimoinnista optimaalisten politiikkojen oppimiseen. Tämä prosessi tuo kuitenkin mukanaan tutun haasteen: etsinnän ja hyödyntämisen välinen tasapaino. Samoin on olemassa kaksi lähestymistapaa: on-policy ja off-policy. Tarkastellaan ensin on-policy-menetelmää — SARSA.

Note
Määritelmä

SARSA on on-policy TD-ohjausalgoritmi, jota käytetään toimintojen arvofunktion qπ(s,a)q_\pi(s, a) estimointiin. Se päivittää arvionsa todellisuudessa valitun toiminnon perusteella, mikä tekee siitä on-policy-algoritmin.

Lyhenne SARSA muodostuu viidestä päivityksessä käytettävästä keskeisestä osasta:

  • S: nykyinen tila StS_t;
  • A: suoritettu toiminto AtA_t;
  • R: saatu palkkio Rt+1R_{t+1};
  • S: seuraava tila St+1S_{t+1};
  • A: seuraava toiminto At+1A_{t+1}.

Päivityssääntö

Päivityssääntö on samanlainen kuin TD(0), mutta tilan arvon funktion sijaan käytetään toiminnon arvon funktiota:

Q(St,At)Q(St,At)+α(Rt+1+γQ(St+1,At+1)Q(St,At))Q(S_t, A_t) \gets Q(S_t, A_t) + \alpha \Bigl(R_{t+1} + \gamma Q(S_{t+1}, A_{t+1}) - Q(S_t, A_t)\Bigr)

At+1A_{t+1} on toiminto, joka todella suoritetaan seuraavassa askeleessa, ja se valitaan nykyisen politiikan mukaisesti. Tämä tarkoittaa, että tutkimisen vaikutukset sisällytetään oppimisprosessiin.

Jokaisen toiminnon arvon funktion päivityksen jälkeen politiikka päivitetään myös, jolloin agentti voi välittömästi hyödyntää uusia arvioita.

Pseudokoodi

SARSA-pseudokoodi

Milloin käyttää SARSA:a?

SARSA on suositeltava, kun:

  • Käsitellään ympäristöjä, joissa on paljon stokastisuutta (esim. liukkaat pinnat, epäluotettavat siirtymät);
  • Hitaampi konvergenssi on hyväksyttävää turvallisemman oppimiskäyttäytymisen vuoksi.
question mark

Missä tilanteessa SARSA on erityisen suositeltava?

Valitse oikea vastaus

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 5. Luku 3

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

SARSA: On-Policy TD -Oppiminen

Aivan kuten Monte Carlo -menetelmien kanssa, voimme käyttää yleistetyn politiikan iteroinnin (GPI) viitekehystä siirtyäksemme arvofunktioiden estimoinnista optimaalisten politiikkojen oppimiseen. Tämä prosessi tuo kuitenkin mukanaan tutun haasteen: etsinnän ja hyödyntämisen välinen tasapaino. Samoin on olemassa kaksi lähestymistapaa: on-policy ja off-policy. Tarkastellaan ensin on-policy-menetelmää — SARSA.

Note
Määritelmä

SARSA on on-policy TD-ohjausalgoritmi, jota käytetään toimintojen arvofunktion qπ(s,a)q_\pi(s, a) estimointiin. Se päivittää arvionsa todellisuudessa valitun toiminnon perusteella, mikä tekee siitä on-policy-algoritmin.

Lyhenne SARSA muodostuu viidestä päivityksessä käytettävästä keskeisestä osasta:

  • S: nykyinen tila StS_t;
  • A: suoritettu toiminto AtA_t;
  • R: saatu palkkio Rt+1R_{t+1};
  • S: seuraava tila St+1S_{t+1};
  • A: seuraava toiminto At+1A_{t+1}.

Päivityssääntö

Päivityssääntö on samanlainen kuin TD(0), mutta tilan arvon funktion sijaan käytetään toiminnon arvon funktiota:

Q(St,At)Q(St,At)+α(Rt+1+γQ(St+1,At+1)Q(St,At))Q(S_t, A_t) \gets Q(S_t, A_t) + \alpha \Bigl(R_{t+1} + \gamma Q(S_{t+1}, A_{t+1}) - Q(S_t, A_t)\Bigr)

At+1A_{t+1} on toiminto, joka todella suoritetaan seuraavassa askeleessa, ja se valitaan nykyisen politiikan mukaisesti. Tämä tarkoittaa, että tutkimisen vaikutukset sisällytetään oppimisprosessiin.

Jokaisen toiminnon arvon funktion päivityksen jälkeen politiikka päivitetään myös, jolloin agentti voi välittömästi hyödyntää uusia arvioita.

Pseudokoodi

SARSA-pseudokoodi

Milloin käyttää SARSA:a?

SARSA on suositeltava, kun:

  • Käsitellään ympäristöjä, joissa on paljon stokastisuutta (esim. liukkaat pinnat, epäluotettavat siirtymät);
  • Hitaampi konvergenssi on hyväksyttävää turvallisemman oppimiskäyttäytymisen vuoksi.
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 5. Luku 3
some-alt