Создайте структуру задачи оптимизации
problem = createOptimProblem('solverName')
problem = createOptimProblem('solverName','ParameterName',ParameterValue,...)
problem = createOptimProblem('solverName') создает пустую структуру задачи оптимизации для solverName решатель.
problem = createOptimProblem('solverName','ParameterName',ParameterValue,...) принимает один или несколько разделенное от запятой название параметра / пары значения. Задайте ParameterName в одинарных кавычках.
| Имя решателя. Для |
| Матрица для линейных ограничений равенства. Ограничения имеют форму:
|
| Матрица для линейных ограничений неравенства. Ограничения имеют форму:
|
| Вектор для линейных ограничений равенства. Ограничения имеют форму:
|
| Вектор для линейных ограничений неравенства. Ограничения имеют форму:
|
| Вектор нижних границ.
|
| Указатель на функцию к нелинейной ограничительной функции. Ограничительная функция должна принять векторный Если Для получения дополнительной информации смотрите Ограничения Записи. |
| Указатель на функцию к целевой функции. Для всех решателей кроме Для получения дополнительной информации смотрите, Вычисляют Целевые функции. |
| Опции оптимизации. Создайте опции с |
| Вектор верхних границ.
|
| Вектор, потенциальная начальная точка для оптимизации. Дает размерность проблемы.
|
| Вектор точек данных для |
| Вектор точек данных для |
| Структура задачи оптимизации. |
Создайте структуру задачи с помощью функции Розенброка в качестве цели (см. Гибридную Схему в Генетическом алгоритме), interior-point алгоритм для fmincon, и границы с абсолютным значением 2:
anonrosen = @(x)(100*(x(2) - x(1)^2)^2 + (1-x(1))^2);
opts = optimoptions(@fmincon,'Algorithm','interior-point');
problem = createOptimProblem('fmincon','x0',randn(2,1),...
'objective',anonrosen,'lb',[-2;-2],'ub',[2;2],...
'options',opts);Можно создать структуру задачи путем экспорта из приложения Оптимизации (optimtool), как описано в Экспорте из приложения Оптимизации.