Оптимизация CAGE содержит два алгоритма (NBI
и gamultiobj
) для решения мультиобъективных задач оптимизации. Например, можно использовать тип оптимизации NBI, чтобы определить оптимальный крутящий момент в зависимости от кривой выбросов NOx для двигателя в рабочей области значений двигателя. Чтобы решить эту проблему, вы должны задать две конкурирующие цели оптимизации, чтобы максимизировать крутящий момент при минимизации выбросов NOx.
Чтобы настроить новую мультиобъективную оптимизацию:
Чтобы создать оптимизацию, используйте мастер создания оптимизаций из моделей. В мастере можно настроить одну из целей. Необходимо выбрать один из NBI
алгоритм или gamultiobj
алгоритм для решения мультиобъективной оптимизации.
Использование gamultiobj
для мультиобъективных оптимизаций с более чем двумя целями и теми, которые не гладки. Такие проблемы могут работать лучше с gamultiobj
чем с NBI
. The gamultiobj
алгоритм доступен только в том случае, если установлен продукт Global Optimization Toolbox.
Когда вы выбираете мультиобъективный алгоритм, мастер автоматически создает вторую пустую цель для вас. После завершения работы мастера и возврата к представлению Оптимизации можно сконфигурировать вторую цель (и при необходимости добавить третью).
Можно добавить ограничение граничной модели в мастер. Для применения других типов ограничений необходимо использовать представление Оптимизации (Optimization). Можно применить линейные, эллипсоидные, 1-D таблицы, 2-D таблицы и ограничения области значений, и некоторые ограничения характерны для суммарной оптимизации - суммарные ограничения и градиентные ограничения таблицы.
Для получения дополнительной информации обо всех этих ограничениях см. раздел «Редактирование ограничения».
Можно использовать мастер для выбора точек, в которых необходимо выполнить оптимизацию. Можно выбрать подходящие точки по оси Х таблицы, наборы данных, рабочие точки модели точка за точкой или использовать переменные заданные точки. Можно также настроить значения переменных оптимизации в представлении Оптимизации. См. Раздел «Редактирование значений переменных» Можно ввести значения вручную или импортировать их из наборов данных, таблиц или выходов существующих оптимизаций.
Запустите оптимизацию, используя процедуру для Run Optimizations.
Щелкните Run Optimization на панели инструментов, чтобы запустить оптимизацию с настройками по умолчанию.
Просмотр результатов (см. Просмотр результатов оптимизации). Для описания выходов оптимизации, характерных для мультиобъективных задач, смотрите Инструменты для оптимизации с несколькими решениями и Анализа мультиобъективных Результатов оптимизации.
The gamultiobj
алгоритм использует gamultiobj
функция из продукта Global Optimization Toolbox и доступна только в том случае, если установлен продукт Global Optimization Toolbox.
Для получения дополнительной информации о gamultiobj
function, see Multiobjective Optimization (Global Optimization Toolbox) in Global Optimization Toolbox. Для опций CAGE, см. Gamultiobj Параметры оптимизации.
Для анализа результатов смотрите Инструменты для оптимизации с несколькими решениями и Анализ мультиобъективных Результатов оптимизации.
Чтобы понять опции для алгоритма NBI, требуется некоторое ограниченное понимание алгоритма. Для получения дополнительной информации об алгоритме NBI смотрите следующую ссылку:
Пересечение нормаль-граница: новый метод генерации поверхности Парето в нелинейных задачах оптимизации, I.Das и J.E. Dennis, SIAM J. On Optimization. 8(3), 631-657 (1998).
Алгоритм NBI выполняется в два этапа. Первый шаг состоит в том, чтобы найти глобальные для каждой цели индивидуально. Это называется теневой задачей минимума и является единичной задачей для каждой целевой функции. MATLAB® стандартные fmincon
используется для их поиска. Как только они найдены, они могут быть построены друг против друга. Например, рассмотрим NBI
оптимизация, которая одновременно максимизирует TQ и минимизирует выбросы NOX. График относительно друг друга может напоминать следующий.
Второй шаг - найти «лучший» набор компромиссных решений между вашими целями. Для этого NBI
пространства алгоритмов Npts
начальные точки в (n-1) гиперповерхности, S
, который соединяет тень. В приведенном выше примере S
- прямая линия, соединяющая точки N
и T
. Для каждого из Npts
точки на S
алгоритм пытается максимизировать расстояние вдоль нормали от этой поверхности (это расстояние маркировано L
на следующем рисунке). Это называется NBI
подпроблем. Для каждой из точек, NBI
подпроблем является одной целевой задачей, и алгоритм использует MATLAB fmincon
стандартная программа, чтобы решить его. Это проиллюстрировано ниже для примера TQ-NOX.
Рисунок выше показывает интервалы между точками вдоль (n-1) поверхности. Алгоритм пытается максимизировать расстояние L
вдоль нормали от поверхности. Следующий рисунок показывает окончательное решение, найденное алгоритмом NBI.
Чтобы увидеть, как настройки NBI используются в диалоговом окне Optimization Parameters, смотрите Параметры Оптимизации NBI.