Antworten:
Ist es in RL üblich, nur eine Belohnungsfunktion zu vergeben, wenn eine Aufgabe am Ende erfüllt ist?
Dies ist nicht ganz die richtige Definition einer Belohnungsfunktion. Ein MDP hat eine einzelne Belohnungsfunktion, , wobei die Mengen von Zuständen und Aktionen im Problem sind. Manchmal werden Versionen mit weniger Argumenten angezeigt, z. B. oder .
gibt Belohnungen für jeden Zustandsübergang zurück. Viele von ihnen oder sogar alle bis auf einen können Null sein. Oder andere Zwischenzustände können positive oder negative Belohnungen enthalten. Beides ist möglich und abhängig von der jeweiligen Anwendung.
Dies ist die Definition, die Sie zu Beginn der meisten Verstärkungslernpapiere finden, z. B. dieses zur Belohnungsformung , die damit verbundene Studie, wie man die Belohnungsfunktion ändern kann, ohne die optimale Richtlinie zu beeinflussen.
Wenn Sie an Unteraufgaben interessiert sind, möchten Sie Optionen prüfen . Neben den Optionen gibt es eine Belohnungsfunktion.
Ich denke, die Kurzfassung Ihrer Frage lautet: Ja. Es scheint gängige Praxis zu sein, einen Agenten nur für die vollständige Erfüllung einer Aufgabe zu belohnen. Seien Sie jedoch vorsichtig mit Ihrem Wortlaut, wie Sean in seiner Antwort darauf hingewiesen hat, dass eine Belohnungsfunktion definiert ist alle möglichen Kombinationen von Zuständen, Aktionen und zukünftigen Zuständen.
Um Seans Antwort zu ergänzen, betrachten Sie diese Ausschnitte aus Richard Sutton und Andrew Bartos Intro-Buch über Reinforcement Learning:
Das Belohnungssignal ist Ihre Art, dem [Agenten] mitzuteilen, was Sie damit erreichen möchten, nicht wie Sie es erreichen möchten (Betonung des Autors).
Zum Beispiel sollte ein Schachspieler nur für das tatsächliche Gewinnen belohnt werden, nicht für das Erreichen von Unterzielen wie das Nehmen der gegnerischen Figuren oder das Erlangen der Kontrolle über das Zentrum.
Obwohl es der empfohlene Ansatz in ihrem Buch zu sein scheint, bin ich sicher, dass Sie andere finden können, die anderer Meinung sind.