Е.И. Большакова - Задания практикума по объектно-ориентированному программированию (1162571), страница 7
Текст из файла (страница 7)
Цель моделирования – уточнениезаложенных в систему процедур актуализации календаря. Периодмоделирования – N дней (7≤ N ≤ 30), шаг – полчаса или час. В параметрымоделирования можно включить условия выдачи напоминаний о событияхкалендаря и/или условия разрешения выявленных конфликтов. По окончаниимоделирования система выводит итоговый отчет по всем событиям,произошедшим на фирме в течение периода моделирования.Моделирование работы курьерской службыКурьерская служба создана для оперативной пересылки корреспонденции(служебных писем) между N (3≤ N ≤ 7) филиалами крупной фирмы.
Пересылкаосуществляется несколькими (1≤ М ≤ 5) курьерами службы, работой которыхуправляет диспетчер. Курьеры могут перевозить более одного письма, в началерабочего дня они рассредоточены по филиалам фирмы. Известно среднее время,необходимое для переезда курьера из одного конкретного филиала в другой.Требуется разработать систему, моделирующую функции диспетчера,который фиксирует поступающие в течение рабочего дня (с 9.00 до 18.00 вечера)заявки на пересылку корреспонденции и организует работу курьеров. Заявки напересылку поступают случайным образом, но их распределение неравномернопо филиалам и времени дня, максимальное количество заявок возникает всередине рабочего дня.
Заявка включает указание филиала, являющегосяпунктом отправления письма; указание пункта назначения отправляемогописьма, а также допустимый срок доставки (срочность доставки).Цель моделирования – сбор информации о работе курьеров дляпоследующей оптимизации курьерской службы: например, необходимо найтичисло курьеров, при котором сокращается общее время «холостых» переездовкурьеров между филиалами фирмы (т.е. переездов без перевозки писем). Периодмоделирования – одна неделя, шаг моделирования – полчаса или час.Интервал между появлением двух заявок следует моделировать какслучайную величину из определенного диапазона (например, от 2 до 20 минут) –от этого диапазона зависит плотность потока заявок.
Случайным образомопределяются и составляющие заявки: пункты отправления и назначения исрочность заявки. Фактическое время доставки письма курьером отличается отсреднего (обычного) времени на величину случайного отклонения (изменяется вдиапазоне от –5 до 30 минут).В параметры моделирования следует включить числа М и N, шагмоделирования, диапазоны изменения вышеуказанных случайных величин.Визуализация работы курьерcкой службы может включать показ схемырасположения филиалов фирмы, на которой указывается текущееместоположение курьеров и номера выполняемых ими заявок. Отображаютсятакже списки всех поступивших и выполненных заявок, для последних должнобыть также указано время начала и окончания их выполнения.
По окончании23моделирования должна выводиться статистическая информация, в том числе –показатели занятости курьеров фирмы, средняя длительность их поездок, общеевремя «холостых» переездов.Система поддержки бронирования и заселения гостиницыНебольшая гостиница содержит K номеров (20≤ K ≤ 30), различающихсяпо степени комфорта и стоимости: «люкс», «полулюкс», одноместные, простыедвухместные, двухместные с раскладным диваном (например, 70 у.е.
за деньпроживания в одноместном номере, 120 у.е. – за номер «люкс»).Требуется создать компьютерную систему, автоматизирующуюуправление занятостью номеров гостиницы. Система обрабатывает входнойпоток заявок двух видов: заявки, бронирующие определенные типы номеров на определенный срок; заявки на заселение в текущий момент.Система хранит информацию о фактической занятости всех номеров и оих занятости в ближайшие дни (учитываются уже оплаченные вперед дни), атакже сведения о произведенной брони номеров, и использует все эти данныепри обработке заявок.
При бронировании номеров система автоматическиформирует сообщение-подтверждение брони, а при выезде постояльцев онаоформляет им счета.Стратегия обработки заявок строится так, чтобы добиться максимальнойзанятости гостиницы с целью увеличения ее прибыли. Для этого система гибкораспоряжается номерным фондом: в частности, при нехватке нужных номеровможно использовать пустующие номера большей комфортности (по меньшейцене), например, при нехватке одноместных номеров можно поселить одногочеловека в двухместный номер (за 70% его стоимости).Для тестирования построенной системы необходимо смоделироватьвходной поток заявок на бронирование и поселение.
Вид и параметры каждойзаявки определяются случайным образом. Интервал между появлением двухзаявок следует моделировать как случайную величину из определенногодиапазона (например, от 1 до 5 часов).Период моделирования – М дней (12≤ М ≤ 30), шаг – несколько часов.Цель моделирования – изучение стратегий обработки заявок на заселение. Впараметры моделирования следует включить: числа K и М, количество номеровкаждой категории, характеристики используемых случайных величин.В ходе моделирования система должна предоставлять всю необходимуюинформацию о занятости номеров гостиницы.
По окончании моделированиявыводится статистика заселения номеров, выполненных заявок, процентзагруженности отдельных категорий номеров и гостиницы в целом.Моделирование работы морского портаТребуется создать компьютерную модель обслуживания потока заявок наразгрузку, поступающих от грузовых судов (сухогрузов и танкеров),прибывающих в морской порт. Грузовые суда прибывают в порт согласнорасписанию, но возможны опоздания и досрочные прибытия.
Расписание24включает день и время прибытия, название судна, вид груза и его вес, а такжепланируемый срок стоянки в порту для разгрузки.Для разгрузки судов в порту используются три вида разгрузочных кранов,соответствующих трем видам грузов: сыпучим и жидким грузам, контейнерам.Число разгрузочных кранов каждого вида ограничено, так что поступающиезаявки на разгрузку одного вида груза образуют очередь. Длительностьразгрузки судна зависит от вида и веса его груза, а также некоторых другихфакторов, например, погодных условий. Любой дополнительный (сверхзапланированного срока) день стояния судна в порту (из-за ожидания разгрузкив очереди или из-за задержки самой разгрузки) влечет за собой выплату штрафа(например, 2 тыс.
у.е. за каждый дополнительный день простоя судна).При моделировании прибытия судов отклонение их от расписаниярассматривается как случайная величина с равномерным распределением внекотором интервале (например, от -2 до 9 дней). Еще одной случайнойвеличиной, изменяющейся в фиксированном диапазоне (например, от 0 до 12дней), является время задержки окончания разгрузки судна по сравнению собычным (зависящим только от вида груза и его веса).Цель моделирования работы морского порта – определение для заданногорасписания прибытия судов минимально достаточного числа кранов в порту,позволяющего уменьшить штрафные суммы.
Период моделирования – месяц,шаг моделирования – 1-3 дня. В параметры моделирования следует включитьрасписание прибытия судов, количество кранов каждого вида, диапазоныразброса случайных величин (отклонения от расписания прибытия и отклоненияот обычного времени разгрузки), а также шаг моделирования.Визуализация моделируемого процесса должна предусматривать показочередей у разгрузочных кранов, приход судов в порт и их отход послеразгрузки. Должен быть показан также список произведенных разгрузок, вкотором указывается название разгруженного судна, время его прихода в порт ивремя ожидания в очереди на разгрузку, время начала разгрузки и еепродолжительность. По окончании моделирования должна быть выведенаитоговая статистика: число разгруженных судов, средняя длина очереди наразгрузку, среднее время ожидания в очереди, максимальная и средняя задержкаразгрузки, общая сумма выплаченного штрафа.Моделирование в сфере обслуживанияМоделирование обслуживания в филиале банкаНеобходимо создать компьютерную модель обслуживания потока заявок,поступающих от клиентов банка, несколькими клерками (2≤ N ≤ 7) в одном изфилиалов банка.
Известно недельное расписание работы филиала банка: 5 днейпо 8 часов и один день – 6 часов, возможны перерывы на обед.При моделировании работы заявки на обслуживание (т.е. приходклиентов) поступают случайным образом. Случайной величиной являетсяотрезок времени между последовательным появлением двух заявок, она имеетнормальное или равномерное распределение в некотором интервале (например,от 0 до 10 минут), причем плотность потока заявок зависит от дня недели и25времени дня – в конце недели и в конце дня клиенты приходят чаще, т.е.плотность потока выше.
Длительность обслуживания каждой заявки – такжеслучайное число в некотором диапазоне (например, от 2 до 30 минут), нодлительность не зависит от входного потока заявок. Еще одна случайнаявеличина – прибыль, получаемая банком от обслуживания клиента, онаварьируется в пределах от 3 тыс. до 50 рублей.Поступившие заявки (клиенты) образуют общую очередь, максимальнаядлина которой – K человек (10≤ K ≤ 25). Если очередь достигла такой длины, товновь прибывающие клиенты уходят, и вероятность прихода следующихуменьшается – тем самым банк теряет своих потенциальных клиентов.Клиенты банка ожидают своей очереди на обслуживание в общем зале синформационным табло, на котором высвечиваются номер клиента, взятоготолько что на обслуживание, и номер места клерка, обслуживающего этогоклиента.
В каждый день работы филиала заявки на обслуживание нумеруютсяпоследовательно, начиная с 1, по мере их прихода в банк.Цель моделирования работы банка – определение прибыли банка и еезависимости от числа работающих клерков; выявление “узких” мест в работебанка: нехватки клерков (возможное следствие этого – потеря клиентов),простой клерков (следствие – лишние траты на их зарплату).
Прибыльвысчитывается с учетом дневной зарплаты каждого клерка (2 тыс. руб.).Период моделирования – месяц, шаг моделирования – интервал времениот 10 минут до 1 часа. Следует включить в параметры моделирования: числа N иK, шаг моделирования, диапазоны разброса случайных величин – промежуткамежду приходом клиентов и время их обслуживания, законы распределения этихслучайных величин. Необходимо также учесть в модели уменьшение потокаклиентов при наличии достаточно большой (более 7 человек) очереди.Визуализация моделируемого процесса должна предусматривать показтекущей ситуации в банке, том числе – скопившуюся очередь, занятостьклерков, появление новых и уход обслуженных клиентов, информационноетабло.