Написано доктором Оливером Уоткинсом

В последние дни моя лента LinkedIn была полна вполне оправданно довольных инженеров Quantum Black, рассказывающих о том, что они обучили тысячи ботов управлять лодкой Emirates Team New Zealand (ETNZ) для участия в Кубке Америки. Однако здесь, в Canopy Simulations, мы считаем, что если вам нужны тысячи ботов, это не столько признак успеха, сколько признак того, что вы, возможно, просто выбрали неправильный метод. В следующей статье делается попытка объяснить, почему словосочетание является лучшим выбором.

Это статья о 36-м Кубке Америки, поэтому было бы грубо не поздравить победителей, команду Emirates Team New Zealand и инженеров, с которыми они работали. Они разработали блестящее правило класса и превосходную лодку. Однако цель этой статьи состоит в том, чтобы предположить, что оппозиция кое-что делала лучше. Даже самые успешные команды Формулы-1 никогда не перестают внимательно следить за противником, чтобы выявлять последние возможности для улучшения, и любые команды Кубка Америки, которые это сделают, вскоре обнаружат, что их обгоняют.

Как компания, специализирующаяся на моделировании производительности, мы считаем, что наш метод динамической оптимизации с помощью коллокации является лучшим методом автономного моделирования. Она стала доминирующей технологией в автоспорте, и мы думаем, что для такой мощной технологии это должно быть только началом. Как мы объявили в июле 2019 года, мы работаем с INEOS Team UK (ITUK) на 36-м Кубке Америки. Очевидно, мы не собираемся вам ничего рассказывать о том, что мы сделали с ITUK. Вместо этого мы собираемся обсудить общие преимущества и недостатки Динамической оптимизации путем коллокации со ссылкой на известные компромиссы и технические проблемы AC75. Мы также можем провести параллели с тем, что мы делаем в автоспорте.

Это очень маленький мир; Технический директор Emirates Team New Zealand Дэн Бернаскони был одним из моих предшественников на посту руководителя отдела разработки симуляторов в McLaren Racing. ETNZ тесно сотрудничает с Quantum Black (дочерняя компания McKinsey), на которую раньше работала моя жена. Один из инженеров моей команды в McLaren также работал в компании ETNZ. В такой запутанной паутине мне придется осторожно ступать!

Машинное обучение против оптимизации

По сути, конкуренция здесь идет между динамической оптимизацией с помощью коллокации и управлением машинным обучением с помощью обучения с подкреплением. Здесь методы машинного обучения выходят из блоков с большим преимуществом; они крутые, модные и актуальные. Таким образом, эти два метода работают следующим образом.

Машинное обучение

Придумайте подходящую форму для контроллера, это может варьироваться от простого управления с обратной связью до контроллера с некоторой памятью и видением будущего. Затем мы входим в цикл, в целом состоящий из:

  1. Выберите большое количество контроллеров наугад.
  2. Пусть попытаются управлять лодкой.
  3. Выберите те, которые работают лучше всего, и используйте какой-нибудь интеллектуальный метод итерации для создания контроллеров нового поколения.

Мы продолжаем повторять этот цикл до тех пор, пока «победители» действительно хорошо не справятся с задачей управления. Курс, проложенный этими победившими контроллерами, затем включает в себя результаты моделирования.

Динамическая оптимизация по коллокации

Здесь мы переформулируем задачу моделирования как большую задачу нелинейной оптимизации. Затем мы используем решатель оптимизации, чтобы найти набор элементов управления для лодки, который максимально быстро доставляет ее из точки А в точку Б. Сопутствующий набор состояний включает результаты этого моделирования.

Мы не скрываем, что думаем, что второй подход лучше, так почему же это так?

Преимущества коллокации

Один прогон, оптимальные результаты, математически гарантированный результат

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

Это имеет некоторые дополнительные последствия. Видео McKinsey описывает процесс, посредством которого их инженеры будут использовать результаты автономного моделирования, чтобы давать советы своим морякам в симуляторах «Sailor-in-the-Loop» (и на воде). Есть большая разница между тем, чтобы сказать своим матросам:

  1. Вы приближаетесь к нашим результатам в автономном режиме, которые кажутся немного лучше, чем то, что вы делаете в данный момент.
  2. Вы сокращаете разрыв между вашими текущими результатами и лучшими достижениями.

Взгляд сверху вниз на все

Компромиссы, необходимые для «управления» лодкой с переменным током, сложны не только с точки зрения нахождения наилучших углов наклона крыльев, углов крыльев, углов руля, натяжения снаряжения и дифферента паруса, чтобы двигаться как можно быстрее по прямой. , но и с точки зрения сделок, представленных при выполнении маневров. При входе в галс следует ли поворачиваться против ветра, чтобы набрать скорость, но при этом поворачивать на больший угол, или следует плыть близко к ветру, чтобы минимизировать угол поворота? (Ответ в том, что это зависит от вашей лодки и силы ветра).

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

Модельный агностик

Первая симуляция словосочетаний Кубка Америки, которую мы когда-либо запускали, была с округлением одной отметки. Получение этого результата было одним из несомненных достижений в моей профессиональной карьере; не в последнюю очередь потому, что сгенерировавший его решатель был идентичен тому, который использовался нашими клиентами из автоспорта для моделирования болидов F1.

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

  1. Рассмотрим ситуацию, когда у нас есть два компонента — например, клапаны из фольги — которые мы хотим сравнить при моделировании. Если мы используем машинное обучение и «Закрылки A» превосходят «Закрылки B», это потому, что они быстрее, или потому, что комбинация лодка/контроллер работает лучше? Мы можем распознать эту проблему и, таким образом, переобучить наши контроллеры для каждого закрылка из фольги, и теперь «Открылок B» кажется лучше. Это, однако, лишь немного усложняет проблему — возможно, тренировочный процесс лучше работал для «Flap B»? В качестве альтернативы мы могли бы просто смоделировать два закрылка с помощью решателя коллокаций и точно знать конечную производительность каждого варианта.
  2. Анализ конкурентов. Когда каждый участник впервые спустит свою лодку на воду, фотографы каждой второй команды сделают фотографии со всех возможных ракурсов, а инженеры обдумают ключевые концепции дизайна. Затем можно быстро создать CFD-модели этих концепций, и команда, выполняющая моделирование коллокации, с помощью одного моделирования узнает предельные характеристики лодки конкурента (что-то, что, как говорят, конкурент может даже не знать сам). Напротив, любой подход, основанный на обучении, должен будет полностью заново научиться управлять лодкой и, возможно, никогда не узнает ее сокровенных секретов.
  3. Детализированные развертки параметров являются ключевым компонентом моделирования. Каждый инженер-симулятор в команде F1 будет выполнять бесчисленное количество изменений высоты заднего дорожного просвета с шагом в 1 мм, чтобы найти наилучшую настройку для автомобиля на конкретной трассе. Точно так же команда AC может захотеть (например) выполнить точную прокрутку угла наклона фольги. Один контроллер вряд ли подойдет для всего спектра конструкций фольги, но действительно ли стоит переобучить контроллер, если время прохождения курса изменится всего на 0,01 с? Моделирование на основе словосочетаний, с другой стороны, просто определит время завершения курса и изменения в стиле управления, необходимые на этом пути.

Ограничения

Случайный наблюдатель, впервые включивший Кубок Америки, несомненно, удивится, что же делают все эти большие парни на ручных велосипедах. Это шлифовщики: спортсмены, часто вытягиваемые из высшего разряда элитного спорта, отдающие всю гидравлическую мощность, с которой перемещаются управляющие поверхности лодки. На скорости 50 уз для движения крыльев против потока воды может потребоваться огромное количество энергии; наивный контролер может легко начать подписывать чеки, гидравлика лодки и шлифовщики не могут их обналичить.

Между тем, даже если шлифовщикам хватит сил выполнить один маневр с такими высокими требованиями к гидравлике, гонки длятся 25 минут; просить человека выдать более нескольких сотен ватт мощности в течение такого длительного времени просто невозможно.

Это ограничение мощности и энергии очень похоже на ограничения общей энергии и нагрева батареи в Формуле E (в которой почти каждая команда использует наши симуляции словосочетаний), где мы можем справиться с такого рода ограничениями, установив ограничение на общее потребление энергии, и на мгновенную мощность. Это означает не только то, что результаты моделирования соответствуют этим ограничениям, но и то, что они дают нам чувствительность общей производительности к этим ограничениям. В FE это может быть число, которое можно использовать в стратегии гонки, в AC это может быть число, которое можно прикрепить к стене спортзала в качестве мотивации!

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

Чувствительность

Это второй визит к преимуществам преобразования проблемы управления в оптимизацию. Помимо математической гарантии оптимальности оптимизатор предоставляет множество других математических побочных продуктов, в том числе набор чисел, называемый множителями Лагранжа. Приложив немного хитрости, мы можем превратить их в чувствительность локальных параметров. Они заслуживают отдельной статьи (которую мы написали еще в 2018 году).

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

Скорость и оборудование

Один приличный компьютер и от 2 до 20 минут, и все готово. Нет необходимости в фермах серверов или суперкомпьютерах.

Итак, каковы недостатки?

Предыдущие разделы вряд ли можно назвать сбалансированным обсуждением преимуществ и недостатков словосочетаний. Мы проповедуем это, поэтому евангелизация — это то, что вы получаете. Тем не менее, мы не закрываем глаза на недостатки. Случайный наблюдатель вполне резонно может спросить: «Если это так чудесно цветет, почему я никогда о нем не слышал? Все это время машинное обучение находится во всех средствах массовой информации». Частично причина в том, что если вы запускаете симуляцию словосочетаний, вы получаете некоторые результаты, которые были изучены машиной… поэтому средства массовой информации будут сообщать об этом только одним способом.

Машинное обучение — замечательная технология для систем, где мы не можем написать красивое описание динамики. Шахматы, го и классические видеоигры 80-х — все они подходят под эту категорию, а методы машинного обучения добились потрясающих результатов. Однако для систем с известной детерминированной физикой мы должны добиться большего! Если бы мы могли изменить мир одним способом, проповедуя словосочетание, это было бы так: когда мы знаем физику системы, мы используем методы моделирования производительности, соответствующие задаче, а не тянемся к черному ящику машинного обучения.

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

Однако на фоне этих недостатков:

  1. Мы уже проделали большую часть тяжелой работы. Наш решатель может и подключается к любым моделям, которые мы выбираем.
  2. Результаты настолько ценны, что оно того стоит.

Итак, у нас есть это, теперь мы провели честное и взвешенное обсуждение преимуществ и недостатков. Только шучу…

Если вы хотите узнать, как использовать нашу уникальную технологию в вашей отрасли, свяжитесь с нами по адресу [email protected].