Моделирование работы внутризаводского транспорта

Структурная схема процесса функционирования внутризаводского транспорта. Структурная схема модели в символике Q-схем. Переменные и уравнения имитационной модели. Обобщенная схема моделирующего алгоритма. Особенности программирования на языке С/С++.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 16.01.2018
Размер файла 630,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Введение

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

Для формализации систем применяют Q-схемы. Q-схемы представляют собой объединение отдельных элементарных приборов обслуживания. Если каналы этих приборов соединены параллельно, то имеет место многоканальное обслуживание. Если приборы и их параллельные композиции соединены последовательно, то имеет место многофазное обслуживание. В разомкнутых Q-схемах поток обслуженных заявок не может снова поступить на какой-либо элемент, т.е. обратные связи отсутствуют. В замкнутых Q-схемах имеются обратные связи, по которым заявки двигаются в направлении, обратном направлению вход/выход.

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

Существует два принципа построения моделирующих алгоритмов Q-схем:

- принцип Дt;

- принцип дz;

При построения моделирующего алгоритма Q-схемы по «принципу Дt», т.е. алгоритма с детерминированным шагом, необходимо для построения адекватной модели определить минимальный интервал времени между соседними событиями Дt'=min{ui} и принять, что шаг моделирования равен Дt'.

В моделирующих алгоритмах, построенных по «принципу дz», т.е. в алгоритмах со случайным шагом, элементы Q-схемы просматриваются при моделировании только в моменты особых состояний. При этом длительность шага Дt=var зависит как от особенностей самой системы, так и от воздействий внешней среды.

Для моделирования данной системы используем детерминированный алгоритм, построенный по принципу Дt. Этот алгоритм наиболее прост с точки зрения логики его построения, т.к. при этом используется просмотр всех элементов Q-схемы на каждом шаге моделирования. Трудности возникают с машинной реализацией алгоритма вследствие увеличения затрат машинного времени на моделирование, т.к. просматриваются все элементы Q-схемы. Затраты машинного времени на моделирование существенно увеличиваются при построении детерминированных моделирующих алгоритмов Q-схем, элементы которых функционируют в различных масштабах времени.

1. Постановка задачи

Диспетчер управляет внутризаводским транспортом и имеет в своем распоряжении два грузовика. Заявки на перевозки поступают к диспетчеру каждые 5 ± 4 мин. С вероятностью 0,5 диспетчер запрашивает по радио один из грузовиков и передает ему заявку, если тот свободен. В противном случае он запрашивает другой грузовик и таким образом продолжает сеансы связи, пока один из грузовиков не освободится. Каждый сеанс связи длится ровно 1 мин. Диспетчер допускает накопление у себя до пяти заявок, после чего вновь прибывшие заявки получают отказ. Грузовики выполняют заявки на перевозку за 12 ±8 мин.

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

имитационный модель программирование

2. Структурная схема процесса функционирования

Структурная схема процесса функционирования внутризаводского транспорта представлена на рисунке 1.

Рисунок 1- Структурная схема процесса функционирования

3. Структурная схема модели в символике Q-схем

Структурная схема модели в символике Q-схемы представлена на рисунке 2.

Рисунок 2 - Структурная схема модели в символике Q-схем

На рисунке 2 использованы следующие обозначения:

И - источник, К - канал, Н - накопитель;

K1 - диспетчер;

K2 - грузовик 1;

K3 -грузовик 2;

Н - накопитель(очередь заявок на перевозку).

Источник И имитирует поступление заявок, приходящие в накопитель. Если накопитель Н заполнен, то клапан 2-закрыт, клапан 1- открыт. Если в это время из источника И поступает очередная заявка, то она не обслуживается и покидает систему.

В противном случае, если накопитель пуст или в нем содержится меньше 5 заявок, клапан 2 - открывается, клапан 1 - закрывается. В накопитель начинают поступать заявки на перевозку. Накопитель заполняется до тех пор, пока количество заявок в нём не станет равным 5. После этого накопитель считается заполненным.

Заявки поступают в накопитель Н, если грузовики 1 или 2 свободны, то клапаны 3, 4 и 5 открываются и заявки поступают с вероятностью 0,5 на обработку в каналы К2 и К3. Если канал К2 занят, то клапан 3 закрыт, а клапаны 4 и 5 открыты. Если К3 занят , тогда клапаны 4 и 5 закрыты, а клапан 3 открыт. Если оба канала К2 и К3 заняты, клапаны 3 и 5 закрыты, заявка находится в накопителе до тех пор пока один из каналов К2 или К3 не освободится.

4. Переменные и уравнения имитационной модели

Независимые (экзогенные) переменные:

t_pz - интервал времени поступления заявок в накопитель (54 мин, [1,9]);

t_oz - время, необходимое для выполнения заявки (128 мин, [4,20])

Зависимые (эндогенные) переменные:

k - длительность сеанса связи между диспетчером и грузовиками (1 мин);

K1, K2 - коэффициенты загрузки грузовиков 1 и 2 соответственно;

Вспомогательные переменные:

z1,z2- состояние грузовиков 1 и 2 соответственно

Переменные состояния:

No- число обработанных заявок грузовиками;

Nn - число не обработанных заявок грузовиками;

Дополнительные переменные, используемые в программе:

Time - время моделирования;

Twork1, Twork2 - время занятости грузовиков 1 и 2 соответственно;

i - счетчик количества обслуживаемых заявок диспетчером (300);

j1, j2 - флаги, управляющие окончанием процессов в К1 и К2;

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

;

;.

5. Обобщенная схема моделирующего алгоритма

Для формализации процесса функционирования системы использован алгоритм с детерминированным шагом. Детерминированный моделирующий алгоритм является наиболее простым и удобным. Обобщенная схема моделирующего алгоритма процесса функционирования системы приведена на рисунке 3.

Детальный псевдокод алгоритма представлен в приложении А.

Рисунок 3 - Обобщенная схема моделирующего алгоритма

6 Особенности программирования

6.1 Функции программы

Программа реализована на языке С/С++ и выполняет моделирование работы внутризаводского транспорта.

В программе используется функция RANDOM (А, В), которая производит генерацию случайного целого числа в интервале [А-В, А+В]. Процедура progа() обрабатывает входные данные, подсчитывает число обслуженных и не обслуженных заявок, поступивших диспетчеру, определяет коэффициенты загрузки грузовиков 1 и 2.

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

6.2 Входные данные

Time - время моделирования;

k - длительность сеанса связи между диспетчером и грузовиками (1 мин);

t_pz - интервал времени поступления заявок в накопитель (54 мин, [1,9]);

t_oz - время выполнения заявки (128 мин, [4,20])

6.3 Выходные данные

No- число обработанных заявок грузовиками;

Nn - число не обработанных заявок грузовиками;

K1, K2 - коэффициенты загрузки грузовиков 1 и 2 соответственно;

6.3 Организация интерфейса

При запуске программы появляется окно, содержащее параметры моделирования, а также выходные данные, структурную схему и Q - схему (рисунок 4). Для моделирования процесса обработки информации необходимо установить требуемые входные данные. Моделирование начинается нажатием кнопки «Моделирование». Окно содержит кнопку «Задание», при нажатии которой открывается окно с заданием (рисунок 5).

Рисунок 4 - Интерфейс программы

Рисунок 5 - Окно с заданием

Рисунок 6 - Q схема

7. Результаты моделирования

Результаты моделирования работы внутризаводского транспорта представлены в таблице 1.

Таблица 1 - Результаты моделирования

№ эксперимента

Количество обслуженных заявок

Количество необслуженных заявок

Коэффициент загрузки грузовика1, (%)

Коэффициент загрузки грузовика 2, (%)

1

92

82

91,62

91,78

2

100

70

90,25

90,25

3

112

54

89,29

89,75

4

108

63

89,54

90,8

5

100

72

90,66

90,82

6

108

59

90,97

90,97

7

108

57

91,26

91,26

8

98

63

91,29

90,82

9

112

60

89,8

90,69

10

102

72

91,15

91,31

11

98

74

91,96

91,96

12

110

66

91,05

91,05

13

99

67

90,44

90,75

14

92

77

91,85

91,85

15

111

58

91,15

90,85

16

95

78

91,02

90,88

17

101

58

91,16

91,16

18

98

70

91,13

91,29

19

102

68

90,64

90,64

20

114

66

90,31

90,31

Среднее количество обслуженных заявок

Среднее количество необслуженных заявок

Средний коэффициент загрузки грузовика 1, (%)

Средний коэффициент загрузки грузовика 2, (%)

103

67

90,82

90,95

Заключение

Анализ результатов моделирования работы внутризаводского транспорта позволяет сделать вывод о неэффективности его работы, что подтверждается большим числом необслуженных заявок- 67 из 170 заявок за 10 часов моделирования, что составляет 39% от общего числа заявок, при этом загруженность грузовиков составляет в среднем 91%. Чтобы увеличить эффективность работы внутризаводского транспорта необходимо изменить интервал времени поступления заявок к диспетчеру. При увеличении интервала времени 13±4 мин. все поступившие заявки обслуживаются, при этом коэффициент загрузки грузовиков в среднем уменьшается до 86%.

Список литературы

1. Советов Б. Я., Яковлев С. А. Моделирование систем: Учеб. для вузов, 3-е издание, перераб. и доп. - М: Высш. школа, 2001 - 343 с.

2. Советов Б. Я., Яковлев С. А. Моделирование систем: Курсовое проектирование: Учеб. пособие по специальности АСУ. - М: Высш. школа, 1988 - 135 с.

Приложение А (обязательное)

Псевдокод моделирующего алгоритма

скаляр RANDOM(скаляр A - целое, скаляр В - целое)

начало

скаляр Q - целое

Q=random(2*В+1)+(A-В);

возврат Q

конец

Алгоритм proga()

начало

скаляры Twork1,Twork2,L,z1,z2, Time, n- целые

скаляры i, j1,j2, No,Nn, T, Sum- целые

скаляры K1,K2- вещественные

массивы , t_oz, t_pz,gen_z - целые

ввод Time, t_oz, t_pz,gen_z - целые

для (i=0,i<300,i=i+1)

начало

Sum+=RANDOM(А,В);

t_pz[i]=Sum;

t_oz[i]=RANDOM(А,В);

gen_z[i]=RANDOM(51,50);

конец

Шаг1:

если(T>=Time и L=0)

начало

вывод No,Nn,K1,K2

конец

если(z1=1)

начало

если (j1=0) начало

j1=T+t_oz[n];Twork1+=t_oz[n];

конец

если (T=j1) начало

No++;z1=0;j1=0;

конец

если (gen_z[n]<=49) то z2=1;

иначе z1=1;

конец

если(z2=1)

начало

если(j2=0) начало

j2=T+t_oz[n];Twork2+=t_oz[n];

конец

если (T=j2) начало

No++;z2=0;j2=0;

конец

если(gen_z[n]<=49) то z2=1;

иначе z1=1;

начало

если((z1=0 или z2=0) и L>0)

конец

если(gen_z[n]<=49)

если(z1=1)то начало

z2=1;L--;

конец

иначе начало

z1=1;L--;

конец

иначе начало

z2=1;L--;

конец

конец

если(T>=Time) начало

T++; перейти к Шаг 1;

конец

иначе(T<=t_pz[n]) начало

T++; перейти к Шаг 1;

конец

иначе

начало

если(L<5) то L++;

иначе Nn++;

T++; n++;

конец

K1=(10000.0*Twork1/T)/100.0;

K2=(10000.0*Twork2/T)/100.0;

перейти к Шаг1;

конец

Приложение Б (обязательное)

Листинг программы

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

#include "Unit2.h"

#include "Unit3.h"

#include "Unit4.h"

#include <math.h>

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

#pragma link "PERFGRAP"

TForm1 *Form1;

int *t_oz,*t_pz,*gen_z;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

: TForm(Owner)

{ randomize();

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{

Form2->Show();

}

int RANDOM(int A,int B)

{

int Q;

Q=random(2*B+1)+A-B;

return Q;

}

void proga()

{

int Twork1=0,Twork2=0,L=0,z1=0,z2=0, Time=0;

int i=0,n=0;

int j1=0,j2=0,j3=0, j4=0, No=0,Nn=0;

int T=0;

float K1,K2;

Time=StrToInt(Form1->Edit1->Text)*60;

step_1:;

if(T>=Time && L==0)

{

Form1->Label17->Caption=No;

Form1->Label18->Caption=Nn;

Form1->Label19->Caption= K1;

Form1->Label20->Caption=K2;

return;

}

if(z1==1)

{if(j1==0) {j1=T+t_oz[n];Twork1+=t_oz[n];}

if(T==j1) {No++;z1=0;j1=0;}

if(gen_z[n]<=49) z2=1;

else z1=1;

}

if(z2==1)

{if(j2==0) {j2=T+t_oz[n];Twork2+=t_oz[n];}

if(T==j2) {No++;z2=0;j2=0;}

if(gen_z[n]<=49) z2=1;

else z1=1;

}

if((z1==0 || z2==0) && L>0)

{

if(gen_z[n]<=49)

if(z1==1){z2=1;L--;}

else {z1=1;L--;}

else {z2=1;L--;}

}

if(T>=Time) {T++; goto step_1;}

if(T<=t_pz[n]){ T++; goto step_1;}

else

{

if(L<StrToInt(Form1->Edit6->Text.c_str())) L++;

else Nn++;

T++; n++;

}

K1=int(10000.0*Twork1/T)/100.0;

K2=int(10000.0*Twork2/T)/100.0;

goto step_1;

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)

{

delete[] t_pz,t_oz,gen_z;

t_pz=new int[300];

t_oz=new int[300];

gen_z=new int[300];

int Sum=0;

for(int i=0;i<300;i++)

{

Sum+=RANDOM(StrToInt(Edit2->Text.c_str()),StrToInt(Edit3->Text.c_str()));

t_pz[i]=Sum;

t_oz[i]=RANDOM(StrToInt(Edit4->Text.c_str()),StrToInt(Edit5->Text.c_str()));

gen_z[i]=RANDOM(51,50);

}

proga();

}

Размещено на Allbest.ru

...

Подобные документы

  • Описание моделируемой системы. Структурная схема модели системы. Q-схема системы и её описание. Математическая модель и укрупнённая схема моделирующего алгоритма. Сравнение результатов имитационного моделирования и аналитического расчета характеристик.

    курсовая работа [46,7 K], добавлен 02.07.2011

  • Разработка и реализация моделирующего алгоритма процесса обслуживания 150 кораблей путем написания программы в среде GPSS/PC. Временная диаграмма процедуры погрузки-разгрузки кораблей. Структурная схема функционирования причалов в символике Q-схем.

    курсовая работа [711,4 K], добавлен 22.06.2011

  • Моделирование работы вычислительной системы из двух процессоров и общей оперативной памяти. Структурная схема модели системы. Укрупненная схема моделирующего алгоритма. Результаты моделирования и их анализ. Машинная программа объекта исследования.

    курсовая работа [1,0 M], добавлен 21.06.2011

  • Понятие стратегического планирования, разработка схем программных блоков и основной программы. Структурная схема имитационной модели, создание модели на языке моделирования General Purpose Simulation System. Математическое описание моделируемой системы.

    дипломная работа [2,6 M], добавлен 12.08.2017

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

    курсовая работа [209,7 K], добавлен 28.06.2011

  • Структурная схема модели системы и её описание. Временная диаграмма и Q-схема системы обмена пакетами данных, описание блоков моделирующего алгоритма. Сравнение результатов имитационного моделирования и аналитического расчёта характеристик системы.

    курсовая работа [376,9 K], добавлен 03.07.2011

  • Процесс моделирования имитационной модели функционирования класса персональных компьютеров на языке GPSS World. Поиск линейной зависимости и оценка полученного уравнения. Отчет по результатам работы имитационной модели. Листинг разработанной программы.

    курсовая работа [49,2 K], добавлен 07.09.2012

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

    курсовая работа [69,2 K], добавлен 02.07.2011

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

    дипломная работа [140,2 K], добавлен 18.06.2011

  • Структурная схема, классификация устройств СМО и анализ динамики ее функционирования. Формализация модели СМО средствами GPSS World. Модификация имитационной модели. Реализация модельных экспериментов. Имитационное моделирование СМО в среде GPSS World.

    курсовая работа [504,6 K], добавлен 14.12.2012

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

    курсовая работа [1,4 M], добавлен 15.06.2010

  • Создание математической модели системы массового обслуживания на примере банка. Разработка имитационной модели на языке программирования С++. Блок-схема программы, перевод модели на язык программирования. Верификация и валидация имитационной модели.

    курсовая работа [630,5 K], добавлен 01.06.2015

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

    реферат [453,5 K], добавлен 26.10.2010

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

    курсовая работа [1,4 M], добавлен 01.06.2016

  • Разработка математической модели системы. Моделирование работы конвейера сборочного цеха в течении 8 часов. Определение вероятности пропуска секции. Расчет количества скомплектованных изделий за 8 часов. Исследование системы на имитационной модели.

    контрольная работа [98,3 K], добавлен 24.09.2014

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

    курсовая работа [54,9 K], добавлен 25.06.2011

  • Моделирование системы массового обслуживания (СМО) для транспортного цеха с использованием языка GPSS Wоrld. Детальная схема и блок-схема моделирующего алгоритма и их описание. Математическая модель и ее описание. Анализ результатов моделирования.

    реферат [330,6 K], добавлен 28.06.2011

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

    курсовая работа [1,2 M], добавлен 10.06.2015

  • Система массового обслуживания модели функционирования мастерской. Структурная и Q-схемы, построение временной диаграммы, варианты по оптимизации модели. Составление программы на языке имитационного моделирования GPSS и разбор результатов моделирования.

    курсовая работа [74,2 K], добавлен 23.06.2011

  • Создание программы на языке C++, обеспечивающей ввод исходной информации, ее обработку, реализацию алгоритма имитации процесса и выдачу необходимой информации. Разработка имитационной модели очереди с разнотипными заявками (модели работы порта).

    курсовая работа [563,8 K], добавлен 13.09.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.