Этот пример показывает, как автоматически сгенерировать функцию MATLAB, чтобы решить Задачу оптимизации Проекта. Вы используете инструмент Response Optimization, чтобы задать задачу оптимизации для гидравлического цилиндра, разрабатывают и генерируют код MATLAB, чтобы решить эту задачу оптимизации.
"Оптимизация проекта, чтобы Достигнуть Пользовательской Цели Используя Response Optimization Tool" пример показывает, как использовать инструмент Response Optimization, чтобы оптимизировать цилиндрический проект. В этом примере мы загружаем предварительно сконфигурированный сеанс инструмента Response Optimization на основе того примера.
load sdoHydraulicCylinder_sdosession
Используйте следующую команду, чтобы открыть инструмент Response Optimization
sdotool(SDOSessionData)
Из Оптимизировать списка выберите Generate MATLAB Code.

Сгенерированный код добавляется к редактору MATLAB как несохраненная функция MATLAB.

Исследуйте сгенерированный код. Значительные фрагменты кода:
Specify Design Variables - Определение параметров модели оптимизировано.
Specify Design Requirements - Определение конструктивных требований.
Create Optimization Objective Function - Создание анонимной функции, которая вызывает подфункциональный sdoHydraulicCylinder_optFcn, который оценивает цилиндрический проект. sdo.optimize вызывает анонимную функцию в каждой итерации.
Evaluate custom parameter requirement functions - Оценивает пользовательское требование, MinimizeAC, который использует функцию sdoHydraulicCylinder_customObjective.
Optimize the Design - Оптимизация с помощью команды sdo.optimize.
Выберите Save из редактора MATLAB, чтобы сохранить сгенерированную функцию.
Запустите сгенерированную функцию.

Первый выходной аргумент, pOpt, содержит оптимизированные значения параметров, и второй выходной аргумент, optInfo, содержит информацию об оптимизации.
Вы можете:
Измените сгенерированную функцию sdo_sdoHydraulicCylinder, чтобы включать или исключить новые конструктивные требования или изменить опции оптимизации.
Вызовите сгенерированную функцию sdo_sdoHydraulicCylinder с различным набором параметров, чтобы оптимизировать.
Для получения дополнительной информации о том, как записать функцию цели/ограничения, чтобы использовать с командой sdo.optimize, введите help sdoExampleCostFunction в подсказке команды MATLAB.
Закройте модель