Используя результаты оптимизации

После того, как вы запускаете оптимизацию, Output узел появляется в дереве оптимизации и Оптимизации, Выходные представления появляются. CAGE обеспечивает инструменты для анализа ваших результатов с этими представлениями.

Выбор приемлемых решений

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

Эта таблица суммирует, как можно использовать выбранные решения.

ИспользованиеСмотрите

Заполнение таблиц с результатами оптимизации.

Заполнение таблиц от результатов оптимизации

Экспорт решений набора данных.

Экспорт в набор данных

Импорт решений других начальных значений оптимизации.

Импортируйте из Выхода

CAGE указывает на принять состояние.

СостояниеОписание

CAGE автоматически устанавливает флажки Accept для решений, где выходной флаг алгоритма указывает на успех (> 0). Эти решения показывают зеленый квадратный значок рядом с флажком. Обычно ограничениям соответствуют в допуске.

Решения с красным круглым значком указывают, что выходной флаг алгоритма не сообщает об успехе (<0). Некоторым ограничениям нельзя соответствовать.

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

Решения, где вы изменили состояние show флажка звездочка.

CAGE показывает нарушенные ограничения желтыми ячейками с перекрестными значками в таблице. Можно управлять значением, используемым для этого выделения путем выбора View> Edit Constraint Tolerance.

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

Если вы просматриваете ограничения с несколькими значениями и установили представление на Compact, ячейка является желтой, если какое-либо из отдельных значений неосуществимо.

Можно просмотреть алгоритм выходной флаг в подсказке путем наведения, мышь по каждому окрашенному принимает, что значок состояния или нажатие кнопки выбирает решение, и затем можно просмотреть алгоритм Exit flag, Exit message, и другие детали в таблице Solution Information.

Создайте оптимизацию суммы из оптимизации точки Выход

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

От вашей точки оптимизация вывела узел, выбирает Solution> Create Sum Optimization.

CAGE создает оптимизацию (названный Sum_myOptimizationName). Оптимизация имеет эти характеристики:

  • Цель совпадает с вашей исходной оптимизацией, но преобразованный в цель суммы.

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

  • Ваши исходные фиксированные и свободные переменные преобразованы в оптимизацию суммы (один запуск с несколькими значениями).

    • Новая оптимизация использует только принятые решения от вашей исходной оптимизации выход (все запуски с установленным флажком Accept).

    • Поэтому количество принятых решений, которые вы имели в исходной оптимизации, определяет количество значений в рамках запущенной оптимизации суммы.

  • Начальные значения свободной переменной и значения фиксированной переменной заполняются от вашей точки оптимальные результаты (только принятые решения).

  • Фиксированные переменные имеют столбец Весов с каждым набором значений к 1.

Если вы повторно выполняете оптимизацию точки, которая сопоставила оптимизацию суммы, Model-Based Calibration Toolbox™ может обновить и повторно выполнить оптимизацию суммы с результатами оптимизации точки. Model-Based Calibration Toolbox использует существующие ограничения оптимизации суммы, когда он повторно выполняет оптимизацию. Ранее Model-Based Calibration Toolbox создавал оптимизацию суммы.

Экспорт в набор данных

Можно экспортировать оптимизацию выходные результаты в новые или существующие наборы данных.

Экспортировать в набор данных:

  1. Выберите Solution> Export to Data Set или используйте кнопку на панели инструментов. Диалоговое окно Export to Data Set появляется.

  2. При экспорте в набор данных New (значение по умолчанию), можно отредактировать имя в окне редактирования.

  3. Если вы хотите перезаписать или добавить к существующему набору данных:

    1. Кликните по переключателю Modify existing.

    2. Выберите желаемый набор данных в списке.

    3. Выберите из списка Action:

      • Append добавляют данные к выбранному набору данных.

      • Overwrite замены все данные в наборе данных с новыми данными.

  4. По умолчанию флажок Use acceptable solutions only выбран. Результаты оптимизации с установленными флажками Accept экспортируются. Снимите флажок Use acceptable solutions only, если вы хотите экспортировать все результаты оптимизации.

  5. Нажмите OK, и данные экспортированы в набор данных.

Эта таблица суммирует правила экспорта.

Экспортируйте правила

Все фиксированные и свободные переменные экспортируются, если это возможно.

Никакие модели не экспортируются в набор данных. Если вы хотите оценить модель в значениях переменных, добавьте модель в набор данных в представлении Data Sets.

При добавлении правила эквивалентны при слиянии наборов данных:

  • Столбцы входных параметров добавлены к столбцам с именами, которые соответствуют в наборе данных, к которому вы добавляете.

  • Выходные параметры (модели) и любые другие столбцы, не совпадая с именами не добавлены.

  • Значения для любых несопоставленных столбцов в данных установлены к сетболу, если это возможно, или обнуляют в противном случае.

Пользовательская структура функции заливки

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

Структура ввода/вывода пользовательской функции заливки напоминает структуру MATLAB® процедуры интерполяции INTERP1 и INTERP2. Чтобы видеть структуру функции, лучше смотреть на пример:

  1. Найдите и откройте файл griddataTableFill.m в mbctraining папка.

  2. Введите это в командной строке, чтобы открыть пример:

    edit griddataTableFill

Все 2D пользовательские функции заливки должны взять эти шесть входных параметров:

Входной параметрОписание

col

Координата столбца результатов оптимизации (NF-by-1)

row

Координата строки результатов оптимизации (NF-by-1)

filldata

Оптимизированные результаты в (строка, седло) указывает (NF-by-1)

colaxis

Точки останова столбца таблицы, чтобы быть заполненным (1-by-NCOL)

rowaxis

Точки останова строки таблицы, чтобы быть заполненным (NROW-by-1)

currtabdata

Существующие табличные значения таблицы, чтобы быть заполненным (NROW-by-NCOL)

Функция должна передать три выходных аргумента обратно CAGE, чтобы позволить CAGE заполнять таблицу:

Вывод Описание
okБулев флаг, чтобы указать на успех табличной заливки (TRUE или FALSE)
tabvalНовые табличные значения таблицы, чтобы быть заполненным (NROW-by-NCOL)
fillmaskЛогическая матрица, чтобы указать на ячейки, которые будут добавлены к маске экстраполяции в результате таблицы, заполненной (NROW-by-NCOL)

В указанных выше технических условиях:

  • NF число точек от результатов оптимизации, которые используются, чтобы заполнить ваши таблицы.

  • NCOL количество точек останова столбца в таблице.

  • NROW количество точек останова строки в таблице.

Ваша функция должна обработать случаи, когда табличная заливка успешна или нет. В griddataTableFill, это обработано с помощью построения try-catch вокруг вызова griddata. Если griddata должен перестать работать, затем ok флаг установлен в ложь, и функция возвращается.

Пользовательская функция заливки для 1D таблиц

Можно также записать пользовательские функции заливки, чтобы заполнить 1D таблицы. В этом случае технические требования ввода и вывода следующие:

Входной параметрОписание
row Координата строки результатов оптимизации (NF-by-1)
filldataОптимизированные результаты в (строка, седло) указывает (NF-by-1)
rowaxisТочки останова строки таблицы, чтобы быть заполненным (NROW-by-1)
currtabdataСуществующие табличные значения таблицы, чтобы быть заполненным (NROW-by-1)

Вывод Описание
ok Булев флаг, чтобы указать на успех табличной заливки (TRUE или FALSE)
tabvalНовые табличные значения таблицы, чтобы быть заполненным (NROW-by-1)
fillmaskЛогическая матрица, чтобы указать на ячейки, которые будут добавлены к маске экстраполяции в результате таблицы, заполненной (NROW-by-1)

Похожие темы