Математические методы теории массового обслуживания
Поиск оптимального варианта проектирования автозаправочной станции с использованием системы массового обслуживания. Результаты расчетов по исследованию различных вариантов строительства. Алгоритм программы. Руководство пользователя для работы с ней.
Рубрика | Экономико-математическое моделирование |
Вид | контрольная работа |
Язык | русский |
Дата добавления | 12.02.2014 |
Размер файла | 330,8 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
1. Специальная часть
1.1 Общая постановка задачи
Используя систему массового обслуживания найти оптимальный вариант проектирования АЗС.
1.2 Математическая модель
Средний интервал между прибытиями автомобилей 12 мин.
Варианты строительства АЗС имеют следующие средние времена обслуживания автомобилей 12.5 мин, 11 мин, 10 мин, 10.5 мин, 13 мин.
1.3 Алгоритм метода
1. Находим л (среднее число клиентов появляющихся в АЗС за единицу времени) с помощью формулы 1/средний интервал между прибытиями автомобилей;
2. Находим м с помощью формулы 1/среднее время обслуживания автомобиля;
3. Находим Р (нагрузка системы) с помощью формулы л/м;
4. Находим Е1 (коэффициент простои системы) с помощью формулы 1-Р;
5. Находим Е2 (среднее число клиентов в системе с помощью формулы Р/(1-Р);
6. Находим Е3 (средняя длина очереди) с помощью формулы Р2(1-Р);
7. Находим Е4 (Среднее время пребывания клиента в системе) с помощью формулы 1/(м-л);
8. Находим Е5 (Время пребывания клиента в очереди) с помощью формулы Р/(м-л);
После вычислений делаем анализ опираясь на данные полученные при вычислении.
1.4 Обоснование выбора программного обеспечения
Я выбрал язык программирования Delphi, мы проходили всего два языка программирования это языки Borland Pascal и Borland Delphi. Из этих двух языков мне было более удобно разрабатывать программу на Delphi потому что:
В Delphi применяется объектно-визуальная технология построения программ. Размещение всех визуальных объектов на экране происходит в режиме «конструктора». Это позволяет значительно ускорить разработку интерфейса программы.
Однако наиболее привлекательная особенность Delphi как среды разработки - это автоматическая генерация текста программы на языке Object Pascal. Delphi генерирует объявления классов и переменных, а также, включает в текст программы заготовки процедур обработки событий. Это не только значительно повышает скорость работы, но и защищает программиста от совершения ошибок в объявлении классов.
Несмотря на простоту в освоении, Delphi позволяет писать сложные и мощные программные продукты. Система разработки поддерживает подключение различных системных библиотек, вне зависимости от того, на каком языке программирования они написаны. Delphi содержит множество процедур и функций для взаимодействия с Windows. В частности, за счет использования технологии OLE, стало возможным управление из программ, написанных на Delphi, приложениями Microsoft Office и передача им данных в автоматическом режиме.
Таким образом, Delphi можно использовать для написания как простых, так и сложных программных продуктов.
2. Технологическая часть
2.1 Решение задачи ручным способом
Пусть для общих условий постановки задачи по проектированию АЗС. Известны следующие данные средний интервал между прибытиями автомобилей 12 мин. Варианты строительства АЗС имеют следующие средние времена обслуживания автомобилей 12.5 мин, 11 мин, 10 мин, 10.5 мин, 13 мин. Результаты расчетов по исследованию различных вариантов строительства АЗС.
формулы |
1 |
2 |
3 |
4 |
5 |
||
1/ л |
- |
12 мин |
12 мин |
12 мин |
12 мин |
12 мин |
|
л |
- |
0.08333 |
0.08333 |
0.08333 |
0.08333 |
0.08333 |
|
1/ м |
- |
12.5 |
11 |
10 |
10.5 |
13 |
|
м |
- |
0.08 |
0.09091 |
0.1 |
0.09524 |
0.07692 |
|
Р |
л / м |
1,04162 |
0,91662 |
0.8333 |
0.87495 |
1.08333 |
|
Е1 |
1-Р |
-0,04162 |
0,08338 |
0,1667 |
0,12505 |
-0,08333 |
|
Е2 |
Р/(1-Р) |
-25,0269 |
10,99328 |
4,9988 |
6,9968 |
-13,00048 |
|
Е3 |
Р2(1-Р) |
-26,0685 |
10,07666 |
4,1655 |
6,12185 |
-14,08381 |
|
Е4 |
1/(м - л) |
-300,3 |
131,92612 |
59,988 |
83,96306 |
-156,00624 |
|
Е5 |
Р/(м - л) |
-312,798 |
120,92612 |
49,988 |
73,46348 |
-169,00624 |
Первый и пятый варианты строительства АЗС негодны из-за того, что очередь в этих случаях будет расти до бесконечности.
4 вариант хорош по показателю возможности загруженности оборудования Р=0.873 и следовательно малой средней доли простоя оборудования Е1=0.127
2 вариант при этом варианте возникают большие очереди и следовательно больше средняя время простоя автомобилей Е4=142.857
3 вариант приводит к тому, что оборудование в среднем половину времени простаивает, но среднее число автомобилей в системе равно только 1 а средняя потеря времени равны 12 мин при среднем времени обслуживания 10 мин.
Окончательный выбор проекта АЗС очевидно принадлежит лицу принимающему решение но предварительная рекомендация по результатам анализа может состоять в предложений 3-го варианта если исходить от того что наблюдается рост автомобильного парка в стране.
2.2 Алгоритм программы
procedure FormActivate (Sender: TObject); - процедура активаций таблицы вычислений.
procedure Button1Click (Sender: TObject); - процедура производящая основные вычисления и предоставляющая рекомендаций по выбору варианта строительства АЗС на основе анализа.
procedure tab1KeyPress (Sender: TObject; var Key: Char); - процедура запрещающая ввод символов в ячейуи таблицы для ввода исходных данных и запрещающая ввод в остальные поля таблицы для вычислений.
procedure FormClose (Sender: TObject; var Action: TCloseAction); - процедура очищающая поля таблицы при закрытий формы.
procedure Button2Click (Sender: TObject); - процедура загружающая исходные данные автоматический.
procedure Button3Click (Sender: TObject); - процедура очищающая поля таблицы.
2.3 Анализ результатов
Ручные подсчеты и подсчеты, которые выполнил компьютер полностью совпали, следовательно, программа выполнена правильно.
В технологической части данного курсового проекта было произведено решение задачи ручным способом, дан алгоритм программы, который описывает ход работы программы. Проведен анализ результатов, в котором произведено сравнение результатов работы программы с ручным подсчетом.
3. Руководство пользователю
Для того чтобы начать работу нажмите на кнопку «Run», при этом появится таблица для вычисления.
проектирование автозаправочный обслуживание программа
В первую строку необходимо ввести средний интервал между прибытиями автомобилей. В третью строку надо ввести среднее время обслуживания одного автомобиля соответствующим АЗС. Исходные данные можно загрузить автоматический, для этого следует нажать кнопку 'Значения'. После того как приложение выполнит необходимые вычисления можно очистить поля таблицы нажатием кнопки 'Очистить'. Не пытайтесь ввести значения в остальные поля таблицы или символы в поля для ввода исходных значений, это не возможно. После ввода всех необходимых значении щелкните на кнопке «Вычислить».
Для выхода из программы нажмите на кнопку 'Exit'.
Заключение
В работе написаны методы и модели СМО. В настоящее время СМО занимает одно из самых первых мест из области математики в промышленной, бытовой, материальной, компьютерной и других сферах деятельности, где нужны экономические расчеты. Чем дальше мы уходим в современность, тем больше употребляются экономические расчеты, и тем больше будет использоваться СМО. Раньше СМО рассчитывали вручную, сейчас СМО можно рассчитать и на персональном компьютере, на котором будет установлена программа, которая будет делать расчеты СМО. В основном СМО предназначена для того, чтобы иметь большую выгоду предприятию, организации, компании и т.д. при минимальных затратах. При этом рассчитать, чтобы не было простоев рабочих мест, компьютеров, машин перевозимых груз и т.д.
Большой вклад в развитие СМО внесли очень много ученых по всему миру. Так же в развитие СМО были вложены работы и старания многих российских ученых. Одни из самых известных были и есть такие ученые как Гнеденко и Хинчин. Они не щадили себя и свои силы для развития СМО.
Список литературы
1. Бережная Е.В., Бережной В.И. «Математические методы моделирования экономических систем», 2001 г.
2. Саульев В.К. «Математические методы теории массового обслуживания», 1999 г.
3. Бусленко Н.П. «Автоматизация имитационного моделирования сложных систем».
4. Яковлев С.А. «Моделирование систем».
Приложение А
Листинги модулей
unit Unit_tab1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids;
type
TForm2 = class(TForm)
tab1: TStringGrid;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Label1: TLabel;
procedure FormActivate (Sender: TObject);
procedure Button1Click (Sender: TObject);
procedure tab1KeyPress (Sender: TObject; var Key: Char);
procedure FormClose (Sender: TObject; var Action: TCloseAction);
procedure Button2Click (Sender: TObject);
procedure Button3Click (Sender: TObject);
private
{Private declarations}
public
{Public declarations}
end;
Продолжение приложения Б
var
Form2: TForm2;
implementation
{$R *.dfm}
procedure TForm2. FormActivate (Sender: TObject);
begin
tab1. Cells [1,0]:='Формулы';
tab1. Cells [2,0]:='1';
tab1. Cells [3,0]:='2';
tab1. Cells [4,0]:='3';
tab1. Cells [5,0]:='4';
tab1. Cells [6,0]:='5';
tab1. Cells [0,1]:='1/L';
tab1. Cells [0,2]:='L';
tab1. Cells [0,3]:='1/M';
tab1. Cells [0,4]:='M';
TAB1. Cells [0,5]:='P';
tab1. Cells [0,6]:='E1';
tab1. Cells [0,7]:='E2';
TAB1. Cells [0,8]:='E3';
tab1. Cells [0,9]:='E4';
tab1. Cells [0,10]:='E5';
tab1. Cells [1,5]:='L/M';
Продолжение приложения Б
tab1. Cells [1,6]:='1-P';
tab1. Cells [1,7]:='P/(1-P)';
tab1. Cells [1,8]:='P^2/(1-P)';
tab1. Cells [1,9]:='1/(M-L)';
tab1. Cells [1,10]:='P/(M-L)';
end;
procedure TForm2. Button1Click (Sender: TObject);
var
i, j, numb_min:integer;
min:real;
mas:array [1.. 10,1..5] of real;
begin
label1. Caption:='';
for i:=1 to 10 do
for j:=1 to 5 do
begin
if (length (tab1.cells [j+1, i])<>0) and (tab1. Cells [j+1, i]<>' ')
then mas [i, j]:=strtofloat (tab1. Cells [j+1, i])
else mas [i, j]:=0;
end;
for i:=1 to 10 do
for j:=2 to 6 do
tab1. Cells [j, i]:=' ';
for j:=1 to 5 do
Продолжение приложения Б
try
mas [2, j]:=round (1/mas [1, j]*100000)/100000;
mas [4, j]:=round (100000*1/mas [3, j])/100000;
mas [5, j]:=round (100000*mas [2, j]/mas [4, j])/100000;
mas [6, j]:=round (100000*(1-mas [5, j]))/100000;
if mas [6, j]=0 then continue;
mas [7, j]:=round (100000*mas [5, j]/mas [6, j])/100000;
mas [8, j]:=round (100000*sqr (mas[5, j])/mas [6, j])/100000;
mas [9, j]:=round (100000*1/(mas [4, j] - mas [2, j]))/100000;
mas [10, j]:=round (100000*mas [5, j]*mas [9, j])/100000;
except
on EzeroDivide do
begin
showmessage ('Попытка деления на ноль!');
exit;
end;
end;
for i:=1 to 10 do
for j:=1 to 5 do
tab1.cells [j+1, i]:=floattostr (mas[i, j]);
for i:=1 to 5 do
begin
label1. Caption:=label1.caption+'АЗС №'+floattostr(i)+#13;
if mas [5, i]>1 then
label1. Caption:=label1.caption+'В случае данного АЗС очередь будет расти до бесконечности'+#13
else
begin
Продолжение приложения Б
if mas [5, i]=1 then
label1. Caption:=label1. Caption+'Полная загрузка оборудования'+#13
else
begin
if mas [5, i]>0.7 then
label1. Caption:=LABEL1.CAPTION+'Хорошая загрузка оборудования'+#13;
if mas [5, i]<0.4 then
label1. Caption:=label1.caption+'Cистема долго простаивает '+#13;
if (mas [5, i]<0.7) and (mas [5, i]>0.4) then
label1. Caption:=label1. Caption+'Оборудование в среднем простаивает'+#13;
end;
end;
label1. Caption:=label1. Caption+#13;
end;
min:=1000;
for j:=1 to 5 do
begin
if ((mas [10, j]<min) and (mas [10, j]>=0) and (mas [5, j]>0.3)) or (mas [5, j]=1) then
begin
min:=mas [10, j];
numb_min:=j;
end;
end;
if (min<1000) then
begin
Продолжение приложения Б
if min<>0 then
label1. Caption:=label1.caption+'Предлагаем '+inttostr (numb_min)+'-вариант АЗС, учитывая рост '+#13+
'автомобильного парка в стране'+#13
else
label1. Caption:=label1.caption+'Предлагаем '+inttostr (numb_min)+'-вариант АЗС'+#13;
end
else
label1. Caption:=label1.caption+'Нету подходящего варианта'+#13;
end;
procedure TForm2.tab1KeyPress (Sender: TObject; var Key: Char);
begin
if (tab1. Row=1) or (tab1. Row=3) then
begin
case key of
#8,'0'..'9':;
#13:
if tab1.row<tab1.rowCount-1
then tab1.row:=tab1.row+1;
if key<>decimalseparator then
key:=decimalseparator;
else
key:=chr(0);
end;
Продолжение приложения Б
end
else
case key of
#13:
if tab1.row<tab1.rowCount-1
then tab1.row:=tab1.row+1;
else
key:=chr(0);
end;
end;
procedure TForm2. FormClose (Sender: TObject; var Action: TCloseAction);
var
i, j:integer;
begin
for i:=1 to 10 do
for j:=2 to 6 do
tab1. Cells [j, i]:=' ';
end;
procedure TForm2. Button2Click (Sender: TObject);
var
j:integer;
Продолжение приложения Б
begin
for j:=2 to 6 do
tab1. Cells [j, 1]:=floattostr(12);
tab1. Cells [2,3]:=floattostr (12.5);
tab1. Cells [3,3]:=floattostr(11);
tab1. Cells [4,3]:=floattostr(10);
tab1. Cells [5,3]:=floattostr (10.5);
tab1. Cells [6,3]:=floattostr(13);
end;
procedure TForm2. Button3Click (Sender: TObject);
var
i, j:integer;
begin
for i:=1 to 10 do
for j:=2 to 6 do
tab1. Cells [j, i]:=' ';
label1. Caption:='';
end;
end.
Приложение Б
Макеты экранных форм
Рисунок В.1 - Кнопка автоматического ввода значения
Размещено на Allbest.ru
Подобные документы
Общие понятия теории массового обслуживания. Особенности моделирования систем массового обслуживания. Графы состояний СМО, уравнения, их описывающие. Общая характеристика разновидностей моделей. Анализ системы массового обслуживания супермаркета.
курсовая работа [217,6 K], добавлен 17.11.2009Решение системы дифференциальных уравнений методом Рунге-Кутта. Исследованы возможности применения имитационного моделирования для исследования систем массового обслуживания. Результаты моделирования базового варианта системы массового обслуживания.
лабораторная работа [234,0 K], добавлен 21.07.2012Элементы теории массового обслуживания. Математическое моделирование систем массового обслуживания, их классификация. Имитационное моделирование систем массового обслуживания. Практическое применение теории, решение задачи математическими методами.
курсовая работа [395,5 K], добавлен 04.05.2011Моделирование процесса массового обслуживания. Разнотипные каналы массового обслуживания. Решение одноканальной модели массового обслуживания с отказами. Плотность распределения длительностей обслуживания. Определение абсолютной пропускной способности.
контрольная работа [256,0 K], добавлен 15.03.2016Построение модели многоканальной системы массового обслуживания с ожиданием, а также использованием блоков библиотеки SimEvents. Вероятностные характеристики аудиторской фирмы как системы массового обслуживания, работающей в стационарном режиме.
лабораторная работа [191,5 K], добавлен 20.05.2013Понятие случайного процесса. Задачи теории массового обслуживания. Классификация систем массового обслуживания (СМО). Вероятностная математическая модель. Влияние случайных факторов на поведение объекта. Одноканальная и многоканальная СМО с ожиданием.
курсовая работа [424,0 K], добавлен 25.09.2014Функциональные характеристики системы массового обслуживания в сфере автомобильного транспорта, ее структура и основные элементы. Количественные показатели качества функционирования системы массового обслуживания, порядок и главные этапы их определения.
лабораторная работа [16,2 K], добавлен 11.03.2011Изучение теоретических аспектов эффективного построения и функционирования системы массового обслуживания, ее основные элементы, классификация, характеристика и эффективность функционирования. Моделирование системы массового обслуживания на языке GPSS.
курсовая работа [349,1 K], добавлен 24.09.2010Разработка теории динамического программирования, сетевого планирования и управления изготовлением продукта. Составляющие части теории игр в задачах моделирования экономических процессов. Элементы практического применения теории массового обслуживания.
практическая работа [102,3 K], добавлен 08.01.2011Система массового обслуживания типа M/M/1, ее компоненты. Коэффициент использования обслуживающего устройства. Обозначение M/D/1 для системы массового обслуживания. Параметры и результаты моделирования систем. Среднее время ожидания заявки в очереди.
лабораторная работа [984,8 K], добавлен 19.05.2013