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

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

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

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

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

Мс.docx

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

Введение

 

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

В данном курсовом проекте  нам необходимо спроектировать и  реализовать модель системы передачи пакетов данных. Для этого необходимо написать программы с использованием языка имитационного моделирования  GPSS и  любого общесистемного языка программирования. Мной была выбрана среда программирования Delphi 7.

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

 

 

 

 

 

 

 

 

 

 

 

 

.

 

1 Теоретическая часть

 

1.1 Общие сведения о  моделировании

 

Моделирование - исследование объектов познания на их моделях, построение и изучение моделей реально существующих предметов, процессов или явлений с целью получения объяснений этих явлений, а также для предсказания явлений, интересующих исследователя.

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

Процесс моделирования включает три элемента: субъект (исследователь), объект исследования и модель, определяющую (отражающую) отношения познающего субъекта и познаваемого объекта.

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

На втором этапе модель выступает как самостоятельный  объект исследования. Одной из форм такого исследования является проведение «модельных» экспериментов, при  которых сознательно изменяются условия функционирования модели и  систематизируются данные о ее «поведении». Конечным результатом этого этапа  является множество (совокупность) знаний о модели.

На третьем этапе осуществляется перенос знаний с модели на оригинал - формирование множества знаний. Одновременно происходит переход с «языка» модели на «язык» оригинала. Процесс переноса знаний проводится по определенным правилам. Знания о модели должны быть скорректированы с учетом тех свойств объекта-оригинала, которые не нашли отражения или были изменены при построении модели.

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

Моделирование является циклическим процессом. Это означает, что за первым четырехэтапным циклом может последовать второй, третий и т.д. При этом знания об исследуемом объекте расширяются и уточняются, а исходная модель постепенно совершенствуется. Недостатки, обнаруженные после первого цикла моделирования, обусловленные малым знанием объекта или ошибками в построении модели, можно исправить в последующих циклах [5].

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

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

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

Цель имитационного моделирования  состоит в воспроизведении поведения  исследуемой системы на основе результатов  анализа наиболее существенных взаимосвязей между ее элементами.

Имитационное моделирование  позволяет имитировать поведение  системы, во времени. Причём плюсом является то, что временем в модели можно  управлять: замедлять в случае с  быстропротекающими процессами и ускорять для моделирования систем с медленной  изменчивостью. Можно имитировать  поведение тех объектов, реальные эксперименты с которыми дороги, невозможны или опасны.

Имитация, как метод решения  нетривиальных задач, получила начальное  развитие в связи с созданием  ЭВМ в 1950х - 1960х годах [5].

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

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

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

 

1.2 Общие сведения о GPSS

 

Язык GPSS представляет собой интерпретирующую языковую систему, применяющуюся для  описания пространственного движения объектов. Такие динамические объекты  в языке GPSS называются транзактами и представляют собой элементы потока. В процессе имитации транзакты «создаются» и «уничтожаются». Функцию каждого из них можно представить как движение через модель с поочередным воздействием на ее блоки. Функциональный аппарат языка образуют блоки, описывающие логику модели, сообщая транзактам, куда двигаться и что делать дальше.

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

  1. верхний уровень, определяемый комбинацией основных функциональных объектов: устройств, памяти, ключей, очередей;
  2. средний уровень, представляемый схемой из типовых блоков, между которыми перемещаются транзакты;
  3. нижний уровень — уровень физической реализации языка GPSS в виде программ и наборов данных, составляющих основу моделирующей системы.

Объекты GPSS:

    1. Блоки. Разработчик конструирует модель из блоков, прибегая, как правило, к наглядной форме ее отображения в виде блок-схемы. Для удобства графического представления модели каждый блок GPSS имеет принятое стандартное обозначение. Построенная схема является одновременно программой на языке GPSS. Для ее ввода в ЭВМ необходимо последовательность блоков представить в виде списка операций, добавив к названиям блоков требуемые операнды. Каждый блок GPSS имеет входы и выходы, с помощью которых осуществляется их связь в модели. Существуют два особых блока: GENERATE, имеющий только выход, и TERMINATE, имеющий только вход. Через блок GENERATE транзакты вводятся в модель. Блок TERMINATE удаляет транзакты из модели. Любую модель на языке GPSS можно представить в виде совокупности блоков.
    2. Транзакты. Транзакты, или сообщения, являются абстрактными подвижными элементами, которые могут моделировать различные объекты реального мира: сообщения, программы, транспортные средства, людей и т.п. Перемещаясь между блоками модели, транзакты вызывают (и испытывают) различные действия. Возможны их задержки в некоторых точках модели, изменения маршрутов и направлений движения, расщепление транзактов на несколько копий и т.п. С каждым транзактом связан упорядоченный набор данных.
    3. Списки. Списки относятся к элементам внутренней организации системы GPSS. Они представляют собой структуры данных, в которых размещается полная информация о транзактах. С помощью списков обеспечивается внутренняя логика работы моделирующей системы. Список будущих событий содержит транзакты, которые смогут начать движение в модели в будущие моменты времени. Это те транзакты, для которых моменты начала движения определены в блоках GENERATE и ADVANCE. В список текущих событий входят транзакты, которые должны перемещаться в модели в текущий момент модельного времени. Если при этом транзакт входит в блок ADVANCE с ненулевым временем задержки, то он перемещается в список будущих событий. В список прерываний помещаются транзакты, обслуживание которых прервано блоком PREEMPT.
    4. Устройства. Устройства моделируют объекты, в которых может происходить обработка транзактов. Как правило, она связана с затратами времени. Особенность устройств состоит в том, что каждое из них в данный момент времени может быть занято лишь одним транзактом.
    5. Логические ключи. Для представления в модели коммутируемых объектов с двумя состояниями (включено - выключено) используют логические ключи, моделируемые блоками LOGIC и GATE.
    6. Очереди. Транзакты в процессе движения могут задерживаться перед блоками, вход в которые в данных условиях невозможен. При поступлении транзактов на вход задерживающих блоков образуются очереди.
    7. Таблицы. Для сбора статистических данных и их представления используют таблицы. Занесение информации в таблицу осуществляется блоком TABULATE в момент входа очередного транзакта в этот блок.
    8. Ячейки. Для записи в процессе моделирования текущих значений СЧА используют ячейки.
    9. Функции и переменные. Функции служат для отображения  зависимостей  между двумя СЧА [7].

 

 

2 Разработка модели и алгоритма функционирования системы

2.1 Постановка задачи для машинного моделирования

 

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

Система передачи данных обеспечивает передачу пакетов данных из пункта А в пункт С через транзитный пункт В. В пункт А пакеты поступают через 10 ± 5 мс. Здесь они буферизуются в накопителе ёмкостью 20 пакетов и передаются по любой из двух линий АВ1 - за время 20 мс или АВ2 - за время 20 ± 5 мс. В пункте В они снова буферизуются в накопителе, ёмкостью 25 пакетов и далее передаются по линиям ВС1 (за 25 ± 3 мс) и ВС2 (за 25 мс). Причём пакеты из АВ1 поступают в ВС1, а из АВ2 - в ВС2.

Чтобы не было переполнения накопителя, в пункте В вводится пороговое значение его ёмкости - 20 пакетов. При достижении очередью порогового значения происходит подключение резервной аппаратуры и время передачи снижается для линий ВС1 и ВС2 до 15 мс. Смоделировать прохождение через систему передачи данных 500 пакетов. Определить вероятность подключения резервной аппаратуры и характеристики очереди пакетов в пункте В. В случае возможности его переполнения определить необходимое для нормальной работы пороговое значение ёмкости накопителя.

 

    1.   Определение параметров и переменных

 

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

Экзогенные (независимые) переменные – вводятся извне, это исходная информация, они задаются до начала построения модели.

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

Эндогенные (зависимые) переменные – формируются внутри модели, являются результатом её решения, определяются в ходе расчётов по модели.

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

 

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

 

Концептуальная  модель системы – это формализованный  замысел модели, реализованный в  виде конкретной формализованной схемы, то есть адекватная математическая модель системы, построенная на основе её описания.

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