logo
msepmenj (2) / Лекции / Моделирование соц-экономич процессов

Особенности и принципы построения имитационных моделей

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

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

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

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

Имитационные модели как подкласс математических моделей можно классифицировать на: статические и динамические; детерминированные и стохастические; дискретные и непрерывные.

Класс задачи предъявляет определенные требования к имитационной модели. Так, например, при статической имитации расчет повторяется несколько раз в различных условиях проведения эксперимента – исследование поведения «в определенный короткий период времени». При динамической имитации моделируется поведение системы «в течение продолжительного периода времени» без изменений условий. При стохастической имитации в модель включаются случайные величины с известными законами распределения; при детерминированной имитации эти возмущения отсутствуют, т.е. их влияние не учитывается.

Порядок построения имитационной модели и ее исследования в целом соответствует схеме построения и исследования аналитических моделей. Однако специфика имитационного моделирования приводит к ряду специфических особенностей выполнения тех или иных этапов. В литературе приводится следующий перечень основных этапов имитации:

  1. Определение системы – установление границ, ограничений и измерителей эффективности системы, подлежащей изучению.

  2. Формулирование модели – переход от реальной системы к некоторой логической схеме (абстрагирование).

  3. Подготовка данных – отбор данных, необходимых для построение модели и представления их в соответствующей форме.

  4. Трансляция модели – описание модели на языке, применяемом для используемой ЭВМ.

  5. Оценка адекватности – повышение до приемлемого уровня степени уверенности, с которой можно судить относительно корректности выводов о реальной системе, полученных на основании обращения к модели.

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

  7. Тактическое планирование – определение способа проведения каждой серии испытаний, предусмотренных планом эксперимента.

  8. Экспериментирование – процесс осуществления имитации с целью получения желаемых данных и анализа чувствительности.

  9. Интерпретация – построение выводов по данным, полученным путем имитации.

  10. Реализация – практическое использование модели и (или) результатов моделировании.

  11. Документирование – регистрация хода осуществление проекта и его результатов, а также документирование процесса создания и использования модели

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

Как видно из приведенного перечня, особо выделены этапы планирования экспериментов на модели. И это не удивительно. Ведь имитация на ЭВМ – это эксперимент. Анализ и поиск оптимальных решений алгоритмических моделей (а все имитационные модели относятся к этому классу) осуществляется теми или иными методами экспериментальной оптимизации на ЭВМ. Единственное отличие имитационного эксперимента от эксперимента с реальным объектом состоит в том, что имитационный эксперимент производится с моделью реальной системы, а не с самой системой.

Понятие моделирующего алгоритма и формализованной

схемы процесса

Для имитационного моделирования процесса на ЭВМ необходимо преобразовать его математическую модель в специальный моделирующий алгоритм, в соответствии с которым в ЭВМ будет вырабатываться информация, описывающая элементарные явления исследуемого процесса с учетом их связей и взаимных влияний. Определенная часть циркулирующей информации выводится «на печать» и используется для определения тех характеристик процесса, которые требуется получить в результате моделирования (рис. 4.1).

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

Остальные модели (рис.4.1) представляют собой внешнее математическое обеспечение процесса имитации.

Модели входов обеспечивают задание тех или иных значений входных факторов. Статические модели детерминированных входов элементарны: это массивы значений констант, соответствующих определенным факторам модели. Динамические модели входов обеспечивают изменение значений детерминированных факторов во времени по известному закону .

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

Рис. 4.1. Структура моделирующего алгоритма для оптимизационной модели со случайными факторами

В связи с тем, что результат, полученный при воспроизведении единственной реализации из-за наличия случайных факторов, не может характеризовать исследуемый процесс в целом, приходится анализировать большое число таких реализаций, так как только тогда по закону больших чисел получаемые оценки приобретают статистическую устойчивость и могут быть с определенной точностью приняты за оценки искомых величин. Модель выхода обеспечивает накопление, накопление, обработку и анализ полученного множества случайных результатов. Для этого с ее помощью организуется многократный просчет значений выходных характеристик при постоянных значениях факторов и различных значениях случайных факторов(в соответствии с заданными законами распределения) – «цикл поy». В связи с этим модель выхода включает программы тактического планирования эксперимента на ЭВМ – определение способа проведения каждой серии прогонов, соответствующей конкретным значениями. Кроме того, модель решает задачу обработки случайных значений выходных характеристик, в результате которой они «очищаются» от влияний случайных факторов и поступают на вход модели обратной связи, т.е. модель выхода реализует сведение стохастической задачи к детерминированной методом «осреднения по результату».

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

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

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

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

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

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

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

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

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

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

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

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

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

алгоритмов

Имитационная модель является, как правило, динамической моделью, отражающей последовательность протекания элементарных процессов и взаимодействие отдельных элементов по оси «модельного» времени tM.

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

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

Реализация этого правила может проводиться различными способами.

1. Повременное моделирование с детерминированным шагом («принцип ») при повременном моделировании с детерминированным шагом алгоритм одновременно просматривает все элементы системы через достаточно малые промежутки времени (шаг моделирования) и анализирует все возможные взаимодействия между элементами. Для этого определяется минимальный интервал времени, в течении которого не может измениться состояние ни одного из элементов системы; детализированная величинапринимается за шаг моделирования.

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

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

2. Современное моделирование со случайным шагом (моделирование по «особым» состояниям). При рассмотрении большинства сложных систем можно обнаружить два типа состояний системы: 1) обычные (неособые) состояния, в которых система находится большую част времени, и 2) особые состояния, характерные для системы в некоторые моменты времени, совпадающие с моментами поступления в систему воздействий из окружения, выхода одной из характеристик системы на границу области существования и т.д. Например, станок работает – обычное состояние, станок сломан – особое состояние. Любое скачкообразное изменение состояния объекта может рассматриваться при моделировании как переход в новое «особое» состояние.

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

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

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

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