Программирование на языке gpss и delphi

Автор: Пользователь скрыл имя, 15 Января 2013 в 22:15, курсовая работа

Описание работы

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

Работа содержит 1 файл

Мс.docx

— 208.28 Кб (Скачать)

На первом этапе разработки концептуальной модели построим структурную схему  модели, приведенную на рисунке 1.


 

 

 

 

 

 

 

 

Рисунок 1 – Структурная схема модели

 

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

На втором этапе разработки концептуальной модели для её формализации построим систему на базе Q – схем. В качестве элементов структуры  Q – схем будем рассматривать элементы трех типов: И – источник; Н – накопитель; К – каналы передачи пакетов. Структурная схема, сформированная на базе Q – схем, представлена на рисунке 2.

 








 

Рисунок 2 – Структурная схема модели на базе Q–схем

 

Источник И генерирует пакеты. К1-К4 – каналы передачи пакетов между пунктами, К5-К6 резервные каналы передачи. Накопители Н1 и Н2 имитируют емкость пунктов А и В соответственно, поступление пакетов в которые регулируют клапаны 1-2. В случае достижения емкости в пункте В порогового значения закрывается клапан 2 и подключаются резервные каналы К5 и К6.

 

2.4 Алгоритмизация модели и её  машинная реализация

 

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

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

На данном этапе нужно построить  блок-диаграмму модели. Изобразим  её на рисунке 3. По полученной блок-диаграмме  составим текст программы на языке имитационного моделирования GPSS.

Также необходимо построить общий алгоритм работы программы. Структурная схема данного алгоритма представлена на рисунке 4.


 



                      АВ


 

 



 


 

 

 

 

 

 

 

 




 


 

 

 

 



 

 

 

 


 

 


 





 

 

 

 

 

 




 

 

 


 

 



















 

Рисунок 3 – Блок-диаграмма GPSS-модели

 

 

 

 

 

 

 

 

 

 

Рисунок 4 – Общая структурная схема алгоритма работы программы

 

В цикле программы происходит создание потоков. Каждый такой поток представляет собой транзакт, который движется по модели. Учёт системного времени не ведется, происходят задержки потока на заданное время.

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

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

Отчёт работы программы, написанной на языке имитационного моделирования  GPSS, поместим в приложении Б. Исходные тексты программ, написанных на GPSS и общесистемной языке программирования, поместим в приложения А и В соответственно.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3 Реализация модели на общесистемном  языке программирования

3.1 Структура программы

 

Для реализации алгоритма моделирования на общесистемноv языке программирования была выбрана система объектно-ориентированного программирования Borland Delphi 7.0. Данный выбор обоснован простотой и малым временем, требующимся для разработки программного обеспечения в данной среде. Также немалую роль сыграл тот факт, что откомпилированные в ней приложения совместимы с семейством Microsoft Windows 9x и Microsoft Windows NT, а данные операционные системы широко распространены.

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

 

3.2 Описание диалога с пользователем

 

Исполняемый файл программы называется Project1.exe. При его запуске на экране появляется окно, показанное на рисунке 5.

 

 

Рисунок 5 – Основное окно программы

 

В левой части окна представлен текст поставленной задачи. Имеется возможность изменить входные значения, такие как максимальная длина очереди в пункте А, время генерации пакетов, и т.д.

В правой части окна представлено описание процесса моделирования.

При нажатии кнопки «Моделировать» на экране появляется окно, показанное на рисунке 6.

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

 

 

Рисунок 6 – Процесс моделирования

 

На рисунках 7 и 8 представлены результаты, полученные в ходе процесса моделирования при неизменных исходных входных данных.

 

Рисунок 7 – Результат моделирования (1).

 

Рисунок 8 – Результат моделирования (2).

 

3.3 Сравнение результатов

 

Теперь выполним несколько прогонов полученных программ, написанных на GPSS и общесистемном языке программирования, и средние результаты занесём в таблицу 1 и сравним.

Вероятность запуска аппаратуры вычислим по формуле

                 (1)

где К1 – количество транзактов, прошедших через резервную аппаратуру, а К – число пакетов, прошедших через систему.

 

Таблица 1 – Сравнение полученных результатов

Характеристика

Значение, полученное в программе

на GPSS

на Delphi

Количество пакетов, потерянных перед А

0

0

Число пакетов, прошедших через систему

500

500

Количество транзактов, прошедших через резервную аппаратуру

72

74

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

0,144

0,148


 

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

Следует заметить, что при данных входных величинах возможно переполнение буфера в пункте А и потеря пакетов, поэтому необходимо оптимизировать входные данные таким образом, чтобы все пакеты заходили в блок А.

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

Таким образом, разработанный нами алгоритм моделирования исходной системы  является работоспособным. Отличие результатов моделирования программ, написанных в GPSS и Borland Delphi, обусловлено неравномерностью распределение случайной величины.

 

 

 

 

 

 

Заключение

 

При разработке курсового проекта были рассмотрены основные определения и понятия моделирования систем, общие сведения о языке имитационного моделирования GPSS.

Кроме этого была спроектирована и реализована модель работы системы по передаче пакетов данных. 

В ходе выполнения курсового проекта были разработаны 2 алгоритма реализации модели и на их основе написаны программы на языке имитационного моделирования GPSS и в среде объектно-ориентированного программирования Borland Delphi.

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

Следует заметить, что решение поставленной задачи средствами GPSS занимает гораздо меньше времени, а следовательно может быть признано более оптимальным.

 

 

 

 

 

 

 

 

 

 

 

 

 

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

 

  1. Аляев Ю.А., Козлов О.А. Алгоритмизация и языки программирования Pascal, C++, Visual Basic: учебно-справочное пособие. – М.: Финансы и статистика, 2004. – 320с.
  2. Васильков Ю. В.. Компьютерные технологии вычислений в математическом моделировании М., «Финансы и статистика» 1999
  3. Воробьев Э. И. Моделирование и анализ сложных систем: Учеб. пособие. Воронеж: Воронеж. гос. техн. ун-т, 2005. 118с.
  4. Кормен Т., Лейзерсон Ч., Ривест Р Алгоритмы: построение и анализ. М., «МЦНМО», 1999.
  5. Самарский А.А., Михайлов А.П. Математическое моделирование: Идеи. Методы. Примеры. — М: Наука, 1997. — 320 с. — ISBN 5-9221-0120-X.
  6. Советов Б.Я., Яковлев С.А. Моделирование систем: Учеб. для вузов по спец. «Автоматизир. Системы обработки информ. и упр.». – 2-е изд., перераб. и доп.- М.: Высш. шк., 1998. – 319 с.: ил.
  7. Советов Б.Я., Яковлев С.А. Моделирование систем: Курсовое проектирование: Учеб. пособие для вузов по спец. АСУ. – М.: Высш. шк., 1988. – 135 с.: ил.
  8. Хомоненко А.Д. Гофман В.Э. Самоучитель Delphi. СПб: В-Петербург, 2005. – 576с.:ил.

 

 

 

 

 

 

 

 

Приложение А

(обязательное)

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

 

5 simulate

10 GENERATE 10,5,0,500

15 AB storage 20

20 BC storage 25

 

25 enter AB

30 Transfer .5,metAB1,metAB2

 

40 metAB1 seize AB1

41 leave AB

50 ASSIGN 1,1

60 ADVANCE 20

70 RELEASE AB1

80 Transfer,metBC

 

90 metAB2 SEIZE AB2

91 leave AB 

100 ASSIGN 1,2 

110 ADVANCE 20,5 

120 RELEASE  AB2

 

130 metBC enter BC

131 SAVEVALUE SAV+,1

140 TEST L X$SAV,20,RezervBC 

150 test E p1,1,metBC2

 

152 seize BC1

153 leave BC

170 ADVANCE 25,3 

180 savevalue countStandartMode+,1

182 SAVEVALUE SAV-,1

190 release BC1

200 terminate 1

 

210 metBC2 seize BC2

213 leave BC

220 ADVANCE 25

230 savevalue countStandartMode+,1

232 SAVEVALUE SAV-,1  

240 release BC2

250 terminate 1

 

260 RezervBC test E p1,1,metRBC2

261 seize RBC1

262 leave BC

270 ADVANCE 15

280 savevalue countRezervMode+,1 

282 SAVEVALUE SAV-,1

290 release RBC1

300 terminate 1

 

320 metRBC2 seize RBC2 

324 leave BC

340 ADVANCE 15

350 savevalue countRezervMode+,1 

352 SAVEVALUE SAV-,1

360 release RBC2

370 terminate 1

 

390 start 500

400 clear

410 start 500

420 clear

430 start 500

440 clear

 

 

 

 

 

Приложение Б

(справочное)

Отчёты программы, реализованной с помощью GPSS

 

 

              GPSS World Simulation Report - var4_2.151.2

 

 

                   Monday, May 30, 2011 03:56:09 

 

           START TIME           END TIME  BLOCKS  FACILITIES  STORAGES

                0.000           5730.267    48        6          2

 

 

              NAME                       VALUE 

          AB                          10000.000

          AB1                         10004.000

          AB2                         10006.000

          BC                          10001.000

          BC1                         10010.000

          BC2                         10012.000

          COUNTREZERVMODE             10015.000

          COUNTSTANDARTMODE           10011.000

          METAB1                          4.000

          METAB2                         10.000

          METBC                          15.000

          METBC2                         26.000

          METRBC2                        41.000

          RBC1                        10014.000

Информация о работе Программирование на языке gpss и delphi