Инженерная оптимизация: как математика помогает выбирать между безопасностью и скоростью

Stanford Online 6,9 тыс. 41 мин 4 мин 03.07.2025
Главное

В инженерном проектировании редко приходится оптимизировать лишь один параметр: чаще всего конструктор разрывается между стоимостью, надежностью, весом и производительностью. В рамках курса AA222 в Стэнфордском университете Сидни (Sydney), постдок лаборатории SISL (Stanford Intelligent Systems Laboratory), представила глубокий обзор методов многокритериальной оптимизации, объяснив, как математика помогает находить баланс в условиях неминуемых компромиссов.

⚖️ От одного к многим: суть многокритериальной оптимизации 0:04

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

В качестве живого примера Сидни приводит жизнь аспиранта (PhD student), который одновременно пытается оптимизировать сразу несколько показателей :

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

🏆 Парето-оптимальность и концепция доминирования 3:15

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

Для наглядности Сидни вводит понятие доминирования:

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

🛠️ Математические методы построения фронта 10:12

Сидни подробно разобрала несколько классических подходов к решению таких задач:

1. Метод ограничений (Constraint Method) Одну цель оставляют в качестве основной для оптимизации, а остальные превращают в жесткие ограничения (например, «параметр $f_2$ должен быть не больше значения $C_2$»). Изменяя (сканируя) значение $C_2$, можно получить различные точки на фронте Парето .

2. Лексикографический метод (Lexicographic Method) Цели ранжируются по важности. Сначала оптимизируется самая важная цель. Затем вторая цель оптимизируется с условием, что первая не станет хуже полученного результата . По мнению Сидни, этот метод часто дает только крайние точки фронта и не всегда эффективен для поиска промежуточных решений .

3. Метод взвешенной суммы (Weighted Sum Method) Это самый интуитивный подход: каждой цели присваивается вес, и они суммируются в единую функцию.

4. Целевое программирование (Goal Programming) Вместо весов задается «точка утопии» — идеальный, но недостижимый результат (например, нулевая вероятность столкновения самолетов при нулевом количестве предупреждений) . Задача сводится к минимизации расстояния (нормы $L_1$, $L_2$ или $L_\infty$) от текущего дизайна до этой идеальной точки .

🧬 Популяционные методы и ранжирование 27:17

Для сложных задач применяются эволюционные алгоритмы. Один из примеров — векторный генетический алгоритм (VEGA), где разные подпопуляции оптимизируются под разные цели, а затем скрещиваются .

Особый интерес представляет метод неблокируемого ранжирования (nondomination ranking) :

  1. Из всей массы решений выделяются те, что лежат на текущем фронте Парето (Ранг 1).
  2. Они временно удаляются, и процедура повторяется для оставшихся точек (Ранг 2) .
  3. Это позволяет оценить, насколько далеко конкретное решение находится от идеального фронта.

Сидни также упомянула техники «нишевания» (niche techniques), которые предотвращают скучивание решений в одной области и обеспечивают равномерное распределение точек вдоль всего фронта Парето .

🍬 Извлечение предпочтений: эксперимент с конфетами 30:54

Даже имея перед глазами фронт Парето, инженер должен выбрать одну конкретную точку для реализации. Но как выбрать веса, если заказчик (например, Федеральное управление гражданской авиации США — FAA) не знает точных математических коэффициентов?

Для этого используется «извлечение предпочтений» (preference elicitation) через парные сравнения . Сидни провела демонстрацию на примере выбора наборов конфет (M&M's, Sour Patch Kids и Skittles):

Этот метод лежит в основе современных технологий, таких как RLHF (Reinforcement Learning from Human Feedback), используемых для настройки больших языковых моделей . Сидни подчеркнула, что в реальности исследователи учитывают возможную иррациональность людей, используя вероятностные распределения вместо жестких неравенств .

💬 Цитаты

«Дизайн считается оптимальным по Парето, если мы не можем улучшить одну метрику, не ухудшив другую.»

«В какой-то момент вам все равно придется выбрать один конкретный проект и отправить его в производство.»

👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
Фронт Парето
Множество всех оптимальных решений, для которых улучшение одного параметра невозможно без ущерба для другого.
Точка утопии
Гипотетическая точка в пространстве целей, представляющая идеальные значения по всем критериям одновременно.
RLHF
Обучение с подкреплением на основе обратной связи от человека, метод настройки нейросетей.
📊 Цифры
⚖️ Другая сторона
Инженерия Парето-оптимальность Stanford University RLHF Julia ACAS X