Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Programación no
lineal
Modelos Estocásticos
2.1 Definición de PNL
Página 1 de 26
Introducción
En general, gran parte de los problemas de programación se abordan como problemas de
tipo lineal con función objetivo lineal y restricciones de tipo lineal. Sin embargo, no es
frecuente que sea así, al contrario, muchos economistas han descubierto que la regla
tiene a ser la no linealidad y no al contrario. Por ello es importante revisar en profundidad
los alcances de la programación no lineal, desde la formulación de problemas, las
interfaces gráficas y la resolución a través de la herramienta SOLVER complemento
ubicado en Excel. Finalmente, demostrar a través del uso de herramientas del cálculo
diferencial que los resultados son equivalentes a los problemas resueltos por las otras
herramientas como SOLVER.
En esta unidad se abordarán problemas que han sido modelados bajo el concepto de la no
linealidad en sus tres casos: Programación lineal sin restricciones, con restricciones de
igualdad y restricciones de desigualdad.
Son los modelos donde las variables de decisión se expresan como funciones no lineales
ya sea en la función objetivo o restricciones de un modelo de optimización. Esta
característica particular de los modelos no lineales permite abordar problemas donde
existen economías o deseconomías de escala o en general donde los supuestos asociados
a la proporcionalidad no se cumplen.
Ejemplo:
Sea f(x) = 2x + 3, en este caso cuando voy reemplazando valores en la función desde el
dominio x=1 hasta x=5 y vamos aumentando de uno en uno y el recorrido aumenta de
forma proporcional de dos en dos. Esto significa que como existe una proporcionalidad el
Página 2 de 26
En cambio, si la función objetivo es f(x) =x2, en este caso si el incremento del dominio es
uno a uno produce un cambio del recorrido que no mantendrá una proporcionalidad, ya
que el valor comienza a aumentar de una proporción no lineal. Más aún, si la f(x) =x2 es
derivada el resultado no será constante, por el contrario, dependerá del punto x donde se
encuentre en la curva, f´(x) = 2x.
probable que la pregunta de mayor nivel sea la que se relacione con aumentar la utilidad
en lugar de un interrogante que busque hallar la manera de disminuir los costos.
Una empresa que fabrica combustible (refinería) desea determinar dónde ubicar su planta
que recibirá el petróleo desde tres puertos ubicados geográficamente como se muestra en
la figura 1. El objetivo de la empresa es disminuir los costos de transporte por KM que son
equivalentes a C dólares el kilómetro.
Página 4 de 26
Y D(R,B)
Puerto B
40 (30,40)
Puerto C
30
D(R,A) R (80,30)
(x, y)
Puerto A D(R,C) X
(0,0)
Solución: En este caso lo que busca la empresa es ubicar la refinería en un punto (x,y) de
tal forma de que la distancia de cada puerto a donde llega el crudo hasta la refinería en las
tres opciones sea mínimo, es decir, minimizar la distancia recorrida.
b. Función Objetivo
Minimizar la suma de las distancias desde los puertos hasta el lugar donde estará ubicada
la planta R.
𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 √(𝑥 − 0)2 + (𝑦 − 0)2 + √(𝑥 − 30)2 + (𝑦 − 40)2 + √(𝑥 − 80)2 + (𝑦 − 30)2
Ejemplo 2:
Una empresa les vende a dos tipos de clientes cuyas demandas son:
Cliente 2: d2 = 6.000 – 50 p2
i. Definición de variables
Formula un modelo de programación no lineal que permita obtener un precio único para
ambos clientes de tal forma de maximizar la utilidad. Solución:
i. Definición de variables
iii. Restricciones
Igualdad de precios: p1 = p2
No negatividad; p1, p2 ≥ 0
i. Definición de variables
iii. Restricción
No negatividad; p1, p2 ≥ 0
s.a x є IRn
En los casos que la función objetivo sea un lugar geométrico conocido: circunferencia,
elipse, parábola o hipérbola, comentando la ecuación general se puede obtener una
aproximación a la solución óptima.
Podemos apreciar que, dado que los coeficientes numéricos que acompañan a las
variables al cuadrado tienen el mismo signo, pero son valores distintos, estamos en
presencia de una elipse.
Def 1: Si los coeficientes que acompañan a las variables al cuadrado tienen mismo signo y
son el mismo valor (Número), estamos en presencia de una circunferencia.
Def 2: Si los coeficientes que acompañan a las variables al cuadrado tienen distinto signo y
son el mismo valor (Número) o distinto, estamos en presencia de una hipérbola.
Def 3: Si en una ecuación cónica una variable está al cuadrado y la otra no, estamos en
presencia de una parábola.
En este caso podemos apreciar que la Utilidad máxima posible se alcanza en USD 422.000
(𝑝1 −105)2 (𝑝2 −65)2
dado que la expresión 2 y la expresión 2 al estar al cuadrado no pueden ser
√5 √3
expresiones negativas, por ende, el lado derecho de la igualdad no puede ser negativo,
eso implica que dado que la utilidad está representada por la expresión U(p1,p2) el
máximo valor que queremos que alcance es infinito, no obstante en la expresión (1) lo
máximo que puede alcanzar para no ser un valor negativo es USD 422.000. Ahora cuando
alcanza dicho valor la expresión del lado derecho de (1) se hace cero y para que la
igualdad se cumpla entonces p1 =105 y p2=65. En este caso, esta última solución
representará la solución óptima del problema y el USD 422.000 el valor óptimo.
Solver es una herramienta que está incorporada como un complemento en Excel. Puede
consultar el manual que está dentro de esta unidad y de igual forma la cápsula donde se
muestra una aplicación del programa.
FUNCION OBJETIVO P1 P2
422.000 105 65
En este caso SOLVER les entregará la solución óptima del problema y el valor de la función
objetivo.
En este caso dado que tenemos una función objetivo f(x1, x2, x3, …,xn) con x є IRn debemos
obtener un máximo o un mínimo depende de la naturaleza del problema y eso se produce
donde la pendiente es igual a cero o la derivada parcial o gradiente sea igual a cero. Con
Página 10 de 26
esto se encontrarán los puntos críticos que son los candidatos a máximo y/o mínimos o
punto de silla, según sea el caso.
En este caso se debe realizar la segunda derivada direccional y luego calcular el hessiano
para determinar las características de los puntos críticos.
𝐹𝑥1 𝑥1 ⋯ 𝐹𝑥1 𝑥𝑛
▽2 f(x1, x2, x3, …,xn) = [ ⋮ ⋱ ⋮ ]= H (Hessiano)
𝐹𝑥𝑛𝑥1 ⋯ 𝐹𝑥𝑛𝑥𝑛
Una vez calculado el hessiano se debe calcular su determinante que dará lugar a una
expresión que llamaremos L
Det (H) = L
(1) Caso con un solo punto crítico: Si L es un número real y un valor constante se pueden
obtener tres escenarios
𝛻𝐹(𝑥1 , 𝑥2 ) = (0,0)
Mínimo Global
(4) Caso con más de un punto crítico: Si tenemos dos puntos críticos P1 =(x11,x21); P2
=(x12,x22)
En este caso L no será un número real por defecto, si no que una expresión algebraica a la
cual denominaremos; L =M(x1,x2)
(1) Caso 1: Si L= M(P1) < 0 y/o L= M(P2) < 0 entonces el (los) punto(s) crítico(s)
encontrado (s) no (son) es ni máximo, ni mínimo, es (son) punto de silla.
(2) Caso 2: Si M(P1) > 0 y/o M(P2) > 0, Entonces el punto crítico será
1. Si G(P1) > 0 y G(P2) < 0; en este caso P1 se debe analizar si es máximo o mínimo
local, en el caso de P2 será punto de silla.
2. Si G(P1) < 0 y G(P2) > 0; en este caso P2 se debe analizar si es máximo o mínimo
local, en el caso de P1 será punto de silla.
Máximo Local
𝛻𝐹(𝑥1 , 𝑥2 ) = (0,0)
Curvas NO CONVEXAS
𝛻𝐹(𝑥1 , 𝑥2 ) = (0,0)
Mínimo Local
(1) -4x1 = 0; x1 = 0
𝐹𝑥1 𝑥1 𝐹𝑥1 𝑥2 −4 0
H=[ ]= [ ]
𝐹𝑥2 𝑥1 𝐹𝑥2 𝑥2 0 −2
En este caso el valor de L es mayor que cero, y como la diagonal de H son menor que cero,
el punto crítico en este caso, representa un Máximo Global.
𝜵𝑭(𝒙𝟏 , 𝒙𝟐 ) = (𝟎, 𝟎)
(1) 3x12- 6x1 = 0; 3x1 (x1–2)=0; 3x1 =0; (a) x1=0 (b) (x1 – 2)=0 ; x1 =2
(2) 6x2 -3x22 =0; 3x2 (2–x2)=0; 3x2 =0; (c) x2=0 (b) (2 – x2)=0 ; x2 =2
Fx1 Fx2
𝐹𝑥1 𝑥1 𝐹𝑥1 𝑥2 6𝑥 − 6 0
H=[ ]= [ 1 ], DET(H) = L= Fx1x1 x Fx2x2 – Fx2x1 x Fx1x2 =
𝐹𝑥2 𝑥1 𝐹𝑥2 𝑥2 0 6 − 6𝑥2
Dado M(x1,x2) = (6𝑥1 − 6) x(6 − 6𝑥2 ) se deben reemplazar cada uno de los puntos
críticos (0,0); (2,0);(0,2) (2,2) en M(x1,x2) de tal forma de analizar que representa
cada punto.
x1,x2 ≥ 0
Las condiciones de primer y segundo orden se aplican sobre la función objetivo y las
restricciones.
(a) Lagrange = 𝛻𝐹(𝑥1 , 𝑥2 ) + 𝜇1 𝛻𝑅1 (𝑥1 , 𝑥2 ) + 𝜇2 𝛻𝑅2 (𝑥1 , 𝑥2 ) = (0,0), de igual forma se
deben incorporar en la resolución de este sistema la restricciones de igualdad: (b)
q1(x1,x2)=a; (c) q2(x1 ,x2) = b.
Con este sistema (a), (b) y (c) se obtienen los llamados puntos críticos que son los
candidatos a: Máximo, Mínimo o punto de silla.
Hessiano
(a) Caso con un solo punto crítico: Si L es un número real y un valor constante se pueden
obtener tres escenarios.
(b) Caso con más de un punto crítico; Si tenemos dos puntos críticos P1 =(x11,x21); P2
=(x12,x22)
En este caso L no será un número real por defecto, si no que una expresión algebraica a la
cual denominaremos; L =G(x1,x2)
(4) Caso 1: Si L= G(P1) < 0 y/o L= G(P2) < 0 entonces el (Los) punto(s) crítico(s)
encontrado (s) no (son) es ní máximo, ni mínimo, es (son) punto de silla.
(5) Caso 2: Si G(P1) > 0 y/o G(P2) > 0, Entonces el punto crítico será
3. Si G(P1) > 0 y G(P2) < 0; en este caso P1 se debe analizar si es máximo o mínimo local,
en el caso de P2 será punto de silla.
Página 16 de 26
4. Si G(P1) < 0 y G(P2) > 0; en este caso P2 se debe analizar si es máximo o mínimo local,
en el caso de P1 será punto de silla.
Ejemplo 5: Resolvamos el ejemplo 2b) Dos clientes que tenían distinto nivel se sensibilidad
al precio d1 =6.000 – 30p1 y d2 =6.000 –50p2. El costo de producción era de 10 USD por
unidad.
Sabemos que la función utilidad es: U (p1,p2) = 6.300p1 – 30p12 + 6.500p2 – 50p22 - 120.000
¿Cuál será la utilidad máxima si debo cobrar el mismo precio a ambos segmentos de
clientes?
Solución
(3) p1 = p2
FUNCION OBJETIVO P1 P2
392.000 80 80
S.a. g1(x) = a
g2(x) ≤ b
g3(x) ≥ c
𝒙𝒊 ≥ 𝟎
En este caso estamos abordando un problema de tipo general con una restricción de
igualdad, otra de tipo menor o igual y finalmente una de tipo mayor o igual.
Para efecto de la resolución de este tipo de modelo, deben ser abordado de la misma
forma que el método simplex es decir como un problema de minimización en su formato
estándar. Por ende, si el P) es de Maximización f(x), se escribe su equivalente
Minimización –f(x). En cambio, si el P) es de Minimización f(x) se trabaja de esta forma.
Página 18 de 26
En estos problemas de PNL con desigualdad es muy importante analizar la convexidad del
problema, para ello debemos analizar:
B
B A
A
Convexo No Convexo
Página 19 de 26
R
R 2
A B
1
C
Cabe destacar que, si la región de puntos factibles solo está definida por restricciones
lineales, de forma automática la RPF será Convexa.
En los problemas convexos una vez que se cumplan las condiciones de KKT no se sigue
avanzado en la resolución de sistemas de ecuaciones, dado que se ha encontrado la
solución óptima del problema. En el caso que el problema sea NO convexo se deben
resolver todos los sistemas de ecuaciones y luego determinar de todos los puntos posibles
que cumplen las condiciones de KKT y determinar cuál de ellos representa la solución
óptima del problema.
g2(𝑥1 , 𝑥2 ) ≤ b g2(𝑥1 , 𝑥2 ) –b ≤ 0
g3(𝑥1 , 𝑥2 ) ≥ c c- g3(𝑥1 , 𝑥2 ) ≤ 0
𝑥1 , 𝑥2 ≥ 0 − 𝑥1 ≤ 0
− 𝑥2 ≤ 0
Página 21 de 26
λ1 (g1(𝑥1 , 𝑥2 ) –a)=0
λ2 (g2(𝑥1 , 𝑥2 ) –b)=0
µ 1 (− 𝑥1 )=0
µ 2 (− 𝑥2 )=0
Donde se asocia el λ (lamda) a las restricciones propias del modelo y el µ (miu) a las
restricciones de no negatividad.
Una restricción estará activa siempre y cuando su multiplicador sea distinto de cero
(Recordar que una restricción activa es aquella que usa todo el recurso disponible o pasa
por el óptimo) y estará desactivada si su multiplicador es cero. Este sistema de
activaciones dará paso a sistemas de ecuaciones lineales a resolver, en los cuales se irán
generando casos posibles en efecto para este modelamiento (32 casos). Cada caso nos
dará uno o más puntos de posible solución, en cada sistema y se debe determinar si estos
casos van o no cumpliendo las condiciones de KKT.
Página 22 de 26
(1) Condición 1 de KKT = El o los punto(s) obtenido (s) debe (n) pertenecer a la región
de puntos factibles. En caso contrario no se cumple KKT.
(2.1) Si los multiplicadores de las restricciones de tipo (mayor igual o menor igual
del problema original P)) son todos ≥ 0 en el sistema de ecuación que se resuelve
en cada caso y en las restricciones de igualdad el o los multiplicadores son
números reales mayores que cero, se dice que se cumple la condición 2 de KKT.
En caso contrario, si al menos una de las condiciones no se cumple y se debe
descartar este punto y resolver otro sistema.
s.a. x1 + 2x2 2
x 1, x 2 0
Solución:
4. Sistemas de ecuaciones
Dos variables y tres restricciones (Se deben considerar las restricciones de no negatividad
si estas forman parte del problema.
5. Condiciones de KKT
(2) µ1 (-x1) =0
(3) µ2 (-x2) =0
En este caso, el sistema queda: (8x1-20, 8x2- 4) = (0, 0), resolviendo el sistema de
ecuaciones, se obtiene el punto crítico: x1 = 20/8 = 5/2 y x2 = ½
Podemos apreciar que este punto queda fuera de RPF por ende no cumple la
condición 1 de KKT, por lo que se descarta.
Podemos apreciar que este punto está dentro de la RPF por ende cumple la
condición 1 de KKT. Sin embargo, el multiplicador µ1 es menor que cero, por lo que
Página 24 de 26
En este caso, el sistema queda: (8x1-20, 8x2- 4) + µ2 (0, -1) = (0, 0) resolviendo el
sistema de ecuaciones, se obtiene el punto crítico: x1 = 5/2, x2 = 0 y µ2 = -4
Podemos apreciar que este punto está dentro de la RPF por ende cumple la
condición 1 de KK. Sin embargo, el multiplicador µ2 es menor que cero, por lo que
no cumple la condición 2 (µ2 es restricción de tipo ≥ 0 en el problema inicial). Por lo
tanto, también se descarta.
Podemos apreciar que este punto queda está fuera de la RPF por ende NO cumple
la condición 1 de KKT. Por lo tanto, también se descarta.
Podemos apreciar que este punto está dentro de la RPF por ende cumple la
condición 1 de KKT. Sin embargo, los multiplicadores λ1 y µ1 son menores que cero,
por lo que no cumple la condición 2. Por lo tanto, también se descarta.
En este caso, el sistema queda: (8x1-20, 8x2- 4) + µ1 (-1, 0) + µ2 (0, -1) = (0, 0)
Podemos apreciar que este punto está dentro de la RPF por ende cumple la
condición 1 de KKT. Sin embargo, los multiplicadores µ1 y µ2 son menores que cero,
por lo que no cumple la condición 2. Por lo tanto, también se descarta.
Página 25 de 26
En este caso, el sistema queda: (8x1-20, 8x2- 4) + λ1 (1, 2) + µ2 (0, -1) = (0, 0)
Podemos apreciar que este punto está dentro de la RPF por ende cumple la
condición 1 de KKT, de igual forma los multiplicadores µ1 y µ2 son mayores que
cero, por lo que cumple la condición 2. Por lo tanto, la solución óptima del sistema
será x1 = 2, x2 = 0 y el valor óptimo F (2,0) = (2x2 – 5)2 + (2x0 – 1)2 = (-1)2 + (-1)2= 2
Conclusiones
La programación no lineal es una herramienta muy importante para modelar problemas
donde las razones de modelo no están explicadas en la programación lineal ni entera,
dado que muchas problemáticas reales están formuladas en relación con este tipo de
programación. El aprendizaje de esta herramienta, el uso de DEMOS y SOLVER de Excel,
permite mostrar de forma más tangible las aplicabilidades y las formas de resolución de
cada modelo.
Página 26 de 26
Referencias bibliográficas
Ortiz C., Varas, S. y Vera J. (2000) Optimización y modelos de gestión. Santiago de Chile:
Dolmén.