Ограничения равенства
Система координат 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 | Сохраните описание объекта оптимизации |
eqnproblem
| EquationProblem
| infeasibility
| optimconstr
| optimeq
| OptimizationConstraint
| OptimizationExpression
| OptimizationInequality
| OptimizationProblem
| OptimizationVariable
| show
| write