Равенства и ограничения равенства
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