Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Алгоритмы имитационного моделирования для событийного управления модельным временем
Отличие имитационного моделирования от объектно-ориентированного программирования заключается в том, что объект имитационной модели может не только выполнить некоторое событие в момент своей активности, но и запланировать выполнение своего события или события другого объекта в будущем, т. е. на момент модельного времени, больший или равный текущему значению модельного времени. Для реализации выполнения будущих событий и упорядочивания их в хронологическом порядке необходимо использование управляющей программы – планировщика. Алгоритм работы планировщика состоит в выполнении следующих действий: 1) активизация объектов для выполнения событий, запланированных на текущее значение модельного времени и удаление выполненных событий из списка; 2) включение в список новых событий, запланированных активными объектами, вместе со значениями моментов модельного времени, в которые каждое из этих событий должно быть выполнено; 3) увеличение значения модельного времени, если на текущий момент времени невыполненных событий не осталось, и переход на п.1). В алгоритме имитационного моделирования СМО при событийном управлении модельным временем используется несколько информационных массивов: списки текущих (СТС) и будущих (СБС) событий, массив заявок (МЗ) – хранит имя, тип, приоритет, время, местонахождение заявки в системе, и очередей (МО) – хранит информацию о заявках в очереди, упорядочен по ОА. Моделирование начинается с просмотра операторов генерирования заявок, т. е. с обращений к моделям источников заявок. Для каждого независимого источника такое обращение позволяет рассчитать момент генерации первой заявки. Этот момент вместе с ссылкой на заявку заносится в СБС, а сведения о заявке – в МЗ (имя, значения параметров, место появления или нахождения заявки в системе). В СБС события упорядочиваются по возрастанию времен совершения. Далее из СБС выбирается совокупность событий, относящихся к наиболее раннему моменту модельного времени. Эта совокупность переносится в СТС и начинается моделирование событий, отмеченных в СТС (см. рис. 29). Выбирается ссылка на событие, по ней в МЗ определяется соответствующая заявка и ее место в системе, моделируется продвижение по системе по маршруту, определяемому программой моделирования, до тех пор, пока заявка не придет на вход некоторого ОА. Тогда обращение к модели ОА позволяет определить длительность задержки на обслуживание и момент наступления события, связанного в выходом заявки из ОА. Корректируется местонахождение заявки в МЗ. Ссылка на новое предвидимое событие заносится в СБС так, чтобы сохранилась упорядоченность списка по моментам наступления событий. Программа моделирования приступает к выбору очередной ссылки на СТС. После имитации всех событий из СТС в него переносится очередная совокупность событий из СБС, относящихся к ближайшему моменту модельного времени ti+1, текущее модельное время принимает это значение. Если при моделировании движения заявки она придет на вход занятого ОА (устройства или накопителя), то вместо расчета длительности обслуживания имя заявки заносится в МО. При моделировании события, связанного с освобождением ОА заявкой а, проверяется состояние очереди к освобождающемуся ОА. Если имеется очередь, то в соответствии с дисциплиной обслуживания из очереди выбирается заявка b и входит на обслуживание ОА. Обращение к модели обслуживающего аппарата дает значение освобождения ОА заявкой b и соответствующая ссылка заносится в СБС. Затем программа производит моделирование продвижения заявки a до того момента, когда произойдет ее выход из системы или задержка в очереди к новому ОА [1, 28, 29]. Date: 2015-07-17; view: 414; Нарушение авторских прав |