Автор работы: Пользователь скрыл имя, 07 Июня 2013 в 12:25, курсовая работа
В последние годы основные достижения в различных областях науки и техники неразрывно связаны с процессом совершенствования ЭВМ. Сфера эксплуатации ЭВМ — бурно развивающаяся отрасль человеческой практики, стимулирующая развитие новых теоретических и прикладных направлений. Ресурсы современной информационно-вычислительной техники дают возможность ставить и решать математические задачи такой сложности, которые в недавнем прошлом казались нереализуемыми, например моделирование больших систем.
Введение 4
1 Постановка задачи 6
2 Составление структурной схемы системы. Анализ задачи 7
2.1 Анализ задачи 7
2.2 Составление блок-диаграммы GPSS 8
2.3 Оформление модели в GPSS 10
3 Текст программы на языке GPSS 12
4 Стандартный отчет GPSS о работе системы 13
5 Выводы о работе модели 15
6 Эксперименты с моделью 16
6.1 Эксперимент первый 16
6.2 Эксперимент второй 18
Заключение 21
Список использованных источников 22
Содержание
В последние годы основные достижения в различных областях науки и техники неразрывно связаны с процессом совершенствования ЭВМ. Сфера эксплуатации ЭВМ — бурно развивающаяся отрасль человеческой практики, стимулирующая развитие новых теоретических и прикладных направлений. Ресурсы современной информационно-вычислительной техники дают возможность ставить и решать математические задачи такой сложности, которые в недавнем прошлом казались нереализуемыми, например моделирование больших систем.
Моделирование является основным методом исследований во всех областях знаний и научно обоснованным методом оценок характеристик сложных систем, используемым для принятия решений в различных сферах инженерной деятельности. Существующие и проектируемые системы можно эффективно исследовать с помощью математических моделей (аналитических и имитационных), реализуемых на современных ЭВМ, которые в этом случае выступают в качестве инструмента экспериментатора с моделью системы.
В мире информационных технологий имитационное моделирование переживает второе рождение. И это в первую очередь связано с появлением в 2000 году мощного программного продукта фирмы Minuteman Software – GPSS World (GPSSW – General Purpose System Simulation World – Мировая общецелевая система моделирования), разработанного для ОС Windows. Этот программный продукт вобрал в себя весь арсенал новейших информационных технологий. Он включает развитые графические оболочки для создания моделей и интерпретации выходных результатов моделирования, мультимедийные средства и видео, объектно-ориентированное программирование и др. В основу системы GPSS World положен язык имитационного моделирования GPSS (General Purpose System Simulation – Общецелевая система моделирования), разработанный профессором Гордоном чуть более 40 лет назад. В такой бурно развивающейся области, как программное обеспечение, только небольшое количество языков программирования достигло подобного почтенного возраста. Долгожительство языка GPSS объясняется многими причинами:
Система GPSS World – мощная универсальная среда моделирования как дискретных, так и непрерывных процессов, предназначенная для профессионального моделирования самых разнообразных процессов и систем. Эта система явилась следующим шагом развития системы GPSS/PC (1984 год), ориентированной на DOS. Обе системы разработаны специалистами фирмы Minuteman Software (основана в 1982 году) под руководством Спрингера Кокса. Сначала система GPSS World появилась в 1994 году с ориентацией на OS/2 фирмы IBM, и только в 2000 году она была реализована под ОС Windows фирмы Microsoft.
В GPSS World появились дополнительные возможности, вот основные из них:
Система GPSSW имеет новый высокоскоростной транслятор, работающий в сотни раз быстрее его предшественников. Для быстрого исправления ошибок используется полноэкранный текстовый редактор.
Система включает большое число различных типов окон, упрощающих просмотр и анализ объектов модели. Дружественный интерфейс облегчает работу с системой. В ней имеется библиотека распределений вероятностей, которые можно широко использовать в процессе моделирования. Кроме того, есть библиотека процедур, обеспечивающая манипуляции со строковыми данными и позволяющая выполнить расчеты и использовать распределения вероятности.
Использование системы моделирования GPSS World не только значительно ускоряет процесс моделирования и исследования самых разнообразных систем массового обслуживания и непрерывных процессов, но и позволяет проводить оптимизационные эксперименты.
В системе передачи данных осуществляется обмен пакетами данных между пунктами А и В по дуплексному каналу связи. Пакеты поступают в пункты системы от абонентов с интервалами времени между ними 8 ± 3 мс в пункт А и 6 ± 2 мс в пункт В. Передача пакета занимает 10 мс. В пунктах имеются буферные регистры, которые могут хранить два пакета (включая передаваемый). В случае прихода пакета в момент занятости регистров пунктам системы предоставляется выход на спутниковую полудуплексную линию связи, которая осуществляет передачу пакетов данных за 10 ± 5 мс. При занятости спутниковой линии пакет получает отказ.
Смоделировать обмен информацией в системе передачи данных в течение 1 мин. Определить частоту вызовов спутниковой линии и ее загрузку. В случае возможности отказов определить необходимый для безотказной работы системы объем буферных регистров.
Структурная схема отображает общий вид модели, то есть количество источников требований, обслуживающих каналов, очередей и способы их взаимодействия друг с другом. Кроме того, в структурной схеме указываются в случае их наличия потери или, другими словами, те требования, которые в силу каких-то особых условий изменили маршрут своего следования или вообще ушли из модели необслуженными.
Структурная схема данной задачи состоит из двух источников требований, имитирующих поступление сообщений из пункта А в пункт В и обратно, трех одноканальных устройств, два из которых изображают дуплексные каналы связи, а третий – канал, обслуживающий требования, если два других канала заняты. Кроме того, в каждом канале связи имеются буферы для хранения поступающих сообщений.
Структурная схема системы отображена на рисунке 1.
Рисунок 1 – Структурная схема системы
2.1 Анализ задачи
Из условия задачи можно описать данную систему как совокупность трех одноканальных устройств.
Одноканальное устройство имеет:
ОКУ характеризуются двумя
Поскольку ОКУ в модели может быть много, для различия им дают символические имена. Имена образуются так же, как и имена блоков.
При моделировании возможны следующие режимы организации функционирования ОКУ:
2.2 Составление блок-диаграммы
Модели систем на GPSS могут быть первично описаны в виде блок-диаграмм. Блок-диаграмма представляет собой набор символов с характерными очертанием блоков, соединенных между собой линиями. Вид каждого из блоков стандартен. Модель строится следующим образом. Из допустимого множества блоков выбирают необходимые и далее выстраивают их в диаграмму для того, чтобы в процессе функционирования модели они как бы взаимодействовали друг с другом. Использование блоков при построении моделей зависит от логических схем работы реальных систем, моделируемых на ЭВМ. При этом отдельные элементы модели и модель в целом имеют достаточно различимое подобие. Оно может быть также усилено разработчиком за счет более продуманного на этапе разработки разделения исследуемого объекта и модели на сегменты.
Конфигурация блок-диаграммы отражает направления, по которым происходит движение перемещающихся элементов – транзактов. Работа модели заключается в перемещении транзактов от блоков к блокам.
В самом
начале моделирования в модели нет
ни одного транзакта. В процессе моделирования
транзакты входят в модель в определенные
моменты времени в соответствии
с теми логическими потребностями,
которые возникают в
Блок-диаграмма системы показана на рисунке 2.
Рисунок 2 –Блок-диаграмма системы
2.3 Оформление модели в GPSS
После того как блок-диаграмма построена, она должна быть записана в форме, удобной для создания объекта «модель». Для этого информация об объектах GPSS записывается в виде последовательности операторов.
Описание процесса поступления требований. Транзакты поступают в модель через блок GENERATE. В данной задаче требования из канала А поступают каждые 8 ± 3 мс. В GPSS это следует описать таким образом:
GENERATE 8,3.
Каждое из поступивших требований должно занять очередь. Для этого используется блок QUEUE. По условию, буфер может хранить одновременно только два пакета, включая передаваемый. Если буфер заполнен, пакеты уходят на спутниковый канал передачи. Для организации проверки очереди на наличие свободных мест предназначен блок TEST. В этом блоке следует сравнить длину очереди buff1 c единицей, и если она меньше единицы, занять очередь. В противном случае транзакт уходит на метку met1. Поэтому в данной системе занятие очереди требованием будет выглядеть следующим образом:
TEST L Q$buff1,1,met1
QUEUE buff1.
Имитация обслуживания требования. После того, как требование дождалось своей очереди, оно должно занять устройство, которое будет его обслуживать. Для занятия устройства в GPSS используется блок SEIZE.
В данной задаче устройством является передающий канал, поэтому занятие устройства следует описать так:
SEIZE canal_ab
Заняв устройство, транзакт должен освободить очередь, для чего используется блок DEPART, имеющий тот же самый формат записи, что и блок QUEUE.
DEPART buff1
Непосредственное обслуживание транзакта осуществляется блоком ADVANCE, имитирующим задержку транзакта в устройстве на некоторый промежуток времени. В задаче устройство обслуживает транзакт ровно 10 мс, и на языке GPSS это будет выглядеть так:
ADVANCE 10.
Далее транзакт освобождает устройство, что имитируется блоком RELEASE, имеющим такие же параметры, как и блок SEIZE, и покидает систему. Данные действия записываются следующим образом:
RELEASE canal_ab
TERMINATE.
Блок TERMINATE имитирует удаление транзакта из модели и уменьшает счетчик завершений на число, указанное в операнде А. В данном случае значение операнда А равно нулю.
Процесс обслуживания транзактов на втором устройстве происходит аналогично и выглядит таким образом:
GENERATE 6,2
TEST L Q$buff2,1,met1
QUEUE buff2
SEIZE canal_ba
DEPART buff2
ADVANCE 10
RELEASE canal_ba
TERMINATE
Обслуживание требований, изменивших направление. Если буфер какого-либо из каналов переполнен, по условию пакет переходит на обслуживание на спутниковую линию. В случае же ее занятости, пакет получает отказ. Проверка занятости устройства осуществляется блоком GATE. В условиях данной задачи следует проверить устройство на неиспользуемость, поэтому блок будет выглядеть так:
GATE NU sputnik,met2.
Проверив устройство sputnik на неиспользуемость и получив отрицательный ответ, транзакт последует на метку met2, которая будет находиться на дополнительном блоке TERMINATE. То есть если устройство занято, транзакт покинет систему.
Дальнейшее обслуживание на спутниковом канале имеет тот же вид, что и на каналах дуплексной связи:
SEIZE sputnik
ADVANCE 10,5
RELEASE sputnik
TERMINATE
Известно, что система должна отработать 1 минуты. Модельное время должно быть в одной и той же единице измерения, поэтому при переводе в миллисекунды система работает 60000 мс. Для организации таймера создается следующее:
GENERATE 60000
TERMINATE 1.
Система закончит работу, когда счетчик завершений станет равным нулю.
GENERATE 8,3
TEST L Q$buff1,1,met1
QUEUE buff1
SEIZE canal_ab
DEPART buff1
ADVANCE 10
RELEASE canal_ab
TERMINATE
GENERATE 6,2
TEST L Q$buff2,1,met1
QUEUE buff2
SEIZE canal_ba
DEPART buff2
ADVANCE 10
RELEASE canal_ba
TERMINATE
met1 GATE NU sputnik,met2
SEIZE sputnik
ADVANCE 10,5
RELEASE sputnik
TERMINATE
met2 TERMINATE
GENERATE 60000