Отобразите объект оптимизации
show Исследовать основанного на проблеме Setupshow функция возвращает информацию об основанных на проблеме объектах в командной строке. Например, исследуйте различные этапы конструкции задач для оптимизации Функции Розенброка, ограниченной единичным диском (см., Решают Ограниченную Нелинейную задачу, Основанную на проблеме).
Создайте 2D переменную x оптимизации. Покажите переменную.
x = optimvar('x',2);
show(x) [ x(1) ]
[ x(2) ]
Создайте выражение для целевой функции. Покажите выражение.
obj = 100*(x(2) - x(1)^2)^2 + (1 - x(1))^2; show(obj)
((100 .* (x(2) - x(1).^2).^2) + (1 - x(1)).^2)
Создайте выражение для ограничения. Покажите ограничение.
cons = x(1)^2 + x(2)^2 <= 1; show(cons)
(x(1).^2 + x(2).^2) <= 1
Создайте задачу оптимизации, имеющую obj как целевая функция и cons как ограничение. Покажите задачу.
prob = optimproblem("Objective",obj,"Constraints",cons); show(prob)
OptimizationProblem :
Solve for:
x
minimize :
((100 .* (x(2) - x(1).^2).^2) + (1 - x(1)).^2)
subject to :
(x(1).^2 + x(2).^2) <= 1
Наконец, создайте начальную точку [0 0] и решите задачу, запускающуюся в начальной точке.
x0.x = [0 0]; [sol,fval,exitflag] = solve(prob,x0)
Solving problem using fmincon. Local minimum found that satisfies the constraints. Optimization completed because the objective function is non-decreasing in feasible directions, to within the value of the optimality tolerance, and constraints are satisfied to within the value of the constraint tolerance.
sol = struct with fields:
x: [2x1 double]
fval = 0.0457
exitflag =
OptimalSolution
Исследуйте точку решения.
sol.x
ans = 2×1
0.7864
0.6177
obj — Объект OptimizationOptimizationProblem возразите | EquationProblem возразите | OptimizationExpression возразите | OptimizationVariable возразите | OptimizationConstraint возразите | OptimizationEquality возразите | OptimizationInequality объектОбъект Optimization, заданный как один из следующих типов.
OptimizationProblem — show(obj) отображает переменные для решения, целевой функции, ограничений и переменных границ.
EquationProblem — show(obj) отображает переменные для решения, уравнения для решения и переменные границы.
OptimizationExpression — show(obj) отображает выражение оптимизации.
OptimizationVariable — show(obj) отображает переменные оптимизации. Это отображение не указывает на тип переменной или границы, это показывает только переменные размерности и имена индексов (если таковые имеются).
OptimizationConstraint — show(obj) отображает ограничительное выражение.
OptimizationEquality — show(obj) отображает выражение равенства.
OptimizationInequality — show(obj) отображает выражение неравенства.
Пример: show(obj)
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.