Имитационное моделирование систем массового обслуживания на языке GPSS/PC

Тип работы:
Курсовая
Предмет:
Программирование


Узнать стоимость

Детальная информация о работе

Выдержка из работы

Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования

Московский авиационный институт

Национальный исследовательский университет. Филиал «Восход»

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

по дисциплине: Моделирование

на тему:

Имитационное моделирование систем массового обслуживания на языке GPSS/PC

Выполнил Маханьков Ю. А.

студент гр. ДВМ4−65

г. Байконур — 2014

Содержание

Введение

1. Построение концептуальной модели системы

2. Построение блок-диаграммы программы

3. Программирование модели на языке GPSS/PC

4. Анализ результатов программирования

Заключение

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

Приложение А

Приложение Б

Приложение В

Введение

В курсовой работе требуется смоделировать работу системы массового обслуживания на языке моделирования GPSS/PC.

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

1. Построение концептуальной модели системы

В узел коммутации сообщений, состоящий из одного общего входного буфера, процессора, двух выходных буферов и двух выходных линий, поступают сообщения с двух направлений (рисунок 1).

Сообщения с первого направления:

1. Поступают во входной буфер,

2. Обрабатываются в процессоре,

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

4. Передаются по первой выходной линии.

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

Рисунок 1 — Структурная схема работы узла коммутации сообщений

Функциональная схема представлена на рисунке 2, где N1 и N2 сообщения с первого и второго направления соответственно, ПР — процессор.

Рисунок 2 — Функциональная схема работы узла коммутации сообщений

2. Построение блок-диаграммы программы

Блок-диаграмма начинается с генерации транзактов по первому и второму направлению с изменением значений параметров транзактов на 1 и 2. Далее присваиваются значения переменным и происходит пересылка на метку BXBUF. Происходит вход в буфер (входной), проверка принадлежности сообщения первому направлению (иначе переход к BX2 и проверка нахождения в системе не более 3-х сообщений со второго направления, выход из буфера (иначе переход к EXIT_), проверка нахождения в системе не более 3-х сообщений с первого направления (иначе переход к EXIT_). Затем происходит безусловный переход по метке MET1. Далее — выход из входного буфера, затем захват устройства и продвижение модельного времени, после чего устройство освобождается (процессор). Происходит проверка принадлежности сообщения первому направлению, далее вход в выходной буфер первой линии, захват устройства, продвижение модельного времени и освобождение устройства. Происходит выход из выходного буфера первой линии. Присваиваются значения переменным после чего происходит безусловный переход на метку EXIT_. Аналогично для второй линии. Работа производится в течение 10 000 модельного времени блоком Generate.

Блок-диаграмма представлена в приложении А.

3. Программирование модели на языке GPSS/PC

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

Модели, построенные на GPSS, реализуют 10 000 единиц модельного времени.

Листинг программы представлен в приложении Б.

4. Анализ результатов программирования

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

Таблица 1

Нахождение максимальной экономической эффективности

N

T2

T3

d1

d2

D

1

7±1

8±2

20

40

600 740

2

6±1

8±2

18

40

580 714

3

7±1

7±2

20

36

560 692

4

6±1

7±2

18

36

540 666

5

5±1

8±2

16

40

560 688

6

5±1

7±2

16

36

520 640

7

7±1

6±2

20

32

520 644

8

6±1

6±2

18

32

500 618

9

5±1

6±2

16

32

480 592

В таблице используются следующие обозначения:

T2 — время передачи одного сообщения по первой линии;

T3 — время передачи одного сообщения по второй линии;

d1 — прибыль от обслуживания сообщения с первого направления;

d2 — прибыль от обслуживания сообщения со второго направления;

D — общая прибыль.

Результат моделирования представлен в приложении В.

Заключение

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

В результате построена блок-диаграмма программы на языке GPSS (Приложение А) и программа модели системы на языке GPSS (Приложение Б). По результатам моделирования произведен анализ работы модели.

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

программа модель узел коммутация

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

1. Конспект лекций по дисциплине «Моделирование».

2. Советов Б. Я., Яковлев С. А. Моделирование систем: Учебник для вузов по спец. «Автоматизированные системы управления». — М.: Высш. шк., 2001. — 271 с.

3. Адлер Ю. П. Статистические методы в имитационном моделировании М: Мир, 1990.

4. Боев В. Моделирование систем. Инструментальные средства GPSS World. Серия: Учебное пособие. СПб: BHV-Санкт-Петербург, 2004.

5. Воронин В. Е., Куранцева B.C. Имитационное моделирование: Учебное пособие. Саратов: Поволжская академия государственной службы им. П. А. Столыпина, 2006. — 148 с.

6. Евсеева О. Н., Шишкин В. В. Имитационное моделирование на языке GPSS: Метод, указ. — Ульяновск: УлГТУ, 1995. — 40 с.

7. Калашников В. В. Организация моделирования сложных систем. — М.: Высшая школа, 1990.

8. Кремер Н. Ш. Теория вероятностей и математическая статистика: Учебник для вузов. М. :ЮНИТИ-ДАНА, 2002

9. Кудрявцев Е. М. GPSS World. Основы имитационного моделирования различных систем, М.: ДМК Пресс, 2004, 320 с.

10. Максимей И. В. Имитационное моделирование на ЭВМ. — М.: Радио и связь, 1988

Приложение, А (обязательное)

Рисунок А.1 — Блок-диаграмма работы программы

Продолжение приложения А

Рисунок А.2 — Продолжение блок-диаграммы

Продолжение приложения А

Рисунок А.3 — Продолжение блок-диаграммы

Приложение Б (обязательное)

Листинг программы

clear

BUFFIK Storage 10 000; размер входного буфера

BUF1 Storage 10 000; размер выходного буфера первой линии

BUF2 Storage 10 000; размер выходного буфера второй линии

DDD1 EQU 20; прибыль от обслуживания сообщений с первой линии

DDD2 EQU 40; прибыль от обслуживания сообщений со второй линии

ZZZ1 EQU 2; затраты на уменьшение времени передачи сообщения по

первой линии на одну единицу времени

ZZZ2 EQU 4; затраты на уменьшение времени передачи сообщения по

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

PPP1 EQU 1; ускорение процесса передачи по первой линии

PPP2 EQU 1; ускорение процесса передачи по первой линии

PRIBIL FVariable (DDD1#Tmp1+DDD2#TMP2)

Generate 6,1; поступление сообщений с первого направления

Assign 1,1

Savevalue VVV1+, 1

Transfer, BXBUF

Generate 5,1; поступление сообщений со второго направления

Assign 1,2

Savevalue VVV2+, 1

Transfer, BXBUF

BXBUF Enter BUFFIK; поступление сообщений во входной буфер

Test E p1,1,BX2; проверка принадлежности сообщения первому

направлению

VOZVR Test L X$VVV1,3,Exit_; проверка нахождения в системе не

более 3-х сообщений с первого направления

Transfer, met1

BX2 Test L X$VVV2,3,Exit_; проверка нахождения в системе не более

3-х сообщений со второго направления

met1 Leave BUFFIK; выход сообщений из входного буфера

seize 1

Advance 3,1; обработка в процессоре

release 1

Test E p1,1,BIX2; проверка принадлежности сообщения первому

направлению

Enter BUF1; поступление сообщений с первого направления в

выходной буфер первой линии

seize 2

Advance 7,1; передача сообщения по первой линии

release 2

Leave BUF1; выход сообщений из выходного буфера первой линии

Savevalue VVV1-, 1

Savevalue Tmp1+, 1

Transfer, Exit_

BIX2 Enter BUF2; поступление сообщений со второго направления в

выходной буфер второй линии

seize 3

Advance 8,2; передача сообщения по второй линии

release 3

Продолжение приложения Б

Leave BUF2; выход сообщений из выходного буфера второй линии

Savevalue VVV2-, 1

Savevalue Tmp2+, 1

Transfer, Exit_

Exit_ Terminate

Generate 10 000

Savevalue ITOG, V$PRIBIL

Terminate 1

Start 1

Приложение В (обязательное)

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

GPSS World Simulation Report — Untitled Model 1.2. 11

Wednesday, December 24, 2014 01: 14:22

START TIME END TIME BLOCKS FACILITIES STORAGES

0. 000 10 000. 000 38 3 3

NAME VALUE

BIX2 27. 000

BUF1 10 001. 000

BUF2 10 002. 000

BUFFIK 10 000. 000

BX2 13. 000

BXBUF 9. 000

DDD1 20. 000

DDD2 40. 000

EXIT_ 35. 000

ITOG 10 014. 000

MET1 14. 000

PPP1 1. 000

PPP2 1. 000

PRIBIL 10 009. 000

TMP1 10 013. 000

TMP2 10 012. 000

VOZVR 11. 000

VVV1 10 011. 000

VVV2 10 010. 000

ZZZ1 2. 000

ZZZ2 4. 000

LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT

1 GENERATE 1663 0 0

2 ASSIGN 1663 0 0

3 SAVEVALUE 1663 0 0

4 TRANSFER 1663 0 0

5 GENERATE 2011 0 0

6 ASSIGN 2011 0 0

7 SAVEVALUE 2011 0 0

8 TRANSFER 2011 0 0

BXBUF 9 ENTER 3674 0 0

10 TEST 3674 0 0

VOZVR 11 TEST 1663 0 0

12 TRANSFER 11 0 0

BX2 13 TEST 2011 0 0

MET1 14 LEAVE 16 0 0

15 SEIZE 16 0 0

16 ADVANCE 16 0 0

17 RELEASE 16 0 0

18 TEST 16 0 0

19 ENTER 11 0 0

20 SEIZE 11 0 0

21 ADVANCE 11 0 0

22 RELEASE 11 0 0

23 LEAVE 11 0 0

24 SAVEVALUE 11 0 0

25 SAVEVALUE 11 0 0

26 TRANSFER 11 0 0

BIX2 27 ENTER 5 0 0

28 SEIZE 5 0 0

29 ADVANCE 5 0 0

30 RELEASE 5 0 0

31 LEAVE 5 0 0

32 SAVEVALUE 5 0 0

33 SAVEVALUE 5 0 0

34 TRANSFER 5 0 0

EXIT_ 35 TERMINATE 3674 0 0

36 GENERATE 1 0 0

37 SAVEVALUE 1 0 0

38 TERMINATE 1 0 0

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

RETRY DELAY

1 16 0. 005 3. 056 1 0 0 0 0 0

2 11 0. 008 7. 034 1 0 0 0 0 0

3 5 0. 004 7. 900 1 0 0 0 0 0

STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL.

RETRY DELAY

BUFFIK 10 000 6342 0 3658 3674 1 1819. 570 0. 182 0 0

BUF1 10 000 10 000 0 3 11 1 0. 014 0. 000 0 0

BUF2 10 000 10 000 0 2 5 1 0. 005 0. 000 0 0

SAVEVALUE RETRY VALUE

VVV2 0 2006. 000

VVV1 0 1652. 000

TMP2 0 5. 000

TMP1 0 11. 000

ITOG 0 600 740. 000

FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE

3677 0 10 002. 133 3677 0 5

3676 0 10 002. 997 3676 0 1

3678 0 20 000. 000 3678 0 36

ПоказатьСвернуть
Заполнить форму текущей работой