Создайте оптимизацию

Настройка оптимизации

Для любой оптимизации нужна одна или несколько моделей. Импортируйте модель или модели, которые вы хотите оптимизировать, в свой проект. См. «Импорт моделей и элементов калибровки с использованием Инструмента для импорта CAGE». После импорта моделей можно создать оптимизацию.

Используйте следующий процесс для настройки оптимизации:

  1. Чтобы создать оптимизацию, используйте мастер создания оптимизаций из моделей.

    Можно использовать мастер для настройки оптимизации любого типа: оптимизации точек или сумм, одиночной или мультиобъективной, модальной или многозначной. См. «Об оптимизации точек и сумм».

  2. Добавьте ограничения. Можно добавить ограничение граничной модели в мастер. Используйте представление Оптимизации (Optimization), чтобы применить другие типы ограничений (ограничения модели, линейные, эллипсоидные, 1-D таблицы, 2-D таблицы и области значений). Для получения дополнительной информации обо всех этих ограничениях см. раздел «Редактирование ограничения».

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

  4. Запустите оптимизацию. См. Раздел «Оптимизация выполнения»

  5. Просмотр результатов. См. «Оптимизационный анализ».

Об оптимизации точек и сумм

Можно настроить оптимизацию точек или сумм с помощью мастера создания оптимизации из модели.

Можно запустить общий рабочий процесс калибровки CAGE, создав оптимизацию точки. Что такое point optimization? Для задачи оптимизации точек CAGE может определять оптимальные значения параметров управления в одной рабочей точке на запуск оптимизации. run является одним вызовом алгоритма оптимизации. Чтобы оптимизировать параметры управления для набора рабочих точек, CAGE может запустить оптимизацию для каждой точки.

Можно использовать рабочий процесс оптимизации точек, чтобы найти хорошие начальные значения для суммарной оптимизации. В суммарной оптимизации один запуск оптимизации может определить оптимальное значение параметров управления в нескольких рабочих точках одновременно. Для получения информации о различных шагах, необходимых для настройки оптимизации суммы, см. Раздел «Настройка оптимизации суммы».

Некоторые задачи оптимизации требуют оптимизации более чем одной цели одновременно (мультиобъективная) или нескольких решений на точку (модальная или мультистартовая). Для получения информации о различных шагах, необходимых для настройки этих оптимизаций, смотрите Настройте Мультибъективную Оптимизацию, Настройте Модальные Оптимизации и Настройте Мультибъективную Оптимизацию.

Для примеров типов задач оптимизации смотрите Задачи Оптимизации, которые вы можете решить с помощью CAGE

Создание оптимизации из моделей

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

  1. Выберите Tools > Create Optimization From Model или File > New > Optimization.

    Откроется мастер Create Optimization From Model.

  2. Выберите модель, чтобы минимизировать или максимизировать в оптимизации.

    Если вы просматриваете модель, мастер автоматически выбирает текущую модель. Если вы просматриваете узел оптимизации или выхода оптимизации, то мастер автоматически выбирает модель в первой цели.

    Если у вас есть модели «точка за точкой», как показано в этом примере, можно опционально установить флажок для Create operating point data set.

    Нажмите Next.

  3. Выберите алгоритм, тип цели, источник данных для оптимизации, свободные переменные и граничное ограничение.

    • Algorithm:

      • Используйте fmincon по умолчанию для основанной на градиентах одноцелевой оптимизации.

      • Использование NBI для мультиобъективной оптимизации. После завершения работы мастера можно настроить дополнительные цели оптимизации. Смотрите Настройку Мультиобъективной Оптимизации.

      • Использование gamultiobj для мультиобъективных оптимизаций с более чем двумя целями и теми, которые не гладки. Такие проблемы могут работать лучше с gamultiobj чем с NBI. После завершения работы мастера можно настроить дополнительные цели оптимизации. Этот алгоритм доступен только в том случае, если установлен продукт Global Optimization Toolbox. Смотрите Настройку Мультиобъективной Оптимизации.

      • Использование ga или patternsearch для неградиентных основанных на одной цели оптимизаций. Эти алгоритмы доступны, только если установлен продукт Global Optimization Toolbox.

      • Использование Modal optimization с составной моделью для выбора наилучшего режима работы для каждой рабочей точки. См. «Настройка модальных оптимизаций».

      • Использование MultiStart поиск нескольких локальных оптимальных решений путем запуска нескольких начальных точек для каждой рабочей точки. См. Раздел «Настройка оптимизации MultiStart»

      • Если у вас есть подходящая пользовательская стандартная программа оптимизации в CAGE, она может появиться здесь. См. Раздел «Оптимизация скриптов»

    • Objective type: Выберите, хотите ли вы Maximize или Minimize ваша модель и выберите Point или Sum цель.

      CAGE автоматически настраивает значения переменных правильно: запуск по точкам, если вы выбираете Point, один запуск для Sum. См. Раздел «Настройка оптимизации суммы»

    • Data source: Выберите точки, в которых необходимо выполнить оптимизацию. Можно также настроить точки в представлении Оптимизации. Если вы принимаете решение настроить точки в мастере, опции зависят от содержимого вашего проекта и типа модели. Можно принять решение использовать переменные заданные точки, набор данных, точки останова таблицы, рабочие точки модели (по умолчанию для моделей точка за точкой) или уникальные рабочие точки (для составной модели, объединяющей модели точка за точкой).

    • Free variables: Установите флажки переменных, которые вы хотите оптимизировать, из набора входов модели.

    • Add a model boundary constraint: Установите флажок, если вы хотите ограничить оптимизацию в граничной модели, связанной с вашей моделью.

    Щелкните Finish, чтобы создать оптимизацию.

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

После того, как вы создаете оптимизацию, вы не можете изменить свободные переменные или тип алгоритма.

Инструменты для общих задач оптимизации

Общие задачи доступны на панели инструментов:

  • Создать таблицы из модели (Create Tables From Model) - используйте этот мастер для создания таблиц (и, необязательно, компромисса) для использования с текущей оптимизацией. Общим рабочим процессом является создание таблиц с теми же входами, что и ваша оптимизация, для заполнения результатами оптимизации. Мастер автоматически выбирает модель в первой цели (можно также выбрать любую модель в проекте), а затем можно выбрать переменные и отклики для настройки таблиц. Затем можно заполнить эти таблицы результатами оптимизации и исследовать результаты в ракурсе компромисса. См. «Создание интерполяционных таблиц из модели».

  • Добавить цель - добавляет цель к вашей оптимизации (если включена; запомнить fmincon может иметь только одну цель). Дважды кликните новую цель, чтобы открыть диалоговое окно Править цель (Edit Objective), выбрать модель и задать необходимость максимизации или минимизации. См. раздел «Изменение цели».

  • Добавить ограничение - добавляет ограничение к оптимизации. Дважды кликните новое ограничение (в списке ограничений), чтобы открыть Редактор ограничений и настроить ограничение. См. «Редактирование ограничения»

  • Импорт из набора данных, импорт из выхода оптимизации, импорт из точек по оси Х таблицы, импорт из значений таблицы - Вы можете использовать их, чтобы заполнить панели Переменные значения путем импорта значений - См. «Редактирование значений переменных».

  • Установите Оптимизацию, Настройте и Запустите Оптимизацию - Обе эти опции открывают диалоговое окно Параметры Оптимизации, где можно изменить настройки оптимизации, такие как допуски и количество решений. Когда вы закрываете диалоговое окно, настройки сохраняются (и оптимизация запускается в случае Set Up и запуск). См. «Редактирование параметров оптимизации».

  • Запуск оптимизации - запускает оптимизацию. См. Раздел «Оптимизация выполнения»

Мастер оптимизации

Для большинства оптимизаций необходимо использовать мастер создания оптимизаций из моделей, поскольку он упрощает процесс настройки.

Если определенный пользователем скрипт оптимизации задает наборы рабочих точек и/или фиксированное количество свободных переменных, необходимо использовать Мастер оптимизации. Это характерно для скриптов версии 2.0.

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

Вы можете использовать Optimization Wizard для:

  1. Выберите алгоритм

  2. Настройка свободных переменных, целей и опций - Мастер оптимизации Шаг 2

  3. Выберите бесплатные переменные - Мастер оптимизации Шаг 3

    Последние 3 шага можно выполнить в мастере или в представлении Оптимизации:

  4. Настройка целей - Мастер оптимизации Шаг 4

  5. Настройте ограничения модели - Мастер оптимизации Шаг 5

  6. Настройте наборы данных (только для пользовательской оптимизации) - Мастер оптимизации Шаг 6

Чтобы использовать Мастер оптимизации, выберите File > New > Custom Optimization.

Это приводит вас к мастеру оптимизации, который проводит вас через шаги выбора оптимизации, определения количества переменных для оптимизации (если это не предопределено функцией) и связывания переменных, ссылка на которые в оптимизации связана с переменными CAGE.

Шаг 1. Сначала вы должны выбрать свой алгоритм. Первый экран Optimization Wizard показан ниже.

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

  • fmincon является одноцелевой оптимизацией, удовлетворяющей ограничениям. Эта функция использует MATLAB® fmincon алгоритм из продукта Optimization Toolbox™.

  • NBI и gamultiobj являются мультиобъективными и могут также подвергаться ограничениям.

  • ga, gamultiobj, и patternsearch доступны только в том случае, если установлен продукт Global Optimization Toolbox.

    • ga означает Генетический Алгоритм, для одноцелевой оптимизации, удовлетворяющей ограничениям. Эта функция использует MATLAB ga алгоритм из продукта Global Optimization Toolbox. См. Генетический алгоритм (Global Optimization Toolbox).

    • patternsearch является другим алгоритмом для одноцелевой оптимизации, удовлетворяющим ограничениям, из продукта Global Optimization Toolbox. См. раздел Прямой поиск (Global Optimization Toolbox).

  • Modal optimization выбирает оптимальный режим работы для каждой рабочей точки и требует составной модели. См. «Настройка модальных оптимизаций».

Часто этих стандартных стандартные программы достаточно, чтобы позволить вам решить свою задачу оптимизации. Иногда, однако, вам может потребоваться написание настраиваемого алгоритма оптимизации; для этого можно использовать предоставленный шаблон для изменения в соответствии с вашими потребностями. Все оптимизационные функции, сданные на хранение в CAGE, отображаются в этом списке. Для получения дополнительной информации см. раздел «Оптимизация скриптов». Опция Рабочий пример (Worked Example) предназначена для демонстрации использования измененного шаблона. Для получения пошаговых инструкций смотрите руководство по оптимизации в разделе «Создайте пользовательскую оптимизацию».

Примечание

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

Мастер оптимизации Шаг 2

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

  • Если на шаге 1 вы выбираете fmincon алгоритм и нажатий кнопки Next, вы получаете следующие варианты:

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

  • Если на шаге 1 вы выбираете алгоритм NBI, и нажмите Next, вы видите это:

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

Мастер оптимизации Шаг 3

Вы должны выбрать переменные, чтобы связать с свободными переменными, используемыми в оптимизации.

Этот экран используется для связи переменных из сеанса CAGE с свободными переменными (переменными ), которые необходимо использовать в оптимизации. Выберите правильную пару в правых и левых списках нажав, затем нажмите большую кнопку, как показано на рисунке.

После присвоения здесь свободных переменных можно кликнуть Next или Finish. Это также относится ко всем последующим шагам в Optimization Wizard.

Мастер оптимизации Шаг 4

Можно настроить цели здесь или можно настроить их в представлении Оптимизации в CAGE. См. раздел «Изменение цели».

Здесь можно выбрать модели из вашего сеанса, которые вы хотите использовать для оптимизации, и хотите ли вы максимизировать или минимизировать выход модели. The fmincon алгоритм предназначен для одиночных целей, поэтому вы можете максимизировать или минимизировать только одну модель. The NBI или gamultiobj алгоритмы могут оценить несколько целей. Например, можно хотеть максимизировать крутящий момент при минимизации выбросов NOX. Помните, что можно также задать ограничения позже, например, используя требования к выбросам.

Можно также включить 'helper'модели в ваших пользовательских оптимизациях, так что вы можете просмотреть другую полезную информацию, которая поможет вам принять решения об оптимизации (это не включено для NBI или fmincon).

  • Нажмите кнопку Next, чтобы продолжить настройку ограничений.

  • Нажмите Finish, чтобы завершить Optimization Wizard и вернуться к представлению Optimization. Обратите внимание, что в мастере можно настраивать только цели точек, но можно также настроить цели сумм в главном представлении Optimization. См. раздел «Редактирование целей и ограничений».

Мастер оптимизации Шаг 5

Можно использовать модели, чтобы задать области ограничений, которые ограничивают свободные переменные. Если необходимо использовать ограничения, можно выбрать их здесь или добавить их в представление Оптимизации в CAGE. Можно также добавить другие типы ограничений в представление Оптимизации. См. Раздел «Редактирование ограничения».

Выберите модель для каждого ограничения путем выбора модели CAGE и ограничения модели и нажатия кнопки, чтобы соответствовать им вверх.

Для каждого ограничения либо:

  • Введите значение в поле редактирования для определения границы. Выберите оператор, чтобы определить, должен ли выход оптимизации быть ограничен, чтобы быть больше или меньше, чем значение.

  • Также нажмите кнопку опции, чтобы использовать Boundary of model в качестве ограничения.

Мастер оптимизации Шаг 6

Если определенная пользователем оптимизация позволяет добавить набор данных, можно выбрать его на шаге 6 мастера оптимизации. Можно использовать наборы данных для вычисления моделей по другому набору рабочих точек во время запуска оптимизации. В качестве примера можно запустить оптимизацию в точках (N1, L1), (N2, L2), но важной величиной для мониторинга и, возможно, воздействия является, скажем, температура в точках (N3, L3), (N4, L4). Можно контролировать температуру в этих точках, используя наборы данных, чтобы помочь вам выбрать результаты оптимизации. Можно настроить наборы данных на шаге 6 мастера или в представлении Оптимизации в CAGE (выберите Optimization > Edit Data Sets).

Наборы данных не включены для fmincon и NBI оптимизация.

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