Первая фаза реализации модели представлена в модели Emergency department Phase 1 в папке Model Examples. В данном проекте существует только окно анимации, в которое помещено графическое изображение плана отделения скорой помощи. Это графическое изображение скопировано из файла EDLayout.png.
Поверх рисунка добавлена сеть, определяющая геометрические объекты плана, которые будут использоваться в модели. Сеть состоит из узлов и их связей. Узлами сети являются все те пункты, где пациент может находиться некоторое время, а именно комнаты, регистратура, вход и выход. Ребра сети — это пути, по которым в процессе моделирования будут перемещаться заявки, имитирующие пациентов. Узлы сети задаются в анимации с помощью прямоугольников, а ребра сети — с помощью линий и ломаных. Когда заявка переместится в один из узлов сети, визуально она будет отображаться в случайно выбранной точке внутри узла-прямоугольника. Кроме узлов, помещенных в очевидные места плана (комнаты, регистратура, вход и выход), необходимо задать промежуточные узлы сети, например, на пересечении коридоров. Для того чтобы соединить два узла сети, нужно нарисовать ломаную, конечные точки которой будут лежать в соединяемых узлах (например, прямоугольниках). Во время моделирования эти прямоугольники (и только они) будут связаны в единую транспортную сеть. Прямоугольники, лежащие не под конечными точками ломаной, не будут связаны в сеть и не будут рассматриваться как ресурсы модели.
На рис. 14.3 показана анимация с добавленными узлами и сегментами сети. На некоторые узлы сети необходимо будет ссылаться из объектов блок схемы. Поэтому имена прямоугольников, указанных стрелками, выбраны в соответствии с их смыслом. Эти имена на рис. 14.3 находятся рядом со стрелками.
После того как все узлы и сегменты заданы, все графические элементы, образующие сеть, добавляем в группу. На рис. 14.3 данный элемент назван networkPivot. Все элементы сети теперь можно рассматривать как единый объект с этим именем.
Ресурсы модели
Основная идея использования сети в подобных моделях состоит в том, что узлы сети представляют ресурсы, причем один тип ресурса может быть представлен несколькими узлами, и в сети может быть несколько типов ресурсов. В данной модели используется три типа ресурсов: медсестры, комнаты первичного осмотра, а также комната ожидания и регистратура (как единое целое).
Для описания каждого типа ресурсов в AnyLogic используется блок Net-workResource библиотеки Enterprise Library. В модели необходимо каким-то образом указать, в каких узлах сети располагаются ресурсы данного типа. Это можно сделать, указав названия прямоугольников, принадлежащих сети, в параметре homeLocation блока NetworkResource. Если ресурсов много, то перечислять все узлы сети тяжело. Поэтому существует альтернативный способ задания узлов для ресурсов: на анимации рисуется ломаная линия,
ее точки расположены поверх тех узлов сети, которые соответствуют данному типу ресурса. Эта ломаная задается в качестве параметра homeLocation блока NetworkResource. В процессе моделирования ресурсы будут связаны с узлами сети, лежащими под точками ломаной, которой они соединены. На рис. 14.4 показана сеть, созданная на предыдущем этапе, и две ломаные линии. Первая линия, названная procRooms, задает семь узлов сети, в которых располагаются ресурсы типа "процедурная комната". Вторая линия triageRooms задает два узла сети, которые соответствуют комнатам первичного осмотра (от английского медицинского термина triage — первичный осмотр).
Еще одним ресурсом модели будут медсестры. Разработанная до этой фазы
соответствующая модель называется Emergency department Phase 1.