Как устроен навигатор для искусственных спутников Земли?
Где человек — там мусор: вокруг Земли летают сотни тысяч разных обломков, способных повредить космический аппарат. Обычно при возникновении опасности столкновения спутник вручную переводят на другую орбиту. Но скоро, если будут реализованы амбициозные планы организации широкополосного спутникового доступа в Интернет, число искусственных спутников перевалит за десять тысяч и совершать маневры вручную будет уже непрактично. Система SpaceNav, созданная группой российских разработчиков, должна автоматизировать этот процесс.
Вероятность столкновения
Сейчас вокруг Земли летают всего лишь 1950 функционирующих спутников, но им уже приходится совершать маневры уклонения от космического мусора и друг от друга, например, международная космическая станция (МКС) сделала 25 таких манёвров в 1999-2017 годах. Но скоро спутников станет в разы больше: один только SpaceX планирует запустить до 12 000 устройств группировки Starlink для того, чтобы обеспечить широкополосный доступ в интернет по всему миру.
Сейчас решение о маневре принимают люди на основе информации от систем вроде CORAM (Collision Risk Assessment and Avoidance Manoeuvres), которую использует Европейское космическое агентство (ЕКА). Эта же система дает сведения о потенциальных столкновениях, маневрах и траекториях нескольких объектов одновременно и предлагает оператору варианты уклонения. Рост числа спутников и других опасных объектов сделает ручное управление группировками из тысяч космических аппаратов непрактичным и неэффективным.
Еще в 1978 году астрофизик Дональд Кесслер описал эффект, названный впоследствии его именем, — лавинообразное нарастание числа опасных объектов на околоземной орбите. Каждое столкновение порождает сотни опасных обломков и тем самым повышает вероятность нового столкновения, вплоть до полной непригодности орбиты для использования. Десять лет назад в результате первого в истории столкновения двух искусственных спутников — «Космос-2251» и «Iridium 33», общим весом полторы тонны — возникло не менее 600 крупных обломков.
Выход из ситуации один — нужно автоматизировать управление. О прошлых и текущих проектах такого рода мало что известно: сфера космических технологий не отличается открытостью, но что-то обнаружить удается. Например, можно найти информацию о тендере ЕКА на разработку такой автономной системы и заявление SpaceX, запустившего первые 60 аппаратов группировки Starlink 25 мая, о том, что они оснащены автономной системой уклонения от столкновений, хотя эксперты пока не уверены в эффективности принятых мер.
Космический навигатор
Группа российских разработчиков в конце прошлого года представила «Космический навигатор» SpaceNav. Это совместный проект Научно-учебной лаборатории методов анализа больших данных ВШЭ, ФГУП ЦНИИМаш, АО «Российские космические системы» и Школы анализа данных Яндекса, с участием компании Phygitalism. Группой руководит Денис Зеленов из ЦНИИмаш при участии Андрея Устюжанина, основные разработчики — Никита Казеев (ВШЭ и ШАД) и Леонид Гремячих (ВШЭ). Хотя впереди еще большой путь, но уже начаты переговоры о пилотном внедрении системы для Международной космической станции.
SpaceNav — автономная система, построенная из модулей, что позволяет по мере надобности менять компоненты и методы оценки вероятности столкновения и задавать различные процедуры принятия решений. Система способна учитывать не менее десяти опасных объектов одновременно, используя новый алгоритм оптимизации маневра.
Система использует обучение с подкреплением (reinforcement learning) и позволяет настраивать функцию оптимизации в широком диапазоне параметров. С точки зрения пользователя, настройка функции оптимизации выглядит как простое указание предельных значений всех важных для данного случая параметров: скажем, пользователь сообщает системе, что ему важнее всего соблюсти такое-то минимальное расстояние до ближайших объектов и потратить не больше вот такого объема топлива.
Схема работы SpaceNav устроена следующим образом:
Получив необходимые инструкции и данные, SpaceNav начинает вычислять оптимальный маневр. В процессе вычисления используются, в частности, методы поиска по сетке (grid search) и перекрестной энтропии.
— Метод поиска по сетке работает в одном из двух режимов. Базовый режим учитывает только ближайший опасный объект, так что после каждого маневра вычисления начинаются заново. Из-за этого аппарат может израсходовать больше топлива и значительно отклониться от номинальной орбиты. Общий режим принимает в расчет все опасные объекты одновременно, что позволяет предпринять один маневр для уклонения сразу от нескольких потенциальных столкновений.
— Метод перекрестной энтропии позволяет рассчитать маневр в любом направлении и его оптимальное время. В основе метода лежит стохастическая оптимизация (stochastic optimization). В заметно упрощенном виде она выглядит как серия всё более успешных попыток найти наилучшее решение.
Хотя в штатном режиме система будет работать без участия человека, компания Phygitalism в демонстрационных целях разработала экспериментальный интерфейс с использованием виртуальной реальности: голограмма Земли и космических объектов с обозначением их орбит, 2D-интерфейс с масштабируемой визуализацией процесса маневрирования, возможность интерактивного выбора траектории уклонения, визуальные и звуковые предупреждения о возможных столкновениях.
Кнут и пряник в числовом выражении
Одной из сильных сторон проекта разработчики считают использование обучения с подкреплением — метода, который всё шире применяется в разработках, связанных с искусственным интеллектом. Если сильно упростить, то всякое решение оценивается неким числом — наградой, зависящей от соответствия предложенного решения заданной функции оптимизации.
Применительно к SpaceNav схема в общем виде такая: есть состояние среды (сведения о движении и свойствах объектов и другие параметры), и есть агент (собственно нейронная сеть), который предлагает действие. После выполнения действия состояние среды меняется, и агент получает обратную связь — выраженную числом награду, которая зависит от соблюдения требований к оптимизации и от отсутствия отклонений, за которые предусмотрен штраф. Постепенно агент «тренируется» — учится получать максимальную награду. Оценивать можно отдельное действие, новое состояние среды и даже всю сессию расчетов от начала до конца.
Отдельное преимущество такого подхода — возможность не слишком упрощать информацию о состоянии среды ради возможности напрямую вычислить наиболее эффективное действие. В каждом цикле агент предлагает решения, всё более близкие к оптимальному, а если в роли агента выступает уже обученная нейронная сеть, выдает маневры сразу, на основе параметров конкретной опасной ситуации.
Навигатор в виртуальной реальности
Не менее важной частью работы было тестирование «Космического навигатора». Разработчики создали генератор опасных ситуаций, который создает случайную среду и объекты в ней в соответствии с заданным диапазоном возможных свойств объектов и окружающих условий и с учетом акцента на низкой околоземной орбите (от 160 до 2000 километров над уровнем моря), где высоки относительные скорости спутников, в отличие от геостационарной орбиты (для сравнения — 35 786 километров над уровнем моря).
Во всех симуляциях предупреждение о столкновении поступало за один орбитальный период (то есть за период от 88 до 127 минут), и все симуляции предполагали присутствие 10 потенциально опасных объектов, причем некоторые ситуации были смоделированы так, чтобы уклонение только от одного — ближайшего — опасного объекта вело к сближению с другим. Всего было сгенерировано сто случайных опасных ситуаций.
В 68% случаев SpaceNav предложил решение, соответствующее всем заданным требованиям. Это много: для тестирования были заданы очень жесткие требования, иногда противоречащие друг другу, как это может быть и в реальных ситуациях. Впрочем, в реальности предупреждения о столкновениях приходят примерно за неделю, а окончательное решение о маневре принимается примерно за сутки до сближения с учетом современного состояния технических средств управления.
Только в 1% случаев не удалось опустить вероятность столкновения ниже 2*10^{-4}, но это было связано с тем, что главными критериями были выбраны экономия топлива и поддержка орбиты. Изменив параметры оптимизации, вероятность опасного сближения можно еще уменьшить.
Распознавание объектов
Проблемы, возникающие при создании качественных симуляций, подсказали еще одно возможное использование системы — для вычисления свойств неизвестного объекта по особенностям его движения. Дело в том, что генерация среды для тестирования — не такая простая задача, как можно подумать: навигатор будет работать с реальными объектами в околоземном пространстве, где на все объекты воздействуют изменяющиеся атмосферные, солнечные и геомагнитные условия и неоднородное гравитационное поле.
Как именно они воздействуют, зависит от свойств объектов, которые не всегда известны, если речь идет о мусоре. По мнению разработчиков, обучение с подкреплением помогает определить такой набор свойств объекта в симуляторе, при которых он ведет себя максимально похоже на реальный объект. В ходе спонтанной проверки гипотезы удалось определить наиболее подходящую площадь сечения (виртуального) космического объекта — 1,5 м².
Теперь, когда имеется жизнеспособный продукт, группа предполагает разработать графический интерфейс для навигатора, добавить функции использования нейронных сетей для быстрого начала маневра и оптимизации серии маневров и предоставить возможности интеграции с внешними системами, например, с базой данных космического мусора DISCOS (поддерживается ЕКА), российскими АСПОС ОКП (Автоматизированная система предупреждения об опасных ситуациях в околоземном космическом пространстве) и ЦУПом. Подробнее о работе можно почитать в препринте.