В этом примере показано, как автоматически сгенерировать функцию MATLAB, чтобы решить Задачу оптимизации Проекта. Вы используете Response Optimizer, чтобы задать задачу оптимизации для гидравлического цилиндра, проектируют и генерируют код MATLAB, чтобы решить эту задачу оптимизации.
Оптимизация Проекта, чтобы Достигнуть Пользовательской Цели (графический интерфейс пользователя), который показывает пример, как использовать Response Optimizer, чтобы оптимизировать цилиндрический проект. В этом примере мы загружаем предварительно сконфигурированный сеанс Response Optimizer на основе того примера.
load sdoHydraulicCylinder_sdosession
Используйте следующую команду, чтобы открыть Response Optimizer
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.
Закройте модель