Имитационная модель наземного движения воздушных судов в аэропорту

Л. М. Местецкий, Д. В. Щетинин (Тверь)
 

Введение

Современный аэропорт представляет собой сложную систему, управление которой является очень непростой и ответственной задачей. Цена ошибки здесь весьма велика. Имитационное моделирование позволяет спрогнозировать возможные последствия тех или иных управляющих воздействий, что дает возможность принимать более точные, надежные и безопасные решения [1].

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

Состав программного комплекса

Для максимально полного использования преимуществ имитационного моделирования необходимо обеспечить возможность варьирования условий проведения экспериментов: вносить изменения в структуру рулежной сети,  анализировать различные режимы использования взлетно-посадочных полос (ВПП), варианты расписаний полетов, работу аэропорта в различных погодных условиях и т. д. Полученные в ходе имитационного эксперимента результаты необходимо представить в виде, удобном для дальнейшего анализа. Таким образом, имитационная модель должна функционировать в составе некоторого программного комплекса, обеспечивающего удобные для пользователя средства подготовки, проведения и интерпретации результатов имитационных экспериментов.

В состав программного комплекса имитационного моделирования наземного движения ВС по летному полю аэропорта вошли следующие подсистемы.

Редактор карты летного поля позволяет задать рулежную сеть аэропорта и привязать к (оцифрованному) плану местности. Программа поддерживает два режима работы. Один из них предназначен для построения исходной сети маршрутов движения ВС (рулежной сети). Такая работа обычно выполняется один раз для аэропорта, после чего карта остается неизменной. Для внесения небольших изменений (как части сценария для проведения серии имитационных экспериментов: например, запрещение движения по отдельным участкам сети с целью изучения работы аэропорта в условиях проведения ремонтных работ) предназначен второй режим работы. Такие изменения сохраняются отдельно от исходной карты летного поля.

 

Рис. 1. Визуализация результатов моделирования

Рулежная сеть аэропорта представляется в виде направленного графа. Вершины этого графа представляют элементы рулежной сети аэропорта (локации): отрезки рулежных дорожек, ВПП, места стоянки и т. д. Ребра графа представляют возможные направления движения от одной локации к другой. В соответствии с дисциплиной движения ВС на данном участке рулежной сети выделяются несколько классов локаций: рулежные дорожки, которые допускают одновременное движение нескольких ВС («цепочкой»); перекрестки, где может находиться не более одного ВС одновременно; участки ВПП, работой которой управляет диспетчер и т. д.. Кроме того, в имитационной модели к рулежной сети добавляется ряд фиктивных локаций, выполняющих служебные функции. Характерным примером  является т.н. посадочная глиссада, в обязанности которой входит организация предварительного оповещения диспетчера ВПП о посадочных операциях (см. «Управление взлетно-посадочной полосой» ниже).

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

Редактор сценариев позволяет задать параметры моделирования: погодные условия, параметры движения по локациям, посадочные параметры, интервалы выполнения взлетно-посадочных операций и  т. д. Эти параметры сохраняются в файле сценария и в дальнейшем используются при проведении имитационных экспериментов.

Имитационная модель. Этот модуль отвечает непосредственно за проведение имитационного эксперимента. На вход принимаются данные о рулежной сети аэропорта, расписание полетов и сценарий. Результаты моделирования выводятся в файл в виде протокола событий, происходивших в процессе имитации. Подробнее устройство имитатора рассматривается ниже.

Модуль статистики. Анализирует протокол имитационного эксперимента, накапливая статистическую информацию по интересующим пользователя параметрам, и представляет их в численном и графическом виде.

Модуль визуализации. Эта подсистема наглядно в динамике представляет ход эксперимента, позволяя пользователю с нужной степенью детализации проанализировать происходящие в системе события. В данной работе визуализации было уделено особое внимание. Решение о том, что результаты моделирования должны быть представлены в виде анимационного ролика, было принято еще на стадии постановки задачи. Затем работа началась именно с создания этого программного модуля, одновременно с первыми этапами разработки имитационной модели. Такой подход позволил в процессе работы над подсистемой визуализации более точно и определенно специфицировать требования к имитационной модели на ранних стадиях разработки. Особенно важную роль наличие визуализации сыграло на этапах проверки адекватности (верификации и валидации) модели. Пользователь имел возможность увидеть устройство модели, заметить неточности и конкретными примерами проиллюстрировать свои замечания. В результате это дало возможность создать имитационную модель и ввести ее в эксплуатацию в достаточно сжатые сроки силами небольшого коллектива разработчиков.

Рис. 2. Структура программного комплекса

С целью уменьшения связности (coupling) между компонентами и повышения гибкости приложения эти подсистемы были реализованы как отдельные программные модули. Обмен информацией между ними производится через внешние файлы. Для удобства пользователя был разработан программный модуль, осуществляющий централизованное управление работой этих подсистем. Общая структура комплекса и потоки данных между отдельными модулями представлены на рис. 2.

Имитационная модель

Имитационная модель была реализована на универсальном языке программирования C++ с использованием библиотеки C++Sim [2], предназначенной для разработки имитационных моделей систем с дискретными событиями в «стиле» SIMULA (по классификации Шеннона [3] – язык моделирования, ориентированный на процессы).

Имитационная модель должна обеспечить достаточно подробную имитацию процесса руления ВС по летному полю аэропорта. Сюда включаются такие события и процессы, как взлет, посадка, движение ВС по рулежной сети аэропорта, возможные изменения скоростей движения, ожидание освобождения нужных участков рулежной сети, разрешения диспетчера на занятие ВПП для начала взлетной операции и т. д. В результате анализа были выделены следующие существенные с точки зрения моделирования процессы (см. рис. 3).

 

Рис. 3. Схема взаимодействия процессов

Движение воздушного судна по маршруту. Каждому ВС при его появлении в системе назначается маршрут – упорядоченное множество локаций. Модель процесса руления состоит в последовательном перемещении ВС от первой локации маршрута к конечной. При этом время пребывания на локации зависит от длины этой локации и скорости ВС (с учетом ее возможных изменений).

Ответственность за моделирование этого процесса была возложена на модель рулежной сети аэропорта: каждая локация, принимая очередное ВС, вычисляет  момент времени, когда оно должно будет покинуть эту локацию. Если ВС изменяет скорость, оно уведомляет об этом локацию, которая соответствующим образом изменяет момент окончания движения данного судна по данному участку маршрута.

Таким образом, процесс движения ВС по маршруту моделируется как система массового обслуживания, где в роли заявок выступают ВС, каждое из которых должно быть последовательно обслужено несколькими устройствами (локациями) в соответствии с заданным маршрутом движения.

Соблюдение интервала движения. Двигаясь по летному полю, ВС не должны слишком приближаться друг к другу. Минимально допустимые расстояния оговорены в соответствующих инструкциях по проведению полетов [4]. Следовательно, ВС должны изменять свою скорость так, чтобы не нарушить интервал движения. Поскольку движение возможно только по строго определенным траекториям, ограниченным структурой рулежной сети, каждому ВС достаточно синхронизировать свое движение только с тем самолетом, который движется перед ним (по маршруту). Имея информацию о предыдущем ВС в каждый момент времени, самолет вычисляет момент времени, когда он сблизится с ним на минимально допустимую дистанцию, и планирует на этот момент времени следующую свою активную фазу (изменение скорости). Момент времени изменения скорости нужно скорректировать, если произойдет одно из двух событий (см. рис. 3). Во-первых, предыдущее ВС может изменить свою скорость. Тогда оно рассылает всем следующим за ним ВС сообщение об этом, и те перепланируют свою деятельность. Второе событие – изменение положения (локации) одного из ВС на летном поле.

Порождение и инициализация воздушных судов. В системе присутствует процесс, который, просматривая расписание, в нужные моменты времени порождает и инициализирует объекты, моделирующие ВС, а также активизирует и помещает их на начальную локацию маршрута.

Управление взлетно-посадочной полосой. Работой ВПП управляет диспетчер. Моделирование его действий составляет одну из наиболее сложных задач при создании имитационной модели аэропорта.

ВПП используется прилетающими и улетающими ВС. В каждый момент времени на ней может находиться не более одного ВС. Если аэропорт располагает несколькими ВПП, они могут использоваться в различных режимах (в зависимости от их взаимного расположения, погодных условий и т. д.).

Диспетчер ВПП моделируется как сервер, получающий запросы на разрешение воспользоваться ВПП и синхронно или асинхронно отвечающий на них. Ответ на запрос о выполнении посадочной операции диспетчер дает сразу: посадка разрешается только в том случае, если взлетно-посадочная полоса свободна. Отмена посадки на практике случается очень редко и обычно трактуется как чрезвычайная ситуация. Поэтому диспетчер ВПП получает информацию о посадочных операциях заранее. (Это обеспечивает специально введенная фиктивная локация «посадочная глиссада», на которую помещаются ВС заранее перед посадкой.) Получая запросы от вылетающих ВС, диспетчер помещает их в очередь и дает разрешение на занятие ВПП только в тот момент, когда уверен, что взлет не приведет к отмене посадки (т. е. асинхронно). 

Перечисленные процессы во взаимодействии с другими объектами, представляющими различные компоненты системы и аспекты их поведения, обеспечивают имитацию руления ВС по летному полю аэропорта.

Заключение

Описанный программный комплекс для имитационного моделирования наземного движения ВС по летному полю использовался для оценки проектных решений по реконструкции международного аэропорта Шереметьево.

Литература

1.      Исаев А.С., Местецкий Л.М., Федоров А.В., Щетинин Д.В. Имитационное моделирование аэропорта – инструмент обоснования решений//Аэропорт Партнер, № 5–6, 2002

2.      Little M.C., McCue D.L. Construction and Use of a Simulation Package in C++

3.      Шеннон Р. Имитационное моделирование систем – искусство и наука. – М.: Мир, 1978

4.      Инструкции по производству полетов в районе аэродрома Шереметьево