INSTITUTO TECNOLOGICO DE TEPIC
5-12-2019 Investigación De
Operaciones
U3. Programación No Lineal
Luis Carlos Nolasco Murgo|17401030|5C
Carrera: ISC
DOCENTE: ING. GONZALO LEOBARDO ESTRADA SOTO
Programación No Lineal
Índice
Contenido
Introducción ................................................................................................................................2
Conceptos Básicos. .......................................................................................................................3
Ilustración Grafica. .......................................................................................................................5
Programación no lineal no restringida ..........................................................................................7
Programación no lineal restringida ...............................................................................................9
Programación No Lineal
Introducción
La Programación no Lineal (PNL) es una parte de la Investigación Operativa cuya misión es
proporcionar una serie de resultados y técnicas tendentes a la determinación de puntos óptimos para
una función (función objetivo) en un determinado conjunto (conjunto de oportunidades), donde
tanto la función objetivo, como las que intervienen en las restricciones que determinan el conjunto
de oportunidades pueden ser no lineales. Evidentemente, la estructura del problema puede ser muy
variada, según las funciones que en él intervengan (a diferencia de la Programación Lineal (PL) donde
la forma especial del conjunto de oportunidades y de la función objetivo permiten obtener resultados
generales sobre las posibles soluciones y facilitan los tratamientos algorítmicos de los problemas).
Ello ocasiona una mayor dificultad en la obtención de resultados, que se refleja también en la
dificultad de la obtención numérica de las soluciones. En este sentido, hay que distinguir entre las
diversas caracterizaciones de óptimo, que sólo se emplean como técnicas de resolución en problemas
sencillos, y los métodos numéricos iterativos, cuyo funcionamiento se basa en estas
caracterizaciones, para la resolución de problemas más generales
Programación No Lineal
Conceptos Básicos.
Programación no lineal (PNL) es el proceso de resolución de un sistema de igualdades y
desigualdades sujetas a un conjunto de restricciones sobre un conjunto de variables reales
desconocidas, con una función objetivo a maximizar, cuando algunas de las restricciones o la función
objetivo no son lineales.
Una suposición importante de programación lineal es que todas sus funciones (función objetivo y
funciones de restricción) son lineales. Aunque, en esencia, esta suposición se cumple para muchos
problemas prácticos, con frecuencia no es así. De hecho, muchos economistas han encontrado que
cierto grado de no linealidad es la regla, y no la excepción, en los problemas de planeación
económica, por lo cual, muchas veces es necesario manejar problemas de programación no lineal, lo
cual vamos a analizar enseguida.
De manera general el problema de programación no lineal consiste en encontrar:
𝑋 = 𝑥1 𝑥2 𝑥3 𝑥4 𝑥𝑛 … para:
Maximizar 𝑓(𝑥) sujeta a;
𝐺𝑖 (𝑥) ≤ 𝑏𝑖 𝑝𝑎𝑟𝑎 𝑖 = 1,2 … 𝑚
Y 𝑋≥0
Donde 𝑓(𝑥) 𝑦 𝑔𝑖 (𝑥) son funciones dadas de n variables de decisión.
DEFINICIÓN
Se puede expresar un problema de programación no lineal (PNL)de la siguiente manera:
Encuentre los valores de las variables tales que:
Programación No Lineal
Como en la programación lineal z es el funcional del problema de programación no lineal y
son las restricciones del problema de programación no lineal.
Un problema de programación no lineal es un problema de programación no lineal no restringido.
El conjunto de puntos tal que es un número real, es, entonces, es el conjunto de los números
reales.
Los siguientes subconjuntos (llamados intervalos) serán de particular interés:
Y en forma análoga a las definiciones de la programación lineal.
DEFINICIÓN
La región factible para el problema de programación no lineal es el conjunto de puntos que
satisfacen las m restricciones de (1).
Por supuesto, si son funciones lineales, entonces (1) será un problema de programación lineal y
puede resolverse mediante el algoritmo simplex.
Programación No Lineal
Ilustración Grafica.
Cuando un problema de programación no lineal tiene sólo una o dos variables, se puede representar
en forma gráfica, puesto que una representación gráfica de este tipo proporciona una visión global
de las propiedades de las soluciones óptimas de programación lineal y no lineal.
Los problemas de programación no lineal se presentan de muchas formas distintas. Al contrario del
método símplex para programación lineal, no se dispone de un algoritmo que resuelva todos estos
tipos especiales de problemas. En su lugar, se han desarrollado algoritmos para algunas clases (tipos
especiales) de problemas de programación no lineal. A continuación, se muestran algunos ejemplos:
Programación No Lineal
En general, los algoritmos de programación no lineal no pueden distinguir entre un máximo local y
un máximo global (excepto si encuentran otro máximo local mejor), por lo que es determinante
conocer las condiciones bajo las que se garantiza que un máximo local es un máximo global en la
región factible. Recuerde que, en cálculo, cuando se maximiza una función ordinaria (doblemente
diferenciable) de una sola variable f(x) sin restricciones, esta garantía está dada cuando
Una función de este tipo cuya curvatura siempre es “hacia abajo” (o que no tiene curvatura) se llama
función cóncava. De igual manera, si se sustituye < por >, de manera que la función tiene siempre
una curvatura “hacia arriba” (o no tiene curvatura), se llama función convexa. (Así, una función lineal
es tanto cóncava como convexa.)
Las funciones de variables múltiples también se pueden caracterizar como cóncavas o convexas si su
curvatura es siempre hacia abajo o hacia arriba.
Programación No Lineal
La siguiente es una forma conveniente de verificar esto para una función de más de dos variables
cuando la función consiste en una suma de funciones más pequeñas cada una de sólo
Programación no lineal no restringida
Los problemas de programación no lineal se presentan de muchas formas distintas. Al contrario del
método simplex para programación lineal, no se dispone de un algoritmo que resuelva todos estos
tipos especiales de problemas. En su lugar, se han desarrollado algoritmos para algunas clases (tipos
especiales) de problemas de programación no lineal.
Optimización no restringida:
Los problemas de optimización no restringida no tienen restricciones, por lo que la función objetivo
es sencillamente:
Maximizar ƒ(X)
Sobre todos los valores x= (x1,x2,…,xn). La condición necesaria para que una solución especifica x=x*
sea optima cuando ƒ(x) es una función diferenciable es
en x=x*, para j=1,2,…,n.
Cuando ƒ(x), es cóncava, esta condición también es suficiente, con lo que la obtención de x* se reduce
a resolverlo el sistema de las n ecuaciones obtenidas al establecer las n derivadas parciales iguales a
cero. Por desgracia, cuando se trata de funciones no lineales ƒ(x), estas ecuaciones suelen ser no
lineales también. En cuyo caso es poco probable que se puede obtener una solución analítica
simultánea. Para encontrar x*, primero para n=1 y luego para n›1. Estos procedimientos también
tienen un papel importante en la solución de varios tipos de problemas con restricciones, que se
describirán en seguida. La razón es que muchos algoritmos para problemas restringidos están
construidos de forma que se adaptan a versiones no restringidas del problema en una parte de cada
iteración.
Programación No Lineal
Cuando una variable X j tiene una restricción de no negatividad, xj ≥ 0, la condición necesaria (y tal
vez) suficiente anterior cambia ligeramente a:
≤0 en x = x*, si x*j =0
=0 en x = x*, si x*j > 0
Método del gradiente
Esta sección desarrolla un método para optimizar dos veces funciones continuamente diferenciables,
llamado método del ascenso más pronunciado (o de mayor pendiente). La idea es generar puntos
sucesivos en la dirección del gradiente de la función.
Programación No Lineal
Programación no lineal restringida
Los problemas de optimización linealmente restringida se caracterizan por restricciones que se
ejecutan por completo a la programación lineales, de manera que todas las funciones de restricción
gi (x) son lineales. Pero la función objetivo es no lineal. El problema se simplifica mucho si solo se
tiene que tomar en cuenta una función no lineal junto con una región factible de programación lineal.
Se han desarrollado varios algoritmos especiales basados, en una extensión del método simplex para
analizar la función objetivo no lineal.
Un caso especial importante descrito a continuación es la programación cuadrática.
De nuevo los problemas de programación cuadrática tienen restricciones lineales, pero ahora la
función objetivo ƒ(x) deben ser cuadráticas. Entonces, la única diferencia entre estos y un
problema de programación lineal es que algunos términos de la función objetivo incluyen el
cuadrado de una variable o el producto de dos variables.
Se han desarrollado muchos algoritmos para este caso, con la suspensión adicional de que ƒ(x) es
cóncava.
Programación No Lineal
Programación Separable
Una función f(x 1 , x 2 ,…, x n ) es separable si se puede expresar como la suma de n funciones de
una sola variable f 1 (x 1 ),f 2 (x 2 ),…,f n (x n ),es decir,
Por ejemplo, cualquier función lineal es separable. Por otra parte, la función
no es separable.
Programación No Lineal
Conclusión
La programación lineal ha demostrado ser una herramienta sumamente poderosa, tanto en la
modelización de problemas de la vida real como en la teoría matemática de amplia aplicación. Sin
embargo, muchos problemas interesantes de optimización son no lineales. El estudio de estos
problemas implica una mezcla diversa de álgebra lineal, cálculo multivariado, análisis numérico y
técnicas de computación. Entre las áreas especiales importantes se encuentra el diseño de algoritmos
de computación (incluidas las técnicas de puntos interiores para programación lineal), la geometría
y el análisis de conjuntos convexos y funciones, y el estudio de problemas especialmente
estructurados, tales como la programación cuadrática. La optimización no lineal proporciona
información fundamental para el análisis matemático, y se usa extensamente en las ciencias
aplicadas (en campos tales como el diseño de ingeniería, el análisis de regresión, el control de
inventario y en la exploración geofísica).
Programación No Lineal
Bibliografía
Hillier, F. S. (2010). Investigación de operaciones (9ª ed.). Delegación Álvaro Obregón,
México: McGraw-Hill Interamericana de España S.L..
Taha, H. A., & Salas, R. N. (2012). Investigación de operaciones (9ª ed.). Naucalpan de
Juárez, México: Pearson Educación.
Barboza, M. (s.f.). Programación no lineal. Recuperado 5 diciembre, 2019, de
https://es.slideshare.net/MarcosBarboza1/programacin-no-lineal-51332295