Académique Documents
Professionnel Documents
Culture Documents
min + + ⋯+
sujeto a:
+ + ⋯+ =
+ + ⋯+ =
……………………………………
+ + ⋯+ =
≥ 0, ≥ 0, … , ≥ 0.
⋯
A= ⋮ ⋱ ⋮
⋯
= ⋮ , = ⋮ , = ,
⋮
min
: =
0
min
:
0
y la forma canónica de un problema de maximización es la siguiente:
max
:
0
max ( ) = −min − ( ) .
Cuando una variable de decisión no esté restringida a ser no negativa, se sustituye dicha
variable por la diferencia de dos variables no negativas. Si es la variable no restringida,
se puede expresar como
= − 0, 0 .
min
: = (P)
0
= | = , 0 .
Una solución óptima es una solución factible que minimiza la función objetivo. El
objetivo de un problema de programación lineal es determinar una solución óptima. Para
un problema (P), la solución óptima puede no ser única, puede no existir o incluso puede
que no exista ninguna solución factible. Si el problema es factible ( ) pero no existe
solución óptima, se dice que el problema tiene solución no acotada.
Una propiedad fundamental del conjunto S es la de ser convexo.
Conjuntos convexos
.
= y = 1
es decir,
( )=
, … , ∈ , , … , 0 tales que = ∑ y ∑ =1 .
min
: =
0
= | = , 0
se considera la matriz A de coeficientes de las restricciones (A matriz m×n con rg(A)=m)
como un conjunto de n vectores del espacio vectorial :
= , ,…,
donde
= ⋮ ∀ j∈ 1, … , .
Por ser rg(A)=m, existe alguna submatriz cuadrada B, matriz m×m, no singular. Dicha
submatriz cuadrada se denomina base, por identificar un conjunto de m vectores
linealmente independientes del espacio vectorial .
Se denota por , la selección de una base B formada por m columnas de la matriz A.
Se determina así una partición de la matriz A:
= ,
siendo N una matriz m×(n−m).
Puesto que a cada una de las n columnas de la matriz A se asocia una componente del
vector , cualquier subconjunto de columnas de la matriz A determina un
subconjunto de componentes de x. Por consiguiente, al seleccionar una base , la
descomposición = , determina una partición del vector , de la forma:
= .
−
= = .
0
Si, además, se verifica que 0, entonces x es una solución factible que se denomina
solución básica factible.
(Las soluciones básicas factibles de un problema de programación lineal son los puntos
extremos del conjunto convexo S de sus soluciones factibles).
{ }
Sea S = x ∈ R n Ax = b, x ≥ 0 , donde A es una matriz m×n con rg(A)=m y b es
{ }
Lema 4. Sea S = x ∈ R n Ax = b, x ≥ 0 , donde A es una matriz m×n con rg(A)=m y b es
{ }
Sea S = x ∈ R n Ax = b, x ≥ 0 , donde A es una matriz m×n con rg(A)=m<n y b
una matriz m×n con rg(A)=m y b es un vector de dimensión m. Sean x1,…,xk, los puntos
extremos de S y sean d1,…,dl, las direcciones extremas de S. x ∈ S si, y sólo si, x puede
expresarse de la siguiente forma
= + μ
∑ =1
0 = 1, … ,
μ 0 = 1, … , .
Teorema 8. Sea x una solución básica factible de (P) asociada a una base B.
A = (a1 , , a n ) y c j := c j − c Bt B −1a j ∀j ∈ {1,, n}. Si c j ≥ 0 ∀j ∈ {1, , n}, entonces
x es una solución óptima de (P).
Teorema 10. Sea x una solución básica factible de (P) asociada a una base B.
A = (a1 ,, a n ), B = (a1 , , a m ), Y j = B −1 a j y c j := c j − c Bt B −1a j ∀j ∈ {1,, n}. Si
existe k ∈ {m + 1,, n} , = + , tal que ̅ < 0 y alguna componente de es
positiva, entonces el vector
xl k xl x −Y
x =x+ d , donde = min i i ∈ {1,, m} con y ik > 0 y d k = k ,
ylk ylk y ik et
es una solución básica factible tal que c t x ≤ c t x . Además, c t x < c t x si, y sólo si, xl > 0.
Teorema (Teorema de Representación)
{
Sea S un poliedro no vacío en Rn, de la forma S = x ∈ R n Ax = b, x ≥ 0 , donde A es }
una matriz m×n con rg(A)=m y b es un vector de dimensión m. Sean x1,…,xk, los puntos
extremos de S y sean d1,…,dl, las direcciones extremas de S. x ∈ S si, y sólo si, x puede
expresarse de la siguiente forma
= + μ
∑ =1 [1]
0 = 1, … , [2]
μ 0 = 1, … , [3]
Demostración
Se considera el siguiente conjunto
= ∑ +∑ μ ∑ = 1, 0 , μ 0
[4]
+ μ
con μ satisfaciendo [1], [2] y[3]. Puesto que μ puede ser arbitrariamente grande,
0 para j=1,…,l. Considerando μ = 0 para todo j, = 1 y = 0 para r≠i, se
obtiene que , para i=1,…,k. Puesto que , se tiene para todo i.
Resumiendo, existe un vector no nulo p tal que
= 1, … , [5]
0 = 1, … , [6]
̅ = max [7]
xB
Por ser un punto extremo x = , x B = B −1b ≥ 0 y x N = 0 , siendo A=(B, N). Por
x
N
ser z∈S, Az = b, z ≥ 0 . Por tanto + = y = − , donde
se ha descompuesto en ( , ). De [5], se obtiene − ̅ 0, y descomponiendo
en ( , ) se deduce
0< − ̅
= ( − )+ − [8]
=( − )
Puesto que ≥ 0, de [8] se sigue que existe una componente j ≥ m+1, tal que >0 y
− > 0. En primer lugar se demuestra que = no puede tener todas
sus componentes menores o iguales que 0. Supongamos contrariamente que ≤ 0. Se
considera el vector
− y j
dj =
e
j
= min >0 =
x′ = − + =
b − λ y j
x′ = ( , )
λe
j
= − + = ̅ + − ̅
(*) Si = 0, al sustituir en B la columna por , se tiene una nueva base B´, por ser
≠ 0, asociada al mismo punto extremo ̅ . Como las distintas bases asociadas a un
mismo punto extremo pueden ordenarse convenientemente para evitar ciclos, después de
los cambios de base necesarios se llega a una base para la que el correspondiente > 0,
y por tanto λ > 0.
ALGORITMO (PRIMAL) DEL SIMPLEX (Problema de minimización)
Paso 1:
−1
Determinar una base inicial B tal que B b≥0, y su matriz no básica asociada N,
=( ,…, ,…, ).
Ir al paso 2.
Paso 2:
Poner x B = B −1b y x N = 0. Calcular
y N j = B −1 a N j y c N j = c N j − c Bt y N j ∀j ∈ {1, , n − m}.
xB − y Nr
+ λ
∀λ ≥ 0. )
x N er
En otro caso, ir al paso 5.
Determinar
x Bl x B
= min i i ∈ {1, , m} con y iN r > 0.
y lN r y iN r
Paso 1:
−1
Determinar una base inicial B tal que B b≥0, y su matriz no básica asociada N,
=( ,…, ,…, ).
Ir al paso 2.
Paso 2:
Poner x B = B −1b y x N = 0. Calcular
y N j = B −1 a N j y c N j = c N j − c Bt y N j ∀j ∈ {1, , n − m}.
xB − y Nr
+ λ
∀λ ≥ 0. )
x N er
En otro caso, ir al paso 5.
x Bl x B
= min i i ∈ {1, , m} con y iN r > 0.
y lN r y iN r
x1 … xl … xm x m+1 … xk … xn
x1 1 … 0 … 0 y1, m +1 … y1,k … y1,n x1
xl 0 … 1 … 0 y l , m +1 … y l ,k … y l ,n xl →
xm 0 … 0 … 1 y m , m +1 … y m,k … y m,n xm
0 … 0 … 0 c m+1 … ck … cn z − c Bt x B
↑
x1 … xl … xm x m +1 … xk … xn
x1 1 … y1′,l … 0 y1′,m +1 … 0 … y1′,n x1′
xk 0 … y l′,l … 0 y l′,m +1 … 1 … y l′,n x k′
xm 0 … y m′ ,l … 1 y m′ , m +1 … 0 … y ′m ,n x m′
0 … cl′ … 0 c m′ +1 … 0 … c n′ z − c Bt ′ x B′ ′
PIVOTAJE
x1 … xl … xm x m+1 … xk … xn
x1 1 … y1,k … 0 y l , m +1 … 0 … y l ,n xl
− y1, m +1 − y1,k y1, n − y1, k xl − y1,k
y l ,k yl ,k y l ,k y l ,k
xk 0 … 1 … 0 y l ,m +1 … 1 … y l ,n xl
y l ,k y l ,k y l ,k y l ,k
xm 0 … y m,k … 1 y l , m +1 … 0 … y l ,n xl
− y m , m +1 − y m , k y m,n − y m,k x m − y m ,k
yl ,k y l ,k y l ,k y l ,k
0 … 1 … 0 y l ,m +1 … 0 … y l ,n xl
− ck c m +1 − c k cn − ck z − c Bt x B − c k
y l ,k yl ,k y l ,k y l ,k
El problema dual del problema (primal):
n
maximizar cj =1
j xj
n
sujeto a a j =1
ij x j ≤ bi (i = 1,, m) (1)
xj ≥ 0 ( j = 1,, n)
m
minimizar b y
i =1
i i
m
sujeto a a
i =1
ij yi ≥ c j ( j = 1, , n) (2)
yi ≥ 0 (i = 1, , m).
Se comprueba fácilmente que el dual del problema dual es el problema primal. Por tanto,
los problemas (1) y (2) identifican un par de problemas duales en forma canónica.
Relaciones de dualidad:
(i) Cada solución factible del problema primal (1) proporciona una cota inferior del valor
óptimo de la función objetivo del problema dual (2), y cada solución factible del problema
dual (2) proporciona una cota superior del valor óptimo de la función objetivo del
problema primal (1).
(ii) Si los dos problemas (1) y (2) son factibles, ambos problemas tienen solución óptima.
(iii) Si uno de los dos problemas es factible pero no acotado, el otro problema es
infactible.
(iv) Ambos problemas pueden ser infactibles.
Teorema de dualidad:
Si el problema primal (1) tiene solución óptima ( x1* , x 2* , , x n* ) , entonces el problema
dual (2) tiene solución óptima ( y1* , y 2* , , y m* ) tal que
n m
c j =1
j x j = bi y i .
*
i =1
*
Teorema de holgura complementaria:
Sea ( x1* , x 2* , , x n* ) una solución factible de (1) y sea ( y1* , y 2* , , y m* ) una solución
factible de (2). Son condiciones necesarias y suficientes para la optimalidad simultánea
de ( x1* , x 2* , , x n* ) e ( y1* , y 2* , , y m* ) las siguientes:
a
i =1
ij y i* = c j o x *j = 0 para cada j = 1, , n y
a
j =1
ij x *j = bi o y i* = 0 para cada i = 1, , m.
Teorema: Una solución factible ( x1* , x 2* , , x n* ) de (1) es óptima si, y sólo si, existen
números y1* , y 2* , , y m* tales que
a
i =1
ij y i* = c j cuando x *j > 0
n
y i* = 0 cuando aj =1
ij x *j < bi
y
m
a
i =1
ij y i* ≥ c j para todo j = 1, , n
Observación: Cada uno de los dos problemas siguientes es dual respecto del otro.
c
m
max
j =1
j xj min b y
i =1
i i
n m
sujeto a a
j =1
ij x j ≤ bi (i ∈ E ) sujeto a a ij yi ≥ c j ( j ∈ G)
i =1
n m
a
j =1
ij x j = bi (i ∈ F ) a
i =1
ij yi = c j ( j ∈ {1,, n}, j ∉ G )
xj ≥ 0 ( j ∈ G ⊆ {1, , n}) yi ≥ 0 (i ∈ E ).
ALGORITMO (DUAL) DEL SIMPLEX (Problema de minimización)
Paso 1:
Determinar una base inicial B tal que c t − c Bt B −1 A ≥ 0 , y su matriz no básica asociada
N. Ir al paso 2.
Paso 2:
Calcular x B = B −1b y establecer x N = 0. Calcular
Paso 5 :
̅ = ̅ ⁄ ∈ 1. . . con ̅ < 0
ck c j
− = min − j ∈ {1, , n} con y lj < 0.
y lk y lj
Paso 1:
Determinar una base inicial B tal que c t − c Bt B −1 A ≤ 0 , y su matriz no básica asociada
N. Ir al paso 2.
Paso 2:
Calcular x B = B −1b y establecer x N = 0. Calcular
Paso 5 :
̅ = ̅ ⁄ ∈ 1. . . con ̅ < 0
ck c j
= min j ∈ {1, , n} con y lj < 0.
y lk y lj
n n
min c ij xij n n
n
i =1 j =1
max ui + v j
x
i =1 j =1
s.a. ij =1 i = 1,..., n
j =1 s.a.
n cij − u i − v j ≥ 0 i = 1,..., n
x
i =1
ij =1 j = 1,..., n
j = 1,..., n
xij ≥ 0 i = 1,..., n j = 1,..., n
Inicialización: Comenzar con una solución factible dual (u, v). Sea
{
E ′ = (i, j ) ∈ E cij′ = 0 . }
cij′ := c ij − u i − v j
{ }
Paso 1. Sea E ′ = (i, j ) ∈ E cij′ = 0 . M es un emparejamiento en G´. Continuar con el
algoritmo de emparejamiento de máximo cardinal y hallar un emparejamiento óptimo
M*.
Si |M*|=n, parar. M* es solución óptima del problema.
En otro caso, guardar M:=M* y el bosque alternante al finalizar el algoritmo. Ir al
paso 2.
Paso 2. Efectuar el siguiente cambio dual. Sea δ = min{cij′ / i ∈V1P , j ∈V2≈ } . Hacer:
uˆ i = u i + δ para i ∈ V1 p
vˆ j = v j − δ para j ∈ V2I
Volver al paso 1.
Se considera un grafo bipartito completo G=(V1,V2; E). Se formulan a
continuación el problema de asignación de máximo coste y su problema dual:
n n
max c ij xij n n
n
i =1 j =1
min u + v i j
x
i =1 j =1
s.a. ij =1 i = 1,..., n
j =1 s.a.
n u i + v j − cij ≥ 0 i = 1,..., n
x
i =1
ij =1 j = 1,..., n
j = 1,..., n
xij ≥ 0 i = 1,..., n j = 1,..., n
Inicialización: Comenzar con una solución factible dual (u, v). Sea
{
E ′ = (i, j ) ∈ E cij′ = 0 , siendo }
cij′ := u i + v j − cij .
{ }
Paso 1. Sea E ′ = (i, j ) ∈ E cij′ = 0 . M es un emparejamiento en G´. Continuar con el
algoritmo de emparejamiento de máximo cardinal y hallar un emparejamiento óptimo
M*.
Si |M*|=n, parar. M* es solución óptima del problema.
Paso 2. Efectuar el siguiente cambio dual. Sea δ = min{cij′ / i ∈V1P , j ∈V2≈ } . Hacer:
uˆ i = u i − δ para i ∈V1 p
vˆ j = v j + δ para j ∈V2I
Volver al paso 1.
Definición. Sea A una matriz m×n con elementos enteros. Se dice que la matriz A es
totalmente unimodular si, y sólo si, cada submatriz cuadrada de A tiene determinante 0,
1, o −1.
Teorema
Sea A una matriz entera. Toda solución básica factible definida por las restricciones:
≤ , ≥ 0 , es entera para cualquier vector entero b si, y sólo si, A es totalmente
unimodular.
Teorema
La matriz de incidencia vértices−arcos de un grafo dirigido (sin bucles) es
totalmente unimodular.
a
i∈M 1
ij − a
i∈M 2
ij = 0.
Definición: Dado un grafo simple G=(V,E), un emparejamiento es un subconjunto M de
aristas (M⊆E) con la propiedad de que dos aristas cualesquiera de M no son adyacentes.
Dado un emparejamiento M, se dice que M satura un vértice v (o que v es
M−saturado) si alguna arista de M es incidente con v. En caso contrario, se dice que v es
M−expuesto. Se dice que un emparejamiento es perfecto si satura todos los vértices.
x
e∈δ ( v )
e ≤ 1 para cada v ∈ V
xe ≥ 0 para cada e ∈ E
δ(v) denota el conjunto de aristas incidentes en el vértice v.
El dual del problema anterior es
min π
v∈V
v
π
v:e∈δ ( v )
v ≥ ce para cada e ∈ E
π v ≥ 0 para cada v ∈ V
Inicialización: Sea M un emparejamiento arbitrario. Todos los vértices están sin etiquetar
y sin examinar.
Paso 3: Si existe algún vértice etiquetado sin examinar, ir al paso 2; en otro caso, ir al
paso 1.
3 5 6 7 6
11 9 7 8 13
c
ij ( i , j ) 5 5 8 7 9
7 8 10 11 11
6 11 13 9 7
Problema de minimización
u1 3, u2 7, u3 5, u4 7, u5 6,
Solución factible dual inicial:
v1 0, v2 0, v3 0, v4 1, v5 1.
(I ,4)
0 2 3 3 2 ( P,1´) 0 2 3 3 2
4 2 0 0 5 4 2 0 0 5
c
ij ( i , j ) 0 0 3 1 3, 0 0 3 1 3
0 1 3 3 3 ( P, ) 0 1 3 3 3
0 5 7 2 0 0 5 7 2 0
u1 4, u2 7, u3 5, u4 8, u5 6,
Nueva solución factible dual:
v1 1, v2 0, v3 0, v4 1, v5 1.
( I , 4)( I , 4)
0 1 2 2 1 ( P,1´) 0 1 2 2 1
5 2 0 0 5 5 2 0 0 5
c
ij ( i , j ) 1 0 3 1 3 , ( P, 2´) 1 0 3 1 3
0 0 2 2 2 ( P, ) 0 0 2 2 2
1 5 7 2 0 1 5 7 2 0
Al añadir la arista 4 2´, después del cambio dual, se etiqueta el vértice 2´ con etiqueta
(I, 4) y a continuación se etiqueta el vértice 3 con etiqueta (P, 2´), concluyendo que el
emparejamiento actual es de cardinal máximo.M*= 4.
u1 5, u2 7, u3 6, u4 9, u5 6,
Nueva solución factible dual:
v1 2, v2 1, v3 0, v4 1, v5 1.
( I , 4)( I , 4) ( I , 3)
0 1 1 1 0 ( P,1´) 0 1 1 1 0
6 3 0 0 5 6 3 0 0 5
c
ij ( i , j ) 1 0 2 0 2 , ( P, 2´) 1 0 2 0 2
0 0 1 1 1 ( P, ) 0 0 1 1 1
2 6 7 2 0 2 6 7 2 0
Al añadir la arista 3 4´, después del cambio dual, se etiqueta el vértice 4´ con etiqueta
(I, 3) y, al ser este vértice no saturado, se identifica la cadena de aumento:
4 2´ 3 4´.
Solución óptima:
0 1 1 1 0 3 5 6 7 6
6 3 0 0 5 11 9 7 8 13
c
ij ( i , j ) 1 0 2 0 2 , c
ij ( i , j ) 5 5 8 7 9
0 0 1 1 1 7 8 10 11 11
2 6 7 2 0 6 11 13 9 7
n
min c j =1
j xj
n
sujeto a a
j =1
ij x j = bi i = 1, , m
xj ≥ 0 j = 1, , n
x j entero j ∈ J ⊆ {1, , n}
Se supone que el problema relajado del problema anterior tiene solución óptima.
Paso 0:
Sea P0 el problema original. Hacer L={P0}, z = ∞, e ir al paso 2.
Paso 1:
Si L=∅ y z = ∞, el problema original es no factible. PARAR
Si L=∅ y z < ∞, la solución óptima del problema original es x . PARAR.
Si L≠∅, ir al paso 2.
Paso 2 (Relajación):
Elegir Pr∈L, relajarlo y resolver el problema lineal resultante Pr′ . Si Pr′ es no factible,
hacer L=L−{Pr} e ir al paso 1; en otro caso, sea x r la solución óptima de Pr′ y z el
r
Paso 4:
Si x rj ∈ Z , ∀j ∈ J , ir al paso 6. En otro caso, ir al paso 5.
Paso 6:
Hacer x = x r , z = z r , L=L−{ Pr}, eliminando a la vez de L todos los problemas Pr con
z ≥ z , e ir al paso 1.
r
MÉTODO DE HIPERPLANOS DE CORTE EN
Sea
∗
/ , 0 ∈ 1, … ,
Siendo los elementos de la matriz A y las componentes del vector b números enteros.
Puesto que todas las variables deben ser enteras, se considera, un problema de
programación entera pura.
Sea
/ , 0
Definición:
∗
Dado un poliedro S y un punto extremo fraccional de S, se llama corte a una
desigualdad
∗
válida para todos los puntos enteros de S y violada por .
Dado un punto extremo fraccional ∗ de un poliedro S, el problema de determinar un
corte que separe a ∗ de los puntos enteros de S, se denomina problema de separación.
El algoritmo de hiperplanos de corte asume disponer de un procedimiento que resuelva
el problema de separación. Dicho algoritmo se describe a continuación:
COMENZAR
Resolver la relajación lineal. Sea ∗ una solución óptima.
Mientras ∗ no sea entero, HACER
Encontrar un corte que separe ∗ de las posibles
soluciones enteras;
resolver la relajación lineal con la nueva desigualdad adicional.
Sea ∗ una solución óptima.
FINALIZAR
Podría ocurrir que un problema lineal fuese infactible, en cuyo caso el problema entero
también lo sería.
Una forma de obtener cortes de tipo general, es mediante la siguiente derivación debida
a Chvátal:
Por tanto,
Es válida para todos los puntos enteros en S, y quizás no para todo S. Esta última
igualdad se denomina derivación de Chvátal mediante el vector u.
Teorema
Si ∗ es un punto extremo no entero de S, entonces existe un vector tal que su
derivación de Chvátal es un corte que separa ∗ de los puntos enteros de S.
A continuación se expone una metodología constructiva, debida a Gomory, para
encontrar tal vector, además de demostrar el teorema.
Supongamos que se ha resuelto la relajación lineal del problema entero. Sea B la base
óptima obtenida, y por tanto,
∗
∗
∗
0
Si se considera la desigualdad
se obtiene una derivación de Chvátal válida para todas las soluciones del problema
entero y violada por el punto ∗ , es decir, un corte; que se denomina corte de Gomory.
que se denomina forma fraccional del corte de Gomory, puesto que los coeficientes
que contiene coinciden con la parte fraccional de los coeficientes de la ecuación
generatriz.
Las variables de holgura de las dos formas alternativas de un corte de Gomory, son en
realidad la misma, y además sólo pueden tomar valores enteros, al ser las restantes
variables enteras. Esto garantiza que los nuevos problemas lineales ampliados son de
Programación Entera Pura.
Teorema: Sea X = {( z Br , z, x) ∈ Z + × Z +n1 × R+n2 / z Br + y
j∈N1
rj zj + y
j∈N 2
rj x j = br } ,
f (1 − f ) z y y
f f
jzj + j j + rj x j − rj x j ≥ f
fj≤f 1− f fj>f y rj > 0 1− f y rj < 0
j∈N1 j∈N1 j∈N 2 j∈N 2
es válido para X.
EJEMPLO
max z = 5 x1 + 2 x 2
s. a. : 2 x1 + 2 x 2 + x3 =9
3 x1 + x 2 + x 4 = 11
x1 ≥ 0, x 2 ≥ 0, x3 ≥ 0, x 4 ≥ 0,
x1 y x3 enteros
x1 x2 x3 x4
1 1 13
Considerando como ecuación generatriz del corte: x1 − x3 + x 4 = ,
4 2 4
se obtiene el corte:
1 1 1
x3 + x 4 ≥ .
12 2 4
Teorema de Farkas
Sea A una matriz m×n y c un vector de R . Exactamente uno de los dos sistemas
n
yt A = ct y≥0
m
II) e para algún y∈ R .
yt A = 0 e y≥0
m
II) para algún y∈ R no nulo.
Se considera el problema:
( )
( ) ( )0 = 1, … ,
siendo : → y : → para = 1, … , .
= | ( )0 = 1, … , .
Definición
Sea S el conjunto de soluciones factibles del problema (P) y sea ̅ ∈ . El cono de
direcciones factibles de S en ̅ , denotado por ( ̅ ), se define por:
( ̅) = ∈ | ≠ 0, ̅ + ∈ ∀ ∈ (0, ) ú >0 .
Teorema 2
Se considera el problema ( )| ∈ , siendo : → y S un subconjunto no
vacío de Rn. Sea : → diferenciable en ̅ ∈ . Si ̅ es un óptimo local, entonces
( ̅ ) ∩ ( ̅ ) = ∅, siendo
( ̅) = ∈ | ∇ ( ̅ ) <0
Lema 3
Dada una solución factible ̅ ∈ , sea = | ( ̅ ) = 0 el conjunto de índices para
las restricciones activas de ̅ . Se supone que gi , para cada ∈ , es diferenciable en ̅ , y
que gi , para cada , es continua en ̅ . El conjunto:
( ̅) = ∈ | ∇ ( ̅ ) < 0 ∈ .
verifica
( ̅ ) ( ̅ ) .
Teorema 4
Se considera el problema:
min ( )
. .: ( ) ≤ 0 = 1, … ,
∈
( ̅ ) ∩ ( ̅ ) = ∅.
Teorema (Condiciones necesarias de Fritz – John)
min ( )
. .: ( ) ≤ 0 = 1, … ,
∈
Sea x una solución factible y sea I={i / gi( x )=0}. Se supone que f es diferenciable en
x , que gi , para cada i∈I, es diferenciable en x , y que gi , para cada i∉I, es continua
en x . Si x resuelve localmente el problema (P), entonces existen y , para
i∈I, tales que
u 0 ∇f ( x ) + u i ∇g i ( x ) = 0
i∈I
u 0 ≥ 0, u i ≥ 0 para i ∈ I
(u 0 , (u i ) i∈I ) ≠ (0,0).
m
u 0 ∇f ( x ) + u i ∇ g i ( x ) = 0
i =1
ui g i ( x ) = 0 para i = 1, , m
u 0 ≥ 0, u i ≥ 0 para i = 1, , m
(u 0 , (u i ) i =1,,m ) ≠ (0,0 ).
min ( )
. .: ( ) ≤ 0 = 1, … ,
∈
Sea x una solución factible y sea I={i / gi( x )=0}. Se supone que f es diferenciable en
x , que gi , para cada i∈I, es diferenciable en x , y que gi , para cada i∉I, es continua en
x . Además, se supone que los vectores ∇g i (x ) , para i∈I, son linealmente
ui ≥ 0 para i ∈ I.
Si, además, cada gi , para i∉I, es también diferenciable en x , entonces las condiciones
de Kuhn– Tucker pueden escribirse en la siguiente forma equivalente,
m
∇f ( x ) + u i ∇g i ( x ) = 0
i =1
ui g i ( x ) = 0 para i = 1, , m
ui ≥ 0 para i = 1, , m.
NOTA: Todo punto x para el cual existan multiplicadores u tales que ( x , u ) satisface
las condiciones de Kuhn– Tucker se denomina un punto de Kuhn– Tucker.