Frage

Ich habe einige Arbeit mit Q Lernen, über einen Mann zu tun, die Möbel um ein Haus zu bewegen hat (es ist im Grunde, dass). Wenn das Haus klein genug ist, kann ich nur eine Matrix, die Aktionen / Belohnungen darstellt, sondern als die Größe des Hauses größer wächst, die nicht ausreicht. Also muss ich für sie eine Art von Generalisierung Funktion verwenden, statt. Mein Lehrer schlägt vor, verwende ich nicht nur eine, sondern mehrere diejenigen, so konnte ich sie vergleichen und so. Was euch empfehlen?

Ich habe gehört, dass für diese Situation Menschen Support Vector Machines verwenden, auch Neuronale Netze. Ich bin nicht wirklich in dem Feld, so kann ich nicht sagen. Ich hatte in der Vergangenheit einige Erfahrung mit Neuronalen Netzen, aber SVM scheinen viel schwerer Gegenstand zu erreichen. Gibt es noch andere Methoden, die ich aussehen soll? Ich weiß, dass es wie eine Unmenge von ihnen sein muss, aber ich brauche nur etwas zu starten.

Danke

War es hilfreich?

Lösung

Just als Auffrischung der Terminologie, in Q-Learning, Sie versuchen, die Q-Funktionen zu lernen, die sich auf den Zustand und die Aktion abhängig:

Q(S,A) = ????

Die Standardversion von Q-Learning als in den meisten Klassen unterrichtet sagt Ihnen, dass Sie für jede S und A, benötigen Sie einen gesonderten Wert in einer Tabelle zu lernen und erfahren Sie, wie Bellman-Updates, um zu konvergieren, um die optimale auszuführen Werte.

Jetzt können sagen, dass anstelle der Tabelle verwenden Sie eine andere Funktionsapproximator. Zum Beispiel können lineare Funktionen versuchen. Nehmen Sie sich (S, A) Paar und denken Sie an eine Reihe von Funktionen, die Sie von ihnen extrahieren kann. Ein Beispiel für eine Funktion ist „Bin ich neben einer Wand“, ein anderer ist „Wird die Handlung das Objekt neben einer Wand“, etc. Anzahl dieser Merkmale f1 (S, A), f2 (S, A). ..

Nun, versuchen Sie die Q-Funktion als eine lineare Funktion dieser Funktionen zu lernen

Q(S,A) = w1 * f1(S,A) + w2*f2(S,A) ... + wN*fN(S,A)

Wie sollten Sie lernen die Gewichte w? Nun, da dies eine Hausaufgaben ist, lasse ich Sie darüber nachdenken, es auf eigene Faust.

jedoch als Hinweis, kann sagen, dass Sie K mögliche Zustände und M mögliche Aktionen in jedem Staat haben. Lassen Sie uns sagen Sie K * M verfügt, von denen definieren jeweils ein Indikator dafür, ob Sie in einem bestimmten Zustand sind und eine bestimmte Aktion gehen zu nehmen. So

Q(S,A) = w11 * (S==1 && A == 1) + w12 * (S == 1 && A == 2) + w21 * (S==2 && A==3) ...

Hinweis, dass für jeden Staat / Aktionspaar, nur ein Merkmal 1 sein wird, und der Rest wird 0 sein, so Q (S, A) wird w auf die entsprechende gleich sein und Sie lernen, im wesentlichen einen Tisch. So können Sie denken an dem Standard-Tabelle Q-Learning als Spezialfall mit diesen linearen Funktionen zu lernen. Also, denken Sie an, was der normalen Q-Lernalgorithmus tut, und was Sie tun sollten.

Hoffentlich Sie eine kleine Basis der Features finden, viel weniger als K * M, die Sie Ihren Raum ermöglicht es gut zu vertreten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top