Глава 6. Робототехника и автоматное программирование
6.1. Автоматное программирование (Шалыто)
На 7-м семинаре А.А. Шалыто выступил с докладом «Автоматное программирование».
Автоматное программирование — подход к разработке программных систем со сложным поведением, основанный на модели автоматизированного объекта управления (расширении конечного автомата), в качестве которого может выступать как произвольный физический объект, так и математическая функция.
Рассматриваются достоинства автоматного программирования как вручную, так и при генерации автоматов методами генетического программирования. Приводятся примеры использования данного подхода во встраиваемых системах.
Ключевая идея
Объект управления моделируется как конечный автомат. Поведение системы описывается через состояния, переходы между состояниями и действия, выполняемые в каждом состоянии.
Источник: Шалыто А.А., 7-й семинар (article_0050.md).
6.2. Формальная модель конечного автомата
Конечный автомат формально определяется как кортеж M = (Q, Σ, δ, q₀, F), где:
- Q — конечное множество состояний;
- Σ — конечное множество входных символов (алфавит);
- δ — функция перехода: δ: Q × Σ → Q;
- q₀ — начальное состояние (q₀ ∈ Q);
- F — множество конечных (принимающих) состояний (F ⊆ Q).
Применение автоматного программирования позволяет разрабатывать системы со сложным поведением без необходимости явной настройки большого числа параметров — структура поведения вытекает из топологии автомата.
6.3. Координация группы роботов с подкреплением (Ерусалимчик, Каминка)
Дан Ерусалимчик и Галь Каминка (университет Бар-Илан, Израиль) разработали подход обучения с подкреплением для выбора алгоритма координации группы автономных роботов. Работа выполнялась в рамках магистерской диссертации и публиковалась на конференциях IAS-10, AAMAS-09, ALA-09 и ICRA-10.
Подход не только демонстрирует хорошие результаты экспериментов, но и аналитически обоснован.
Индекс Эффективности (EI)
Функция награды (Индекс Эффективности, EI) помогает:
- сократить время и ресурсы, расходуемые на координацию;
- максимизировать время между конфликтами, которые требуют координации.
Эта награда вычисляется через оценку скорости, с которой методы координации тратят ресурсы.
Экспериментальная проверка
- Обучение с подкреплением без состояний — подходит для динамичных сред.
- Реальные роботы AIBO и виртуальная среда симуляции роботов — задача фуражирования.
- Дискретный симулятор — лабиринт с узкими коридорами, перемещение от одной цели к другой.
- Виртуальные агенты в среде коммерческого симулятора высокой реалистичности VR-Forces.
Вывод
При определенных допущениях задача пространственной координации может моделироваться как игра в матричном виде, в которой выгоды для робота неизвестны заранее, но они могут быть получены с помощью Индекса Эффективности. Использование обучения с подкреплением приводит роботов к максимальному балансу.
Источник: Ерусалимчик Д., Каминка Г., «Обучение координации с подкреплением группы роботов» (article_0055.md).
6.4. Автоматное управление мобильными роботами
На 8-м семинаре рассматривалось применение автоматного программирования для построения систем управления мобильными роботами. Содержание доклада:
- Применение автоматного программирования для построения систем управления мобильными роботами.
- Система управления малоразмерным беспилотным вертолётом.
- Разработка стенда для проверки алгоритмов автоматного управления мобильными роботами.
- Применение генетических алгоритмов для синтеза систем управления мобильными роботами.
Источник: 8-й семинар (article_0059.md).
6.5. Вывод главы
Главный вывод
Автоматное программирование позволяет разрабатывать системы со сложным поведением на основе модели конечного автомата. Координация групп роботов может быть оптимизирована через обучение с подкреплением с функцией награды (Индекс Эффективности), которая минимизирует затраты ресурсов на координацию.
Источник: статьи Шалыто (article_0050.md), Ерусалимчика и Каминки (article_0055.md), 8-й семинар (article_0059.md).
AXIIOM
Разрабатываем финтех-продукты и ИИ-решения
Сайты, мобильные приложения, платёжные интеграции и внедрение ИИ — от стратегии до поддержки.