Модели СМО с однородными заявками на языке
Visual Basic 6.0
Стартовая форма Form l
Макет стартовой формы приведен на рис. 2 (смотри выше).
Таблица свойств формы 1
Объект | Свойства | Установки |
Форма 1 | Name Caption | Form 1 Модель СМО с 1,2 или 5 каналами |
Командная кнопка 1 | Name Caption | Command1 Расчет |
Командная кнопка 2 | Name Caption | Command2 Очистка |
Командная кнопка 3 | Name Caption | Command3 Выход |
Процедуры обработки объектов
"ИМИТАЦИОННАЯ МОДЕЛЬ СИСТЕМЫ МАССОВОГО "ОБСЛУЖИВАНИЯ с 1, 2, 3, 4 или 5 каналами
"Однородными заявками и ограниченным ожиданием
‘----------------- Константы -----------------------------------------------------------------
Const Nzmax = 100 ‘максимальное число заявок
Const NKmax = 5 ‘максимальное число каналов
‘----------------- Описание массивов- -------------------------------------------------------
Dim Tz(Nzmax) 'массив времен поступления
Dim Nobs(NKmax) 'число обслуженных заявок в каналах
Dim TOK(NKmax ‘времена освобождения каналов
Dim TZcp, Tobscp, Tfin, TWmax, TKmin, TH, TK, z, Ts
Dim SNobs As Long, Iz, Nz, Ir, Nr, J, Nkan, Jmin
Private Sub Commandl_Click()
Nkan = Val(Textl): TZcp = Val(Text2): Tobscp = Val(Text3)
DTobs = Val(Text4): TWmax = W(Text5): Tfin = Val(Text6):
Nr = Val(Text7)
Call Raschet
End Sub
Sub Raschet()
'{---------------- процедура «Расчет» --------------------------}
SNob = 0 'сумматор числа обслуженных заявок
For Ir = 1 То Nr 'начало цикла случайных реализаций
'обнуление локальных переменных:
Nz = 0 'обнуление числа заявок
For i = 1 То NKmax
Nobs(i) = 0: TOK(i) = 0
Next
Call ZAJAVKA 'процедура «Поток заявок»
For Iz = 1 To Nz 'начало цикла обслуживания заявок
'выбор номера канала:
TKmin = 100
For J = 1 То Nkan
If ТОЩ J) < TKmin Then TKmin = TOK(J): Jmin = J
NextJ
IfNr=l Then Call Debug2
Call SERVICE 'процедура обслуживания заявки
Next Iz 'конец цикла обслуживания заявок
For i = 1 То Nkan
SNobs = SNobs + Nobs(i) 'суммарное число обслуженных заявок
Nexti
Nextlr 'конец цикла реализаций
'....показатель эффективности:
Cotn = SNobs / Nr - 1 + 0.5 * Nkan - 0.5 * Nkan * Nkan
Forml.Text8.ForeColor = &HFF
Forml.Text8 = Format$(Cotn, «0.0»)
End Sub
Siib ZAJAVKAO 'Процедура «Поток заявок»
Т = 0 'модельное время
For J = 1 То Nzmax 'начало цикла формирования заявок
z = Rnd( 1) 'случайная величина с равномерным
'распределением в интервале (0,1)
Ts = Т - TZcp * Log(z) 'случайное время поступления заявки
'...проверка условия прекращения приема заявок:
If Ts > Tfin * 60 Then Exit For
Nz = Nz + 1 'счетчик числа заявок
Tz(Nz) = Ts 'фиксированное время поступления заявки
Т = Ts 'изменение модельного времени
Next J 'конец цикла формирования заявок
End Sub
Sub SERVICEO
'------- Процедура «Обслуживание заявок»
J = Jmin
DTVteit = 0
TH = Tz(Iz) 'время начала обслуживания
'проверка необходимости корректировки времени:
If Tz(Iz) < TOK(J) Then
'корректировка времени начала обслуживания:
DTWait = TOK(J) - Tz(Iz) 'период ожидания
If DTWait > TWmax Then Exit Sub
TH = TOK(J) 'время начала обслуживания
End If
z = Rnd(l) 'случайная величина с равномерным
'распределением в интервале (0,1)
ТК = TH + Tobscp + DTods * (z - 0.5) 'время окончания обслуживания
If ТК > Tfin * 60 Then
TOK(J) = Tfin: Exit Sub
End If
Nobs(J) = Nobs(J) + 1 'увеличение числа обслуженных заявок
TOK(J) = ТК 'время окончания обслуживания
'If Nr = 1 Then Call Debug4
End Sub
Private Sub Command2_Click()
Text8 = ""
End Sub
Private Sub Command3_Click()
End
End Sub
ЗАДАНИЕ 9
Особенности и методы создания модели управления запасами
Постановка задачи
Основной целью курсовой работы является ознакомление с современными подходами и методами создания и использования модели управления запасами.
В задании приводятся результаты разработки модели бензоколонки (Приложение 1) с использованием исходных данных, формируемым в результате предварительных исследований, представленных в форме беседы предпринимателя с консультантом (разработчиком). Такая форма представления материала предполагает более доходчивое понимание студентами самой сути и содержания основных этапов построения модели, включая рассмотрение всех основных этапов, и ее использования для последующего анализа. В приложении 1 приводится также пример решения поставленной задачи моделирования. Приведенный материал Приложения 1 дает возможность самостоятельного выполнения сформулированных в части 3 заданий.
Необходимым условиям успешного выполнения задания являются базовые знания использования языка Visual Basic 6.0. В качестве источников информации могут служить специализированная литература и рекомендованные ниже источники (часть 4).
2. Пояснительная запискак отчету по выполненной курсовой работе должна соответствовать установленным требованиям. В пояснительной записке желательно представление фрагментов экранных заставок, позволяющих наглядно представить очередность и особенности выполнения отдельных процедур и операций при работе с разработанной программой. В заключении к проделанной работе необходимо представить основные выводы и рекомендации по применению полученных результатов.
3. Задания для самостоятельной работы
Задание 3.1
В среде Visual Basic 6.0 создайте исполняемый модуль программы «Модель управления запасами», текст которой приведен в Приложении 2. Проведите отладку программы с целью ликвидации формальных ошибок.
Задание 3.2
Проведите проверку программы расчетом. Подставьте те же исходные данные, которые были выбраны в приведенном выше примере. Убедитесь в том, что результаты расчетов практически совпадают.
Задание 3.3
Проведите самостоятельное исследование закономерностей функционирования фирмы с помощью имитационной модели. Выберите исходные данные, проведите расчеты и проанализируйте результаты моделирования.