CAPITULO I: PROGRAMACIÓN NO LINEAL
1.1. CONCEPTOS BASICOS DE PROGRAMACION NO LINEAL
Programación no lineal: Se considera como tal al conjunto de métodos utilizados
para optimizar una función objetivo, sujeta a una serie de restricciones en los que
una o más de las variables incluidas es no lineal. Como ejemplo considere el
siguiente problema de programación no lineal
Minimizar f(x)
sujeta a: gi(x) ≤ 0 i = 1, 2,…..,m
hj(x) = 0 j =1,2,….,l
donde f. g1, g2,…. gm. h1,h2,...., hl, son funciones definidas en L n. el espacio
euclidiano de n dimensiones. X es un subconjunto de E n. y x es un vector de
componentes x1,x2,...,xn.
El problema anterior puede ser resuelto para los valores de las variables x 1,x2,...,xn.
que satisfacen las restricciones y que minimicen la función f.
La función f es llamada usualmenle la función objetivo o la función criterio. Cada
una de las restricciones gi(x) para i 1,2,…, m es llamada restricción de desigualdad
y cada una de las restricciones hj(x) para j =1,2,...,l es llamada restricción de
igualdad.
Un vector ⃗x que satisface todas las restricciones es llamado una solución factible
al problema. La colección de todas las posibles soluciones forman la región
factible. El problema de programación no lineal es encontrar un punto factible x tal
que f(x) ≥f(X) para cada punto factible x. Un punto tal ⃗x es llamado una solución
óptima o simplemente una solución al problema. Si existe más de un punto óptimo,
estos son referidos como soluciones alternativas óptimas. Asimismo, un problema
de programación no lineal puede expresarse como un problema de maximización
y las restricciones de desigualdad pueden estar escritas en la forma g/x) >0 para i
= 1.2,...,m. En el caso especial cuando la función objetivo es lineal y cuando todas
las restricciones, incluyendo al conjunto .V. puede ser representado por
desigualdades lineales y/o ecuaciones lineales, el problema anterior es llamado un
problema lineal. Lo anterior indica que la programación lineal es un caso particular
de la programación no lineal. Por tal motivo, los problemas no lineales son mucho
más difíciles de resolver que los de programación lineal. Haciendo un análisis de
las características de los problemas lineales y no lineales tenemos la siguiente
comparación entre ambos problemas.
1.2. DEFINICION
La programación no lineal forma parte de la investigación de operaciones y
también, como la programación lineal, tiene como finalidad proporcionar los
elementos para encontrar los puntos óptimos para una función objetivo. En este
planteamiento, tanto la función objetivo como las restricciones son no lineales. Se
presenta un problema de programación no lineal cuando tanto la función objetivo
que debe optimizarse, como las restricciones del problema, o ambas, tienen forma
de ecuaciones diferenciales no lineales, es decir, corresponden a ecuaciones
cuyas variables tienen un exponente mayor que 1.
La programación no lineal también es conocida con el nombre de programación
cuadrática, en virtud de que la mayor parte de los problemas que resultan
contienen ecuaciones cuadráticas o de segundo grado.
Muchas veces se presentan casos en que se deben maximizar funciones no
lineales que presentan restricciones lineales; esto es posible resolverlo, siempre y
cuando se admita la hipótesis de que la utilidad marginal no es constante, en este
caso, la función objetivo deja de ser lineal.
Por consiguiente se definirá a la programación no lineal como:
“La programación lineal, entera y por metas suponen que la función objetivo y las
restricciones del problema son lineales. Esto significa que no contienen términos
no lineales como, o bien, 5X1X2. Sin embargo, en muchos problemas de
programación matemática, la función objetivo y/o una o más de las restricciones
no son lineales.” (Render Stair, 2012, pág. 411)
En casi todos los aspectos, un modelo de programación no lineal es indistinguible
de un modelo de programación lineal. En ambos modelos se deben tomar
decisiones respecto a los niveles de diversas actividades, cuando estos niveles de
actividades pueden tener cualquier valor (incluyendo un valor fraccionario) que
satisfaga diversas restricciones. Las decisiones referentes a los niveles de
actividades se deben basar en una medida global de desempeño. Cuando el
modelo se formula en una hoja de cálculo, las celdas cambiantes muestran los
niveles de actividad, las celdas de salida ayudan a representar las restricciones, y
la celda meta muestra la medida global de desempeño.
La única forma de distinguir un modelo de programación no lineal de un modelo de
programación lineal, es examinar las fórmulas ingresadas en las celdas de salida.
Se trata de un modelo de programación no lineal si una o más de estas fórmulas
es no lineal, en lugar de lineal. En muchas aplicaciones, un modelo de esta clase
tiene sólo una fórmula no lineal, y es la que se ingresa en la celda meta.
1.2.1. La programación no lineal tiene 3 aspectos importantes:
• La programación no lineal se usa para modelar las relaciones no
proporcionales entre los niveles de actividad y la medida global de
desempeño, mientras que la programación lineal supone una relación
proporcional.
• La construcción de la(s) fórmula(s) no lineal(es) requerida(s) en un
modelo de programación no lineal es considerablemente más difícil que
el desarrollo de las fórmulas lineales usadas en programación lineal.
• Resolver un modelo de programación no lineal es con frecuencia mucho
más difícil (si es posible) que resolver un modelo de programación lineal.
Un ejemplo: Ejemplo de la Wyndor Glass Co., con la restricción no lineal
9x21+ 5x22≤ 216 en lugar de la segunda y tercera restricción original.
1.3. VENTAJAS DE LA PROGRAMACION NO LINEAL
Las ventajas más importantes de la programación no lineal son dos:
1. En algunas ocasiones la distribución óptima del presupuesto excluye cualquiera
de los bienes considerados en el presupuesto general; esta situación se refleja en
cualquiera de las restricciones del modelo.
2. La programación no lineal aporta mayor información que la contenida en el
análisis marginal. No sólo define el objetivo, sino que también señala la orientación
específica para lograr el objetivo.
1.4. CARACTERÍSTICAS DE LOS PROBLEMAS NO LINEALES
Los problemas no lineales se caracterizan por tener relaciones no lineales; es
decir, no existe una relación directa y proporcional entre las variables que
intervienen. Los problemas de programación no lineal, también son llamados
curvilíneos, ya que el área que delimita las soluciones factibles en un gráfico se
presenta en forma de curva.
La función objetivo en la programación no lineal, puede ser cóncavo o convexo. Es
cóncavo cuando se trata de maximizar utilidades, contribuciones, etc. Es convexo
cuando trata de minimizar recursos, costos, etc.
1.5. CONSTRUCCION DE FORMULAS NO LINEALES
Los problemas que contienen restricciones lineales, se resuelven de una forma
más sencilla que los problemas con restricciones no lineales como es en este
caso.
Se requiere mucho más trabajo en un problema de programación no lineal. Incluso
cuando no hay interacciones entre las actividades es necesario construir una
fórmula no lineal para cada actividad, que represente la contribución de dicha
actividad a la función objetivo que debe introducirse en la celda meta. Por ejemplo,
cuando el objetivo es maximizar la ganancia total, la fórmula no lineal para cada
actividad debe corresponder con la gráfica de la ganancia de esa actividad.
Un método útil para ajustar una fórmula no lineal a una gráfica comienza
suponiendo una forma general para la fórmula. Para una gráfica de ganancia con
rendimientos marginales decrecientes, es usual suponer una forma cuadrática,
como:
Ganancia de una actividad = ax2 + bx + c
Donde: x es el nivel de la actividad y a es una constante negativa.
Otra posibilidad es suponer una forma logarítmica, como:
Ganancia de una actividad = a ln(x) + b
Donde: ln(x) es el logaritmo natural de x.
1.6. TIPOS DE PROBLEMAS DE PROGRAMACIÓN 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. En esta sección se introducirán brevemente
las clases más importantes.
Ejemplo:
1.6.1. OPTIMIZACIÓN NO RESTRINGIDA
Los problemas de optimización no restringida no tienen restricciones, por lo que la
función objetivo es, sencillamente,
Maximizar f (x)
sobre todos los valores de x = (x1, x2, . . ., x n). la condición necesaria para que
una solución específica x = x* sea óptima cuando f (x) es una función diferenciable
es:
∂f
=0
∂ xj
en x = x*, para j = 1, 2, . . . , n.
Cuando f (x) es cóncava, esta condición también es suficiente, por lo que la
obtención de x* se reduce a resolver el sistema de las n ecuaciones que se
obtuvieron al establecer las n derivadas parciales iguales a cero.
Desafortunadamente, cuando se trata de funciones no lineales f (x), estas
ecuaciones también suelen ser no lineales, en cuyo caso es poco probable que se
pueda obtener una solución analítica simultánea. ¿Qué se puede hacer en ese
caso? Se utilizan los procedimientos algorítmicos de búsqueda 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.
Cuando una variable xj tiene una restricción de no negatividad, x j ≥ 0, la condición
necesaria y tal vez suficiente anterior cambia ligeramente a
∂f ≤ Para x=x*, si xj*=0
∂ xj = Para x=x*, si xj*>0
para cada j de este tipo. Esta condición se ilustra en la figura siguiente, donde la
solución óptima de un problema con una sola variable es x=0 aun cuando la
derivada ahí es negativa y no cero. Como este ejemplo tiene una función cóncava
para maximizar sujeta a una restricción de no negatividad, que su derivada sea
menor o igual a 0 en x = 0, es una condición necesaria y suficiente para que x = 0
sea óptima.
Un problema que tiene algunas restricciones de no negatividad y que no tiene
restricciones funcionales es un caso especial (m=0) de la siguiente clase de
problemas.
1.6.2. OPTIMIZACIÓN RESTRINGIDA LINEALMENTE
Los problemas de optimización restringida linealmente se caracterizan por
restricciones que se ajustan por completo a la programación lineal, de manera que
todas las funciones de restricción g i(x) son lineales, pero la función objetivo f (x) es
no lineal. El problema se simplifica de manera notable si sólo 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 símplex para analizar la función objetivo no lineal. Un caso especial
importante que se describe a continuación es la programación cuadrática.
1.6.3. PROGRAMACIÓN CUADRÁTICA
De nuevo los problemas de programación cuadrática tienen restricciones lineales,
pero ahora la función objetivo f (x) debe ser cuadrática. Entonces, la única
diferencia entre éstos 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 manejar este caso, con el supuesto
adicional de que f (x) es cóncava. Para esto se tiene un algoritmo que aplica una
extensión del método símplex.
La programación cuadrática es muy importante, en parte porque las formulaciones
de este tipo surgen de manera natural en muchas aplicaciones.
Sin embargo, otra razón por la que es importante es que al resolver problemas
generales de optimización restringida linealmente se puede obtener la solución de
una sucesión de aproximaciones de programación cuadrática.
1.6.4. PROGRAMACIÓN CONVEXA
La programación convexa abarca una amplia clase de problemas, entre los cuales,
como casos especiales, se puede mencionar todos los tipos anteriores cuando f
(x) es una función cóncava que debe maximizarse. Los supuestos son:
1. f (x) es cóncava.
2. Cada una de las gi(x) es convexa.
Estos supuestos son suficientes para asegurar que un máximo local es un máximo
global. (Si, por el contrario, el objetivo fuera minimizar f (x), sujeta ya sea a g i(x) ≤
bi o a –gi(x) ≥ bi para i=1, 2, . . ., m, el primer supuesto cambiaría a que f (x) debe
ser una función convexa, puesto que es lo que se requiere para asegurar que un
mínimo local sea un mínimo global.) se verá que las condiciones necesarias y
suficientes para obtener tal solución óptima son una generalización natural de las
condiciones que se acaba de exponer para la optimización no restringida y su
extensión a la inclusión de restricciones de no negatividad.
1.6.5. PROGRAMACIÓN SEPARABLE
La programación separable es un caso especial de programación convexa, en
donde el supuesto adicional es:
a. Todas las funciones f (x) y gi(x) son separables.
Una función separable es una función en la que cada término incluye una sola
variable, por lo que la función se puede separar en una suma de funciones de
variables individuales. Por ejemplo, si f(x) es una función separable, se puede
expresar como
donde cada fj(xj) incluye sólo los términos con x j. En la terminología de
programación lineal, los problemas de programación separable satisfacen los
supuestos de aditividad, pero violan el supuesto de proporcionalidad cuando
cualquiera de las funciones fj(xj) son funciones no lineales.
Para ilustrar, la función objetivo se tiene:
es una función separable porque puede ser expresada como
donde : f1(x1) 5 126x1 – 9x1
son cada una funciones de una sola variable x 1 y x2, respectivamente. Es
importante distinguir estos problemas de otros de programación convexa, pues
cualquier problema de programación separable se puede aproximar muy de cerca
mediante uno de programación lineal y, entonces, se puede aplicar el eficiente
método símplex, Para simplificar, se centra la atención en el caso linealmente
restringido, en el que el tratamiento especial se necesita nada más para la función
objetivo.
1.6.6. PROGRAMACIÓN NO CONVEXA
La programación no convexa incluye todos los problemas de programación no
lineal que no satisfacen los supuestos de programación convexa. En este caso,
aun cuando se tenga éxito en encontrar un máximo local, no hay garantía de que
sea también un máximo global. Por lo tanto, no se cuenta con un algoritmo que
garantice encontrar una solución óptima para todos estos problemas; sin embargo,
existen algunos algoritmos bastante adecuados para encontrar máximos locales,
en especial cuando las formas de las funciones no lineales no se desvían
demasiado de aquellas que se supuso para programación convexa. Se tienen dos
nuevos optimizadores globales (ahora disponibles con LINGO y MPL) para
encontrar una solución óptima para problemas de programación no convexa de
tamaño moderado, así como un procedimiento de búsqueda que por lo general
encontrará una solución cercana a la óptima para problemas aún más grandes.
Ciertos tipos específicos de problemas de programación no convexa se pueden
resolver sin mucha dificultad mediante métodos especiales.
1.7. FORMULACIÓN Y RESOLUCIÓN DE MODELOS MATEMÁTICOS
CON RESTRICCIONES U OBJETIVOS NO LINEALES.
Una forma de resolver los problemas de programación no lineal es convirtiendo los
problemas de forma tal, que se pueda aplicar la programación lineal. Los problemas
de programación no lineal abarcan problemas con función objetivo no lineal y
restricciones no lineales, como se presenta en el ejemplo siguiente:
Maximizar Z= ($9.6 X - $0.06 X2) + $10Y
Sujeto a: 3 X2 + 2Y2 < 13,950
X > 0, Y > 0
Como se puede observar, tanto la función objetivo como la restricción presentan
variables de segundo grado (potencia cuadrática); por lo tanto, son no lineales.
Para comenzar con la resolución de un problema no lineal se representa la
restricción en un gráfico, para ello, se utiliza el mismo procedimiento empleado en
el método gráfico de programación lineal.
Considerando la desigualdad 3 X 2 + 2Y < 13, 950, se le asigna un valor de 0 a la
variable Y, para encontrar el punto de X en el gráfico. Así mismo, se asigna un
valor de 0 a la variable X, para encontrar el punto Y en el gráfico:
Despejando la variable X se procede de la forma siguiente:
3 X2 + 2Y2 < 13,950
3 X2 + 2(0)2 < 13,950
X2 < 13,950 / 3
X2 < 4650
X< 4,650
X < 68.19
Para despejar la variable Y se procede como sigue:
3 X2 + 2Y2 < 13,950
3(0)2 + 2Y2 < 13,950
Y2 < 13,950 / 2
Y2 < 6,975
Y ≤ 6,975
Y < 83.51
De acuerdo con el procedimiento por el método grafico de programación lineal, se
debe dibujar en un plano cartesiano cada una de las restricciones formuladas
matemáticamente, de esa forma se representa como se muestra en el grafico
siguiente la restricción considerada para este ejemplo:
Como podemos observar, la restricción se representa por una curva convexa,
por lo que la función objetivo es cóncava. Para graficar la función objetivo, se asigna
un valor cualquiera a la variable X y a la contribución; para este ejemplo, se asignó un
valor a X=40 y una contribución de $1,000.
Sustituyendo el valor de X en la función objetivo, se puede encontrar el valor de la
variable Y, como se presenta a continuación:
($9.6 X - $0.06 X2) + $10Y$ = $1,000 Función objetivo
$9.6 (40) - $0.06 (402) + $10Y$ = $1,000
$288 + $10Y$ = $1,000
$10Y = 1,000 - $288
Y = $712 / $10
Y = 71.2
Una vez obtenidos los valores de X, Y para la función objetivo, se pueden representar
en un gráfico y prolongarlo hasta tocar el punto más lejano del área de soluciones
factibles, para hallar la solución óptima.
La solución óptima para este ejemplo es X=30 y Y=75; sin embargo, puede
calcularse matemáticamente. Para ello, se debe encontrar la derivada de la
función objetivo, como se muestra a continuación:
Se resuelve la ecuación de la función objetivo para encontrar a través de un
procedimiento matemático el valor de las variables, despejando las variables
mediante el uso del álgebra y aplicando el cálculo diferencial, como sigue:
Z = (9.6 X - $0.06 X2) + $10Y
Z – $10Y = ($9.6 X - $0.06 X2)
–Y = $9.6 X – $0.06 X2 – Z
10 10 10
Y = –$9.6 X + $0.06 X2 + Z A partir de aquí se puede derivar, tomando
10 10 10 en cuenta que Z es constante.
dy=-0.96 + 0.06x
5
Una vez encontrada la derivada de la función objetivo, se procede a encontrar la
derivada de la restricción, como se muestra a continuación:
El siguiente paso consiste en igualar los resultados de las dos derivadas, la derivada
de la restricción con la derivada de la función objetivo.
Enseguida, se sustituye la ecuación Y resultante en la ecuación original de
restricción.
3 X2 + 2Y2 = 13,950 Ecuación original de restricción
Con el resultado anterior de la ecuación Y, sustituida en la ecuación original de
restricción, se debe asignar un valor a X. Como se observa en el gráfico anterior,
la solución óptima es X =30, por lo que sustituiremos ese valor en la ecuación
resultante:
Como el valor de X=30 satisface la ecuación, se puede considerar ese valor
como un valor óptimo para el problema. Ese mismo valor puede sustituirse en la
ecuación de restricción original, para encontrar el valor óptimo de la variable Y.
3 X2 + 2Y2 = 13,950
3(30) 2 + 2Y2 = 13,950
2,700 + 2Y2 = 13,950
2Y2 = 13,950– 2,700
Y2 = 11,250 / 2
Y = 5,625
Y= 75
Con lo anterior, se tienen los valores óptimos de X e Y, por lo que ahora se
procede a calcular la contribución óptima, sustituyendo los valores encontrados
en la función objetivo:
Z = 9.6 (30) - $0.06 (30)2 + $10(75)
Z= 984
CONCLUSION DEL PROBLEMA:
Se puede concluir que la empresa necesita producir 30 unidades del producto X
y 75 unidades del producto Y para tener una contribución máxima de $984.
1.8. MÉTODO DE RECURRENCIA
A menudo, las empresas tienen operaciones que son recurrentes; es decir, que
vuelven a ocurrir una y otra vez, con diferentes valores cuantitativos
dependiendo del tiempo en que suceden.
Para estos casos, podemos predecir qué ocurrirá en el futuro, si conocemos
con exactitud los precedentes o antecedentes históricos. Por ejemplo: una
empresa realiza un depósito de $5,000 en su cuenta bancaria, con intereses
anuales del 10% y quiere conocer cuánto dinero tendrá en diez años.
Para conocer el monto en veinte años, se debe formular un algoritmo,
denominado relación de recurrencia, que describa el problema en cuestión. Con
cálculos simples, sabemos que los montos son de:
Monto en 1 año = 5,000.00 + (1,000.00) (0.10) = $ 5,500.00
Monto en 2 años= 5,500.00 + (5,500.00) (0.10) = $ 6,050.00
Monto en 3 años= 6,050.00 + (6,050.00) (0.10) = $ 6,655.00
Monto en 4 años= 6,655.00 + (6,655.00) (0.10) = $ 7,320.50
Como se puede observar, calcular uno por uno es un proceso tedioso, por lo
que es necesario formular una relación de recurrencia, que con cambiar un
dato, nos arroje el resultado deseado. Para este ejemplo, se aprecia que todas
las ecuaciones tienen características comunes, que se pueden representar
como:
Pn = Monto que se tiene en el año n
Pn = Pn + (0.11) (Pn), entonces, el monto para 2 años es
P2= 5,500.00 = 5,500.00 + (5,500.00) (0.10) = $ 6,050.00
Para simplificar las operaciones en cada ecuación, se puede realizar otro
algoritmo:
P2 = 5,500.00 (1.10) = $ 6,050.00
P3 = 6,050.00 (1.10) = $ 6,655.00
Sin embargo, todavía se tiene que calcular año por año, hasta llegar al año 20,
que es el que le interesa a la empresa. Se aprecia que 1.11, es constante para
todos los años, por lo que la relación de recurrencia, queda de la siguiente
forma:
Pn = 1000 * (1.11)n
Para el año 2 = P2 = 5,000.00 (1.10)2 = $ 6,050.00
Para el año 20 = P20 = 5,000.00 (1.10)20 = $ 33,637.50
De esta forma, se pueden crear relaciones de recurrencia para cada problema
de la empresa, siempre que se conozcan los precedentes y las operaciones
ocurran recurrentemente.
1.9. ALGORITMO DE POOLING
Pooling, o puesta en común, comprende todas las acciones necesarias que
realiza la empresa acerca de sus recursos, gestión de recursos (como tiempo,
mano de obra o materias primas), con el objetivo de aprovecharlos al máximo.
Muchas empresas necesitan acceder de forma rápida y confiable a los recursos
con los que cuenta, además de tener la capacidad de dar respuesta a los
cambios que puedan existir en éstos, desde disminución hasta un aumento
considerable de los recursos.
La interacción entre los participantes que requieren de recursos varía
ligeramente dependiendo de si el fondo de recursos con impaciencia adquiere
recursos en el arranque o no.
Suponiendo que la piscina (pool) se apropia de los recursos por adelantado, las
solicitudes posteriores de adquisición de usuarios de los recursos se sirven de
esos recursos. Los usuarios de recursos los liberan para el fondo de recursos
cuando no los necesite. Los recursos se reciclan en la piscina.
En el fondo de recursos se utilizan datos estadísticos que incluyen las
características de uso, como el uso pasado y frecuencia de uso. Con estos
datos y empleando algoritmos estadísticos en pool (piscina de recursos),
podemos pronosticar y tener un panorama del comportamiento de los recursos
en la empresa, para una buena gestión.
1.10. CONCLUSIONES Y RECOMENDACIONES
La programación no lineal tiene la limitante de la no existencia de un
algoritmo único para cualquier problema no lineal, tal como el método
Simplex en programación lineal, lo que hace más complicado su estudio.
Muchos de los problemas de programación no lineal requieren de
software de computadora, para alcanzar su solución completa, tal como
paquete GINO, aunque, entre más pequeño sea el error permisible E. es
mejor su aproximación al punto óptimo. Los métodos de dualidad
lagrangiana se basan en L opinión de que son los multiplicadores de
Lagrange las incógnitas fundamentales asociadas a un problema con
restricciones, una vez conocidos estos multiplicadores, la determinación
del punto solución (al menos en algunas ocasiones) es sencilla. Por lo
tanto, los métodos duales no tratan directamente el problema con
restricciones original, sino que se aplican a un problema alternativo, el
problema dual, cuyas incógnitas son los multiplicadores de Lagrange.
Hay dos maneras diferentes, pero complementarias, de caracterizar la
solución a problemas de optimización sin restricciones. En el enfoque
local se examina la relación de un punto dado con sus vecinos. Con esto
se llega a la conclusión de que en un punto mínimo relativo sin
restricciones de una función continua, el gradiente de la función se anula y
el hessiano es definido positivo, ese punto es un mínimo relativo. Esta
caracterización se amplía al enfoque global, donde la convexidad asegura
que si el gradiente se anula en un punto, ese punto es un mínimo global.
Por último, los métodos de solución de programación no lineal se pueden
clasificar en términos generales como procedimientos directos o
indirectos. Ejemplos de los métodos directos son los algoritmos de
gradiente, donde el máximo(mínimo) de un problema se busca siguiendo
la tasa de incremento(disminución) más rápida de la función objetivo en
un punto. En los métodos indirectos, el problema original se transforma
primero en un problema auxiliar del cual se determina el óptimo. Algunos
ejemplos de estas situaciones son la programación cuadrática, la
programación separable, la programación fraccional y la programación
geométrica.