Читать книгу Имитационное моделирование - Елена Березовская - Страница 2
Тема 1. Введение в имитационное моделирование
ОглавлениеЛюди пытались предсказывать будущее с древних времен. Короли прибегали к услугам волшебников и предсказателей. Различные религии использовали пророков. Провидцы, такие как французский аптекарь Мишель де Ностредаме (более известный как Нострадамус), прославились своими предсказаниями будущего. Другие пытались делать прогнозы, основываясь на датах рождения людей и расположении звезд в этот момент. Хрустальные шары, кости и карты таро использовались как инструменты для исследования будущего.
Безусловно, методы, практикуемые современными аналитиками, несравнимы с методами прогнозирования, используемыми в давние времена. Однако есть и общие моменты. Например, каждый предсказатель стремился устранить риск, связанный с будущим событием и уменьшить связанную с этим неопределенность. Пророк пытался сделать это с помощью магии, доступной в то время. Сегодня аналитик использует современную «магию», основанную на математических принципах, информатике и статистике.
Имитационное моделирование можно в широком смысле определить следующим образом: «Использование компьютера для имитации поведения объектов в реальном мире, согласно предположениям, принятым в форме математических, логических или статистических отношений, которые разрабатываются и формируются в виде модели».
Использование имитационного моделирования для анализа социально-экономических систем имеет много преимуществ по сравнению с другими методами принятия решений.
Среди этих преимуществ:
1. С имитационной моделью можно экспериментировать, не опасаясь сбоев в деятельности реально существующих систем. В системах, которые уже существуют, тестирование новых идей может быть трудным, дорогостоящим или вовсе невозможным. Имитационное моделирование позволяет разрабатывать модель и сравнивать ее с реальной системой, чтобы обеспечить точное отражение всех процессов. В процессе моделирования могут быть проверены любые модификации системы и любые режимы работы, а затем может быть принято решение о внедрении изменений в рамках реальной системы.
2. Концепция или идея изменений могут быть протестированы до этапа реального внедрения. Это тестирование может выявить непредвиденные недостатки проекта изменений, а имитационная модель может послужить инструментом для его улучшения. Без такого тестирования изменения в реальной системе могут оказаться очень дорогостоящими или даже невозможными для реализации.
3. Обнаружение непредвиденных проблем или ошибок. Детальное моделирование реальной системы может помочь выявить непредвиденные проблемы или ошибки, которые могут быть заложены в структуре предлагаемой системы. Обнаружив эти проблемы до внедрения проекта изменения реальной системы, можно избежать дополнительных затрат времени и средств на отладку и доработку проекта системы. Кроме того, в процессе экспериментов с имитационной моделью могут быть обнаружены возможности улучшения функционирования реальной системы.
4. Рост знаний о системе – одно из основных преимуществ процесса имитационного моделирования. В начале реализации нового проекта, особенно при моделировании сложных систем, знания часто неравномерно распределены среди множества разных людей. Каждый человек является экспертом в своей области. Чтобы разработать адекватную и полезную модель, всю эту информацию необходимо собрать вместе, а затем структурировать. Этот процесс объединения всех частей знания о системе представляет большую ценность. В ситуации, когда моделирование проводится на регулярной основе, необходимо установить каналы для процесса сбора информации. Это значительно ускорит процесс моделирования.
5. Скорость анализа. После того, как модель была разработана, можно запускать моделируемую систему со скоростями, намного превышающими те, которых можно было бы достичь в реальном мире. Процесс моделирования может занять от нескольких секунд до нескольких часов для получения итоговых результатов. Но эти результаты могут представлять минуты, часы, дни или даже годы системного времени.
6. Определение параметров системы. Чтобы создать действующую модель, важно знать все аспекты моделируемой системы. Если существуют неправильные или неполные представления о системе, модель будет неточной, и ее нельзя будет использовать в качестве инструмента анализа и прогнозирования. Поэтому разработка имитационной модели заканчивается тем, что аналитик полностью определяет все параметры, относящиеся к работе системы. Если отдельные параметры не могут быть определены с достаточной точностью, следует предусмотреть возможные последствия их изменения, что и позволяет сделать работа с имитационной моделью.
7. Рост креативности. Наличие имитационной модели может повысить уровень креативности при проектировании системы. Например, инженер может представить два возможных решения конкретной проблемы на заводе. Одно из решений гарантированно работает, но стоит дороже. Второе решение включает в себя новую технологию, которая является менее дорогостоящей, но несколько более рискованной. Без применения каких-либо средств анализа двух возможных направлений действий скорее всего будет выбрано более консервативное решение. Если же существует модель системы, можно попробовать реализовать и сравнить оба потенциальных решения. В этом случае творческий потенциал инженера может быть реализован без риска неудачи и финансовых потерь.
Все эти преимущества имитационного моделирования имеют в основе общую идею: снижение риска. Моделирование – это один из основных методов снижения риска. В результате применения имитационного моделирования неопределенность относительно ожидаемых результатов работы новой системы или влияния вносимых изменений в существующую систему значительно снижается.
Общие ограничения имитационного моделирования
Моделирование – не идеальное лекарство, которое работает в каждом случае, помогая устранить любой риск от принятия решений в условиях неопределенности.
Можно отметить следующие слабые стороны имитационного моделирования:
1. Относительно большие финансовые затраты. Создание компьютерной модели часто может быть достаточно дорогостоящим методом анализа систем. Хотя сейчас доступны относительно недорогие программные пакеты для имитационного моделирования, большинство проектов моделирования сложных систем связаны с большими инвестициями в обучение персонала, приобретение программного обеспечения, совершенствование аппаратного обеспечения и т.п.
2. Большие временны́е затраты. Моделирование не всегда позволяет получить быстрые ответы на вопросы. В большинстве случаев этапы имитационного моделирования, такие как сбор данных, разработка модели, анализ результатов моделирования и создание отчетов, потребуют значительных затрат времени. Процесс моделирования можно ускорить двумя основными способами: уменьшение детализации модели и использование общей библиотеки кода (шаблонов). Снижая уровень детализации, ответы на общие вопросы можно получить гораздо быстрее. Однако при использовании этого подхода следует соблюдать осторожность. Устранение ключевых деталей может серьезно повлиять на качество модели. В ситуациях, когда будет выполняться много подобных проектов моделирования, может быть создана общая библиотека кода. Этот повторно используемый ресурс позволит не изобретать заново колесо для реализации каждого нового проекта моделирования.
3. Часто дает только приблизительные ответы. Моделирование дискретных событий основывается на использовании генераторов случайных чисел для обеспечения работы модели. Поскольку на входе имеем случайный элемент, некоторая неопределенность также будет связана с выходом модели. Для получения значимых результатов нужно будет использовать методы статистики, как инструмент для интерпретации результатов. Все выходы имитационной модели являются только оценками истинного поведения системы. Важно признать этот факт и трактовать результаты моделирования как приблизительные, и использовать статистическое тестирование для получения адекватных выводов.
4. Не всегда можно проверить модель на адекватность. Процесс проверки на адекватность позволяет сделать вывод, что компьютерная модель довольно точно представляет реальную систему. Когда система еще не существует, это может стать серьезной проблемой.
5. Излишнее доверие. Еще одна проблема, которая может возникнуть в ходе имитационного моделирования, – это стремление пользователей воспринимать результаты моделирования как истину в последней инстанции. Моделирование – это инструмент, используемый людьми, подверженный любым ошибкам, которые может совершить человек. Отчеты о результатах должны всегда подвергаться строгому контролю со стороны конечного пользователя. Следует использовать не только статистическое тестирование, но и здравый смысл в качестве механизма для принятия окончательного решения. Если выходные данные не соответствуют ожиданиям экспертов и здравому смыслу, их нужно проанализировать более внимательно.
Виды имитационного моделирования
Обычно для изучения инженерной и бизнес-среды используются несколько видов имитационного моделирования (ИМ). К ним относятся: непрерывное ИМ, метод Монте-Карло, дискретно-событийное ИМ и агентное моделирование.
Непрерывное имитационное моделирование
Непрерывное имитационное моделирование связано с использованием набора уравнений, представляющих реальную систему непрерывно с течением времени. Эта система может состоять из алгебраических уравнений, теоретико-игровых моделей, статистических или дифференциальных уравнений, настроенных таким образом, чтобы непрерывно меняться. Примером непрерывного моделирования является модель системы газопровода.
Другим примером непрерывного моделирования является модель конкуренции между двумя популяциями. Биологические модели этого типа известны как модель «хищник – жертва». Окружающая среда состоит из двух популяций, которые взаимодействуют друг с другом. Хищники зависят от добычи как источника питания. Если количество хищников растет слишком быстро, то добыча будет уменьшаться, хищники будут голодать – их количество станет уменьшаться. Если количество хищников уменьшится, число потенциальных жертв увеличится и т.д. Эта взаимосвязь может быть проанализирована с помощью непрерывного моделирования с использованием частных производных.