Автоматов в роботе может быть много разных и полезных. Даже в Ардуино писать в автоматном стиле очень комфортно. Я недавно и на Verilog писал аппаратный конечный автомат для FPGA совершенно в той же манере. Работает все прекрасно. Меня, кстати, учили проектированию этих автоматов в институте и я сдавал по ним курсовые.
Не отвергая конечные автоматы которые просто необходимо делать там, где они наиболее подходят, скажу, что имеется более продвинутая парадигма программирования - деревья принятия решений. На ее основе долгое время строились и строятся те компьютерные игры, где требуются зачатки ИИ. Действующие в игре автоматические персонажи можно считать обычными реальными роботами, только действующими в виртуальной среде, в симуляторе.
Деревья решений тоже очень полезная парадигма, которой я часто пользуюсь и которую нужно изучить и взять на вооружение всем, кто хотел бы заниматься созданием автономных роботов.
Однако и эта парадигма имеет ряд изъянов. Об этом можно почитать хотя бы тут:
https://www.progamer.ru/dev/utility-ai.htmИмеется интересная книга:
http://www.aiportal.ru/files/books/ai-in-computer-games-by-champandard.zip Пароль на архив:
http://www.aiportal.ruСоветую хотя бы взглянуть на ее оглавление.
Кроме конечных автоматов и деревьев решений существует еще одна парадигма программирования, основы которой задал один из отцов ИИ Марвин Минский в своей книге "Фреймы для представления знаний". На эту книгу я также рекомендую взглянуть хоть одним глазком.
Для имплементации фреймого подхода имеется интересное программное средство - язык CLIPS.
CLIPS можно использовать с его собственной оболочкой в OsX и Windows, а также встроить во многие другие языки а также в микроконтроллеры, т.к. он написан на ANSI C.
Для этого языка в нашей стране вышло несколько книг, одна из которых содержит более 1000 страниц. Этот язык и в настоящее время поддерживается и развивается авторами - сотрудниками NASA. Я даже реализовал его в браузере Chrome в виде нативного клиента(NaCl). В реальных роботах я его начал использовать в 2010 г. Если кому интересно, могу поделиться различной информацией.
Естественно, фреймовый подход к созданию сценариев тоже имеет определенные ограничения, но для множества случаев он может оказаться вполне достаточным.
На CLIPS можно писать сценарии в стиле языка STRIPS (
http://ai-center.botik.ru/planning/index.php?ptl=materials/03languages.htm ), о котором, кажется, я упоминал в теме РОЖДЕНИЕ РОБОТА на данном форуме.