Main Content

infeasibility

Vulneración de restricciones en un punto

Descripción

Utilice infeasibility para encontrar el valor numérico de una vulneración de restricción en un punto.

ejemplo

infeas = infeasibility(constr,pt) devuelve la cantidad de vulneración de la restricción constr en el punto pt.

Ejemplos

contraer todo

Compruebe si un punto satisface una restricción.

Cree variables de optimización y dos restricciones.

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

Compruebe si el punto x = 0, y = 4 satisface la restricción llamada cons. Un punto es factible cuando su infactibilidad es cero.

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

El punto no es factible con respecto a esta restricción.

Compruebe la factibilidad con respecto a la otra restricción.

infeas = infeasibility(cons2,pt)
infeas = 0

Y el punto es factible con respecto a esta restricción.

Compruebe si un punto satisface una restricción que tiene múltiples condiciones.

Cree una variable de optimización y un vector de restricciones.

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

Compruebe si el punto pt.x = [1,-1;2,3;3,-1] satisface estas restricciones.

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

     0
     2
     0

El punto no es factible con respecto a la segunda restricción.

Argumentos de entrada

contraer todo

Restricción de optimización, especificada como un objeto OptimizationEquality, objeto OptimizationInequality u objeto OptimizationConstraint. constr puede representar una sola restricción o un arreglo de restricciones.

Ejemplo: constr = x + y <= 1 es una sola restricción cuando x e y son variables escalares.

Ejemplo: constr = sum(x) == 1 es un arreglo de restricciones cuando x es un conjunto de dos o más dimensiones.

Punto que se desea evaluar, especificado como una estructura con nombres de campo que coinciden con los nombres de las variables de optimización, para variables de optimización en la restricción. El tamaño de cada campo de pt debe coincidir con el tamaño de la variable de optimización correspondiente.

Ejemplo: pt.x = 5*eye(3)

Tipos de datos: struct

Argumentos de salida

contraer todo

Infactibilidad de la restricción, devuelta como un arreglo real. Cada entrada cero representa una restricción factible y cada entrada positiva representa una restricción infactible. El tamaño de infeas es el mismo que el tamaño de la restricción constr. Para ver un ejemplo de infeas no escalar, consulte Calcular múltiples vulneraciones de restricciones.

Advertencia

El enfoque basado en problemas no es compatible con valores complejos en una función objetivo, igualdades no lineales o desigualdades no lineales. Si el cálculo de una función tiene un valor complejo, incluso como valor intermedio, el resultado final puede ser incorrecto.

Historial de versiones

Introducido en R2017b