67303

Имитационное моделирование. Процедура имитационного моделирования

Лекция

Экономическая теория и математическое моделирование

Определение метода имитационного моделирования. Метод ИМ заключается в создании логико-аналитической (математической модели системы и внешних воздействий), имитации функционирования системы, т.е. в определении временных изменений состояния системы под влиянием внешних...

Русский

2014-09-07

505 KB

1 чел.

Лекция № 13

Имитационное моделирование

  1.  Процедура имитационного моделирования.

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

При исследовании детерминированных систем отпадает необходимость изучения  выборок значений выходных параметров.

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

Имитационное моделирование (ИМ) — это метод исследования, который основан на том, что анализируемая динамическая система заменяется имитатором и с ним производятся эксперименты для получения об изучаемой системе. Роль имитатора зачастую выполняет программа ЭВМ.

Основная идея метода ИМ состоит в следующем. Пусть необходимо определить функцию распределения случайной величины y. Допустим, что искомая величина y может быть представлена в виде зависимости: y=f( где  случайные величины с известными функциями распределения.

Для решения задач такого вида применяется следующий алгоритм:

  1.  по каждой из величин  производится случайное испытание, в результате каждого определяется некоторое конкретное значение случайной величины iii;
  2.  используя найденные величины, определяется одно частное значение yi по выше приведённой зависимости;

предыдущие операции повторяются N раз, в результате чего определяется N значений случайной величины y;

  1.  на основании N значений величины находится её эмпирическая функция распределения.
    1.  Имитация функционирования системы.

Предположим, исследуется вычислительная система (ВС), состоящая из процессора 1 с основной памятью, устройство вода перфокарт 4, АЦПУ 2 и дисплея 3 (рис. 4.1.).

Рис. 4.1. Упрощённая схема моделируемой системы.

Через устройство 4 поступает поток заданий Х1. Процессор обрабатывает задания и результаты выдаёт на АЦПУ 2. Одновременно с этим ВС используется, например, как информационно-справочная система. Оператор-пользователь, работающий за дисплеем, посылает в систему запросы Х2, которые обрабатываются процессором и ответы выводятся на экран дисплея. Процессор работает в 2-х программном режиме: в одном разделе обрабатываются задания Х1, в другом, с более высоким относительным приоритетом запросы Х2. Представим данную ВС в упрощённом варианте в виде стохастической сети из 4-х СМО. Потоки заданий и запросы будем называть потоками заявок. Считаем потоки Х1 и Х2 независимыми. Известны ф.р. периодов следования заявок 1 и 2 и длительность обслуживания Т, T заявок в к-ом устройстве. Требуется определить времена загрузки каждого устройства и времена реакции по каждому из потоков.

Вначале определяется момент поступления в систему 1-ой заявки потока Х1 по результатам случайного испытания в соответствии с ф.р. периода следования заявок.

Рис. 4.2. Временная диаграмма функционирования ВС.

На рис. 2 это момент времени t1=0+11 (здесь и далее верхний индекс обозначает порядковый номер заявки данного потока). То же самое делается для потока Х2. На рис.2 момент поступления 1-ой заявки потока Х2 t2=0+21. Затем находится минимальное время, т.е. наиболее раннее событие. В примере это время t1. Для 1-ой заявки потока Х1определяется время обслуживания устройством ввода перфокарт Т114 методом случайного испытания и отмечается момент окончания обслуживания t4=t1+ Т114. На рис. показан переход устройства 4 в состояние "занято". Одновременно определяется момент поступления следующей заявки потока Х1: t12=t1+12. Следующее минимальное время это момент поступления заявки потока Х2 - t2. Для этой заявки находится время обслуживания на дисплее Т123 и отслеживается время окончания обслуживания t3=t2+ Т123 . Определяется момент поступления второй заявки потока Х2: t7=t2+22 . Снова выбирается минимальное время — это t3. В этот момент заявка потока Х2 начинает обрабатываться процессором. По результату случайного испытания определяется время её обслуживания T121 и отмечается момент t5=t3+ T121 окончания обслуживания. Следующее минимальное время t4 - момент завершения обслуживания заявки потока Х1 устройством 4. С этого момента заявка может начать обрабатываться процессором, но он занят обслуживанием потока Х2. Тогда заявка потока Х1 переходит в состояние ожидания, становиться в очередь. В следующий момент времени t5 освобождается процессор. С этого момента процессор начинает обрабатывать заявку потока Х1, а заявка  потока Х2 переходит  на обслуживание дисплеем, т.е. ответ на запрос пользователя передаётся из основной памяти в буферный накопитель дисплея. Далее определяются соответствующие времена обслуживания: T111 и T123 и отмечаются моменты времени t9=t5+ T111 и t6=t5+ T123. В момент t6 полностью завершается обработка первой заявки потока Х2. По разности времени t6 и t2 вычисляется время реакции по этой заявке u12= t6- t2. Следующий минимальный момент t7 - это наступление 2-ой заявки потока Х2. Определяет время поступления очередной заявки этого потока t15= t7+23. Затем вычисляется время обслуживания 2-ой заявки на дисплее T223 и отмечается момент t8=t7+ T223, после чего заявка становится в очередь, т.к. процессор занят. Эта заявка поступит на обслуживание в процессор только после его освобождения в момент t9 . В этот момент заявка потока Х1 начинает обслуживаться в АЦПУ. Определяются времена обслуживания Т221 и Т112 по результатам случайных испытаний и отмечаются моменты окончания обслуживания t11= t9223 и t10= t9112. В момент времени t10 завершается полное обслуживание 1-ой заявки потока Х1. Разность между этим моментом и моментом времени t1 даёт 1-ое значение времени реакции по потоку Х1 u11= t10- t1.

Указанные процедуры выполняются до истечения времени моделирования. В результате получается некоторое количество (выборка) случайных значений времени реакции (u1) и (u2) по 1-ому и 2-ому потокам. По этим значениям могут быть определены эмпирические функции распределения и вычислены количественные вероятностные характеристики времени реакции. В процессе моделирования можно суммировать продолжительности занятости каждого устройства обслуживанием всех потоков. Например, на рис. 2 занятость процессора 1 выделена заштрихованными ступеньками. Если результаты суммирования разделить на время моделирования, то получатся коэффициенты загрузки устройств.

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

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

снятие заявки без возврата;

помещение заявки в очередь и дообслуживание после восстановления;

поступление на повторное обслуживание из очереди;

  1.  Моделирование систем и языки программирования.

Большое значение при реализации модели на ЭВМ имеет вопрос правильного выбора языка программирования.

Язык программирования должен отражать внутреннюю структуру понятий при описании широкого круга понятий. Высокий уровень языка моделирования значительно упрощает программирование моделей. Основными моментами при выборе ЯМ является:

проблемная ориентация;

возможности сбора, обработки, вывода результатов;

быстродействие;

простота отладки;

доступность восприятия.

Этими свойствами обладают процедурные языки высокого уровня. Для моделирования могут быть использованы языки Имитационного моделирования (ЯИМ) и общего назначения (ЯОМ).

Более удобными являются ЯИМ. Они обеспечивают:

удобство программирования модели системы;

проблемная ориентация.

Недостатки ЯИМ:

неэффективность рабочих программ;

сложность отладки;

недостаток документации.

Основные функции языка программирования:

управление процессами (согласование системного и машинного времени);

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

Как специализированные языки, ЯИМ обладают некоторыми программными свойствами и понятиями, которые не встречаются в ЯОН. К ним относятся:

Совмещение. Параллельно протекающие в реальных системах S процессы представляются с помощью последовательно работающей ЭВМ. ЯИМ позволяют обойти эту трудность путём введения понятий системного времени.

Размер. ЯИМ используют динамическое распределение памяти (компоненты модели системы М появляются в ОЗУ и исчезают в зависимости от текущего состояния. Эффективность моделирования достигается так же использованием блочных конструкций: блоков, подблоков и т.д.

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

Взаимосвязь. Для отражения большого количества между компонентами модели в статике и динамике ЯИМ включаем системно организованные логические возможности и реализации теории множеств.

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

Анализ. ЯИМ предусматривают системные способы статистической обработки и анализа результатов моделирования.

Наиболее известными языками моделирования являются SIMULA, SIMSCRIPT, GPSS, SOL, CSL.

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

Рис. 9.1. Классификация языков моделирования.

Язык DYNAMO используется для решения разностных уравнений.

Представление системы S в виде типовой схемы, в которой участвуют как дискретные, так и непрерывные величины, называются комбинированными. Предполагается, что в системе могут наступать события двух видов: 1) события, от состоянии Zi; 2) события, зависящие от времени t. При использовании языка GAPS на пользователь возлагается работа по составлению на яз. FORTRAN подпрограмм, в которых описываются условия наступления событий, законы изменения непрерывной величины, правил перехода из одного состояния в другое. SIMSCRIPT - язык событий, созданный на базе языка FORNRAN. Каждая модель Mj состоит из элементов, с которыми происходят события, представляющие собой последовательность формул, изменяющих состояние моделируемой системы с течением времени. Работа со списками, определяемые пользователем, последовательность событий в системном времени, работа с множествами. FORSIT - пакет ПП на языке FORNRAN позволяет оперировать только фиксированными массивами данных, описывающих объекты моделируемой системы. Удобен для описания систем с большим числом разнообразных ресурсов. Полное описание динамики модели можно получить с помощью ПП.

SIMULA - расширение языка ALGOL. Блочное представление моделируемой системы. Функционирование процесса разбивается на этапы, происходящие в системном времени. Главная роль в языке SIMULA отводится понятию параллельного оперирования с процессами в системном времени, универсальной обработки списков с процессами в роли компонент.

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

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

Баллы

Возможности

Простота применения

Предпочтение пользователя

5

SIMULA

GPSS

SIMSCRIPT

4

SIMSCRIPT

SIMSCRIPT

GPSS

3

GPSS

SIMULA

SIMULA

Суммарный бал:

 SIMULA -11

 SIMSCRIPT -13

 GPSS   -12

Если предпочтение отдаётся блочной конструкции модели при наличии минимального опыта в моделировании, то следует выбрать язык GPSS, но при этом следует помнить, что он негибок, требует большого объёма памяти и затрат машинного времени для счёта.


 

А также другие работы, которые могут Вас заинтересовать

31254. СОЦИАЛЬНАЯ РАБОТА Учебно-методическое пособие по выполнению и оформлению дипломной работы для студентов специальности 040101.65 Социальная работа 384.5 KB
  Джуринская СОЦИАЛЬНАЯ РАБОТА Учебнометодическое пособие по выполнению и оформлению дипломной работы для студентов специальности 040101.65 Социальная работа бакалавр специалист магистр 2е издание переработанное и дополненное СанктПетербург 2009 УДК Одобрено на заседании кафедры теории и практики социальной работы протокол № 6 от 16. Методическое пособие по выполнению и оформлению дипломной работы для студентов специальности 040101.
31255. Выпускная квалификационная (дипломная) работа: методические рекомендации для студентов всех специальностей 253 KB
  Выполнение и защита выпускной квалификационной работы (дипломной работы) является заключительным и наиболее ответственным этапом подготовки специалиста. Дипломная работа основывается на полученных знаниях по ряду дисциплин специальности, носит комплексный характер, в большей степени содержит элементы исследования.
31256. МЕТОДИЧЕСКИЕ УКАЗАНИЯ к выполнению дипломной работы для студентов биологического факультета, обучающихся по специальности 020803 - Биоэкологи 167 KB
  Шихова МЕТОДИЧЕСКИЕ УКАЗАНИЯ к выполнению дипломной работы для студентов биологического факультета обучающихся по специальности 020803 Биоэкологи: с Q Киров 2011 ВВЕДЕНИЕ В соответствии с Положением об итоговой государственной аттестации выпускников высших учебных заведений Российской Федерации утверждённым приказом Минобразования РФ от 25. № 1155 защита выпускной квалификационной дипломной работы является обязательной составляющей итоговой государственной аттестации выпускников обучающихся по специальности 020803 Биоэкология в...
31257. Методические указания по подготовке, выполнению и защите дипломных работ по специальности 080102 «Мировая экономика» 337.5 KB
  В них изложены порядок выбора темы дипломной работы общая схема дипломного исследования структура и содержание основного текста требования к оформлению и процедура защиты дипломной работы. Общие положения Выбор темы дипломной работы Структура дипломной работы Чтение литературы и выписки из нее Оформление дипломной работы Нумерация страниц дипломной работы.
31258. Методические указания по выполнению дипломной работы для студентов дневной и заочной форм обучения специальности 080109 – «Бухгалтерский учет, анализ и аудит» 203.5 KB
  Дипломная работа: Методические указания по выполнению дипломной работы для студентов дневной и заочной форм обучения специальности 080109 Бухгалтерский учет анализ и аудит Составители: д. В методических указаниях отражены общие требования по выполнению дипломной работы по специальности 080109 Бухгалтерский учет анализ и аудит Приведены общие требования к написанию дипломной работы правила оформления порядок подготовки к защите критерии оценки. Цель и задачи выполнения дипломной работы .
31259. МЕТОДИЧЕСКИЕ УКАЗАНИЯ к дипломному проектированию 162 KB
  Защита дипломной работы проекта. Содержание дипломной работы проекта. Состав и структура дипломной работы проекта. Содержание основных разделов дипломной работы проекта.
31261. МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ ПО ДИПЛОМНОМУ ПРОЕКТИРОВАНИЮ И ВЫПОЛНЕНИЮ ВЫПУСКНЫХ КВАЛИФИКАЦИОННЫХ РАБОТ 328.5 KB
  ВЫБОР И УТВЕРЖДЕНИЕ ТЕМЫ КВАЛИФИКАЦИОННОЙ РАБОТЫ.6 Выбор и утверждение темы квалификационной работы.ВЫПОЛНЕНИЕ КВАЛИФИКАЦИОННОЙ РАБОТЫ. Подготовка к выполнению квалификационной работы.
31262. МЕТОДИЧЕСКОЕ УКАЗАНИЕ ПО НАПИСАНИЮ ДИПЛОМНОЙ РАБОТЫ (ПРОЕКТА) 342.5 KB
  МЕТОДИЧЕСКОЕ УКАЗАНИЕ ПО НАПИСАНИЮ ДИПЛОМНОЙ РАБОТЫ ПРОЕКТА для студентов специальности 080504.65 Менеджмент организации Методическое указание по выполнению выпускной квалификационной работы для студентов специальности 080504. Цель и задачи дипломной работы. Выбор и утверждение темы дипломной работы .