Основы компьютерного моделирования (Syllabus): различия между версиями
Patarakin (обсуждение | вклад) |
Patarakin (обсуждение | вклад) |
||
Строка 106: | Строка 106: | ||
==== Моделируемые паттерны поведения ==== | ==== Моделируемые паттерны поведения ==== | ||
<scratch project="702005" /> | |||
{{#ask: [[Категория:HowTo]] [[Description_of_problem::+]] | ?Description_of_problem | ?Solution | ?Environment }} | {{#ask: [[Категория:HowTo]] [[Description_of_problem::+]] | ?Description_of_problem | ?Solution | ?Environment }} |
Версия 08:45, 14 сентября 2024
Планируемые результаты обучения (Знать, Уметь, Владеть) |
|
---|---|
Содержание разделов курса | |
Видео запись | https://www.youtube.com/watch?v=4NS4EYQFKy0&t=6s |
Среды и средства, которые поддерживают учебный курс | R, Snap!, NetLogo, StarLogo Nova |
Книги, на которых основывается учебный курс | Agent-Based and Individual-Based Modeling: A Practical Introduction, Growing Artificial Societies: Social Science From the Bottom Up (Complex Adaptive Systems) |
Карта курса
Вводная лекция
Подбор компетенций, которые уже есть на площадке
- Practice defining problems to solve by computing for data analysis, modeling or algorithmic thinking
- Simulation (the ability to interpret and construct dynamic models of real world processes)
- Владение методами моделирования
- Способность быстро разбираться, комбинировать и организовывать информацию в значимые модели
Понятия учебного курса
Description | Environment | |
---|---|---|
Агентное моделирование | Агентное моделирование (agent-based model) (ABM)— метод имитационного моделирования, исследующий поведение децентрализованных агентов и то, как такое поведение определяет поведение всей системы в целом. В отличие от системной динамики аналитик определяет поведение агентов на индивидуальном уровне, а глобальное поведение возникает как результат деятельности множества агентов (моделирование «снизу вверх»). ABM представляют собой модели, в которых отдельные лица или агенты описываются как уникальные и автономные объекты, которые обычно взаимодействуют друг с другом и с окружающей их средой на местном уровне. Агентами могут быть организмы, люди, предприятия, учреждения и любые другие объекты, преследующие определенную цель. Когда мы даем агентам правила адаптации к изменениям в их среде и к тому, что делают другие агенты, тогда поведение каждого отдельного агента и, следовательно, поведение всей системы вытекает из этих правил, характеристик агентов и окружающей среды. Эмерджентность - это основная объясняющая концепция агентного моделирования. Эпштейн и Акстелл (1996) удачно описали этот вид объяснения своим знаменитым вопросом:
| NetLogo StarLogo Nova Scratch Snap! BehaviorSpace |
Большая языковая модель | LLM — нейросетевые модели, которые позволяют обобщать, понимать и писать тексты на разных языках. Нейросеть выучивает язык во время обучения, при котором ей «показывают» огромное количество художественной литературы, интернет-форумов, энциклопедий и других источников, хорошо представляющих человеческий язык во всем его многообразии. | |
Имитационное моделирование | Имитационное моделирование (англ. simulation modeling) — метод исследования, при котором изучаемая система заменяется моделью, с достаточной точностью описывающей реальную систему (построенная модель описывает процессы так, как они проходили бы в действительности), с которой проводятся эксперименты с целью получения информации об этой системе. Такую модель можно «проиграть» во времени, как для одного испытания, так и заданного их множества. При этом результаты будут определяться случайным характером процессов. По этим данным можно получить достаточно устойчивую статистику. Экспериментирование с моделью называют имитацией (имитация — это постижение сути явления, не прибегая к экспериментам на реальном объекте). | |
Многоагентное моделирование | Многоагентное моделирование (ABM) — это метод компьютерного моделирования, в котором отдельные "агенты" (объекты или сущности) взаимодействуют друг с другом и с окружающей средой согласно заданным правилам. Каждый агент может принимать собственные решения и действовать независимо, что позволяет моделировать сложные системы и процессы, такие как социальное взаимодействие, экономические рынки или экосистемы. | NetLogo StarLogo Nova |
Моделирование | Моделирование — это процесс создания упрощенной репрезентации реального объекта, системы или процесса с целью анализа, понимания или предсказания их поведения. Модели могут быть физическими, математическими или компьютерными и служат инструментом для изучения сложных явлений и принятия решений. | NetLogo StarLogo Nova |
Модель | Моде́ль (фр. modèle от лат. modulus «мера, аналог, образец») — система, исследование которой служит средством для получения информации о другой системе; представление некоторого реального процесса, устройства или концепции. Модель есть абстрактное представление реальности в какой-либо форме (например, в математической, физической, символической, графической или дескриптивной), предназначенное для рассмотрения определённых аспектов этой реальности и позволяющее получить ответы на изучаемые. Система В является моделью системы А для активной системы Q (человека-индивида, коллектива, животного, робота и т. п.), если основанием для ее использования этой активной системой служит ее структурное сходство с моделируемой системой А. | Foldit NetLogo StarLogo Nova |
Модель NetLogo | Модель - многоагентная симуляция какого-либо процесса, написанная на языке NetLogo. Используется в качестве социального объекта в целом ряде сетевых сообществ для взаимодействия студентов, преподавателей и исследователей. | NetLogo |
Модель акторов | Модель а́кторов — математическая модель параллельных вычислений, строящаяся вокруг понятия актора (англ. actor «актёр; действующий субъект»), считающегося универсальным примитивом параллельного исполнения. Актор в данной модели взаимодействует путём обмена сообщениями с другими акторами, и каждый в ответ на получаемые сообщения может принимать локальные решения, создавать новые акторы, посылать свои сообщения, устанавливать, как следует реагировать на последующие сообщения. | NetLogo StarLogo Nova Scheme |
Модель белка | Третичная структура белка, спрогнозированная на основе аминокислотной последовательности. Цель игры головоломки FoldIt состоит в поиске трёхмерной структуры определённого белка с самым низким уровнем свободной энергии | Foldit FoldIt сообщество |
Модель компетенций | Модель компетенций (профиль компетенций) структурированный набор необходимых, идентифицируемых и измеряемых компетенций с индикаторами поведения | |
Модель обеспечения качества | Система объединенных определенной точкой зрения параметров, связанных между собой и позволяющих достичь прогнозируемого результата | |
Онтология модели пользователя | Онтология модели пользователя - ученика. В онтологии представлены его цели, действия, фиксируемые в электронной среде переменные. | VUE Protege |
Сценарное моделирование | Технология сценарного моделирования взаимодействия объектов различного типа была разработана Жилем Паккетом. Изначально в этой технологии разные типы знания представлены при помощи фигур разного типа. Например. Абстрактные знания, концепции, информационные источники представлены в форме прямоугольников. Процедуры и задачи представлены форме овалов. Принципы представлены в форме 6-угольников. Агенты и команды участников часто изображаются на схемах в той же форме, что и принципы, чтобы подчеркнуть то значение, которое они играют в контроле процессов. Исходные блоки этой моделирующей среды Паккет использовал и для представления связей между агентами и объектами совместной деятельности. | |
Языковая модель | Языковая модель — это распределение вероятностей по последовательностям слов. Языковые модели генерируют вероятности путём обучения на корпусе текстов на одном или нескольких языках. Учитывая, что языки могут использоваться для выражения огромного множества верных предложений (так называемая цифровая бесконечность), языковое моделирование сталкивается с проблемой задания ненулевых вероятностей лингвистически верным последовательностям, которые могут никогда не встретиться в обучающих данных. | Java JavaScript Python Julia R |
Книги и авторы для курса
Inventor | Description | Environment | |
---|---|---|---|
Agent-Based and Individual-Based Modeling: A Practical Introduction | Railsback Grimm | Подробное руководство по дизайну экспериментов в среде Netlogo с использованием BehaviorSpace и использованием ODD принципов
| NetLogo BehaviorSpace Mesa |
An Introduction to Agent-Based Modeling: Modeling Natural, Social, and Engineered Complex Systems with NetLogo | Wilensky Rand | Введение в моделирование систем при помощи языка NetLogo (от создателя языка) - использование NetLogo в естественно-научном, инженерном и общественном образовании | NetLogo |
Individual-Based Models of Cultural Evolution: A Step-by-Step Guide Using R | Acerbi | Книга показывает как создавать агентно-ориентированные модели или ABM культурной эволюции. В тексте книги используется код на языке программирования R. От очень простых моделей основных процессов культурной эволюции, таких как предвзятая передача и культурная мутация, к более сложным темам, таким как эволюция социального обучения, демографические эффекты и анализ социальных сетей. | R Ggplot |
Modeling Social Behavior: Mathematical and Agent-Based Models of Social Dynamics and Cultural Evolution | Smaldino | Социальные, поведенческие и когнитивные науки исторически полагались на силу слова. Слова имеют силу. Богатые аналогии могут найти отклик в умах читателей и пролить свет на тайны природы. Я говорю о вербальных теориях, описательных объяснениях сложных явлений. Большинство теорий, вероятно, более точны, чем поэтичны, но они, как правило, опираются на свойство большинства языков, согласно которому фраз могут нести в себе несколько возможных импликатур — рассмотрим, например, такие слова, как «восприятие», «категория», «идентичность», «тождественность» обучение» и даже «реакция» достаточно двусмысленны, чтобы допускать множество интерпретаций. То есть язык по своей сути (и адаптивно) расплывчат и двусмыслен. В конечном счете, это проблема для ученых, потому что нам нужно предельно четко понимать, о чем мы говорим, чтобы выдвинуть полезные теории Вселенной. | NetLogo BehaviorSpace R ODD принципы Центральная предельная теорема |
Tidy Modeling with R | Sigle | Руководство по созданию и использованию моделей при помощи пакетов из пространства tidyverse: recipes, parsnip, workflows, yardstick, and others. | R RStudio R for Data Science |
Turtles, termites, and traffic jams: explorations in massively parallel microworld | Resnick | Книга "Черепахи, термиты и дорожные пробки: исследования в микромире массово-параллельных вычислений" Децентрализованный подход к феноменам окружающего мира - на основе использования микромира с тысячами черепашек | NetLogo StarLogo Nova Scratch StarLogo |
Кларин М. В. Инновационные модели обучения | Кларин М.В. | Кларин М.В. Инновационные модели обучения: Исследование мирового опыта. Монография. М.: Луч, 2016. 640 с. |
Игры
Description | |
---|---|
Foldit | Фолдит — многопользовательская игра онлайн-головоломка о фолдинге белка. Игра является частью исследовательского проекта и разработана в Вашингтонском университете. Предмет игры — наилучшим образом свернуть структуру выбранных протеинов; лучшие пользовательские решения анализируются учёными, которые могут с их помощью найти решение реальных научных проблем, связанных с поиском вакцин и биологическими инновациями. |
SimAnt | SimAnt: The Electronic Ant Colony — компьютерная игра-симулятор, созданная студией Maxis и выпущенная в 1991 году. Является третьей игрой серии Sim после SimCity и SimEarth. Игра получила премию от ассоциации программного обеспечения Codie award как лучший симулятор года. Игра создавалась при сотрудничестве Эдварда Уилсона — известного биолога, изучавшего социальное поведение муравьёв в колониях. Игра была выпущена для IBM PC, Commodore Amiga, Apple Macintosh и Super Nintendo Entertainment System. |
SimCity | В SimCity у игрока обычно нет определённой цели, по достижении которой игра заканчивается. Играющий управляет городом, выступая в роли мэра. Ему предоставляется возможность собирать налоги, строить городские здания и прокладывать дороги. Конечно, в руках мэра далеко не все аспекты жизни города — он не может, например, приказывать, где строить частные здания, а может только планировать территорию, разделяя её на коммерческие, жилые и промышленные зоны. Эти зоны впоследствии застраиваются жителями города. В случае, если привлекательность данной зоны в глазах городских жителей низка (причиной чего могут быть высокие налоги в данной сфере или недостаточное развитие других городских зон), она не будет застраиваться. В январе 2008 года код оригинальной SimCity был открыт и теперь распространяется под лицензией GPLv3. Права на имя «SimCity» принадлежат Electronic Arts, поэтому открытый проект был переименован в Micropolis. |
Sims | The Sims — однопользовательская видеоигра в жанре симулятора жизни, первая по счёту из серии The Sims, разработанная командой разработчиков Maxis под руководством геймдизайнера Уилла Райта и изданная компанией Electronic Arts. Игра создавалась при сотрудничестве Эдварда Уилсона — известного биолога, изучавшего социальное поведение муравьёв в колониях. Игра была выпущена для IBM PC, Commodore Amiga, Apple Macintosh и Super Nintendo Entertainment System. Когда игрок впервые играет в The Sims в рамках обучающей программы, он должен управлять семьёй молодожёнов — Ньюби (англ. Newbie), которая только переехала в город и должна освоиться в нём. Действие игры происходит в городке, где проживают пять семей. |
Модели
Description | Environment | |
---|---|---|
Air Pollution - Buses and Cars | Когда модель работает, автобусы непрерывно следуют по дороге. В домах есть люди, которым нужно добираться на работу. Если автобус проезжает мимо дома, человек из этого дома «садится в автобус». Однако, если автобус не прибудет достаточно скоро, вместо этого человек использует личную машину, в результате чего на дороге появится машина, которой необходимо проехать определенное расстояние, прежде чем ее уберут с дороги. Автомобили выбрасывают 1 загрязнение каждые 7 «тиков». Автобусы выбрасывают одно загрязнение каждые 1 тик. Автомобили и автобусы следуют основным правилам дорожного движения: снижайте скорость, если многолюдно, и останавливайтесь, если впереди нет места для движения.
| StarLogo Nova |
Artificial Anasazi | Проект был посвящен воспроизведению древнеиндейской культуры анасази в виде цифрового искусственного общества. Была смоделирована динамика города Кайента (Аризона, США) в период с 900 по 1350 год нашей эры, после которого упомянутая цивилизация исчезла. Главный вопрос для археологов был следующий: почему так произошло? С использованием расширенной версии модели Sugarscape была создана окружающая агентов среда с учетом гидрологических особенностей территории, плодородности почвы, засушливости и других параметров. В свою очередь, расселение анасази по территории в рамках цифровой модели осуществлялось на основе данных, собранных лабораторией годичных колец Аризонского университета (Tree Ring Laboratory at the University of Arizona). Each agent represents a household of five persons. Each household makes annual decisions on where to farm and where to settle. A household has an age, and a stock of food surplus previous years. Each cell represents a 100 meter by 100 meter space. Each cell is within one of the different zones of land: General Valley Floor, North Valley Floor, Midvalley Floor, Arable Uplands, Uplands Non-Arable, Kinbiko Canyon or Dunes. These zones have agricultural productivity that is determined by the Palmer Drought Severity Index (PDSI). | NetLogo |
Basketball analytics | Drafting agent-based modeling into basketball analytics
| NetLogo |
Butterfly model | Эксперименты с моделью приведены в книге Agent-Based and Individual-Based Modeling: A Practical Introduction | NetLogo |
Dawkins Weasel | Dawkins Weasel is a NetLogo model that illustrates the principle of evolution by natural selection. It is inspired by a thought experiment presented by Richard Dawkins in his book The Blind Watchmaker (1986). He presents the idea as follows: | NetLogo |
Fire (model) |
Запустите модель Fire несколько раз. Если мы запустим его с низкой плотностью деревьев, мы увидим, как и ожидалось, очень небольшое распространение огня. Если мы запустим его с очень высокой плотностью деревьев, мы, как и ожидалось, увидим, как лес уничтожается неумолимым маршем огня. Чего ожидать при средней плотности? Многие предполагают, что если плотность установлена на 50 процентов, то вероятность того, что огонь достигнет правого края леса, будет 50 процентов. Однако если мы попробуем это сделать, то увидим, что при 50-процентной плотности огонь не распространяется сильно. Если мы увеличим его до 57 процентов, огонь горит больше, но обычно все равно не достигает другой стороны леса. Однако если мы увеличим плотность до 61 процента, то есть всего на 2 процента больше, огонь неизбежно достигнет другой стороны. Это неожиданно. Мы ожидаем, что небольшое изменение плотности окажет относительно небольшое влияние на распространение огня. Но, как выясняется, модель Fire имеет «критический параметр» 59% плотности. | NetLogo |
Flocking (model) | Модель самопроизвольного формирования стаи в результате действий множества участников (птиц, рыб, людей). Модель формирования стаи - это классическая агентно-ориентированная модель, основанная на оригинальных моделях Рейнольдса (1987). Модель демонстрирует, что стаи птиц могут возникать даже в отсутствии специальных птиц-вожаков, которые ведут всех за собой. Скорее, каждая птица следует общему же набору правил, и из выполнения всеми простых правил появляются стаи. Каждая птица следует трем правилам: «выравнивание», «разделение» и «сплоченность».
Правило «разделения» имеет приоритет над двумя другими, что означает, что если две птицы приближаются друг к другу, они всегда будут разделяться. В этом случае два других правила отменяются до тех пор, пока не будет достигнуто минимальное разделение. Эти три правила влияют только на направление птицы. Каждая птица всегда движется вперед с одинаковой постоянной скоростью. Правила удивительно надежны и могут быть адаптированы к скоплению насекомых, стаям рыб и паттернам «V» стаи гусей (Stonedahl & Wilensky, 2010a). | NetLogo StarLogo Nova Scratch Snap! |
Leaders & Followers (model) | Модель лидеров (харизматиков) и их последователей - тех, кто за ними следует и устанавливает с ними связи.
| NetLogo StarLogo Nova |
Life (model) | Модель игры в жизнь. This particular cellular automaton is called The Game of Life. A cellular automaton is a computational machine that performs actions based on certain rules. It can be thought of as a board which is divided into cells (such as square cells of a checkerboard). Each cell can be either "alive" or "dead." This is called the "state" of the cell. According to specified rules, each cell will be alive or dead at the next time step.
Эмерджентность: в модели Life (model) эмерджентные явления играют ключевую роль. Они проявляются в виде неожиданных и сложно предсказуемых паттернов поведения, возникающих из простых правил взаимодействия между агентами. Эти паттерны могут включать сложные формы социального поведения, образование колоний или даже возникновение новых видов. Адаптация: агентам в модели Life предоставляется возможность адаптироваться к меняющимся условиям среды. Это достигается путем модификации своих стратегий выживания и размножения на основе предыдущего опыта и наблюдений. Адаптации могут происходить как на уровне индивидуального агента, так и на популяционном уровне, что приводит к изменению генетической структуры популяции. Обучение: агенты в модели способны обучаться на протяжении своего жизненного цикла. Они используют алгоритмы машинного обучения для анализа прошлых событий и выработки наиболее эффективных стратегий поведения. Обучение может осуществляться как индивидуально, так и через социальное взаимодействие, когда агенты передают свой опыт другим членам сообщества. Прогнозирование: одной из ключевых функций модели является способность агентов к прогнозированию будущих состояний среды. На основании собранных данных и исторических тенденций агенты могут строить прогнозы относительно возможных изменений в среде обитания и соответствующим образом корректировать свое поведение. Ощущение: агенты обладают способностью воспринимать окружающую среду через сенсоры, которые предоставляют им информацию о температуре, влажности, наличии пищи и других факторов. Эта информация используется для принятия решений и адаптации к текущим условиям. | NetLogo |
Multi-mediator model | Модель позволяет проводить вычислительные эксперименты по изучению математических идей учениками средней школы. Модель посвящена проблема низкой успеваемости по математике у студентов с низким социально-экономическим статусом (SES). В Австралии 15-летние студенты с низким SES отстают на три года по уровню математической подготовки. Подобная же ситуация наблюдается и в США. Цель исследования - исследовать, может ли компьютерное моделирование помочь улучшить математическую успеваемость студентов с низким SES, чтобы преодолеть трехлетнее отставание. | NetLogo |
Piaget-Vygotsky (model) | Модель «обучения через игру» была создана для следующих целей:
| NetLogo |
Preferential Attachment | Модель предпочтительного присоединения - Preferential Attachment - Процесс предпочтительного присоединения - это любой из классов процессов, в которых некоторое количество, обычно некоторое форма богатства или кредита распределяется между несколькими людьми или объектами в зависимости от того, сколько они уже имеют, так что те, кто уже богат, получают больше, чем те, кто не богат. «Предпочтительная привязанность» - это лишь последнее из многих названий, которые были даны таким процессам. Они также упоминаются как «богатые становятся богаче». Процесс предпочтительного присоединения генерирует распределение «с длинным хвостом » после распределения Парето или степенной закон в его хвосте. Это основная причина исторического интереса к предпочтительной привязанности: распределение видов и многие другие явления наблюдаются эмпирически, следуя степенным законам, и процесс предпочтительной привязанности является ведущим механизмом для объяснения этого поведения. Предпочтительное прикрепление считается возможным основанием для распределения размеров городов, богатства чрезвычайно богатых людей, количества цитирований, полученных научными публикациями, и количества ссылок на страницы во всемирной паутине. | NetLogo |
Prisoner's dilemma | Дилемма заключенного - это классическая задача в теории игр, которую можно использовать для преподавания вычислительной истории, иллюстрируя динамику сотрудничества и конкуренции в исторических контекстах. Дилемма заключенного может быть включена в вычислительную историю несколькими способами: 1) Моделирование исторических взаимодействий: Дилемма заключенного может быть использована в качестве основы для моделирования взаимодействия между историческими акторами, такими как отдельные люди, группы или государства. Моделируя решения и выплаты этих субъектов в различных сценариях, учащиеся могут получить представление о факторах, повлиявших на сотрудничество или конкуренцию в исторических событиях. 2) Изучение возникновения норм и институтов: Дилемма заключенного может быть использована для изучения возникновения социальных норм и институтов в исторических обществах. Например, учащиеся могут создать агентные модели, которые имитируют взаимодействие людей, следующих правилам дилеммы заключенного, а затем проанализировать, как различные стратегии, такие как tit-for-tat (око за око) или "всегда сотрудничать", приводят к развитию норм сотрудничества или к его разрушению. | NetLogo |
School Choice ABM | Модель "School Enrollment" представляет собой пространственно-эксплицитную вычислительную модель, которая иллюстрирует систему школьного образования в Чили, основанную на рыночных принципах. В этой модели студенты могут выбирать между различными типами школ: государственными, частными с ваучерами и частными платными. Модель изображает город, в котором расположены школы и студенты.
Есть версии, когда имеют дополнительные атрибуты, такие как географическое положение, сектор (государственная или частная), стоимость обучения, уровень достижений студентов, максимальная вместимость, год открытия и закрытия, а также вероятность того, что о ней узнают ученики. | NetLogo |
Segregation (model) | Модель сегрегации
Принципы: - Минимальная толерантность к различиям: Люди склонны предпочитать окружение, где большинство соседей принадлежат к той же группе, что и они сами. Однако они могут терпеть некоторую долю соседей другой группы. - Пороговая толерантность: Существует пороговый уровень доли соседей другой группы, выше которого человек начинает чувствовать себя некомфортно и стремится переехать в район с большей однородностью. - Переезд при превышении порога: Если доля соседей другой группы превышает установленный порог, человек решает переехать. Этот переезд приводит к тому, что районы становятся всё более сегрегированными. | NetLogo StarLogo Nova |
Slime (агрегация слизевиков) | Эта модель показывает, как существа могут объединяться в кластеры без контроля со стороны клетки-лидера или пейсмейкера. Это открытие было впервые описано Эвелин Фокс Келлер и Ли Сигел в статье в 1970 году. До того, как Келлер начала свои исследования, общепринятым считалось, что рои слизевиков образуются по команде клеток-лидеров, которые приказывают другим клеткам начать агрегацию.
| NetLogo |
Solid Diffusion (model) | This model demonstrates a solid diffusion couple, such as copper and nickel. In a real laboratory, such experiment would take place at very high temperatures, for the process to take place in a reasonable amount of time (note that the diffusion coefficient varies exponentially with the inverse of the temperature). There are many mechanisms for diffusion in solids. In this model we demonstrate one of them, which is caused by missing atoms in the metal crystal. The locations, of the missing atoms are often called vacancies. Therefore, this type of diffusion mechanism is referred to as "vacancy diffusion". The extent to which the diffusion can happen depends on the temperature and the number of vacancies in the crystal. | NetLogo |
Sugarscape model | Sugarscape model (сахарная модель) - один из методов(моделей) разработки искусственного общества. Модель стала популярна благодаря известной работе «Growing Artificial Societies». Является одной из простых моделей и прекрасным инструментом для обсуждения и экспериментального исследования ряда научных вопросов. Имеется некоторая окружающая среда — сахарный ландшафт, где в двумерном пространстве разбросан сахар — где-то больше, где-то меньше; и туда же помещены агенты-жуки, которые ползают по сахарному ландшафту по простым правилам: агенту надо есть сахар, и он перемещается туда, где сахара больше. Так они двигаются, поедают сахар, который появляется в той или иной точке тоже по каким-то законам. Наблюдая за поведением агентов на экране мы видим то, что Джошуа Эпштейн и Роберт Акстелл определили как прото-историю или Proto-Narrative | NetLogo |
Team Assembly (model) | Эта модель коллаборативных сетей показывает, как поведение отдельных людей при формировании небольших команд для краткосрочных проектов может со временем привести к появлению множества крупномасштабных сетевых структур. | NetLogo |
Traffic jams | Модель формирования и рассасывания дорожной пробки, реализованная в нескольких средах многоагентного моделирования
Принципы: Эмерджентное поведение: Формирование пробки является результатом коллективного поведения агентов-автомобилей, а не предписанным поведением отдельного агента. Непредсказуемость: Модель может быть стохастической, то есть случайные факторы, такие как непредсказуемое поведение водителей, могут влиять на формирование и рассасывание пробки. Адаптация: Агенты-автомобили могут адаптироваться к изменяющимся условиям движения, например, меняя свою скорость или маршрут. | NetLogo StarLogo Nova Snap! |
Urban Suite - Awareness | Модель определяет теоретический уровень «осведомленности» человека в городской среде на основе случайного контакта человека с информационными центрами. В модели информационными центрами являются любые источники обмена позитивной информацией. В этой модели каждый человек обладает некоторой степенью «осведомленности», которая измеряется в «очках осведомленности». Существует дискретный набор «уровней» осознания, которых могут достичь люди. Человек может быть «неосведомленным» (0–5 баллов), «осведомленным» (5–10 баллов), «хорошо информированным» (10–15 баллов) или «активистом» (более 15 баллов). Чтобы обрести осознанность, человек либо бежит в центр, где получает пять очков осознанности; или находится под влиянием хорошо информированного человека. Если одно из этих событий не произойдет в течение заданного временного шага (tick), человек потеряет одно очко осведомлённости (вплоть до нуля). Когда человек становится активистом (15 точек осознания), формируется новый центр. Новые информационные центры окрашены в синий цвет, а первоначальные информационные центры - в зеленый. Если никто не вступает в контакт с центром в течение заданного времени (см. ползунок НЕИСПОЛЬЗОВАНИЕ-ОГРАНИЧЕНИЕ), центр исчезает из мира. Если какой-либо информационный/рекламный метод или место не приносит результатов, в конечном итоге он будет закрыт. | NetLogo |
Urban Suite - Economic Disparity | Когда в мире появляется новое место работы, оно случайным образом выбирает некоторое количество местоположений (управляемое ползунком КОЛИЧЕСТВО ИСПЫТАНИЙ) и выбирает то, которое имеет самую высокую цену (то есть стоимость земли). Поначалу это может показаться иррациональным, но в этой модели предполагается, что рабочие места перемещаются туда, где находится богатство. Если в определенной области денег больше, то есть более состоятельные люди, которые могут потратить эти деньги на товары и услуги. В этой модели есть два принципиально разных типа людей — «бедные» люди (показаны синим цветом) и «богатые» люди (показаны розовым цветом), и у них разные приоритеты. Оба типа людей желают располагаться недалеко от места работы. Однако богатые люди ищут место с хорошим качеством, не обращая внимания на цену, в то время как бедные люди ищут места с низкой ценой, не обращая внимания на качество. | NetLogo |
Модель Лотки — Вольтерры | Моде́ль Ло́тки — Вольте́рры (модель Ло́тки — Вольтерра́) — модель взаимодействия двух видов типа «хищник — жертва», названная в честь своих авторов (Лотка, 1925; Вольтерра 1926), которые предложили модельные уравнения независимо друг от друга. | StarLogo Nova R Netlogo |
Насосы и испарение | Модель физических процессов, в которой происходит испарение воды | StarLogo Nova |
Собирание учеников в классы | 3 Учителя - черный, красный и желтый собирают учеников в свои классы | StarLogo Nova |
Термиты | Модель термитника (муравейника), когда тупые, слабые и слабовидящие агенты перемещаются по полю и собирают на нём палочки. Есть версия "Термиты с журналом", когда все действия термитов над палочками записываются в лог-файл и потом можно построить графы команд, где в команду объединены термиты, носившие одни и те же палочки. | NetLogo StarLogo Nova |
Футбольное поле с множеством мячиков | Модель сбора данных с поля, на котором множество игроков взаимодействуют со множеством мячиков. Модель используется для
| StarLogo Nova |
Разделы учебного курса
Понятие модели и моделирования
Description | Environment | |
---|---|---|
Агент | Агенты - это автономные объекты, которые могут самостоятельно реагировать на внешние события и выбирать соответствующие действия. Это - некто или нечто, выполняющий инструкции. В информатике - сущность, которая расположена в некоторой среде и способна в этой среде к автономным целенаправленным действиям. | NetLogo Scratch |
Агентное моделирование | Агентное моделирование (agent-based model) (ABM)— метод имитационного моделирования, исследующий поведение децентрализованных агентов и то, как такое поведение определяет поведение всей системы в целом. В отличие от системной динамики аналитик определяет поведение агентов на индивидуальном уровне, а глобальное поведение возникает как результат деятельности множества агентов (моделирование «снизу вверх»). ABM представляют собой модели, в которых отдельные лица или агенты описываются как уникальные и автономные объекты, которые обычно взаимодействуют друг с другом и с окружающей их средой на местном уровне. Агентами могут быть организмы, люди, предприятия, учреждения и любые другие объекты, преследующие определенную цель. Когда мы даем агентам правила адаптации к изменениям в их среде и к тому, что делают другие агенты, тогда поведение каждого отдельного агента и, следовательно, поведение всей системы вытекает из этих правил, характеристик агентов и окружающей среды. Эмерджентность - это основная объясняющая концепция агентного моделирования. Эпштейн и Акстелл (1996) удачно описали этот вид объяснения своим знаменитым вопросом:
| NetLogo StarLogo Nova Scratch Snap! BehaviorSpace |
Модель | Моде́ль (фр. modèle от лат. modulus «мера, аналог, образец») — система, исследование которой служит средством для получения информации о другой системе; представление некоторого реального процесса, устройства или концепции. Модель есть абстрактное представление реальности в какой-либо форме (например, в математической, физической, символической, графической или дескриптивной), предназначенное для рассмотрения определённых аспектов этой реальности и позволяющее получить ответы на изучаемые. Система В является моделью системы А для активной системы Q (человека-индивида, коллектива, животного, робота и т. п.), если основанием для ее использования этой активной системой служит ее структурное сходство с моделируемой системой А. | Foldit NetLogo StarLogo Nova |
Тексты
- Thinking Like a Tree
- Искусственная жизнь и русские биологи начала двадцатого века
- Экологический подход к зрительному восприятию
Моделируемые паттерны поведения
Description of problem | Solution | Environment | |
---|---|---|---|
Генерировать новых агентов | Агент порождает поток других агентов - например, в экологических моделях рождение используется для создания потомков, в играх из пистолета вылетают пули, которые он порождает, в историях Scratch капли дождя клонируются и падают из тучи на землю. | Можно использовать породы или клоны. Например, в NetLogo:
| NetLogo StarLogo Nova Scratch Agentsheets |
Накапливать энергию | Агент живёт в среде, перемещается, выполняет задания и накапливает энергию или собирает очки |
| StarLogo Nova Scratch Snap! |
Перевозить другого агента на себе | Транспортировка представляет собой ситуацию, когда один агент перевозит на себе другого агента. Например, черепаха в Frogger несёт лягушку, пересекая реку. В экологических симуляциях процесс транспортировки можно использовать, например, для перевозки пыльцы пчёлами. |
| Scratch Frogger |
Перемещаться случайным образом | Агент или агенты перемещаются по экрану случайным образом - стандартная для многих игр и симуляций ситуация, которую надо уметь воспроизводить - термиты, птицы и рыбы при формировании стай изначально перемещаются случайным образом. | Агент поворачивается в направление, которое выбирается случайным образом и делает ход в этом направлении. | NetLogo StarLogo Nova Scratch AgentCubes |
Поглощать агентов |
| Прятать агентов или просто их убивать или умирать самому | NetLogo Scratch Snap! Agentsheets |
Подчиняться клавишам клавиатуры | Реагировать на клавиши клавиатуры Движение клавиатуры: нажатия кнопок клавиатуры управляют движением агента. И здесь могут быть паттерны типа Прыгать - как писал Пейперт в этой статье писал про Марио и как воспроизвести поведение Марио | Использовать блоки управления в сочетании с блоками движения | Mario Bros Scratch |
Поиск восхождением к вершине | Поиск восхождением к вершине - алгоритм поиска в компьютерных науках, когда агент просматривает значения переменных на ближайших полях и на поле с максимальным значением переменной. Использование алгоритма поиск восхождением к вершине можно наблюдать в таких играх как Sims или Pac-Man, когда призраки преследуют Pacman, следуя наивысшему значению запаха Pac-man, который распространяется по всему полю см. http://ccl.northwestern.edu/netlogo/models/Pac-Man | Использовать встроенные команды NetLogo
| Pac-Man NetLogo |
Превращаться в другого агента | Превращение - один агент превращается в другого агента. Возможный вариант - агент одной породы превращается в агента другой породы. | В примере на Scratch - cпрайт клонируется и содержит в себе разные породы - демонов и драконов. При столкновении с агентом другой породы агент может изменять собственную породу и становиться другим. Например, из породы демонов переходить в породу драконов. В NetLogo можно просто поменять принадлежность к породе и соответственно свойства агента. | Scratch Snap! |
Преследовать другого агента | Один агент преследует другого агента - поворачивается в его сторону или поворачивается в том же направлении, куда движется другой агент | Используются команды повернуться к другому агенту | Scratch AgentCubes |
Распространяться | Диффузия: паттерн распространения, когда вы можете распространять определённое количество агента на других агентов, расположенных по близости за счёт процесса диффузии. Например, в модели муравьёв в NetLogo муравьи выделяют вещества феромоны, которые диффундируют на ближайшие поля игрового поля. | В некоторых средах конструирования возможность диффузии заложена изначально. Например, в NetLogo стандартная команда к точкам - пятнам на экране diffuse | NetLogo |
Сталкиваться |
| В ряде среде есть специальный блок Collision - что делать агенту в случае столкновения с другим агентом. Для Scratch решение собирается из блоков сенсоров - если я касаюсь другого агента (указать какого именно), то ... | Pac-Man StarLogo Nova Snap! Frogger |
Тащить | Тащить - паттерн "тащить" противоположен по значению паттерну толкать - агент может тащить за собой другого агента или агентов. Например, поезд тащит за собой вагоны, лошадь тащит за собой сани, буксир тащит за собой баржи или плот. | Scratch AgentCubes | |
Толкать | Паттерн "толкать" — это паттерн, который мы видим во многих играх. Агент должен толкать ящики или мешки с золотом. Когда игрок толкает коробку или мешок, эти объекты движутся в том направлении (вверх, вниз, вправо или влево), в котором их толкнули. | Объект или Агент, над которым совершается действие, получает сигнал от агента субъекта деятельности, поворачивается в ту же сторону, куда смотрит толкающий агент и двигается в эту сторону. | Scratch AgentCubes |
Дизайн компьютерной модели
Статистическое компьютерное моделирование
Инструменты статистического моделирования
Имитационное компьютерное моделирование в визуальной среде программирования
- Среды многоагентного моделирования