Optimize

Оптимизируйте в Live Editor

Описание

Задача Оптимизации позволяет вам в интерактивном режиме оптимизировать линейные и нелинейные целевые функции, удовлетворяющие ограничениям различных типов, и решить нелинейные системы уравнений. Задача автоматически генерирует MATLAB® код для вашего live скрипта.

Используя эту задачу, вы можете:

  • Задайте целевую функцию либо путем написания функции, либо путем просмотра функции.

  • Задайте опции решателя.

  • Запустите оптимизацию.

Общие сведения о задачах Live Editor см. в разделе Добавление интерактивных задач в Live Script.

Optimize task in Live Editor

Откройте задачу

Чтобы добавить задачу Оптимизации к live скрипту в РЕДАКТОРА MATLAB, на вкладке Insert Live Editor, выберите Task > Optimize.

Insert Optimize Live Editor task

Кроме того, в код блоке скрипта введите соответствующее ключевое слово, например fminbnd. Выберите Optimize из предложенных завершений команды.

Choosing Optimize from command completion suggestions

Параметры

Решатель оптимизации, который MATLAB использует, чтобы решить задачу, заданную в качестве одного из следующих решателей:

  • fminbnd - Минимизируйте действительную функцию одной переменной в ограниченной области.

  • fminsearch - Минимизируйте действительную функцию из нескольких переменных в неограниченной области.

  • lsqnonneg - Минимизация norm(C*x-d) при условии   x ≥ 0.

  • fzero - Найти реальную точку x где действительная нелинейная функция f(x) = 0.

Пример: fminsearch

Функция для минимизации (для fminbnd или fminsearch) или найти корень (для fzero), заданный как указатель на функцию, имя локальной функции или файл функции.

  • Указатель на функцию - создайте указатель на функцию в рабочей области. Затем в задаче Optimize выберите Objective function > Function handle и выберите целевую функцию.

  • Локальная функция

    • New - В задаче Оптимизации выберите Objective function > Local function и затем нажмите кнопку New. Новое определение функции появляется под задачей. Отредактируйте функцию так, чтобы она вычисляла цель. Затем выберите локальную функцию.

    • Existing - Выберите Objective function > Local function и выберите локальную функцию.

  • Файл функции

    • New - В задаче Оптимизации выберите Objective function > From file и затем нажмите кнопку New. Появится новый файл функции. Отредактируйте файл, чтобы вычислить цель, а затем сохраните файл в пути MATLAB. Нажмите кнопку Browse и выберите файл.

    • Существующее - Выбор From file затем Browse... и выберите файл.

Совет

  • Для функций с дополнительными входами Optimize требует, чтобы вы выбрали переменную оптимизации и определили, какие переменные рабочей области содержат фиксированные входные параметры данных. Этот пример содержит три входных параметров функции:

    Optimization input = "vars", Fixed input y = "y", Fixed input w = "w"

    Optimize генерирует код только после того, как вы задаете все входные параметры функции.

  • Оптимизу не удается проанализировать функцию, содержащую varargin введите или функцию, содержащую ошибку.

  • Если вы выбираете целевую функцию из файла, Optimize добавляет расположение файла к пути MATLAB.

  • Если Optimize имеет ошибку анализа или если несколько локальных функций имеют одинаковое имя, список доступных локальных функций пуст.

См. также

Функции

Введенный в R2020b