Смекни!
smekni.com

Модель высотного лифта (стр. 2 из 2)

Эксперимент №3

Одновременно поступают запросы:

· 35 вверх (45, 48, 49)

· 36 вверх (40, 50)

· 37 вверх (50 ,43 ,44)

· 20 вниз (1)

В силу одновременности, хотя и имелись запросы, расположенные по движению, существенных преимуществ модели использующей набор правил №1 не выявлено, в силу того, что лифт определяет для себя только один ближайший запрос.

Эксперимент №4

В начальный момент времени поступают запросы:

· 10 вверх (15, 27, 36, 45, 50)

· 45 вниз (1, 8, 15, 40)

Когда лифт, среагировавший на запрос с 10-ого этажа, погрузил пассажиров и получил этажи назначения, производится запрос:

· 15 вверх (34, 50)

Когда лифт, среагировавший на запрос с 45-ого этажа, погрузил пассажиров и получил этажи назначения, производится запрос:

· 35 вниз(1)

Чего и следовало ожидать, на лицо существенный выигрыш, как во времени ожидания лифтов, так и в пройденном расстоянии.

Эксперимент №5

Усугубим ситуацию, в начальный момент времени поступают запросы:

· 5 вверх (7, 29, 46, 49, 50)

· 50 вниз (10, 28, 35, 45)

Когда лифт, среагировавший на запрос с 5-ого этажа, погрузил пассажиров и получил этажи назначения, производится запрос:

· 10 вверх (35, 45)

Когда лифт, среагировавший на запрос с 50-ого этажа, погрузил пассажиров и получил этажи назначения, производится запрос:

· 30 вниз (10)

Когда лифт, среагировавший на запрос с 10-ого этажа, погрузил пассажиров и получил этажи назначения, производится запрос:

· 47 вверх (50)

Хоть и превышение в скорости реакции на запрос, модели использующей набор правил №1 не существенно, пройденное лифтами расстояние примерно на 70% меньше.


Выводы из экспериментов

Модель, действующая по набору правил №1, даёт результаты, как минимум не хуже, чем результаты, получаемые от модели с набором правил №2. В ряде случаев даёт преимущество в пройденном расстоянии ~70% и времени ожидания ~60%. В последствии следует развивать модель с набором правил №1, введя в неё возможность сохранения запросов в порядке времени достижимости. Причём прилагаемый код программ может быть использован повторно.


Замечания по моделированию

Прилагаемая к данной работе реализация моделей использует STL языка С++ и корректно будет работать только если скомпилирована компилятором Microsoft Visual C++. Данные ограничения обусловлены, различиями в реализации STL различными разработчиками компиляторов. В свою очередь компилятор от Microsoft рекомендован разработчиками STL как корректно поддерживающий её.