exponenta event banner

Как программное обеспечение формулирует оценку параметров как задачу оптимизации

Обзор оценки параметров как задачи оптимизации

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

  • x - Конструктивные переменные. Параметры модели и исходные состояния, которые должны быть оценены.

  • F (x) - Целевая функция. Функция, которая вычисляет меру разницы между моделируемыми и измеряемыми откликами. Также называется функцией затрат или ошибкой оценки.

  • (Необязательно) x¯≤x≤x¯ - Границы. Ограничения на расчетные значения параметров.

  • (Необязательно) C (x) - функция ограничения. Функция, определяющая ограничения для конструктивных переменных.

Решатель оптимизации настраивает значения конструктивных переменных в соответствии с заданными целями и ограничениями. Точная формулировка оптимизации зависит от используемого метода оптимизации.

Функция затрат

Программное обеспечение настраивает параметры модели для получения моделируемого отклика (ysim), который отслеживает измеренный отклик или опорный сигнал (yref). Для этого решатель минимизирует функцию затрат или ошибку оценки, меру разницы между моделируемыми и измеряемыми откликами. Функция затрат F (x) является целевой функцией задачи оптимизации.

Типы

Необработанная ошибка оценки, e (t), определяется как:

e (t) = yref (t) ysim (t)

e (t) также называют остатками ошибок или просто остатками.

Программное обеспечение Simulink ® Design Optimization™ предоставляет следующие функции для обработки e (t):

Функция затратФормулировкаИмя параметра в графическом интерфейсе пользователя или командной строке
Ошибка суммы в квадрате (по умолчанию)

F (x) =∑t=0tNe (t) × e (t)

N - количество выборок.

'SSE'
Абсолютная ошибка суммы

F (x) =∑t=0tN'e (t) |

N - количество выборок.

'SAE'
Необработанная ошибка

F (x) = [e (0) ⋮e (N)]

N - количество выборок.

'Residuals'

Этот параметр доступен только в командной строке.

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

Этот параметр доступен только в командной строке.

Временная база

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

  • Временная база измеряемого сигнала состоит из всех моментов времени, для которых определен измеряемый сигнал. В случае множества измеряемых сигналов эта временная база является объединением временных точек всех измеряемых сигналов.

  • Моделируемая база времени сигнала состоит из всех моментов времени, для которых моделируется модель.

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

  • В графическом интерфейсе пользователя можно задать время начала и окончания моделирования в области Время моделирования (Simulation time) диалогового окна Опции моделирования (Simulation Options).

  • В командной строке программа определяет время остановки моделирования в качестве последней точки измеренной временной базы сигнала. Например, следующий код моделирует модель до конца самого длинного выходного сигнала expодин sdo.Experiment объект:

    sim_obj = createSimulator(exp);
    sim_obj = sim(sim_obj);

    sim_obj содержит смоделированный отклик для модели, связанной с exp.

Границы и ограничения

Можно задать границы для конструктивных переменных (расчетные параметры модели) на основе знаний о системе. Границы выражаются как:

x¯≤x≤x¯

X и X являются нижней и верхней границами для конструктивных переменных.

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

0<x<∞

Пример определения этих типов границ см. в разделе Оценка параметров модели и начальных состояний (код).

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

C (x): x1 x2C (x) ≤0

x1 и x2 - коэффициенты динамического и статического трения соответственно.

Пример указания ограничения см. в разделе Оценка параметров модели с ограничениями параметров (код).

Методы оптимизации и формулировки проблем

Проблемой оптимизации может быть один из следующих типов:

  • Задача минимизации - минимизирует целевую функцию F (x). Необходимо указать измеренный сигнал, который будет отслеживаться на выходе модели. При необходимости можно задать границы для расчетных параметров.

  • Проблема смешанной минимизации и выполнимости - минимизирует целевую функцию F (x) с учетом определенных ограничений и ограничений C (x). Необходимо указать измеренный сигнал, который модель должна отслеживать, а также границы и ограничения для расчетных параметров.

  • Задача выполнимости - поиск решения, удовлетворяющего указанным ограничениям, C (x). Для расчетных параметров указываются только границы и ограничения. Этот тип проблем не является распространенным в оценке параметров.

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

Имя метода оптимизацииОписаниеРазработка задач оптимизации
  • Интерфейс пользователя: нелинейные наименьшие квадраты

  • Командная строка: 'lsqnonlin'

Минимизирует квадраты остатков, рекомендуемый метод оценки параметров.

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

Этот метод использует функцию Optimization Toolbox™, lsqnonlin.

 Проблема минимизации

 Проблема смешанной минимизации и выполнимости

 Проблема выполнимости

  • Интерфейс пользователя: Градиентный спуск

  • Командная строка: 'fmincon'

Общий нелинейный решатель, использует градиент функции затрат.

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

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

  • Ограничения на основе параметров

  • Ограничения на основе сигналов

Этот метод использует функцию «Панель инструментов оптимизации», fmincon.

Сведения о том, как вычисляется градиент, см. в разделе Вычисления градиента.

 Проблема минимизации

 Проблема смешанной минимизации и выполнимости

 Проблема выполнимости

  • Интерфейс пользователя: Simplex Search

  • Командная строка: 'fminsearch'

Основанный на алгоритме Нелдера - Мид, этот подход не использует градиент функции затрат.

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

Этот метод использует функции панели инструментов оптимизации. fminsearch и fminbnd. fminbnd используется при оптимизации одного скалярного параметра. В противном случае fminsearch используется. Нельзя задать границы параметров, x¯≤x≤x¯, с fminsearch.

 Проблема минимизации

 Проблема смешанной минимизации и выполнимости

 Проблема выполнимости

  • Интерфейс пользователя: Поиск по образцу

  • Командная строка: 'patternsearch'

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

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

Этот метод использует функцию Global Optimization Toolbox, patternsearch(Панель инструментов глобальной оптимизации).

 Проблема минимизации

 Проблема смешанной минимизации и выполнимости

 Проблема выполнимости

См. также

| | | | | | | | (инструментарий глобальной оптимизации)

Связанные примеры

Подробнее