Имитационное моделирование (работа 1)

КУРСОВАЯ РАБОТА

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

Введение

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

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

Динамические объекты, соответствующие заявкам в системах массового обслуживания, называются в GPSS транзактами. Транзакт – это элемент системы массового обслуживания. Они "создаются" и "уничтожаются" так, как это необходимо по логике модели в процессе моделирования. С каждым транзактом может быть связано произвольное число параметров, несущих в себе необходимую информацию об этом транзакте.

Блоки в GPSS подразделяются на три типа:

    выполняемые, через которые проходят транзакты;

    описательные, на этапе выполнения отсутствуют;

    управляющие работой системы GPSS;

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

    Породить Транзакт

GENERATE

Среднее_значение_времени_между_транзактами[,Отклонение_от_среднего][,Время_до_первого_транзакта],Количество_порождаемых_транзактов][,Приоритет_транзактов][,Количество_параметров_транзакта][,F|H]. Среднее значение времени по умолчанию

1. Отклонение по умолчанию

0.Время до первого транзакта вычисляется на основании первых двух аргументов. Если оно равно 0, то приравнивается

1. Значение приоритета в интервале от 0 до 127. По умолчанию 0. Значение количества параметров в интервале от 0 до 100. По умолчанию 12. По смыслу блока транзакты не должны входить в GENERATE.

    Присвоить начальное значение

Описательный блок

INITIAL XНомер_хранимого_значения,

Значениеконстанта

INITIAL XHНомер_хранимого_значения,

Значениеконстанта

INITIAL X$Имя_хранимого_значения,

Значениеконстанта

Пример: INITIAL X4,17

INITIAL X$RATE,19

    Отметить транзакт в очереди

[Метка] QUEUE Имя_очереди[,Число_прибавляемое_

к_длине_очереди]

    Освободить устройство

[Метка] RELEASE Устройство

Пример: RELEASE IBM5

    Сохранить значение

[Метка] SAVEVALUE Номер_хранимого_значения[+|],

Значение

Пример: SAVEVALUE 3+,P2

    Занять без приоритета устройство

[Метка] SEIZE Устройство

Пример: SEIZE IBM5

    Сравнить значения

[Метка] TEST Операция Первый_операнд,Второй_операнд,

[Метка_передачи_транзакта]

Операция > E|NE|GE|LE|G|L

Пример: TEST E P1,3,BRAK

    Уничтожить транзакт

[Метка] TERMINATE [Значение_вычитаемое_из_

счетчика_в_START]

Пример: TERMINATE 1

    Задержать транзакт

[Метка] ADVANCE Среднее_значение_задержки

[,Отклонение_от_среднего]

Пример: ADVANCE 37,7

    Присвоение параметру транзакта значения

[Метка] ASSIGN Номер_параметра_транзакта,Значение

Пример: ASSIGN 3,1

    Описать булевскую переменную

Имя_переменной BVARIABLE Логическое_выражение

Пример: BOOL1 BVARIABLE SE3 + LR7

    Покинуть очередь

[Метка] DEPART

Имя_очереди[,Количество_единиц]

Пример: DEPART QTOWRK

    Направить транзакт на другую часть модели [Метка] TRANSFER|BOTH| Вероятность Метка1[,Метка2]

Пример: TRANSFER ,LABL2

    Начать моделирование

Описательный блок.

START Значение_счетчика

Пример: START 200

Целью проектирования является углубленное изучение языка программирования GPSS и приобретение навыков решения прикладных задач на основе моделирования.

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

GPSS World Student Version 4.1.3

Задание на курсовое проектирование

Задание 4.

В системе передачи цифровой информации передается речь в цифровом виде. Речевые пакеты передаются через два транзитных канала, буферизуясь в накопителях перед каждым каналом. Время передачи пакета по каналу составляет 5 мс. Пакеты поступают через 6 ± 3 мс. Пакеты, передававшиеся более 10 мс, на выходе системы уничтожаются, так как их появление в декодере значительно снизит качество передаваемой речи. Уничтожение более 30% пакетов недопустимо. При достижении такого уровня система за счет ресурсов ускоряет передачу до 4 мс на канал. При снижении уровня до приемлемого происходит отключение ресурсов.

Смоделировать 10 с работы системы. Определить частоту уничтожения пакетов и частоту подключения ресурса.

Система обозначений объектов моделируемой системы

BOL - метка

KANAL1 – первый канал

KANAL2 – второй канал

MET1 - метка

METBOL - метка

METTERM - метка

METTERM1 метка

OCH_KANAL1 - очередь к первому каналу

OCH_KANAL2 - очередь ко второму каналу

PVREMA1 - метка

PVREMA2 - метка

VREM - метка

VSEGO - метка

VVREMA - метка

Диаграмма IDEF0


Правила и процедуры

Цифровая

обработка


Речевые пакеты Выход



Декодер

Рис 1.Контекстная диаграмма

поток на Правила и процедуры

Выбор обработку

к

1 канал

анала

Выход

Р

Очередь

Обработка

ечевые пакеты


2 канал


Декодер

Рис 2.Диаграмма декомпозиций

Текст программы

VVrema variable 5

INITIAL X$Vrem,5

GENERATE 6,3

SAVEVALUE Vsego+,1

ASSIGN PVrema1,V$VVrema

ASSIGN PVrema2,V$VVrema

QUEUE Och_kanal1

SEIZE kanal1

DEPART Och_kanal1

ADVANCE P$PVrema1

RELEASE kanal1

QUEUE Och_kanal2

SEIZE kanal2

DEPART Och_kanal2

ADVANCE P$PVrema2

RELEASE kanal2

TEST LE (P$PVrema1+P$PVrema2),10,MetBol

TEST L (X$Bol/X$Vsego),.3,MetTerm

SAVEVALUE Vrem,5

MetTerm TERMINATE

MetBol SAVEVALUE Bol+,1

TEST GE (X$Bol/X$Vsego),.3,Met1

SAVEVALUE Vrem,4

MetTerm1 TERMINATE

Met1 SAVEVALUE Vrem,5

TRANSFER, MetTerm1

GENERATE 100

TERMINATE 1

START 1

Результаты моделирования (листинг)

GPSS World Simulation Report - Untitled Model 1.1.1

Thursday, June 14, 2007 12:06:24

START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 100.000 26 2 0

NAME VALUE

BOL 10009.000

KANAL1 10006.000

KANAL2 10008.000

MET1 23.000

METBOL 19.000

METTERM 18.000

METTERM1 22.000

OCH_KANAL1 10005.000

OCH_KANAL2 10007.000

PVREMA1 10003.000

PVREMA2 10004.000

VREM 10001.000

VSEGO 10002.000

VVREMA 10000.000

LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

1 GENERATE 16 0 0

2 SAVEVALUE 16 0 0

3 ASSIGN 16 0 0

4 ASSIGN 16 0 0

5 QUEUE 16 0 0

6 SEIZE 16 0 0

7 DEPART 16 0 0

8 ADVANCE 16 1 0

9 RELEASE 15 0 0

10 QUEUE 15 0 0

11 SEIZE 15 0 0

12 DEPART 15 0 0

13 ADVANCE 15 1 0

14 RELEASE 14 0 0

15 TEST 14 0 0

16 TEST 14 0 0

17 SAVEVALUE 14 0 0

METTERM 18 TERMINATE 14 0 0

METBOL 19 SAVEVALUE 0 0 0

20 TEST 0 0 0

21 SAVEVALUE 0 0 0

METTERM1 22 TERMINATE 0 0 0

MET1 23 SAVEVALUE 0 0 0

24 TRANSFER 0 0 0

25 GENERATE 1 0 0

26 TERMINATE 1 0 0

FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY

KANAL1 16 0.768 4.798 1 17 0 0 0 0

KANAL2 15 0.730 4.865 1 16 0 0 0 0

QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

OCH_KANAL1 1 0 16 9 0.118 0.737 1.684 0

OCH_KANAL2 1 0 15 15 0.000 0.000 0.000 0

SAVEVALUE RETRY VALUE

VREM 0 5.000

VSEGO 0 16.000

BOL 0 0

FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE

16 0 102.024 16 13 14

PVREMA2 5.000

PVREMA1 5.000

17 0 103.228 17 8 9

PVREMA1 5.000

PVREMA2 5.000

18 0 104.384 18 0 1

19 0 200.000 19 0 25

Гистограмма функции распределения


Рис 3. Очередь к первому каналу


Рис 4. Очередь ко второму каналу

Исследование устойчивости модели

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

№1 START 100

START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 10100.000 26 2 0

FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY

KANAL1 1674 0.828 4.997 1 1775 0 0 0 0

KANAL2 1673 0.828 4.999 1 1774 0 0 0 0

QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

OCH_KANAL1 2 0 1674 958 0.115 0.692 1.619 0

OCH_KANAL2 1 0 1673 1673 0.000 0.000 0.000 0

№2 START 200

START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 30100.000 26 2 0

FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY

KANAL1 5006 0.831 4.999 1 5307 0 0 0 0

KANAL2 5005 0.831 5.000 1 5306 0 0 0 0

QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY

OCH_KANAL1 2 0 5006 2744 0.122 0.736 1.629 0

OCH_KANAL2 1 0 5005 5005 0.000 0.000 0.000 0

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

Вывод

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

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

Список используемой литературы

    В.Н. Томашевский, Е.Г. Жданова «Имитационное моделирование в среде GPSS».-М.:Бестселлер,2003.-416с.

    Б.Я. Советов, С.Я. Яковлев «Моделирование систем».-М.: «Высшая школа»,2003.

    В. Боев «Моделирование систем. Инструментальные средства GPSS World».-Спб.: «БХВ-Петербург»,2004.

1