exponenta event banner

infeasibility

Нарушение ограничения в точке

Описание

Использовать infeasibility чтобы найти числовое значение нарушения ограничения в точке.

пример

infeas = infeasibility(constr,pt) возвращает величину нарушения ограничения constr в точке pt.

Примеры

свернуть все

Проверьте, удовлетворяет ли точка ограничению.

Настройте переменные оптимизации и два ограничения.

x = optimvar('x');
y = optimvar('y');
cons = x + y <= 2;
cons2 = x + y/4 <= 1;

Проверка наличия точки x = 0, y = 4 удовлетворяет ограничению с именем cons. Точка возможна, когда ее несходимость равна нулю.

pt.x = 0;
pt.y = 4;
infeas = infeasibility(cons,pt)
infeas = 2

Точка невыполнима в отношении этого ограничения.

Проверьте выполнимость по отношению к другому ограничению.

infeas = infeasibility(cons2,pt)
infeas = 0

Точка выполнима в отношении этого ограничения.

Проверьте, удовлетворяет ли точка ограничению, имеющему несколько условий.

Настройте переменную оптимизации и вектор ограничений.

x = optimvar('x',3,2);
cons = sum(x,2) <= [1;3;2];

Проверка наличия точки pt.x = [1,-1;2,3;3,-1] удовлетворяет этим ограничениям.

pt.x = [1,-1;2,3;3,-1];
infeas = infeasibility(cons,pt)
infeas = 3×1

     0
     2
     0

Точка невыполнима по отношению ко второму ограничению.

Входные аргументы

свернуть все

Ограничение оптимизации, указанное как OptimizationEquality объект, OptimizationInequality объект, или OptimizationConstraint объект. constr может представлять одно ограничение или массив ограничений.

Пример: constr = x + y <= 1 является одним ограничением, когда x и y являются скалярными переменными.

Пример: constr = sum(x) == 1 является массивом ограничений, когда x - массив из двух или более измерений.

Точка для вычисления, заданная как структура с именами полей, соответствующими именам переменных оптимизации, для переменных оптимизации в ограничении. Размер каждого поля в pt должен соответствовать размеру соответствующей переменной оптимизации.

Пример: pt.x = 5*eye(3)

Типы данных: struct

Выходные аргументы

свернуть все

Несходимость ограничения, возвращаемого в виде вещественного массива. Каждая нулевая запись представляет выполнимое ограничение, а каждая положительная запись представляет неосуществимое ограничение. Размер infeas совпадает с размером ограничения constr. Для примера нескалярного infeas, см. раздел Вычисление множественных нарушений ограничений.

Предупреждение

Проблемный подход не поддерживает комплексные значения в целевой функции, нелинейные равенства или нелинейные неравенства. Если вычисление функции имеет комплексное значение, даже в качестве промежуточного значения, конечный результат может быть неверным.

Представлен в R2017b