du formalisierst deinen Zustandsraum nicht exakt genug.
Du musst in der Lage sein, deine möglichen Reaktionen als Funktionen deiner Outputs zu beschreiben und sie abhängig zu machen vom möglichen Zustand der aktuellen Inputs.
Solange du das nicht machen kannst, macht das System "irgend etwas nebulöses", aber es ist weder bewiesen, dass es irgend etwas gezielt lernen kann noch dass es verschiedene Zustände gezielt lernen kann.
Auch "Herumfahren" ist ja ein Zustand, der durch spezifische Output-Muster definiert werden kann, und er tritt ein (wird WAHR), wenn das eine oder andere Input-Muster auftritt.

Die Sache mit dem Hunger ist ja ein weiterer Zustand, zusätzlich zu den 4 Sensor-Eingängen; lassen wir den Hunger also erst mal raus.
Zeige erst mal die oben beschriebenen Grund-Fähigkeiten:

für alle (paarweisen) Eingänge a, b ∈ {In1...In4}: output[n]= a ODER b ( für alle n ∈ {1,2} )
für alle (paarweisen) Eingänge a, b ∈ {In1...In4}: output[n]= a UND b ( für alle n ∈ {1,2} )
für alle (einzelnen) Eingänge c ∈ {In1...In4}: output[n]= (NICHT c) ( für alle n ∈ {1,2} )

Nimmst du den Hunger als Input mit rein, gibt es 32 Input-Zustände, für die zu zeigen wäre:

für alle (paarweisen) Eingänge a, b ∈ {In1...In5}: output[n]= a ODER b ( für alle n ∈ {1,2} )
für alle (paarweisen) Eingänge a, b ∈ {In1...In5}: output[n]= a UND b ( für alle n ∈ {1,2} )
für alle (einzelnen) Eingänge c ∈ {In1...In5}: output[n]= (NICHT c) ( für alle n ∈ {1,2} )