Оцените ограниченные значения интерполяционной таблицы

Цели

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

О данных

В этом примере используйте lookup_increasing.mat, который содержит измеренные данные о вводе-выводе для оценки значений интерполяционной таблицы. MAT-файл включает следующие переменные:

  • xdata1 — Входные данные, состоящие из 602 однородно выборочных данных, указывают в области значений [-5,5].

  • ydata1 — Выходные данные, соответствующие выборкам входных данных.

  • time1 — Временной вектор.

Используйте данные о вводе-выводе, чтобы оценить монотонно увеличивающиеся выходные значения интерполяционной таблицы в модели lookup_increasing Simulink®.

Интерполяционная таблица Вывод

  1. Откройте модель интерполяционной таблицы путем ввода следующей команды в подсказке MATLAB®:

    lookup_increasing

    Эта команда открывает модель Simulink и загружает данные об оценке в рабочем пространстве MATLAB.

  2. Просмотрите табличные выходные значения путем двойного клика по блоку Lookup Table.

    Таблица содержит 11 выходных значений в точках останова [-5:5], заданный в диалоговом окне Function Block Parameters. Чтобы узнать больше, как задать табличные значения, смотрите, Вводят Точки останова и Табличные Данные (Simulink).

    Поле Table data показывает, что табличные выходные значения являются совокупной суммой значений, сохраненных в переменной ydelta. Таким образом, если yn является 11 табличными выходными значениями, ydelta (y1, y2y1, y3y2..., y11y10). Начальные значения ydelta загружаются от lookup_increasing.mat.

    Начальные табличные выходные значения монотонно не увеличиваются. Чтобы гарантировать монотонно увеличивающиеся табличные выходные значения, различие между смежными табличными выходными значениями должно быть положительным. Для этого оцените ydelta в инструменте Parameter Estimation с помощью измеренных данных об оценке ввода-вывода и ограничьте ydelta(2:end) быть положительным во время оценки.

Оцените монотонно увеличивающиеся табличные значения Используя настройки по умолчанию

  1. Откройте сеанс оценки параметра.

    В модели Simulink выберите Analysis> Parameter Estimation, чтобы открыть сеанс с именем lookup_increasing в инструменте Parameter Estimation.

  2. Создайте эксперимент и импортируйте данные о вводе-выводе.

    На вкладке Parameter Estimation нажмите New Experiment. Введите [time1,ydata1] в Outputs и [time1,xdata1] в Inputs диалогового окна Edit Experiment. Нажмите OK. Новый эксперимент с именем Exp создается в области Experiments инструмента. Переименуйте эксперимент EstimationData путем щелчка правой кнопкой по имени эксперимента по умолчанию, Exp, и выбора Rename. Для получения дополнительной информации смотрите, Импортируют Данные для Оценки Параметра.

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

    sim('lookup_increasing')
    figure(1); plot(xdata1,ydata1,'m*',xout,yout,'b^')
    hold on; plot(-5:5,cumsum(ydelta),'k','LineWidth',2)
    xlabel('Input Data'); ylabel('Output Data');
    legend('Measured data','Initial simulated data','Initial table output')

    Начальные табличные выходные значения и моделируемые данные не совпадают с результатами измерений.

  4. Выберите параметр для оценки.

    На вкладке Parameter Estimation нажмите Select Parameters. Редактирование: Предполагаемое диалоговое окно Parameters открывается. В панели Parameters Tuned for all Experiments нажмите Select parameters, чтобы открыть диалоговое окно Select Model Variables. Установите флажок рядом с ydelta и нажмите OK.

    Значения ydelta выбраны для оценки по умолчанию Редактирование: Предполагаемое диалоговое окно Parameters.

  5. Примените монотонно увеличивающееся ограничение на табличные выходные значения. Для получения дополнительной информации о таблице, смотрите Интерполяционную таблицу Вывод.

    В Редактировании: Предполагаемое диалоговое окно Parameters, кликните по стрелке рядом со значениями ydelta. В расширенном меню, набор Minimum значения ydelta к [-Inf,zeros(1,10)]. Таким образом, в то время как первое значение в ydelta может чем-либо, последующие значения, которые являются различием между смежными табличными выходными значениями, должны быть положительными.

  6. Выберите эксперимент EstimationData для оценки.

    На вкладке Parameter Estimation нажмите Select Experiment. По умолчанию EstimationData выбран для оценки. В противном случае установите флажок в соответствии со столбцом Estimation и нажмите OK.

  7. Оцените табличные значения с помощью настроек по умолчанию.

    На вкладке Parameter Estimation нажмите Estimate.

    График Parameter Trajectory показывает изменение в значениях параметров в каждой итерации.

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

    Предполагаемые параметры сохранены в новой переменной, EstimatedParams, в области Results инструмента. Чтобы просмотреть предполагаемые параметры, щелкните правой кнопкой по EstimatedParams и выберите Open.

    Предполагаемые значения ydelta(2:end) положительны. Таким образом вывод таблицы, которая является совокупной суммой значений, сохраненных в ydelta, монотонно увеличивается.

Подтвердите результаты оценки

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

  • График невязок

  • Измеренные и моделируемые графики данных

  1. Создайте эксперимент, чтобы использовать для валидации и импортировать данные о вводе-выводе валидации.

    На вкладке Parameter Estimation нажмите New Experiment. Введите [time2,ydata2] в Outputs и [time2,xdata2] в Inputs диалогового окна Edit Experiment. Назовите эксперимент ValidationData путем щелчка правой кнопкой по имени эксперимента по умолчанию, Exp, в области Experiments инструмента, и выбора Rename. Для получения дополнительной информации смотрите, Импортируют Данные для Оценки Параметра.

  2. Выберите эксперимент для валидации.

    Нажмите Select Experiments на вкладке Parameter Estimation. Эксперимент ValidationData выбран для оценки по умолчанию. Очистите Estimation и выберите поле для Validation.

  3. Выберите результаты подтвердить.

    На вкладке Validation нажмите Select Results to Validate. Очистите Use current parameter values, выберите EstimatedParams и нажмите OK.

  4. Выберите графики отобразиться во время валидации.

    Инструмент Parameter Estimation отображает график эксперимента после валидации по умолчанию. Добавьте график невязок путем выбора соответствующего поля на вкладке Validation.

    Нажмите Validate.

  5. Исследуйте графики.

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

    2. Чтобы просмотреть график невязок, кликните по вкладке Residual plot: ValidationData.

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

    3. Постройте и исследуйте данные о валидации, моделируемые данные и оцененные табличные значения.

      sim('lookup_increasing')
      figure(2); plot(xdata2,ydata2,'m*',xout,yout,'b^')
      hold on; plot(-5:5,cumsum(ydelta),'k','LineWidth', 2)
      xlabel('Input Data'); ylabel('Output Data');
      legend('Validation data','Simulated data','Table output values');

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

Похожие темы