В этом разделе показано, как ускорить анализ чувствительности с помощью быстрого перезапуска Simulink ®. Функцию быстрого перезапуска можно использовать для ускорения анализа чувствительности настраиваемых параметров модели.
Быстрый перезапуск позволяет выполнять итеративное моделирование без компиляции модели или прекращения моделирования каждый раз. Быстрый перезапуск позволяет скомпилировать модель только один раз. Затем можно настроить параметры и снова смоделировать модель, не тратя время на компиляцию. Быстрый перезапуск связывает несколько этапов моделирования с одной стадией компиляции для повышения эффективности итеративного моделирования. Вы видите ускорение задач оптимизации конструкции с помощью быстрого перезапуска в моделях с длительной стадией компиляции. См. раздел Как быстрый перезапуск улучшает итерационное моделирование.
При включении быстрого перезапуска можно изменять только настраиваемые свойства модели во время моделирования. Дополнительные сведения об ограничениях см. в разделе Ограничения.
Анализ чувствительности можно выполнить с помощью быстрого перезапуска в анализаторе чувствительности или в командной строке.
Чтобы оценить модель с помощью быстрого перезапуска в анализаторе чувствительности:
Откройте модель Simulink.
Включить быстрый перезапуск в модели.
Щелкните Быстрый перезапуск (Fast Restart
) в окне модели.
Откройте анализатор чувствительности для модели.
Укажите набор параметров, создайте образцы параметров и укажите требования для анализа чувствительности. При необходимости задайте параметры оценки. Например, см. разделы Исследование конструкции с использованием выборки параметров (GUI) и Определение ключевых параметров для оценки (код).
Щелкните Вычислить (Evaluate), чтобы оценить модель в режиме быстрого перезапуска. Расчетные требования оцениваются для каждой комбинации значений параметров в наборе параметров.
Отключить быстрый перезапуск.
В окне модели щелкните Быстрый перезапуск (Fast Restart).![]()
Эта функция не поддерживается в Simulink Online™.
Анализ чувствительности можно использовать для оценки того, какие параметры модели в наибольшей степени влияют на функцию затрат. Эти параметры можно использовать во время оценки параметров или оптимизации отклика. Предположим, что необходимо использовать анализ чувствительности, чтобы уменьшить количество параметров, которые необходимо оценить для соответствия модели.
Для оценки модели в режиме быстрого перезапуска с использованием функции затрат, направленной на оценку параметров:
Откройте модель Simulink.
Укажите значения параметров модели, params, для оценки и формирования выборок параметров, params_samples. Пример см. в разделе Определение ключевых параметров для оценки (код).
Создание объекта эксперимента, Exp.
Exp = sdo.Experiment('model');Сохранить измеренные данные ввода-вывода в Exp. Пример см. в разделе Определение ключевых параметров для оценки (код).
Создайте симулятор модели из эксперимента.
Simulator = createSimulator(Exp);
Simulator является sdo.SimulationTest объект.
Примечание
Перед конфигурированием модели для быстрого перезапуска необходимо создать сценарий моделирования с информацией для регистрации. После компиляции модели для быстрого перезапуска изменить данные регистрации невозможно.
Настройте модель и симулятор для быстрого перезапуска.
Simulator = fastRestart(Simulator,'on');Создайте функцию затрат, myCostfcn, и пройти Simulator в функцию затрат в качестве входных данных. Дополнительные сведения см. в разделе Запись функции затрат. В функции затрат симулятор, сконфигурированный для быстрого перезапуска, используется для обновления параметров модели, моделирования модели и регистрации сигналов.
Использовать анонимную функцию с одним аргументом, вызывающим myCostfcn.
evalfcn = @(param) myCostfcn(param,Simulator,Exp);
Оцените модель.
[param_opt,opt_info] = sdo.evaluate(evalfcn,param,param_samples);
Восстановите параметры быстрого перезапуска симулятора.
Simulator = fastRestart(Simulator,'off');Рабочий процесс быстрого перезапуска аналогичен для анализа чувствительности, который определяет конструктивные переменные с помощью функции затрат, направленной на оптимизацию отклика. См. раздел Использование режима быстрого перезапуска во время оптимизации ответа.
Вы видите ускорение задач оптимизации конструкции с помощью быстрого перезапуска в моделях с длительной стадией компиляции. Если фаза компиляции модели недолго, вы не видите существенного изменения в скорости оценки.
fastRestart | sdo.evaluate | sdo.SimulationTest