Optimalitetsvillkor
Svep för att visa menyn
I föregående kapitel lärde du dig om Bellman-ekvationer för tillståndsvärde- och tillstånd-handlingsvärdefunktioner. Dessa ekvationer beskriver hur tillståndsvärden kan definieras rekursivt genom värdena för andra tillstånd, där värdena är beroende av en given policy. Dock är inte alla policies lika effektiva. Faktum är att värdefunktioner ger en partiell ordning för policies, vilket kan beskrivas enligt följande:
π≥π′⟺vπ(s)≥vπ′(s)∀s∈SSå policyn π är bättre än eller lika med policyn π′ om för alla möjliga tillstånd är den förväntade avkastningen för policyn π inte mindre än den förväntade avkastningen för policyn π′.
En partiell ordning följer de vanliga ordningsreglerna men tvingar inte varje par att jämföras. I vårt fall kan vi bara rangordna två policies om de ger samma resultat, eller om en tydligt överträffar den andra. I alla andra fall förblir policies ojämförbara.
Optimal policy
För varje MDP finns det minst en policy som är lika bra som eller bättre än alla andra policies. Denna policy kallas en optimal policy π∗. Även om det kan finnas många optimala policies, betecknas alla som π∗.
Varför existerar alltid en optimal policy?
Du kanske undrar varför en optimal policy alltid existerar för varje MDP. Det är en bra fråga, och intuitionen bakom detta är förvånansvärt enkel. Kom ihåg att tillstånden i en MDP fångar upp miljöns tillstånd fullständigt. Detta innebär att varje tillstånd är oberoende av alla andra: handlingen som väljs i ett tillstånd påverkar inte belöningar eller utfall som kan uppnås i ett annat. Genom att välja den optimala handlingen i varje tillstånd separat, får du därför naturligt fram den övergripande bästa sekvensen av handlingar genom hela processen. Och denna uppsättning av optimala handlingar i varje tillstånd utgör en optimal policy.
Dessutom finns det alltid minst en policy som är både optimal och deterministisk. Om det för något tillstånd s finns två handlingar a och a′ som ger samma förväntade utfall, kommer valet av endast en av dem inte att påverka policyts optimalitet. Om denna princip tillämpas på varje enskilt tillstånd blir policyn deterministisk samtidigt som dess optimalitet bibehålls.
Optimala värdefunktioner
Optimala policys delar samma värdefunktioner — detta blir tydligt när vi betraktar hur policys jämförs. Det innebär att optimala policys delar både tillståndsvärdefunktion och aktionsvärdefunktion.
Dessutom har optimala värdefunktioner sina egna Bellman-ekvationer som kan skrivas utan hänvisning till någon specifik policy. Dessa ekvationer kallas Bellmans optimalitetsekvationer.
Optimal tillståndsvärdefunktion
Optimalt tillståndsvärdesfunktion V∗ (eller v∗) representerar den maximala förväntade avkastningen som kan uppnås från ett visst tillstånd genom att följa en optimal policy.
Det kan matematiskt definieras så här:
v∗(s)=πmaxvπ(s)=Eπ∗[Gt∣St=s]Bellmans optimalitetsekvation för denna värdefunktion kan härledas enligt följande:
v∗(s)=a∑π∗(a∣s)s′,r∑p(s′,r∣s,a)(r+γv∗(s′))=amaxs′,r∑p(s′,r∣s,a)(r+γv∗(s′))Intuition
Som du redan vet finns det alltid minst en policy som är både optimal och deterministisk. En sådan policy skulle, för varje tillstånd, konsekvent välja en specifik åtgärd som maximerar den förväntade avkastningen. Därför skulle sannolikheten att välja denna optimala åtgärd alltid vara 1, och sannolikheten att välja någon annan åtgärd skulle vara 0. Med detta i åtanke behöver den ursprungliga Bellman-ekvationen inte längre summationsoperatorn. Istället, eftersom vi vet att vi alltid kommer att välja den bästa möjliga åtgärden, kan vi helt enkelt ersätta summan med att ta ett maximum över alla tillgängliga åtgärder.
Optimal åtgärdsvärdesfunktion
Optimal åtgärdsvärdesfunktion Q∗ (eller q∗) representerar den maximala förväntade avkastningen som kan uppnås genom att ta en viss åtgärd i ett visst tillstånd och därefter följa den optimala policyn.
Det kan matematiskt definieras så här:
q∗(s,a)=πmaxqπ(s,a)=Eπ∗[Gt∣St=s,At=a]Bellmans optimalitetsekvation för denna värdefunktion kan härledas enligt följande:
q∗(s,a)=s′,r∑p(s′,r∣s,a)(r+γa′∑π∗(a′∣s′)q∗(s′,a′))=s′,r∑p(s′,r∣s,a)(r+γa′maxq∗(s′,a′))Intuition
På liknande sätt som för tillståndsvärdefunktionen kan summan ersättas med att ta ett maximum över alla tillgängliga handlingar.
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Optimalitetsvillkor
I föregående kapitel lärde du dig om Bellman-ekvationer för tillståndsvärde- och tillstånd-handlingsvärdefunktioner. Dessa ekvationer beskriver hur tillståndsvärden kan definieras rekursivt genom värdena för andra tillstånd, där värdena är beroende av en given policy. Dock är inte alla policies lika effektiva. Faktum är att värdefunktioner ger en partiell ordning för policies, vilket kan beskrivas enligt följande:
π≥π′⟺vπ(s)≥vπ′(s)∀s∈SSå policyn π är bättre än eller lika med policyn π′ om för alla möjliga tillstånd är den förväntade avkastningen för policyn π inte mindre än den förväntade avkastningen för policyn π′.
En partiell ordning följer de vanliga ordningsreglerna men tvingar inte varje par att jämföras. I vårt fall kan vi bara rangordna två policies om de ger samma resultat, eller om en tydligt överträffar den andra. I alla andra fall förblir policies ojämförbara.
Optimal policy
För varje MDP finns det minst en policy som är lika bra som eller bättre än alla andra policies. Denna policy kallas en optimal policy π∗. Även om det kan finnas många optimala policies, betecknas alla som π∗.
Varför existerar alltid en optimal policy?
Du kanske undrar varför en optimal policy alltid existerar för varje MDP. Det är en bra fråga, och intuitionen bakom detta är förvånansvärt enkel. Kom ihåg att tillstånden i en MDP fångar upp miljöns tillstånd fullständigt. Detta innebär att varje tillstånd är oberoende av alla andra: handlingen som väljs i ett tillstånd påverkar inte belöningar eller utfall som kan uppnås i ett annat. Genom att välja den optimala handlingen i varje tillstånd separat, får du därför naturligt fram den övergripande bästa sekvensen av handlingar genom hela processen. Och denna uppsättning av optimala handlingar i varje tillstånd utgör en optimal policy.
Dessutom finns det alltid minst en policy som är både optimal och deterministisk. Om det för något tillstånd s finns två handlingar a och a′ som ger samma förväntade utfall, kommer valet av endast en av dem inte att påverka policyts optimalitet. Om denna princip tillämpas på varje enskilt tillstånd blir policyn deterministisk samtidigt som dess optimalitet bibehålls.
Optimala värdefunktioner
Optimala policys delar samma värdefunktioner — detta blir tydligt när vi betraktar hur policys jämförs. Det innebär att optimala policys delar både tillståndsvärdefunktion och aktionsvärdefunktion.
Dessutom har optimala värdefunktioner sina egna Bellman-ekvationer som kan skrivas utan hänvisning till någon specifik policy. Dessa ekvationer kallas Bellmans optimalitetsekvationer.
Optimal tillståndsvärdefunktion
Optimalt tillståndsvärdesfunktion V∗ (eller v∗) representerar den maximala förväntade avkastningen som kan uppnås från ett visst tillstånd genom att följa en optimal policy.
Det kan matematiskt definieras så här:
v∗(s)=πmaxvπ(s)=Eπ∗[Gt∣St=s]Bellmans optimalitetsekvation för denna värdefunktion kan härledas enligt följande:
v∗(s)=a∑π∗(a∣s)s′,r∑p(s′,r∣s,a)(r+γv∗(s′))=amaxs′,r∑p(s′,r∣s,a)(r+γv∗(s′))Intuition
Som du redan vet finns det alltid minst en policy som är både optimal och deterministisk. En sådan policy skulle, för varje tillstånd, konsekvent välja en specifik åtgärd som maximerar den förväntade avkastningen. Därför skulle sannolikheten att välja denna optimala åtgärd alltid vara 1, och sannolikheten att välja någon annan åtgärd skulle vara 0. Med detta i åtanke behöver den ursprungliga Bellman-ekvationen inte längre summationsoperatorn. Istället, eftersom vi vet att vi alltid kommer att välja den bästa möjliga åtgärden, kan vi helt enkelt ersätta summan med att ta ett maximum över alla tillgängliga åtgärder.
Optimal åtgärdsvärdesfunktion
Optimal åtgärdsvärdesfunktion Q∗ (eller q∗) representerar den maximala förväntade avkastningen som kan uppnås genom att ta en viss åtgärd i ett visst tillstånd och därefter följa den optimala policyn.
Det kan matematiskt definieras så här:
q∗(s,a)=πmaxqπ(s,a)=Eπ∗[Gt∣St=s,At=a]Bellmans optimalitetsekvation för denna värdefunktion kan härledas enligt följande:
q∗(s,a)=s′,r∑p(s′,r∣s,a)(r+γa′∑π∗(a′∣s′)q∗(s′,a′))=s′,r∑p(s′,r∣s,a)(r+γa′maxq∗(s′,a′))Intuition
På liknande sätt som för tillståndsvärdefunktionen kan summan ersättas med att ta ett maximum över alla tillgängliga handlingar.
Tack för dina kommentarer!