show

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

Синтаксис

Описание

пример

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

Примеры

свернуть все

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

Создайте 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

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

свернуть все

Объект Optimization в виде одного из следующего:

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

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

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

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

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

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

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

Введенный в R2019b