Do tej pory przyjęliśmy pogląd na robotykę w oparciu o pojęcie definiowania lub uczenia się funkcji nagrody, a robot zoptymalizował tę funkcję (czy to poprzez planowanie, czy uczenie się), czasami w koordynacji lub współpracy z ludźmi. Jest to przemyślany pogląd na robotykę, który należy skontrastować z poglądem reaktywnym.
Kontrolery reaktywne
W niektórych przypadkach łatwiej jest ustalić dobrą politykę dla robota niż modelować świat i planować. Wtedy zamiast racjonalnego agenta mamy agenta odruchowego. Na przykład wyobraź sobie robota z nogami, który próbuje podnieść nogę nad przeszkodą. Moglibyśmy dać temu robotowi regułę, która mówi, że podnieś nogę na niewielką wysokość h i przesuń ją do przodu, a jeśli noga napotka przeszkodę, cofnij ją i zacznij ponownie na większej wysokości. Można powiedzieć, że h modeluje pewien aspekt świata, ale możemy też myśleć o h jako o zmiennej pomocniczej sterownika robota, pozbawionej bezpośredniego znaczenia fizycznego. Jednym z takich przykładów jest robot sześcionożny (sześcionóg), zaprojektowany do poruszania się po trudnym terenie. Czujniki robota są niewystarczające do uzyskania dokładnych modeli terenu do planowania ścieżki. Co więcej, nawet gdybyśmy dodali bardzo precyzyjne kamery i dalmierze, 12 stopni swobody (dwa na każdą nogę) sprawiłoby, że powstały problem planowania ścieżki byłby trudny obliczeniowo. Niemniej jednak możliwe jest bezpośrednie określenie sterownika bez wyraźnego modelu środowiska. (Widzieliśmy już to z kontrolerem PD, który był w stanie utrzymać złożone ramię robota na cel bez wyraźnego modelu dynamiki robota.) W przypadku robota sześcionógowego najpierw wybieramy chód, czyli wzór ruchu kończyn. Jeden statycznie stabilny chód polega na przesunięciu prawej przedniej, prawej tylnej i lewej środkowej nogi do przodu (utrzymując pozostałe trzy nieruchome), a następnie przesuń pozostałe trzy. Ten chód sprawdza się dobrze na płaskim terenie. Na nierównym terenie przeszkody mogą uniemożliwić ruch nogi do przodu. Ten problem można przezwyciężyć za pomocą niezwykle prostej zasady kontroli: gdy ruch nogi do przodu jest zablokowany, po prostu cofnij ją, unieś wyżej i spróbuj ponownie.