Исследование систем управления методами имитационного моделирования

Автор работы: Пользователь скрыл имя, 10 Декабря 2013 в 21:29, курсовая работа

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

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

Файлы: 1 файл

Курсач Варжапетян.doc

— 125.00 Кб (Скачать файл)

 

 

Введение

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

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

Для создания таких моделей  возможно использование как традиционных (так называемых универсальных языков программирования – УЯП), так и  специализированных программных средств (языков имитационного моделирования – ЯИМ).

Специализированные языки  имитационного моделирования по некоторым показателям превосходят  УЯП. Их достоинства:

    • значительно меньшие размеры программы, содержащей модель;
    • идеологическое соответствие используемого средства поставленной цели;
    • наличие специальных средств для обеспечения независимости случайных величин, генерируемых внутри программы;
    • наличие специальных средств для отладки модели;
    • относительная простота построения модели (по сравнению с УЯП).

Существует несколько  ЯИМ, приспособленных к решению задач, возникающих при имитационном моделировании человеко-машинных систем: наиболее известны такие языки, как GPSS, SIMSCRIPT и SIMULA. Язык GPSS обладает преимуществом перед другими распространенными языками. Его особая привлекательность обуславливается тем, что он наиболее прост в применении. Наиболее эффективной версией из текстово-ориентированных версий GPSS является GPSS/H.

 

Системы массового обслуживания. Классификация. Основные определения

 

Система массового обслуживания (СМО) — система, которая производит обслуживание поступающих в неё требований. Обслуживание требований в СМО производится обслуживающими приборами. Классическая СМО содержит от одного до бесконечного числа приборов. В зависимости от наличия возможности ожидания поступающими требованиями начала обслуживания СМО подразделяются на:

 системы с потерями, в которых требования, не нашедшие в момент поступления ни одного свободного прибора, теряются;

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

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

Выбор требования из очереди  на обслуживание производится с помощью  так называемой дисциплины обслуживания. Их примерами являются FCFS/FIFO (пришедший  первым обслуживается первым), LCFS/LIFO (пришедший последним обслуживается первым), random  (англ.)(случайный выбор). В системах с ожиданием накопитель в общем случае может иметь сложную структуру.

Основные понятия СМО

Требование (заявка) —  запрос на обслуживание.

Входящий поток требований — совокупность требований, поступающих в СМО.

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

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

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

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

 

2. Средство машинного моделирования GPSS/H

Язык имитационного  моделирования GPSS (General Purpose Simulating System). Основными понятиями языка GPSS являются транзакт, блок и оператор. Транзакт GPSS - это динамический объект, под которым может подразумеваться клиент, требование, вызов или заявка на обслуживание прибором обслуживания. То есть основное назначение GPSS - это моделирование систем массового обслуживания, хотя наличие дополнительных встроенных средств позволяет моделировать и некоторые другие системы (например, распределение ресурсов между потребителями). Транзакты в GPSS могут создаваться (вводиться), уничтожаться (выводиться), задерживаться, размножаться, сливаться, накапливаться и т. д. Блок GPSS представляет собой некоторый самостоятельный элемент моделируемой системы. Каждый блок реализует одну или несколько операций над транзактом, группой транзактов или параметрами транзактов, а совокупность блоков составляет моделирующую программу. Таким образом, GPSS имеет блочную структуру и может быть легко приспособлен и для структурно-функционального моделирования не очень сложных систем.

Системы ПО на основе языка GPSS:

  • GPSS/PC (разработка Minuteman Software)
  • GPSS World (разработка Minuteman Software)
  • GPSS/H (разработка Wolverine Software)
  • Micro-GPSS (разработка Ингольфа Сталла)
  • WebGPSS (разработка Ингольфа Сталла)

GPSS/H (Wolverine Software)  

 После того, как  IBM перестала поддерживать GPSS V, наиболее  значимой версией GPSS, разработанной независимой программной фирмой стал GPSS/H. Автором GPSS/H является Дж. Хенриксен. Хенриксен в 1976 году образовал фирму Wolverine Software. Первой разработкой фирмы стал GPSS/H в 1978 году. GPSS/H полностью совместим сверху вниз с GPSS V, но модели, написанные на GPSS/H, выполняются значительно быстрее за счет исключения режима интерпретации.

Последняя версия GPSS, названная GPSS/H, выпущена фирмой Wolverine Software Corporation в 1996 году и еще не нашла широкого применения в России. В то же время ее отличает от старых версий множество новых положительных свойств и возможностей. Некоторые существенные достоинства:

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

 

3. Постановка задачи (Задание 3, вариант А)

Согласно заданию необходимо промоделировать работу банковских окон (в моей модели их два. Клиенты  приходят каждые 2 ± 1 минуты, чтобы обслужиться в одном из окон. Время обслуживания  опытным оператором  равно  2,5±1,5 минуты. В другом окне  работает менее опытный сотрудник, время обслуживания в этом окне 4 ± 2 минуты. Исходя из этого, вероятность быть обслуженным 40% в окне, где работает стажер (окно №1).

Зададимся параметрами:

Условное обозначение

Значения

G (период генерации)

2 ± 1

О1 (время обслуживания в первом окне)

4 ± 2

О2 (время обслуживания во втором окне)

2,5±1,5

V (вес терминирования)

1

С (число стартов)

100


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Блок-схема движения транзактов:


Приходит первый клиент

 

 

Вероятность прихода посетителя

к одному из окон

 

 

Если окно занято, переход

к другому окну

 

Клиент попадает в очередь в  первое окно

 

 

 

Начало обслуживания

 

 

Выход из очереди

 

 

 

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

 

 

Завершение обслуживания

 

 

Если окно занято переход 

к другому окну

 

Клиент попадает в очередь во второе окно

 

 

Начало обслуживания

 

 

Выход из очереди

 

 

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

 

 

Завершение обслуживания

 

 

 

Клиент покидает банк 
4. Представление исходной модели

4.1. Модельный файл

* Модуль описания

       SIMU               

* Модуль исполнения

       GENE      2,1                            ---  Каждые две минуты(+/- 1 минута) приходит

                                                               человек (генерируется транзакт)

       TRAN      .400,,O1                   --- С вероятностью 40% он попадет в первое окно

       TRAN      BOTH,O1,O2          --- Условный переход: если первое окно занято –  

                                                              человек идет во второе и  наоборот

       QUEUE     OCHER1               --- Человек попал в очередь в первое окно

       SEIZE     OKNO1                    --- Началось обслуживание  в первом окне

       DEPART    OCHER1              --- Человек покинул очередь в первое окно

       ADVA      4,2                          --- Время обслуживания в окне 1 с задержкой от 2

                                                            до 6 минут

       RELEASE   OKNO1               --- Обслуживание в первом окне завершилось

       TRAN      BOTH,,O1              --- Если второе окно занято клиент переходит

                                                            К первому

       QUEUE     OCHER2               --- Клиент попал в очередь второго окна

       SEIZE     OKNO2                    --- Началось обслуживание  во втором окне

       DEPART    OCHER2              --- Человек покинул очередь во второе окно

       ADVA      2.5,1.5                     --- Время обслуживания в окне 2 с задержкой от 

                                                             минуты до четырех минут

       RELEASE   OKNO2               --- Обслуживание во втором окне завершилось

       TERM      1                              --- Транзакт с весом один покидает модуль

* Модуль управления

      START             100                 --- Количество стартов (испытания завершатся,

                                                            когда 100 транзактов протерминируются)   

       END                                        --- Окончание процесса моделирования

 

 

 

 

 

 

 

 

 

 

После написания модельного файла его необходимо сохранить в

формате .gps и «прогнать» через GPSSH. Благодаря этому мы получим файл с листингом (в формате .lis) исполняемой программы, опираясь на который можно сделать выводы о модели.

   RELATIVE CLOCK:

ABSOLUTE CLOCK:

335.9545

335.9545


 

 

 

FACILITY  TOTAL  AVAIL  UNAVL     ENTRIES    AVERAGE   CURRENT  PERCENT  SEIZING  PREEMPTING

           TIME   TIME   TIME               TIME/XACT   STATUS   AVAIL     XACT      XACT  

   OKNO1  0.995                        90       3.716    AVAIL               90

   OKNO2  0.633                        88       2.418    AVAIL               88

 

 

 

   QUEUE     MAXIMUM      AVERAGE       TOTAL        ZERO     PERCENT      AVERAGE      $AVERAGE     QTABLE     CURRENT

            CONTENTS     CONTENTS      ENTRIES     ENTRIES     ZEROS      TIME/UNIT    TIME/UNIT     NUMBER    CONTENTS

  OCHER1          74       36.415         163           1        0.6        75.053        75.517                     73

  OCHER2           1        0.055          89          63       70.8         0.207         0.709                        1

Информация о работе Исследование систем управления методами имитационного моделирования