Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УП_Моделир сист_Зиновьев.doc
Скачиваний:
6
Добавлен:
28.10.2018
Размер:
2.22 Mб
Скачать

Заключение

Математическое моделирование используется в случае, если технологическая система не поддается физическому эксперименту. Во многих случаях невозможно получить аналитические зависимости, отображающие поведение и взаимосвязь элементов технологической системы. Особенно трудно учесть действие случайных факторов и динамику функционирования объекта. Поэтому используют имитационное моделирование. Имитационное моделирование похоже на физические эксперименты, но эти эксперименты проводятся не на физическом объекте, а на его компьютерной модели. Сущность имитационного моделирования состоит в том, что над моделью проводят эксперименты типа «Что, если…?». Изменяя исходные показатели в модели, анализируют результаты экспериментов. Имитационная модель реализуется на ЭВМ при помощи языков программирования. Альтернативой является использование методов, основанных на специализированных языках и системах имитационного моделирования. Специализированные языки содержат, как правило, написанные на универсальном языке блоки – отдельные динамические модели. Поведение системы имитируется как смена ее состояний. Процесс отображается не системой уравнений, а взаимодействием отдельных динамических моделей во времени и пространстве. Поведение системы описывается от события к событию, означающих начало или окончание технологической операции.

В настоящем учебном пособии рассматривалось применение одного из наиболее распространенных специализированных языков имитационного моделирования – GPSS, предложенного фирмой IBM в 1962 г., и программы компьютерной анимации (CIMAN – CINEMA, GPSS/H – Proof Animation), позволяющими отображать динамику процесса на экране компьютера в соответствии с работой имитационной модели и выводить результаты на монитор.

Приложения

Приложение 1

Файл-меню модели процесса обслуживания

рабочих мест робокаром

1 *Рабочее место 1 (включено 1; выключено 0)

1 *Рабочее место 2 (включено 1; выключено 0)

1 *Рабочее место 3 (включено 1; выключено 0)

1 *Рабочее место 4 (включено 1; выключено 0)

1 *Рабочее место 5 (включено 1; выключено 0)

120 *Среднее время поступления заявки с рабочего места 1

20 *Отклонение от среднего времени

120 *Среднее время поступления заявки с рабочего места 2

20 *Отклонение от среднего времени

120 *Среднее время поступления заявки с рабочего места 3

20 *Отклонение от среднего времени

120 *Среднее время поступления заявки с рабочего места 4

20 *Отклонение от среднего времени

120 *Среднее время поступления заявки с рабочего места 5

20 *Отклонение от среднего времени

500 *Расстояние до рабочего места 1

300 *Расстояние до рабочего места 2

100 *Расстояние до рабочего места 3

200 *Расстояние до рабочего места 4

160 *Расстояние до рабочего места 5

30 *Скорость робокара, м/мин

8 *Средняя продолжительность загрузки робокара, мин

2 *Отклонение от среднего времени, мин

8 *Продолжительность разгрузки робокара, мин

2 *Отклонение от среднего времени, мин

480 *Продолжительность моделирования, мин

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

Распечатка GHSS/H-программы с вводом команд

управления анимацией

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

* Модель процесса обслуживания рабочих мест робокаром

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

* Создание .atf-файла и определение переменных

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

SIMULATE Начало модели

рования

ATF FILEDEF 'ROBO.ATF' Создание .atf

файла

Приложение 2

INTEGER &M1,&M2,&M3,&M4,&M5,&SHIFT Целые пере-

менные

REAL &SA1,&SAS1,&SA2,&SAS2 Действитель

ные перемен

ные

REAL &SA3,&SAS3,&SA4,&SAS4,&SA5,&SAS5

REAL &RES1,&RES2,&RES3,&RES4,&RES5

REAL &SCOR,&POG,&POGR,&RASG,&RASGR

************************************************************ Ввод исходных данных из файла-меню

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

GETLIST FILE=ROBO,(&M1) Выключатель рабочего места 1

GETLIST FILE=ROBO,(&M2) Выключатель рабочего места 2

GETLIST FILE=ROBO,(&M3) Выключатель рабочего места 3

GETLIST FILE=ROBO,(&M4) Выключатель рабочего места 4

GETLIST FILE=ROBO,(&M5) Выключатель рабочего места 5

GETLIST FILE=ROBO,(&SA1) Среднее время поступления

заявки с рабочего места 1

GETLIST FILE=ROBO,(&SAS1) Отклонение от среднего времени

GETLIST FILE=ROBO,(&SA2) Среднее время поступления

заявки с рабочего места 2

GETLIST FILE=ROBO,(&SAS2) Отклонение от среднего времени GETLIST FILE=ROBO,(&SA3) Среднее время поступления

заявки с рабочего места 3

GETLIST FILE=ROBO,(&SAS3) Отклонение от среднего времени GETLIST FILE=ROBO,(&SA4) Среднее время поступления

заявки с рабочего места 4

GETLIST FILE=ROBO,(&SAS4) Отклонение от среднего времени GETLIST FILE=ROBO,(&SA5) Среднее время поступления

заявки с рабочего места 5

GETLIST FILE=ROBO,(&SAS5) Отклонение от среднего времени GETLIST FILE=ROBO,(&RES1) Расстояние от склада до рабочего

места 1

GETLIST FILE=ROBO,(&RES2) Расстояние от склада до рабочего

места 2

GETLIST FILE=ROBO,(&RES3) Расстояние от склада до рабочего

места 3

GETLIST FILE=ROBO,(&RES4) Расстояние от склада до рабочего

места 4

GETLIST FILE=ROBO,(&RES5) Расстояние от склада до рабочего

места 5

GETLIST FILE=ROBO,(&SCOR) Скорость движения робокара

Продолжение прил. 2

GETLIST FILE=ROBO,(&POG) Средняя продолжительность

загрузки робокара

GETLIST FILE=ROBO,(&POGR) Отклонение от среднего времени

GETLIST FILE=ROBO,(&RASG) Средняя продолжительность

загрузки робокара

GETLIST FILE=ROBO,(&RASGR)Отклонение от среднего времени

GETLIST FILE=ROBO,(&SHIFT) Продолжительность

моделирования

PUTPIC FILE=ATF,LINES=8,AC1

time *.*

create m m1

create m m2

create m m3

create m m4

create m m5

create rob rob

place rob 0 6

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

* Рабочее место 1

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

GENERATE &SA1,&SAS1,,,,1PL,1PH Поступление заявки с

рабочего места 1

TEST NE &M1,0,DES Проверка включения

рабочего места 1

ASSIGN 1,&RES1/&SCOR,PL Время движения до

рабочего места 1

ASSIGN 1,1,PH Принадлежность заявки

1-му рабочему месту

BPUTPIC FILE=ATF,LINES=6,AC1,&SA1,&SAS1,&RES1,PL1

TIME *.*

set m1 color red

place m1 -30 38

write z1 * *

write r1 L=*m

write re1 t=*min

TRANSFER ,ROB Переход к робокару

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

* Рабочее место 2

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

GENERATE &SA2,&SAS2,,,,1PL,1PH Поступление заявки с

рабочего места 2

TEST NE &M2,0,DES Проверка включения

Продолжение прил. 2

рабочего места 2

ASSIGN 1,&RES2/&SCOR,PL Время движения до

рабочего места 2

ASSIGN 1,2,PH Принадлежность заявки

2-му рабочему месту

BPUTPIC FILE=ATF,LINES=6,AC1,&SA2,&SAS2,&RES2,PL1

time *.*

set m2 color red

place m2 -20 38

write z2 * *

write r2 L=*m

write re2 t=*min

TRANSFER ,ROB Переход к робокару

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

* Рабочее место 3

*********************************************************** GENERATE &SA3,&SAS3,,,,1PL,1PH Поступление заявки с

рабочего места 3

TEST NE &M3,0,DES Проверка включения

рабочего места 3

ASSIGN 1,&RES3/&SCOR,PL Время движения до

рабочего места 3

ASSIGN 1,3,PH Принадлежность заявки

рабочему месту 3

BPUTPIC FILE=ATF,LINES=6,AC1,&SA3,&SAS3,&RES3,PL1

TIME *.*

set m3 color red

place m3 -10 38

write z3 * *

write r3 L=*m

write re3 t=*min

TRANSFER ,ROB Переход к робокару

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

* Рабочее место 4

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

GENERATE &SA4,&SAS4,,,,1PL,1PH Поступление заявки с

рабочего места 4

TEST NE &M4,0,DES Проверка включения

рабочего места 4

ASSIGN 1,&RES4/&SCOR,PL Время движения до

рабочего места 4

ASSIGN 1,4,PH Принадлежность заявки

Продолжение прил. 2

рабочему месту 4

BPUTPIC FILE=ATF,LINES=6,AC1,&SA4,&SAS4,&RES4,PL1

TIME *.*

set m4 color red

place m4 10 38

write z4 * *

write r4 L=*m

write re4 t=*min

TRANSFER ,ROB Переход к робокару

************************************************************ Рабочее место 5

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

GENERATE &SA5,&SAS5,,,,1PL,1PH Поступление заявки с

рабочего места 5

TEST NE &M5,0,DES Проверка включения

рабочего места 5

ASSIGN 1,&RES5/&SCOR,PL Время движения до

рабочего места 5

ASSIGN 1,5,PH Принадлежность заявки

рабочему месту 5

BPUTPIC FILE=ATF,LINES=6,AC1,&SA5,&SAS5,&RES5,PL1

TIME *.*

set m5 color red

place m5 20 38

write z5 * *

write r5 L=*m

write re5 t=*min

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

* Моделирование работы робокара

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

ROB QUEUE HUK Ожидание робокара

SEIZE CAR Занятие робокара

DEPART HUK Конец ожидания

ADVANCE RVNORM(1,&POG,&POGR) Загрузка робокара

BPUTPIC FILE=ATF,LINES=4,AC1,PH1,PL1/2,PH1

time *.*

set rob color red

set path p* travel *.*

place rob on p*

ADVANCE PL1 Движение робокара к

рабочему месту

ADVANCE RVNORM(1,&RASG,&RASGR) Разгрузка робокара

Продолжение прил. 2

BPUTPIC FILE=ATF,LINES=5,AC1,PH1,PH1,PL1/2,PH1

time *.*

set rob color green

set m* color green

set path p1* travel *.*

place rob on p1*

ADVANCE PL1 Движение робокара к

складу

BOX RELEASE CAR Освобождение робокара

BPUTPIC FILE=ATF,LINES=6,AC1,N(BOX),FT(CAR),_

FR(CAR)/10,QA(HUK),QT(HUK)

time *.*

write b *

write ft *.**

write fr *.**

write qa *.**

write qt *.**

DES TERMINATE Заявка выполнена

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

* Продолжительность моделирования

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

GENERATE &SHIFT Появление транзакта-таймера

TERMINATE 1 Удаление транзакта-таймера

START 1

PUTPIC FILE=ATF,LINES=2,AC1

time *.*

END

END