Равенства и ограничения равенства
OptimizationEquality
объект содержит равенства и ограничения равенства в терминах OptimizationVariable
объекты или OptimizationExpression
объекты. Каждое равенство использует оператор сравнения ==
.
Отдельный оператор может представлять массив равенств. Например, можно выразить равенства что каждая строка матричной переменной x
суммы одной в этом отдельном операторе:
constrsum = sum(x,2) == 1
Используйте OptimizationEquality
объекты как ограничения в OptimizationProblem
, или как уравнения в EquationProblem
.
Создайте равенства с помощью выражений оптимизации с оператором сравнения ==
.
Включайте равенства в Constraints
свойство задачи оптимизации или Equations
свойство проблемы уравнения, при помощи записи через точку.
prob = optimproblem; x = optimvar('x',4,6); SumToOne = sum(x,2) == 1; prob.Constraints.SumToOne = SumToOne; % Or for an equation problem: eqprob = eqnproblem; eqprob.Equations.SumToOne = SumToOne;
Можно также создать пустое равенство оптимизации при помощи optimeq
или optimconstr
. Как правило, вы затем устанавливаете равенства в цикле. Для примера смотрите, Создают Равенства в Цикле. Однако для самой эффективной формулировки задачи, постарайтесь не устанавливать равенства в циклах. Смотрите Создают Эффективные Задачи оптимизации.
infeasibility | Нарушение ограничений в точке |
show | Отобразите информацию об объекте оптимизации |
write | Сохраните описание объекта оптимизации |
EquationProblem
| OptimizationConstraint
| OptimizationExpression
| OptimizationInequality
| OptimizationProblem
| OptimizationVariable
| eqnproblem
| infeasibility
| optimconstr
| optimeq
| show
| write