Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Optimaalisuusehdot | Dynaaminen Ohjelmointi
Vahvistusoppimisen Perusteet Pythonilla

Optimaalisuusehdot

Pyyhkäise näyttääksesi valikon

Edellisessä luvussa opit Bellmanin yhtälöistä tilan arvo- ja tila-toimintoarvofunktioille. Nämä yhtälöt kuvaavat, kuinka tilojen arvot voidaan määritellä rekursiivisesti muiden tilojen arvojen kautta, ja arvot riippuvat annetusta politiikasta. Kaikki politiikat eivät kuitenkaan ole yhtä tehokkaita. Arvofunktiot muodostavatkin politiikoille osittaisjärjestyksen, joka voidaan esittää seuraavasti:

ππ    vπ(s)vπ(s)sS\pi \ge \pi' \iff v_\pi(s) \ge v_{\pi'}(s) \qquad \forall s \in S

Politiikka π\pi on parempi tai yhtä hyvä kuin politiikka π\pi', jos kaikissa mahdollisissa tiloissa politiikan π\pi odotettu tuotto ei ole pienempi kuin politiikan π\pi' odotettu tuotto.

Note
Lisätietoa

Osittaisjärjestys noudattaa tavanomaisia järjestyssääntöjä, mutta ei pakota vertailemaan jokaista paria. Tässä tapauksessa voimme järjestää kaksi politiikkaa vain, jos ne tuottavat samat tulokset tai toinen selvästi ylittää toisen. Muissa tapauksissa politiikat jäävät vertaamattomiksi.

Optimaalinen politiikka

Note
Määritelmä

Jokaisessa MDP:ssä on olemassa vähintään yksi politiikka, joka on yhtä hyvä tai parempi kuin kaikki muut politiikat. Tätä politiikkaa kutsutaan optimaaliseksi politiikaksi π\pi_*. Vaikka optimaalisia politiikkoja voi olla useita, niitä kaikkia merkitään π\pi_*.

Miksi optimaalinen politiikka on aina olemassa?

Saatat miettiä, miksi optimaalinen politiikka aina on olemassa missä tahansa MDP:ssä. Tämä on hyvä kysymys, ja sen taustalla oleva intuitio on yllättävän yksinkertainen. Muista, että tilat MDP:ssä kuvaavat täysin ympäristön tilan. Tämä tarkoittaa, että jokainen tila on riippumaton muista: yhdessä tilassa valittu toiminto ei vaikuta muiden tilojen palkkioihin tai lopputuloksiin. Valitsemalla siis optimaalisimman toiminnon jokaisessa tilassa erikseen, päädyt luonnollisesti kokonaisuudessaan parhaaseen toimintojen sarjaan koko prosessin aikana. Tämä joukko optimaalisia toimintoja jokaisessa tilassa muodostaa optimaalisen politiikan.

Lisäksi on aina olemassa vähintään yksi politiikka, joka on sekä optimaalinen että deterministinen. Jos jossakin tilassa ss kaksi toimintoa aa ja aa' tuottavat saman odotetun tuoton, yhden valitseminen ei vaikuta politiikan optimaalisuuteen. Soveltamalla tätä periaatetta kaikkiin tiloihin politiikasta tulee deterministinen säilyttäen samalla sen optimaalisuuden.

Esimerkki optimaalisen politiikan muuttamisesta deterministiseksi

Optimaaliset arvofunktiot

Optimaaliset politiikat jakavat samat arvofunktiot — tämä käy ilmi, kun tarkastellaan, miten politiikkoja verrataan. Tämä tarkoittaa, että optimaaliset politiikat jakavat sekä tilan arvon funktion että toiminnon arvon funktion.

Lisäksi optimaalisilla arvofunktioilla on omat Bellmanin yhtälönsä, jotka voidaan kirjoittaa viittaamatta mihinkään tiettyyn politiikkaan. Näitä yhtälöitä kutsutaan Bellmanin optimaalisen yhtälöiksi.

Optimaalinen tilan arvon funktio

Note
Määritelmä

Optimaalinen tilan arvofunktio VV_* (tai vv_*) kuvaa suurimman odotetun tuoton, joka on saavutettavissa tietyssä tilassa noudattamalla optimaalista politiikkaa.

Se voidaan määritellä matemaattisesti seuraavasti:

v(s)=maxπvπ(s)=Eπ[GtSt=s]\def\E{\operatorname{\mathbb{E}}} v_*(s) = \max_\pi v_\pi(s) = \E_{\pi_*}[G_t | S_t = s]

Bellmanin optimaalinen yhtälö tälle arvofunktiolle voidaan johtaa seuraavasti:

v(s)=aπ(as)s,rp(s,rs,a)(r+γv(s))=maxas,rp(s,rs,a)(r+γv(s))\begin{aligned} v_*(s) &= \sum_a \pi_*(a | s) \sum_{s', r} p(s', r | s, a)\Bigl(r + \gamma v_*(s')\Bigr)\\ &= \max_a \sum_{s', r} p(s', r | s, a)\Bigl(r + \gamma v_*(s')\Bigr) \end{aligned}

Intuitio

Kuten jo tiedät, on aina olemassa vähintään yksi politiikka, joka on sekä optimaalinen että deterministinen. Tällainen politiikka valitsee jokaisessa tilassa johdonmukaisesti yhden tietyn toimen, joka maksimoi odotetun tuoton. Tämän vuoksi optimaalisen toimen valitsemisen todennäköisyys on aina 1, ja minkä tahansa muun toimen todennäköisyys on 0. Tämän perusteella alkuperäinen Bellmanin yhtälö ei enää tarvitse summamerkkiä. Koska tiedämme valitsevamme aina parhaan mahdollisen toimen, voimme yksinkertaisesti korvata summan ottamalla maksimin kaikista mahdollisista toimista.

Optimaalinen toimintojen arvofunktio

Note
Määritelmä

Optimaalinen toimintojen arvofunktio QQ_* (tai qq_*) kuvaa suurimman odotetun tuoton, joka voidaan saavuttaa suorittamalla tietty toimi tietyssä tilassa ja noudattamalla sen jälkeen optimaalista politiikkaa.

Se voidaan määritellä matemaattisesti seuraavasti:

q(s,a)=maxπqπ(s,a)=Eπ[GtSt=s,At=a]\def\E{\operatorname{\mathbb{E}}} q_*(s, a) = \max_\pi q_\pi(s, a) = \E_{\pi_*}[G_t | S_t = s, A_t = a]

Bellmanin optimaalisuusyhtälö tälle arvon funktiolle voidaan johtaa seuraavasti:

q(s,a)=s,rp(s,rs,a)(r+γaπ(as)q(s,a))=s,rp(s,rs,a)(r+γmaxaq(s,a))\begin{aligned} q_*(s, a) &= \sum_{s', r} p(s', r | s, a)\Bigl(r + \gamma \sum_{a'} \pi_*(a' | s')q_*(s', a')\Bigr)\\ &= \sum_{s', r} p(s', r | s, a)\Bigl(r + \gamma \max_{a'} q_*(s', a')\Bigr) \end{aligned}

Intuitio

Samoin kuin tilan arvon funktiossa, summa voidaan korvata ottamalla maksimi kaikista mahdollisista toiminnoista.

question mark

Miksi optimaalinen politiikka on aina olemassa missä tahansa Markovin päätösprosessissa?

Valitse oikea vastaus

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 3

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

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

Osio 3. Luku 3
some-alt