show

Отобразите информацию об объекте оптимизации

Синтаксис

Описание

Использовать show отображение информации об объекте оптимизации.

пример

show(obj) отображает информацию о obj в командной строке. Если отображение объекта большое, рассмотрите использование write вместо этого сохранить информацию в текстовом файле.

Примеры

свернуть все

Исследуйте различные этапы конструкции задачи для оптимизации функции Розенброка, ограниченной единичным диском (см. Решение ограниченной нелинейной задачи, основанной на проблеме).

Создайте 2-D переменную оптимизации 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

Входные параметры

свернуть все

Объект оптимизации, заданный как один из следующих:

  • OptimizationProblem объект - show(obj) отображает переменные для решения, целевой функции, ограничений и переменных границ.

  • EquationProblem объект - show(obj) отображает переменные для решения, уравнения для решения и переменные границы.

  • OptimizationExpression объект - show(obj) отображает выражение оптимизации.

  • OptimizationVariable объект - show(obj) отображает переменные оптимизации. Это отображение не указывает типы или границы переменных; в нем показаны только размерности переменных и имена индексов (при наличии).

  • OptimizationConstraint объект - show(obj) отображает выражение ограничения.

  • OptimizationEquality объект - show(obj) отображает выражение равенства.

  • OptimizationInequality объект - show(obj) отображает выражение неравенства.

Введенный в R2019b