Scikit-decide и OpenAP считают экономичные маршруты самолётов
Технический разбор показывает, сколько топлива сжигает дальний перелёт и как открытые инструменты помогают снизить расход, оптимизируя маршрут под ветер. Пример из поста: беспосадочный рейс Boeing 787-9 Dreamliner из аэропорта Ньюарк (EWR) в аэропорт Фьюмичино (FCO) идёт 8,5 часа и, по оценке автора, обходится примерно в $68 тыс. керосина. Корректировка маршрута под ветер может снизить расход и, возможно, сэкономить несколько тысяч долларов, но в материале это названо как возможность, а не как измеренный результат для конкретного рейса.
Расчётами такого рода уже занимаются коммерческие фирмы вроде Jeppesen (что именно предлагает Jeppesen и по какой цене, в материале не раскрывается), а пост описывает открытую альтернативу, связку Scikit-decide и OpenAP с погодными данными NOAA. Scikit-decide, фреймворк для обучения с подкреплением, автоматического планирования и составления расписаний; в разработке уже шесть лет, и помимо маршрутов полётов применяется для переработки расписаний персонала авиакомпаний и расчёта маршрутов роёв дронов. OpenAP, модель и набор инструментов для расчёта лётных характеристик самолётов; разработчик, Junzi Sun, с PhD по управлению воздушным движением и должностью доцента с постоянной позицией (tenured assistant professor) в Делфтском техническом университете (TU Delft) в Нидерландах, где читается курс по этой же теме. Тот же разработчик, Junzi Sun, отвечает и за OpenTop, ещё один инструмент для расчёта траекторий полёта, который тоже используется в посте.
Дальше пост переходит к практике. Установка, Python 3.12 и пакеты scikit-decide[all], openap[all] и opentop, для которых нужно не меньше 8 ГБ места на диске. Для работы с данными используется DuckDB с расширениями H3, JSON, Lindel, Parquet и Spatial, а карты в посте построены в QGIS (границы, из Natural Earth, морские границы, из Marine Regions); QGIS автор называет растущим по популярности инструментом, около 22 млн запусков в месяц по всему миру. Всё это запущено в Ubuntu 24 LTS поверх WSL на Windows 11, а не в нативном Linux: по словам автора, так лучше работают драйверы видеокарты Nvidia GTX 1080, а ArcGIS Pro в принципе доступен только на Windows. Дальше пост разбирает сам репозиторий OpenAP, в нём 3 369 строк кода на Python без учёта тестов и служебных скриптов, а встроенные датасеты покрывают 37 типов самолётов (17 Boeing, 13 Airbus, 5 Embraer, 1 Gulfstream, 1 Cessna) с аэродинамическими и весовыми параметрами для каждого; в качестве примера в материале разобраны данные Airbus A380-800.
Заявленная цель, сравнить два маршрута Airbus A320, рассчитанные с помощью модели расхода топлива OpenAP. Но доступный текст обрывается внутри сырой таблицы аэродинамических параметров ещё до того, как это сравнение доходит до результата: итоговой цифры экономии топлива или вывода по A320 в материале нет. То есть перед нами скорее техническая демонстрация связки инструментов в процессе, а не отчёт с готовым результатом.
Ключевые факты
- Открытая связка Scikit-decide, OpenAP и данные NOAA о ветре, бесплатная альтернатива коммерческим сервисам вроде Jeppesen для расчёта маршрутов самолётов с учётом расхода топлива.
- Пример из поста: беспосадочный Boeing 787-9 из аэропорта Ньюарк (EWR) в аэропорт Фьюмичино (FCO) летит 8,5 часа и, по оценке автора, сжигает топлива примерно на $68 тыс.; коррекция маршрута под ветер способна снизить расход и, возможно, сэкономить несколько тысяч долларов, это названо возможностью, а не измеренным результатом.
- OpenAP создал Junzi Sun, с PhD по управлению воздушным движением и должностью доцента с постоянной позицией в TU Delft; репозиторий содержит 3 369 строк кода на Python (без тестов) и датасеты на 37 типов самолётов: 17 Boeing, 13 Airbus, 5 Embraer, 1 Gulfstream, 1 Cessna.
- Scikit-decide, фреймворк для обучения с подкреплением и автоматического планирования, в разработке шесть лет; помимо маршрутов полётов применяется для расписаний персонала авиакомпаний и расчёта маршрутов роёв дронов.
- Заявленное сравнение двух маршрутов Airbus A320 в доступном тексте не доходит до результата, материал обрывается внутри таблицы параметров, итоговой цифры экономии для этого сравнения нет.
Почему это важно
Топливо, одна из крупнейших статей расходов авиакомпаний, и даже небольшое снижение расхода на маршруте, умноженное на тысячи рейсов, складывается в заметную экономию: в материале только по одному рейсу Boeing 787-9 речь идёт о $68 тыс. в одну сторону. Раньше такие расчёты маршрута под ветер были в основном у коммерческих поставщиков вроде Jeppesen; пост показывает, что тот же класс задачи можно закрыть открытым стеком, Scikit-decide, OpenAP и погодные данные NOAA, без покупки закрытого продукта. Отдельно важно, что Scikit-decide не привязан к авиации: тот же планировщик годится и для расписаний персонала авиакомпаний, и для маршрутов роёв дронов, то есть за примером с топливом стоит инструмент общего назначения.
Кому это важно
Инженерам и дата-специалистам в авиаотрасли и логистике, которые ищут открытую альтернативу платным сервисам планирования маршрутов; разработчикам, которые работают с обучением с подкреплением и автоматическим планированием, Scikit-decide применим и вне авиации; студентам и исследователям в области управления воздушным движением, именно в ней работает разработчик OpenAP. И читателям технического блога вообще: в посте подробно показан сам процесс, установка окружения, работа с DuckDB и построение карт в QGIS.
Как это применить
Воспроизвести можно на Python 3.12: pip install 'scikit-decide[all]' 'openap[all]' opentop, нужно не меньше 8 ГБ места на диске. Для работы с данными в посте используется DuckDB с расширениями H3, JSON, Lindel, Parquet и Spatial, а карты построены в QGIS с границами из Natural Earth и морскими границами из Marine Regions. Среда поднята в Ubuntu 24 LTS поверх WSL на Windows 11, а не в нативном Linux: по словам автора, так лучше работают драйверы видеокарты Nvidia GTX 1080, а ArcGIS Pro в принципе доступен только на Windows. Решатель Scikit-decide настраивается на разные модели расхода топлива, дальше в материале так сравниваются два маршрута Airbus A320 на модели OpenAP, хотя до результата этого сравнения доступный текст не доходит.
Можно ли доверять
У OpenAP есть проверяемый профильный автор: Junzi Sun, с PhD по управлению воздушным движением и должностью доцента с постоянной позицией (tenured assistant professor) в TU Delft, где читается курс по этой же теме, то есть предметная экспертиза за инструментом сильная. Слабее, статус самого поста: в доступном тексте нет ни имени автора материала, ни даты публикации, а заявленное сравнение двух маршрутов Airbus A320 обрывается до результата, так что проверить итоговую цифру экономии топлива по нему нельзя, её в материале просто нет. Цифры «$68 тыс.» и «несколько тысяч долларов экономии», не результат прогона оптимизатора, а иллюстративная оценка автора для другого самолёта, Boeing 787-9.
Риски и подводные камни
Главный риск, принять иллюстрацию за результат: единственные денежные цифры в материале ($68 тыс. расхода и «несколько тысяч» возможной экономии) относятся к гипотетическому рейсу Boeing 787-9 и прямо названы оценкой, а не измерением, а обещанное сравнение маршрутов Airbus A320 через OpenAP до вывода не доходит. Про существующие коммерческие решения вроде Jeppesen материал не сообщает по существу ничего, ни что именно они считают, ни насколько с ними сопоставима открытая связка, так что оценить точность или стоимость открытого варианта относительно рынка по этому посту невозможно.