Умови Оптимальності
Свайпніть щоб показати меню
У попередньому розділі розглядалися рівняння Беллмана для функцій цінності стану та функцій цінності стану-дії. Ці рівняння описують, як цінності станів можуть рекурсивно визначатися через цінності інших станів, причому ці цінності залежать від заданої політики. Однак не всі політики однаково ефективні. Насправді, функції цінності задають частковий порядок для політик, який можна описати так:
π≥π′⟺vπ(s)≥vπ′(s)∀s∈SОтже, політика π краща або рівна політиці π′, якщо для всіх можливих станів очікувана винагорода політики π не менша за очікувану винагороду політики π′.
Частковий порядок підпорядковується звичайним правилам впорядкування, але не змушує порівнювати кожну пару. У нашому випадку можна впорядкувати дві політики лише тоді, коли вони дають однакові результати або одна з них явно краща за іншу. В усіх інших випадках політики залишаються незрівнянними.
Оптимальна стратегія
Для будь-якого MDP існує принаймні одна стратегія, яка не гірша за всі інші стратегії. Така стратегія називається оптимальною стратегією π∗. Хоча може існувати багато оптимальних стратегій, усі вони позначаються як π∗.
Чому оптимальна стратегія завжди існує?
Можливо, ви замислювалися, чому оптимальна стратегія завжди існує для будь-якого MDP. Це слушне питання, і інтуїція тут досить проста. Пам'ятайте, що стани в MDP повністю відображають стан середовища. Це означає, що кожен стан є незалежним від інших: дія, обрана в одному стані, не впливає на винагороди чи результати, досяжні в іншому. Тому, обираючи оптимальну дію окремо для кожного стану, ви природно отримуєте загалом найкращу послідовність дій для всього процесу. А ця сукупність оптимальних дій у кожному стані і є оптимальною стратегією.
Крім того, завжди існує принаймні одна стратегія, яка є одночасно оптимальною та детермінованою. Дійсно, якщо для деякого стану s дві дії a і a′ дають однакову очікувану винагороду, вибір лише однієї з них не вплине на оптимальність стратегії. Застосування цього принципу до кожного окремого стану зробить стратегію детермінованою, зберігаючи її оптимальність.
Оптимальні функції цінності
Оптимальні політики мають однакові функції цінності — це стає очевидним, коли розглядається порівняння політик. Це означає, що оптимальні політики мають спільні функцію цінності стану та функцію цінності дії.
Крім того, оптимальні функції цінності мають власні рівняння Беллмана, які можна записати без посилання на конкретну політику. Ці рівняння називаються рівняннями оптимальності Беллмана.
Оптимальна функція цінності стану
Оптимальна функція цінності стану V∗ (або v∗) позначає максимальне очікуване повернення, якого можна досягти з певного стану, дотримуючись оптимальної політики.
Математичне визначення:
v∗(s)=πmaxvπ(s)=Eπ∗[Gt∣St=s]Рівняння оптимальності Беллмана для цієї функції цінності можна вивести так:
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′))Інтуїція
Як ви вже знаєте, завжди існує принаймні одна політика, яка є одночасно оптимальною та детермінованою. Така політика для кожного стану послідовно обирає одну конкретну дію, що максимізує очікувану винагороду. Тому ймовірність вибору цієї оптимальної дії завжди дорівнює 1, а ймовірність вибору будь-якої іншої дії — 0. Враховуючи це, у початковому рівнянні Беллмана вже не потрібен оператор суми. Замість цього, оскільки ми завжди обираємо найкращу можливу дію, суму можна замінити на максимум серед усіх доступних дій.
Функція оптимальної цінності дії
Функція оптимальної цінності дії Q∗ (або q∗) — це максимальне очікуване значення винагороди, яке можна отримати, виконуючи певну дію в певному стані та дотримуючись оптимальної політики надалі.
Математичне визначення виглядає так:
q∗(s,a)=πmaxqπ(s,a)=Eπ∗[Gt∣St=s,At=a]Рівняння оптимальності Беллмана для цієї функції значення можна вивести так:
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′))Інтуїція
Аналогічно до функції значення стану, суму можна замінити взяттям максимуму серед усіх доступних дій.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат