Смекни!
smekni.com

Создание имитационной модели (стр. 1 из 2)

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

МЕЖДУНАРОДНЫЙ ИНСТИТУТ КОМПЬЮТЕРНЫХ ТЕХНОЛОГИЙ

ФАКУЛЬТЕТ ИНФОРМАЦИОННЫХ СИСТЕМ

Кафедра информатики и вычислительной техники

КУРСОВОЙ ПРОЕКТ

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

Тема: «Создание имитационной модели»

2010


МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

МЕЖДУНАРОДНЫЙ ИНСТИТУТ КОМПЬЮТЕРНЫХ ТЕХНОЛОГИЙ

ФАКУЛЬТЕТ ИНФОРМАЦИОННЫХ СИСТЕМ

Кафедра информатики и вычислительной техники

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

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

Вариант 19

Система автоматизированного проектирования состоит из ЭВМ и трёх терминалов. Каждый проектировщик формирует задание на расчет в интерактивном режиме. Набор строки занимает 10±5 с. Получение ответа на строку требует 3 с работы ЭВМ и 5 с работы терминала. После набора 10 строк задание считается сформированным и поступает на решение, при этом в течение 10±3 с ЭВМ прекращает выработку ответов на вводимые строки. Вывод результата требует 8 с работы терминала. Анализ результата занимает у проектировщика 30 с, после чего цикл повторяется.

Смоделировать работу системы в течении 6 часов. Определить время простоя проектировщика из-за занятости ЭВМ и коэффициент загрузки ЭВМ.

2010


Содержание

Введение

1. Функциональная схема модели

2. Блок-диаграмма модели

3. Программа модели

4. Отчет о результатах моделирования

5. Вывод

Заключение

Список литературы


Введение

Моделирование − это способ исследования реального процесса или объекта с помощью его заменителя (модели). Модель должна отражать те свойства объекта или процесса, которые важны для исследования.

Моделирование на ЭВМ представляет собой создание программы, описывающей поведение модели и позволяющей увидеть результаты исследования.

Одним из наиболее эффективных и распространенных языков моделирования сложных дискретных систем является язык GPSS. Он может быть использован для моделирования систем, формализуемых в виде систем массового обслуживания (СМО). В качестве объектов языка используются аналоги таких стандартных компонентов СМО, как заявки, обслуживающие приборы, очереди и т.п. На ПК типа IBM/PC язык GPSS реализован в рамках пакета прикладных программ «GPSS PC» и «GPSS World».

Данный курсовой проект выполнен с помощью программы GPSS World 4.3.5.0


1. Функциональная схема модели

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

2. Блок-диаграмма модели

NT − номер транзакта, соответствует номеру оператора и терминала

PR − приоритет транзакта (разный для строки и для задачи)

OBS − время обслуживания

DOBS − модификатор времени обслуживания

K1 − логический переключатель, разрешающий прохождение транзакта для оператора 1 (K2, K3 – для оператора 2, 3 соответственно)

OP1 − оператор 1 (OP2, OP3 − операторы 2, 3 соответственно)

T1 − терминал 1 (T2, T3 − терминалы 2, 3 соответственно)

E1 − ЭВМ

SB1 − счётчик строк, набранных оператором 1 (SB2, SB3 − то же для операторов 2, 3 соответственно)

3. Программа модели

GENERATE 1,,,1

ASSIGNNT,0; номер проектировщика или терминала

SPLIT 2,MET2,NT; размножили с индивидуальными номерами

; начало для оператора 1

MET1SPLIT 1,MET11; начало формирования строки

LOGICRK1; K1=0 - к набору новой строки не готов

GATELSK1; ожидание готовности оператора

TRANSFER ,MET1

MET11SEIZE OP1; наборстрокиоператором

ADVANCE 10,5

RELEASEOP1

ASSIGNOBS,3; время ответа от ЭВМ

ASSIGNDOBS,0; отклонение времени ответа

TRANSFER ,EVM; отсылка строки на ЭВМ

MET12SEIZET1; ответ терминала на строку

ADVANCE 5

RELEASE T1

SAVEVALUESB1+,1; счётчик строк

TESTNEX$SB1,10,MET13; проверка готовности задания

LOGICSK1; разрешение набора строки

MET13ASSEMBLE 10; накапливание 10 строк

SAVEVALUESB1,0; обнуление счётчика строк

PRIORITY 1; приоритет задачи выше, чем у строки

ASSIGN OBS,10

ASSIGN DOBS,3

TRANSFER ,EVM; отсылка задачи на ЭВМ

MET14SEIZET1; выдача результата терминалом

ADVANCE 8

RELEASET1

SEIZEOP1; анализ результата оператором

ADVANCE 30

RELEASE OP1

LOGICSK1; разрешение набора строки

TERMINATE; конец обработки задачи

; начало обработки на ЭВМ

EVMPREEMPTE1,PR,,OBS; обработка на ЭВМ строки или задачи

ADVANCE P$OBS,P$DOBS

RETURN E1

TESTEPR,0,OBR10; возврат строк (задачи идут к OBR10)

TESTEP$NT,1,OBR02

TRANSFER ,MET12; возврат строки терминалу 1

OBR02TESTEP$NT,2,OBR03

TRANSFER ,MET22; возврат строки терминалу 2

OBR03TRANSFER,MET32; возврат строки терминалу 3

OBR10TESTEP$NT,1,OBR12; возврат решённых задач

TRANSFER ,MET14; возврат решения терминалу 1

OBR12TESTEP$NT,2,OBR13

TRANSFER ,MET24; возврат решения терминалу 2

OBR13TRANSFER ,MET34; возврат решения терминалу 3

; конец обработки на ЭВМ

MET2TESTEP$NT,2,MET3; пропустить 2-й транзакт, 3-й - на MET3

; начало для оператора 2

MET20SPLIT 1,MET21; начало формирования строк

LOGICRK2; K2=0 - к набору новой строки не готов

GATELSK2; ожидание готовности оператора

TRANSFER ,MET20

MET21SEIZE OP2; наборстрокиоператором

ADVANCE 10,5

RELEASEOP2

ASSIGNOBS,3; время ответа от ЭВМ

ASSIGNDOBS,0; отклонение времени ответа

TRANSFER ,EVM; отсылка строки на ЭВМ

MET22SEIZET2; ответ терминала на строку

ADVANCE 5

RELEASE T2

SAVEVALUESB2+,1; счётчик строк

TESTNEX$SB2,10,MET23; проверка готовности задания

LOGICSK2; разрешение набора строки

MET23ASSEMBLE 10; накапливание 10 строк

SAVEVALUESB2,0; обнуление счётчика строк

PRIORITY 1; приоритет задачи выше, чем у строки

ASSIGN OBS,10

ASSIGN DOBS,3

TRANSFER ,EVM; отсылка задачи на ЭВМ

MET24SEIZET2; выдача результата терминалом

ADVANCE 8

RELEASET2

SEIZEOP2; анализ результата оператором

ADVANCE 30

RELEASE OP2

LOGICSK2; разрешение набора строки

TERMINATE; конец обработки задачи; начало для оператора 3

MET3SPLIT 1,MET31; начало формирования строк

LOGICRK3; K3=0 - к набору новой строки не готов

GATELSK3; ожидание готовности оператора

TRANSFER ,MET3

MET31SEIZE OP3; наборстрокиоператором

ADVANCE 10,5

RELEASEOP3

ASSIGNOBS,3; время ответа от ЭВМ

ASSIGNDOBS,0; отклонение времени ответа

TRANSFER ,EVM; отсылка строки на ЭВМ

MET32SEIZET3; ответ терминала на строку

ADVANCE 5

RELEASE T3

SAVEVALUESB3+,1; счётчик строк

TESTNEX$SB3,10,MET33; проверка готовности задания

LOGICSK3; разрешение набора строки

MET33ASSEMBLE 10; накапливание 10 строк

SAVEVALUESB3,0; обнуление счётчика строк

PRIORITY 1; приоритет задачи выше, чем у строки

ASSIGN OBS,10

ASSIGN DOBS,3

TRANSFER ,EVM; отсылка задачи на ЭВМ

MET34SEIZET3; выдача результата терминалом

ADVANCE 8

RELEASET3

SEIZEOP3; анализ результата оператором

ADVANCE 30

RELEASE OP3

LOGICSK3; разрешение набора строки

TERMINATE; конец обработки задачи

GENERATE 21600; 6 часов

TERMINATE 1

START 1

4. Отчет о результатах моделирования

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

Требуемые данные о работе проектировщиков и ЭВМ можно получить из второй таблицы (FACILITY). Видно, что 1-й оператор был занят в течение 0.531 времени моделирования, 2-й − в течение 0.539, 3-й − в течении 0.538 , а ЭВМ работала 0.500 времени моделирования.

Время простоя проектировщиков определим так: Тпр=6*(1-Траб)

1-й: 2,814 ч

2-й: 2,776 ч

3-й: 2,772 ч

Коэффициент загрузки ЭВМ: 0,5

GPSS World Simulation Report - Kursovoj.36.5

Thursday, February 04, 2010 09:24:05

START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 21600.000 110 7 0

LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

1 GENERATE 1 0 0

2 ASSIGN 1 0 0

3 SPLIT 1 0 0

MET1 4 SPLIT 893 0 0

5 LOGIC 893 1 0

6 GATE 892 0 0

7 TRANSFER 892 0 0

MET11 8 SEIZE 893 0 0

9 ADVANCE 893 0 0

10 RELEASE 893 0 0

11 ASSIGN 893 0 0

12 ASSIGN 893 0 0

13 TRANSFER 893 1 0

MET12 14 SEIZE 892 0 0

15 ADVANCE 892 0 0

16 RELEASE 892 0 0

17 SAVEVALUE 892 0 0

18 TEST 892 0 0

19 LOGIC 803 0 0

MET13 20 ASSEMBLE 892 1 0

21 SAVEVALUE 89 0 0

22 PRIORITY 89 0 0

23 ASSIGN 89 0 0

24 ASSIGN 89 0 0

25 TRANSFER 89 0 0

MET14 26 SEIZE 89 0 0

27 ADVANCE 89 0 0

28 RELEASE 89 0 0

29 SEIZE 89 0 0

30 ADVANCE 89 0 0

31 RELEASE 89 0 0

32 LOGIC 89 0 0

33 TERMINATE 89 0 0

EVM 34 PREEMPT 2954 0 0

35 ADVANCE 2954 1 0

36 RETURN 2953 0 0

37 TEST 2953 0 0

38 TEST 2686 0 0

39 TRANSFER 892 0 0

OBR02 40 TEST 1794 0 0

41 TRANSFER 894 0 0

OBR03 42 TRANSFER 900 0 0

OBR10 43 TEST 267 0 0

44 TRANSFER 89 0 0

OBR12 45 TEST 178 0 0

46 TRANSFER 89 0 0

OBR13 47 TRANSFER 89 0 0

MET2 48 TEST 2 0 0

MET20 49 SPLIT 895 0 0

50 LOGIC 895 1 0

51 GATE 894 0 0

52 TRANSFER 894 0 0

MET21 53 SEIZE 895 0 0

54 ADVANCE 895 1 0

55 RELEASE 894 0 0

56 ASSIGN 894 0 0

57 ASSIGN 894 0 0

58 TRANSFER 894 0 0

MET22 59 SEIZE 894 0 0

60 ADVANCE 894 0 0

61 RELEASE 894 0 0

62 SAVEVALUE 894 0 0

63 TEST 894 0 0

64 LOGIC 805 0 0

MET23 65 ASSEMBLE 894 1 0

66 SAVEVALUE 89 0 0

67 PRIORITY 89 0 0

68 ASSIGN 89 0 0

69 ASSIGN 89 0 0

70 TRANSFER 89 0 0

MET24 71 SEIZE 89 0 0

72 ADVANCE 89 0 0

73 RELEASE 89 0 0

74 SEIZE 89 0 0

75 ADVANCE 89 0 0

76 RELEASE 89 0 0

77 LOGIC 89 0 0

78 TERMINATE 89 0 0

MET3 79 SPLIT 900 0 0

80 LOGIC 900 1 0

81 GATE 899 0 0

82 TRANSFER 899 0 0

MET31 83 SEIZE 900 0 0

84 ADVANCE 900 0 0

85 RELEASE 900 0 0

86 ASSIGN 900 0 0

87 ASSIGN 900 0 0

88 TRANSFER 900 0 0

MET32 89 SEIZE 900 0 0

90 ADVANCE 900 0 0

91 RELEASE 900 0 0

92 SAVEVALUE 900 0 0

93 TEST 900 0 0

94 LOGIC 810 0 0

MET33 95 ASSEMBLE 900 0 0

96 SAVEVALUE 90 0 0

97 PRIORITY 90 0 0

98 ASSIGN 90 0 0

99 ASSIGN 90 0 0

100 TRANSFER 90 0 0

MET34 101 SEIZE 89 0 0

102 ADVANCE 89 0 0

103 RELEASE 89 0 0

104 SEIZE 89 0 0

105 ADVANCE 89 0 0

106 RELEASE 89 0 0

107 LOGIC 89 0 0

108 TERMINATE 89 0 0

109 GENERATE 1 0 0

110 TERMINATE 1 0 0

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

OP1 982 0.531 11.673 1 0 0 0 0 0

OP2 984 0.539 11.824 1 2692 0 0 0 0

OP3 989 0.538 11.748 1 0 0 0 0 0

E1 2954 0.500 3.654 1 2665 0 0 0 1

T2 983 0.240 5.272 1 0 0 0 0 0

T1 981 0.239 5.272 1 0 0 0 0 0

T3 989 0.241 5.270 1 0 0 0 0 0


5. Вывод

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

1)Увеличением производительности ЭВМ. Производительность повысится за счёт сокращения времени простоя проектировщиков.