Министерство Образования
Республики Таджикистан
Таджикский Технический Университет
Кафедра «АСОИ и У»
Лабораторная работа
на тему: «Моделирование торгового центра»
Душанбе – 2007
Теоретические сведения
Основные элементы СМО
Торговый центр представляет собой однофазную многоканальную систему с одной очередью конечной длины. При заполнении очереди заявка получает отказ. Целью решения задачи моделирования является определение оптимального количества приборов обслуживания, чтобы среднее время пребывания заявки в системе не превышало заданное.
Структуру СМО можно представить таким образом:
Системой массового обслуживания
называется система, на которую в случайные моменты времени приходят заявки, нуждающиеся в том или ином виде обслуживания. В данном случае, при моделировании торгового центра роль заявок играют покупатели, а роль приборов продавцы.
Любая система включает в себя 4 основные элемента
:
1) входной поток
2) очередь и дисциплины обслуживания
3) прибор и канал обслуживания
4) выходной поток
Входной поток
В процессе функционирования, на вход обслуживающего прибора в неизвестные заранее моменты времени поступают заявки, которые обслуживаются в течение некоторого случайного отрезка времени, после чего прибор освобождается и может принять следующую заявку. Если заявка пришла, когда прибор занят, то она получает отказ в обслуживании и встает в очередь. Из-за случайного характера потока заявок в какие-то моменты времени в системе могут возникать большие очереди, а в другие система может работать с недогрузкой или вообще простаивать. Поэтому возникают задачи количественной оценки эффективности таких систем, обеспечивающих минимизацию суммарных затрат, связанных с ожиданием и потерями со стороны средств обслуживания.
Входной поток может быть одномерным и многомерным. Если на вход системы подается несколько разных потоков, то он является многомерным. Любой входной поток представляется последовательностью однородных событий, следующих одно за другим в случайные моменты времени. Интервал между двумя событиями называется интервалом поступления заявок.
Если интервал поступления заявок является случайной величиной, т.е. изменяется по случайному закону распределения, то поток называется случайным.
Поток называется простейшим или стационарным Пуассоновским потоком, если он обладает 3 свойствами:
1) стационарность
2) безпоследействие
3) ординарность
Стационарность означает, что все вероятностные характеристики потока не зависят от времени. Безпоследействие означает, что события не зависят от предыстории. Ординарность – все заявки проходят по одиночке.
Очередь и дисциплины ее обслуживания
Под очередью понимают линейную цепочку, выстраивающихся в ряд заявок в том или ином виде обслуживания. В зависимости от наличия очереди, СМО разделяются на системы без очереди и системы с ожиданием.
СМО без очереди – это системы, в которых поступившая заявка получает отказ в случае занятости прибора обслуживания.
СМО с ожиданием бывают ограниченными и неограниченными ожиданием. В системах с неограниченным ожиданием поступившая заявка рано или поздно будет обслужена. В системах с ограниченным ожиданием на время пребывания заявок в системе накладывается ряд ограничений, касающихся времени пребывания заявок в очереди, времени пребывания заявок в системе и т.д.
Для регулирования и координации работы очереди используются дисциплины:
1) дисциплина заполнения очереди
2) дисциплина выбора заявок из очереди
К дисциплинам заполнения очереди относятся:
1) естественная форма заполнения
2) кольцевая форма заполнения
3) поисковая форма
4) приоритетная форма заполнения, со сдвигом других заявок
Дисциплины выбора заявок из очереди включают 3 типа:
1) первым пришел – первым обслужен
2) последним пришел – первым обслужен
3) выбор заявок по приоритету
Приборы или каналы обслуживания
Прибором обслуживания
называется устройство, в котором производится непосредственная обработка заявок. В зависимости от количества приборов обслуживания, системы массового обслуживания бывают одноканальные и однофазные, многоканальные и многофазные, смешанные.
Основной характеристикой приборов обслуживания является интенсивность обслуживания μ-количество заявок, обслуживаемых в единицу времени.
Выходной поток
В качестве выходного потока рассматривается количество обслуженных и не обслуженных заявок. Для их оценки используются вероятностные характеристики:
1. вероятность отказа
2. вероятность обслуживания заявок
3. относительная пропускная способность-
4. абсолютная пропускная способность системы – это количество заявок, обслуженных в единицу времени
5. среднее время ожидания заявок в очереди
6. среденее время пребывания заявок в системе
7. средняя длина очереди
8. среднее количество занятых приборов (для многоканальной системы)
9. коэффициент простоя
Основные принципы моделирования СМО на ЭВМ
При моделировании СМО алгоритм должен учитывать все рабочие режимы системы. При моделировании СМО используют 3 основных принципа:
1. принцип ∆t
2. принцип особых состояний
3. принцип последовательной проводки заявок
1. по принципу ∆t переход системы из одного состояния в другое рассматривается (анализируется) с интервалом ∆t
∆t t tmax
t1 t2 t5 tn
2. принцип особых состояний – система анализируется в момент, когда она меняет своё состояние. При этом включаются (анализируются) холостые проходы принципа ∆t
БООС-блок определения очередного события – определяет моменты времени наступления события
БАС-блок анализа состояния – определяет, в каком состоянии находится в данный момент система
БИС – блок измерения состояния – измеряет состояние СМО, переводя ее в следующее или предыдущее
3. Третий принцип наиболее экономичен. По этому принципу судьба любой заявки, поступившей в систему, прослеживается в порядке ее поступления до ее выхода из нее. Заявка проходит все этапы обработки состояний:
Постановка задачи
Имеется торговый центр, в котором имеется n продавцов. Центр обслуживает поток покупателей, приходящих с интенсивностью λ (чел./мин). Среднее время обслуживания покупателя одним продавцом составляет τ (мин). Помещение, в котором располагается торговый центр, может поместить (во время образования очереди) не более m покупателей. Покупатель, пребывающий, когда все m мест очереди заняты, покидает торговый центр, т.е. получает отказ в обслуживании.
Необходимо определить количество продавцов в торговом центре, чтобы среднее время пребывания покупателей в торговом центре не превышало заданного времени. Также необходимо определить вероятностные характеристики обслуживания в торговом центре.
Листинг программы
Private Sub Command1_Click()
Dim lam As Integer, Tzad As Single, m As Byte
Dim x As Single, Tobshvr As Integer
Dim Noch As Integer, Kotk As Integer, i As Integer
Dim Kprod As Integer, Tvrobs As Double
Dim Potk As Single, Pobs As Single, A As Single
Dim Tobshoj As Integer, Kmax As Integer
Dim Tvrochr, K As Integer
Dim Tnezan As Double, Tsroj As Single
Dim Kobs As Integer, Tobs As Single
Dim Tvrpost As Double, Tosv As Double
Dim Tpr As Single
lyamda = Val (Text1. Text)
myu = Val (Text2. Text)
m = Val (Text3. Text)
Tzad = Val (Text4. Text)
Kmax = Val (Text5. Text)
x = 500
K = 0
Kobs = 0
Kotk = 0
Tsys = 0
Noch = 0
Toj = 0
Tosv = 0
Tnezan = 0
For i = 1 To Kmax
x = Rnd(x)
tau = -1 / lyamda * Log (x / 100)
Tobs = -1 / 0.3 * Log (x / 100)
tpost = tpost + tau
K = K + 1
If K > Kmax Then
Exit For
Else
Tosv = tau + Tobs
If tpost >= Tosv Then
If Noch = 0 Then
Kobs = Kobs + 1
Tnezan = Tnezan + tau
Tobs = -1 / 0.3 * Log (x / 100)
Tosv = tau + Tobs
Tpr = Tpr + Tobs
Else
ReDim Boj(i)
ReDim toch(i)
toch (i – 1) = toch(i)
Boj(i) = Boj(i) + Tosv
If Boj(i) > Tzad Then
n = n + 1
End If
Noch = Noch – 1
Toj = Toj + Boj(i)
x = Rnd(x)
Tobs = -1 / 0.1 * Log (x / 100)
Tpr = Tpr + Boj(i)
Tosv = Tosv + Tobs
Kobs = Kobs + 1
End If
Else
If Noch > m Then
Kotk = Kotk + 1
Else
Noch = Noch + 1
ReDim toch(Noch)
toch(Noch) = tpost
End If
End If
End If
Next
Potk = Kotk / Kmax
Pobs = 1 – Potk
A = lyamda * Pobs
tauoj = Toj / Kmax
Kpr = Tnezan / Tosv
List1. AddItem «Вероятност отказа системы (Ротк)=» & Potk
List1. AddItem «Вероятность обслуживания (Робс)=» & Pobs
List1. AddItem «Среднее время ожидания в очереди (Тож)=» & tauoj
List1. AddItem «Общее время (Тобщ)=» & tpost
List1. AddItem «Коэфицент простоя системы (Кпр)=» & Kpr
List1. AddItem «Абсолютная пропускная способность (A)=» & A
List1. AddItem «Количество продовцов (n)=» & n
End Sub
Private Sub Command2_Click()
List1. Clear
End Sub