Создание имитационной модели Банка в системе SIMULINK

 

Задание


Рассматривается модель банка, в котором два кассира сидят в помещение, а два обслуживают клиентов, подъезжающих на автомобилях. Часть клиентов, поступающих в банк, пытаются сначала обслужится у автомобильных кассиров. Время между поступлениями этих кассиров распределено экспоненциально с математическим ожиданием 0,75 мин. Пространство перед автомобильными кассирами ограничено. В очереди к первому кассиру могут находиться три автомобиля, а в очереди ко второму - четыре. Время обслуживания первым автомобильным кассиром нормально распределено с математическим ожиданием 0,5 мин и среднеквадратичным отклонением 0,25 мин. Продолжительность обслуживания вторым кассиром распределена равномерно на интервале 0,2-1,0 мин. Если прибывший на автомобиле клиент не может встать в очередь к автомобильным кассирам из-за отсутствия места, он оставляет машину на стоянке и следует к кассирам, сидящим в здании банка. Отметим, что эти кассиры начинают работу на час позже автомобильных.

Другая часть клиентов поступает прямо на обслуживание к кассирам в помещение банка. Интервал между их прибытиями распределен экспоненциально с математическим ожиданием 0,5 мин. Они встают в очередь с клиентами, прибывшими на автомобилях. К обоим кассирам стоит одна очередь. В очереди не может стоять более 7 клиентов. Клиенты, поступившие в банк, когда очередь заполнена до предела, не обслуживаются и покидают банк. Время обслуживания у обоих кассиров распределено равномерно на интервале 0,1-1,2 мин. Проимитируйте работу банка за 8 ч.

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

.Среднее число заявок в очереди 1

.Среднее число заявок в очереди 2

.Среднее число заявок в очереди 3

.Число не обслуженных заявок

.Занятость автокассира 1

.Занятость автокассира 2

.Занятость кассиров, находящихся в помещение банка

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

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

.Среднее время обслуживания заявок кассирами банка


Концептуальная модель


В данной системе взаимодействуют следующие объекты:

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

2.Клиент - человек, пришедший в банк для того, чтобы его обслужили.

3.Очередь - некоторое пространство перед кассирами, предназначенное для тех клиентов, для которых не оказалось свободных кассиров (длина очереди ограничена).

4.Автокассир - работник банка, обслуживающий клиентов, приехавших на автомобиле.

5.Кассир - работник банка, обслуживающий клиентов, пришедших прямо в помещение банка, а также тех клиентов, которые приехали на автомобилях, но которым не досталось места в очереди к автомобильным кассирам.


ОбъектАтрибутыАвтоклиент (клиент)Время прихода на обслуживание к банку (в банк) - время поступления очередной заявки на обслуживание в одну из очередей (интервалы между поступлениями имеют экспоненциальное распределение) Время ухода от банка (из банка) - время, равное сумме времени прихода на обслуживание и время обслуживания заявкиОчередь1Число автоклиентов в очереди 1 - количество клиентов, приехавших на автомобилях и ожидающих начала обслуживания у первого автокассира (длина очереди 1 не должна превышать 3)2Число автоклиентов в очереди 2 - количество клиентов, приехавшие на автомобилях, и вынужденных ожидать обслуживания у второго автокассира, т.к. очередь у первого автокассира уже имеет максимальную длину (длина очереди 2 не должна превышать 4)3Число клиентов в очереди 3 - количество клиентов, которые поступают прямо на обслуживание в помещение банка, и клиенты, приехавшие на автомобилях, и вынужденных ожидать обслуживания у кассиров банка, т.к. очереди у первых двух автокассиров уже имеют максимальную длину (длина очереди 3 не должна превышать 7). Если очередь 3 полная, то клиенты останутся не обслуженнымиАвтокассир (кассир)Признак занятости - отражает тот факт, что автокассир (кассир) уже обслуживает одного автоклиента (клиента).

Диаграмма связей



Разработка библиотеки функциональных блоков


Концептуальная модель системы

Основные функциональные блоки для построения модели Банка


Наименование: AutoClients.

Назначение: Генерирует поток событий с заданным распределением интервалов времени между ними. Имитируется поток клиентов, приехавших на автомобилях.

Изображение:








Описание входов: отсутствуют.

Описание выходов:

vОтражает факт приезда автоклиента или отсутствие его на текущем шаге интегрирования.

Состояния элемента: Данный элемент может находиться либо в состоянии отсчета времени прихода очередного автоклиента, либо генерации факта его прихода (генерация выходного импульса).

События, на которые реагирует элемент: На внешние события элемент не реагирует. Единственное событие, на которое он будет реагировать - наступление времени прихода очередной заявки.

Алгоритм функционирования: Блоком «Gen exp» генерируется случайная величина (по экспоненциальному закону) - это время, через которое поступит следующая заявка. Далее идет отсчет полученного временного интервала и процесс повторяется.

банк атрибут библиотека модель

Блок-схема модели:









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

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


Окно установки параметров:









Наименование: Clients.

Назначение: Генерирует поток событий с заданным распределением интервалов времени между ними. Имитируется поток клиентов, поступающих прямо на обслуживание к кассирам в помещение банка.

Изображение:






Описание входов: отсутствуют.

Описание выходов:

vВыход отражает факт прихода клиента в банк или отсутствие его на текущем шаге интегрирования.

Состояния элемента: Данный элемент может находиться либо в состоянии отсчета времени прихода очередного клиента, либо генерации факта его прихода (генерация выходного импульса).

События, на которые реагирует элемент: На внешние события элемент не реагирует. Единственное событие, на которое он будет реагировать - наступление времени прихода очередной заявки.

Алгоритм функционирования: Блоком «Gen exp» генерируется случайная величина (по экспоненциальному закону) - это время, через которое поступит следующая заявка. Далее идет отсчет полученного временного интервала и процесс повторяется (подсистема «Gen exp» описывается в Приложение).


Блок-схема модели:









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

vU(2) - математическое ожидание экспоненциального распределения между поступлениями заявок.


Окно установки параметров:








Наименование: Queue 1.

Назначение: Предназначен для накопления заявок на обслуживание первым автокассиром.

Изображение:







Описание входов:

vПоток автоклиентов (импульсов), которые генерируются блоком «AutoClients».

vНа этот вход поступают сигналы, имитирующие обслуженных автоклиентов на текущем шаге интегрирования (второй выход блока «AutoCashier 1»).

Описание выходов:

vКоличество заявок, находящихся в очереди в данный момент времени (количество автоклиентов, ожидающих обслуживания).

vОтражает факт того, что клиенту, прибывшему на текущем шаге интегрирования не досталось места в очереди к первому автокассиру. Следовательно, он будет пытаться занять очередь ко второму автокассиру (первый вход блока «Queue 2»). Состояния элемента: Обрабатывает, поступающие заявки на вход 1 блока, а также учитывает сигналы, приходящие на вход 2. События, на которые реагирует элемент: Регулирует поступление новой заявки, а также реагирует на поступление сигнала о том, что очередная заявка обслужена.

Алгоритм функционирования: Если на вход 1 поступает сигнал, то элемент в зависимости от состояния очереди либо принимает заявку (суммирует с текущим количеством), либо отправляет далее (в очередь ко второму автокассиру - на вход 1 блока «Queue 2»). Сигнал на входе 2 говорит о том, что очередная заявка обслужена и вычитается из общего количества заявок в очереди.


Блок-схема модели:















Параметры, устанавливаемые пользователем: отсутствуют.



Окно установки параметров:







Наименование: Queue 2.

Назначение: Предназначен для накопления заявок на обслуживание вторым автокассиром.

Изображение:







Описание входов:

vПоток автоклиентов (импульсов), которым не досталось места в очереди первого автокассира (второй выход блока «Queue 1»).

vНа этот вход поступают сигналы, имитирующие обслуженных автоклиентов на текущем шаге интегрирования (второй выход блока «AutoCashier 2»).

Описание выходов:

vКоличество заявок, находящихся в очереди в данный момент времени (количество автоклиентов, ожидающих обслуживания).

vОтражает факт того, что клиенту, прибывшему на текущем шаге интегрирования не досталось места в очереди ко второму автокассиру. Следовательно, он идет к банку и смотрит открыт ли он (первый вход блока «Delay (1 hour)»). Состояния элемента: Обрабатывает, поступающие заявки на вход 1 блока, а также учитывает сигналы, приходящие на вход 2.

События, на которые реагирует элемент: Регулирует поступление новой заявки, а также реагирует на поступление сигнала о том, что очередная заявка обслужена.

Алгоритм функционирования: Если на вход 1 поступает сигнал, то элемент, в зависимости от состояния очереди, либо принимает заявку (суммирует с текущим количеством), либо отправляет далее (к кассирам в банке - на вход 1 блока «Delay (1 hour)». Сигнал на входе 2 говорит о том, что очередная заявка обслужена и вычитается из общего количества заявок в очереди.


Блок-схема модели:












Параметры, устанавливаемые пользователем: отсутствуют.


Окно установки параметров:







Наименование: Delay (1 hour).

Назначение: Отсчитывает 1 час от начала рабочего дня и только после этого начинает пропускать клиентов на обслуживание в банк.

Изображение:








Описание входов:

vСигналы, пришедшие на этот вход, символизируют автоклиентов, которым не досталось места ни в первой, ни во второй очереди к автокассирам.

vПоток клиентов (импульсов), которые генерируются блоком «Clients».

Описание выходов:

vСуммарный поток клиентов, пришедших на входы данного блока.

Состояния элемента: Обрабатывает заявки, поступающие с обоих входов.

События, на которые реагирует элемент: Реагирует на поступление новых заявок.

Алгоритм функционирования: Принимает заявки с обоих входов, суммирует их и, если прошел 1час с начала рабочего дня, то пропускает их.


Блок-схема модели:











Параметры, устанавливаемые пользователем: отсутствуют.


Окно установки параметров:






Наименование: Queue 3.

Назначение: Предназначен для накопления заявок на обслуживание кассирами банка.

Изображение:








Описание входов:

vПоток клиентов (импульсов), которые генерируются блоком «Delay (1 hour)».

vНа этот вход поступают сигналы, имитирующие обслуженных клиентов на текущем шаге интегрирования (второй выход блока «Cashiers»).

Описание выходов:

vКоличество заявок, находящихся в очереди в данный момент времени (количество клиентов, ожидающих обслуживания).

Состояния элемента: Обрабатывает, поступающие заявки на вход 1 блока, а также учитывает сигналы, приходящие на вход 2.

События, на которые реагирует элемент: Регулирует поступление новой заявки, а также реагирует на поступление сигнала о том, что очередная заявка обслужена.

Алгоритм функционирования: Если на вход 1 поступает сигнал, то элемент в зависимости от состояния очереди либо принимает заявку (суммирует с текущим количеством), либо не принимает (клиент останется не обслуженным). Сигнал на входе 2 говорит о том, что очередная заявка обслужена и вычитается из общего количества заявок в очереди.


Блок-схема модели:

Параметры, устанавливаемые пользователем: отсутствуют.


Окно установки параметров:







Наименование: AutoCashier 1.

Назначение: Для обслуживания автоклиентов.

Изображение:








Описание входов:

vКоличество заявок, находящихся в очереди в данный момент времени (количество автоклиентов, ожидающих обслуживания) (первый выход блока «Queue 1»).

Описание выходов:

vПередается время обслуживания каждого клиента (поступает на вход блока «Statistic» ).

vСигналы, имитирующие обслуженных автоклиентов на текущем шаге интегрирования.

Состояния элемента: Элемент может находиться либо в состоянии - «занят», когда идет обслуживание клиента, либо в состоянии «свободен», когда он уже обслужил очередного автоклиента и готов принять следующего. События, на которые реагирует элемент: реагирует на приход нового клиента. Алгоритм функционирования: Если на первый вход блока подается не нулевой сигнал (т.е. очередь не пуста) и автокассир находится в состоянии «свободен», то он принимает на обслуживание одну заявку и начинается отсчет времени обслуживания данной заявки, сгенерированном блоком «Gen norm». Автокассир переходит в состояние «занят». По истечении полученного времени генерируется сигнал (подается на второй выход блока) о том, что обслуживание закончено, и автокассир переходит в состояние «свободен».


Блок-схема модели:













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

vU(3) - мат. ожидание нормального распределения времени обслуживания заявок.

vU(4) - среднеквадратичное отклонение нормального распределения времени обслуживания заявок.


Окно установки параметров:









Наименование: AutoCashier 2.

Назначение: Для обслуживания автоклиентов, которые не смогли обслужиться у автокассира 1.

Изображение:








Описание входов:

vКоличество заявок, находящихся в очереди в данный момент времени (количество автоклиентов, ожидающих обслуживания) (первый выход блока «Queue 2»).

Описание выходов:

vПередается время обслуживания каждого клиента (поступает на вход блока «Statistic» ).

vСигналы, имитирующие обслуженных автоклиентов на текущем шаге интегрирования.

Состояния элемента: Элемент может находиться либо в состоянии - «занят», когда идет обслуживание клиента, либо в состоянии «свободен», когда он уже обслужил очередного автоклиента и готов принять следующего.

События, на которые реагирует элемент: реагирует на приход нового клиента.

Алгоритм функционирования: Если на первый вход блока подается не нулевой сигнал (т.е. очередь не пуста) и автокассир находится в состоянии «свободен», то он принимает на обслуживание одну заявку и начинается отсчет времени обслуживания данной заявки, сгенерированном блоком «Gen info». Автокассир переходит в состояние «занят». По истечении полученного времени генерируется сигнал (подается на второй выход блока) о том, что обслуживание закончено, и автокассир переходит в состояние «свободен».


Блок-схема модели:


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

vU(5) - начальное значение интервала равномерного распределения времени обслуживания заявок.

vU(6) - конечное значение интервала равномерного распределения времени обслуживания заявок.


Окно установки параметров:









Наименование: Cashiers.

Назначение: Для обслуживания клиентов, которые не смогли обслужиться у автокассиров и клиентов, которые поступили прямо на обслуживание к кассирам банка.

Изображение:








Описание входов:

vКоличество заявок, находящихся в очереди в данный момент времени (количество клиентов, ожидающих обслуживания) (выход блока «Queue 3»).

Описание выходов:

vПередается время обслуживания каждого клиента (поступает на вход блока «Statistic» ).

vСигналы, имитирующие обслуженных автоклиентов на текущем шаге интегрирования. Состояния элемента: Элемент может находиться либо в состоянии - «занят», когда идет обслуживание клиента, либо в состоянии «свободен», когда он уже обслужил очередного клиента и готов принять следующего. События, на которые реагирует элемент: реагирует на приход нового клиента.

Алгоритм функционирования: Если на первый вход блока подается не нулевой сигнал (т.е. очередь не пуста) и кассиры находится в состоянии «свободны», то он принимает на обслуживание заявки (заявку) и начинается отсчет времени обслуживания данных заявок (заявки), сгенерированном блоком «Gen info». Кассиры переходит в состояние «заняты». По истечении полученного времени генерируется сигнал (подается на второй выход блока) о том, что обслуживание закончено и кассиры переходят в состояние «свободны» (подсистема «Gen unif» описывается в Приложение).


Блок-схема модели:


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

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

vU(8) - конечное значение интервала равномерного распределения времени обслуживания заявок.


Окно

установки параметров:








Наименование: Statistic.

Назначение: Предназначен для нахождения статистических данных системы.

Изображение:













Описание входов:

vКоличество заявок, находящихся в очереди 1 в данный момент времени (первый выход блока «Queue 1»).

vПередается время обслуживания каждого клиента первым автокассиром (первый выход блока «AutoCashier 1»).

vКлиенты, обслуженные первым автокассиром (второй выход блока «Queue 1»).

vКоличество заявок, находящихся в очереди 2 в данный момент времени (первый выход блока «Queue 2»).

vПередается время обслуживания каждого клиента вторым автокассиром (первый выход блока «AutoCashier 2»).

vКлиенты, обслуженные первым автокассиром (второй выход блока «Queue 1»).

vКоличество заявок, находящихся в очереди 3 в данный момент времени (выход блока «Queue3»).

vПередается время обслуживания каждого клиента кассирами банка (первый выход блока «Cashiers»).

vКлиенты, обслуженные первым автокассиром (второй выход блока «Queue 1»).

vКлиенты, которые прибыли на обслуживание к кассирам банка (выход блока «Delay»).

Описание выходов:

vСреднее количество клиентов в первой очереди.

vСреднее количество клиентов во второй очереди.

vСреднее количество клиентов в третей очереди.

vКоличество не обслуженных клиентов.

vЗанятость первого автокассира.

vЗанятость второго автокассира.

vЗанятость кассиров банка.

vСреднее время обслуживания клиентов первым автокассиром.

vСреднее время обслуживания клиентов вторым автокассиром.

vСреднее время обслуживания клиентов кассирами банка.

Состояния элемента: Постоянно вычисляет статистические данные.

Алгоритм функционирования: Используя данные входов, вычисляет статистические данные.


Блок-схема модели:


Параметры, устанавливаемые пользователем: отсутствуют.

Окно установки параметров:







Описание модели


Модель работы Банка состоит из источников заявок: «AutoClients», «Clients»; очередей к обслуживающим пунктам (три пункта - соответственно «Queue 1», «Queue 2», «Queue 3»); самих обслуживающих пунктов: «AutoCashier 1», «AutoCashier 2», «Cashiers»; блока «Delay (1 hour)» и блока статистики «Statistic».

Из блока «AutoClients» поступают автоклиенты (сигналы) на первый вход блока «Queue 1», образуя очередь. Т.к. очередь ограничена (максимальная длина 3 заявки), то проверяем, есть ли место для пришедшего клиента. Если место есть, то он будет ждать своей очереди на обслуживание к автокассиру 1 (блок «AutoCashier 1»). Если в очереди уже имеется три клиента, то прибывшая заявка идет ко второй очереди (первый вход блока «Queue 2»). Эта очередь также ограничена (максимальная длина 4 заявки). Если место есть, то она будет ждать своей очереди на обслуживание к автокассиру 2 (блок «AutoCashier 2»). Если прибывший на автомобиле клиент не может встать в очередь к автомобильным кассирам из-за отсутствия места, он следует к кассирам, сидящим в здании банка. Другая часть клиентов поступает прямо на обслуживание к кассирам в помещение банка (из блока «Clients»). Т.к. кассиры начинают работу на час позже автомобильных, то блок «Delay (1 hour)» осуществляет отказ на обслуживание, если время еще не прошло.

Клиенты встают в очередь с клиентами, прибывшими на автомобилях («Queue 3»). В очереди не может стоять более 7 клиентов. Клиенты, поступившие в банк, когда очередь заполнена до предела, не обслуживаются и покидают банк. Из блока «Queue 3» заявки подаются на первый вход блока «Cashiers».

Результаты работы блоков поступают на входы блока «Statistic», где рассчитываются статистические данные.


Разработка плана экспериментов


Для получения интегральных характеристик системы проведем ряд имитационных экспериментов и усредним полученные результаты по каждой характеристике.

При проведение экспериментов будут установлены следующие параметры:

Время интегрирования (мин) 480

Метод интегрирования Discrete (no continuous states)

Шаг интегрирования Fixed - step; 0.1; auto

Математическое ожидание интервалов между приходами автоклиентов (мин) 0.75

Математическое ожидание интервалов между приходами клиентов (мин) 0.5

Мат.ожидание и ср.кв.отклонение обслуживания первым автокассиром 0.5*0.25

Границы временного интервала обслуживания вторым автокассиром 0.2 - 1.0

Границы временного интервала обслуживания кассирами банка 0.1 - 1.2

В ходе имитации будут определены следующие измеряемые величины:

·Среднее число заявок в очереди 1

·Среднее число заявок в очереди 2

·Среднее число заявок в очереди 3

·Число не обслуженных заявок

·Занятость первого автокассира

·Занятость второго автокассира

·Занятость кассиров, находящихся в помещение банка

·Среднее время обслуживания заявок первым автокассиром

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

·Среднее время обслуживания заявок кассирами банка



Результаты имитационных экспериментов


№Среднее число заявок в очереди 1Среднее число заявок в очереди 2Среднее число заявок в очереди 3Число необсл. заявокЗанятость первого кассираЗанятость второго кассираЗанятость кассиров банкаСреднее время обслуживания заявок первым кассиромСреднее время обслуживания заявок вторым кассиромСреднее время обсл. заявок кассирами банка10.5240.0260.19210.0760.0030.0730.0680.1220.05420.4770.0210.22100.0770.0040.0750.0710.1440.05930.5190.0210.16520.0730.0030.0720.0680.1520.05340.4810.0220.19900.0750.0030.0730.0690.1400.05450.5630.0240.14610.0750.0040.0720.0680.1190.054


Расчет характеристик системы. Графики процессов










Время обслуживания клиентов первым автокассиром










Время обслуживания клиентов вторым автокассиром









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










Количество клиентов в очереди к первому кассиру










Количество клиентов в очереди к первому кассиру










Количество клиентов в очереди к кассирам банка



Основные характеристики системы


Среднее число заявок в очереди 1Среднее число заявок в очереди 2Среднее число заявок в очереди 3Число необсл. заявокЗанятость первого кассираЗанятость второго кассираЗанятость кассиров банкаСреднее время обслуживания заявок первым кассиромСреднее время обслуживания заявок вторым кассиромСреднее время обслуживания заявок кассирами банкаСреднее0.51280.02280.18460.80.07520.00340.0730.06880.13540.0548Дисперсия0.001244.7Е-60.000870.71.3Е-63 Е-71.5 Е-61.7 Е-60.000215.7 Е-6


Выводы


В ходе проектирования имитационного процесса работы Банка была изучена часть программного комплекса Mat Lab - среда Simulink.

В процессе работы системы на наше усмотрение были сняты некоторые статистические данные. Эти результаты позволяют сделать нам некоторые выводы об организации работы такого банка:

Т.к. число клиентов, которых приходится обслуживать второму кассиру по сравнению с другими кассирами очень невелико. Следовательно, его можно исключить из организации банка, а восполнить пробелы можно, увеличив максимальную длину очереди первого кассира или кассиров в банке (примерно на одну заявку). Также можно кассирам банка начинать свою работу одновременно с автокассиром. Они помогут обслуживать автоклиентов, которым не досталось места в очереди у автокассиров Т.к. результаты имитационных экспериментов показали, что количество не обслуженных клиентов мало (примерно 0 - 2 клиента), то небольшие изменения не повлекут за собой каких-либо затруднений в работе кассиров и банка в целом.


Приложение


Подсистемы основных библиотечных блоков

Наименование: Gen exp.

Назначение: Предназначен для генерации экспоненциально распределенных случайных величин.


Блок-схема модели:








MATLAB Function:

Exprnd(u(1))

Наименование: Gen norm.

Назначение: Предназначен для генерации нормально распределенных случайных величин.


Блок-схема модели:









MATLAB Function:

Normrnd(u(1), u(2))

Наименование: Gen unif.

Назначение: Предназначен для генерации равномерно распределенных случайных величин.


Блок-схема модели:








MATLAB Function:

Unifrnd(u(1), u(2))


Задание Рассматривается модель банка, в котором два кассира сидят в помещение, а два обслуживают клиентов, подъезжающих на автомобилях. Часть клиентов, п

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ