При создании интеллектуальных агентов хорошо иметь возможность наглядно отобразить результаты их деятельности. Для этого используются графические модели реального мира. Этой публикацией я открываю цикл кратких описаний каждой из систем, их будет много. Потом из описываемых программ будет выбрана одна с которой мы будем работать.
Webots(http://www.cyberbotics.com) программное обеспечение предназначенное для эмуляции трехмерных мобильных роботов с учётом физических характеристик: ходящих, плавающих, летающих. Возможны так же комбинации, на пример плавающий и ходящий робот. Имеются и реальные реализации моделей, с помощью которых можно проверить созданные программы. В прошлом имелись два контеста, http://www.robotstadium.org (роботы играли в футбол) и http://www.ratslife.org (крысиный мир) но в данный момент деятельность этих контестов прекращена, почему неизвестно – на сайте информации нет.
Программа управляющая роботом в терминологии Webots называется «контроллер». Создать её можно на языках C/C++, Java, Python, язык MatLab. Существует так же возможность управлять роботами по TСP/IP, что даёт возможность писать агенты на других языках(к примеру на Lisp-е). Есть возможность создавать простые программы, пользуясь графическим языком e-puck(создаётся конечный автомат)
Мир – 3D описание свойств роботов и их окружения: физических свойств, типов объектов и т.п., организован в иерархической форме, для его создания используется внутренний DSL(Domain Specific Language) язык. Роботы с помощью этого языка описываются гибко: на этапе описания физических характеристик я могу не задумываться о том, какой язык используется для программирования собственно робота.
Данное программное обеспечение обеспечивает на первый взгляд довольно реалистичную физику моделируемых миров (используется физический движок Open Dynamic Engine)
Существует довольно неплохая документация на английском языке описывающая все ньюансы. Есть платный набор обучающих текстов(см. абзац ниже)
Версии программы существуют для windows xp, 7 и Vista, MacOS и Ubuntu. Она платная, существует две версии: образовательная и pro. На момент написания статьи pro версия стоила 2300 швейцарских франков(то есть 2500 долларов), что как по мне дороговастенько, образовательная версия стоит 320 швейцарских франков . Детальное цены можно посмотреть здесь http://www.cyberbotics.com/webots/.
Вывод: webots хорошо использовать для моделирования роботов и визуализации их поведения, однако это только движок - задачи пригодной для решения интеллектуальным агентом(как например в играх, он не предлагает).