Это старая версия документа.


Введение

Теория имитационного моделирования

Имитационное моделирование - метод исследования систем, основанный на том, что изучаемая система заменяется имитирующей. С имитирующей системой проводят эксперименты (не прибегая к экспериментам на реальном объекте) и, в результате, получают информацию об изучаемой системе. В Business Studio предметом изучения является деятельность, описанная в виде моделей процессов.

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

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

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

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

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

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

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

Последовательность действий аналитика при проведении имитационного моделирования

  1. Аналитик формулирует задачи, которые он собирается решить при помощи имитационного моделирования. Типы задач, которые может поставить перед собой аналитик:
    • Проверка правильности созданной модели деятельности. Для этого запускается имитация группы моделей процессов. Рассчитанные по результатам имитации значения параметров сравниваются с данными, полученными прямым замером. Если данные расходятся - это повод к уточнению модели.
    • Оптимизация существующей деятельности. Создаваемая модель деятельности используется с целью выявить критичные параметры и оптимизировать их значения.
    • Проектирование новой деятельности.
  2. Аналитик представляет деятельность в виде моделей процессов и операций.
  3. Аналитик задает правила возникновения экземпляров событий, запускающих на выполнение экземпляры процессов.
  4. Для каждой модели операции аналитик заполняет параметры "Время выполнения", "Время ожидания", указывает, какие ресурсы необходимы для выполнения экземпляров операций. Ресурсы могут быть следующих типов: временные, материальные, постоянные расходы.
  5. Для каждой модели ресурса аналитик заполняет стоимостные параметры для дальнейшего расчета стоимости использования имитирующих ресурсов.
  6. Аналитик указывает, какие модели процессов должны участвовать в имитации, и запускает имитацию. Движок имитации создает экземпляры стартовых имитирующих событий и начинает последовательно выполнять экземпляры имитирующих операций в соответствии с диаграммами процессов. При этом идет подсчет временных, стоимостных и других параметров имитирующих объектов (экземпляров операций, процессов, ресурсов).
  7. Аналитик анализирует полученные результаты. При этом он может не ограничивать себя автоматически рассчитанными статистическими данными, но может на их основе рассчитывать нужные ему параметры.

Пример действий аналитика при имитации существующей деятельности

  1. Аналитик изучает деятельность. Для этого он выделяет значимые классы событий и операций, документирует, когда возникают экземпляры событий и операций, и в какой последовательности экземпляры операций выполняются. Например, что делал Ф.Тейлор, когда анализировал работу грузчиков, работающих на погрузке чушек в вагоны ("Принципы научного менеджмента")? Он наблюдал за действиями грузчиков и выделил следующие операции, которые выполняет каждый грузчик: "Поднять чушку", "Перенести чушку", "Погрузить чушку", "Вернуться за новой чушкой", "Отдохнуть". Затем он зафиксировал время начала и окончания выполнения каждого экземпляра каждой операции и проанализировал зафиксированные значения. Тейлор увидел следующие закономерности: один экземпляр операции "Отдохнуть" приходится в среднем на 15 экземпляров остальных операций; выполнение экземпляра операции "Погрузить чушку" может занимать от 3 минут до 10 минут, при этом среднее время выполнения экземпляра этой операции составляет 6 минут; операции "Поднять чушку", "Перенести чушку", "Погрузить чушку", "Вернуться за новой чушкой" выполняются последовательно друг за другом каждый раз, и их можно объединить в процесс "Погрузка чушки".
    Аналогично, аналитик путем наблюдения выясняет параметры каждого экземпляра каждой выделенной им операции: время начала и время окончания выполнения. Затем он анализирует эти данные и рассчитывает среднюю длительность экземпляра операции и закон распределения длительности экземпляров операции. Для хранения этих данных аналитик создает объекты в справочнике "Процессы" в Business Studio и заполняет их параметры. Одновременно аналитик формирует диаграммы процессов, фиксируя на них последовательности выполнения экземпляров операций.
  2. Аналитик исследует причины, которые приводят к началу выполнения экземпляров процессов, находит нужные закономерности и переносит их в модель в Business Studio. Фиксация этих закономерностей производится путем создания объекта в справочнике "События" Business Studio, изображения на диаграмме процесса фигуры события и описания правил возникновения экземпляров этого события.
  3. Аналитик выделяет ресурсы, которые необходимы для выполнения каждого экземпляра операции. В справочниках "Субъекты" и "Объекты деятельности" Business Studio он создает соответствующие этим ресурсам модели и задает их параметры. А затем для каждой модели операции указывает перечень ресурсов, используемых при выполнении экземпляра операции.
  4. После завершения работы по подготовке данных для имитации аналитик приступает к самой имитации. Для этого он указывает, выполнение экземпляров каких процессов он хочет сымитировать, указывает имитируемый период времени, валюту, в которой необходимо сделать расчет стоимостных параметров, и запускает имитацию. Например, аналитик может указать, что необходимо сымитировать выполнение экземпляров процессов "Погрузить чушку".
  5. Движок имитации создает экземпляры имитирующих событий, операций и ресурсов и имитирует взаимодействие между ними. Значения параметров имитирующих объектов рассчитываются на основании заданных значений параметров объектов справочников Business Studio. Например, в качестве значения параметра "Время выполнения" модели операции "Перенести чушку" может быть указан закон распределения. Предположим, что это нормальный закон распределения с матожиданием – 60 секунд и средним отклонением - 10 секунд. Тогда движок имитации будет создавать экземпляры имитирующей операции "Перенести чушку" со значениями параметра "Время выполнения", распределенными по этому закону: 33, 70, 59, 65, 62 сек. и т.д.
  6. По завершении имитации аналитик видит статистические данные, сгруппированные по имитирующим процессам, ресурсам, продуктам. В некоторых случаях можно увидеть данные не только для имитирующего объекта, но и для его экземпляров. Например, можно увидеть графики работы каждого грузчика в отдельности. На основе этих данных аналитик может рассчитать те параметры, которые требуется проверить на соответствие реальности. Предположим, он может задаться вопросом "Сколько чушек могут перенести грузчики при заданном режиме работы?" Если рассчитанные по результатам имитации значения параметров лежат в области допустимой ошибки (допуск устанавливает сам аналитик), то считается, что модель с нужной степенью точности описывает реальность. Например, если рассчитанное количество чушек, переносимых грузчиками за смену, отличается от реального не более чем на 20%, то модель деятельности, скорее всего, верна. Убедившись, что модель соответствует реальности, аналитик может проводить дальнейшие эксперименты с моделью.
« ПредыдущаяНа уровень вышеСледующая »
Актуальные новости, публикации и практики для бизнес-архитекторов и аналитиков
Driven by DokuWiki