Боиды
Boids — это программа искусственной жизни , разработанная Крейгом Рейнольдсом в 1986 году, которая имитирует стайное поведение птиц и связанное с ними групповое движение. Его статья на эту тему была опубликована в 1987 году в материалах конференции ACM SIGGRAPH . [1] Название «boid» соответствует сокращенной версии слова «bird-oid object», которое относится к объекту, похожему на птицу. [2] Модель боида Рейнольдса является одним из примеров более широкой общей концепции, для которой с тех пор было разработано множество других вариаций. Близко связанная работа Ичиро Аоки примечательна тем, что она была опубликована в 1982 году — за пять лет до статьи Рейнольдса о Боидсе. [3]
Детали модели
[ редактировать ]Как и большинство симуляций искусственной жизни, Боидс является примером эмерджентного поведения; то есть сложность боидов возникает из-за взаимодействия отдельных агентов (в данном случае боидов), придерживающихся набора простых правил. Правила, применяемые в простейшем мире Boids, следующие:
- разделение : держитесь подальше от скопления местных товарищей по стае.
- выравнивание : держитесь среднего курса местных товарищей по стае
- сплоченность : направляйте движение к среднему положению (центру масс) местных товарищей по стае.
Могут быть добавлены более сложные правила, такие как обход препятствий и поиск цели.
Базовая модель была расширена несколькими способами с тех пор, как ее предложил Рейнольдс. Например, Дельгадо-Мата и др. [4] расширил базовую модель, включив в нее эффекты страха. Обоняние использовалось для передачи эмоций между животными посредством феромонов, смоделированных как частицы в свободно расширяющемся газе. Хартман и Бенеш [5] ввели дополнительную силу в расстановку сил, которую они называют сменой руководства. Этот поворот определяет шанс боида стать лидером и попытаться сбежать.
Передвижение боидов можно охарактеризовать как хаотичное (расщепление групп и дикое поведение) или упорядоченное. Неожиданное поведение, такое как разделение стад и воссоединение после обхода препятствий, можно считать возникающими.
Структура boids часто используется в компьютерной графике, обеспечивая реалистичное изображение стай птиц и других существ, таких как косяки рыб или стада животных. Например, он использовался в видеоигре Half-Life 1998 года для обозначения летающих птицеподобных существ, замеченных в конце игры на Зене и названных в файлах игры «boid».
Модель Боидса может быть использована для непосредственного управления и стабилизации групп простых беспилотных наземных транспортных средств (БНГ). [6] или микролетательные аппараты (МАВ) [7] в роевой робототехнике . Для стабилизации разнородных команд БПЛА-УГВ модель была адаптирована для использования бортовой относительной локализации Саской и др. [8]
На момент подачи предложения подход Рейнольдса представлял собой гигантский шаг вперед по сравнению с традиционными методами, используемыми в компьютерной анимации для кинофильмов. Первой анимацией, созданной с использованием этой модели, была «Стэнли и Стелла» в фильме «Раскалывая лед» (1987), за которым последовал дебют художественного фильма в Тима Бертона фильме «Бэтмен возвращается» (1992) с компьютерными роями летучих мышей и армиями пингвинов, марширующих по улицам. Готэм-сити. [9]
Модель boids использовалась и для других интересных приложений. Он был применен для автоматического программирования многоканальных интернет-радиостанций. [10] Его также использовали для визуализации информации. [11] и для задач оптимизации. [12]
Биолог Ричард Докинз ссылается на модель Бойда в своей книге 2009 года «Величайшее шоу на Земле: доказательства эволюции» . [13]
См. также
[ редактировать ]- Роевой интеллект - Коллективное поведение децентрализованных, самоорганизующихся систем.
- Коллективная миграция клеток
- Искусственная жизнь - Область исследования
- Игра жизни Конвея - двумерный клеточный автомат
Ссылки
[ редактировать ]- ^ Рейнольдс, Крейг (1987). «Стада, стада и школы: распределенная поведенческая модель». Материалы 14-й ежегодной конференции «Компьютерная графика и интерактивные технологии» . Ассоциация вычислительной техники . стр. 25–34. CiteSeerX 10.1.1.103.7187 . дои : 10.1145/37401.37406 . ISBN 978-0-89791-227-3 . S2CID 546350 .
- ^ Бэнкс, Алек; Винсент, Джонатан; Аньякоха, Чуквуди (июль 2007 г.). «Обзор оптимизации роя частиц. Часть I: предыстория и развитие». Естественные вычисления . 6 (4): 467–484. CiteSeerX 10.1.1.605.5879 . дои : 10.1007/s11047-007-9049-5 . S2CID 2344624 .
- ^ Аоки, Ичиро (25 августа 1982 г.). «Имитационное исследование стайного механизма рыб» . Nippon Suisan Gakkaishi (Японский академический журнал по рыболовству) . 48 (8): 1081–1088. дои : 10.2331/suisan.48.1081 . Проверено 26 ноября 2023 г.
- ^ Дельгадо-Мата, Карлос; Мартинес, Хесус Ибаньес; Би, Саймон; Руис-Родарте, Росио; Эйлетт, Рут (2007). «Об использовании виртуальных животных с искусственным страхом в виртуальной среде». Компьютеры нового поколения . 25 (2): 145–169. дои : 10.1007/s00354-007-0009-5 . S2CID 26078361 .
- ^ Хартман, Кристофер; Бенеш, Бедржих (июль 2006 г.). «Автономные боиды». Компьютерная анимация и виртуальные миры . 17 (3–4): 199–206. дои : 10.1002/cav.123 . S2CID 15720643 .
- ^ Мин, Хонкю; Ван, Чжидун (2011). Проектирование и анализ поведения группового побега для распределенных автономных мобильных роботов . Международная конференция IEEE по робототехнике и автоматизации (ICRA). дои : 10.1109/ICRA.2011.5980123 .
- ^ Саска, Мартин; Ян, Вакула; Либор, Преусил (2014). Стаи микролетательных аппаратов стабилизировались при визуальной относительной локализации . Международная конференция IEEE по робототехнике и автоматизации (ICRA). дои : 10.1109/ICRA.2014.6907374 .
- ^ Саска, Мартин; Войтех, Вонасек; Томас, Крайник; Либор, Преусил (2012). Координация и навигация разнородных групп БПЛА-УГВ, локализованных с помощью комплексного подхода (PDF) . Международная конференция IEEE/RSJ по интеллектуальным роботам и системам (IROS). Архивировано из оригинала (PDF) 10 августа 2017 года . Проверено 11 августа 2019 г.
- ^ Лебар Баец, Изток; Хеппнер, Фрэнк Х. (2009). «Организованный полет птиц» (PDF) . Поведение животных . 78 (4): 777–789. дои : 10.1016/j.anbehav.2009.07.007 . S2CID 53180059 .
- ^ Ибаньес, Хесус; Гомес-Скармета, Антонио Ф.; Блат, Хосеп (2003). «Ди-джеи: возникающее коллективное поведение как программирование многоканальных радиостанций». Материалы 8-й международной конференции по интеллектуальным пользовательским интерфейсам . стр. 248–250. дои : 10.1145/604045.604089 .
- ^ Мере, А.В. (2004). «Визуализация изменяющихся во времени данных с использованием средств скопления информации». Материалы симпозиума IEEE по визуализации информации . стр. 97–104. CiteSeerX 10.1.1.208.7409 . дои : 10.1109/INFVIS.2004.65 .
- ^ Цуй, Чжихуа; Ши, Чжунчжи (2009). «Оптимизация роя частиц Boid». Международный журнал инновационных вычислений и приложений . 2 (2): 77–85. дои : 10.1504/IJICA.2009.031778 .
- ^ Докинз, Ричард (2009). Величайшее шоу на Земле: Доказательства эволюции . Свободная пресса . стр. 219–220. ISBN 978-1-61664-829-9 .
Внешние ссылки
[ редактировать ]- Страница Boids Крейга Рейнольдса
- «Boids Demo Reel» Ранние тесты движения, 1986–1987 годы.
- «Стэнли и Стелла в: Раскалывая лед» 1987 г. В Интернет-архиве (обновлено в 2023 г., высочайшее качество. Также доступно на YouTube .)
- Объяснение алгоритма в псевдокоде
- Реализация JavaScript
- Реализация JavaScript с помощью Phaser Framework
- 3D-моделирование Boids с использованием OpenGL, используемое Отделением естественной истории BBC.
- Живое 3D-моделирование поведения стаи птиц в браузере в Unity3D — реализация с открытым исходным кодом для Windows, Linux и Mac
- Реализация UNIX+Windows с открытым исходным кодом на C++ с использованием OpenGL и элементов управления симуляцией.
- Реализация Java с использованием API javafx.
- GLSchool — часть XScreenSaver. программного обеспечения