3. ПРИМЕР РЕШЕНИЯ ЗАДАЧИ МОДЕЛИРОВАНИЯ

Рассмотрим пример решения задачи исследования системы массового обслуживания с помощью разработанной алгоритмической модели. Выберем следующие входные параметры:

•  среднее время между заявками Тз.ср = 1 ч;

•  максимальное время ожидания Тож.max. = 0,25 ч;

•  число случайных реализаций Np = 5000.

Варьируемые переменные:

•  среднее время обслуживания заявок Тобс.ср = 0,5; 1; 2; 4 ч;

•  число каналов обслуживания NK= 1; 2; 3.

Результаты расчетов приведены в табл. 1.

Таблица 1

Nвар

NK

Тобс.ср

Cотн.ср

1 1 0,5 6,27
2 2 0,5 7,12
3 3 0,5 5,53
4 1 1 4,24
5 2 1 5,83
6 3 1 4,74
7 1 2 2,33
8 2 2 3,61
9 3 2 2,94
10 1 4 0,95
11 2 4 1,40
12 3 4 0,65

Следовательно, при выбранных исходных данных, в частности при среднем времени между соседними заявками, равном 1 ч, наибольшая прибыль достигается при числе каналов NK=2.

Проведенные исследования показали, что оптимальное число каналов зависит от соотношения между величинами среднего времени между соседними заявками и среднего времени обслуживания (рис. 7).

Рис.7. Зависимость оптимального числа каналов nkот параметров Тз.ср и Тобс.ср

 

4. ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОЙ РАБОТЫ

В интегральной среде Visual Basic 5.0 создайте программу «Модель бензоколонки», текст которой приведен ниже. Произведите отладку программы с целью ликвидации формальных ошибок. Произведите проверку программы расчетом. Подставьте те же исходные данные, которые были выбраны в приведенном выше примере. Убедитесь в том, что результаты расчетов практически совпадают. Произведите самостоятельное исследование закономерностей функционирования фирмы с помощью алгоритмической модели. Выберите исходные данные, проведите расчеты и проанализируйте результаты моделирования.

Программа моделирования бензоколонки

1.    Стартовая форма frmForm1

1.1.        Таблица свойств формы 1 (макет на рис. 2)

Объект Свойства Установки
Форма 1

Name

Caption

FrmForm1

Модель СМО с 1,2 или 3 каналами

Командная кнопка 1

Name

Caption

Command1

Расчет

Командная кнопка 2

Name

Caption

Command2

Расчет

Командная кнопка 3

Name

Caption

Command3

Выход

1.2.        Процедуры обработки прерываний

Private Sub Command1_Click()

Nkan = Val(txtNk): TZcp = Val(txtTzs): TObcp = Val(txtTobs)

TWmax = Val(txtTwm): Nr = Val(txtNp)

Call Model2

End Sub

Private Sub Command2_Click()

FrmForm1.txtResult = “”

End Sub

Private Sub Command3_Click()

End

End Sub

2.    Форма frmForm2

2.1.        Таблица свойств формы 2

Объект Свойства Установки
Форма 2

Name

Enabled

Form2

False

2.2.        Процедура обработки прерываний

Private Sub Form2_Load()

End Sub

3.    Модули общего назначения

‘Описание констант и массивов

Public Const Tfin = 10 ‘время окончания работы

Public Const NzMax = 40 ‘максимальное число заявок

Public Tz(Nzmax) ‘массив времени поступления заявок

Public Nob(3) As Integer ‘число обслуженных заявок в каналах

Public TKO(3) ‘время окончания обслуживания заявок

Public TScp, Tobcp, Twmax, Tkmin, TH, TK, z, Ts

Public Snob As Long, Iz As Integer, Nz As Integer, Ir As Integer

Public Nr As Integer, J As Integer, Nkan As Integer, Jmin As Integer 180

Public Sub Model2()

‘Главный модуль

Snob = 0 ‘сумматор числа обслуженных заявок

frmForm1.Enabled = False: FrmForm1.Visible = False

frmForm2.Enabled = True: FrmForm2.Visible = True

For Ir = 1 To Nr ‘начало цикла случайных реализаций

frmForm2.Cls ‘очистка окна формы 2

frmForm2.CurrentX = 600: frmForm2.CurrentY = 200

frmForm2.Print “Расчет ” & Ir & “-й реализации” ‘вывод показаний ‘счетчика числа реализаций в окно формы 2 ‘обнуление локальных переменных

Nz = 0 ‘обнуление числа заявок

Nob(1) = 0: Nob(2) = 0: Nob(3) = 0 ‘обнуление числа обслуженных заявок

TKO(1) = 0: TKO(2) = 0: TKO(3) = 0 ‘время окончания обслуживания

‘заявок в 1, 2 и 3-м каналах

Call ZAJAVKA ‘процедура «Поток заявок»

For Iz = 1 To Nz ‘начало цикла обслуживания заявок

‘выбор номера канала

TKmin = TKO(1)

For J = 1 To Nkan

If TKO(J) < Tkmin Then Tkmin = TKO(J): Jmin = J

Next J

Call SERVICE ‘процедура обслуживания заявки

Next Iz ‘конец цикла обслуживания заявок

‘суммарное число обслуженных заявок:

Snob = Snob + Nob(1) + Nod(2) + Nob(3)

Next Ir ‘конец цикла реализаций

FrmForm2.Enabled = False: FrmForm2.Visible = False

FrmForm1.Enabled = True: FrmForm1.Visible = True

‘показатель эффективности:

Cont = Snob/Nr – 1 + 0.5 * Nkan – 0.5 * Nkan * Nkan

frmForm1.txtResult = Format$(Cont, “#.##”)

End Sub

Sub SAJAVKA

‘Процедура «Поток заявок»

T = 0 ‘модельное время

For J = 1 To Nzmax ‘начало цикла формирования заявок

z = Rnd(1) ‘случайная величина с равномерным распределением

Ts = T – TZcp * Log(z) ‘случайное время поступления заявки

If Ts > Tfin Then Exit For ‘условие прекращения приема заявок

Nz = Nz + 1 ‘счетчик числа заявок

Tz(Nz) = Ts ‘фиксированное время поступления заявки

T = Ts ‘изменение модельного времени

Next J ‘конец цикла формирования заявок

End Sub

Sub SERVICE

‘Процедура «Обслуживания заявок»

J = Jmin ‘номер канала

DTWait = 0 ‘начальное значение времени ожидания

TH = Tz(Iz) ‘время начала обслуживания

If Tz(Iz) < TKO(J) Then ‘проверка необходимости коррктировки

‘корректировка времени начала обслуживания:

DTWait = TKO(J) – Tz(Iz) ‘период ожидания

If DTWait > Twmax Then Exit Sub

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

TH = TKO(J)

End If

Z = Rnd(1) ‘случайная величина с равномерным ‘распределением в интервале (0,1)

TK = TH – Tobcp * Log(z) ‘время окончания обслуживания

If TK > Tfin Then

TKO(J) = Tfin: Exit Sub

End If

Nob(J) = Nob(J) + 1 ‘увеличение числа обслуженных заявок

TKO(J) = TK ‘время окончания обслуживания

End Sub


Информация о работе «Модель бензоколонки»
Раздел: Экономико-математическое моделирование
Количество знаков с пробелами: 21369
Количество таблиц: 7
Количество изображений: 7

Похожие работы

Скачать
107042
2
4

... им машин. Таким образом, в отрасли вновь восстановилась система лидерства в ценах. [3.329] Монополия. Монополизм в России ¨   Основные черты монополии Монополия — наиболее яркое проявление несовершенной конкуренции. Собственно говоря, в условиях монополизации рынка само существование конкуренции может быть признано лишь с большими оговорками. Ведь конкуренция предполагает разделение ...

Скачать
9535
18
2

... значит, найденный план перевозок является оптимальным. Ответ: x21=100; x31=200; x41=200; x42=100; x52=200; x13=300; x43=500.   2.4 Решение задачи 4 Составим математическую модель поставленной задачи. Найти минимум функции f(x1,x2) При ограничениях Заменив знак функции f(x1,x2) на противоположный, перейдем к поиску максимума функции: Теперь задача приведена к стандартному виду ...

Скачать
33342
6
1

... , где  - нижняя граница медианного интервала;  - ширина медианного интервала;  - накопленная частота интервала, предшествующего медианному;  - частота медианного интервала. Рассчитаем медиану ряда распределения рабочих по размеру зарплаты (см. лекцию "Сводка и группировка статистических данных"). Медианным является интервал заработной платы 800-900 грн., поскольку его кумулятивная частота ...

Скачать
76573
7
9

... почуствовав, что внесённое ею в товар улучшение хорошо принято публикой, должна быть готова к резкому возрастанию спроса. Раздел 4. Особенности коммутантной (приспособительской) стратегии предложения товаров на рынок. Коммутантная стратегия преобладает при обычном бизнесе в местных (локальных) масштабах. Сила мелкого неспециализированного предприятия состоит в его лучшей приспособленности к ...

0 комментариев


Наверх