Основы дискретно-событийного моделирования CMO
Дискретно-событийное моделирование – моделирование системы в дискретные моменты времени, когда происходят события, отражающие последовательность изменения состояний системы во времени. В дальнейшем такое моделирование будем называть имитационным. Рассматриваемые здесь системы динамические, то есть изменяются во времени. Поэтому состояние системы, свойства объекта и число активных объектов, параметров, действий и задержек – все они функции времени и постоянно изменяются в процессе моделирования. Определим основные понятия и термины, используемые в имитационном моделировании СМО. Система – множество объектов (например, людей и машин), которые взаимодействуют одновременно для достижения одной или большего количества целей. Модель – абстрактное представление системы, обычно содержит структурные, логические или математические отношения, которые описывают систему в терминах состояний, объектов и их свойств, множеств, процессов, событий, действий и задержек. Состояние системы – множество переменных, которые содержат всю информацию, необходимую для описания свойств системы в любое время. Объект – любой элемент или компонент в системе, который должен быть представлен в модели в явном виде (например, обслуживающее устройство, клиент, машина). Свойство или атрибут – свойства данного объекта (например, приоритет ожидающего клиента, маршрут процесса выполнения работ в цеху). Список множество (постоянное или временное) связанных объектов, упорядоченное некоторым логическим способом (например, все клиенты, находящиеся в настоящее время в очереди ожидания, упорядочены по принципу «раньше прибыл, раньше обслужился» или по приоритету). Событие – мгновенно возникающее изменение состояние системы (например, прибытие нового требования). Уведомление о событии – запись события, которое произойдет в потоке событий или в некотором будущем времени наряду c любыми связанными данными, необходимыми для обработки события (запись всегда включает тип события и время события). Список событий – список намеченных будущих событий, упорядоченных по времени возникновения, известный также как список будущих событий (СБС). Действие – продолжительность времени указанного промежутка (например, время обслуживания или время между поступлениями заявок), для которого известно, когда оно начинается и заканчивается (хотя оно может быть определено в терминах статистического распределения). Задержка – продолжительность времени неопределенного промежутка, для которого неизвестно заранее, когда он заканчивается (например, задержка клиента в очереди по правилу «последний пришел – первый обслужился», так как начало обслуживания зависит от будущих поступлений). Модельное время неотрицательная возрастающая величина, отражающая течение времени в имитационной модели. Часы – переменная, отражающая протекание времени моделирования, называется в примерах ЧАСЫ (CLOCK). Для CMO c одним устройством обслуживания событиями будут поступление требования и конец его обслуживания устройством. Начало обслуживания – это условное событие, которое зависит от состояния прибора (занят или свободен) и числа требований, находящихся в очереди. Задержку иногда называют условным ожиданием, в то время как действие называют безусловным ожиданием. Действиями будут время между поступлениями требований и время обслуживания прибором. Завершение действия – событие, часто называемое первичным событием, для управления которым в СБС помещается уведомление о событии. Напротив, управление задержками связано c помещением объекта в другой список, возможно представляющий очередь ожидания до такого времени, когда системные условия разрешат обработку требования. Окончание задержки иногда называют условным или вторичным событием, но такие события не представлены в соответствующих уведомлениях о событиях и не появляются в СБС. Пример. Представим себе, что есть магазин, в котором один продавец и он же кассир. Если пришедший покупатель застает продавца свободным, то продавец немедленно приступает к его обслуживанию. Продавец переходит в состояние «занятый». Если продавец занят обслуживанием покупателя и в это время приходит другой (другие) покупатели, то они становятся в конец очереди к продавцу. Когда продавец закончил обслуживание, то он переходит в состояние свободный. Если в очереди есть покупатели, то продавец «выбирает» для обслуживания первого покупателя из очереди. Очередь уменьшается на единицу. Все остальные покупатели в очереди, если они есть, продвигаются на одну позицию вперед.
|