Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску

Пример Boids, созданный в OpenGL

Boids - это программа искусственной жизни , разработанная Крейгом Рейнольдсом в 1986 году, которая имитирует стайное поведение птиц . Его статья на эту тему была опубликована в 1987 году в трудах конференции ACM SIGGRAPH . [1] Название «боид» соответствует сокращенной версии «птицеподобный объект», который относится к птицеподобному объекту. [2] Между прочим, «boid» - это также диалектное произношение слова «птица» на диалекте Нью-Йорка .

Правила, применяемые в простых Boids
Выравнивание
Сплоченность

Как и большинство искусственных симуляторов жизни, Boids является примером эмерджентного поведения; то есть сложность Boids возникает из-за взаимодействия отдельных агентов (в данном случае boids), придерживающихся набора простых правил. Правила, применяемые в простейшем мире Boids, следующие:

  • Разделение : бычок , чтобы избежать скученности местных flockmates
  • выравнивание : держитесь к среднему курсу местных собратьев
  • сплоченность : держитесь, чтобы двигаться к среднему положению (центру масс) местных сородичей

Могут быть добавлены более сложные правила, такие как избегание препятствий и поиск цели.

Базовая модель была расширена несколькими способами с тех пор, как Рейнольдс предложил ее. Например, Delgado-Mata et al. [3] расширили базовую модель, включив в нее эффекты страха. Обоняние использовалось для передачи эмоций между животными с помощью феромонов, смоделированных как частицы в свободном расширяющемся газе. Хартман и Бенеш [4] внесли в расклад дополнительную силу, которую они называют сменой руководства. Этот бычонок определяет шанс боида стать лидером и попытаться убежать.

Движение боидов можно охарактеризовать как хаотическое (расщепление групп и дикое поведение) или как упорядоченное. Неожиданное поведение, такое как разделение стай и воссоединение после уклонения от препятствий, можно рассматривать как возникновение.

Каркас boids часто используется в компьютерной графике, обеспечивая реалистичные изображения стай птиц и других существ, таких как косяки рыб или стада животных. Например, он использовался в видеоигре 1998 года Half-Life для летающих птицеподобных существ, замеченных в конце игры на Xen , названных «boid» в файлах игры.

Модель Боидса может использоваться для непосредственного управления и стабилизации групп простых беспилотных наземных транспортных средств (UGV) [5] или микромобильных транспортных средств (MAV) [6] в роевой робототехнике . Для стабилизации разнородных групп БПЛА-UGV модель была адаптирована для использования бортовой относительной локализации Саска и др. [7]

На момент подачи предложения подход Рейнольдса представлял собой гигантский шаг вперед по сравнению с традиционными методами, используемыми в компьютерной анимации для кинофильмов. Первым анимационным фильмом, созданным с использованием этой модели, был Стэнли и Стелла в фильме «Ломая лед» (1987), за которым последовал дебют в полнометражном фильме Тима Бертона « Возвращение Бэтмена» (1992) с компьютерными роями летучих мышей и армиями пингвинов, марширующих по улицам. Готэм-сити. [8]

Модель boids использовалась для других интересных приложений. Применен для автоматического программирования многоканальных интернет-радиостанций. [9] Он также использовался для визуализации информации [10] и для задач оптимизации. [11]

См. Также [ править ]

Ссылки [ править ]

  1. ^ Рейнольдс, Крейг (1987). Стаи, стада и школы: распределенная модель поведения . SIGGRAPH '87: Материалы 14-й ежегодной конференции по компьютерной графике и интерактивным методам . Ассоциация вычислительной техники . С. 25–34. CiteSeerX  10.1.1.103.7187 . DOI : 10.1145 / 37401.37406 . ISBN 978-0-89791-227-3. S2CID  546350 .
  2. ^ Бэнкс, Алек; Винсент, Джонатан; Аньякоха, Чуквуди (июль 2007 г.). «Обзор оптимизации роя частиц. Часть I: история вопроса и разработка». Естественные вычисления . 6 (4): 467–484. CiteSeerX 10.1.1.605.5879 . DOI : 10.1007 / s11047-007-9049-5 . S2CID 2344624 .  
  3. ^ Дельгадо-Мата, Карлос; Мартинес, Хесус Ибанез; Пчела, Саймон; Руис-Родарт, Росио; Айлетт, Рут (2007). «Об использовании виртуальных животных с искусственным страхом в виртуальных средах». Вычислительная техника нового поколения . 25 (2): 145–169. DOI : 10.1007 / s00354-007-0009-5 . S2CID 26078361 . 
  4. ^ Хартман, Кристофер; Бенешо, Бедржич (июль 2006 г.). «Автономные бои». Компьютерная анимация и виртуальные миры . 17 (3–4): 199–206. DOI : 10.1002 / cav.123 . S2CID 15720643 . 
  5. ^ Мин, Хонгкю; Ван, Чжидун (2011). Дизайн и анализ группового побега для распределенных автономных мобильных роботов . Международная конференция IEEE по робототехнике и автоматизации (ICRA). DOI : 10.1109 / ICRA.2011.5980123 .
  6. ^ Саска, Мартин; Ян, Вакула; Libor, Preucil (2014). Стаи микролетов стабилизировались относительно визуальной относительной локализации . Международная конференция IEEE по робототехнике и автоматизации (ICRA). DOI : 10.1109 / ICRA.2014.6907374 .
  7. ^ Саска, Мартин; Войтех, Вонашек; Томаш, Крайник; Libor, Preucil (2012). Координация и навигация неоднородных групп БПЛА-UGV, локализованных с помощью подхода «ястребиный глаз» (PDF) . Международная конференция IEEE / RSJ по интеллектуальным роботам и системам (IROS).
  8. ^ Лебар Баец, Изток; Хеппнер, Фрэнк Х. (2009). «Организованный полет птиц» (PDF) . Поведение животных . 78 (4): 777–789. DOI : 10.1016 / j.anbehav.2009.07.007 . S2CID 53180059 .  
  9. ^ Ибаньес, Хесус; Гомес-Скармета, Антонио Ф .; Блат, Жозеп (2003). «DJ-boids: возникающее коллективное поведение как программирование многоканальной радиостанции». Материалы 8-й международной конференции по интеллектуальным пользовательским интерфейсам . С. 248–250. DOI : 10.1145 / 604045.604089 .
  10. ^ Мёре, А. В. (2004). "Визуализация данных, изменяющихся во времени, с использованием информационных блоидов". Труды симпозиума IEEE по визуализации информации . С. 97–104. DOI : 10.1109 / INFVIS.2004.65 .
  11. ^ Цуй, Чжихуа; Ши, Чжунчжи (2009). «Оптимизация роя боидных частиц». Международный журнал инновационных вычислений и приложений . 2 (2): 77–85. DOI : 10.1504 / IJICA.2009.031778 .

Внешние ссылки [ править ]

  • Страница Крейга Рейнольдса Боидса
  • Объяснение алгоритма в псевдокоде
  • Реализация JavaScript
  • Реализация JavaScript с помощью Phaser Framework
  • Трехмерное моделирование Boids с использованием OpenGL, используемое отделом естественной истории BBC
  • Живое трехмерное моделирование поведения птичьих стай в браузере в Unity3D - реализация с открытым исходным кодом для Windows, Linux и Mac
  • Реализация с открытым исходным кодом UNIX + Windows на C ++ с использованием OpenGL и элементов управления моделированием
  • Реализация java с использованием javafx API
  • GLSchool - часть программного обеспечения XScreenSaver