Имитационное моделирование экономических подсистем

Автор работы: Пользователь скрыл имя, 16 Ноября 2010 в 06:37, курсовая работа

Краткое описание

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

Содержание работы

Задание 3
Введение 4
Задание1. Генерация случайных величин с заданными параметрами 5
Задание2. Создание объектной модели в MatLab 9
Задание3 Создание модели системы массового обслуживания 14
Заключение 29
Список литературы 30

Содержимое работы - 1 файл

Курсовой_ИМЭП55-1.doc

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

•    Снижение спроса составляет 74% из за высокого содержания химических добавок.

•    Высокие торговые таможенные пошлины сокращают объем продаж на 120 кг. еженедельно.

•    Розничная торговля имеет случайный объем реализации, подчиненный нормальному закону распределения с матожиданием 148 и дисперсией 36 кг. масла в неделю.

•    Снижение спроса за счет конкуренции имеет коэффициент 0,00062. 

 

Решение:

Построим диаграмму  процессов рис 4

Рис 4 Диаграмма процессов 

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

     Для построения данной модели нам понадобится пакет Simulink встроенный в MatLab рис 5.

      Опираясь  на диаграмму потоков можно составить модель:

Рис 5 Модель фирм

Рис. 6 Настройки для  блока Random Number 
 
 

Рис.7 Настройки блока Integrator 
 
 
 

Рис.8 Настройки блока Integrator 

После запуска  модели проанализируем получившийся график рис 9

Рис. 9 Объемы продаж сливочного масла для 6 недель 

     После четвертой недели у зарубежной фирмы резко возросли объемы продаж, очевидно, это связано с падением продаж отечественной фирмы через три недели. 

Вывод: Объемы продаж отечественной компании упадут до нуля после 3 недели. А у зарубежной после четвертой недели наблюдается резкий рост продаж и к концу 6-й недели объем продаж будет около 700000 кг.

Задание 3 Создание модели системы массового обслуживания

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

Постановка задачи: Люди проходят на посадку с интенсивностью, подчиненной равномерному закону распределения от 2,7 до 6 минут, и встают в одну очередь для проверки документов (пропуск ведется на все рейсы через два рабочих места). Скорость проверки документов на одного пассажира составляет Гауссову величину с матожиданием 3,5 и дисперсией 1,1 минуты. После этого осуществляется досмотр (металлодетектор и рентген), ведущийся тремя работниками службы безопасности (экспоненциальное распределение с параметром 5,7 минуты). Далее пассажир поступает в одну из трех касс, в которой осуществляется выдача билетов – нормальное распределение с матожиданием 3,1 минуты и дисперсией 20 секунд. После этого пассажир выходит из системы обслуживания (поступает в зал ожидания). Промоделируйте работу системы в течении 10-ти часового рабочего дня. 

Решение:

Необходимо  смоделировать систему массового обслуживания

Синтаксис языка:

Среда программирования разделена на 3 области:

1 –  область переменных

2 –  область операторов

3 –  область параметров

4 –  область комментариев 

Основные  операторы:

  GENERATE X,Y Генератор транзактов
Название  накопителя STORAGE X Создать накопитель; Х – объем
  ENTER X Войти в накопитель Х
  LEAVE X Выйти из накопителя Х
  QUEUE X Создать очередь
  DEPART Х Покинуть очередь Х
  ADVENCE Х,Y Задержать перемещение
  RELASE X Освободить  канал обслуживания
  TRANSFER both,X,Y Попытаться  перейти по метке Х, если не удается  то метке Y
  TRANSFER ,X Перейти к метке  Х
  TERMIANATE Х Уничтожить  транзакт
  ASSIGN X,Y Модифицировать параметр требования
 

    Данная  модель состоит из трех фаз и трёх каналов. Время моделирования удобно выбрать в минутах.

    

Рис. 10 Схематическое отображение модели 

    Составим  модель в программе GPSS World. Для диспетчеризации многоканального обслуживания, воспользуемся режимом All команды TRANSFER. Он имеет следующие параметры:

    1. Первый канал (1)
    2. Последний канал (3)
    3. Число действий (команд) в одном канале (по 6 строк)

    При описании накопителя (Dosmot) нужно осуществить ввод в него транзакта (команда ENTER), а после обслуживания его вывод (команда LEAVE).

    Листинг модели приведён ниже. 

 

**********************************************************************

*                Masterskaia          *

*                Time Is In minut                                    *

**********************************************************************

Dosmot STORAGE 3

TAB1 QTABLE Registr,0,3,12

TAB2 QTABLE Kassa,0,3,12

QALL TABLE  M1,0,3,10

      GENERATE (UNIFORM(1,2.7,6))

      QUEUE Registr

      QUEUE Total_time

      TRANSFER Both,Reg1,Reg2

Reg1 SEIZE Registr1

      DEPART Registr

      ADVANCE (NORMAL(1,3.5,1.1))

      RELEASE Registr1

      TRANSFER ,Next1

Reg2 SEIZE Registr2

      DEPART Registr

      ADVANCE (NORMAL(1,3.5,1.1))

      RELEASE Registr2

      TRANSFER ,Next1

Next1 SAVEVALUE Ave_Queue,QT$Registr

      QUEUE Dosmotr

      ENTER Dosmot

      TRANSFER ALL,Dosm1,Dosm3,6

Dosm1 SEIZE Dosmotr1

      ASSIGN 1,Dosmotr1

      DEPART Dosmotr

      ADVANCE (Exponential(1,0,5.7))

      RELEASE Dosmotr1

      TRANSFER ,Next2

      SEIZE Dosmotr2

      ASSIGN 1,Dosmotr2

      DEPART Dosmotr

      ADVANCE (Exponential(1,0,5.7))

      RELEASE Dosmotr2

      TRANSFER ,Next2

Dosm3 SEIZE Dosmotr3

      ASSIGN 1,Dosmotr3

      DEPART Dosmotr

      ADVANCE (Exponential(1,0,5.7))

      RELEASE Dosmotr3

Next2 LEAVE Dosmot

      TABULATE QALL

      SAVEVALUE Ave_Queue,QT$Dosmotr

      QUEUE Kassa

      TRANSFER ALL,Kas1,Kas3,6

Kas1 SEIZE Kassa1

      ASSIGN 1,Kassa1

      DEPART Kassa

      ADVANCE (NORMAL(1,3.1,0.33))

      RELEASE Kassa1

      TRANSFER ,FinSh

      SEIZE Kassa2

      ASSIGN 1,Kassa2

      DEPART Kassa

      ADVANCE (NORMAL(1,3.1,0.33))

      RELEASE Kassa2

      TRANSFER ,FinSh

Kas3 SEIZE Kassa3

      ASSIGN 1,Kassa3

      DEPART Kassa

      ADVANCE (NORMAL(1,3.1,0.33))

      RELEASE Kassa3

FinSh SAVEVALUE Ave_Queue,QT$Kassa

      DEPART Total_time

  TERMINATE 1

      

    В настройках модели установим следующие  параметры: не отображать блоки, отображать очереди, каналы обслуживания и накопители. Укажем повышенную (Scientific) точность вычисления.

    

Рис. 11 Настройки параметров отчета 
 

    Для отображения табличных данных, используются объекты QTABLE (TAB1), QTABLE (TAB2) и TABLE (QALL). Объект QTABLE (TAB1) явно описывает данные, которые будут помещены в таблицу по этапу регистрации в соотве6тствии со следующими параметрами:

    1. Название блока (очередь на регистрацию)
    2. Минимальное значение для отсчёта (0)
    3. Шаг (3)
    4. Число интервалов (шагов)

    Объект  QTABLE (TAB2) описывает данные, которые будут помещены в таблицу по этапу обслуживания у кассы в соотве6тствии с теми же параметрами что и у объекта QTABLE (TAB1).

    Если  нужно измерить значение произвольного объекта, то можно воспользоваться конструкцией TABLE со следующими параметрами:

    1. М1 (системный параметр)
    2. Минимальное значение для отсчёта (0)
    3. Шаг (3)
    4. Число интервалов (10)

    Для привязки объекта измерения к  таблице, в коде должна быть конструкция  TABULATE, с названием самой таблицы. В данном случае, измеряется время прохождения транзактом второй фазы обслуживания (Досмотр).

    После запуска модели на выполнение, появится отчёт следующего содержания (start=600): 

GPSS World Simulation Report - Example.174.2 
 

                   Saturday, May 17, 2008 12:16:07   

           START TIME           END TIME  BLOCKS  FACILITIES  STORAGES

                0.000           2636.742    60        8          1 
 

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

REGISTR1           479    0.637       3.507  1      603    0    0     0      0

DOSMOTR1           311    0.697       5.912  1        0    0    0     0      0

REGISTR2           124    0.165       3.505  1        0    0    0     0      0

DOSMOTR2           211    0.430       5.368  1        0    0    0     0      0

KASSA1             394    0.459       3.071  1        0    0    0     0      0

KASSA2             175    0.203       3.058  1      598    0    0     0      0

DOSMOTR3            80    0.172       5.671  1        0    0    0     0      0

KASSA3              33    0.040       3.170  1        0    0    0     0      0 
 

QUEUE              MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME   AVE.(-0) RETRY

REGISTR             1    0    603    603     0.000      0.000      0.000   0

KASSA               1    0    602    598     0.001      0.003      0.502   0

TOTAL_TIME          8    2    603      0     2.825     12.353     12.353   0

DOSMOTR             3    0    602    580     0.022      0.096      2.638   0 
 

STORAGE            CAP. REM. MIN. MAX.  ENTRIES AVL.  AVE.C. UTIL. RETRY DELAY

Информация о работе Имитационное моделирование экономических подсистем