Реферат: Модель высотного лифта
· этажи назначения
· пройденное расстояние
И выполнять следующие действия:
· принятие решения о дальнейшем направлении движения
· сбор этажей назначения
· движение к этажам назначения или запросу
· вычисление пройденного расстояния
Далее рассмотрим две модели лифта с разными правилами относительного того, куда далее следует двигаться. С целью выявления набора правил, который будет удовлетворять компромиссному решению, сформулированному выше.
Набор правил №1
· если текущий этаж, ближайший этаж назначения, начать высадку пассажиров
· если текущий этаж, ближайший запрос, начать посадку пассажиров
· если есть этажи назначения, определить ближайший
· спросить у системы управления ближайший запрос, проверить если лифты без ближайшего запроса, но находящиеся ближе к этому запросу, и если нет, то принять ближайший запрос
· если определён ближайший этаж назначения, определить направление движения к нему, решение принято
· если определён ближайший запрос, определить направление движения к нему, решение принято
· если лифт не производит загрузку или выгрузку пассажиров, то остановиться, решение принято
Данные правила указаны в порядке их приоритетности. При этом, для лифта всегда будет определяться ближайший запрос и ближайшие этаж назначения, если таковые имеются.
Набор правил №2
· если текущий этаж, ближайший этаж назначения, начать высадку пассажиров, решение принято
· если есть этажи назначения, определить ближайший, двигаться к нему, решение принято
· если текущий этаж, ближайший запрос, начать посадку пассажиров, решение принято
· спросить у системы управления ближайший запрос, проверить если лифты без ближайшего запроса, но находящиеся ближе к этому запросу, и если нет, то принять ближайший запрос
· остановиться
Правила указаны в порядке их приоритетности. Существенное отличие данного набора правил кроется в том, что по этому набору, если у лифта есть этажи назначения, то он не реагирует на новые запросы, реакция происходит только в том случае, если лифт развёз всех пассажиров.
Предполагаемые отличия
В условиях данных правил предполагаем, что модель с набором правил №1 будет обслуживать запросы пассажиров быстрее, чем №2 и при этом лифты будут проходить меньшее расстояние. Данный выигрыш будет обеспечиваться существенным отличием набора правил №2 от набора правил №1, о котором говорилось выше. И будет тем больше, чем больше число запросов по движению лифта при доставке пассажиров к этажам назначения. При наборе правил №2 запросы с этажей будут обслуживаться в порядке поступления, при наборе №1 нет.
Теперь исследуем поведение данных моделей на практике, с целью выявления оптимального набора правил.
Моделирование
Для моделирования лифтовой системы были написаны две программы на языке C++.
Будем исследовать модель 50-ти этажного здания с 4-ю лифтами. Прежде всего, приведём описание окна работающей программы:
Первый столбец, состоящий из цифр – это номера этажей. Следующие два столбца отображают запросы с этажей вверх и вниз в виде треугольников. Далее большими прямоугольниками обозначаются лифты, маленькими (вдоль шахты каждого из лифтов) этажи назначения. Под шахтой каждого из лифтов находится число, характеризующее пройденное лифтом расстояние. Далее следует надпись: «Суммарное время ожидания лифтов пассажирами равно: …». И приглашение для ввода запроса. При нажатии на [Enter] система запрашивает номер этажа, на котором находиться пассажир, и направление в котором он желает двигаться. Если лифт достиг запроса, у пассажира спрашиваются этажи назначения.
Для выявления более подходящего набора правил, разработаем ряд экспериментов, и будем фиксировать реакцию системы на них. Результатом эксперимента будет суммарное расстояние, пройденное всеми лифтами, и суммарное время ожидания лифтов пассажирами.