Как сделать имитационную модель на си

Добавил пользователь Morpheus
Обновлено: 04.10.2024

SIMAN является гибким дискретно-событийным языком моделирования и анализа деятельности предприятий. Он распространяется вместе с инструментальным средством имитационного моделирования Arena, которое позволяет формировать модель на языке SIMAN, воспроизводящую процесс функционирования системы во времени, а также осуществлять многократные испытания модели с разными входными данными.

Имитационное моделирование в ряде случаев гораздо менее затратное, чем проведение экспериментов с реальными системами. Тем более что иногда эксперименты на реальных системах в принципе невозможны. Моделирование позволяет изучить длительный интервал функционирования системы в сжатые сроки или, наоборот, изучить более подробно работу системы в развернутый интервал времени [22].

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

Имитационная модель на языке SIMAN включает следующие основные элементы [20, 23]:

  • • процессы (Process) — работы, операции, действия;
  • • ресурсы (Resource), выполняющие процессы, — персонал (продавцы, клерки, рабочие) или оборудование (станки, компьютеры);
  • • сущности (Entity), обрабатываемые процессами, — заказы, документы, заготовки изделий, клиенты и т. д.;

• очереди (Queue) из ожидающих обработки сущностей, образующиеся перед процессами, которые в данный момент заняты.

Процессы отображаются в виде схемных модулей. Для процессов разного типа используются разные графические обозначения. На рис. 3.21 приведены обозначения некоторых процессов.

Графические модули языка SIMAN

Рис. 3.21. Графические модули языка SIMAN: а — модуль Create: б — модуль Dispose; в — модуль Process; г — модуль Decide;

д — модуль Assign

Модуль Create (рис. 3.21, а), или Источник, создает сущности, обрабатываемые в системе. Он имитирует, например, прибытие клиентов в байк или в магазин, поступление документов (заказов, чеков), начало изготовления продукции на производственной линии. Скорость поступления сущностей от Источника обычно задается статистической функцией.

Модуль Process (рис. 3.21, в) является основным модулем процесса обработки в имитационной модели. Он имитирует, например, обслуживание клиентов, обработку документов или деталей, выполнение заказов. Время обработки сущности в процессе (производительность процесса) обычно задается статистической функцией.

Модуль Decide (рис. 3.21, г) служит для принятия решений в имитационной модели. Он позволяет проверять условия и в зависимости от результата проверки направлять сущности по той или иной ветке (тому или иному процессу). Обычно условия основаны на значениях атрибутов (характеристик) сущностей. Например, если клиенту банка требуется операция снятия со счета, то он направляется в один отдел, если он хочет оформить кредит, то — в другой отдел.

Модуль Assign (рис. 3.21, д) предназначен для задания значения переменной в системе, в частности значения атрибута сущности. Например, можно задать номер операции, требуемой клиентом, или тип документа. Обычно задается случайное значение по заданной статистической функции.

Модуль Dispose (рис. 3.21, 6), или Сток, удаляет сущности из системы. Он имитирует, например, уход клиентов из банка или магазина, окончание обработки документа или изготовления изделия.

Схемные модули соединяются между собой на диаграмме в соответствии с логикой выполнения имитируемого процесса.

Существуют также модули данных, к которым относятся модули сущностей, очередей, ресурсов, переменных. Они не отображаются физически в блок-схеме модели, но с их помощью можно задать различные характеристики элементов модели [23].

На рис. 3.22 приведена в качестве примера имитационная модель системы обслуживания клиентов в банке.

Модуль Crate 1 имитирует приход клиентов в банк. Распределение времени между приходами клиентов описывается некоторым законом. Примеры распределения: равномерное — клиенты приходят равномерно, раз в 5-9 минут; треугольное — клиенты приходят через 7±2 минуты, но наиболее часто — через 7 минут.

Модуль Assign 1 присваивает клиентам атрибут Орсг, характеризующий кассовую операцию (номер операции). Может быть назначен один из трех видов операций, для каждого из которых задана вероятность. Модуль Decide 1 распределяет клиентов по кассам в зависимости от операции, которую им необходимо выполнить. Модули Process 1, Process 2, Process 5 имитируют работу соответственно первого, второго, пятого кассиров. Время выполнения операций описывается некоторым законом распределения.

Имитационная модель системы обслуживания в банке

Рис. 3.22. Имитационная модель системы обслуживания в банке

Модуль Decide 2 распределяет клиентов между вторым и третьим кассирами, выполняющими операцию 2. Он направляет клиента тому кассиру, очередь у которого меньше. Модуль Decide 3 распределяет клиентов между четвертым и пятым кассирами аналогично модулю Decide 2. Модуль Dispose 1 имитирует уход клиента из банка.

  • • по сущностям, находящимся в системе, — общее время нахождения в системе, суммарное время ожидания, количество сущностей, вошедших в систему или вышедших из системы;
  • • по очередям, образующимся в модулях процессов, — время ожидания обработки в очереди, количество сущностей, ожидающих в очереди;
  • • по процессам — статистика для каждого повторения;
  • • по ресурсам — статистика по затраченным ресурсам.

Например, для модели, представленной на рис. 3.22, можно получить отчет по времени ожидания клиентов в очередях перед кассирами.

Языки имитационного моделирования предназначены для разработки соответствующего программного обеспечения, которое может быть использовано для создания множества приложений имитационного моделирования. В некотором смысле эти языки сопоставимы с FORTRAN, C++, Visual Basic или Java, но они также включают определенные функции, облегчающие процесс имитационного моделирования. Некоторые примеры современных языков моделирования: GPSS / Н, GPSS / PC, SLX и SIMSCRIPT III. Языки моделирования существуют для дискретной, непрерывной и агентной парадигм имитационного моделирования.

Функции языка ИМ

Специализированные функции обычно отличают языки моделирования от общих языков программирования. Эти функции призваны освободить аналитика от повторного создания программных инструментов и процедур, используемых практически во всех приложениях моделирования. Мало того, что разработка этих функций была бы трудоемкой и трудной, но без них согласованность модели могла бы варьироваться, и потребовались бы дополнительные отладка, валидация и верификация. Большинство языков моделирования предоставляют следующие функции:

  • 1) симулятор часов или механизм для продвижения моделируемого времени;
  • 2) методы планирования событий;
  • 3) инструменты сбора и анализа статистики использования различных ресурсов и объектов;
  • 4) методы представления ограниченных ресурсов;
  • 5) инструменты для представления результатов;
  • 6) средства отладки и обнаружения ошибок;
  • 7) генераторы случайных чисел и связанные с ними наборы инструментов;
  • 8) общие рамки для создания модели.

Сравнение языков ИМ с традиционными языками программирования

Хотя уже многие имитационные модели разработаны с использованием специальных языков моделирования, некоторые аналитики по-прежнему предпочитают полагаться на традиционные языки программирования для разработки подобных моделей. В других случаях разрабатывают специальные расширения для добавления возможностей традиционному языку программирования. Например, Repast Simphony является бесплатным и открытым источником, агентно-ориентированным инструментарием моделирования, который добавляет функции к языку Java, чтобы упростить создание и использование имитационной модели.

Мотивы использования языка программирования общего назначения следующие:

Хотя традиционные языки программирования обладают некоторыми преимуществами, даже в типичном приложении для имитационного моделирования программист или аналитик обнаружит, что начальные инвестиции в язык имитационного моделирования более чем окупаются. Язык имитационного моделирования обеспечивает экономию в кодировании, отладке, анализе результатов и внесении изменений в модель и компьютерную программу.

Языки имитационного моделирования

В настоящее время существует уже достаточно много языков имитационного моделирования, которые используются компаниями-производителями, исследователями, сервисными компаниями, а также консультантами.

GPSS и SIM SCRIPT

GPSS (система общего назначения для моделирования) была первоначально разработана Джеффри Гордоном из IBM и выпущена в октябре 1961 года. После выпуска GPSS стал довольно распространенным языком имитационного моделирования и с тех пор регулярно используется. В целом, GPSS пользуется широкой популярностью благодаря своему разумному построению и общей мощности.

Основные функции языка GPSS могут быть легко изучены, а дополнительные мощные функции делают его идеальным для моделирования сложных систем. В общем случае GPSS используется для имитации систем очередей, которые состоят из взаимодействующих объектов и клиентов в условиях ограниченных ресурсов. В настоящее время несколько поставщиков предлагают версии GPSS, включая: Wolverine Software, которая производит GPSS/H, мощную, современную версию GPSS, разработанную для создания больших и сложных моделей. Minuteman Software создает дружественную среду моделирования GPSS под названием GPSS World, которая содержит специальные инструменты для разработки имитационных моделей.

SIMSCRIPT III: Этот язык является прямым потомком исходного языка SIMSCRIPT, созданного в Rand Corporation в 1960-х годах. SIMSCRIPT III имеет конструкции, которые позволяют разработчику подходить к проблеме либо на основе процессного подхода, либо на основе объектно-ориентированного мировоззрения. SIMSCRIPT III предлагает уникальные функции, которые добавляют ему привлекательности. Среди них:

  • • объектно-ориентированное программирование;
  • • модульность;
  • • студия развития SIMSCRIPT III (SimStudio);
  • • объектно-ориентированная графика Simscript III;
  • • связь с базой данных SDBC.

В общем, SIMSCRIPT III - это язык свободной формы с синтаксисом, похожим на английский язык. Этот синтаксис позволяет коду в системе становиться самодокументированным. Компоненты модели могут быть запрограммированы достаточно четко, чтобы обеспечить представление структуры и логики моделируемой системы. SIMSCRIPT III поддерживается и распространяется компанией CACI Products Company.

В последнее время появились симуляторы и интегрированные среды имитационного моделирования, предоставляющие аналитику дополнительные возможности, которые позволяют автоматизировать многие процессы и устранить тяжелую работу из процесса моделирования. Модели, разработка которых раньше занимала дни или недели, теперь можно разработать за несколько минут с использованием заготовленных шаблонов реальных объектов, требующих не более чем настройку определенных параметров. Новое программное обеспечение, специализирующееся на области применения, позволяет аналитику моделировать, выполнять, анализировать и анимировать системы в своей области (производство, здравоохранение, логистика, связь и т.д.).

Симулятором называют программный пакет, который предназначен для разработки имитационных моделей для специфической области. С симулятором обычно работает человек, который не является аналитиком или программистом, но все же хочет проанализировать систему.

Примерами программных пакетов симуляторов являются MedModel (симулятор медицинской помощи), PRISM (симулятор полиции) и PX-Sim (фармацевтический симулятор).

Симуляторы обладают рядом преимуществ перед языками имитационного моделирования. К ним относятся:

- простота использования. Симуляторы разработаны специально для пользователя-непрограммиста. Они, как правило, имеют удобные функции, такие как выпадающие меню команд и специальные инструменты для упрощения построения модели.

Многие симуляторы продаются с бОлыиим упором на их удобство для пользователя, чем на их возможности моделирования;

При использовании в надлежащем контексте симуляторы могут быть полезным инструментом. Но когда они применяются неправильно, они могут дать неверные результаты. Некоторые из подводных камней использования симуляторов приведены в следующем списке:

  • - избыточное упрощение. Симуляторы, как правило, упрощают представление системы. Общая модель формирует основу для программного обеспечения и в то же время упрощает сделанные допущения;
  • - представление негибкой системы. Симуляторы не могут быть достаточно гибкими. Базовая модель уже построена и вместе с ней остаются неизменными некоторые базовые предположения;
  • - визуальный компонент может создать ложное чувство доверия. Большинство симуляторов, особенно на персональных компьютерах, в значительной степени зависят от использования графики для создания моделей и вывода результатов. Этот визуальный компонент может создать у пользователя излишнее доверие к модели. Поэтому каждая модель должна быть проанализирована с использованием надлежащих методов проверки.

Широкая доступность микрокомпьютеров и недорогая высококачественная графика в сочетании с ожиданиями пользователей увидеть анимированные системы неуклонно увеличивают спрос на визуальный компонент в моделировании.

Анимация все шире используется по нескольким причинам:

Как и все инструменты, анимацию можно использовать неправильно. Аналитик должен помнить, что анимацию нужно использовать для дополнения имитационного исследования, а не для его замены.

Анимационное программное обеспечение может быть структурировано по-разному в зависимости от сферы приложения. Некоторые анимационные пакеты предлагают графику на основе пикселей, а другие, такие как Proof Animation из Wolverine Software, предлагают трехмерную векторную анимацию, подобную САПР. Другим атрибутом анимационного программного обеспечения является то, что оно позволяет работать с моделью в режиме реального времени.

Постпроцессорный режим означает, что анимация отображается после завершения моделирования. В результате моделирования создается файл данных, который используется в качестве входных данных для анимационной программы. Такой режим имеет множество преимуществ, таких как возможность быстрой перемотки вперед, назад, ускорения или замедления просмотра. Анимацию можно легко переносить, требуются только соответствующее программное обеспечение и файл данных. Поскольку анимация запускается из файла данных, несколько копий могут выполняться за один раз, не требуя дополнительных копий самой программы моделирования.

Многие анимации создаются с использованием графических инструментов, предоставляемых поставщиками программного обеспечения для моделирования. Среди них инструменты, имеющиеся в Arena 3DPlayer и Proof Animation от компании Wolverine Software.


Данная публикация является адаптированным переводом статьи "Creation of Simulation Model of Expansion of Production in Manufacturing Companies". Автор перевода - Анастасия Першина, специалист IDEAL PLM по цифровому производству.

Содержание

  1. Аннотация. Цель данной статьи
  2. Введение. Краткая теория, плюсы и минусы симуляции производственных процессов
  3. Анализ существующего производства и описание продукции в выбранной компании

Создание модели нового производственного цеха.

Вывод. Польза имитационного моделирования

Аннотация

Целью данной статьи является описание пользы от использования инструментов симуляции производственных процессов. Симуляция наглядно демонстрирует, как функционирует новое масштабированное производство на примере, разобранном в данной статье. При использовании имитационной модели есть возможность оптимизировать производственные процессы в программной среде, а затем реализовать эффективную, отработанную модель на реальном производстве. Для создания имитационных моделей в статье использован программный продукт Tecnomatix Plant Simulation.

Введение. Краткая теория, плюсы и минусы симуляции производственных процессов

Краткая теория

Во введении описываются понятия: моделирование и симуляция, рассматриваемые далее в статье на примере реального производства. Немного теории, затем перейдем к практике.

Модель понимается как упрощенная картина реальности. Этот термин используется для обозначения имитации материального или нематериального объекта, независимо от того, с какой целью он формируется. Моделирование - это теоретический познавательный процесс, основанный на абстрактном мышлении. Идеальном мышлении. Характеризуется он как исследование одних объектов через призму других объектов. Задача моделирования - имитирование структуры и поведения реальных систем.

Симуляция систем является одной из форм процесса изучения. Цель симуляции состоит в том, чтобы делать аналитические выводы и принимать решения, опираясь на эксперименты и моделирование систем. При симуляции учитываются объекты систем, их движение и взаимодействие друг с другом. Модель симуляции имитирует реальную задачу моделируемой системы. Базовая классификация симуляций показана на Рисунке 1.

Рисунок 1. Классификация симуляций

Плюсы и минусы применения имитационной модели производственных процессов

  • Замена реальных экспериментов. Экономия денег, времени и ресурсов, затрачиваемых на реальные эксперименты
  • Помощь в принятии грамотных стратегических решений
  • Возможность проводить виртуальные эксперименты со сценариями "что-если"
  • Модель позволяет проанализировать характеристики и оптимизировать производительность
  • Модель позволяет минимизировать риски при внедрении новой производственной концепции, при введении в эксплуатацию нового оборудования, а также при смене производственной номенклатуры
  • Tecnomatix, как инструмент имитационного моделирования, позволяет реализовать концепцию бережливого производства, что позволяет повысить конкурентоспособность организации в долгосрочной перспективе

Тактическое управление

  • Планировать прием заказов на производство, осуществлять прогноз выполнения заказов
  • Анализировать выполнение производственного плана
  • Создавать производственные графики
  • Оптимизировать загрузку ресурсов, порядок запуска, размер партий

Проверка моделей

  • Оперативно управлять графиками производства
  • Управлять параметрами существующей детализированной модели производства
  • Учитывать состояние оборудования
  • Прогнозировать цикл производства и сроки выполнения заказов
  • Симуляция требует приобретения и навыков применения специализированных инструментов, например, Tecnomatix Plant Simulation
  • Создание имитационных моделей часто занимает немало времени, но это время не сравнится с временными затратами на реальные эксперименты

Анализ существующего производства и описание продукции в выбранной компании

Выбранная компания занимается обработкой кожи, получаемой от поставщиков. Эта кожа проверяется, очищается, красится на рабочих местах, и основной производственный процесс фокусируется в зоне раскроя, где завершаются готовые изделия, например, автокресла и аксессуары для интерьера автомобиля. (Рисунок 2)

Рисунок 2. Финальный продукт компании

Конечным продуктом данной компании является обрезка кожи до желаемых форм и размеров. Эта кожа отсортировывается и упаковывается для конечного потребителя.


Из этих готовых выкроек шьют чехлы на автомобильные сиденья или чехлы на руль, а также другие части салона. Упрощенный производственный процесс показан на Рисунке 3.

Рисунок 3. Упрощенная схема производственного процесса

Эта статья о компьютерной модели в научном контексте. Для моделирования компьютера на компьютере см. Эмулятор .

Компьютерное моделирование - это процесс математического моделирования , выполняемый на компьютере , который предназначен для прогнозирования поведения или результатов реальной или физической системы. Поскольку они позволяют проверять надежность выбранных математических моделей, компьютерное моделирование стало полезным инструментом для математического моделирования многих природных систем в физике ( вычислительной физике ), астрофизике , климатологии , химии , биологии и производстве , а также человеческих систем в экономика , психология , обществознание, здравоохранение и инженерия . Моделирование системы представлено как запуск модели системы. Его можно использовать для изучения и получения нового представления о новых технологиях, а также для оценки производительности систем, слишком сложных для аналитических решений . [1]

Компьютерное моделирование реализуется путем запуска компьютерных программ, которые могут быть либо небольшими, работающими почти мгновенно на небольших устройствах, либо крупномасштабными программами, которые работают часами или днями на сетевых группах компьютеров. Масштаб событий, моделируемых компьютерным моделированием, намного превзошел все возможное (или, возможно, даже вообразимое) с использованием традиционного математического моделирования, основанного на бумаге и карандаше. В 1997 году симуляция битвы в пустыне, когда одна сила вторглась в другую, включала моделирование 66 239 танков, грузовиков и других транспортных средств на симулированной местности вокруг Кувейта с использованием нескольких суперкомпьютеров в рамках программы модернизации высокопроизводительных компьютеров Министерства обороны . [2] Другие примеры включают модель деформации материала в 1 миллиард атомов; [3] модель с 2,64 миллионами атомов сложной белковой органеллы всех живых организмов, рибосомы , в 2005 г .; [4] полное моделирование жизненного цикла Mycoplasma genitalium в 2012 г .; и проект Blue Brain в EPFL (Швейцария), начатый в мае 2005 г. с целью создания первого компьютерного моделирования всего человеческого мозга, вплоть до молекулярного уровня. [5]

Из-за вычислительной стоимости моделирования компьютерные эксперименты используются для выполнения вывода, такого как количественная оценка неопределенности . [6]

СОДЕРЖАНИЕ

Компьютерное моделирование развивалось рука об руку с быстрым ростом компьютеров после его первого широкомасштабного развертывания во время Манхэттенского проекта во время Второй мировой войны для моделирования процесса ядерного взрыва . Это было моделирование 12 твердых сфер с использованием алгоритма Монте-Карло . Компьютерное моделирование часто используется в качестве дополнения или замены систем моделирования, для которых простые аналитические решения в замкнутой форме невозможны. Есть много типов компьютерного моделирования; их общая черта - попытка создать выборку репрезентативных сценариев для модели, в которой полное перечисление всех возможных состояний модели было бы недопустимо или невозможно. [7]

Требования к внешним данным симуляторов и моделей сильно различаются. Для некоторых ввод может быть всего лишь несколькими числами (например, имитация формы волны переменного тока в проводе), в то время как для других могут потребоваться терабайты информации (например, модели погоды и климата).

Источники входного сигнала также сильно различаются:

  • Датчики и другие физические устройства, подключенные к модели;
  • Поверхности управления, используемые для некоторого управления ходом моделирования;
  • Текущие или исторические данные, введенные вручную;
  • Ценности, извлеченные как побочный продукт из других процессов;
  • Значения, выводимые для этой цели другими симуляторами, моделями или процессами.

Наконец, время, в которое доступны данные, варьируется:

Из-за этого разнообразия и из-за того, что различные системы моделирования имеют много общих элементов, существует большое количество специализированных языков моделирования . Самым известным из них может быть Simula (иногда называемая Simula-67 после 1967 года, когда она была предложена). Сейчас есть много других.

Компьютерные модели можно классифицировать по нескольким независимым парам атрибутов, включая:

  • Стохастический или детерминированный (и как частный случай детерминированного, хаотического) - см. Внешние ссылки ниже для примеров стохастического и детерминированного моделирования.
  • Устойчивый или динамический
  • Непрерывный или дискретный (и как важный частный случай дискретных, дискретных событий или моделей DE)
  • Моделирование динамических систем , например электрических систем, гидравлических систем или многотельных механических систем (описываемых в основном DAE: s) или динамическое моделирование полевых задач, например CFD моделирования FEM (описываемых PDE: s).
  • Местный или распределенный .

Другой способ категоризации моделей - посмотреть на лежащие в основе структуры данных. Для моделирования с временным шагом существует два основных класса:

  • Моделирования, которые хранят свои данные в обычных сетках и требуют доступа только к следующему соседу, называются кодами трафарета . К этой категории относятся многие приложения CFD .
  • Если базовый граф не является регулярной сеткой, модель может принадлежать к классу методов без сетки .

Уравнения определяют отношения между элементами моделируемой системы и пытаются найти состояние, в котором система находится в равновесии. Такие модели часто используются при моделировании физических систем в качестве более простого случая моделирования перед попыткой динамического моделирования.

Точно так же компьютерное моделирование компьютерной томографии CGI может моделировать то, как опухоль может уменьшиться или измениться в течение длительного периода лечения, представляя течение времени в виде вращающегося изображения видимой головы человека по мере изменения опухоли.

Другие приложения компьютерного моделирования CGI разрабатываются для графического отображения больших объемов данных в движении, когда изменения происходят во время прогона моделирования.

Общие примеры типов компьютерного моделирования в науке, которые выводятся из основного математического описания:

  • численное моделирование дифференциальных уравнений, которые не могут быть решены аналитически, теории, которые включают непрерывные системы, такие как явления в физической космологии , гидродинамике (например, климатические модели , модели шума дороги, модели рассеивания воздуха на проезжей части ), механика сплошной среды и химическая кинетика попадают в это категория.
  • стохастическое моделирование, как правило , используется для дискретных систем , где события происходят вероятностные и которые не может быть описано непосредственно дифференциальными уравнениями (это дискретное моделирование в указанном выше смысле). Явления в этой категории включают генетический дрейф , биохимические [9] или генные регуляторные сети с небольшим количеством молекул. (см. также: метод Монте-Карло ).
  • многочастичное моделирование реакции наноматериалов в различных масштабах на приложенную силу с целью моделирования их термоупругих и термодинамических свойств. Для такого моделирования используются следующие методы: молекулярная динамика , молекулярная механика , метод Монте-Карло и многомасштабная функция Грина .

Ниже приводятся конкретные примеры компьютерного моделирования:

Примечательным, а иногда противоречивой, компьютерное моделирование , используемые в науке , включают в себя: Донелла Медоуза " World3 используется в Пределов роста , Джеймс Лавлок маргаритковый мир и Томаса Рэя Тьерра .

В социальных науках компьютерное моделирование является неотъемлемым компонентом пяти углов анализа, поддерживаемых методологией перколяции данных [12], которая также включает качественные и количественные методы, обзоры литературы (включая научную) и интервью с экспертами, а также образует расширение триангуляции данных. Конечно, как и любой другой научный метод, репликация - важная часть вычислительного моделирования [13]

Компьютерное моделирование используется в самых разных практических контекстах, таких как:

  • анализ рассеивания загрязнителей воздуха с использованием моделирования атмосферного рассеивания
  • проектирование сложных систем, таких как самолеты, а также логистических систем.
  • конструкция шумозащитных ограждений для снижения шума проезжей части
  • моделирование производительности приложений [14]
  • авиасимуляторы для обучения пилотов
  • прогноз погоды
  • прогнозирование риска
  • моделирование электрических цепей
  • Моделирование энергосистемы
  • имитация других компьютеров есть эмуляция .
  • прогнозирование цен на финансовых рынках (на примере Adaptive Modeler )
  • поведение конструкций (например, зданий и промышленных частей) в стрессовых и других условиях
  • проектирование промышленных процессов, таких как химические перерабатывающие заводы
  • стратегическое управление и организационные исследования
  • моделирование резервуара для нефтяной инженерии для моделирования подземного резервуара
  • средства моделирования технологического процесса.
  • симуляторы роботов для проектирования роботов и алгоритмов управления роботами
  • городские имитационные модели , моделирующие динамические модели городского развития и реакцию на городскую политику землепользования и транспорта.
  • транспортная инженерия для планирования или перепроектирования частей уличной сети от отдельных перекрестков над городами до национальной сети автомагистралей до планирования, проектирования и эксплуатации транспортных систем. См. Более подробную статью о моделировании на транспорте .
  • моделирование автомобильных аварий для проверки механизмов безопасности в новых моделях автомобилей.
  • системы растение-почва в сельском хозяйстве с помощью специализированных программных сред (например, BioMA , OMS3, APSIM)

Надежность и доверие людей к компьютерному моделированию зависит от достоверности имитационной модели , поэтому проверка и валидация имеют решающее значение при разработке компьютерного моделирования. Другим важным аспектом компьютерного моделирования является воспроизводимость результатов, а это означает, что имитационная модель не должна давать разные ответы для каждого выполнения. Хотя это может показаться очевидным, это особое внимание в стохастическом моделировании , где случайные числа фактически должны быть полуслучайными числами. Исключением из воспроизводимости являются моделирование человеком в цикле, такое как имитация полета и компьютерные игры.. Здесь человек является частью моделирования и, таким образом, влияет на результат таким образом, что его трудно, если не невозможно, воспроизвести в точности.

Производители транспортных средств используют компьютерное моделирование для проверки функций безопасности в новых конструкциях. Создавая копию автомобиля в среде моделирования физики, они могут сэкономить сотни тысяч долларов, которые в противном случае потребовались бы для создания и тестирования уникального прототипа. Инженеры могут проходить симуляцию за миллисекунды, чтобы определить точные нагрузки, оказываемые на каждую секцию прототипа. [15]

Компьютерная графика может использоваться для отображения результатов компьютерного моделирования. Анимации можно использовать для моделирования в реальном времени, например, в учебных симуляторах . В некоторых случаях анимация также может быть полезна в режимах быстрее, чем в реальном времени, или даже медленнее, чем в режиме реального времени. Например, анимация быстрее, чем в реальном времени, может быть полезна при визуализации роста очередей при моделировании эвакуации людей из здания. Кроме того, результаты моделирования часто объединяются в статические изображения с использованием различных способов научной визуализации .

Хотя иногда это игнорируется при компьютерном моделировании, очень важно выполнить анализ чувствительности, чтобы гарантировать правильное понимание точности результатов. Например, вероятностный анализ риска факторов, определяющих успех программы разведки нефтяных месторождений, включает объединение выборок из множества статистических распределений с использованием метода Монте-Карло . Если, например, один из ключевых параметров (например, чистая доля нефтеносных пластов) известен только одной значащей цифрой, то результат моделирования может быть не более точным, чем одна значащая цифра, хотя он может ( вводит в заблуждение) будет иметь четыре значащих цифры.

Для создания точных имитационных моделей необходимо использовать следующие три шага: калибровка, проверка и проверка. Компьютерное моделирование хорошо отображает и сравнивает теоретические сценарии, но для того, чтобы точно моделировать реальные тематические исследования, они должны соответствовать тому, что на самом деле происходит сегодня. Базовая модель должна быть создана и откалибрована так, чтобы она соответствовала изучаемой области. Затем откалиброванная модель должна быть проверена, чтобы убедиться, что модель работает должным образом на основе входных данных. После проверки модели последним шагом является проверка модели путем сравнения выходных данных с историческими данными из области исследования. Это можно сделать с помощью статистических методов и обеспечения адекватного значения R-квадрата. Если эти методы не используются,созданная имитационная модель даст неточные результаты и не будет полезным инструментом прогнозирования.

Калибровка модели достигается путем настройки любых доступных параметров, чтобы настроить работу модели и имитировать процесс. Например, при моделировании дорожного движения типичные параметры включают дальность обзора, чувствительность следования за автомобилем, интервал разгрузки и потерянное время при запуске. Эти параметры влияют на поведение водителя, например, когда и сколько времени требуется водителю для смены полосы движения, какое расстояние водитель оставляет между своей машиной и автомобилем перед ним и как быстро водитель начинает ускоряться на перекрестке. Регулировка этих параметров оказывает прямое влияние на объем трафика, который может пройти через смоделированную сеть дорог, делая водителей более или менее агрессивными.Это примеры параметров калибровки, которые можно точно настроить в соответствии с характеристиками, наблюдаемыми в полевых условиях в месте исследования. Большинство моделей трафика имеют типичные значения по умолчанию, но их может потребовать корректировка, чтобы лучше соответствовать поведению водителя в конкретном изучаемом месте.

Проверка модели достигается путем получения выходных данных из модели и сравнения их с ожидаемыми входными данными. Например, при моделировании трафика можно проверить объем трафика, чтобы убедиться, что фактическая объемная пропускная способность в модели достаточно близка к объемам трафика, вводимым в модель. Десять процентов - это типичный порог, используемый при моделировании трафика, чтобы определить, достаточно ли близки выходные объемы к входным объемам. Имитационные модели обрабатывают входные данные по-разному, поэтому трафик, входящий в сеть, например, может или не может достичь желаемого пункта назначения. Кроме того, трафик, который хочет войти в сеть, может быть не в состоянии, если существует перегрузка. Вот почему проверка модели - очень важная часть процесса моделирования.

Последним шагом является проверка модели путем сравнения результатов с ожидаемыми на основе исторических данных из области исследования. В идеале модель должна давать результаты, аналогичные тому, что происходило исторически. Обычно это подтверждается не чем иным, как цитированием статистики R-квадрата из подгонки. Эта статистика измеряет долю изменчивости, учитываемую моделью. Высокое значение R-квадрата не обязательно означает, что модель хорошо соответствует данным. Другой инструмент, используемый для проверки моделей, - это графический анализ остатков. Если выходные значения модели сильно отличаются от исторических значений, это, вероятно, означает, что в модели есть ошибка. Прежде чем использовать модель в качестве основы для создания дополнительных моделей, важно проверить ее для различных сценариев, чтобы убедиться, что каждый из них является точным.Если выходные данные не соответствуют разумным историческим значениям во время процесса валидации, модель должна быть пересмотрена и обновлена, чтобы результаты больше соответствовали ожиданиям. Это итеративный процесс, который помогает создавать более реалистичные модели.

Проверка моделей имитации дорожного движения требует сравнения трафика, оцененного с помощью модели, с наблюдаемым движением на проезжей части и транспортными системами. Первоначальные сравнения предназначены для обмена поездками между квадрантами, секторами или другими большими интересующими областями. Следующим шагом является сравнение трафика, оцененного с помощью моделей, с подсчетом трафика, в том числе транзитных пассажиров, пересекающих надуманные препятствия в исследуемой области. Обычно они называются линиями экрана, линиями порезов и линиями кордона и могут быть воображаемыми или реальными физическими барьерами. Линии кордона окружают определенные районы, такие как центральный деловой район города или другие крупные центры деятельности. Оценки транзитных пассажиров обычно проверяются путем сравнения их с фактическими данными о количестве пассажиров, пересекающих кордонные линии вокруг центрального делового района.

Для создания хороших моделей, которые можно использовать для получения реалистичных результатов, необходимо предпринять следующие шаги, чтобы гарантировать правильное функционирование имитационных моделей. Имитационные модели можно использовать в качестве инструмента для проверки инженерных теорий, но они действительны только при правильной калибровке. После получения удовлетворительных оценок параметров для всех моделей необходимо проверить модели, чтобы убедиться, что они адекватно выполняют намеченные функции. Процесс проверки устанавливает надежность модели, демонстрируя ее способность воспроизводить реальность. Важность проверки модели подчеркивает необходимость тщательного планирования, тщательности и точности программы сбора входных данных, которая предназначена для этой цели. Следует приложить усилия, чтобы собранные данные соответствовали ожидаемым значениям.Например, при анализе трафика специалист по трафику обычно посещает объект, чтобы проверить подсчет трафика и ознакомиться со схемами движения в этом районе. Полученные модели и прогнозы будут не лучше данных, используемых для оценки и проверки модели.

  • Вычислительная модель
  • Эмулятор
  • Энергетическое моделирование
  • Проект Illustris
  • Список программ компьютерного моделирования
  • Генератор сцен
  • Код трафарета
  • ВселеннаяМашина
  • Виртуальное прототипирование
  • Веб-моделирование
  • Цифровой двойник

Читайте также: