Está en la página 1de 306

Aplicaciones de

Programacin no Lineal

Gilberto Espinosa-Paredes
Alejandro Vzquez Rodrguez
Open Access Support

Si encuentra este libro interesante le agradeceramos que diera soporte a sus


autores y a OmniaScience para continuar publicando libros en Acceso Abierto.

Puede realizar su contribucin en el siguiente enlace: http://dx.doi.org/10.3926/oss.21

Aplicaciones de programacin no lineal

Autores:
Gilberto Espinosa-Paredes, Alejandro Vzquez Rodrguez
Profesor-Investigador. rea de Ingeniera en Recursos Energticos. Divisin de Ciencias Bsicas e
Ingeniera. Universidad Autnoma Metropolitana, Mxico

ISBN: 978-84-942118-5-0
DOI: http://dx.doi.org/10.3926/oss.21
OmniaScience (Omnia Publisher SL) 2016
Diseo de cubierta: OmniaScience

OmniaScience no se hace responsable de la informacin contenida en este libro y no aceptar


ninguna responsabilidad legal por los errores u omisiones que puedan existir.
CONTENIDO

Prlogo .......................................................................................................... vii

1 Conceptos de Optimizacin ..................................................................... 1

1.1 Introduccin .................................................................................. 3


1.2 Elementos de la Optimizacin ...................................................... 5
1.3 Definiciones Bsicas ..................................................................... 6
Solucin Factible .......................................................................... 7
Regin Factible ............................................................................. 7
Solucin ptima .......................................................................... 7
1.4 Propiedades de las Funciones ..................................................... 8
Continuidad ................................................................................... 8
Funcin Continua .......................................................................... 8
Modalidad ..................................................................................... 11
Punto Extremo .............................................................................. 11
Extremo Global y Local ................................................................. 11
Funcin Unimodal ......................................................................... 11
Funcin Multimodal ....................................................................... 11
Punto Estacionario ........................................................................ 13
Diferenciacin de una Funcin Escalar o Vectorial ...................... 14

i
Aplicaciones de Programacin no Lineal

Vector Gradiente ........................................................................... 15


Matriz Jacobiana ........................................................................... 16
Matriz Hessiana ............................................................................ 17
Expansin en Serie de Taylor ....................................................... 19
1.5 Concavidad y Convexidad ............................................................ 21
Regin Convexa ........................................................................... 21
Punto Interior, Frontera y Exterior ................................................ 22
Contornos de la Funcin Objetivo ................................................ 22
Restricciones de Desigualdad Activas e Inactivas ........................ 23
Funcin Convexa .......................................................................... 26
Funcin Estrictamente Convexa ................................................... 27
Funcin Cncava .......................................................................... 33
Funcin Estrictamente Cncava ................................................... 33
1.6 Condiciones Necesarias y Suficientes para
Mximos y Mnimos sin Restricciones .......................................... 38
Funciones de una Variable ........................................................... 38
Mnimo Local, Mnimo Global ....................................................... 38
Punto estacionario, punto de Inflexin o Silla ............................... 39
Condicin Necesaria ..................................................................... 40
Condicin Suficiente ..................................................................... 41
Funciones de Varias Variables ...................................................... 43
Mnimo Local, Mnimo Global ....................................................... 43
Mnimo Dbil, Mnimo Fuerte ........................................................ 43
Condicin Necesaria ..................................................................... 44
Condicin Suficiente ..................................................................... 44
1.7 Optimizacin Cuadrtica sin Restricciones .................................. 49
Funciones de una Variable ........................................................... 49
Funciones de Varias Variables ...................................................... 50
Problemas ..................................................................................... 55

2 Mtodos Univariables ............................................................................... 59


2.1 Introduccin .................................................................................. 61
2.2 Errores .......................................................................................... 61
Error Absoluto ............................................................................... 61
Error Relativo ................................................................................ 62
2.3 Convergencia de los Algoritmos de Optimizacin ........................ 62
Rapidez de Convergencia ............................................................ 62
Orden de Convergencia de una Sucesin .................................... 62

ii
Aplicaciones de Programacin no Lineal

Nmero
de Condicin de una Matriz............................................. 63
2.4 Criterios de Convergencia o Terminacin ..................................... 69
Nmero
Mximo de Iteraciones .................................................... 69
Cambio
Absoluto o Relativo en los Valores de las Abscisas ........ 69
Cambio
Absoluto o Relativo en el Valor de la Funcin Objetivo ... 70
Valor
Absoluto en el Valor del Gradiente de la Funcin Objetivo .. 71
2.5 Mtodos con Derivadas ................................................................ 72
Mtodos
que Usan Intervalo ......................................................... 72
Mtodos Grficos .......................................................................... 73
Mtodos
de Bsqueda Incremental .............................................. 74
Mtodo
de Biseccin .................................................................... 76
Error
Lmite en el mtodo de Biseccin ........................................ 81
Rapidez
de Convergencia del mtodo de Biseccin ................... 83
Mtodos Abiertos .......................................................................... 83
Mtodo
de Newton-Raphson ........................................................ 84
Rapidez
de Convergencia del mtodo de Newton-Raphson ........ 86
2.6 Mtodos sin Derivadas ................................................................. 88
2.7 El Intervalo de Incertidumbre ........................................................ 88
2.8 Razn de Reduccin y Eficiencia ................................................. 89
2.9 Mtodos de Comparacin de la Funcin Objetivo ........................ 91
Mtodo
de la seccin urea .......................................................... 92
Rapidez
de Convergencia ............................................................ 96
2.10 Mtodos de Interpolacin ............................................................. 98
Mtodo
de Interpolacin Cuadrtica de Powell ............................ 98
Problemas
.................................................................................... 103

3 Mtodos Multivariables ............................................................................. 107

3.1 Introduccin .................................................................................. 109


3.2 Mtodo de Comparacin de la Funcin Objetivo .......................... 111
Mtodo
de Nelder y Mead o del Poliedro Flexible ........................ 112
3.3 Mtodos con Derivadas o Gradientes .......................................... 125
3.4 Tcnicas de Diferencias Finitas .................................................... 126
3.5 Direcciones Conjugadas ............................................................... 131
Vectores
Mutuamente Conjugados ............................................... 132
3.6 Mtodos de Primer y Segundo Orden .......................................... 138
Mtodo
de Cauchy o de Descenso Acelerado .............................. 138
Mtodo
de Newton ........................................................................ 143

iii
Aplicaciones de Programacin no Lineal

Mtodo
de Fletcher y Reeves o de Gradientes Conjugados ........ 146
Mtodo
de Davidon-Fletcher-Powell o de Mtrica Variable .......... 151
Mtodo
de Broyden-Fletcher-Goldfarb-Shanno ............................ 158
Problemas ..................................................................................... 162

4 Mnimos Cuadrados................................................................................... 165

4.1 Introduccin................................................................................... 167


4.2 Formulacin del Problema de Regresin Lineal o Mltiple .......... 167
4.3 Estimacin por Mnimos Cuadrados Lineales .............................. 171
Estimando 2 ................................................................................ 173
Estimando R2 ................................................................................ 173
4.4 Aproximacin de la Matriz Jacobiana por Diferencias Finitas ...... 181
4.5 Formulacin del Problema de Regresin
No Lineal y de Sistemas de Ecuaciones No Lineales .................. 184
Regresin
No Lineal ..................................................................... 185
Sistemas
de Ecuaciones No Lineales .......................................... 187
4.6 Derivadas de la Suma de Cuadrados de las Funciones ............... 188
Mtodo
de Newton ........................................................................ 190
4.7 Estimacion por Minimos Cuadrados
No Lineales con Algoritmos de Residuales Pequeos ................. 191
Mtodo
de Gauss-Newton ............................................................ 191
Mtodo
de Levenberg-Marquardt ................................................. 194
Mtodos Cuasi-Newton ................................................................ 198
Mtodo de Broyden de Rango Uno .............................................. 200
4.8 Solucin de Sistemas de Ecuaciones No Lineales ....................... 205
Mtodo de Newton ........................................................................ 205
Mtodos Cuasi-Newton................................................................. 208
Mtodo de Broyden de Rango Uno .............................................. 208
Problemas ..................................................................................... 212

5 Fundamentos de Optimizacin Restringida ........................................... 219

5.1 Introduccin .................................................................................. 221


5.2 Condiciones para la Minimizacin Restringida ............................. 226
Restricciones ................................................................................ 227
El Plano Tangente ......................................................................... 228

iv
Aplicaciones de Programacin no Lineal

Punto Regular .............................................................................. 229


Reduccin de Variables e Introduccin
a los Multiplicadores de Lagrange ............................................... 231
Significado Geomtrico de los Multiplicadores de Lagrange ....... 234
Condiciones Necesarias: Restricciones de Desigualdad ............ 235
Condiciones Necesarias de Kuhn-Tucker .................................... 237
Condiciones de Segundo Orden para Optimizacin Restringida . 240
C
ondiciones Suficientes para Problemas Convexos ...................
240
Condiciones de Segundo Orden para Problemas Generales ...... 240
Condiciones Necesarias de Segundo Orden ............................... 243
C
ondiciones Suficientes de Segundo Orden ...............................
244
Condiciones Necesarias de Primer Orden:
Restricciones de Igualdad ........................................................... 245
Condiciones de Segundo Orden .................................................. 247
Restricciones de Desigualdad ..................................................... 250
Condiciones Necesarias de Primer Orden .................................. 250
Condiciones de Karush-Kuhn-Tucker .......................................... 251
C ondiciones de Necesarias y Suficientes d e Segundo Orden .... 253
C
ondiciones Suficientes para Problemas Convexos ................... 255
Problemas .................................................................................... 256

Apndice A: Matemticas Preliminares .................................................... 259

A.1 Introduccin ................................................................................. 261


A.2 Terminologa Bsica y Notacin .................................................. 261
Escalares Vectores y Matrices ..................................................... 261
Operaciones Bsicas entre Matrices .......................................... 266
Determinantes y Cofactores ........................................................ 270
Productos y Normas de Vectores y Matrices ............................... 272
Dependencia e Independencia Lineal, Rango de una Matriz ...... 275
Valores y Vectores Propios de una Matriz ................................... 276
C
lasificacin de las Matrices Simtricas ...................................... 281
Formas Cuadrticas .................................................................... 284

Referencias ................................................................................................... 287

v
PRLOGO

Se pretende que este libro se pueda utilizar en cursos de optimizacin no lineal


de pregrado en especialidades de las ciencias bsicas e ingeniera, y otras reas
afines. Se espera que este libro tambin sea til como material de consulta a
profesionales, ya que cubre aspectos tericos y computacionales, por ello
presenta una variedad de ejemplos y algoritmos para su programacin y, al final
de cada captulo se proponen problemas sencillos con aplicacin a las ciencias
de la ingeniera.

El contenido del libro conjunta el material fundamental de un curso introductorio


de optimizacin no lineal utilizado por los autores, en un perodo de ms de veinte
aos, en la enseanza de cursos de optimizacin matemtica de nivel licenciatura
para los estudiantes de ingeniera de la Universidad Autnoma Metropolitana
Unidad Iztapalapa en Mxico. La motivacin principal para escribir esta obra
no ha sido la enseanza de las matemticas en s, sino para equipar a los
estudiantes en los fundamentos de la optimizacin matemtica y sus algoritmos
de manera integral: conceptos, desarrollo de habilidades (para la implementacin
de programas de cmputo) y metodologa en la solucin de problemas que
se pueden abordar con los mtodos de la optimizacin no lineal en particular.
El enfoque particular adoptado aqu por los autores se deriva de experiencias
personales en practicar la docencia en las ingenieras en energa y qumica,
donde fue aplicada constantemente para resolver problemas que directamente
y de manera fcil pueden abordarse a travs del uso cuidadoso de tcnicas de
optimizacin matemtica.

vii
Aplicaciones de Programacin no Lineal

Buscando darle un orden ms claro y didctico al material, su estructura didctica


incluye los siguientes aspectos:

a) Explicar los temas con toda claridad a partir de su concepto o definicin


matemtica. La formacin acadmica de un ingeniero demanda que se co-
nozca la metodologa desde su fundamento, lo cual no significa que se ha-
gan extensas deducciones matemticas; por ello, se ha intentado emplear
conceptos de lgebra lineal, de lgebra de matrices y de algunos temas
introductorios donde se requiere el clculo de varias variables apoyado en
ejemplos expuestos de una manera sencilla.

b) Exponer en forma ordenada las metodologas y algoritmos de clculo.

c) Presentar ejemplos explicados.

d) Poner a disposicin del lector problemas propuestos.

e) Emplear una nomenclatura y una simbologa ordenadas y lgicas.

Por supuesto se han escrito en el pasado y pasado reciente, muchos textos


excelentes y ms completos sobre optimizacin matemtica en general, y estamos
en deuda con muchos de estos autores por la influencia directa e indirecta que su
trabajo ha tenido en la redaccin de este texto. Con tantos excelentes textos sobre
el tema de la optimizacin matemtica disponibles, se puede plantear la pregunta
con justificada razn: Por qu otro libro de optimizacin y que es lo diferente aqu?

Conscientes de que la optimizacin es una herramienta importante y necesaria


para la formacin de los estudiantes de las ciencias e ingeniera, el texto se
organiz considerando dos principios bsicos; primero, el texto se escribi de
manera que aliente el estudio personal. Se ha tratado de conservar la belleza
intrnseca de las matemticas en la optimizacin; sin embargo, a fin de lograr
una mayor flexibilidad y claridad para el estudiante, se simplific el lenguaje. El
rigor matemtico se desarrolla con un enfoque computacional, sin ahondar en
la demostracin de teoremas, lemas y postulados entre otros, ni en el diseo
de programas y cdigos profesionales; en su lugar se enfoca la idea central
y la lgica de cada mtodo. Para la seleccin de una tcnica apropiada y su
aplicacin, se explican las limitaciones y se proporcionan advertencias acerca
de la aplicacin ciega y la falta de comprensin de las relaciones matemticas
en la optimizacin. El segundo principio consiste en dar nfasis e ilustrar los
conceptos con ejemplos en el texto para motivar al estudiante e ilustrar la
importancia de la optimizacin en la ingeniera.

viii
Aplicaciones de Programacin no Lineal

El texto tiene una presentacin gradual, de lo simple a lo complejo, y se inicia


con la introduccin de los conceptos elementales de optimizacin considerando
la clasificacin de los problemas, las propiedades de las funciones de una y
varias variables, las condiciones necesarias y suficientes de optimalidad sin
restricciones y de optimizacin cuadrtica, y su interpretacin geomtrica. Se
estudian los mtodos unidimensionales con derivadas, donde se revisan los
mtodos de biseccin y Newton-Raphson. El estudio de tcnicas de bsqueda
unidimensional sin derivadas se realiza empleando la seccin area, y el mtodo
de interpolacin cuadrtica. Para lograr la resolucin de problemas cada vez ms
complejos se presentan tcnicas de bsqueda multidimensional sin derivadas y
con derivadas, como son: simplex irregular, direcciones conjugadas, descenso
acelerado, Newton, gradientes conjugados y mtodos de mtrica variable como
DFP y BFGS. Posteriormente, se presentan los mtodos de mnimos cuadrados
lineales (regresin lineal simple, polinomial y mltiple), mtodos de mnimos
cuadrados no lineales (mtodos de Newton, Gauss-Newton y Levenberg-
Marquardt) y mtodos de solucin de sistemas de ecuaciones no lineales (mtodos
de Newton y Broyden) como aplicaciones particulares y de gran amplitud para la
optimizacin sin restricciones. Por ltimo, se abordan temas de la optimizacin
con restricciones, como las tcnicas de reduccin de variable y de multiplicadores
de Lagrange, stas se usan para convertir un problema restringido en uno no
restringido, y resolver una funcin objetivo de menor o mayor nmero de variables
independientes respectivamente.

El texto termina con un apndice; este puede utilizarse para el repaso de las
matemticas preliminares necesarias para el desarrollo de la optimizacin de una
a varias variables por su contenido bsico de conceptos de lgebra lineal y de
lgebra de matrices.

ix
CAPTULO 1

Conceptos de optimizacin
1.1 Introduccin

La teora de optimizacin matemtica est constituida por un conjunto de resulta-


dos y mtodos numricos enfocados a encontrar e identificar al mejor candidato
entre diversas alternativas, sin tener que enumerar y evaluar de manera explcita
todas ellas. El proceso de optimizacin est en la base de la ingeniera, puesto
que la funcin clsica del ingeniero es disear sistemas nuevos, mejores, ms
eficientes y menos costosos.

La potencia de los mtodos de optimizacin para determinar el mejor caso sin


comprobar todos los posibles se basa en la utilizacin de un nivel relativamen-
te modesto de matemticas y en el desarrollo de clculos numricos iterativos
empleando procedimientos lgicos claramente definidos o algoritmos pensados
para computadoras. El desarrollo de esta metodologa de optimizacin requiere
conocimientos bsicos de matrices, de lgebra lineal (Apndice A) y algunos de
los resultados del clculo de varias variables ms elementales sobre derivacin
que se introducir en este captulo.

Un problema de optimizacin es, en general, un problema de decisin. A


partir del valor de una funcin, que se llama la funcin objetivo y que se
disea para cuantificar el rendimiento y medir la calidad de la decisin,
se obtendrn valores para cierto nmero de variables, relacionadas
entre s mediante expresiones matemticas, de manera que minimicen
o maximicen esa funcin objetivo y, por lo general, teniendo en cuenta
una serie de restricciones que limitan la eleccin de esos valores.

3
Aplicaciones de Programacin no Lineal

El planteamiento general para resolver problemas de este tipo es, por tanto, el
siguiente:

Se desea optimizar

Sujeta a: Restricciones

El empleo del trmino optimizar en la definicin incluye los objetivos de


minimizacin o maximizacin de la funcin cuando el punto cumple el
conjunto de restricciones. En cualquier caso, siempre se puede transformar un
problema con miras a la maximizacin en otro equivalente para su minimizacin
y viceversa, simplemente multiplicando la funcin objetivo por -1. En adelante
y sin prdida de generalidad, se considerar, salvo indicacin en contrario, que
todos los desarrollos, deducciones y problemas presentarn la funcin objetivo en
forma de minimizacin.

Figura 1.1 Equivalencia del problema de Max ( f ( x ) )


Min f ( x ) =
x[ a ,b ] x[ a ,b ]

4
Conceptos de optimizacin

Ejemplo 1.1 Verificar que

Maximizar ( f ( x ) )
Minimizar f ( x ) =
x[ 2,2] x[ 2,2]

f ( x=) x 2 + 2 f ( x) = x2 2
considerando las grficas de las funciones y
mostradas en la figura 1.1.

Solucin:

La funcin f (x) que se extiende hacia arriba toma su mnimo valor de 2 en el


punto . f ( x)
x = 0 En la misma figura se muestra la funcin extendida hacia abajo,
f ( x ) f ( x)
es claro que es una reflexin de con x Tambin es
respecto al eje .
x = 0 ocurre el mximo valor de -2 de
claro de la grfica que en el mismo punto ,
f (x) , por lo tanto, la minimizacin f (x) es equivalente a menos la maximizacin
de f (x) en el mismo intervalo de inters.

1.2 Elementos de la Optimizacin

Para aplicar los conceptos matemticos y tcnicas numricas necesarias de la


teora de optimizacin en problemas concretos de Ingeniera, es necesario definir
previamente lo que se pretende optimizar. El enunciado general de un problema
de programacin matemtica con restricciones podra ser:

Optimizar: f (x)

sujeta a: hi (x) = 0 i = 1,2,, m

g j (
x) 0 j = 1,2,, l

x W

5
Aplicaciones de Programacin no Lineal

T
donde x = ( x1, x2 ,, xn ) es el vector de las variables independientes, f (x)
es la funcin objetivo, W R n (aunque puede ser cualquier espacio vectorial),
hi (x) son funciones que representan las restricciones de igualdad mientras que
l a s g j (x) representan el conjunto de las restricciones de desigualdad. El hecho
de que solamente aparezcan restricciones del tipo g j (x) 0 y no aparezcan
restricciones del tipo g j (x) 0 se debe a que estas ltimas pueden trans-
formarse en las primeras multiplicando la desigualdad por -1. En principio, las
funciones implcitas en el problema no necesariamente tienen alguna propiedad
particular, pero en nuestro caso se van a introducir hiptesis adicionales que nos
ayuden a simplificar el problema. Por ejemplo, se supondr de forma general que
las funciones f (x), hi (x) , g j (x) son continuas y que en la mayora de los casos
tienen derivadas primeras y segundas, tambin continuas. Adems, el conjunto
ser en la mayora de los casos un conjunto convexo, aunque generalmente
=Rn.

1.3 Definiciones Bsicas

Como se coment en la seccin anterior, el planteamiento general de un proble-


ma de programacin matemtica no lineal es el siguiente:

Optimizar : f (x)
Optimizar:

sujeta
sujetaaa:
: h (x) = 0
g (x) 0 1.1

Donde:

x1 h1 ( x ) 0 g1 ( x ) 0
x 0
h2 ( x ) g 2 ( x ) 0
x = 2 , h (x) = = = 0 y g (x) = = 0


xn hm ( x ) 0 gl ( x ) 0

6
Conceptos de optimizacin

Todas estas (m + l ) relaciones deben ser independientes.

Definicin 1.1 Una solucin factible es un vector x que satisface todas


las restricciones con el grado de precisin requerido.

Definicin 1.2 Una regin factible es la regin del espacio n dimensional


constituida por todas las soluciones factibles.

Ejemplo 1.2 Dado el siguiente problema de optimizacin:

Minimizar :
Minimizar: f (x) = x13 - 3x1x2 + 4
sujeta a : a:
sujeta h1 (x) = -2 x1 + x2 - 5 = 0
g1 (x) = 5 x1 + 2 x2 -18 0

Muestre en un grfico la regin factible del problema de optimizacin.

Solucin:

En la figura 1.2 se muestran las curvas de nivel de la funcin objetivo, las lneas
rectas muestran las restricciones y la regin en amarillo corresponde a la regin
factible.

*
Definicin 1.3 Una solucin ptima x es aquella solucin factible que
produce el valor ptimo de la funcin objetivo.

La solucin ptima al problema del Ejemplo 1.2 es el vector x*T = ( 5, 15 ) q u e


( )
f x* = 96 como se ilustra en la figura 1.3.
produce el valor ptimo de ,

7
Aplicaciones de Programacin no Lineal

1.4 Propiedades de las Funciones

Continuidad

Definicin 1.4 Una funcin f ( x) es continua en el punto x = x0 si


f ( x0 )
1) est definida,
2) lim f ( x) existe,
x x0
3) lim f ( x) = f ( x0 ).
x x0

Figura 1.2 La regin factible es la lnea negra contenida


en la regin de color amarillo a lo largo de la restriccin
h ( x ).

8
Conceptos de optimizacin

*
Figura 1.3 El punto ptimo x en la regin factible.

Figura 1.4a Ejemplo de una funcin discontinua x = 0.

9
Aplicaciones de Programacin no Lineal

Figura 1.4b Ejemplo de una funcin continua no derivable


en x = 0 y x = 4.

Una discontinuidad en una funcin puede o no causar dificultades en los mtodos


de optimizacin. En el caso de la figura 1.4a, el mnimo se da razonablemente
lejos de la discontinuidad y puede o no tenerse xito en su bsqueda. En el caso
de la figura 1.4b, si se emplean mtodos sin derivada entonces el pico mnimo en
f ( x) probablemente no ser importante, pero con mtodos que usan derivadas
podra fallar la bsqueda debido a que la derivada resulta indefinida en el punto
x = 0 y tiene signos diferentes a cada lado de l; entonces, hacer pequeos cam-
bios en x no lleva hacia el ptimo. Un tipo de funcin objetivo discontinua cono-
cida como funcin discreta es aquella que solo permite valores discretos de las
variables independientes; este tipo de funciones queda fuera del alcance del texto.

10
Conceptos de optimizacin

Modalidad

Definicin 1.5 Un punto extremo es aquel en que se tiene un mximo o


mnimo ya sea local o global.

Definicin 1.6 El extremo global es el ms grande o ms pequeo de


todos los puntos extremos de un conjunto. Un extremo local es cualquier
extremo del conjunto.

En la figura 1.4b en el intervalo [-4,6] tenemos un mnimo y un mximo locales, y


ambos extremos en el mismo intervalo son globales.

Definicin 1.7 Una funcin f ( x ) es unimodal si tiene un slo extremo


[ ]
a, b
en el intervalo de definicin.

Definicin 1.8 Una funcin f ( x ) es multimodal si tiene dos o ms ex-


[ ]
a, b
tremos en el intervalo de definicin.

11
Aplicaciones de Programacin no Lineal

Figura 1.5a Ejemplo de una funcin unimodal en el intervalo


[-1,3].

Figura 1.5b Ejemplo de una funcin multimodal en el interva-


lo [-1,4].

12
Conceptos de optimizacin

Definicin 1.9 Un punto x de f ( x) es estacionario si en x se satisface

f '( x) = 0

Figura 1.6 Los puntos estacionarios de la funcin f ( x ) = x5 - 5 x3


son el mximo, el origen y el mnimo.

13
Aplicaciones de Programacin no Lineal

Diferenciacin de una funcin escalar o vectorial respecto a x

Definicin 1.10 El smbolo (nabla) es el operador de derivada vectorial


y se denota como un vector columna n-dimensional de la siguiente
manera:
T n
(1.2)

= = ,
x x1 x2
,, =
xn xi ei
i =1

Usualmente se escribe el subndice x en el smbolo del operador nabla de esta


manera: x, para denotar la derivada con respecto a x . En este texto se despre-
ciar el subndice x mientras no haya confusin con respecto a la variable que
se quiere derivar. Ms adelante ser necesario considerar derivaciones de fun-
ciones con respecto a alguna otra variable, por ejemplo para la funcin escalar
f (x, y ) : R m+n R , donde x, y son vectores n,m-dimensionales respectivamen-
te. Para la diferenciacin se usar la siguiente notacin:

x f (x, y )
y/o y f (x, y )

Definicin 1.11 Si la funcin escalar f ( x) es derivable en x,entonces el


vector gradiente G ( x ) o f ( x ) de la funcin f ( x) es la primera deri-
vada parcial de la funcin con respecto a x y se denota con

T
f ( x ) f ( x ) f ( x ) f ( x ) (1.3a)
f ( x )= = , ,, G (x)
x x1 x2 xn

14
Mtodos univariables

En notacin de ndices se expresa como

n
f ( x )
f ( x ) = G ( x ) = x i
ei
(1.3b)
i =1

x )es una matriz (vector) de orden n x 1 con elementos


donde f ((x)

f ( x )
Gi ( x )
= = ; i 1,, n
xi (1.3c)

Geomtricamente, el vector gradiente es normal al plano tangente en el punto x ,


como se muestra en la figura 1.7 para una funcin de tres variables. Adems,
dicho vector apunta en la direccin de mximo incremento de la funcin. Estas
propiedades son muy importantes y se utilizarn posteriormente en los mtodos
numricos de optimizacin.

Figura 1.7 El campo del gradiente pasa en forma perpendicular


a la superficie f (x) = x12 + 2 x22 + 3x32 -1 = 0 generada por la funcin

15
Aplicaciones de Programacin no Lineal

Definicin 1.12 Si la funcin vectorial f ( x) m-dimensional es derivable


en x, entonces la matriz jacobiana J ( x ) de la funcin f ( x) es la matriz
de primeras derivadas parciales de la funcin con respecto a x y se
denota con
f1 ( x ) f1 ( x ) f1 ( x )

x1 x2 xn
f 2 ( x ) f 2 ( x ) f 2 ( x )

( )
T
=f ( x )
T
x1 x2 xn J ( x )


f m ( x ) f m ( x ) f m ( x )

x1 x2 xn (1.4a)

y en notacin de ndices se expresa como

m, n
J (x) = Jik ( x ) eieTk (1.4b)
i , k =1

donde J es una matriz de orden m x n con elementos

fi ( x ) i = 1,, m
J ik ( x ) = ;
xk k = 1,, n (1.4c)

3 x 2 - 4 x x + x 2
1 1 2 2
Ejemplo 1.3 Para la funcin f (x) = , calcule la matriz jaco-
e 1 + x2 + 1
x 2
biana en el punto x*T = (1,1) .

16
Mtodos univariables

Solucin:

La matriz jacobiana es

f1 (x) f1 (x)

x1 x2 6 x1 - 4 x2 -4 x1 + 2 x2
J (x) = =
f 2 (x) f 2 (x) e x1 2 x2

x1 x2

2 -2
El valor de la matriz en ( )
x*T = (1,1) es J x* = .
e 2

Definicin 1.13 Si la funcin escalar ff ( x) es doble continuamente


( )
derivable en x, entonces la matriz hessiana H x de la funcin
es la matriz de segundas derivadas parciales de la funcin con respecto
de x y se denota como

2 f ( x) 2 f ( x) 2 f ( x)
2

x1 x1x2 x1xn
2
f (x) 2 f ( x) 2 f ( x)
2
(
)
f ( x ) = f ( x ) = x2x1
T
x22

x2xn


2
f (x) f (x) f (x)
2 2

x x xnx2 xn2 (1.5a)
n 1

y en notacin de ndices se expresa como

n
H (x) = hij ( x ) eieTj
i , j =1 (1.5b)

17
Aplicaciones de Programacin no Lineal

donde H es una matriz simtrica de orden n x n con elementos

2 f ( x) i = 1,, n
hij ( x ) = ;
xi x j j = 1,, n (1.5c)

Es importante hacer notar que cada elemento de la matriz hessiana es una fun-
cin en si misma que debe evaluarse en el punto dado x. Debido a que f ( x) se
supone dos veces continuamente diferenciable, las derivadas parciales cruzadas
son iguales, es decir,

2 f ( x) 2 f ( x)
hij ( x ) = = h ji ( x ) ;
= i j
xi x j x j xi (1.5d)

Por lo tanto, sta desempea un papel muy importante en las condiciones de


suficiencia de las condiciones de optimalidad que se vern ms adelante. Final-
mente, obsrvese que

xi
= dij ; i, j = 1,2,..., n
x j
(1.6)

Ejemplo 1.4 Calcule la matriz hessiana en el punto x*T = (1, 2) para la funcin
f ( x ) = x13 + x23 + 2 x12 + 3 x22 x1x2 + 2 x1 + 4 x2 .

Solucin:

La matriz hessiana es
6x + 4 1
H (x) = 1
1 6 x2 + 6

18
Mtodos univariables

10 1
por lo que la matriz hessiana en el punto ( )
x*T = (1, 2) es H x* =
1 18 .

Aproximacin de funciones por expansin en serie de Taylor

Algunos de los procedimientos de programacin matemtica por analizar ms


adelante requieren de aproximaciones polinomiales de f ( x), hi ( x), i = 1,, l
y g j ( x), j = 1,, m, en la vecindad de cualquier punto en trminos de su valor
y sus derivadas. Por lo tanto, se repasar el desarrollo en serie de Taylor para una
funcin de varias variables alrededor de x = x 0. Entonces, la expansin en serie
de Taylor alrededor de x = x 0 para f ( x),est dada por

( hT )
n
f (x0 )
f ( x )= n!
; h= x x 0
n =0 (1.7a)

de manera que una aproximacin lineal o de primer orden de la funcin f ( x),,


puede hacerse por una serie de Taylor truncada alrededor de x 0 como la siguiente:

T
f ( x ) f ( x 0 ) + ( x x 0 ) f ( x 0 )
(1.7b)

y una aproximacin cuadrtica o de segundo orden de f ( x),puede hacerse igno-


rando los trminos de tercer orden y superiores en la serie de Taylor; se obtiene
entonces

(1.7c)

19
Aplicaciones de Programacin no Lineal

Ejemplo 1.5 Obtenga una aproximacin de segundo orden de la funcin f ( x ) = cos x


alrededor del punto x0 = 0 .

Solucin:

Usando la ecuacin (1.7c), la expansin de Taylor de segundo orden para cos x


en el punto x0 = 0 es

1 1
cos x cos 0 ( x 0 ) sen 0 + ( x 0 )2 ( cos 0 ) =1 x 2
2 2

Ejemplo 1.6 Obtenga el desarrollo de segundo orden de Taylor para la funcin


f ( x ) = 3 x13 x2 en el punto xT0 = (1,1) .

Solucin:

El gradiente y la hessiana de la funcin f ( x ) en el punto usando


las ecuaciones (1.3a) y (1.5c) son

9 18 9
f ( x 0 ) =
3 y H ( x 0 ) = 9 0

sustituyendo estas expresiones en la forma matricial de la expansin de Taylor


dada por la ecuacin (1.7c) y usando

x 1 x 1
x x 0= 1 = 1 , f ( x 0 )= 3
x2 1 x2 1

20
Mtodos univariables

se obtiene una aproximacin f (x) a f ( x ) dada por

9 1 18 9 x1 1
f (x) =
3 + ( x1 1, x2 1) + ( x1 1, x2 1)
3 2 9 0 x2 1

Al simplificar la expresin anterior realizando las operaciones entre vectores y


matrices se obtiene

f ( x ) = 9 x12 + 9 x1x2 18 x1 6 x2 + 9

Esta expresin es una aproximacin cuadrtica de la funcin f ( x ) = 3 x13 x2 al-


rededor del punto xT0 = (1,1) .

1.5 Concavidad y Convexidad

La determinacin de la concavidad o convexidad de una funcin y (o) su regin


de definicin nos ayudar a establecer si una solucin ptima local es tambin la
solucin ptima global, es decir, la mejor entre todas las soluciones. Cuando se
sabe que la funcin objetivo tiene ciertas propiedades que se definirn despus, el
clculo del ptimo puede acelerarse usando algoritmos de optimizacin apropiados.

Definicin 1.14 Una regin es convexa si el segmento de lnea que


une cualesquiera dos puntos en la regin cae enteramente en la regin.
As, si x1 y x 2 , todo punto de la forma

x= x 2 + (1 ) x1 (1.8)

donde 0 1, tambin est en la regin.

21
Aplicaciones de Programacin no Lineal

Como ya se mencion, en problemas de optimizacin con restricciones los


puntos que satisfacen todas las restricciones son puntos factibles, el resto
de los otros puntos son no factibles. Las restricciones de desigualdad de-
terminan una regin factible constituida por el conjunto de puntos que son
factibles, mientras que las restricciones de igualdad limitan el conjunto de
puntos factibles a hipersuperficies, a curvas o incluso a un solo punto.

Definicin 1.15 Un punto interior es aquel punto que satisface todas las
restricciones de desigualdad estrictamente como desigualdades.

Definicin 1.16 Un punto frontera es aquel que satisface todas las


restricciones de desigualdad como igualdades.

Los dems puntos son puntos exteriores.

Definicin 1.17 Un contorno o curva de nivel de f ( x) es el conjunto


de puntos donde la funcin objetivo tiene un valor constante, como se
ilustra en la figura 1.10.

Figura 1.9a Diferentes conjuntos que muestran regiones convexas.

22
Mtodos univariables

Figura 1.9b Diferentes conjuntos que muestran regiones no convexas.

Definicin 1.18 Se dice que una restriccin de desigualdad es activa si


sta se satisface en su frontera como una igualdad, es decir, si

g j (x) = 0 ; para alguna j.

Si la restriccin de desigualdad se satisface como una desigualdad, se


dice que la restriccin es inactiva.

23
Aplicaciones de Programacin no Lineal

Figura 1.10 Contornos de la funcin f (x) = x13 - 3 x1x2 + 4 y sus valores.

Figura 1.11 El mnimo restringido cae sobre la restriccin activa g1 (x) = 0.

24
Mtodos univariables

Figura 1.12 El mnimo restringido coincide con el mnimo no restringido.

Figura 1.13 Los mnimos locales A y B restringidos caen sobre las restric-
ciones activas g 2 ( A) = 0 , g 4 ( A) = 0 , g1 ( B ) = 0 y g3 ( B ) = 0

25
Aplicaciones de Programacin no Lineal

*T
x = (0, 0) cae fuera de la regin fac-
En la figura 1.11, el mnimo no restringido
tible y el mnimo restringido x*T = (1,1) cae sobre la restriccin de desigualdad
g1 (x) activa; las otras dos restricciones son inactivas. Si se tuviera conocimiento
a priori de sta situacin, se debera ignorar g 2 ( x) y g3 ( x) y tratar este proble-
ma como un problema con una restriccin de igualdad g1 ( x) = 0 nicamente.
En la figura 1.12 el mnimo restringido x*T = (0, 0) coincide con el mnimo no
restringido x*T = (0, 0) . Todas las restricciones se satisfacen como desigualdades
estrictas y si se tuviera conocimiento de esto, deberan ignorarse todas por ser
inactivas y tratar este problema como un problema de optimizacin sin restriccio-
nes, tambin es posible para las restricciones introducir mnimos locales dentro
del problema (vase la Figura 1.13). Aqu, la funcin tiene nicamente un mnimo
*T
no restringido x = (0, 0) . Sin embargo, para el problema restringido, A y B son
mnimos locales ya que ningn punto factible en las cercanas inmediatas de A o
B da valores menores de la funcin. La figura 1.13 tambin muestra la importan-
cia de que las restricciones constituyan una regin convexa si se desea localizar
un mnimo global. La bsqueda para el mnimo de la funcin, si es iniciada en la
parte superior de la regin factible, podra terminar en el punto A, mientras que
una bsqueda empezando en la parte inferior de la regin podra terminar en B.
Por lo tanto, se concluye que la bsqueda en una regin convexa es importante
para obtener resultados adecuados en optimizacin. De hecho, si la regin factible
fuera convexa, la bsqueda desde cualquier punto inicial convergera a la misma
respuesta.

Definicin 1.19 Se dice que una funcin f ( x) es convexa sobre la re-


gin convexa si para cualesquiera dos puntos x1, x 2

f (qx 2 + (1 - q )x1 ) q f (x 2 ) + (1 - q ) f (x1 )

(1.9)

para 0 1. Si la desigualdad se satisface como una desigualdad


estricta, entonces se dice que la funcin f ( x) es estrictamente convexa.

Para una funcin de una variable, la desigualdad significa que la funcin pasa por
abajo de la cuerda que une dos puntos de su grfica (vase la Figura 1.14).

26
Mtodos univariables

Para una funcin cncava definida sobre una regin convexa, simplemente se
invierte la desigualdad para obtener

f (qx 2 + (1 - q )x1 ) q f (x 2 ) + (1 - q ) f (x1 ) (1.10)

Se dice que la funcin es estrictamente cncava si la desigualdad se satisface


como una desigualdad estricta. Una funcin de este tipo pasa por arriba de la
cuerda que une dos puntos sobre su grfica (vase la Figura 1.15).

Figura 1.14 Funcin convexa segn la definicin 1.19, x = q x2 + (1 - q ) x1


y f ( x) = q f ( x2 ) + (1 - q ) f ( x1 )

27
Aplicaciones de Programacin no Lineal

Figura 1.15 Funcin cncava segn la definicin 1.19, x = q x2 + (1 - q ) x1


y f ( x ) = q f ( x2 ) + (1 - q ) f ( x1 ) .

Ejemplo 1.7 Considere el siguiente problema de optimizacin:

2 2
1 1
Minimizar f (x) = x1 - + x2 -
2 2
1 1
Sujeta a : g (x) = + - 2 0
x1 x2

La figura 1.16 muestra los contornos de la funcin objetivo de dos variables y


la frontera de la restriccin g (x) = 0; ahora considere los puntos x1 y x 2 sobre
la frontera de la restriccin definidos por

0.667 3.000
x1 = y x 2 =
2.000 0.600

28
Mtodos univariables

La funcin de restriccin es convexa si cualquier punto x = qx 2 + (1 - q ) x1 sobre


la lnea de conexin de los puntos x1 y x 2 corresponde a un valor de g ( x) 0
donde los dos puntos pueden estar en cualquier parte de la superficie de restric-
cin. Considrese un valor de q = 0.5 ;se sabe que g (x1 ) = 0 y g (x 2 ) = 0 ya
ya que caen en la frontera de g (x). Entonces,

3.000 0.667 1.833


x = qx 2 + (1- q ) x1 = 0.5 + (1- 0.5) =
0.600 2.000 1.300

1 1
g (x) = + - 2 = -0.685 0
1.833 1.300

En verdad, se puede mostrar que para 0 1, el valor de la restriccin siem-


pre ser menor o igual que cero y as la funcin de restriccin es convexa. En
forma similar, la evaluacin de f (x) en x1 y x 2 da

f (x1 ) = 2.278 y f (x 2 ) = 6.260

otra vez, considerando un valor de q = 0.5 se tiene

q f (x 2 ) + (1- q ) f (x1 ) = 4.269 y f (qx 2 + (1- q )x1 ) = 2.417

de la ecuacin (1.9),

f (qx 2 + (1 - q )x1 ) = 2.417 4.269 = q f (x 2 ) + (1 - q ) f (x1 )

29
Aplicaciones de Programacin no Lineal

Se ve que la desigualdad se satisface (y se satisface para cualquier 0 1) y


as la funcin objetivo satisface el requerimiento de convexidad. Existen, adems,
otras propiedades importantes de las funciones convexas o cncavas que pue-
den deducirse usando las desigualdades anteriores.

Figura 1.16 Una funcin convexa en una regin convexa.

Proposicin 1.1 Si f ( x) es convexa sobre la regin convexa W y


x1, x 2 , entonces

T
f (x 2 ) f (x1 ) + (x 2 - x1 ) f (x1 )

(1.11)

30
Mtodos univariables

Para funciones convexas de una o dos variables, la desigualdad dice que tales
funciones pasan por arriba de cualquier lnea o plano tangente a las funciones,
como se ilustra en la figura 1.17.

Para una funcin cncava la desigualdad se invierte (ver Figura 1.18).

T
f (x 2 ) f (x1 ) + (x 2 - x1 ) f (x1 )
(1.12)

Las ecuaciones de desigualdad 1.9 a 1.12 en la definicin de funciones convexas


y cncavas no son muy convenientes cuando se usan para probar las propieda-
des de convexidad o concavidad; en su lugar puede usarse la segunda derivada
( )
de f x o la matriz hessiana de si es un vector.

Ejemplo 1.8 El gradiente de la funcin del ejemplo 1.7 evaluado en el punto


x1 esta dado por

2 x -1 0.334
f (x1 ) = 1 =
2 x2 -1 3.000

y la diferencia de vectores es

Figura 1.17 Funcin convexa segn la proposicin 1.1

31
Aplicaciones de Programacin no Lineal

Figura 1.18 Funcin cncava segn la proposicin 1.1

2.333
x 2 - x1 =
-1.400

Por otro lado, la evaluacin de f (x)en x1 y x 2 fue de

f (x1 ) = 2.278 y f (x 2 ) = 6.260

y entonces

T
f (x1 ) + (x 2 - x1 ) f (x1 ) = 2.278 - 3.420 = -1.142

32
Mtodos univariables

de la ecuacin (1.11)

T
f (x 2 ) = 6.260 -1.142 = f (x1 ) + (x 2 - x1 ) f (x1 )

y se ve que la desigualdad se satisface de manera estricta, as que la funcin


objetivo satisface el requerimiento de convexidad estricta.

Proposicin 1.2 Una funcin es convexa si su matriz hessiana


H (hij )
nxn
es positiva semidefinida y es estrictamente convexa si la matriz
hessiana es positiva definida.

Para funciones convexas de una variable, esto dice que la segunda derivada es
positiva de manera que la primera derivada es una funcin creciente que puede
anularse slo en un punto. De esta manera, tal funcin tendr un punto mnimo,
como se ilustra en la figura 1.19.

Proposicin 1.3 Una funcin es cncava si la matriz hessiana es negativa


semidefinida y es estrictamente cncava si la matriz hessiana es negativa
definida.

Para funciones cncavas de una variable, esto dice que la segunda derivada
es negativa de manera que la primera derivada es una funcin decreciente que
puede anularse slo en un punto. De esta manera, tal funcin tendr un punto
mximo, como se ilustra en la figura 1.20.

Ejemplo 1.9 La matriz hessiana de la funcin objetivo del ejemplo 1.7 esta dada por

2 0
H( x ) =
0 2

33
Aplicaciones de Programacin no Lineal

Los determinantes de los menores principales son positivos ( D1 = 2, D2 = 4) ,


o bien sus valores propios son positivos (l1 = 2, l2 = 2) de manera que la
matriz hessiana es positiva definida y de aqu que la funcin objetivo satisfaga el
requerimiento de convexidad.

Figura 1.19 Funcin convexa con derivada creciente y segunda derivada positiva.

Figura 1.20 Funcin cncava con derivada decreciente y segunda derivada negativa.

34
Mtodos univariables

Proposicin 1.4 Si las restricciones de desigualdad g j (x) 0 con


j = 1,2,, m son funciones convexas sobre la regin convexa W ,
entonces

m
p (x) = a j g j (x)
j =1

donde a j 0, es tambin convexa.

Una combinacin lineal de funciones convexas produce una nueva funcin convexa.

W regin de restriccin definida por las g j (x) 0


Proposicin 1.5 Sea la
con j = 1,2,, m , donde las g j ( x) son convexas, entonces la regin de
restriccin W es convexa.

Ejemplo 1.10 Es convexa la siguiente regin construida por las cuatro


restricciones?

x2 1 - x1
x2 1 + 0.5 x1
x1 2
x2 0

35
Aplicaciones de Programacin no Lineal

Solucin:

g j (x) 0 con
Si se reescriben e identifican las restricciones de la forma ,
j = 1,,4 se tiene

g1 (x) = 1 - x1 - x2 0
g 2 (x) = x2 - 0.5 x1 -1 0
g3 (x) = x1 - 2 0
g 4 (x) = -x2 0

Todas las funciones de restriccin son lineales y stas son funciones tanto con-
vexas como cncavas; por tanto, la regin construida por ellas es convexa. Como
se ilustra en la figura 1.21.

Proposicin 1.6 Si f ( x) es una funcin convexa sobre la regin restringida


por g j (x) 0 , donde las g j (x) son convexas, entonces un mnimo local
de f (x) en esta regin es su mnimo global en la misma regin.

Esta proposicin caracteriza el conocido problema de programacin convexa.

36
Mtodos univariables

Figura 1.21 Regin convexa construida por las restricciones del


ejemplo 1.10.

Ejemplo 1.11 Considere el problema de optimizacin

2 2
Minimizar f (x) = ( x1 -1) + ( x2 -1)
Sujeta a g1 (x ) = 1- x1 - x2 0
g 2 (x ) = x2 - 0.5 x1 -1 0
g3 (x ) = x1 - 2 0
g 4 ( x ) = - x2 0

donde f ( x) y g j ( x) con j =1,,4 son funciones convexas sobre la regin


convexa formada por las restricciones. Muestre que el mnimo local de f ( x) en
esta regin es su mnimo global (ayuda: Bosqueje una grfica del problema).

37
Aplicaciones de Programacin no Lineal

Solucin:

La figura 1.22 ilustra el problema de optimizacin convexa planteado.

1.6 Condiciones Necesarias y Suficientes para Mximos y Mnimos


sin Restricciones

Para aplicar los conceptos matemticos y tcnicas numricas necesarias de la


teora de optimizacin en problemas concretos de Ingeniera, es necesario definir
previamente lo que se pretende optimizar. El enunciado general de un problema
de programacin matemtica con restricciones podra ser:

Funciones de una Variable

Definicin 1.20 Una funcin f (x) definida sobre un conjunto S R tiene


un mnimo local (mnimo relativo) en el valor x* S , si existe un valor
positivo tal que

si x - x* < d , entonces ( )
f x* < f ( x )

Definicin 1.21 La funcin f (x) definida sobre un conjunto S R


tiene un mnimo global en x* S

si f ( x* ) < f ( x) para todos los valores de x S .

38
Mtodos univariables

Figura 1.22 El mnimo restringido coincide con el no restrin-


gido en el problema convexo.

Definicin 1.22 Un punto estacionario es un punto x* en el cual

( )
f ' x* = 0
(1.13)

Un punto de inflexin o un punto de silla es un punto estacionario que no corres-


ponde a un ptimo local (mnimo o mximo). La figura 1.23 muestra la represen-
f ( x)
tacin grfica de una funcin que x4 un mnimo
tiene un mnimo local en y
x2
global en dentro del intervalo [-2,4]. El enfoque clsico al problema de hallar
los valores de los puntos estacionarios x4 y x2 es encontrar las ecuaciones que
debern satisfacerse para x4 y x2 . La funcin f ( x ) y su derivada representadas
x = x4 x = x2
en la figura 1.23 son continuas y se ve que en ambos puntos, y :
f '( x) = 0 .

39
Aplicaciones de Programacin no Lineal

Figura 1.23 Puntos estacionarios de la funcin f ( x) en [-2,4].

As, x2 y x4 son soluciones de la ecuacin anterior. Los valores x1 y x3 son


puntos en los cuales hay un mximo local y un mximo global respectivamente
x5 encuentra un punto de inflexin
dentro del intervalo [-2,4], mientras que en se
en el intervalo [3,4]; estos puntos tambin satisfacen la ecuacin anterior. De esta
manera, la ecuacin (1.13) es slo una condicin necesaria para un mnimo, pero
no es suficiente.

Sin embargo, obsrvese que en x4 y x2 , f '( x ) cambia de signo negativo a posi-


tivo, en x1 y x3 el cambio de f '( x ) es de positivo a negativo, mientras que en x5
la derivada no cambia de signo al pasar x a travs de x5. As, en un mnimo la
derivada es una funcin creciente, y ya que la rapidez de incremento de f '( x )
es medida por la segunda derivada, se esperara que

f ''( x) > 0 para x = x4 x2


y
f ''( x) < 0 para x = x1 x3

40
Mtodos univariables

Pero si la segunda derivada es cero, la situacin permanece ambigua. Los resul-


tados intuitivos anteriores pueden ponerse sobre una base firme considerando
el desarrollo en serie de Taylor de f ( x ) alrededor de x = x*; esto por supuesto,
considerando la continuidad de f ( x ) y sus derivadas.

1 2
( ) ( ) ( )
f ( x) - f x* = x - x* f ' x* +
2
(x - x* ) f ''( x* ) +
Si x* da un mnimo, el lado izquierdo es positivo para toda ( x - x* ) pequea.
( x - x* < d ) ( )
y f ' x* debe ser nula por la condicin necesaria (1.13), ya que
el prximo trmino implica un ( x - x* ) y vemos que si en verdad f ( x ) tiene un
2

mnimo en x* , entonces

f ''( x) > 0 (1.14)

Por lo tanto, la ecuacin (1.14) es una condicin suficiente. Si

f '( x) = 0
y

f ''( x) < 0 (1.15)

entonces por argumentos similares x* da un mximo (x1 , x3= x*). Se debern


comparar f (x4) y f (x2) para distinguir entre un mnimo local y un mnimo global. El
caso ambiguo donde f ''(x)=0 puede establecerse cuando se da, continuando la
expansin en serie de Taylor.

1
) f ''( x* ) + 16 ( x - x* )
2 3
( ) ( ) ( )
f ( x) - f x* = x - x* f ' x* +
2
(
x - x* ( )
f ''' x* +

de ella podemos derivar el siguiente:

41
Aplicaciones de Programacin no Lineal

Teorema 1.1 Si f ( x ) y sus derivadas son continuas, entonces x* es


un punto extremo (mximo o mnimo) si y solo si n es par, donde n es
el orden de la derivada superior no nula que primero aparece evaluada
*
en x.

Es decir, para n par

si ( )
f n x* > 0, x* da un mnimo

si f n ( x* ) < 0, x* da un mximo (1.16)

y para n impar

si ( )
f n x* 0, x* da un punto de silla (1.17)

Ejemplo 1.12 Halle el punto crtico y determine su naturaleza para la funcin

6
f ( x) = ( x -1)

Solucin:

Derivando la funcin, igualando a cero y resolviendo para x se tiene

5
f '( x) = 6( x -1) = 0 x* = 1
.

42
Mtodos univariables

Lo anterior es mximo o mnimo? Para responder a esta pregunta se deriva otra


vez la funcin y se evala en el punto crtico. Se tiene

f ''( x) = 30( x -1)


4
( )
f '' x* = 0

En este momento sera errneo concluir que se tiene un punto de inflexin; para
asegurarse de que puede ser as, se tiene que seguir derivando la funcin hasta
que sta no se anule en el punto crtico; entonces

f 3 ( x) = 120( x -1)
3
( )
f 3 x* = 0

f 4 ( x* ) = 0
2
f 4 ( x) = 360( x -1)

f 5 ( x ) = 720( x -1) f 5 ( x* ) = 0

f 6 ( x ) = 720 f 6 ( x* ) = 6! > 0

As, f ( x) tiene un mnimo cuando x* = 1 porque n = 6 es par.

Funciones de varias variables

*
Definicin 1.23 f (x) tiene un mnimo local en x si existe una d>0
tal que para x - x* < d entonces f (x) f (x* ) .

Definicin 1.24 f (x) tiene un mnimo global en


para todos los valores de x.
x*si f (x) > f x*( )

*
Definicin 1.25 Si f (x) f (x* ) se dice que x es un mnimo dbil,
si f (x) > f (x* ) se dice que x*es un mnimo fuerte.

43
Aplicaciones de Programacin no Lineal

Con estas definiciones y ciertas suposiciones de diferenciabilidad, se tiene el de-


sarrollo en serie de Taylor para el caso de una funcin de n variables;

Entonces, si da un mnimo para , cada una de las primeras derivadas


*
parciales / debe anularse en x . As, una condicin necesaria
para un mnimo en x* es

( )
f x* = 0
(1.18)

T
y entonces el signo de f (x) - f (x* ) queda determinado por el de (x - x* ) H (x* )(x - x* ) .
*
As, una condicin suficiente para un mnimo en x es que

T
(x - x* ) H (x* )(x - x* ) 0 (1.19)

es decir, que ( ) sea positiva definida o positiva semidefinida.


H x*

*
Para un mximo en x las condiciones necesarias y suficientes son:

( )
f x* = 0 (1.20a)

T
(x - x* ) H (x* )(x - x* ) 0 (1.20b)

es decir, que ( ) sea negativa definida o negativa semidefinida.


H x*

44
Mtodos univariables

Conclusin:

( )
H x*
Si es x* un mnimo fuerte.
positiva definida, es

H (x* )
Si es x* un mnimo dbil.
positiva semidefinida, es

H (x* )
Si es x* un mximo fuerte.
negativa definida, es

H (x* )
Si es x* un mximo dbil.
negativa semidefinida, es

H (x* )
Si es x* un punto de silla.
indefinida, es

Figura 1.24 Contornos de la funcin f (x) del ejemplo 1.13 con


tres puntos estacionarios: Uno es punto de silla y los otros dos
son mnimos.

45
Aplicaciones de Programacin no Lineal

Ejemplo 1.13 Examine la naturaleza de los puntos estacionarios de la funcin

4
f (x) = ( x2 - x1 ) + 8 x1x2 - x1 + x2 + 3

Solucin:

De la condicin necesaria se obtienen los puntos extremos de la funcin; entonces

3
-4( x2 - x1 ) + 8 x2 -1 0
f (x) = = = 0

4( x2 - x1 ) + 8 x1 + 1 0
3

y resolviendo el sistema de ecuaciones no lineales numricamente se tienen tres


soluciones dadas por

0.553 -0.418 -0.127


x1* = , x*2 = y x*3 =
-0.553 0.418 0.127

La matriz hessiana de la funcin es

2
-12( x2 - x1 ) + 8
2
12( x2 - x1 )
H (x) =
2 2
-12( x2 - x1 ) + 8 12( x2 - x1 )

46
Mtodos univariables

evaluada en los puntos crticos el lector puede verificar por los determinan-
tes de los menores principales o los valores propios de las matrices que x1* y
x*2 son mnimos fuertes y que x3* es un punto de silla. Por ltimo, evaluando en la
funcin objetivo, se tiene

( )
f x1* = 0.943 y ( )
f x*2 = 2.926

*
de lo que se concluye que x1 es un mnimo fuerte global y x*2 es un mnimo
fuerte local (vase la Figura 1.24 para este problema).

Figura 1.25 Contornos de la funcin f (x) del ejemplo 1.14


con infinidad de puntos estacionarios, todos ellos extremos.

47
Aplicaciones de Programacin no Lineal

Ejemplo 1.14 Examine la naturaleza de los puntos estacionarios de la funcin

(
f (x) = 0.1 x12 + x1x2 + x22 ( x1 - 2 x2 ) ) 2

Solucin:

De la condicin necesaria se obtienen los puntos extremos de la funcin, y resol-


viendo el sistema de ecuaciones no lineales se tiene un nmero infinito de solu-
ciones dadas por la ecuacin x1 - 2 x2 = 0 ; por ejemplo, tres soluciones seran

1 -1
0
x1* = ,
x*2 = 1 y
x*3 = 1
0 -
2 2

De la condicin suficiente se puede determinar su naturaleza, en general, si se


evala usando la solucin x1 - 2 x2 = 0 , en trminos de x2 resulta

1.4 -2.8
( )
H x* = x22
-2.8 5.6

los determinantes de los menores principales de la matriz hessiana son


D1 = 1.4 x22 0 y D2 = 0 x22 = 0 para todo x2 por lo que, la matriz hessiana es po-
sitiva semidefinida y todos los puntos son mnimos globales dbiles con el mismo
valor funcional de f (x* ) = 0.0 (vase la Figura 1.25).

48
Mtodos univariables

1.7 Optimizacin Cuadrtica sin Restricciones

Funciones de una variable

Considrese la funcin cuadrtica general

f ( x) = ax 2 + bx + c

Donde a, b y c son constantes. Obteniendo sus derivadas resulta

f '( x) = 2ax + b y f ''( x) = 2a

Para que x*sea un valor extremo de la funcin f ( x) , debe tenerse que

( )
f ' x* = 0 2ax* + b = 0
b
\ x* = -
2a

y para que x* sea un mnimo, entonces

( )
f '' x* > 0 2a > 0 a > 0

por lo tanto,

b es mnimo si a > 0
x* = - ;
2a es mximo si a < 0 (1.21)

49
Aplicaciones de Programacin no Lineal

Funciones de varias variables

Se minimizar la funcin cuadrtica de n variables dada por

f (x) = c + xT b + xT Ax

donde c es una constante, bb es un vector constante y A es una matriz no sim-


*
trica de elementos constantes. Para que x sea un punto estacionario, debe sa-
tisfacerse

( )
f x* = 0

entonces

( )
f (x) = c + xT b + xT Ax ( )

donde

c = 0 , ( )
xT b = b y ( ) (
xT Ax = A + AT x )

para A no simtrica, luego

(
f (x) = b + A + AT x )

50
Mtodos univariables

Evaluando en x* el gradiente, igualando a cero y despejando a x* se tiene que

-1
(
x* = - A + AT ) b (1.22)

es el punto extremo. Se calcula ahora la matriz hessiana

T
( )
H (x ) = T f (x ) = bT + xT A + AT

( ) ( T
)
= 0 + A + A = A + A

T

estos resultados pueden verificarse usando la notacin de ndices. Evaluando en


x* se tiene que

( )
H x* = A + AT (1.23)

As, el resultado es una matriz de elementos constantes; por otro lado,

-1 -1 -1
( A + AT ) (
= A + AT ) ( ) HH-1
I = A + AT
-1
= ( A + AT ) ( A + AT ) H-1 = IH-1 = H-1

por lo que

-1
(
H-1 = A + AT ) (1.24)

51
Aplicaciones de Programacin no Lineal

y sustituyendo en la ecuacin 1.22, el resultado de x* es

x* = -H-1b (1.25)

Se deja como ejercicio al lector mostrar que se llega al mismo resultado (Ec.
1.25), si la matriz A de la funcin cuadrtica es simtrica.

Concluyendo:

( )
H x*
Si es positiva definida, tambin lo es .

H (x* )
Si es ( )
H-1 x* en consecuencia
positiva definida, tambin lo es y
x *
es positiva definida y es un mnimo fuerte.
*
Si x
es positiva semidefinida, es un mnimo dbil.
*
x
Si es negativa definida o semidefinida entonces es un m-
ximo fuerte o dbil respectivamente.
*
Finalmente, si x
es indefinida entonces es un punto de silla.

Ejemplo 1.15 Examine la naturaleza de las siguientes funciones

a) f (x) = x12 - x1x2 + x22

1
b) f (x) = x12 - 2 x1x2 + 2 x22
2
1
c) (
f (x) = x12 - 2 x1x2 - x22 -1
2
)

52
Mtodos univariables

Solucin:

Se deja como ejercicio al lector, mostrar que el problema del inciso a) tiene un
mnimo fuerte como se muestra en la figura 1.26, el del inciso b) tiene un nmero
infinito de mnimos dbiles, figura 1.27 y en el inciso c) se tiene un punto de silla,
figura 1.28. .

2 2
Figura 1.26 Contornos de la funcin f (x) = x1 - x1x2 + x2 mostrando el mnimo fuerte.

53
Aplicaciones de Programacin no Lineal

1
Figura 1.27 Contornos de la funcin f (x) = 2 x12 - 2 x1x2 + 2 x22 mostrando
un mnimo dbil, la lnea que pasa por el origen contiene a todos los mnimos.

54
Mtodos univariables

1 2
2
( )
Figura 1.28 Contornos de la funcin f (x) = x1 - 2 x1x2 - x2 -1
2
mostrando el punto de silla.

Problemas

La estrategia para resolver problemas de optimizacin consiste en que deben


asignarse smbolos a todas las magnitudes a determinar, establecer la funcin
objetivo para la variable que debe optimizarse, reducir en la medida de lo posi-
ble la funcin objetivo a una ecuacin con solo una variable independiente, esto
puede exigir el uso de ecuaciones auxiliares o de restriccin que relacionen las
variables independientes de la funcin objetivo, y la determinacin del dominio de
la misma, para que el problema planteado tenga sentido, por ltimo determinar el
ptimo mediante las tcnicas dadas.

1.1 Un cartel debe contener 300 cm2 de texto impreso con mrgenes superior e
inferior de 6 cm y 4 cm en los laterales. Encuentre las dimensiones del cartel que
minimizan el rea total.

55
Aplicaciones de Programacin no Lineal

1.2 Una caja con base cuadrada y sin tapa debe retener 1000 cm3. Determine las
dimensiones que requieren el menor material para construir la caja.

1.3 Un granjero tiene 300 m de malla para cercar dos corrales rectangulares igua-
les y que comparten un lado de la cerca. Halle las dimensiones de los corrales
para que el rea cercada sea mxima.

1.4 Un terreno tiene la forma de un rectngulo con dos semicrculos en los


extremos. Si el permetro del terreno es de 50 m, determinar las dimensiones de
manera que se tenga el rea mxima.

1.5 Halle el volumen del cilindro circular recto ms grande que puede inscribirse
dentro de una esfera de radio R.

1.6 Se pide calcular el volumen mximo de un paquete rectangular enviado por


correo, que posee una base cuadrada y cuya suma de la anchura ms la altura
ms la longitud sea de 108 cm.

1.7 Se desea construir un recipiente cilndrico de metal con tapa que tenga una
superficie total de 100 cm2. Encuentre las dimensiones de modo que tenga el
mayor volumen posible.

1.8 Inscribir en una esfera de radio 1 m, un cilindro circular que tenga: a) volumen
mximo y b) rea lateral mxima. En ambos casos encuentre las dimensiones,
radio de la base y altura.

1.9 Un alambre de 100 cm. de longitud, se corta en dos partes formando con una de
ellas un crculo y con la otra un cuadrado. Cmo debe cortarse el alambre para que:

a) la suma de las reas de las dos figuras sea mxima y

b) la suma de las reas de las dos figuras sea mnima.

56
Mtodos univariables

1.10 Dos pasillos de 2 y 3 m de ancho estn unidos en ngulo recto. Encuentre


la longitud de la barra recta ms larga que puede pasarse horizontalmente de un
pasillo a otro por una esquina.

1.11 El trabajo terico para un compresor adiabtico de dos etapas donde el gas
se enfra a la temperatura de entrada entre las etapas est dado por

( k 1) / k ( k 1) / k
kp1V1 p2 p3
=W 2+
k 1 p1 p2

donde k = C p / Cv = 1.4
p1 = presin a la entrada = 1 atm
p2 = presin de la etapa intermedia
p3 = presin a la salida = 4 atm
V1 = volumen de entrada

Se desea optimizar la presin intermedia de manera que el trabajo sea mnimo.


opt
Muestre que con los valores dados para p1 y p3 , p2 = 2 atm.

1.12 La funcin objetivo para el requerimiento de trabajo de un compresor de tres


etapas puede expresarse como ( p es la presin)

0.286 0.286 0.286


p p p
f = 2 + 3 + 4
p1 p2 p3

donde p1 = 1 atm y p4 = 10 atm. El mnimo ocurre a una razn de presin de


3
10
para f
cada etapa. es convexa para 1 p2 10 y 1 p3 10?

57
CAPTULO 2

Mtodos univariables
2.1 Introduccin

Las funciones ms simples con las que se inicia el estudio de los mtodos de opti-
mizacin no lineal son las funciones de una sola variable. Estas funciones suelen
llamarse funciones univariadas o unidimensionales porque slo dependen de una
variable independiente. Aunque la minimizacin de funciones unidimensionales es
en s misma de importancia prctica, el rea principal de aplicacin de estas tcni-
cas en el contexto de la optimizacin es su uso como una herramienta auxiliar para
abordar de manera eficiente subproblemas de minimizacin multidimensionales.

2.2 Errores

En la prctica del clculo numrico, es importante tener en cuenta que las


soluciones calculadas a travs de una computadora no son soluciones ma-
temticamente exactas. La precisin de una solucin numrica puede verse
disminuida por diversos factores, algunos de naturaleza sutil, por ejemplo los
errores de truncamiento y redondeo, y la comprensin de estas dificultades puede
guiarnos a menudo a desarrollar o a construir algoritmos numricos adecuados.

Definicin 2.1 Si x es una aproximacin a x*. El error absoluto de la


aproximacin es

e = x - x* (2.1)

61
Aplicaciones de Programacin no Lineal

y el error relativo es:


x - x*
r= , si x* 0.
*
x
(2.2)

*
El error absoluto no es ms que la distancia entre el valor exacto x y el valor
aproximado x, mientras que el error relativo mide el error entendido como una
fraccin del valor exacto. Por lo general, interesa el error absoluto y no el error
relativo; pero cuando el valor exacto de una cantidad es muy pequeo o muy
grande, los errores relativos son ms significativos

2.3 Convergencia de los algoritmos de optimizacin

El diseo de los mejores algoritmos de minimizacin est de alguna manera aso-


ciado con la idea de la minimizacin eficiente de una funcin cuadrtica con una
matriz hessiana positiva definida. En la vecindad inmediata de un mnimo, mu-
chas funciones pueden considerarse esencialmente cuadrticas por el concepto
de convexidad ya comentado.

Rapidez de convergencia

Ser importante tener una indicacin terica de la rapidez de convergencia hacia


una solucin. En adelante, el inters estar en ver cul es el orden de convergencia
de un mtodo dado sin ahondar con profundidad en este tema, es decir, en este
texto algunas relaciones de rapidez de convergencia se establecern sin prueba.

*
Definicin 2.2 Sea la sucesin {x k } convergente a x . Se denomina
orden de convergencia de {x k } como al mximo de los nmeros posi-
tivos p que satisfagan que *
x k +1 - x
0 lim = b < (2.3)
k * p
xk - x

62
Mtodos univariables

*
Aqu x k es el punto alcanzado en la k-sima iteracin y x es el mnimo. La cons-
tante (0 b < 1) se conoce como la rapidez (tasa o razn) de convergencia.
Las tasas de convergencia rpidas estn asociadas con valores grandes de p y
valores pequeos de b . El caso p =1 se denomina rapidez de convergencia li-
neal y la tasa de primer orden ms rpida posible se denomina superlineal que
es cuando b = 0 b 0 . El caso p = 2 se denomina rapidez de convergen-
cia cuadrtica, p = 3 es cbica, etc. Debe observarse que el valor de p depende
del algoritmo, mientras que el valor de b depende de la funcin que est minimi-
zndose.

Nmero de condicin de la matriz A


N

Definicin 2. El nmero de condicin de una matriz A se expresa


como

g= A i
A- 1
i (2.4)
donde
donde i = ,1, 2, e (de espectral )

Una definicin muy usual del nmero de condicin est dada en trminos de
la norma espectral de la matriz A; luego

g= A e
A-1 = lmx lmx
'
e

i
63
Aplicaciones de Programacin no Lineal

puede mostrarse (se deja al lector como ejercicio) que el valor propio ms grande
de A-1 es igual al recproco del valor propio ms pequeo de A, es decir

' 1
lmx =
lmn

de manera que

lmx
g=
lmn

mn {llii}} y llmn
lmn==mx
donde lmx mn = mn {{llii}} son los valores propios ms grande y ms
= mn
ii i
pequeo de la matriz A. . Si A representa a la matriz hessiana H de una funcin,
entonces lmx y lmn son los valores propios mximo y mnimo de la matriz hessia-
na en el mnimo, y g es un ndice de la razn de la mxima a la mnima curvatura
en dos direcciones en el mnimo. Para varios algoritmos, a mayor g corresponde
una mayor b y ser ms difcil realizar la minimizacin.

Una funcin objetivo con un valor bastante grande de g causa problemas signi-
ficativos y se dice que est mal condicionada, mientras que una funcin con un
valor relativamente pequeo de g se dice que est bien escalada. Por ejemplo,
en un problema mal condicionado los contornos de la funcin alrededor del mni-
mo son elipses muy aplanadas, pero en un problema bien escalado los contornos
son casi circulares.

Cuando g es grande, las operaciones realizadas con la matriz hessiana o matri-


ces relacionadas estn sujetas a mayores errores de redondeo que cuando g es
pequea. En el caso lmite de una matriz singular, g debido a la presencia
de un valor propio nulo. El nmero de condicin es, por consiguiente, una medida
de cun bien se puede esperar la distincin de una solucin aproximada buena
de otra mala.

64
Mtodos univariables

Ejemplo 2.1 Cul es el orden y tasa de convergencia de las siguientes sucesiones?

1
a) xk = 1 +
2k
1
b) xk = 1 +
k!

Solucin:

a) Sin prdida de generalidad, veamos algunos puntos de la sucesin

3 5 9
x0 = 2, x1 = = 1.500, x2 = = 1.250, x3 = = 1.125,
2 4 8

de manera que

1 1
lim xk = lim 1 + k = lim 1 + lim k = 1 + 0 = 1
k k 2 k k 2

\ x* = 1
1
p=
Usando la definicin 2.2 y suponiendo que , se tiene
2

1
xk +1 - x* 1+ -1
2 k +1 2k /2 2
lim = lim = lim = lim = 0<
k 1/2 k 1
1/2 k 2k +1 k 2k /2
xk - x* 1 + k -1
2

65
Aplicaciones de Programacin no Lineal

Suponiendo que p = 1, se tiene

1
xk +1 - x * 1+ -1
2 k +1 2k 1 1
lim = lim = lim k +1 = lim = <
k xk - x* k 1 k 2 k 2 2
1 + k -1
2

y suponiendo ahora que p = 2 , se tiene

xk +1 - x* 2 2k
2 k lim 2k

lim = lim = lim = k = =
k *2 k 2k +1 k 2 lim 2 2
xk - x k

en general,

0, p <1
| xk +1 x* |
1
lim = = , p 1
k | x x* | p
k 2
+, p >1

es decir, la sucesin dada converge


111 linealmente ( p = 1) hacia x* = 1 con una
rapidez de convergencia debb= =
b= = == 0.5.
0.50.5
222

b) Algunos puntos de la sucesin son

3 7 25
x0 = x1 = 2, x2 = = 1.500, x3 = = 1.166, x4 = = 1.041,
2 6 24

66
Mtodos univariables

de manera que

1 1
lim xk = lim 1 + = lim 1 + lim = 1 + 0 = 1
k k k ! k k k !

\ x* = 1

p = 1 se tiene
Usando la definicin 2.2 y suponiendo que ,

1
* 1+ -1
xk +1 - x (k + 1)! k! 1
lim = lim = lim = lim = 0<
k xk - x* k 1 k ( k + 1)! k k + 1
1 + -1
k!

Suponiendo ahora que p = 2 , se tiene

xk +1 - x* (k !)
2
k! lim k !
lim = lim = lim = k
k 2 k ( k + 1)! k k + 1 lim (k + 1)
xk - x* k

es decir, la sucesin dada converge en forma superlineal ( p = 1) a x* = 1 con


una rapidez de convergencia de b = 0.

Ejemplo 2.2 Dadas las siguientes funciones, determine el nmero de condicin


de la matriz hessiana asociada a stas.

a) f (x) = x12 + x22

b) f (x) = 100 x12 + x22

67
Aplicaciones de Programacin no Lineal

Solucin:

a) La matriz hessiana de f (x) es

2 0
H (x) =
0 2

cuyos valores propios son (recuerde la propiedad de una matriz diagonal)


.

l1 = l2 = 2 = lmx = lmn
l 2
\ g = mx = = 1
lmn 2

b) La matriz hessiana para este caso es

200 0
H (x) =
0 2

y sus valores propios son

l1 = lmx = 200 y l2 = lmn = 2


lmx 200
\ g= = = 100
lmn 2

De ambos resultados se concluye que, en general, la segunda funcin dara ms


problemas para determinar numricamente su mnimo que para la primera fun-
cin segn la comparacin de sus nmeros de condicin, el cual es mayor para
la segunda de ellas. Adems, debe tomarse en cuenta tambin que esto depende
del punto inicial elegido, debido a que los contornos de la primera funcin son
circulares, mientras que los de la segunda funcin son elpticos; el lector puede
verificar esto como un ejercicio.

68
Mtodos univariables

2.4 Criterios de Convergencia o Terminacin

En las prximas secciones se analizarn diferentes algoritmos para resolver el


problema de minimizar una funcin no restringida o restringida en un intervalo dado.
Una parte crtica de todo el proceso es determinar cundo detener la bsqueda
hacia el punto ptimo. El criterio de terminacin que se elige tiene un mayor efecto
en la eficiencia y confiabilidad del proceso de optimizacin. A continuacin se
presentarn diferentes criterios de terminacin de un proceso iterativo.

Nmero mximo de iteraciones

Un criterio de terminacin que siempre debe usarse es el nmero mximo de


iteraciones. ste se aplica cuando el nmero de iteraciones n en un proceso
iterativo excede a un nmero grande predeterminado N mx ; si esto sucede,
entonces el proceso de bsqueda terminar. Esto asegura que si el proceso es
extremadamente lento ya sea por dificultades numricas o algortmicas o bien debido
a simples errores de programacin, entonces el programa ya no continuar iterando
en forma indefinida. Obsrvese que esta regla se aplica a cualquier proceso iterativo.

Cambio absoluto o relativo en los valores de las abscisas

El segundo criterio que puede usarse es una verificacin del progreso de


la optimizacin. Hay dos criterios que pueden usarse con respecto al cambio
absoluto o relativo en los valores de las variables de inters, y estos criterios de
convergencia se basan en la definicin del error absoluto y el error relativo de
orden n en un proceso iterativo, dados por las siguientes ecuaciones:

x n - x*
en = x n - x* e y rn = e
*
x

69
Aplicaciones de Programacin no Lineal

*
donde x n es el punto alcanzado en la n-sima iteracin, x es el mnimo y
e > 0 es la magnitud de una cantidad pequea que suele denominarse tolerancia
y que indica un lmite en el tamao que debe tener el error. Sin embargo, como
*
no se conoce a priori el valor de x, entonces se elige una estimacin del error a
travs de la comparacin entre dos iteraciones sucesivas en el valor de x,ncomo
se establece a continuacin:

en = x n - x n-1 e (2.5)

x n - x n-1
rn = e
xn (2.6)

Cambio absoluto o relativo en el valor de la funcin objetivo

Un tercer criterio que puede utilizarse es el cambio absoluto o relativo en el valor


de la funcin objetivo, y tambin en este caso se tienen dos criterios para indicar
la convergencia. El primero es comparar el valor absoluto de f (x) sobre dos ite-
raciones sucesivas. En este caso, la convergencia se satisface si

f (x n ) - f (x n-1 ) e
(2.7)

donde e es una tolerancia predeterminada. sta puede ser constante, por ejem-
plo, e = 0.0001, o puede ser una fraccin del valor de la funcin objetivo en el punto
x0 , por ejemplo, e = 0.001 f (x0 ) , donde el valor absoluto se toma para consi-
derar el posible valor negativo de la funcin objetivo.

70
Mtodos univariables

El otro criterio que puede usarse es la verificacin en el cambio relativo de


f (x) entre iteraciones sucesivas. Aqu la convergencia se satisface si

f (x n ) - f (x n-1 )
e
{
mx f (x n ) ,10-10 } (2.8)

donde e representa un cambio fraccional predeterminado, por ejemplo, e = 0.001.


El cambio absoluto se divide entre el mximo entre la magnitud de f ( x n ) y
10-10; con esto se asegura que no habr divisin entre cero en el evento de que
f (x n ) 0 .

Valor absoluto en el valor del gradiente de la funcin objetivo

El criterio de convergencia final que puede usarse es la verificacin de las condi-


ciones necesarias para la optimalidad. En el caso de la minimizacin no restringi-
da o restringida en un intervalo y considerada en el presente captulo, este
criterio simplemente requiere que el gradiente de f (x) se verifique para ver si
cada componente est suficientemente cercana a cero para indicar que se
alcanz el mnimo. Este criterio se establece como sigue:

f (x n ) e
(2.9)

Aqu la convergencia se satisface si cada componente de f (x n ) es menor o igual


-4
en magnitud que una constante predeterminada e , por ejemplo, e = 10 . Este
criterio se emplea con facilidad cuando se usan mtodos con derivada o gradiente.
Cuando se usan mtodos sin derivada o gradiente, es preferible utilizar los criterios
antes vistos.

71
Aplicaciones de Programacin no Lineal

2.5 Mtodos con derivadas

Ahora se considerarn algunos procedimientos numricos simples que en forma


indirecta localizan el mnimo de una funcin f ( x ). Los mtodos indirectos son
aquellos que determinan los puntos extremos usando slo condiciones necesa-
rias, derivadas analticas y valores de la funcin.

Con estos mtodos, bsicamente se busca el mnimo de f ( x ) en un intervalo


(a, b) en el cual se sospecha que se encuentra dicho mnimo o bien partiendo de un
x0 dos de ellos y ,
solo punto o x0 x1 los cuales se encuentran suficientemente cer-
canos al punto mnimo x.* La bsqueda se hace determinando las races de la funcin

f '( x) = 0 (2.10)

en puntos elegidos dentro del intervalo, o bien mediante un punto o puntos


elegidos suficientemente cerca del ptimo ya que la idea es tratar de obtener el
objetivo de la manera ms eficiente posible. Una vez encontradas las races de la
funcin f '( x ), se usa el criterio de la segunda derivada para determinar si estos
valores extremos son mximos o mnimos. En caso de no poder determinar la
segunda derivada o que sta no exista, se utilizan puntos vecinos a los valores
extremos y se comparan los valores de la funcin para determinar la naturaleza
de los puntos extremos. Debe recordarse que adems de la unimodalidad y
continuidad en las funciones que se quieren optimizar, se requiere tambin la
derivabilidad de las mismas. A continuacin se vern algunos mtodos numricos
simples para resolver la ecuacin f '( x ) = 0 y se comentar el error y/o la ra-
pidez de convergencia de estos mtodos.

Mtodos que usan intervalos

En esta seccin se analizarn los mtodos que aprovechan el hecho de que una
funcin f '( x ) cambia de signo en la vecindad de una raz. stas tcnicas se
conocen como mtodos que usan intervalos porque se necesita de dos valores
iniciales para la bsqueda subsecuente de la raz. Como su nombre lo indica, estos
valores deben encerrar a la raz. Los mtodos descritos sobre este punto emplean
diferentes estrategias para reducir sistemticamente el tamao del intervalo tambin
conocido como intervalo de incertidumbre y as converger en la respuesta correcta.
Se ver que en el desarrollo de los mtodos que usan intervalos se supuso que en
un principio se conoce el intervalo que contiene a la raz.

72
Mtodos univariables

En la prctica, dicho intervalo normalmente debe localizarse primero mediante


clculos preliminares. Entre los mtodos simples disponibles para hacer esto se
encuentran los mtodos grficos y los mtodos de bsqueda incremental. Como
prembulo a los mtodos que usan intervalos, examinaremos brevemente los
mtodos grficos para obtener las graficas de las funciones y estimar sus races.

Mtodos grficos

Los mtodos grficos, adems de su utilidad para determinar valores iniciales,


tambin son tiles para visualizar las propiedades de las funciones y el
comportamiento de los mtodos numricos.

Un mtodo simple para obtener una aproximacin a la raz de la ecuacin


consiste en graficar la funcin derivada y observar dnde cruza el eje
x . Este punto, que representa el valor de x para el cual , proporciona una
aproximacin inicial de la raz y, en consecuencia, del punto extremo de la funcin
f ( x) . Las interpretaciones geomtricas, adems de proporcionar aproximaciones
iniciales de la raz, son herramientas importantes en la asimilacin de las
propiedades de las funciones pues prevn las fallas de los mtodos numricos. Por
ejemplo, las figuras 2.1 y 2.2 muestran algunas formas distintas en que la raz de
f '( x) = 0
puede a
encontrarse en un intervalo definido por un lmite inferior y
un lmite superior b. En general, si y tienen signos opuestos, esto
indica que existe un nmero impar de races dentro del intervalo definido por los
valores de a y b , pero si f '(a ) y f '(b) tienen el mismo signo, esto indica que
no hay races o que hay un nmero par de ellas entre los valores dados.

73
Aplicaciones de Programacin no Lineal

Mtodos de bsqueda incremental

Adems de verificar una respuesta individual, debe determinarse si se localizaron


todas las races posibles. Como se mencion antes, por lo general una grfica de
la funcin ayudar en esta tarea.

[ a, b ] = [0.2,1]

(b) [ a, b ] = [0,5]

Figura 2.1 En (a) y (b) existe un nmero impar de races si f '(a ) y f '(b)
tienen signos opuestos.

74
Mtodos univariables

(a) [ a, b ] = [-1,1.5]

(b) [ a, b ] = [-1,1.5]

Figura 2.2 (a) No hay o (b) existe un nmero par de races


si f '(a ) y f '(b) tienen signos iguales.

75
Aplicaciones de Programacin no Lineal

Otra opcin es incorporar una bsqueda incremental al inicio de la estrategia de


solucin. Esto consiste en empezar en una zona de la regin de inters y realizar
evaluaciones de la funcin con pequeos intervalos a lo largo de la regin. Cuan-
do la funcin cambia de signo, se supone que la raz cae dentro del incremento.
Los valores de x en los extremos del intervalo pueden servir de valores iniciales
para una de las tcnicas que usan intervalos y que se describirn ms adelante.

Un problema en potencia aunado a los mtodos de bsqueda incremental es


escoger la longitud del incremento. Si la longitud es muy pequea, la bsqueda
puede consumir demasiado tiempo; por otro lado, si la longitud es muy grande,
existe la posibilidad de que las races muy cercanas entre s pasen inadvertidas.
El problema se combina con la existencia de races mltiples. Aunque el empleo
de un incremento muy fino puede solucionar en parte el problema de la acotacin
de las races, debe aclararse que los mtodos sencillos, como el de la bsqueda
incremental, no son infalibles. Se debe ser prudente al utilizar tales tcnicas auto-
mticas con cualquier otra informacin que provea la visualizacin en la localiza-
cin de las races (puntos extremales).

Mtodo de biseccin

Cuando la primera derivada de la funcin objetivo esta disponible en los puntos


extremos de un intervalo de incertidumbre, es necesario evaluar la funcin en
slo un punto interior para reducir este intervalo. Esto se debe a que es posible
decidir si un intervalo acota un mnimo simplemente al observar los valores de la
funcin f a , fb y sus derivadas f a' , fb' en los puntos extremos a , b .

' '
Figura 2.3 Existe un mnimo si ambas pendientes en a y b satisfacen que: f a < 0 y fb > 0

76
Mtodos univariables

' '
Las condiciones por satisfacer en los puntos a y b son que f a < 0 y fb > 0
f a' < 0 fb' < 0 fb > f a
como se ilustra en la figura 2.3, o que , y como se mues-
tra en la figura 2.4,

Figura 2.4 Existe un mnimo si en los puntos a y b se satisface


que: f a' < 0 , f ' < 0 y fb > f a .
b

' '
o bien que f a > 0 , fb > 0 y fb < f a como se ilustra en la figura 2.5. El mto-
do de biseccin parte de un intervalo inicial de incertidumbre [ a0 , b0 ] en el cual
se encuentra una de las races de la funcin f '( x ) = 0 ; es decir, f '( a0 ) y
f '(b0 ) atienen signos opuestos. El mtodo consiste en evaluar la funcin
f '( x ) , acontina y derivable, en el punto medio del intervalo [ a0 , b0 ] , como
f '(a0 )
se ilustra en la figura 2.6. Si aay '( x0 )
faaaaaaatienen signos opuestos, se
[ a0 , b0 ] [ a0 , x0 ] ; si no se satisface la condicin de
reducir el intervalo deaaaaaaaaaaaaaaa
[ a0 , b0 ] [ x0 , b0 ]
los signos opuestos, entonces se reducir el intervalo deaaaaaaaaaaaaaaaya
que la raz buscada se encuentra dentro de este nuevo intervalo. Se repite
este proceso hasta lograr que el intervalo sea ms pequeo que una toleran-
cia prefijada, y el ltimo valor xnaaser una buena aproximacin de la raz.
Este procedimiento tiene la garanta de que converge a la raz hasta una pre-

77
Aplicaciones de Programacin no Lineal

cisin deseada una vez que la raz haya sido acotada y que la funcin sea
unimodal en el intervalo de inters. Si la funcin no es unimodal, la condicin
f '(a0 ) f '(b0 ) < 0 satisface siempre que el intervalo tenga un nmero impar
aaaaaaaaaaaaaaaaase
de races, en este caso, el mtodo de biseccin encontrar una de las races se-
paradas en el intervalo dado y tal vez ser no deseada.

Figura 2.5 Existe un mnimo si en los puntos a y b se satisface que:


f a' > 0 , fb' > 0 y fb < f a

78
Mtodos univariables

Figura 2.6 El proceso de decisin en el mtodo de biseccin.

El mtodo de biseccin tambin tiene problemas con las races dobles (o mlti-
ples) debido a que estas funciones tocan el eje x de manera tangencial en es-
tas races; otro defecto del mtodo de biseccin es que ste puede atrapar una
singularidad como si fuera una raz, debido a que dicho mtodo no reconoce la
diferencia entre una raz y una singularidad (un punto singular es aquel en el que
el valor de la funcin tiende a infinito, por ejemplo que la derivada no esta definida
en el punto extremo de una funcin continua). Sin embargo, una gran ventaja es
que tambin es til para funciones no analticas; en resumen, se puede decir que
es un mtodo robusto.

79
Aplicaciones de Programacin no Lineal

El algoritmo de biseccin puede establecerse como sigue:

Algoritmo 2.1 Mtodo de biseccin:

Dados e y una funcin f '( x) continua sobre el intervalo [ a0 , b0 ]


tal que

f '(a0 ) f '(b0 ) < 0

Para k = 0,1,2,... hasta donde se satisfaga, hacer:

ak + bk
1. xk =
2
2. Si bk - xk e entonces xk x* y terminar.

3. Si f '(ak ) f '( xk ) 0 entonces


ak +1 = ak bk +1 = xk

En otro caso,

ak +1 = xk , bk +1 = bk
Fin del si

4. Regresar al paso 1.

80
Mtodos univariables

Error lmite en el mtodo de biseccin

Sean an , bn y xn los n-simos valores calculados a partir de a0, b0 y xaares-


pectivamente; entonces

1
bn - an = (bn-1 - an-1 )
2

luego

1 1 1
bn - an = (bn-1 - an-1 ) = 2 (bn-2 - an-2 ) = 3 (bn-3 - an-3 ) =
2 2 2

por lo que

1
bn - an = (b0 - a0 ) , n 0 (2.11)
2n

donde (b0 - a0 ) representa la longitud del intervalo original con el que se inici.
*
[ an , xn ] o [ xn , bn,] se sabe que el error de orden n
Ya que la raz x esta entreaaaaaa
esta dado por

1
en = xn - x* xn - an = bn - xn = (bn-1 - an-1 )
2

Combinando este resultado con la ecuacin 2.11, se tiene

1
en = xn - x* (b0 - a0 )
2n (2.12)

81
Aplicaciones de Programacin no Lineal

*
Esta ecuacin expresa el error lmite y muestra que xn converge a x si n
Para mostrar cuntas iteraciones sern necesarias para que xn se aproxime a x*
con la precisin deseada, se necesita que

en e

donde e > 0 es el criterio de tolerancia deseado; entonces

1
(b0 - a0 ) e
2n

por tanto,

b - a0
ln 0
e
n
ln 2 (2.13)

que expresa el nmero mximo de iteraciones para reducir el intervalo inicial a la


precisin deseada.

Ejemplo 2.3 Cuntas iteraciones se requieren para resolver un problema dnde


[ a0 , b0 ] = [0,1] la tolerancia ?
el intervalo y e = 0.01

Solucin:

Aplicando (2.13)

b - a0
ln 0
e
n = 6.64
ln 2

82
Mtodos univariables

por lo que se requieren n = 7 iteraciones para reducir el intervalo original a me-


nos o igual que 0.01 de precisin.

Rapidez de convergencia del mtodo de biseccin

Tomando el error mximo posible de orden n como

1
en = xn - x* = (b0 - a0 )
2n
*
aplicando la ecuacin (2.3), el mtodo de biseccin converge linealmente a x
con rapidez de convergencia de b = 0.5. Estas predicciones tericas se pueden
verificar con los resultados de problemas resueltos y se dejan como ejercicio al
lector.

Finalmente, otros mtodos que usan intervalo son los mtodos de regula falsi y
regula falsi modificada por mencionar algunos y los cuales estn fuera del alcan-
ce de este libro.

Mtodos abiertos

En contraste con los mtodos anteriores, los mtodos abiertos se basan en fr-
mulas que requieren de un solo valor x o un par de ellos, pero que no necesa-
riamente encierran la raz. Como tales, algunas veces divergen y se alejan de la
*
raz x a medida que crece el nmero de iteraciones; sin embargo, cuando stos
convergen, en general lo hacen mucho ms rpido que los mtodos que usan
intervalos, entre estos mtodos se encuentra el mtodo de la secante, Newton-
Raphson, Newton modificado, Halley, Chebyshev, entre otros.

83
Aplicaciones de Programacin no Lineal

Mtodo de Newton-Raphson

En esencia, la tcnica de Newton-Raphson consiste en el uso de rectas tangen-


tes; es por esto que al mtodo se le conoce tambin como mtodo de la tangente.
Esta estrategia permite usar nicamente un punto inicial cercano a la raz, sin
requerir cosas adicionales dentro de la vecindad donde se encuentra.

Para la descripcin de este mtodo considrese las grficas (a) y (b) de la figura
2.7. Por lo general, se inicia con una estimacin de x*que se denota con x0; para
mejorar esta estimacin, considrese la lnea recta que es tangente a la grfica
*
de f '( x ) en el punto ( x0 , f '( x0 )) ; si x0 esta cerca de x , esta lnea tangente
f '( x)
casi coincidir con la grfica de para x
puntos alrededor x* Entonces
de .
*
si x1 es la raz de la lnea tangente, x1 ser casi igual a x . En general, para deter-
minar una frmula para xn+1 , considrese la pendiente de la lnea tangente.
Usando la derivada f ''( x ) de f '( x ) , se sabe del clculo elemental que la pen-
diente de la tangente en ( xn , f '( xn )) es f ''( xn ) ; esto gua a la ecuacin

0 - f '( xn )
tan qn = f ''( xn ) =
xn+1 - xn

y , en consecuencia,

f '( xn ) n = 0,1,2,...
xn+1 = xn - ,
f ''( xn ) (2.14)

84
Mtodos univariables

(a) El punto inicial x1 se encuentra a la derecha de x* .

(b) El punto xn-1 se encuentra a la izquierda de x* .

Figura 2.7 El proceso iterativo en el mtodo de Newton-Raphson.

85
Aplicaciones de Programacin no Lineal

El mtodo de Newton-Raphson utiliza en forma iterativa las rectas tangentes que


pasan por las aproximaciones consecutivas de la raz; adems, este mtodo re-
quiere una buena estimacin inicial, pues de otro modo la solucin iterativa puede
divergir o converger a una solucin irrelevante. La razn de convergencia itera-
tiva del mtodo de Newton-Raphson es alta cuando funciona. La desventaja de
este mtodo se da en el caso de abordar races mltiples cuya convergencia
suele ser lenta, o an en el caso de races simples se puede tener problemas
''( xn))
cuando f f(xn 0 0, lo que implica que la raz puede estar cerca de un punto
de inflexin. En resumen, se puede decir que la convergencia del mtodo es muy
dependiente de la naturaleza de la funcin y del valor de la aproximacin inicial.

Algoritmo 2.2 Mtodo de Newton-Raphson:

Dados , un punto inicial x0 y una funcin f (x) continua y diferenciable.


Para k = 0,1,2... hasta donde se satisfaga, hacer:

f '( xk )
1. xk +1 = xk -
f ''( xk )

2. Si xk +1 - xk e o f '( xk +1 ) e entonces xk +1 x* y terminar.

3. Regresar al paso 1.

Rapidez de convergencia del mtodo de Newton-Raphson

'( x) tiene derivadas continuas para todo xx en algn intervalo


Suponiendo que ff(x)
x* por el teorema de Taylor podemos escribir
alrededor de la raz x*,

1 * 2
( ) ( )
f ' x* = f '( xn ) + x* - xn f ''( xn ) +
2
(
x - xn ) f '''( xn ) +

86
Mtodos univariables

obsrvese que
obtener
( )
f ' x* = 0 por suposicin, y luego se divide por f ''( xn ) para

f '( xn ) 2 f '''( xn )
0=
f ''( xn )
( ) (
+ x* - xn + x* - xn ) 2 f ''( xn )
+

Como

f '( xn )
= xn - xn+1
f ''( xn )
entonces

2 f '''( xn )
0 = xn - xn+1 + x* - xn + x* - xn ( ) 2 f ''( xn )
+

Resolviendo para en+1 = xn+1 - x* se tiene

2 f '''( xn ) 2 f '''( xn )
(
en+1 = xn+1 - x* = xn - x* ) 2 f ''( xn )
(
+ xn - x* ) 2 f ''( xn )

f '''( xn )
donde M= . Tomando el lmite cuando n , resulta
2 f ''( xn )

lim
en+1
= lim
xn+1 - x*
=
( ) = M*
f ''' x*
en2 2 f ''( x* )
n n 2
xn - x*

en consecuencia si M * < el mtodo de Newton-Raphson converge cuadrti-


*
camente a x .

87
Aplicaciones de Programacin no Lineal

2.6 Mtodos sin derivada

Al resolver la ecuacin no lineal encontrando la raz, la meta fue determinar la


variable x que diera cero en la funcin f '( x ). La optimizacin de una sola varia-
ble tiene como objetivo encontrar el valor de x que generar un extremo, ya sea
ste un mximo o un mnimo. Como en la localizacin de races, la optimizacin
en una dimensin sin derivadas se puede dividir en mtodos de comparacin de
los valores de la funcin y en mtodos de interpolacin como se describir en las
prximas secciones. Por lo tanto, ahora la meta es encontrar el valor de la variable
x que minimiza a f ( x) restringida a un intervalo.

2.7 Intervalo de incertidumbre

Considrese el problema de hallar x* para

Minimizar f ( x)
sujeta a a0 x b0 (2.15)

*
Debido a que la posicin exacta del mnimo x de f ( x )sobre[ a0 , b0 ] no se conoce,
este intervalo se llama intervalo de incertidumbre. Durante el procedimiento de
bsqueda hacia el mnimo, pueden excluirse porciones de este intervalo que no
contengan al mismo; entonces se dice que se ha reducido el intervalo de incerti-
dumbre. En general,[ ai , bi ] para i = 0,..., n , se conoce como intervalo de incer-
*
tidumbre si un punto mnimo x cae en [ ai , bi ] aunque su valor exacto no se co-
nozca.

88
Mtodos univariables

Teorema 2.1

Sea f ( x ) una funcin estrictamente unimodal sobre el intervaloa[ a, b ] .


Sean x1 , x2 [ a, b ] de manera que x1 < x2 .

Si f ( x1 ) > f ( x2 ), entonces f ( z ) f ( x2 ) para todo z [ a, x1 ] , como


se ilustra en la figura 2.8.

Si f ( x1 ) f ( x2 ) , entonces f ( z ) f ( x1 ) , para todo z [ x2 , b ], como


se ilustra en la figura 2.9.

Del teorema que se acaba de enunciar, bajo unimodalidad estricta se tiene que si
f ( x1 ) > f ( x2 ) el nuevo intervalo de incertidumbre es [ x1, b;] pero si f ( x1 ) a f ( x2 )
f ( x1 ) f ( x2 ) entonces el nuevo intervalo de incertidumbre es [ a, x2 ] .

2.8 Razn de reduccin y eficiencia

Una medida de la eficacia de un mtodo de bsqueda por intervalos se conoce


RR propuesta por Wilde (1964), quin la defini como
como razn de reduccin, ,
n
la razn del intervalo original de incertidumbre al intervalo final despus de en-
sayos de bsqueda o evaluaciones de la funcin.

Figura 2.8 El Intervalo de incertidumbre es[ x1, b ]

89
Aplicaciones de Programacin no Lineal

Figura 2.9 El Intervalo de incertidumbre es [ a, x2 ]

I 0 b0 - a0
RR =
I n bn - an (2.16)

I0 In
donde , son los intervalos inicial y final de incertidumbre respectivamente, y
ai y bi para i = 0,..., n son los puntos extremos del i -simo intervalo. Como
puede observarse, RR es una funcin montonamente creciente con el nmero
n de ensayos.

90
Mtodos univariables

Wilde (1964) tambin defini la eficiencia h para n evaluaciones funcio-


nales como el recproco de RR

1 I
h = n
RR I 0

en este caso, h 0 como n . (2.17)

De aqu en adelante solo se usar el concepto de eficiencia.

2.9 Mtodos de comparacin de la funcin objetivo

Se considerarn ahora algunos procedimientos numricos que localizan en forma


directa el mnimo (en general, extremos) de una funcin f ( x ). Bsicamente, con
estos mtodos la bsqueda se hace evaluando la funcin en puntos elegidos
dentro de un intervalo [ a, b ] , donde se sabe que se encuentra el punto ptimo.
La idea general es obtener nuestro objetivo de la manera ms eficiente posible,
es decir, con el menor nmero de evaluaciones de la funcin. Una caracterstica
general de los mtodos de aproximacin es que el punto preciso en el cual ocurre
el ptimo nunca ser conocido, y lo mejor que puede obtenerse es determinar el
intervalo final de incertidumbre.

Por lo tanto, nuestro objetivo primordial es obtener el intervalo final de incerti-


dumbre para establecer la eficiencia h del mtodo aplicado. Este intervalo de
incertidumbre siempre prevalece debido a que tales mtodos calculan el valor
de la funcin nicamente en valores discretos de las variables independientes.
Para aplicar stas tcnicas, slo se necesita conocer el intervalo inicial de incer-
tidumbre I 0 = b0 - a0 y asegurarse de que f ( x ) sea unimodal en el intervalo
de inters. A continuacin se vern brevemente dos mtodos clsicos para esta-
blecer las ideas bsicas de los mtodos ms eficientes de bsqueda univariada
sin derivadas.

91
Aplicaciones de Programacin no Lineal

Mtodo de la seccin urea

Figura 2.10 El Intervalo de incertidumbre es[ a, x2 ], si f ( x1 ) < f ( x2 ) .

Refirindose a la figura 2.10 basada en la aplicacin del teorema 2.1, el intervalo


inicial de incertidumbre I1 = [ a , b ], es dividido por los puntos x1 y x2 en la primera
evaluacin, suponiendo que f ( x1 ) < f ( x2 ), el nuevo intervalo de incertidumbre
ser I 2 = [ a, x2 ], en la segunda evaluacin se coloca el punto x3 simtrico a x1 con
respecto a cualquiera de los extremos del intervalo[ a , x2 ] como se muestra en la
figura 2.10. Siguiendo esta estrategia con la aplicacin del teorema 2.1 en cada
evaluacin subsecuente, se desea mantener

I1 = I 2 + I 3
I2 = I3 + I4
Cuando se han realizado j evaluaciones, entonces por el mismo razonamiento,
se tiene

I j-1 = I j + I j +1 (2.18)

si adems se impone la condicin de mantener la razn de intervalos sucesivos


constante, es decir,

I1 I 2 I 3
= = == t
I2 I3 I4

92
Mtodos univariables

en general

I j-1 Ij I j +1
= = == t
Ij I j +1 I j +2 (2.19)

entonces, dividiendo la ecuacin (2.18) por I j se tiene

I j-1 I j +1
=1+
Ij Ij

y de la ecuacin (2.19),

1
t =1+ t 2 - t -1 = 0
t

Resolviendo la ecuacin cuadrtica se obtiene

1 5
t=
2

y tomando la raz positiva por razones obvias resulta

1+ 5
t= 1.618
2

la constante que representa a la razn de intervalos sucesivos.

93
Aplicaciones de Programacin no Lineal

El nombre de seccin aurea viene de la ecuacin (2.19); es decir, vemos que


I j-1 se divide en dos partes, de manera que: la razn del intervalo total entre la
mayor parte es igual a la razn de la mayor parte entre la menor parte, sta es
la llamada seccin urea de los antiguos griegos. Una vez determinado el valor
In
de la razn t, puede determinarse ahora el intervalo final de incertidumbre ;
obsrvese que la razn

I0
=t
I1
I 0 I 0 I1
= = t2
I 2 I1 I 2
I0
= t3
I3

I0
= tn
In

por lo tanto,

I n = t -n I 0 (2.20)

y por consiguiente, la eficiencia ser

1 n n
h = = (0.618) . (2.21)
t

94
Mtodos univariables

De esta manera, para reducir el intervalo final de incertidumbre al 1% del valor ori-
ginal son necesarias n = 9.56 10 iteraciones u 11 evaluaciones de la funcin.
Para entender el mecanismo de este mtodo, supngase que se tiene el intervalo
I 0 = (b0 - a0 ) como se muestra en la figura 2.11.
de incertidumbre ,
Si se consideran los resultados de las dos evaluaciones de la funcin, puede de-
terminarse que intervalo se investigar posteriormente. Este intervalo contendr
uno de los puntos previos y el prximo punto ser puesto de manera simtrica con
respecto a ste, y as se continuar sucesivamente.

Figura 2.11 Colocacin de los primeros dos puntos x1 y x2 en [ a0 , b0 ] .

Para iniciar, el primer punto se pone a una distancia

1
I1 = I0
t

95
Aplicaciones de Programacin no Lineal

de un extremo y el segundo a la misma distancia del otro extremo. Se evalan


f ( x1 ) y f ( x2 ) y se tienen dos casos por considerar:

f ( x1 ) < f ( x2 ) nuevo intervalo ser ,


1) si el (a, x2 ) vase la figura 2.11 consi-
derando el punto ms alto para 2 . x

( x1 ) > f ( x2 ) nuevo intervalo ser ,


2) si f el ( x1, b) vase la figura 2.11 con-
siderando el punto ms bajo para x2 .

Rapidez de convergencia

De la ecuacin (2.20), la razn entre intervalos sucesivos en trminos del


intervalo inicial ser

I k +1 t -k -1I 0 1
= -k =
Ik t I0 t

y, por lo tanto,

I k +1 1 1
lim = lim = = 0.618
k I k k t t

I 1
lim k + por consiguiente, el mtodo
Puede mostrarse sin dificultad que ;
k I 2
k
de la seccin urea converge linealmente con rapidez de convergencia b 0.618 .

96
Mtodos univariables

Algoritmo 2.3 Mtodo de la seccin urea:

Dada una funcin f ( x) continua sobre el intervalo [ a1, b1 ] y una tole-


rancia .

Calcular c1 = a1 + (1 - 1/ t )(b1 - a1 ) , d1 = b1 - (1 -1/ t )(b1 - a1 ) ,


f c = f (c1 ) , f d = f (d1 )
Para k = 1,2,3,... hasta donde se satisfaga, hacer:
1. Si fc < f d , entonces

tomar ak +1 = ak , bk +1 = d k , d k +1 = ck ,
ck +1 = ak +1 + (1 -1/ t )(bk +1 - ak +1 ) , f d = f c ,

f c = f (ck +1 )

En otro caso tomar

ak +1 = ck , bk +1 = bk , ck +1 = d k ,

d k +1 = bk +1 - (1 -1/ t )(bk +1 - ak +1 ) , f c = f d ,
f d = f (d k +1 ) .

Fin si

2. Si bk +1 - ak +1 e , entonces tomar

x* = ck +1 si fc < f d
o x* = d k +1 si f d < f c y terminar.

Fin si

3. Tomar k = k + 1 y regresar a 1.

97
Aplicaciones de Programacin no Lineal

Por ltimo, existe una diversidad de mtodos que comparan los valores de la
funcin objetivo y que usan el concepto de intervalo de incertidumbre como los
mtodos de bsqueda uniforme, dicotmico secuencial, triseccin, Fibonacci, etc.

2.10 Mtodos de interpolacin

En el mtodo anterior se trat de determinar un intervalo pequeo en el cual se


localiz el mnimo de la funcin. En el prximo mtodo se adoptar un enfoque
diferente. La clase de algoritmos conocidos como mtodos de interpolacin poli-
nomial aproximan la funcin objetivo en un intervalo que se sabe acota un mnimo
local por un polinomio cuadrtico o cbico que tienen los mismos valores de la
funcin y quizs del gradiente en puntos particulares del intervalo. Luego, el m-
nimo del polinomio se utiliza para predecir el mnimo de la funcin objetivo y, de
hecho, aqul reemplaza uno de los puntos previos guiando a un nuevo conjunto
de puntos dispuestos en un intervalo menor al original, que posteriormente aco-
tar el mnimo de la funcin.

Se comienza por estudiar un mtodo que usa slo valores de la funcin.

Mtodo de interpolacin cuadrtica de Powell

Supngase que se conocen los valores de una funcin f ( x ) en tres puntos dis-
tintos a , b y c (los extremos y un punto del intervalo de incertidumbre) como
f a = f (a ) , fb = f (b) y f c = f (c) respectivamente; entonces se puede a-
proximar f ( x ) por una funcin cuadrtica de la forma

p ( x) = a x 2 + b x + g (2.22)

donde a , b y g estn determinados por las ecuaciones

a 2 a 1a p f

2 a a
b b 1b = pb = fb
2

c 1 g pc f c
(2.23)
c

98
Mtodos univariables

En realidad no se necesita la forma explcita de p ( x ) ya que slo es de inters


*
la posicin de su mnimo x . Resolviendo para a, b y g se obtiene

(c - b) f a + (a - c) fb + (b - a) fc
a=
D

b=
(b 2 - c 2 ) f a + (c 2 - a 2 ) f b + ( a 2 - b 2 ) f c
D
bc (c - b) f a + ac (a - c) fb + ab (b - a ) f c (2.24)
g=
D

donde D = (a - b)(b - c )(c - a ) . Claramente, p ( x) tendr un mnimo en

b
x* = - si, a>0
2a

es decir,

p '( x) = 2a x + b = 0 b
da x* = -
2a

De este modo, la posicin del mnimo de f ( x) se aproxima con

*
x =
2
( 2
) 2
( 2
1 b - c f a + c - a fb + a - b f c )2 2
( )
2 (b - c) f a + (c - a) fb + (a - b) fc (2.25)

99
Aplicaciones de Programacin no Lineal

*
Observe que x cae en [ a, b ] si f c < f a y f c < fb . La funcin objetivo se evala en
x* y uno de los puntos extremos a o b debe reemplazarse por x* para empezar
la prxima iteracin de manera que los 3 nuevos puntos estn dispuestos sobre
f ( x) La figura 2.12 muestra que no siempre
un intervalo que acote el mnimo de .
el punto con el mayor valor de la funcin es el apropiado para descartarse.

Puede mostrarse que el orden de convergencia del mtodo de interpolacin cua-


drtica es de 1.3 (Luenberger, 1973). Esto es mejor que la convergencia superli-
neal pero no tan rpida como la de segundo orden. En el caso de que la tolerancia
sea muy pequea, entonces a, b , c y f a , fb , f c , estarn muy cerca unos de o-
tros y la ecuacin (2.25) puede fallar.

Figura 2.12a Se descarta el punto con mayor valor de la funcin.

100
Mtodos univariables

Figura 2.12b No se descarta el punto con mayor valor de la funcin.

101
Aplicaciones de Programacin no Lineal

Algoritmo 2.4 Mtodo de interpolacin cuadrtica:

Dada una funcin f ( x) continua y los valores a1 , b1, c1, ex y e f .

Calcular f a = f (a1 ) , fb = f (b1 ) y fc = f (c1 ) .


Para k = 1,2,3,... hasta donde se satisfaga, hacer:

1. x =*
2
( 2
)2 2
( 2
) 2
(
1 bk - ck f a + ck - ak fb + ak - bk f c f = f x*
, x
) ( )
2 (bk - ck ) f a + (ck - ak ) fb + (ak - bk ) f c

2. Si x* < ck y f x < fc , entonces

tomar ak +1 = ak , bk +1 = ck , ck +1 = x* , fb = f c , f c = f x .
Pero si x* > ck y f x > fc , entonces

tomar ak +1 = ak , bk +1 = x* , ck +1 = ck , fb = f x .
Pero si x* < ck y f x > fc , entonces

tomar ak +1 = x* , bk +1 = bk , ck +1 = ck , f a = f x .
En otro caso,

tomar ak +1 = ck , bk +1 = bk , ck +1 = x* , f a = f c , fc = f x .
Fin si

3. Si bk +1 - ak +1 ex o f (ck ) - f (ck +1 ) e , entonces


f (ck ) f
*
tomar x = ck +1 y terminar.

Fin si

4. Tomar k = k + 1 y regresar a 1.

102
Mtodos univariables

Finalmente, se pueden estudiar otros mtodos de interpolacin de mayor orden,


por ejemplo, para usar una interpolacin cbica se pueden desarrollar dos m-
todos alternativos, el primero usando valores de la funcin objetivo en donde se
requiere de cuatro puntos establecidos en el intervalo de incertidumbre, y el se-
gundo, usando dos valores de la funcin objetivo y dos valores de la derivada de
la funcin, este ltimo mtodo se conoce como mtodo de interpolacin cbica de
Davidon y ste tiene un orden de convergencia cuadrtico.

Problemas

Para cada uno de los siguientes problemas encuentre la solucin numricamente


con cualquiera de los mtodos propuestos y comprela con el valor de la solucin
exacta (analtica si existe).

2.1 El alcance R de un proyectil lanzado con velocidad inicial v 0 y con un n-


( )
gulo respecto de la horizontal es R ( ) = v02 sen 2 / g , donde g=9.81 m/s2
es la aceleracin de la gravedad. Encuentre el ngulo que produce alcance
mximo, si v0 = 40 m/s.

2.2 Se lanza un cuerpo hacia arriba con velocidad inicial 40 m/s, Calcule cul
g 10 m/s? La
es la mxima altura que alcanzar si la aceleracin gravitacional =
ecuacin que describe la altura en funcin del tiempo es:

g 2
h (t=
) vt t
2

2.3 La energa potencial V ( r ) de un gas, esta dada por la expresin del poten-
cial de Lennard-Jones,

12 6
V (r ) =
4
r r
6 12 63 6 12 6
6.19
= x 10
= kJ (A)V (/donde
3 6
)=
rmol 4
4
,A son
6.19
=constantes, V (/rmol
x 10 kJ (A) 6
tales )que
4 4,
= > 0.
r r r r
Para argn A
= 6.19
= x 10 kJ (A) / mol 4 y
3 6 6


=B 9.58
= x 106 kJ (A )12 / mol 4 12

103
Aplicaciones de Programacin no Lineal

a) Tiene el potencial de Lennard-Jones V ( r ) un punto o puntos estacionarios?


Si es as, localcelo(s).

b) Identifique la naturaleza del punto o puntos estacionarios (mnimo, mximo,


etc.)

c) Cul es la magnitud de la energa potencial en los puntos estacionarios?

2.4 La trayectoria de una pelota se calcula por medio de la ecuacin

g
y0 + ( tan 0 ) x
y= x2
2v0 cos 2 0

donde y = altura (m), 0 = ngulo inicial (radianes), v0 = velocidad inicial (m/s),


g = constante gravitacional = 9.81 m/s2, y y0 = altura inicial (m). Use el mtodo
de la bsqueda de la seccin dorada para determinar la altura mxima dado que
y0 = 1 m, v0= 25 m/s y 0 = 50. Haga iteraciones hasta que el error aproximado
est por debajo del 1%, con el uso de valores iniciales de a = 0 y b = 60 m.

2.5 Hay que separar una mezcla de benceno y tolueno en un reactor flash. A qu
temperatura deber operarse el reactor para obtener la mayor pureza de tolueno
xT La presin en el reactor es de 800 mm Hg. Las
en la fase lquida (maximizar )?
unidades en la ecuacin de Antoine son mm Hg y C para presin y temperatura,
respectivamente.

xB Psat , B + xT Psat ,T =
P

1211
log10 ( P=
sat , B ) 6.905
T + 221
1344
log10 ( P=
sat ,T ) 6.953
T + 219

104
Mtodos univariables

2.6 A se convertir en B en un reactor con agitacin. El producto B y la sustancia


sin reaccionar A se purifican en una unidad de separacin. La sustancia A que no
entr en la reaccin se recicla al reactor. Un ingeniero de procesos ha encontrado
que el costo inicial del sistema es una funcin de la conversin, x . Encuentre la
conversin que dar el sistema de menor costo. C es una constante de propor-
cionalidad.

1 0.6 0.6
1
=Costo C + 6
(1 x ) x

105
CAPTULO 3
Mtodos multivariables
3.1 Introduccin

En este captulo se considerar el problema de minimizar una funcin f (x) de


varias variables. Los mtodos que se describirn ms adelante procedern en la
siguiente forma: dado un vector x, se determina un vector de direccin d elegido en
forma adecuada; luego f (x) se minimiza desde x en la direccin de d por una de
las tcnicas ya revisadas en el captulo anterior, lo cual se conoce como bsqueda
lineal. En lo que sigue del resto de este texto, se requerir resolver un problema de
bsqueda lineal de la forma

Minimizar f (x + ad)
sujeta a aI (3.1)

donde I = , I = {a : a 0} , I = {a : a a b} , con el fin de evitar


los mtodos con tamao de paso discreto como inicialmente fueron diseados, ya
que presentan una convergencia muy lenta.

2 2 2
Ejemplo 3.1 Dada la funcin f (x) = ( x1 -1) + ( x2 - 2) + ( x3 - 3) y el punto
T
x = (4,3,2) , encuentre a* para minimizar f (x + ad) en la direccin d = (1,1,1)T.

109
Aplicaciones de Programacin no Lineal

Solucin:

Se tiene que

4
1 4 + a
x + ad = 3 + a 1 = 3 + a

2 1 2 + a

y sustituyendo en la funcin objetivo resulta

2 2 2
f (x + ad) = (4 + a -1) + (3 + a - 2) + (2 + a - 3)
2 2 2
= (a + 3) + (a + 1) + (a -1) = 3a 2 + 6a + 11 = f (a )

derivando f (x + ad) con respecto a a se tiene.

f '(a ) = 6a + 6 = 0 a* = -1

( )
Por lo tanto, f x + a*d = 8 es el valor mnimo; cualquier otro valor de a incre-
menta el valor de f (x + ad ) .

La funcin f (x + ad ) = f (a ) es una funcin de una sola variable y puede


optimizarse numricamente con cualquier tcnica vista en los captulos anterio-
res, sobre todo cuando no se puede resolver en forma analtica el problema si la
funcin es altamente no lineal.

110
Mtodos multivariables

3.2 Mtodo de comparacin de la funcin objetivo

Se ha dedicado mucho esfuerzo en desarrollar mtodos de bsqueda directos


para localizar el mnimo de una funcin de n variables. Recurdese que un mto-
do directo de bsqueda es aquel que usa nicamente valores de la funcin.

En esta seccin, se considerar con detalle slo un mtodo; la experiencia ha


mostrado que este mtodo es robusto y capaz de aplicarse a una gran variedad
de problemas de pequea escala. Para ste mtodo se han construido un gran
nmero de funciones que, dada su naturaleza, proveen severas pruebas para el
mismo. Ejemplos de algunas de ellas son:

2
(
1). La funcin de Rosenbrock: f (x) = 100 x2 - x12 ) 2 T
+ (1 - x1 ) con x* = (1,1) ,
la cual se ilustra en la Figura 3.1.

2). La funcin de Powell:

2 2 4 4
f (x) = ( x1 + 10 x2 ) + 5( x3 - x4 ) + ( x2 - 2 x3 ) + 10( x1 - x4 )

T
con x* = (0,0,0,0) .

3). La funcin de Cragg- Levi:

4
(
f (x) = e x1 - x2 ) 6
+ 100( x2 - x3 ) + tan 4 ( x3 - x4 ) + x18 + ( x4 -1)
2

T
con x* = (0,1,1,(1 np )) .

111
Aplicaciones de Programacin no Lineal

T
Figura 3.1 Contornos de la funcin de Rosenbrock, x* = (1,1) .

Mtodo de Nelder y Mead (o del Poliedro Flexible)

El mtodo de Nelder y Mead (1964) es una modificacin del mtodo simplex de


Spendley, Hext y Himsworth (1962). Este mtodo data desde 1964. Un conjun-
to de (n + 1) puntos mutuamente equidistantes en un espacio n -dimensional
se conoce como un simplex o poliedro regular. Esta figura sirve de fundamento
en el mtodo de Spendley, Hext y Himsworth (1962). De esta manera, en dos
dimensiones el simplex es un tringulo equiltero y en tres dimensiones es un
tetraedro regular. La idea del mtodo es comparar los valores de la funcin en los
(n +1) vrtices del simplex y moverlos hacia el punto ptimo en cada estado.
Nelder y Mead (1964) propusieron varias modificaciones al mtodo que permi-
ten a los simplejos formar figuras no regulares. El resultado es un mtodo di-
recto de bsqueda muy robusto si el nmero de variables no excede de 5 6.
El movimiento del simplejo en este mtodo se realiza por la aplicacin de tres
operaciones bsicas: reflexin, expansin y contraccin. La idea fundamental de
estas operaciones resultar clara cuando se consideren los pasos del siguiente
procedimiento:

112
Mtodos multivariables

Dada una funcin f (x) , los (n+1) puntos x1, x 2 ,, x n+1 y la tolerancia e .

Se calculan f1 = f (x1 ) , f 2 = f (x 2 ) ,, f n+1 = f (x n+1 ) .

1) Se procede a buscar el valor ms grande de la funcin f h = f ( x h ) , el si-


( )
guiente valor superior f g = f x g y el valor ms pequeo fl = f ( xl ) , es decir,

f (xl ) = mn f (xi )
1in +1

f (x h ) = mx f (xi )
1in +1

y los correspondientes puntos xh , x g y xl {x1, x 2 ,, x n+1} .

2) Se determina el centroide de todos los puntos exceptuando x h . Sea este punto


x0 y se evala f 0 = f ( x 0 ) , donde

n+1
1
x0 =
n i=1
xi
ih (3.2)

3) Como parece razonable tratar de moverse lejos de x h . Esto se hace reflejan-


x h x0
do en para x r f r = f (x r ) La reflexin se ilustra en la figura 3.2
hallar y .
para el caso de una funcin de dos variables.

113
Aplicaciones de Programacin no Lineal

Figura 3.2 Reflexin de xh a travs de x0 para obtener xr .

Sea a>0 el factor de reflexin; se busca xr de manera que

x r - x0 = a (x0 - x h ) (3.3)

es decir,

x r = (1 + a ) x0 - ax h (3.4)

4) Se compara fr con fl .

114
Mtodos multivariables

a) Si f r < fl , se obtuvo el valor ms pequeo de la funcin. La direccin desde


x0 hasta x r parece ser buena para moverse a lo largo de ella. Por lo tanto, se
xe f e = f (xe ) La figura 3.3
hace una expansin en esta direccin para hallar y .
ilustra la expansin del simplex:

Figura 3.3 Expansin de x r a travs de x0 para obtenerxe .

Con un factor de expansin g >1 se tiene

xe - x0 = g (x r - x0 ) (3.5)

es decir,

xe = g x r + (1 - g ) x0 (3.6)

115
Aplicaciones de Programacin no Lineal

i) Si f e < fl , se hace x h = x e y se prueban los (n + 1) puntos del simplex


para la convergencia hacia el mnimo (paso 8). Si se ha convergido, se termina el
proceso; en caso contrario, se regresa al paso 2.

ii) Si f e fl , se abandona x e debido a que se ha hecho un movimiento muy


lejos en la direccin de x 0 a x r . En su lugar, se hace x h = x r , se prueba la
convergencia y si no se satisface, se regresa al paso 2.

b) Si a) no se satisface, es decir, si f r > fl pero f r f g , x r es una mejora


sobre los dos peores puntos del simplex y se hace x h = x r , se prueba la conver-
gencia y si no se satisface, se regresa al Paso 2.

c) Si f r > fl y f r > f g , se procede al paso 5.

5) Se comparan fr y fh .

a) Si f r < f h , se hace x h = x r y f h = f r . Recurdese que f r > f g (paso


4c).

Luego se procede al paso 5b. En caso contrario, es decir, si fr > fh se procede


directamente a la contraccin (paso 5b).

b) Si f r < f h , se hace x h = x r y f h = f r . Se realiza el proceso de contrac-


cin con un factor 0 < b < 1, es decir, se determina x c de

xc - x0 = b (x r - x0 ) (3.7)

es decir,

xc = b x r + (1 - b ) x0 (3.8)

116
Mtodos multivariables

la figura 3.4 ilustra este proceso.

En caso contrario, es decir, si fr > fh se procede directamente a la contraccin


y se determina x c de

xc - x0 = b (x h - x0 ) (3.9)

es decir,

xc = b x h + (1 - b ) x0 (3.10)

la figura 3.5 ilustra este caso.

6) Se comparan fc y fh .

a) Si f c < f h , se hace x h = x c y f h = f c , se verifica la convergencia y si no


se satisface, se regresa al paso 2.

Figura 3.4 Contraccin de x r a travs de x0 para obtener xc ( b > 0 ).

117
Aplicaciones de Programacin no Lineal

Figura 3.5 Contraccin de x r a travs de x0 para obtener xc ( b <0 ).

b) Si f c > f h , parecera que todos los esfuerzos por hallar un valor de f < fh
fallaron, de manera que se va al paso 7.

7) En este paso, se reduce el tamao del simplex dividiendo en dos la distancia


de cada punto del simplex, desde xl , el punto generador del mnimo valor de la
funcin. As, xi se reemplaza por

1
xi = xl + ( xi - xl ) (3.11)
2

es decir ;

1
xi = ( xi + xl ) (3.12)
2

118
Mtodos multivariables

luego se calcula fi = f ( xi ) para i = 1,2,...,(n + 1) , se prueba la convergen-


cia y si no se satisface, se regresa al paso 2. En la figura 3.6 se ilustra este proceso.

Figura 3.6 Contraccin de todo el simplex y una nueva reflexin.

8) La prueba de convergencia se basa en la desviacin estndar de los (n + 1)


valores de la funcin, de manera que

s <e (3.13)

donde e es un valor pequeo predeterminado. El valor de s se determina de:

n+1
1 2
2
s =
n + 1 i=1
(fi - f )
(3.14)

119
Aplicaciones de Programacin no Lineal

donde

n+1
1
f =
n + 1 i=1fi (3.15)

Si s < e , todos los valores de la funcin estn muy cercanos y de esta manera
se puede decir con optimismo que todos los puntos estn muy cerca del mnimo
xl . Este criterio de convergencia suena razonable, aunque Box (1965) sugiere
que ste se tome en consideracin como una prueba de seguridad. Por ltimo,
Nelder y Mead (1964) recomiendan a = 1.0 , b = 0.5 y g = 2.0 como valo-
res de los factores de reflexin, contraccin y expansin respectivamente, reco-
mendacin basada en ensayos con muchas combinaciones diferentes y donde
parece que el mtodo trabaja con eficiencia. Paviani (1969) recomend como
eleccin de g y b los siguientes rangos de valores:

2.8 g 3.0
0.4 b 0.6

La eleccin del simplex inicial es arbitraria. Se da un punto x1 y luego se generan


los puntos restantes de acuerdo con

xi +1 = x1 + he i , i = 1,..., n (3.16)

donde h es una longitud de paso arbitraria y e i es un vector unitario en la direc-


cin de la i -sima coordenada.

120
Mtodos multivariables

Algoritmo 3.1 Mtodo de Nelder y Mead:

Dada una funcin f (x) , un punto inicial x1 , la tolerancia e , los pa-


a expansin ,
rmetros de reflexin , d una longitud de
b contraccin y
paso arbitraria h.

1. Generar los puntos del simplex inicial:

xi +1 = x1 + he i , para i = 1,..., n ,

donde e i son los vectores unitarios a lo largo de los ejes de coordena-


das.

2. Calcular:

fi = f (xi ) , para i = 1,..., n + 1 .

Para k = 1, 2, 3, ..., hasta donde se satisfaga, hacer:

3. Identificar: xl , x g y x h {x1, x 2 ,, x n+1} tal que

f (xl ) = mnimo f (xi ) ,


1in +1

f (x g ) = mximo f (xi ) ,
1in +1
ih

f (x h ) = mximo f (xi ) .
1in +1

121
Aplicaciones de Programacin no Lineal

4. Calcular el centroide:

n+1
1
x0 =
n x j
j =1
j h

5. Calcular x r = (1 + a ) x0 - ax h ; f r = f (x r ) .

6. Si f r < fl , entonces

Calcular xe = d x r + (1 - d ) x0 ; f e = f (xe ) .
Si f e < f r , entonces
tomar x h = xe ; f h = f e ;
en otro caso,

tomar xh = xr ; fh = fr .
Fin del si.

En otro caso

Si f r f g , entonces
tomar xh = xr ; fh = fr .
En otro caso

Si fr < fh , entonces

calcular xc = b x r + (1 - b ) x0 ; f c = f (xc ) .

122
Mtodos multivariables

Si f r < fc , entonces

xi + xl
xi = ; f i = f ( xi ) .
2

En otro caso,

tomar x h = xc ; f h = f c .
Fin del si.

En otro caso,

calcular xc = b x h + (1 - b ) x0 ; f c = f (xc ) .
Si f h < f c , entonces

xi + xl
xi = ; f i = f ( xi ) .
2

En otro caso,

tomar x h = xc ; f h = f c .
Fin del si.
Fin del si.
Fin del si.
Fin del si.

n+1
1
7. Calcular f =
n + 1 i=1
fi .

123
Aplicaciones de Programacin no Lineal

n+1
1 2
8. Calcular
2
s =
n + 1 i=1( fi - f ) .

9. Si s e, entonces

tomar xl = x* y terminar.

Fin del si.

10. Tomar k = k + 1 y regresar a 3.

2 2
Ejemplo 3.2 Halle el mnimo de f (x) = 3( x1 -1) + 10( x2 - 2 x1 ) usando el al-
T
goritmo 3.1 e iniciando en x = (0,3) , con e = 0.01 .

Solucin:

( )
Usando el algoritmo 3.1 el mnimo fue x*T = (1.00,2.00) , donde f x* = 0.00 .
Este mtodo lleg rpido a la solucin; lo hizo en la primera iteracin, pero como
el simplex era todava muy grande el criterio de convergencia no se pudo satisfa-
k = 10 La figura 3.7 muestra la evolucin del
cer sino hasta la dcima iteracin .
simplex de este ejemplo hasta el punto 7.

124
Mtodos multivariables

Figura 3.7 Sucesin de 8 poliedros flexibles obtenidos en la


minimizacin.

3.3 Mtodos con derivadas o gradientes

En contraste con la seccin anterior, que describe un mtodo para resolver el


problema

Minimizar f (x)
con x Rn (3.17)

por una estrategia libre de derivadas, es decir, estrategia de bsqueda directa,


en lo que sigue de este captulo se estudiarn mtodos que usan gradientes o
derivadas de segundo orden, ms conocidos como mtodos indirectos de optimi-
zacin. Como una regla general, en la solucin de los problemas de programa-
cin no lineal sin restricciones los mtodos de gradiente o derivadas de segundo

125
Aplicaciones de Programacin no Lineal

orden convergen ms rpido que los mtodos de bsqueda directa. Sin embargo,
en la prctica los mtodos con derivadas tienen dos problemas principales para
su realizacin: primero, en los problemas con un nmero modestamente grande
de variables resulta muy laborioso o imposible dar las funciones analticas para
las derivadas necesarias en un algoritmo de gradiente o de segundas derivadas;
aunque la evaluacin de las derivadas por esquemas de diferencias finitas puede
sustituir el clculo de las derivadas analticas, no se evita la generacin del error
numrico por el uso de estas aproximaciones. Segundo, en principio tambin es
posible usar la manipulacin simblica para desarrollar las derivadas analticas,
pero esto requiere una cantidad relativamente grande de preparacin del pro-
blema por parte del usuario antes de que pueda desarrollarlo en un algoritmo
comparado con las tcnicas de bsqueda directa. Dadas las observaciones an-
teriores, se considerar cmo resolver el problema dado por la ecuacin (3.17)
por algoritmos que hacen uso de primeras y segundas derivadas parciales de
f (x)

3.4 Tcnicas de diferencias finitas

La disponibilidad de las derivadas de la funcin objetivo es de gran importancia en


los mtodos que se van a considerar. Con frecuencia se torna laborioso calcular
analticamente el gradiente o la matriz hessiana de una funcin compleja. En tales
casos, es posible aproximar el gradiente o la matriz hessiana de la funcin por es-
quemas de diferencias finitas. Estos procedimientos se describirn brevemente.

Se asume que la funcin es continua y diferenciable; entonces, de acuerdo con la


expansin en serie de Taylor de una funcin de varias variables, para una pertur-
di
bacin escalar suficientemente pequea .

1
f (x + diei ) = f (x) + dieTi f (x) + di2eTi H (x)ei +
2
1
= f (x) + di gi (x) + di2hii (x) + (3.18)
2

126
Mtodos multivariables

donde ei es el vector unitario en la direccin de la i -sima coordenada, gi ( x)


es la i-sima componente de f (x) y hii es el ii -simo elemento de H (x) . De
este modo, al aproximar gi (x) por gi (x) se obtiene la aproximacin por diferen-
cias finitas hacia delante que es exacta solo para funciones lineales

f (x + diei ) - f (x)
gi (x) =
di (3.19)

donde se ignoraron los trminos de segundo orden y superiores en di de la serie


de Taylor. En forma anloga, de

1
f (x - di ei ) = f (x ) - di eTi f (x ) + di2eTi H (x ) ei +
2
1
f (x - di ei ) = f (x ) - di gi (x ) + di2 hii (x ) + (3.20)
2

se obtiene el esquema de diferencias finitas hacia atrs dado por

f (x) - f (x - diei )
gi (x) =
di (3.21)

y de esta expresin y la anterior (3.19) se puede obtener el esquema de las dife-


rencias finitas centrales dado por

f (x + diei ) - f (x - diei )
gi (x) =
2di (3.22)

127
Aplicaciones de Programacin no Lineal

En realidad, la aproximacin en diferencias centrales ignora slo trminos de ter-


cer orden y superiores en di de la serie de Taylor y es, por lo tanto, exacta para
funciones cuadrticas. Por supuesto, el incremento en la precisin es a expensas
de realizar el doble de evaluaciones funcionales ms que la tcnica de las dife-
rencias hacia delante o hacia atrs.

El problema prctico en la aplicacin de estas ideas es la eleccin del valor de


d
suficientemente pequeo de manera que los diferentes trminos de error que-
den balanceados. Varias libreras de software comercial proveen la rutina para
calcular un valor adecuado de d . Normalmente se usa un valor pequeo, como
d = e , donde e es la precisin relativa de la computadora en cuestin. Cuando
las primeras derivadas estn disponibles en forma analtica, es posible estimar
la matriz hessiana completa. La expansin en serie de Taylor para el vector gra-
diente es

f (x + diei ) = f (x) + di H (x)ei +


= f (x) + dihi (x) + (3.23)

donde hi ( x) es la i -sima columna de H (x) . Por lo tanto, la aproximacin


(x)
h hi (x) i
en diferencias finitas hacia delante de la -sima
i H (x)
columna de ,
esta dada por

(x) = f (x + diei ) - f (x)


h i
di (3.24)

que es exacta para funciones cuadrticas. Las aproximaciones en diferencias


finitas hacia atrs y centrales son

(x) = f (x) - f (x - diei )


h (3.25)
i
di

(x) = f (x + diei ) - f (x - diei )


h i
2di (3.26)

128
Mtodos multivariables

respectivamente. La aplicacin repetida de la ecuacin (3.26) para i = 1,2,..., n ,


donde n es el nmero de variables, permite construir una aproximacin H (x) de la
matriz hessiana H (x) . En general, esta matriz no ser exactamente simtrica debido
1 T
a los errores introducidos en los clculos, y entonces ser mejor usar 1/2 H
(x) . 2
(
+ H en )
lugar de H

Ejemplo 3.3 Evaluacin numrica del gradiente.


2 T
Evale el gradiente de la funcin f (x) = x1 + x2 en el punto x 0 = (2,1) por
las aproximaciones en diferencias finitas y compare stas con el gradiente anal-
tico. Use una perturbacin del 1% en las variables independientes.

Solucin:

El gradiente analtico de la funcin es

2 x
f (x) = 1
1

evaluado en x0 da

4
f (x 0 ) =
1

Al 1% de cambio en las variables se tiene d1 = 0.02 y d2 = 0.01 . Los gradien-


tes numricos obtenidos aplicando las ecuaciones (3.19), (3.21) y (3.22) son


f (x ) = 4.02
, f (x ) = 3.98
y f (x ) = 4.00

0 1.00 0 1.00 0 1.00

respectivamente, como puede verificar el lector.

129
Aplicaciones de Programacin no Lineal

Observe que para la funcin dada los tres mtodos dan una muy buena aproxi-
macin al gradiente analtico. El mtodo por diferencias centrales da lo mismo
que el gradiente analtico, lo cual comprueba que esta aproximacin es exacta
para funciones cuadrticas. Observe tambin que los tres mtodos son iguales en
g2 (x0 ); esto se debe a que la funcin es lineal en x2, o sea que tambin se com-
prueba que la diferenciacin numrica siempre da gradientes exactos en funcio-
nes lineales.

Ejemplo 3.4 Evaluacin numrica de la matriz hessiana.


3 2
Evale la matriz hessiana de la funcin f (x) = x1 + 2 x2 - 2 x1 - 3 x2 en el
T
x0 = (2,1)
punto por las aproximaciones en diferencias finitas y compare stas
con la matriz hessiana analtica. Use una perturbacin del 1% en las variables
independientes.

Solucin:

El gradiente y la matriz hessiana analticos de la funcin son

3 x 2 - 2 6 x 0
f (x) = 1 y H (x) = 1
4 x2 - 3 0 4

evaluada la matriz en x0 da

12 0
H (x0 ) =
0 4

130
Mtodos multivariables

Al 1% de cambio en las variables se tiene d1 = 0.02 y d2 = 0.01 . Las matri-


ces hessianas numricas de la funcin por las tres aproximaciones aplicando las
ecuaciones (3.24), (3.25) y (3.26) dan como resultado


(x ) = 12.06 0.00 , H
H (x ) = 12.0 0.0
(x ) = 11.96 0.00 y H
0
0.00 4.00 0
0.00 4.00 0
0.0 4.0

respectivamente, como puede verificar el lector.

Observe que para la funcin dada, los tres mtodos dan una muy buena aproxi-
macin a la matriz hessiana analtica. De nuevo el mtodo por diferencias centra-
les da lo mismo que la hessiana analtica.

3.5 Direcciones conjugadas

En el mtodo de Newton ser interesante observar que, en contraste con el m-


todo de Cauchy (que se ver ms adelante), la direccin de bsqueda no es
-f (x k ) sino -H (x k )-1 f (x k ) si se toman en cuenta las segundas derivadas.
Los mtodos de Fletcher-Reeves y Davidon-Fletcher-Powell (DFP) tra-
tan de obtener la mejor bsqueda investigando en la direccin d k y
-G (x k )f (x k ) respectivamente en la k -sima etapa, donde d k es una com-
binacin lineal de gradientes en el mtodo de Fletcher-Reeves y-1 G (x k ) es una
-H (x* )
matriz simtrica positiva definida que finalmente se iguala a . De esta ma-
nera, ambos mtodos evitan la evaluacin y la inversin de H (x k ) en cada paso. La
direccin de bsqueda en cada etapa es, as, un factor crucial en la eficiencia de los
mtodos de bsqueda iterativos. En cualquier etapa se desea obtener la prxima bs-
queda en la mejor direccin.
Los mtodos de direccin conjugada se pueden considerar como algo intermedio
entre el mtodo de Cauchy y el de Newton. Estos mtodos se disean y analizan
sin excepcin para el problema de una funcin cuadrtica pura de n variables tal
como

1
f (x) = a + xT b + xT Hx (3.27)
2

131
Aplicaciones de Programacin no Lineal

Ahora bien, la mejor direccin en un cierto sentido es en la direccin que es con-


jugada a las direcciones de bsqueda previas. Primero se definir este concepto
y luego se explicar su utilidad.

Definicin 3.1 Dada una matriz simtrica H , se dice que dos vectores
p y q son ortogonales respecto a H o conjugados respecto a H si

pT Hq = 0. (3.28)

El lector puede mostrar, a partir de esta definicin, que si H es positiva definida y


el conjunto de vectores distintos de cero p 0 , p1, ..., p n-1 son n direcciones m-
tuamente conjugadas en un espacio n dimensional, entonces estos vectores son
linealmente independientes. Pero si no, existirn constantes a0 , a1,..., an-1, no
todas nulas, tales que

a0p 0 + a1p1 + + an-1p n-1 = 0

En lugar de analizar el algoritmo de direccin conjugada general, se investigar


por qu el concepto de conjugacin con respecto a H es til para la solucin del
problema cuadrtico

1
f (x) = a + xT b + xT Hx
2

la cual tiene su punto ptimo en x* = -H-1b .

132
Mtodos multivariables

Es conveniente reescribir la ecuacin de f (x) como un desarrollo en serie de


*
Taylor alrededor de x hasta trminos de segundo orden

T 1 T
( ) (
f (x) f x* + x - x* ) ( )
f x* +
2
(
x - x* ) H(x* )(x - x* )
Como ( )
f x* = 0 , entonces

1
f (x) c +
2
( ) ( )(
x - x* H x* x - x* ) (3.29)

donde ( ) es una constante.


c = f x*
Supngase que se desea usar una tcnica iterativa para hallar el mnimo de la
ecuacin (3.29). Es claro que no puede decidirse a priori cuales son las direccio-
nes de bsqueda por utilizar para resolver el problema, sino que ms bien debe
admitirse que el conocimiento ganado por bsquedas anteriores ayudar a deter-
minar las direcciones subsecuentes. Entonces, inciese en x 0 y bsquese en la
direccin p 0 para hallar el mnimo

x1 = x0 + a0p 0 (3.30)

donde a0 es algn escalar. Obsrvese que en x1 , f (x1 ) es ortogonal respec-


to a p 0 , es decir

T f (x1 )p 0 = 0 (3.31)

debido a que

n n
d f (a0 ) df (x1 ) f dx1i f
d a0
=
d a0
= x1i d a0
= x1i p0i = T f (x1)p0 = 0
i =1 i =1

133
Aplicaciones de Programacin no Lineal

en el mnimo x1.

En general, en el k -simo paso se inicia desde un punto xk en la direccin pk


para hallar el mnimo en

x k +1 = x k + ak p k (3.32)

donde

T f (x k +1 )p k = 0 (3.33)

(
f (x k ) = H x k - x* ) (3.34)

para f (x) en la ecuacin (3.29). Por uso repetido de la ecuacin (3.32) despus
de n pasos, se obtiene

x n = x n-1 + an-1p n-1


= x n-2 + an-2p n-2 + an-1p n-1

y, por lo tanto,

n-1
x n = x j +1 + aipi (3.35)
i = j +1

134
Mtodos multivariables

para toda j en 0 j < n -1 . As, de la ecuacin (3.35)


.
n-1
(xn - x* ) = (x j+1 - x* ) + aipi (3.36)
i = j +1

Multiplicando por H y tomando el producto escalar con p j , se tiene

n-1
pTj H (x n - x )
*
= pTj H (x j+1 - x ) + aipTj Hpi
*
(3.37)
i = j +1

usando la ecuacin (3.34)

n-1
pTj f x n = pTj f
( ) (x j +1) + aipTj Hpi (3.38)
i = j +1

o bien

n-1
pTj f (x n ) = aipTj Hpi (3.39)
i = j +1

debido a la ecuacin (3.33). Si todos los vectores p 0 , p1,..., p n-1 son mutua-
mente conjugados, tales que

pTi Hp j = 0 , para i j (3.40)

135
Aplicaciones de Programacin no Lineal

entonces

pTj f (x n ) = 0 , para j = 0,1,..., n -1 (3.41)

(Tambin es cierta para j = n - 1 , segn la ecuacin (3.33)). Pero, ya que en


este caso los p 0 , p1,..., p n-1 son linealmente independientes y por lo tanto forman
una base, se sigue que

f (x n ) = 0 (3.42)

de donde, por la ecuacin (3.34)

(
H x n - x* = 0 ) (3.43)

y, por lo tanto,

x n = x* (3.44)

Se sigue de esto que si la bsqueda se lleva a cabo en direcciones mutuamente


conjugadas, se hallar el mnimo de una funcin cuadrtica de n variables en
n pasos o iteraciones. Sustituyendo la ecuacin (3.44) en la ecuacin (3.35) con
j = 0 , resulta

n-1
*
x = aipi + x0 (3.45)
i =0

multiplicando por H y tomando el producto escalar con p j , se tiene

pTi (Hx0 + b) (3.46)


ai = -
pTi Hpi

136
Mtodos multivariables

*
Esto muestra que las ai y, en consecuencia, la solucin x se pueden hallar por
la evaluacin de productos escalares simples. El resultado final es

n-1 T
pi (Hx0 + b)
*
x = x0 - pTi Hpi
pi (3.47)
i =0

*
Este resultado muestra que la expansin para x se puede considerar como el re-
sultado de un proceso iterativo de n pasos en el que se aade ai pi en el i -simo
paso. Visto de esta forma el procedimiento y admitiendo un punto inicial arbitrario,
se obtiene el mtodo bsico de la direccin conjugada. Los mtodos de Fletcher-
Reeves, DFP y BFGS buscarn explotar esta idea.

Ejemplo 3.5
2 2
Minimice f (x) = 4( x1 - 5) + ( x2 - 6) usando direcciones mutuamente con-
* T
( )
jugadas. Esta funcin tiene un mnimo en x = (5,6), donde f x* = 0.0 . Inicie
en x 0 = (8,9) , donde f ( x 0 ) = 45.0 y tome como direcciones de bsqueda
T
T T
e1 = (1,0) e1 e2
e2 = (0,1) Son conjugados los vectores y con
los vectores y .
respecto a la matriz hessiana de ? f (x)

Solucin:

La matriz hessiana de f (x) = 4 x12 - 40 x1 + x22 -12 x2 + 136 es

8 0
H (x) =
0 2

Luego,

e1T He 2 = 0
y por tanto e1 y e 2 son vectores mutuamente conjugados y linealmente inde-
T
b = (-40 -12)
pendientes; por otro lado, es el vector de coeficientes de
los trminos lineales, usando la ecuacin (3.47), se tiene

137
Aplicaciones de Programacin no Lineal

n
eTi (Hx 0 + b) e1T (Hx 0 + b) eT2 (Hx 0 + b)
*
x = x0 - eTi Hei
ei = x 0 -
e1T He1
e1 -
eT2 He 2
e2
i =1

por lo tanto,

8 24 1 6 0 5
x* = - - =
9 8 0 2 1 6

que es el mnimo de f (x) . Observe que la funcin es cuadrtica en dos va-


riables, por eso el mtodo de direcciones conjugadas alcanz el mnimo en 2
iteraciones como se esperaba. Para una funcin no cuadrtica se requiere ms
iteraciones.

3.6 Mtodos de primer y segundo orden

Mtodo de Cauchy o de descenso acelerado

En esta ocasin se considerar un mtodo que usa el gradiente de la funcin, as


como los valores de la funcin misma. El mtodo de direcciones conjugadas que
se acaba de describir, consisti en la bsqueda del mnimo a partir de un punto
dado hacia una direccin paralela a uno de los ejes en la direccin del mnimo,
luego se busc en otra direccin paralela a otro de los ejes en la direccin del
mnimo, y as sucesivamente se procede si la funcin es de ms de dos variables,
parece razonable tratar de modificar este mtodo de manera que en cada paso la
bsqueda hacia el mnimo se lleve a cabo a lo largo de la mejor direccin.

No est claro cul es la mejor direccin, pero la direccin opuesta a la del gra-
diente tiene cierto atractivo intuitivo. La direccin del gradiente es la direccin
del ascenso acelerado. As, la direccin opuesta ser la direccin del descenso
acelerado. Esta propiedad puede probarse como sigue: supngase que desde un
punto x nos movemos a un punto cercano x + ad, donde d es alguna direccin y
a alguna longitud de paso. De este modo, nos movemos desde ( x1, x2 ,..., xn ) has-
ta ( x1 + d x1, x2 + d x2 ,..., xn + d xn ) , donde

138
Mtodos multivariables

d xi = adi , i = 1,2,..., n (3.48)

el cambio en el valor de la funcin esta dado por

n
f (x)
df = f (x + d x) - f (x) = xi
d xi (3.49)
i =1

hasta primer orden en las d xi , donde las derivadas parciales estn evaluadas en
x Cmo deben elegirse las sujetas
. di a la ecuacin (3.48) de manera que
df Otra forma de expresar la ecuacin
se obtenga el mayor valor posible para ?
(3.49) es

df = T f (x) dx = T f (x) dx cos q (3.50)

donde q es el ngulo entre f (x) y dx . Para una magnitud dada de dx , se


minimiza df (x) tomando

d (df )
= - T f (x) dx sen q = 0 si y slo si q = 0 180 (3.51)
dq

ahora bien,

d 2 (df )

<0 para q = 0
= - T f (x) dx cos q implica que (3.52)
dq2
> 0
para q = 180

de manera que, eligiendo q = 180 , dx est en la direccin de -f (x) y


df (x) alcanza su mnimo valor local. De este modo, el mayor incremento local
en la funcin para un paso pequeo a dado ocurre cuando d est en la direc-
cin del -f (x ) .

139
Aplicaciones de Programacin no Lineal

As, la direccin del descenso acelerado est en la direccin de

.
d = -f (x) (3.53)

Recurdese que la direccin del gradiente es ortogonal al contorno de la funcin


en cualquier punto, porque sobre un contorno el valor de la funcin no cambia.
As, si d es un paso pequeo a lo largo del contorno

f (x + d x) = f (x)

es decir,

df (x) = 0 = T f (x) d si y slo si T f (x) es ortogonal a d . (3.54)

El mtodo de descenso acelerado busca explotar esta propiedad de la direc-


cin del gradiente. Por ello, si estamos en cualquier etapa en el punto x k , en el
proceso buscamos el mnimo para la funcin f (x) a lo largo de la direccin de
-f (x) . El mtodo resulta ser un proceso iterativo, y en la etapa k tenemos
una aproximacin x k para el punto mnimo. La siguiente aproximacin es

x k +1 = x k - a*f (x k ) (3.55)

donde a* es el valor que minimiza

f (a ) f (x k - af (x k )) (3.56)

*
Esta a puede determinarse usando una de las bsquedas univariadas anterio-
res (biseccin, Newton-Raphson, seccin urea o interpolacin cuadrtica entre
otros mtodos univariables).

140
Mtodos multivariables

Recurdese que este mtodo tiene un atractivo puramente intuitivo y es de in-


ters acadmico, pero en la prctica es de convergencia muy lenta. El punto es
que la propiedad del descenso acelerado es solamente una propiedad local,
de manera que se necesitan cambios frecuentes de direccin, guiando con esto
a un procedimiento de clculo lento. Por ltimo, se puede decir que el mtodo
de Cauchy es simple y robusto, es convergente lentamente y sin embargo, tiene
varias desventajas:

1) Aun cuando la convergencia del mtodo esta garantizada, puede requerirse


un gran nmero de iteraciones para la minimizacin de funciones cuadrticas
con matriz definida positiva, o sea que el mtodo puede ser bastante lento en la
convergencia hacia el punto mnimo.

2) No se usa la informacin calculada en iteraciones previas; cada iteracin es


independiente de las otras y esto hace al mtodo ineficiente.

3) Se usa slo informacin de primer orden en cada iteracin para establecer


la direccin de bsqueda, razn por la cual la convergencia del mtodo es len-
ta. Otra razn del deterioro de la convergencia se da si se usa bsqueda lineal
inexacta. Adems, la rapidez de convergencia depende del nmero de condicin
de la hessiana de la funcin objetivo en el punto ptimo; si el nmero de condicin
es grande, la rapidez de convergencia del mtodo resulta ser lenta.

4) La experiencia prctica con el mtodo ha mostrado que se obtiene una dismi-


nucin sustancial en la funcin objetivo al inicio de las primeras iteraciones, y en
las ltimas iteraciones la funcin objetivo disminuye con gran lentitud.

5) La direccin de descenso acelerado resulta ser buena en un sentido local, pero


no en un sentido global.

Algoritmo 3.2 Mtodo de Cauchy con bsqueda lineal:

Dada una funcin f (x) continua y derivable, un punto inicial x0 y e.


Para k = 0,1,2,... hasta donde se satisfaga, hacer:

1. d k = -f (x k ) .
2. Hallar * que minimiza f (x k + ad k ) .

141
Aplicaciones de Programacin no Lineal

3. Calcular x k +1 = x k + a*d k .

4. Si x k +1 - x k e o f (x k +1 ) e , entonces
*
Tomar x k +1 x y parar.
Fin del si.
5. Tomar k = k + 1 y regresar al paso 1.

2 2
Ejemplo 3.6 Halle el mnimo de f (x) = 3( x1 - 1) + 10( x2 - 2 x1 ) , por el m-
todo de Cauchy iniciando en xT = (0,3) , con e = 0.01 .

Solucin: Usando el algoritmo 3.2 el mnimo hallado con la precisin dada es,
( )
x*T = (1.0002,2.0005) donde f x* = 0.0 . Obsrvese que la convergencia del
mtodo fue rpida (figura 3.8) debido al uso de la bsqueda lineal inexacta, el
k = 3 La figura 3.8 muestra en
nmero total de iteraciones principales fue de .
forma grfica la bsqueda hacia el ptimo.

Figura 3.8 Evolucin del mtodo del descenso acelerado en 3 iteraciones.

142
Mtodos multivariables

Mtodo de Newton

Desde otro punto de vista, el mtodo de Cauchy puede interpretarse como una
aproximacin lineal de la funcin f (x). Por tanto, los mtodos de segundas deri-
vadas entre los cuales el ms conocido es el mtodo de Newton, se originan por
una aproximacin cuadrtica de f (x) dada por

T 1 T
f (x) f (x k ) + (x - x k ) f (x k ) + (x - x k ) H (x k )(x - x k ) (3.57)
2

Este mtodo explota la informacin obtenida de las segundas derivadas de


f (x) con respecto a las variables independientes. La direccin de bsqueda d para
x x k +1 se define
el mtodo de Newton se elige como sigue: se reemplaza por y

d k x k +1 - x k , (3.58)

por lo que

1
f (x k +1 ) = f (x k ) + dTk f (x k ) + dTk H (x k )d k (3.59)
2

Ahora, diferenciando f (x) con respecto de d k e igualando a cero se obtiene el


f (x) luego se define y
mnimo de ; '

se deriva la ecuacin (3.59) con res-
d k
pecto a d k y entonces

1
' f (x k +1 ) = ' f (x k ) + 'dTk f (x k ) + dTk H (x k )d k
2

luego

0 = f (x k ) + H (x k )d k

debido a que ' f (x k +1 ) = ' f (x k ) = 0 , no dependen de dk ; por lo tanto,

143
Aplicaciones de Programacin no Lineal

-1 (3.60)
d k = -H (x k ) f (x k )

-1
x k +1 = x k - H (x k ) f ( x k ) (3.61)

Obsrvese que ambas, la direccin y la longitud de paso, estn determinadas. Si


f (x) es una funcin cuadrtica, slo se requiere de un paso para alcanzar el m-
nimo de f (x) , y la longitud de paso si se usa una bsqueda lineal ser igual a la
unidad. Pero para una funcin objetivo no lineal general, el mnimo de f (x) no se
alcanzar en un paso. El criterio para garantizar la convergencia en el mtodo
de Newton, suponiendo que la funcin es doblemente diferenciable, es que la
inversa de la matriz hessiana de la funcin objetivo sea positiva definida para el
caso de un mnimo y negativa definida en el de un mximo. El problema con este
mtodo es que en cada paso debe evaluarse e invertirse la matriz hessiana, lo
cual puede ser muy complicado y laborioso, o bien que la inversa tenga proble-
mas de estabilidad. Pero si el mtodo converge, la rapidez de convergencia que
lo caracteriza es de segundo orden.

Las desventajas del mtodo de Newton para aplicaciones generales son las si-
guientes:

1) Se requiere la evaluacin de derivadas de segundo orden en cada iteracin,


lo que por lo general consume mucho tiempo, y en algunas aplicaciones es po-
sible que no puedan calcularse estas derivadas. Adems de la evaluacin de las
segundas derivadas, tambin debe resolverse un sistema de ecuaciones lineales
simultneas; por lo tanto, cada iteracin del mtodo requiere sustancialmente
ms clculos comparado con el mtodo de Cauchy.

2) La matriz hessiana de la funcin objetivo puede resultar singular en algunas


iteraciones y esto implica inestabilidad en el mtodo, ya que no puede usarse
para determinar la direccin de bsqueda. Asimismo, a menos que la hessiana
sea positiva definida, la direccin de Newton no puede garantizar que sea de des-
censo para la funcin objetivo.

3) Como en el mtodo de Cauchy, el mtodo de Newton no usa la informacin


generada del gradiente y la matriz hessiana en las iteraciones anteriores, as que
cada iteracin es independiente de las anteriores.

144
Mtodos multivariables

4) El mtodo de Newton no es convergente a menos que la hessiana permanezca


definida positiva y se use un esquema de bsqueda lineal para la determinacin
de la longitud de paso; sin embargo, el mtodo tiene una rapidez de convergencia
cuadrtica y entonces, para una funcin cuadrtica estrictamente convexa, el m-
todo converger en solo una iteracin sin importar el punto inicial elegido.

Algoritmo 3.3 Mtodo de Newton Modificado con bsqueda lineal:

Dada una funcin f (x) continua y derivable, un punto inicial x0 y e.


Para k = 0,1,2,... hasta donde se satisfaga, hacer:

1. d k = -H (x k )-1 f (xk ) o bien resolver H (x k )d k = -f (x k ) y obtener dk.


*
2. Hallar a que minimiza f ( x k + ad k ) .

3. Calcular x k +1 = x k + a*d k .
4. Si x k +1 - x k e o f (x k +1 ) e , entonces
*
Tomar x k +1 x y parar.
Fin del si.
5. Tomar k = k + 1 y regresar al paso 1.

2 2
Ejemplo 3.7 Halle el mnimo de f (x) = 3( x1 -1) + 10( x2 - 2 x1 ) , por el mtodo
de Newton iniciando en xT = (0,3) , con e = 0.01 .

Solucin:
*T
Usando el algoritmo 3.3 el mnimo hallado es x = (1.00,2.00) donde
( )
f x* = 0.0. Obsrvese que la convergencia del mtodo fue en la primera itera-
k = 1 La figura 3.9 muestra
cin, y el nmero total de iteraciones principales fue de .
en forma grfica la bsqueda hacia el ptimo.

145
Aplicaciones de Programacin no Lineal

Figura 3.9 Evolucin del mtodo de Newton en 1 iteracin.

Mtodo de Fletcher y Reeves o de gradientes conjugados

El mtodo de Fletcher y Reeves de gradientes conjugados trata de explotar el


hecho de que para una funcin cuadrtica de n variables, se requieren de n bs-
quedas lineales a lo largo de direcciones mutuamente conjugadas para localizar
*
el mnimo x de la funcin; es decir, con esto se evitar el uso directo de la eva-
luacin de la matriz hessiana H ( x k ). Para esto, en lugar de utilizar una frmula
analtica para ak como en el mtodo de direccin conjugada, se hallar bk con
una bsqueda lineal que minimice la funcin objetivo, y despus la frmula obte-
nida para ak ser independiente de la matriz hessiana, la cual se sustituye por
productos entre gradientes.

Considrese el problema general de minimizar la funcin f (x) . Se explorar


iniciar una bsqueda a lo largo de direcciones que sean mutuamente conjugadas
con respecto a H (x) . La primera direccin de bsqueda desde el primer punto
x0 se har en la direccin del descenso acelerado que parece razonable

146
Mtodos multivariables

d 0 = -f 0 (3.62)

donde f 0 f (x0 ) . Ahora bien, para hallar el valor de b0 que minimice

f (b0 ) = f (x0 + b0d 0 )

se usa cualquier tcnica de bsqueda unidimensional (Newton-Raphson, seccin


urea, etc.). Luego de obtener b0 por alguna de stas tcnicas, se calcula

x1 = x0 + b0d 0 (3.63)

y se busca en una direccin d1 conjugada a d 0 , lo cual se hace eligiendo d1


como una combinacin lineal de d 0 y -f1 de la siguiente manera:

d1 = -f1 + a0d 0

Se busca de nuevo b1 que minimice f (b1 ) = f (x1 + b1d1 ) y se calcula

x 2 = x1 + b1d1 (3.64)

y la direccin de bsqueda d2 desde x2 se elige conjugada a d 0 y d1 , etctera.

En la (k + 1) -sima etapa se elige d k +1 como una combinacin lineal de


-f k +1, d 0 , d1,..., d k, esto es, conjugada a todas las direcciones d0 , d1,..., d k.
As,

k
d k +1 = -f k +1 + a jd j , k = 0,1,...
j =0

147
Aplicaciones de Programacin no Lineal

Este proceso deja ver que todas las aj son nulas excepto para ak y que

d k +1 = -f k +1 + ak d k (3.65)

2 f k +1 T f k +1f k +1 (3.66)
ak = 2
= T
fk f k f k

Las direcciones de bsqueda sucesivas en el mtodo de Fletcher-Reeves son


conjugadas y el mtodo hallar el mnimo de una funcin cuadrtica de n varia-
bles despus de n bsquedas. Esto supone que la bsqueda lineal se realiza
exactamente e ignora cualquier error de redondeo que se pueda producir. Por su-
puesto, el mtodo se puede aplicar a funciones no cuadrticas, y se espera que
alcance la propiedad de convergencia cuadrtica cuando la aproximacin cua-
drtica resulte vlida. Fletcher y Reeves (1964) sugieren que en esta situacin
toda n-sima direccin de bsqueda deber ser a lo largo de la direccin de
descenso acelerado y que deber reiniciarse la construccin de las direcciones
conjugadas. El siguiente algoritmo incluye esta idea. En general, se puede decir
que el mtodo es eficiente y robusto. Para funciones no cuadrticas, se obtiene
ak
mejor eficiencia usando la frmula de Polak y Ribiere (1969) para dada por
la ecuacin:

T
(f k +1 - f k ) f k +1
(3.67)
ak = T
f k f k

148
Mtodos multivariables

Algoritmo 3.4 Mtodo de Fletcher Reeves o gradientes conjugados:

Dada una funcin f (x) , un punto inicial x 0 y la tolerancia e.


Para j = 0,1,... hasta donde se satisfaga, hacer:
Para k = 0,1,..., n - 1 hacer;

1. m = nj + k .
2. Si k = 0 , entonces
am = 0
En otro caso,

T f mf m
am =
T f m-1f m-1
Fin del si.

3. d m = -f m + amd m-1 .
*
4. Hallar bm que minimiza f ( x m + bmd m ) .
*
5. x m+1 = x m + bm dm .
6. Si x k +1 - x k e o f m+1 e , entonces
x m+1 = x* y terminar.

Fin del si.

7. Si k = n -1 , entonces

j = j + 1, k = 0 y regresar a 1.

En otro caso,
k = k + 1 y regresar a 1.
Fin del si.

149
Aplicaciones de Programacin no Lineal

2 2
Ejemplo 3.8 Halle el mnimo de f (x) = 3( x1 -1) + 10( x2 - 2 x1 ) , por el mto-
T
do de Fletcher y Reeves iniciando en x = (0,3) , con e = 0.01 .

Solucin:

( )
El mnimo hallado con la precisin dada es x*T = (1.00,2.00) , donde f x* = 0.0 .
Observe que la convergencia del mtodo fue rpida debido al uso de la bsqueda
lineal exacta, el nmero total de iteraciones menores fue de k = 2, como se es-
peraba pues la funcin es cuadrtica. La figura 3.10 muestra en forma grfica la
bsqueda hacia el ptimo.

Figura 3.10 Evolucin del mtodo de gradientes


conjugados en 2 iteraciones.

150
Mtodos multivariables

Mtodo de Davidon, Fletcher y Powell (DFP) o de mtrica variable

El mtodo DFP est basado en la ecuacin de Newton

-1
x k +1 = x k - H (x k ) f (x k )

con la diferencia de que el mtodo DFP busca evadir el clculo de la inversa de la


-1
matriz hessiana H (x k ) en cada paso, tomando la direccin de bsqueda en cada
k -G k f (x k ) donde es
etapa como , G k una matriz simtrica positiva definida, la
cual se construye en cada etapa como ser explicado ms adelante.

Se inicia con un punto x 0 y una matriz simtrica positiva definida G 0 , por lo


general la matriz unidad. Por conveniencia se escribir fi f ( xi ) , el proce-
dimiento iterativo que describiremos brevemente ser formalizado en el siguiente
algoritmo ms adelante.

1. En la etapa k se tiene un punto xk y una matriz simtrica positiva definida Gk .


2. Se toma la direccin de bsqueda como

d k = -G k f k (3.68)

3. Se realiza una bsqueda lineal sobre la lnea x k +1 = x k + ak d k para hallar


el valor de ak que minimice f (ak ) = f ( x k + ak d k ) .
*

4. Se determina

v k = ak d k (3.69)

5. Se calcula

x k +1 = x k + v k (3.70)

151
Aplicaciones de Programacin no Lineal

( )
6. Se determina f k +1 = f x k +1 , f k +1 , y se termina el procedimiento si
f k +1 vk
o son suficientemente pequeos; en caso contrario, se procede con
el paso 7. Recurdese que

T f k +1v k = 0 (3.71)

7. Se determina

u k = f k +1 - f k (3.72)

8. Se construye

G k +1 = G k + Ak + Bk (3.73)

donde

v k vTk (3.74)
Ak =
vTk v k

G k u k uTk G k
Bk = - (3.75)
uTk G k u k

9. Se toma k = k + 1 y se regresa al paso 2.


Se justificar el procedimiento siguiendo los argumentos de Fletcher y Powell. El
proceso es estable si v k va cuesta abajo para un mnimo y ak es positiva.

152
Mtodos multivariables

Ya que f k es la direccin del ascenso acelerado, vk ir cuesta abajo si y solo


si

-vTk f k = -f kT v k = ak f kT G k f k > 0 (3.76)

esto ser as si G k es simtrica positiva definida. La construccin en las ecua-


ciones (3.73), (3.74) y (3.75) mantiene esta simetra. Si el mtodo DFP se aplica
1
f (x) = a + xT b + xT Hx
2
H
a la funcin cuadrtica con simtrica positiva definida,
entonces G n = H-1 y el proceso terminar despus de n etapas. Se deja al lec-
tor mostrar que v 0 , v1,..., v k son eigenvectores linealmente independientes de
G k +1H con eigenvalor 1. De esta manera, G n H debe ser la matriz unitaria. De
la ecuacin (3.72) observe que

u k = f k +1 - f k = Hx k +1 + b - Hx k - b = H (x k +1 - x k )

usando la ecuacin (3.70) resulta

u k = Hv k (3.77)

Tambin G k +1Hv k = G k +1u k = G k u k + A k u k + B k u k , luego

v k vTk u k G k u k uTk G k u k
G k +1Hv k = G k u k + - = G k uk + vk - G k uk
vTk u k uTk G k u k

observando que vTk u k y uTk G k u k son escalares que pueden cancelarse. As

G k +1Hv k = v k (3.78)

153
Aplicaciones de Programacin no Lineal

Se deja al lector mostrar que para i = 2,3,..., n


vTk Hv j = 0 , 0k < j <i (3.79)

que

G i Hv k = v k , 0k <i (3.80)

y que

vTk fi = 0 , 0 k i (3.81)

Esto se hace por induccin sobre i . La ecuacin (3.79) muestra que v 0 , v1,..., v n-1
son linealmente independientes y que son mutuamente conjugados con respecto a
H . Si i = n entonces, de la ecuacin (3.80),

G n Hv k = v k

que muestra que v 0 , v1,..., v n-1 son eigenvectores de G n H con eigenvalor 1


y adems que G n H debe ser una matriz unitaria, es decir, G n H = I, por tanto

G n = H -1

Que el mnimo se encuentra en n iteraciones se sigue de la ecuacin (3.81) ya


que vTk f n = 0 , como vTk 0 , f n = 0 , por tanto

x n = x* = -H-1b = -G nb (3.82)

154
Mtodos multivariables

La construccin de la matriz G se sigue de la ecuacin (3.73):

G n = G n-1 + A n-1 + B n-1


= G n-2 + A n-2 + B n-2 + A n-1 + B n-1
n-1
= = G0 + (A k + Bk )
k =0

n-1
Se deja al lector mostrar que
ser vlida:
H -1
= Ak . Como la ecuacin (3.78) debe
k =0

G k +1Hv k = v k v k = G k Hv k + A k Hv k + B k Hv k

usando la ecuacin (3.77)

v k vTk u k
A k Hv k = A k u k = = vk
vTk u k
entonces

B k u k = v k - v k - G k u k = -G k u k

y, por lo tanto,

B k u k = -G k u k (3.83)
Aplicaciones de Programacin no Lineal

luego, una forma simple (aunque no necesariamente la nica) para Bk es

B k u k zTk z k = -G k u k zTk z k B k z k uTk z k = -G k u k zTk z k

G k u k zTk
Bk z k = - zk
uTk z k
y entonces

G k u k zTk
Bk = -
uTk z k

donde z es un vector arbitrario. Ya que Bk debe ser simtrica, una buena elec-
cin para z es

z = G k uk
por lo que

G k u k uTk G k
Bk = - (3.84)
uTk G k u k

Lo cual termina la teora del mtodo DFP.

Este mtodo usa las ideas del mtodo de Newton y de las direcciones conjuga-
das. Cuando se aplica a una funcin cuadrtica de n variables, ste converge en
n
iteraciones. En general, el procedimiento es robusto y eficiente para funciones
cuadrticas o no.

156
Mtodos multivariables

Algoritmo 3.5 Mtodo de Davidon Fletcher Powell (DFP):

Dada una funcin f (x) , un punto inicial x0 , una matriz simtrica posi-
G 0 la tolerancia .
tiva definida y e

Para k = 0,1,... hasta donde se satisfaga, hacer:


1. d k = -G k f k .
2. Halla ak* que minimiza f (x k + ak d k ) .
3. v k = ak*d k .
4. x k +1 = x k + v k .
5. u k = f k +1 - f k .

v k vTk
6. Ak = .
vTk u k
G k u k uTk G k
7. Bk = - .
uTk G k u k
8. G k +1 = G k + A k + B k .

9. Si x k +1 - x k e o f k +1 e , entonces
x k +1 = x* y terminar.

Fin del si.


10. Tomar k = k + 1 y regresar a 1.

157
Aplicaciones de Programacin no Lineal

2 2
Ejemplo 3.9 Halle el mnimo de f (x) = 3( x1 - 1) + 10( x2 - 2 x1 ) , por el
T
mtodo DFP iniciando en x = (0,3) , con e = 0.01 .

Solucin:
*T
El mnimo hallado con la precisin dada es x = (1.00,2.00) , donde
( )
f x* = 0.0 . En este caso tambin la convergencia del mtodo fue rpida
debido al uso de la bsqueda lineal exacta, el nmero total de iteraciones
principales fue de k = 2 , como se esperaba pues la funcin es cuadrtica. La
figura 3.11 muestra en forma grfica la bsqueda hacia el ptimo.

Figura 3.11 Evolucin del mtodo DFP en 2 iteraciones.

Mtodo de BroydenFletcherGoldfarb-Shanno (BFGS)

Las frmulas de recurrencia para la inversa de la hessiana consideradas en la


seccin anterior se basan en la satisfaccin de la ecuacin (3.80)

G iu k = v k , 0 k < i (3.85)

158
Mtodos multivariables

deducida de la ecuacin (3.77)

u k = Hv k , 0k <i (3.86)

que se cumplira slo en el caso cuadrtico puro. Tambin se pueden actuali-


zar aproximaciones a la propia hessiana H, en lugar de su inversa. De manera
anloga, se buscara satisfacer

v k = G 'k u k , 0 k < i (3.87)

La ecuacin tiene exactamente la misma forma que la ecuacin (3.85), ex-


'
cepto que u k y v k se intercambian y G i se sustituye por G i . Esta ltima
actualizacin se conoce como mtodo de BroydenFletcherGoldfarb-Shanno
(BFGS).

Entonces la frmula complementaria correspondiente al mtodo DFP es

u k uTk G k v k vTk G k
G k +1 = G k + - (BFGS). (3.88)
uTk v k vTk G k v k

Los experimentos numricos han indicado que este mtodo es superior al


DFP, razn por la cual en la actualidad se le prefiere.

159
Aplicaciones de Programacin no Lineal

Algoritmo 3.6 Mtodo de Broyden Fletcher Goldfarb Shanno (BFGS):

Dada una funcin f (x) , un punto inicial x0 , una matriz simtrica posi-
G 0 la tolerancia .
tiva definida y e

Para k = 0,1,... hasta donde se satisfaga, hacer:


1. Resolver G k d k = -f k para obtener dk .
2. Hallar ak* que minimiza f (x k + ak d k ) .
3. v k = ak*d k .
4. x k +1 = x k + v k .
5. u k = f k +1 - f k .

u k uTk
6. Ak = .
uTk v k
G k v k vTk G k
7. Bk = - .
vTk G k v k
8. G k +1 = G k + A k + B k .

9. Si x k +1 - x k e o f k +1 e , entonces
x k +1 = x* y terminar.

Fin del si.


10. Tomar k = k + 1 y regresar a 1.

2 2
Ejemplo 3.10 Halle el mnimo de f (x) = 3( x1 - 1) + 10( x2 - 2 x1 ) ,
por el mtodo BFGS iniciando en xT = (0,3) , con e = 0.01.

160
Mtodos multivariables

Solucin:

*T
El mnimo hallado con la precisin dada es x = (1.00,2.00) , donde
( )
f x* = 0.0. Este mtodo tambin tuvo una convergencia rpida debido al uso
de la bsqueda lineal exacta, el nmero total de iteraciones principales fue de
k = 2 igual a los dos mtodos anteriores como era de esperarse. La figura 3.12
,
muestra en forma grfica la bsqueda hacia el ptimo.

Figura 3.12 Evolucin del mtodo BFGS en 2 iteraciones.

161
Aplicaciones de Programacin no Lineal

Problemas

Para cada uno de los siguientes problemas encuentre la solucin numricamente


con cualquiera de los mtodos analizados y comprela con el valor de la solucin
exacta (analtica si existe).

3.1 Optimizar la ecuacin siguiente, la cual se obtiene de un modelo de elemento


finito para una viga volada sujeta a cargas y momentos (figura 1).

Figura 1

f ( x, y )= 5 x 2 5 xy + 2.5 y 2 x 1.5 y

donde x = desplazamiento final, y y = momento final. Calcule los valores de x


y y que minimizan f ( x, y ) .

3.2 Un recipiente cilndrico abierto se utilizar para almacenar 10 m3 de lquido. La


funcin objetivo para la suma de los costos de capital y operacin del recipiente es

1
f ( h, r )
= 2 rh + 10 r 2
r 2h

Puede usarse el mtodo de Newton para minimizar esta funcin? La solucin es


[r*, h*]T = [0.22, 2.16]T.

3.3 El costo de operacin anual f para un sistema de lnea elctrica est dado
por la expresin siguiente

( 21.9 10 ) +
7

f=
(V , C ) 2
V C
( 3.9 10 ) C + (1.0 10 )V
6 3

162
Mtodos multivariables

donde V = voltaje en kilovolts (kV) y C = la conductancia en Siemens (S). En-


cuentre los puntos estacionarios para la funcin, y determine V y C para minimizar
los costos de operacin.

3.4 Una inyeccin de x1 miligramos de cierto medicamento A y x2 miligramos del


medicamento B produce una respuesta de f unidades, y

f ( x1 , =
x2 ) x12 x23 ( c x1 x2 )

donde c > 0 es una constante. Qu dosis de cada medicamento ocasionarn la


respuesta mxima?

3.5 Se construye una caja rectangular cerrada con un volumen de 16 m3 em-


pleando tres tipos de materiales. El costo del material para el fondo y la tapa es
de $0.18 por m2, el costo del material para el frente y la parte trasera es de $0.16
por m2, y el costo del material para los otros dos lados es de $0.12 por m2. Calcule
las dimensiones de la caja de modo que el costo de los materiales sea un mnimo.

3.6 Suponga que T grados es la temperatura en cualquier punto ( x1 , x2 , x3 ) de la


esfera
x12 + x22 + x32 =
4
y
T ( x ) = 100 x1 x22 x3

Obtenga los puntos de la esfera donde la temperatura es la mxima y tambin los


puntos donde es mnima. Adems, calcule la temperatura en estos puntos.

3.7 Suponga que t horas despus de la inyeccin de x miligramos de adrenalina


la respuesta es de f unidades, y

f (=
t , x ) te t ( c x ) x

donde c > 0 es una constante.Qu valores de t y x producirn la respuesta


mxima?

3.8 El potencial de una partcula en el plano xy se da por

V ( x, y ) = 2 x 2 5 xy + 3 y 2 + 6 x 7 y
Muestre que existe un punto y slo uno en el cual la partcula permanece en equi-
librio. Encuentre las coordenadas de ese punto.

163
CAPTULO 4
Mnimos cuadrados
166
4.1 Introduccin

Los datos que se obtienen mediante mediciones fluctan, esto se debe a errores
aleatorios del sistema de medicin aplicado al comportamiento intrnsecamente
estocstico del sistema en observacin. Cualquiera que sea la razn, es frecuen-
te que surja la necesidad de ajustar una funcin a los datos de la medicin. Por
ejemplo, un investigador podra intentar desarrollar una frmula emprica para el
sistema en observacin, o bien un economista deseara ajustar una curva a una
tendencia econmica actual para poder predecir el futuro. Esto se hace para de-
terminar el comportamiento general de los datos, por ejemplo para ver si un creci-
miento es exponencial o para evaluar la funcin en puntos diferentes de los datos.

La curva de ajuste puede ser una lnea, un polinomio de grado n o una funcin
logartmica, exponencial, cosenoidal, o de algn otro tipo. La curva adecuada se
escoge dependiendo de la distribucin de los datos experimentales, de manera
tal que se minimice la suma de los cuadrados de los errores (mtodo conocido
como mnimos cuadrados).

4.2 Formulacin del problema de regresin lineal o mltiple

Considrese que los datos experimentales consisten de n observaciones en una


variable de respuesta o dependiente y y en k variables explicativas o indepen-
dientes x .

167
Aplicaciones de Programacin no Lineal

Las observaciones suelen registrarse como sigue:

Datos y x1 x2 ... xk-1 xk


1 y1 x11 x12 ... x1k-1 x1k

2 y2 x21 x22 ... x2k-1 x2k

3 y3 x31 x32 ... x3k-1 x3k


...

...

...
...

...

...

...
n yn xn1 xn2 ... xnk-1 xnk

Como hay n observaciones, el modelo de regresin se puede resumir escribien-


do una serie de n ecuaciones, como:

yy11 = b 1 x 11 + b 2 x 12 + b 3 x 13 + g + b k x 1k + f 1
yy22 = b 1 x 21 + b 2 x 22 + b 3 x 23 + g + b k x 2k + f 2
yy33 = b 1 x 31 + b 2 x 32 + b 3 x 33 + g + b k x 3k + f 3
ggggggggggggggggggg
yynn = b 1 x n1 + b 2 x n2 + b 3 x n3 + g + b k x nk + f n (4.1)

donde xi1 =1 para todo i , es decir, x1T = ( x11, x21,, xn1 ) = (1,1,,1) .

La formulacin matricial correspondiente del modelo es

y=X + (4.2)

donde y es el vector de observaciones de orden n x1, X es la matriz de varia-


bles independientes de orden nx k , es el vector de parmetros por estimar de
orden n x1, y es el vector de errores de orden nx1.

168
Mnimos cuadrados

En nuestra representacin de la matriz X, cada componente xij tiene dos


subndices: el primero denota el rengln apropiado de la observacin y el
segundo la columna apropiada de la variable independiente. Cada columna de X
representa un vector xj de n observaciones en una variable dada (j=1,2,3,,k),
con todas las observaciones asociadas con la intercepcin igual a x1T=(1,1,,1) .

A continuacin vamos a establecer las suposiciones fundamentales acerca del


modelo de regresin lineal general como sigue:

1) La descripcin del modelo est dada por la ecuacin (4.1).

2) Los elementos de X son variables fijas (no aleatorias) y tienen varianza finita.

3) X tiene rango k n .

4) y y son variables aleatorias, est normalmente distribuida con


i) E()=0

ii)

donde I es la matriz identidad de orden n xn


La primera suposicin significa que el modelo explica todas las observaciones
hasta cierta precisin. La segunda suposicin implica que las variables indepen-
dientes estn libres de errores. La tercera suposicin de que X tiene rango k ga-
rantiza que no est presente la colinealidad perfecta, lo que implica que una de
las columnas de X debera ser una combinacin lineal de las restantes columnas
y el rango de X debe ser menor que k .

169
Aplicaciones de Programacin no Lineal

Las suposiciones acerca del error son muy slidas, ya que garantizan las pro-
piedades aritmticas y estadsticas del proceso de estimacin ordinario de los
mnimos cuadrados. Adems de la normalidad, se supone que cada trmino de
error tiene media cero,

e1 E (e1 ) 0

e2 E (e2 ) 0
E () = E = = = 0


en E (en ) 0

La matriz de varianza-covarianza s 2I se expresa como sigue;

es decir,

( )
E TT = Var ( ) = s 2I (4.3)

170
Mnimos cuadrados

2
todas las varianzas son constantes, Var (ei ) = s , y todas las covarianzas son
( ) ( )
nulas, Cov ei , e j = Cov e j , ei = 0 , es decir, no hay correlacin entre residua-
les diferentes.

4.3 Estimacin por mnimos cuadrados lineales

que minimice la Suma de Cuadra-


El objetivo es hallar un vector de parmetros

dos de los Errores (SCE) S() ;

es decir, la funcin objetivo por minimizar es

n
()
S = T = ei2 (4.4)
i =1

donde

= y - y (4.5)

y = X (4.6)

es el vector de valores ajusta-


es el vector de residuales de n x1 , mientras y
dos o estimados de y de n x1. Sustituyendo las ecuaciones (4.5) y (4.6) en (4.4),
se obtiene

T
T = ( y - X ) ( y - X ) = y T y - 2 T X T y + T X T X

debido a que

T XT y = yT X

171
Aplicaciones de Programacin no Lineal

por lo tanto,

T = yT y - 2 T XT y + T XT X (4.7)

Para determinar los estimadores por mnimos cuadrados, se deriva


respecto a y se iguala a cero como sigue:
( ) con
S

()
S = -2 XT y + 2 XT X = 0 (4.8)

por lo que,

-1
(
= XT X ) XT y (4.9)

T
La matriz simtrica X X se llama matriz de sumas de cuadrados y productos
cruzados de las variables independientes x, y est garantizado que va a tener in-
versa debido a la suposicin de que X tiene rango k; el vector XT y se llama vector
de sumas de productos cruzados de las x con las y. Trasponiendo la ecuacin
(4.8), se tiene

()
T S = -2yT X + 2 T XT X

derivando de nuevo, se tiene

( ( )) ()
T S H = 2 XT X

y, por lo tanto,

H( )=2XTX (4.10)

172
Mnimos cuadrados

es la matriz hessiana de ( ) , de manera que


S

1) Si
T
H es positiva definida, X X tambin lo es y minimiza a S ( ).
2) Si H es negativa definida XT X tambin lo es y maximiza a S ( ).
En este caso, H resulta ser positiva definida y, por lo tanto, minimiza a S ()
Estimacin de 2

Para calcular la matriz de varianza-covarianza de los parmetros estimados, se


necesita determinar una estimacin para el escalar 2. Una eleccin natural es

2 T
s (4.11)
n-k

donde s2 es un estimador insesgado de 2.

Estimacin de R2
La variacin total en y puede partirse en dos porciones: una representa la varia-
cin explicada y la segunda, la no explicada. Primero, se asumir que la variable
y tiene media nula ( y = 0 ). En notacin matricial, la derivacin se sigue del he-
cho de que el vector y puede escribirse como la suma de sus valores predichos

y = X
y el vector residual :

y = X + (4.12)

173
Aplicaciones de Programacin no Lineal

luego,

(4.13)

ya que . Si tiene media no nula ( y 0 ), entonces la ecuacin


anterior se puede modificar por la siguiente expresin:

(4.14)

o bien

SCT SCR + SCE (4.15)

T 2
donde SCT = suma de cuadrados total = y y - ny , SCR = suma de cuadra-
dos explicada por la regresin = y SCE =suma de cuadrados (no
explicada) de los errores = R2
. El coeficiente de correlacin se define como

SCR SCE (4.16)


R2 = = 1-
SCT SCT
2
En este sentido, R mide la proporcin de la variacin en y que es explicada por
la ecuacin de regresin lineal general; por lo tanto,

(4.17)

174
Mnimos cuadrados

Este coeficiente de correlacin es sesgado; por tanto, la correccin para que sea
insesgado debe tomar en cuenta el nmero de grados de libertad de la ecuacin
de regresin, y entonces

(4.18)

Ejemplo 4.1 Ajuste el modelo y = b1 + b2 x a los datos dados en la tabla 4.1

n y x
1 0 0
2 2 1
3 4 2
4 6 3
5 8 4
6 10 5
Tabla 4.1

Solucin:

Se identifican los vectores y las matrices necesarias:

0 0
1
2 1 1

4 1 2 1 1 1 1 1 1
y = , X = , XT =
0 1 2 3 4 5
6 1 3

8 1 4

10 1 5

175
Aplicaciones de Programacin no Lineal

aplicando la ecuacin (4.9), resulta

y el modelo que describe al conjunto de datos est dado por

y = 2x

como era de esperar con slo observar la tabla de datos. La matriz hessiana esta
dada por la ecuacin (4.10):

cuyos determinantes de los menores principales son

D1 = 12 > 0 , . D2 = 420 > 0

Como ambos son positivos, la matriz hessiana es positiva definida y minimiza


la suma de cuadrados de los residuales. Con la informacin obtenida hasta ahora,
se pueden obtener los vectores y de valores ajustados y de residuales dados
por las ecuaciones (4.6) y (4.5) respectivamente:

176
Mnimos cuadrados

de manera que la funcin suma de cuadrados de los errores, ecuacin (4.4), da

La varianza s 2 dada por la ecuacin (4.11) es

2 2
y el resto de estimadores en los que interviene s (o s ) se anulan, por lo que ya
no se continuarn los clculos. Finalmente, el valor del coeficiente de correlacin,
ecuacin (4.18), da

indicando con este valor una correlacin perfecta entre los datos y el modelo ajus-
tado, como era de esperar para un caso ideal.

Ejemplo 4.2 Se tomaron diez datos de un experimento en el que la variable inde-


pendiente representa el porcentaje molar de un reactante y la variable dependien-
te a la produccin porcentual, dados en la tabla 4.2.

n y x
1 73 20
2 78 20
3 85 30
4 90 40
5 91 40
6 87 50
7 86 50
8 91 50
9 75 60
10 65 70

Tabla 4.2

177
Aplicaciones de Programacin no Lineal

Ajuste un modelo cuadrtico con estos datos y determine el valor de x que maxi-
miza la produccin.

Solucin:

El modelo puede representarse como cuadrtico de una sola variable o como de


regresin lineal mltiple de dos variables, es decir;

y = b1 + b2 x + b3 x 2

o bien

y = b1 + b2 x2 + b3 x3

donde x2 = x y x3 = x 2 . Aplicando la ecuacin (4.9) resulta

y el modelo cuadrtico queda como

y = b1 + b2 x + b3 x 2 = 35.6574 + 2.6314 x - 0.0319 x 2

Para obtener la mxima produccin, se deriva esta ecuacin y se iguala a cero


para determinar el valor de x que optimiza a y ,

b2 2.6314
x* = - =- = 41.2445
2b3 2(-0.0319)

178
Mnimos cuadrados

la produccin predicha en el ptimo ser

ymx = 89.9228
y el resultado esta de acuerdo con el valor estimado de una grfica de los datos
mostrada en la figura 4.1.

Figura 4.1 Puntos experimentales y curva ajustada.

El objetivo se alcanz pero se pueden obtener ms resultados acerca del proble-


ma. En este caso, la matriz hessiana es

179
Aplicaciones de Programacin no Lineal

por la ecuacin (4.10), los determinantes de los menores principales son

D1 = 20 > 0 , D2 = 96400 > 0 y D3 = 121344000000 > 0

por tanto, la matriz es positiva definida, indicando que es un mnimo, debido


*
a que b3 = -0.0319 es negativo x representa un mximo cuya produccin da
el valor de ymx = 89.9

Los vectores de valores ajustados y residuales son

por las ecuaciones (4.6) y (4.5), observe que e = 0.01 con la precisin
i i
mostrada pero en realidad se anula con mayor precisin; la suma de cuadrados
de los errores dada por la ecuacin (4.4) resulta en

180
Mnimos cuadrados

y la varianza s2 dada por la ecuacin (4.11) es

Por otro lado,

n
1
y=
n yi = 82.1 , ny = 821
i =1
n
y y=T
yi2 = 68115 , yT y - ny = 67294
i =1

por tanto,

lo que indica un buen acuerdo entre los datos y el modelo propuesto.

4.4 Aproximacin por diferencias finitas de la matriz jacobiana

En esta seccin se darn las frmulas que pueden usarse en problemas en donde
no esta disponible la informacin de las derivadas. La primera aproximacin que
debe considerarse es reemplazar la matriz jacobiana por una aproximacin en
J
diferencias finitas igual que como se hizo en el captulo 3 para el gradiente y la
matriz hessiana. Usando diferencias hacia adelante se tiene

181
Aplicaciones de Programacin no Lineal

j (x) = f (x + diei ) - f (x)


i (4.19)
di

para diferencias hacia atrs se tiene

j (x) = f (x) - f (x - diei )


i (4.20)
di

para las diferencias centrales es

j (x) = f (x + diei ) - f (x - diei )


i (4.21)
2di

para i = 1,2,..., n , donde ji es la i -sima columna de J .

Ejemplo 4.3 Para la funcin

x 2 + x -11

f (x) = 1 2
x + x 2 - 7
1 2

T
evale la matriz jacobiana de la funcin en el punto x 0 = (2,1) por las aproxi-
maciones en diferencias finitas y compare stas con la matriz jacobiana analtica.
Use una perturbacin del 1% en las variables independientes.

Solucin:

La matriz jacobiana analtica de la funcin es

2 x 1
J (x) = 1
1 2 x2

182
Mnimos cuadrados

que, evaluada en x0 , da

2(2) 1 4 1
J (x0 ) = =
1 2(1) 1 2

Al 1% de cambio en las variables se tiene d1 = 0.02 y d2 = 0.01 . Por las ecua-


ciones (4.19) a (4.21) las matrices jacobianas numricas son

4.02 1.00 3.98 1.00 4.00 1.00


J (x0 ) = , J (x0 ) = y J (x0 ) =
1.00 2.01 1.00 1.99 1.00 2.00

respectivamente, como puede verificar el lector.

Observe que para la funcin f (x) dada, los tres mtodos dan una muy buena
aproximacin a la matriz jacobiana analtica. El mtodo por diferencias centrales
da igual a la matriz analtica, lo cual comprueba que esta aproximacin es exacta
para funciones cuadrticas.

183
Aplicaciones de Programacin no Lineal

4.5 Formulacin del problema de regresin no lineal y de sistemas de


ecuaciones no lineales

El anlisis de regresin es la aplicacin de mtodos matemticos y estadsticos


para el anlisis de datos experimentales y el ajuste de modelos matemticos a
estos datos a travs de la estimacin de los parmetros desconocidos del mode-
lo. Para el anlisis de regresin los modelos matemticos son clasificados como
lineales o no lineales con respecto a los parmetros desconocidos. Por ejemplo,
para los modelos siguientes:

y = b0 + b1x
y = b0 + b1x1 + b2 x2 + + bn-1xn-1 + bn xn

y = b0 + b1x + b2 x 2 + + bn-1x n-1 + bn x n

la primera y segunda ecuaciones son lineales tanto en los coeficientes como en


las variables. stas corresponden a un modelo lineal simple y a un modelo lineal
mltiple respectivamente; la tercera ecuacin es lineal en los coeficientes y no
lineal en la variable independiente y corresponde a un modelo polinomial. Para
los modelos siguientes:

1
= b0 b1x
y

b1
y = b0
x
x
= b0 b1x
y

y = b0 x b1

y = b0b1x

184
Mnimos cuadrados

los coeficientes son lineales en las primeras tres ecuaciones y no lineales en las
dos ltimas, y todas las ecuaciones son no lineales entre las variables. La ven-
taja de estos modelos es que pueden transformarse a una relacin lineal entre
las variables mediante una transformacin de variables y coeficientes adecuada
para poder abordarse como un problema semejante a la primera ecuacin del
primer conjunto de modelos analizados. Sin embargo, siempre habr modelos no
lineales que no puedan transformarse como los anteriores, y entonces habr que
desarrollar mtodos matemticos para estimar los coeficientes asociados a estos
modelos; tal es el objetivo de esta seccin.

La regresin no lineal es una extensin de los mtodos de regresin lineal usados


de manera iterativa para llegar a los valores de los parmetros de los modelos no
lineales. El anlisis estadstico de los resultados de la regresin no lineal tambin
es una extensin del aplicado en regresin lineal, pero no posee las bases teri-
cas rigurosas del ltimo. Los mtodos de los captulos 2 y 3 se disearon para ser
efectivos sobre todas las funciones objetivo suficientemente suaves y en especial
sobre las funciones cuadrticas. Sin embargo, a veces es posible descubrir m-
todos que resultan ser ms eficaces cuando la funcin objetivo tiene una forma
especial; por ejemplo, una de las formas ms importantes que se ha encontrado
en la prctica es la suma de cuadrados de otras funciones no lineales, como

m
F (x) = fi 2 (x) (4.22)
i =1

donde fi ( x) para i = 1,2,..., m , son funciones no lineales de varias variables.


sta es parecida a la suma de cuadrados de los errores en el caso de la regresin
lineal, segn puede observarse.

La minimizacin de funciones de este tipo se llama mnimos cuadrados no linea-


les. La funcin objetivo con esta forma nunca puede tener valores negativos en
los problemas donde surge sta. Como notacin es conveniente agrupar las fun-
ciones fi ( x) en un vector, de la siguiente manera:

f1 (x)

f (x)
f (x) = 2


f m (x) (4.23)

185
Aplicaciones de Programacin no Lineal

y entonces podemos escribir la ecuacin (4.22) como

F (x) = f T (x) f (x) (4.24)

Ahora veamos dos problemas comunes en los que se dan tales funciones en la
prctica.

Regresin no lineal

Un problema comn es enfrentarse al ajuste de una funcin matemtica a datos


experimentales variando los parmetros de la funcin. Por ejemplo, sobre bases
tericas o empricas se selecciona una forma funcional especfica , don-
de los elementos de x son las variables independientes o de control. stas son
puestas experimentalmente en algn valor xi y se mide alguna propiedad yi del
sistema que se esta estudiando. es un vector de n parmetros que tienen que
ajustarse hasta que se obtenga el mejor ajuste de ; por tanto, stas son las
variables de optimizacin de nuestro problema. Cuando es no lineal en ,
este tipo de problema se conoce como regresin no lineal. Cuando m > n se dice
que el problema esta sobredeterminado y cuando m < n, el problema se carac-
teriza como un sistema subdeterminado. Para la mayora de los problemas
sobredeterminados no ser posible hallar de manera que pase a
travs de todos los datos experimentales.

La diferencia entre yi y el valor predicho de se llama residual ei


y se expresa como

para i = 1,..., m (4.25)

El mejor ajuste por mnimos cuadrados se obtiene minimizando la funcin ,


que es la suma de cuadrados de los residuales

(4.26)

186
Mnimos cuadrados

con respecto a . Se toman los cuadrados para evitar la cancelacin entre re-
siduales de signo opuesto como en el caso de la regresin lineal. Observe que
si se obtiene un ajuste perfecto de a los datos experimentales.

Sistemas de ecuaciones no lineales

Otro problema comn es hallar la solucin de un sistema de n ecuaciones no


lineales

f1 (x) = 0
(4.27)

f n (x) = 0

en n incgnitas x . En notacin vectorial, la ecuacin (4.27) puede exponerse


como

f (x) = 0 (4.28)

El mnimo x* de la funcin

n
F (x) = f i 2 ( x ) = f T ( x )f ( x ) (4.29)
i =1

( )*
para la cual F x = 0 es la solucin deseada debido a que esta puede darse
solo si x* satisface cada una de las ecuaciones (4.27). Debe tenerse en mente
que tal punto no necesariamente existe cuando se dice que el sistema es incon-
sistente y por lo tanto no tiene solucin. Asimismo, la funcin F ( x) puede tener
( )
cualquier nmero de mnimos locales con F x* > 0 , lo cual no tiene mucha
relevancia en este problema excepto que no sean los mnimos deseados.

187
Aplicaciones de Programacin no Lineal

4.6 Derivadas de la suma de cuadrados de F (x )


Para obtener una expresin para el vector gradiente de una funcin de la forma
de la ecuacin (4.24), derivamos con respecto a x


n n n n
f
F (x) =
x j i=1
fi2 e j = 2 fi xij e j (4.30)
j =1 j =1 i =1

De la definicin 1.12 o la ecuacin (1.4a) acerca de la matriz jacobiana, se tiene

f1 (x)
f1 (x) f1 (x)

x1 x2 xn

f 2 (x) f 2 ( x ) f 2 (x)
(4.31)
J (x) = x1 x2 xn



f n (x) f n ( x ) f n (x)
x
1 x 2 x n

y como la ecuacin (4.30) expresa a un vector columna producto de una matriz y


un vector columna, entonces el vector gradiente puede escribirse como

F (x) = 2JT (x)f (x) (4.32)

Derivando la ecuacin (4.30) con respecto a x se obtiene la matriz hessiana


de F ( x):

n n n
fi T
( T
)
F (x) = H (x) =
x

j =1 i=1

2 fi
x e k e j

k =1 k j

188
Mnimos cuadrados

n n n 2
fi fi + f fi e e T
H (x) = 2 x x
k j
i
xk x j
k j

k =1 j =1 i =1

y el resultado es una matriz, como se esperaba; el primer trmino del lado dere-
cho corresponde a un producto entre dos matrices jacobianas, mientras que el
segundo trmino es un producto entre cada funcin fi y la matriz hessiana de
fi Es decir, si se define como
cada funcin . G i (x) fi (x)
la matriz hessiana de ,
entonces la matriz hessiana completa de F (x) puede escribirse como

n
T
H ( x ) = 2J ( x ) J ( x ) + 2 f i ( x )G i ( x ) (4.33)
i =1

Adems, definiendo

n
S (x) = f i ( x )G i ( x ) (4.34)
i =1

se tiene

H (x) = 2JT (x) J (x) + 2S (x) (4.35)

189
Aplicaciones de Programacin no Lineal

Mtodo de Newton

El punto de inicio para los algoritmos de mnimos cuadrados no lineales especiali-


zados es el mtodo de Newton, la iteracin bsica de dicho mtodo est dada por

H k d k = -Fk
es decir,

(JTk J k + Sk )dk = -JTk fk (4.36)

x k +1 = x k + d k (4.37)

El problema principal en la aplicacin del mtodo de Newton o mtodos de New-


ton modificados a la suma de cuadrados de las funciones es el clculo del trmino
S k , que si bien permite la simetra, implica la determinacin y evaluacin de
mn (n + 1) / 2 trminos de segundas derivadas. Sin embargo, el resto de la ma-
triz hessiana completa est expresada slo en trminos de primeras derivadas.

Esta observacin da lugar a dos amplias clases de algoritmos especializados


para mnimos cuadrados no lineales: aquellos que ignoran el trmino en S k , que
suelen denominarse algoritmos de residuales pequeos, y aquellos que aproxi-
man este trmino en alguna forma y que se denominan algoritmos de residuales
grandes. Queda fuera del alcance de este texto el anlisis de los algoritmos de
residuales grandes, por lo que slo se analizarn los primeros.

190
Mnimos cuadrados

4.7 Estimacin por mnimos cuadrados no lineales con algoritmos de


residuales pequeos

En esta seccin se analizarn mtodos que intentan resolver el problema expre-


sado por la ecuacin (4.29) ignorando el trmino de evaluar la matriz S k en la
ecuacin (4.35).

Mtodo de Gauss-Newton

Ignorando el trmino en S k , la ecuacin (4.36) del mtodo de Newton resulta en

JTk J k d k = -JTk f k (4.38)

que, junto con la ecuacin

x k +1 = x k + d k (4.39)

definen el mtodo de Gauss-Newton. El sistema de ecuaciones simultneas (4.38)


se conocen como las ecuaciones normales de los mnimos cuadrados. Es impor-
tante saber cundo puede justificarse hacer esta aproximacin, y la respuesta es
hasta donde lo permita la generacin de direcciones de descenso, pues la ecua-
cin (4.38) es menos complicada que la ecuacin (4.36) del mtodo de Newton,
JTk J k menos siempre es positiva semidefinida. Para ver
debido a que la matriz al
esto, tmese un vector arbitrario z 0 y sea y = J k z ; entonces

zT JTk J k z = yT y 0
El nico problema que puede darse con respecto a esta simplificacin es cuando
J k sea de rango deficiente y
JTk J k resulte singular. Sin embargo, an si
d k es una direccin de descenso, esto no garantiza que el valor de la funcin ob-
jetivo decrezca, es decir, que Fk +1 < Fk. El paso expresado por la ecuacin (4.39)
podra se muy largo, localizando a x k +1en un punto muy alejado del punto mnimo
lineal. Por estas razones, se requiere de un buen punto inicial para que exista una
oportunidad de convergencia hacia el mnimo.

191
Aplicaciones de Programacin no Lineal

Refirindose a las ecuaciones (4.33), (4.34) y (4.36), est claro que si f (x) 0
*
como x x tambin S (x) 0, y el mtodo de Gauss-Newton tiende al mtodo
de Newton como se vaya acercando al mnimo, lo cual tiene consecuencias favo-
rables para la rapidez de convergencia. Esta situacin ocurre en regresin no li-
neal cuando es posible un buen ajuste o en la solucin de un conjunto consistente
y bien condicionado de ecuaciones simultneas no lineales. Las consecuencias
tambin son las mismas cuando las funciones fi son casi lineales de manera que
G i 0 para i = 1,..., m , o cuando los trminos sucesivos fiG i se cancelen a
travs de diferencias de signo. Finalmente, las propiedades de convergencia del
mtodo de Gauss-Newton pueden mejorarse mucho si ste se usa junto con una
bsqueda lineal en la ecuacin (4.39).

Algoritmo 4.1 Mtodo de Gauss-Newton con bsqueda lineal:

Dados el conjunto de funciones f (x) y la matriz jacobiana J (x) , un


punto inicial x 0 , a = 1 y e .

Para k = 0,1,2,... hasta donde se satisfaga, hacer:

-1 T
1. d k = -
tener d k .
( JTk J k ) J k f k o bien resolver JTk J k d k = -JTk f k y ob-

Para j = 1,2,3,... hasta donde se satisfaga, hacer;


2. Calcular x k +1 = x k + ad k .
Si f (x k +1 ) < (1 - a / 2) f (x k ) , entonces

Ir al paso 5.
Fin del si.

a
3. a= .
2
4. Tomar j = j + 1 e ir al paso 2.

5. Si x k +1 - x k e o 2JTk +1f k +1 e , entonces


Tomar x k +1 x* y parar.

192
Mnimos cuadrados

Fin del si.


6. Tomar k = k + 1 y regresar al paso 1.

Ejemplo 4.4 Aplicando el mtodo de Gauss-Newton estime los coeficientes en la


correlacin de la funcin:

y = eb1 +b2 x

usando los siguientes datos experimentales y minimizando la suma de los cua-


drados de las desviaciones entre los datos experimentales y los valores predi-
chos de y.

n yexp x

1 0.50 -2.00
2 1.00 -1.00
3 2.00 0.00
4 4.00 1.00

Solucin:

Iniciando con y e = 0.001 , el mnimo hallado con la precisin dada


es , donde , el nmero total de iteraciones
principales fue de k =4.

193
Aplicaciones de Programacin no Lineal

n x yexp ycal error


1 -2.00 0.5000 0.5000 0.0000
2 -1.00 1.0000 1.0000 0.0000
3 0.00 2.0000 2.0000 -0.0000
4 1.00 4.0000 4.0000 -0.0000

Tabla 4.3 Tabla de datos observados y calculados por la correlacin.

Mtodo de Levenberg-Marquardt

El mtodo de Levenberg-Marquardt incorpora una tcnica ad-hoc para tratar los


problemas relacionados con la singularidad en la matriz JTk J k y es un algoritmo
efectivo para problemas de residuales pequeos. La ecuacin (4.38) se modifica a

(JTk J k + mk I)dk = -JTk fk (4.40)

donde mk 0 es un escalar e I es la matriz unidad de orden n . Entonces se


usa la ecuacin (4.39) para obtener un punto con el que se inicia la prxima ite-
racin. Para un valor suficientemente grande de , JTk J k + mk I
mk la matriz es po-
d k una direccin de descenso. Sin embargo, se requiere que
sitiva definida y es
mk 0 como xk x* , as que el mtodo adquiere la rapidez de convergencia
asinttica del mtodo de Gauss-Newton. En el mtodo originalmente inventado
por Levenberg (1944), mk se elige para minimizar F ( x k + d k ) con d k dada por
la ecuacin (4.40), mientras todo lo dems se mantiene constante. Como un paso
infinitesimal en la direccin de descenso, por definicin siempre reducir el valor
de la funcin en puntos no estacionarios, un valor suficientemente grande de
mk siempre ser exitoso y, como consecuencia, el mtodo puede hacerse global-
mente convergente. La tcnica para hallar el valor de mk esta muy relacionado con
la bsqueda lineal, pero no es estrictamente el caso.

194
Mnimos cuadrados

Estrategia de Marquardt

Marquardt (1963) mejor la eficiencia del algoritmo inventando una mejor estra-
tegia para seleccionar mk . Este se pone inicialmente en algn valor positivo (por
ejemplo, 0.01) y se utiliza un factor n > 1 (por ejemplo, 10) con el cual incremen-
tar o disminuir mk . Al principio de cada iteracin mk se reduce por el factor n , en
un intento por acercar el algoritmo al mtodo de Gauss-Newton. Si ste no reduce
el valor de la funcin objetivo, se incrementa repetidamente el nuevo valor de
mk por el factor n hasta que se obtenga una reduccin en el valor de la funcin.

Algoritmo 4.2 Mtodo de Levenberg-Marquardt (por Marquardt):

Dados el conjunto de funciones f (x) y la matriz jacobiana J (x) , un


punto inicial x 0 y e .
Sea m0 = 0.01 y n = 10 .

Para k = 0,1,2,... hasta donde se satisfaga, hacer:

1. mk = mk / n .

2. Para j = 0,1,2,... hasta donde se satisfaga, hacer;

(
3. d k = - JTk J k + mk I
-1 T
) J k fk ( )
o bien resolver JTk J k + mk I d k = -JTk f k

y obtener dk .
4. Calcular x k +1 = x k + d k .
5. Si Fk +1 > Fk , entonces mk = mk n .
Fin del si.

6. Si , entonces
Ir al paso 8.
Fin del si.
7. Tomar j = j +1 regresar a 3.

195
Aplicaciones de Programacin no Lineal

8. mk +1 = mk .

9. Si x k +1 - x k e o 2JTk +1f k +1 e , entonces


*
Tomar x k +1 x y parar.
Fin del si.
10. Tomar k = k + 1 y regresar al paso 1.

En este algoritmo no se desperdicia tiempo refinando el valor de mk , ya que es


mejor proceder en la prxima iteracin desde el punto que se inicia ms cerca
de la solucin. Marquardt sugiere que podra ser ventajoso reemplazar la matriz
unidad I por una matriz diagonal Dk cuyos elementos diagonales no negativos se
eligen de manera que reflejen el escalamiento de las variables.

Ejemplo 4.5 Aplicando el mtodo de Levenberg-Marquardt estime los coeficien-


tes en la correlacin de la funcin:

y = b1 + b2 sen (b3 x)

usando los siguientes datos experimentales y minimizando la suma de los cua-


drados de las desviaciones entre los datos experimentales y los valores predichos
de y.

196
Mnimos cuadrados

n yexp x

1 10.5244 1
2 10.7278 2
3 8.4233 3
4 5.7295 4
5 5.1232 5
6 7.1617 6
7 9.9709 7
8 10.9680 8
9 9.2363 9
10 6.3679 10
11 5.0000 11
12 6.3902 12
13 9.2605 13
14 10.9718 14
15 9.9508 15
16 7.1362 16
17 5.1158 17
18 5.7470 18
19 8.4496 19
20 10.7388 20

Solucin:

Con y e = 0.001 , el mnimo es


donde , el nmero total de iteraciones principales fue de k = 2 ,
la tabla 4.4 muestra la comparacin de datos observados contra los calculados.

197
Aplicaciones de Programacin no Lineal

n x yexp ycal error

1 1 10.5244 10.5244 0.0000


2 2 10.7278 10.7278 0.0000
3 3 8.4233 8.4233 0.0000
4 4 5.7295 5.7295 -0.0000
5 5 5.1232 5.1232 -0.0000
6 6 7.1617 7.1617 -0.0000
7 7 9.9709 9.9709 -0.0000
8 8 10.9680 10.9680 0.0000
9 9 9.2363 9.2363 0.0000
10 10 6.3679 6.3679 0.0000
11 11 5.0000 5.0000 -0.0000
12 12 6.3902 6.3902 -0.0000
13 13 9.2605 9.2605 -0.0000
14 14 10.9718 10.9718 0.0000
15 15 9.9508 9.9508 0.0000
16 16 7.1362 7.1362 0.0000
17 17 5.1158 5.1158 0.0000
18 18 5.7470 5.7470 -0.0000
19 19 8.4496 8.4496 -0.0000
20 20 10.7388 10.7388 -0.0000

Tabla 4.4 Tabla de datos observados y calculados por la correlacin.

Mtodos Cuasi-Newton

En el campo de los mnimos cuadrados no lineales, los mtodos cuasi-Newton se


aplican cuando la matriz jacobiana no esta disponible analticamente y la apro-
ximacin por diferencias finitas resulta muy laboriosa. En la k-sima iteracin se
obtiene una aproximacin B k a J k desde el punto actual x k ; luego se deter-
mina el vector de bsqueda d k por alguno de los mtodos ya estudiados usando
B k en lugar de J k , y se realiza una bsqueda lineal para determinar

x k +1 = x k + ak d k (4.41)

198
Mnimos cuadrados

de manera que f k +1 sea suficientemente menor que f k . La expansin en


( )
serie de Taylor hasta trminos de primer orden en x k +1 - x k muestra que

f k +1 = f k + J k (x k +1 - x k ) (4.42)

o bien

J k (x k +1 - x k ) = f k +1 - f k (4.43)

por tanto, Bk se actualiza en la forma usual de acuerdo con

B k +1 = B k + A k (4.44)

donde Ak es una matriz de actualizacin de manera que

B k (x k +1 - x k ) = f k +1 - f k (4.45)

esta es la condicin cuasi-Newton para mnimos cuadrados no lineales. Para ex-


plicarse de una manera sencilla, supngase que f (x) = 0 es un sistema de ecua-
ciones lineales, por ejemplo Ax - b = 0 . Si se restan los valores de f (x) en dos
puntos sucesivos del proceso iterativo, k y k+1, se tiene

f (x k +1 ) - f (x k ) = Ax k +1 - b - Ax k + b = A (x k +1 - x k )

en el caso no lineal esta igualdad no se cumple aunque puede hacerse eligiendo


A k +1 adecuadamente:

A k +1 (x k +1 - x k ) f (x k +1 ) - f (x k ) (4.46)

199
Aplicaciones de Programacin no Lineal

los mtodos cuasi-Newton construyen una sucesin {A k } de tal forma que


A k aproxime lo mejor posible a la matriz jacobiana J (x k ) .

Mtodo de Broyden de rango uno

Broyden (1965) utiliz una idea muy simple para obtener una aproximacin sa-
tisfactoria de A k +1 ; escogerla de tal forma que se minimice el valor de la fun-
cin que se obtendra en un mismo punto mediante las aproximaciones A k +1 y
A k y que se cumpla a la vez la condicin cuasi-Newton, ecuacin (4.46), dada como

A k +1 (x k +1 - x k ) = f (x k +1 ) - f (x k )

Con la aproximacin mencionada partiendo de x k +1 y x k , la diferencia de los


valores de la funcin en un punto x que habra que minimizar sera

f (x k +1 ) + A k +1 (x - x k +1 ) - f (x k ) - A k (x - x k )

Desarrollndola, queda

f (x k +1 ) - f (x k ) - A k +1 (x k +1 - x k ) + ( A k +1 - A k )(x - x k )

y sustituyendo la ecuacin (4.46) en sta ltima expresin, la diferencia por mini-


mizar resulta

( A k +1 - A k )(x - xk ) (4.47)

Si para todo x la diferencia x - xk se expresa como

x - x k = aDx k + s

200
Mnimos cuadrados

donde Dx k = x k +1 - x k y se cumple que sT Dx = 0 ; la expresin por mini-


mizar queda

a ( A k +1 - A k )Dx k + ( A k +1 - A k )s

Sobre el primer trmino no se puede actuar puesto que, segn la ecuacin (4.46),

( A k +1 - A k )Dxk = Dfk - A k Dxk (4.48)

donde Df k = f (x k +1 ) - f ( x k ) . El segundo trmino se puede hacer cero para


todo x escogiendo A k +1 de tal manera que

( A k +1 - A k )s = 0 (4.49)

para todo s ortogonal a Dx k . Esto requiere que la matriz A k +1 - A k sea de


rango uno, es decir, de la forma, uDxTk , con u R n. Ahora bien, para que se cumpla
la condicin cuasi-Newton, ecuacin (4.46), lo que equivale a la ecuacin (4.48)
como se acaba de ver, es decir, a Df k - A k Dx k , el vector u debe expresarse como

Df k - A k Dx k (4.50)
u
DxTk Dx k

La matriz, haciendo B=A

(Dfk - B k Dxk )DxTk (4.51)


B k +1 = B k +
DxTk Dx k

es, por lo tanto, la que cumple ese propsito de minimizar la diferencia indica-
da, verificndose adems la condicin cuasi-Newton, ecuacin (4.46). La fr-
mula dada por la ecuacin (4.51) es la que propuso Broyden para aproximar la
matriz jacobiana en cada iteracin del mtodo de Newton. Para estos mtodos,

201
Aplicaciones de Programacin no Lineal

B k +1 mantiene la informacin derivativa exacta a lo largo del vector d k cuando


f es lineal. Broyden (1965) establece la frmula de actualizacin de manera nica
dada por

T
Ak =
(fk +1 - fk - Bk (xk +1 - xk ))(xk +1 - xk ) (4.52)
T
(xk +1 - xk ) (xk +1 - xk )
que es la base del mtodo de rango uno de Broyden. Esta ecuacin se incorpora
dentro del mtodo de Gauss-Newton para establecer el siguiente algoritmo.

Algoritmo 4.3 Mtodo de Broyden de rango uno con bsqueda lineal:

Dados el conjunto de funciones f (x) , un punto inicial x0 y e .

Calcular B0 = J (x0 ) por diferencias finitas.

Para k = 0,1,2,... hasta donde se satisfaga, hacer:

-1
1. d k = -(BTk B k ) BTk fk o bien resolver BTk B k d k = -BTk fk y obtener d k .
Para j = 1,2,3,... hasta donde se satisfaga, hacer;
2. Calcular x k +1 = x k + ad k .

(
Si f x k +1 ) < (1- a / 2) f (xk ) , entonces
Ir al paso 5.
Fin del si.

a
3. a= .
2
4. Tomar j = j +1 e ir al paso 2.

202
Mnimos cuadrados

Fk +1 - Fk
5. Si x k +1 - x k e o e , entonces
Fk
Tomar x k +1 x* y parar.
Fin del si.
T
6. Calcular A k =
(fk +1 - fk - Bk (xk +1 - xk ))(xk +1 - xk ) .
T
(xk +1 - xk ) (xk +1 - xk )
7. Calcular B k +1 = B k + A k .
8. Tomar k = k + 1 y regresar al paso 1.

Ejemplo 4.6 Usando el mtodo de Broyden estime los coeficientes en la correlacin

y = b1x12 + b2 x22 + b3 x1x2

con los siguientes datos experimentales, minimizando la suma de los cuadrados


de las desviaciones entre los datos experimentales y los valores predichos de y .

n yexp x1 x2
1 162 274 2450
2 120 180 3254
3 223 375 3802
4 131 205 2838
5 67 86 2347
6 169 265 3782
7 81 98 3008
8 192 330 2450
9 116 195 2137
10 55 53 2560
11 252 430 4020
12 232 372 4427
13 144 236 2660
14 103 157 2088
15 212 370 2605

203
Aplicaciones de Programacin no Lineal

Solucin:

Con y e = 10-6 , el mnimo hallado con la precisin dada, es


donde , La convergencia
del mtodo se obtuvo en k = 21 iteraciones principales.

n x1 x2 yexp ycal error

1 274 2450 162.0 118.8 43.2


2 180 3254 120.0 108.6 11.4
3 375 3802 223.0 236.9 -13.9
4 205 2838 131.0 94.5 36.5
5 86 2347 67.0 55.0 12.0
6 265 3782 169.0 164.2 4.8
7 98 3008 81.0 91.6 10.6
8 330 2450 192.0 164.3 27.7
9 195 2137 116.0 67.6 48.4
10 53 2560 55.0 71.4 -16.4
11 430 4020 252.0 298.2 -46.2
12 372 4427 232.0 263.8 -31.8
13 236 2660 144.0 101.2 42.8
14 157 2088 103.0 52.8 50.2
15 370 2605 212.0 205.4 6.6

Tabla 4.5 Tabla de datos observados y calculados por la correlacin.

204
Mnimos cuadrados

4.8 Solucin de sistemas de ecuaciones no lineales

El mtodo de Newton-Raphson para sistemas de ecuaciones no lineales se defi-


ne de una manera semejante a como se hizo en el caso de una sola variable. Se
estudiar el caso de resolver el problema dado por la ecuacin (4.28)

f (x) = 0

Mtodo de Newton

El enfoque que se considerar es el similar a la formulacin de un problema de


mnimos cuadrados no lineales de residuales pequeos con una matriz jacobia-
na de tamao n por n. Cuando la matriz jacobiana es cuadrada y no singular las
ecuaciones normales (4.38)

JTk J k d k = -JTk f k

T
pueden reducirse premultiplicando por J-
k para obtener

J k d k = -f k (4.53)

Esta formulacin junto con la ecuacin (4.37) dada por

x k +1 = x k + d k

definen al mtodo de Newton para sistemas de ecuaciones no lineales que tiene


propiedades de convergencia semejantes al mtodo de Gauss-Newton. De nue-
vo, la estabilidad del mtodo puede ampliarse realizando bsquedas lineales

x k +1 = x k + ak d k

hasta reducir fk .

205
Aplicaciones de Programacin no Lineal

Algoritmo 4.4 Mtodo de Newton:

Dados el conjunto de funciones f (x) y la matriz jacobiana J (x) , un


punto inicial x 0 y e .

Para k = 0,1,2,... hasta donde se satisfaga, hacer.

1
1. d k = -J-
k fk o bien resolver J k d k = -f k y obtener dk .

2. Calcular x k +1 = x k + d k .

3. Si x k +1 - x k e o f k +1 e , entonces
*
Tomar x k +1 x y parar.
Fin del si.
4. Tomar k = k + 1 y regresar al paso 1.

Ejemplo 4.7 Resuelva utilizando el mtodo de Newton y partiendo del punto


T
x0 = (1.0,1.0,1.0) y e = 0.01 , el sistema siguiente de ecuaciones no lineales.

1
f1 (x) = 3 x1 - cos ( x2 x3 ) - = 0
2
2
1
f 2 ( x) = x12 - 81 x2 + + sen ( x3 ) + 1.06 = 0

10
10p - 3
f3 (x) = e- x1x2 + 20 x3 + =0
3

Solucin:

El mnimo hallado con la precisin dada es , donde


F (x) = 0.0 , la convergencia del mtodo se obtuvo k = 6 iteraciones principales.

206
Mnimos cuadrados

Algoritmo 4.5 Mtodo de Newton con bsqueda lineal:

Dados el conjunto de funciones f (x) y la matriz jacobiana J (x) , un


punto inicial x 0 y e .

Para k = 0,1,2,... hasta donde se satisfaga, hacer:

1
1. d k = -J-k f k o bien resolver J k d k = -f k y obtener d k .
Para j = 1,2,3,... hasta donde se satisfaga, hacer;

2. Calcular x k +1 = x k + ad k .

(
Si f x k +1 ) < (1- a / 2) f (xk ) , entonces
Ir al paso 5.
Fin del si.

a
3. a = .
2
4. Tomar j = j +1 e ir al paso 2.

5. Si x k +1 - x k e o f k +1 e , entonces
*
Tomar x k +1 x y parar.
Fin del si.
6. Tomar k = k + 1 y regresar al paso 1.

Ejemplo 4.8

Resuelva el sistema de ecuaciones no lineales del ejemplo 4.7 utilizando el


T
mtodo de Newton con bsqueda lineal y partiendo del punto x0 = (1.0,1.0,1.0)
y e = 0.01.

207
Aplicaciones de Programacin no Lineal

Solucin:

El mnimo es con F (x) = 0.0 , la convergencia del


mtodo se obtuvo en k =6 iteraciones principales.

Mtodos Cuasi-Newton

El objetivo de estos mtodos consiste en aproximar la matriz jacobiana en cada


iteracin del mtodo de Newton mediante relaciones de recurrencia que la rela-
cionen con el valor que toma en anteriores iteraciones. Los mtodos cuasi-New-
ton son muy adecuados para la solucin de sistemas de ecuaciones no lineales.

Mtodo de Broyden de rango uno

Para llevar numricamente a la prctica el mtodo de Broyden, son varios los


aspectos importantes que hay que considerar. El primero consiste en determinar
una buena aproximacin inicial de B 0 ; lo que suele hacerse en este sentido es
J 0 Otra cuestin importante
J 0 aproximacin por diferencias finitas de .
utilizar la
que debe tenerse en cuenta nace del hecho de que el mtodo de Broyden adapta
de iteracin en iteracin la matriz B y no la B-1 , con la que se operara mucho
ms eficazmente. En este sentido y sin tener en cuenta otras consideraciones,
1
B-
por qu no partir de una y
0 B-1 Se reducira el nmero global de
readaptar ?
operaciones necesarias para resolver el sistema de ecuaciones.

A tal efecto, la actualizacin dada por la ecuacin (4.51) de rango uno de Broyden
puede desarrollarse usando la frmula de Householder del siguiente lema:

Lema 4.1 (Sherman-Morrison-Woodbury).

(i) Si A es una matriz no singular de orden n x n y r y s dos vectores


n
cualesquiera de R , A + rsTes no singular, si y slo si u = 1 + sT A-1r 0 .

(ii) Tambin

T -1 A-1rsT A-1
(A + rs ) =A -1
-
u
(4.54)

208
Mnimos cuadrados

Como

(
A + rsT = I + rsT A-1 A )

y rsT es de rango uno, el punto (i) resulta del hecho de que la matriz

I + rsT A-1

tiene n - 1 valores propios iguales a la unidad y el restante es u . La frmula del


punto (ii) se comprueba fcilmente multiplicndola por A + rsT . Entonces,

T -1 AA-1rsT A-1
(A + rs )(A + rs )
T
= AA -1
-
u
T -1 rs T A -1rs T A -1
+ rs A -
u
T -1
T -1 rsT A-1 T -1 (u - 1)rs A
(A + rs )(A + rs )
T
=I-
u
+ rs A -
u

y, por consiguiente,

-1
( )(
A + rsT A + rsT ) =I

209
Aplicaciones de Programacin no Lineal

-1
La aplicacin inmediata de este lema lleva a deducir que si se conoce B 0
la frmula de actualizacin de Broyden es
(= J-0 1)

B- 1 -1 (B-k 1Dfk - Dxk )DxTk B-k 1 (4.55)


k +1 = B k -
DxTk B- 1
k Df k

-1
Entonces, las matrices B reemplazan a las matrices B en la formulacin b-
sica y d k se obtiene por analoga con la ecuacin (4.53) como

1
d k = -B-
k fk
(4.56)

sin necesidad de resolver un sistema de ecuaciones lineales.

Algoritmo 4.6 Mtodo de Broyden de rango uno con bsqueda lineal:

Dados el conjunto de funciones f (x) , un punto inicial x0 y e.


B- 1 -1
Calcular 0 = J 0 por diferencias finitas.

Para k = 0,1,2,... hasta donde se satisfaga, hacer:

1
1. d k = -B-k fk .
Para j = 1,2,3,... hasta donde se satisfaga, hacer;

2. Calcular x k +1 = x k + ad k .

(
Si f x k +1 ) < (1- a / 2) f (xk ) , entonces
Ir al paso 5.

210
Mnimos cuadrados

Fin del si.

a
3. a = .
2
4. Tomar j = j + 1 e ir al paso 2.
5. Si x k +1 - x k e o f k +1 e , entonces
*
Tomar x k +1 x y parar.
Fin del si.

6. Calcular A k =
( k Df k - Dx k )Dx k B k
B- 1 T -1
.
DxTk B- 1
k Df k

7. Calcular B k +1 = B k + A k .
8. Tomar k = k + 1 y regresar al paso 1.

Ejemplo 4.9
Resuelva el sistema de ecuaciones no lineales del ejemplo 4.7 utilizando el m-
T
todo de Broyden con bsqueda lineal y partiendo del punto x0 = (1.0,1.0,1.0) y
e = 0.01 .

Solucin:

El mnimo es con F (x) = 0.000001, la convergencia


el mtodo se obtuvo en k = 13 iteraciones principales.

211
Aplicaciones de Programacin no Lineal

Problemas

Para los siguientes 4 problemas utilice el mtodo de mnimos cuadrados lineales.

4.1 Se realiz un experimento para medir la impedancia de un circuito R - L en


serie. La impedancia Z se da en funcin de la resistencia R , la frecuencia de la
fuente f y la inductancia L como

Z 2 = R 2 + 4p 2 f 2 L2

En el experimento se midi Z como funcin de f , las lecturas obtenidas se dan


en la tabla.

f(Hz) Z()

123 7.4
158 8.4
194 9.1
200 9.6
229 10.3
245 10.5
269 11.4
292 11.9
296 12.2

a) Verifique si las observaciones se pueden interpretar en trminos de una recta


para todo el rango o parte de l.
b) Estime los coeficientes en la correlacin

y = b1 + b2 x

donde y = Z2 y x = f 2.

212
Mnimos cuadrados

c) Calcule los mejores valores de L y de R .


d) Evale el coeficiente de correlacin.

4.2 Se ha llevado a cabo un experimento para investigar la dependencia con la


temperatura de la resistencia de un alambre de cobre. Un modelo comn se re-
presenta por la ecuacin

R = R0 (1 + aT )

donde R es la resistencia a la temperatura T C , R0 es el valor de la resisten-


0C y es
cia a , a el coeficiente de temperatura de la resistencia. Las mediciones
de R y T obtenidas se dan en la tabla de abajo.

R() T(oC)

12.3 10
12.9 20
13.6 30
13.8 40
14.5 50
15.1 60
15.2 70
15.9 80

a) obtenga el mejor valor para los coeficientes.

b) obtenga el mejor valor de R0 y a .

c) obtenga el coeficiente de correlacin.

213
Aplicaciones de Programacin no Lineal

4.3 Las siguientes mediciones se efectuaron durante una investigacin de fen-


menos para los cuales no hay modelos disponibles. Identifique en cada caso una
funcin adecuada y evale sus constantes.

a)
y x

0.61 0.1
0.75 0.2
0.91 0.3
1.11 0.4
1.36 0.5
1.66 0.6
2.03 0.7
2.48 0.8
3.03 0.9

b)

y x
94.8 2.0
87.9 5.0
81.3 8.0
74.9 11.0
68.7 14.0
64.0 17.0

4.4 Se obtuvieron los siguientes datos:

y x
1.00 10.0
1.26 20.0
1.86 30.0
3.31 40.0
7.08 50.0

214
Mnimos cuadrados

Cul de los tres modelos siguientes representa mejor la relacin entre las varia-
bles?.

2
a) y = eb1 +b2 x b) y = eb1 +b2 x+b3 x c) y = b1x b2
En los 3 problemas que siguen, enuncie las variables o combinaciones de varia-
bles que deben graficarse para verificar la variacin sugerida, y diga cmo puede
encontrarse la incgnita o parmetros desconocidos del modelo (pendiente, or-
denada al origen, etc.).

4.5 La velocidad de flujo de salida de un fluido ideal por un orificio en el lado de


un tanque est dada por

2P
v=
r

donde v y P son las variables medidas. Determine r.

4.6 La ley de los gases para un gas ideal es

PV = nRT

donde P yT son las variables medidas; V y n son fijas y conocidas. Determine R .

4.7 La variacin relativista de la masa con la velocidad es

m0
m=
v2
1- 2
c

donde m y v son variables medidas. Determine m0 y c .

215
Aplicaciones de Programacin no Lineal

Resuelva el siguiente conjunto de 3 problemas de mnimos cuadrados no linea-


les. Proponga en cada caso el vector inicial y la tolerancia. Emplee en cada caso
el mtodo que juzgue ms conveniente. Grafique las curvas o superficies con el
software de que disponga.

4.8 Estime los valores de los parmetros b1 y b2 minimizando la suma de cua-


drados de los residuales

donde

b1
y (t ) =
b1 - b2
(
e-b2t - e-b1t )
para el siguiente conjunto de datos:

t 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5

y 0.273 0.446 0.560 0.593 0.648 0.640 0.615 0.602 0.579

4.9 Estime los coeficientes en la correlacin

y = b1x1b2 x2b3

216
Mnimos cuadrados

del siguiente conjunto de datos minimizando la suma de cuadrados de los resi-


duales entre los valores y de datos experimentales y los ajustados.

x1 2.0 6.0 9.0 2.5 4.5 9.5 8.0 4.0 3.0 7.0 6.5

x2 36.0 8.0 3.0 6.25 7.84 1.44 4.0 7.0 9.0 2.0 5.0

y 46.5 591 1285 36.8 241 1075 1024 151 80 485 632

4.10 Estime los coeficientes para la siguiente correlacin y conjunto de datos:

n y x n y x

1 185.1 1.176 16 218.0 52.44


2 176.0 4.436 17 291.1 55.22
3 164.2 10.23 18 277.4 57.48
4 155.8 13.56 19 205.3 59.74
5 145.3 18.92 20 179.6 60.46
6 135.0 24.98 21 91.37 64.42
7 128.0 27.42 22 83.39 65.45
8 118.0 34.56 23 76.71 67.48
9 110.3 39.00 24 70.53 70.06
10 106.4 42.25 25 72.68 70.65
11 105.8 44.19 26 67.90 74.46
12 106.2 46.83 27 60.31 82.14
13 105.3 46.26 28 58.96 85.18
14 173.7 51.12 29 56.63 89.38
15 195.0 51.84 30 54.10 94.55
31 50.10 100.8

217
Aplicaciones de Programacin no Lineal

Resuelva los siguientes 3 sistemas de ecuaciones no lineales. Proponga en cada


caso el vector inicial y la tolerancia. Emplee en cada caso el mtodo que juzgue
ms conveniente. Grafique las superficies con el software de que disponga.

x1 + x2 - 3
4.13 f (x) = 2 , tiene ms de una solucin.
x1 + x2 - 9
2

x 2 + x 2 - x

4.14 f (x) = 1 2 1
, tiene ms de una solucin.
x1 - x2 - x2
2 2


x1

4.15 f (x) = x22 + x2 , tiene ms de una solucin.

e x3 -1

218
CAPTULO 5
Fundamentos de optimizacin restringida
5.1 Introduccin

Esta seccin describe los conceptos relacionados a problemas de optimizacin


restringidos. Las condiciones necesarias de optimalidad se explican e ilustran con
ejemplos. Todos los puntos ptimos deben satisfacer estas condiciones.

El modelo de optimizacin de diseo general trata de hallar un vector

xT = ( x1 , x2 ,..., xn ) (5.1)

de variables independientes para minimizar un funcin objetivo

f (x ) = f ( x1 , x2 ,...., xn ) (5.2)

sujeta a las restricciones de igualdad

h j (x ) = 0; j = 1,..., m (5.3)

y las restricciones de desigualdad

g k (x ) 0; k = 1,..., l (5.4)

221
Aplicaciones de Programacin no Lineal

las restricciones de desigualdad sern ignoradas inicialmente para discutir el Teo-


rema de Lagrange dado en libros de clculo. Luego se extender el teorema para
las restricciones de desigualdad para obtener las condiciones necesarias de Ka-
rush-Kuhn-Tucker para el modelo general definido en las ecuaciones (5.2) a (5.4)

Basndose en la discusin de problemas de optimizacin no restringidos se podra


concluir que slo la naturaleza de la funcin objetivo f (x ) para los problemas
restringidos, determinar la localizacin del punto mnimo. Sin embargo, esto
no es del todo cierto, las funciones de restriccin juegan un papel importante en
la determinacin de la solucin ptima. Los siguientes ejemplos ilustran estas
situaciones.

Ejemplo 5.1

2 2
Minimizar f (x ) = ( x1 - 2) + ( x2 - 2)

g1 (x ) = x1 + x2 - 2 0
sujeta a: g 2 (x ) = -x1 0
g3 (x ) = -x2 0

222
Fundamentos de optimizacin restringida

Solucin:

El conjunto de soluciones para el problema es la regin triangular de color mos-


trada en la figura 5.1.

Figura 5.1 Punto ptimo restringido.

Si se ignoran las restricciones, f (x ) tiene un mnimo en el punto (2,2) que viola


la restriccin g1. Obsrvese que los contornos de f (x ) son crculos concntricos,
ellos crecen en dimetro como el valor de la funcin f (x ) crece. Es claro que
el valor mnimo para f (x ), corresponde a un crculo con el radio ms pequeo
intersectando la regin factible (conjunto de restricciones), este es el punto (1,1)
en el cual f (x ) = 2 . El punto est en la frontera de la regin factible. De esta
manera, la localizacin del punto ptimo esta gobernada por las restricciones del
problema planteado.

223
Aplicaciones de Programacin no Lineal

Ejemplo 5.2

1 2 1 2
Minimizar f (x ) = x1 - + x2 -
2 2

g1 (x ) = x1 + x2 - 2 0
sujeto a: g 2 (x ) = -x1 0
g 3 ( x ) = - x2 0

Figura 5.2 Punto ptimo no restringido para un


problema restringido.

224
Fundamentos de optimizacin restringida

Solucin:

El conjunto de restricciones es el mismo que en el ejemplo anterior. La funcin ob-


f (x )
jetivo ha sido modificada, sin embargo, si se ignoran las restricciones, tiene
un mnimo en (1/2,1/2) .Ya que el punto tambin satisface todas las restricciones, ste
es la solucin ptima. La solucin para este problema ocurre en el interior de la regin
factible y las restricciones no juegan un papel importante en su localizacin.

Obsrvese que una solucin a un problema de optimizacin restringido puede no


existir. Esto sucede si se sobre restringe el sistema. Los requerimientos pueden
ser conflictivos de manera que sea imposible construir un sistema para satisfa-
cerlos. En tal caso, se debe reexaminar la formulacin del problema y relajar las
restricciones. El siguiente ejemplo ilustra la situacin.

Ejemplo 5.3

2 2
Minimizar f (x ) = ( x1 - 2) + ( x2 - 2)

g1 (x ) = x1 + x2 - 2 0
g 2 (x ) = -x1 0
sujeta a:
g3 (x ) = -x2 0
g 4 (x ) = -x1 + x2 + 3 0

225
Aplicaciones de Programacin no Lineal

Figura 5.3 Problema infactible.

Solucin:

La figura 5.3 muestra una grfica de las restricciones para el problema. Puede
verse que no hay un punto que satisfaga todas las restricciones en el primer
*
cuadrante y por lo tanto no hay solucin, es decir, no hay punto factible. x es el
ptimo no restringido.

5.2 Condiciones para la minimizacin restringida

En esta ocasin, se inicia con el estudio de las condiciones necesarias y suficien-


tes que se satisfacen en puntos solucin. Estas condiciones adems de su valor
intrnseco para caracterizar soluciones, definen a los multiplicadores de Lagrange
y a cierta matriz Hessiana que, considerados juntos, forman la base del desarrollo
y el anlisis de los algoritmos que se utilizan para resolver problemas de optimi-
zacin restringidos.

226
Fundamentos de optimizacin restringida

Restricciones

Los problemas que se tratan son los del tipo general de programacin no lineal
de la forma

Minimizar f (x )

h j (x ) = 0; j = 1,..., m
sujeta a: g k (x ) 0; k = 1,..., l (5.5)

x En

donde m n , y las funciones f , h j y g k son continuas y en general, se su-


pone que tienen segundas derivadas parciales continuas. Por simplicidad de no-
T
tacin, se introducen las funciones con valores vectoriales h = (h1 ,..., hm ) y
T
g = ( g1 ,..., gl ) y se vuelve a escribir (5.5) como

Minimizar f (x )

h (x ) = 0
sujeta a: g (x ) 0
(5.6)
x En

227
Aplicaciones de Programacin no Lineal

El Plano Tangente

Un conjunto de restricciones de igualdad en En

h (x ) = 0 (5.7)

n
define un subconjunto de E , que se considera mejor tratndolo como una hiper-
superficie. Si las restricciones son regulares en todas partes, de acuerdo como
n - m Si
lo que se expone ms adelante, esta hipersuperficie tiene dimensin .
como se supone en este momento, las funciones h j, j = 1,..., m tienen primeras
derivadas parciales continuas, la superficie definida por ellas se denomina uniforme.

Asociado a un punto de una superficie uniforme est el plano tangente en ese


punto, trmino que en dos o tres dimensiones tiene un significado evidente. Para
formalizar la nocin general, se comienza definiendo curvas en una superficie.

Definicin 5.1

Una curva en una superficie S es una familia de puntos x (t ) S


continuamente parametrizados por t para a t b .
La curva es diferenciable si existe x (t ) , y es doblemente diferenciable si
existe x (t ). Se
* * *
* *
()
dice que una curva x (t ) pasa por el punto x si x = x t
*

para alguna t , a t b, la derivada de la curva en x est lgicamen-


n
x (t * ) que es un vector de .
te definida como , E

Considrense ahora todas las curvas diferenciables en S que pasan por un punto
x* El plano tangente en se
. x* define como el conjunto de las derivadas de todas
* n
las curvas diferenciables en x . El plano tangente es un subespacio de E . Para
las superficies definidas por un conjunto de relaciones de restriccin como (5.7),
el problema de obtener una representacin explcita para el plano tangente es un
problema fundamental que se estudia a continuacin. Idealmente, sera deseable
expresar este plano tangente desde el punto de vista de las derivadas de las fun-
hj
ciones que definen la superficie.

228
Fundamentos de optimizacin restringida

* *
( )
Definicin 5.2 Un punto x que satisfaga la restriccin h x = 0 ,
se denomina punto regular de la restriccin si los vectores gradientes
( ) ( )
h1 x* ,..., hm x* son linealmente independientes.

La independencia lineal significa que no hay dos gradientes que sean paralelos
entre s, y ningn gradiente puede expresarse como una combinacin lineal de
los otros.

*
Teorema 5.1 En un punto regular x de la superficie S definida por
h (x ) = 0 , el plano tangente es igual a

{ ( )
T = y : hT x* y = 0 }

Los multiplicadores de Lagrange tienen un significado geomtrico as como fsico.


Sus valores dependen de la forma de la funcin objetivo y de las restricciones,
si estas funciones cambian, el valor de los multiplicadores de Lagrange tambin
cambia.

Para introducir la idea de los multiplicadores de Lagrange, se considerar el si-


guiente ejemplo de minimizar una funcin objetivo de dos variables con una ecua-
cin de restriccin de igualdad.

Ejemplo 5.4 Hallar x* para

2 2
minimizar f (x ) = ( x1 - 2) + ( x2 - 2) (5.8)

sujeta a h (x ) = x1 + x2 - 2 = 0 (5.9)

229
Aplicaciones de Programacin no Lineal

Solucin:

Resolviendo el problema despejando una de las variables y optimizando con res-


pecto a la variables independiente resulta

1
x* =
1 y ( )
f x* = 2

La lnea recta h (x ) representa la restriccin de igualdad y la regin factible para


el problema. Por lo tanto la solucin ptima debe caer sobre la lnea. La funcin
objetivo es la ecuacin de un crculo con su centro en el punto (2,2). Los contor-
*
nos de la funcin dependen del valor de f (x ). Puede verse que el punto x con
coordenadas (1,1) da la solucin ptima para el problema. El contorno de valor 2
de la funcin objetivo toca justo a la lnea h (x ), as, este es el valor mnimo para
la funcin objetivo.

Figura 5.4 Problema con una restriccin de igualdad.

230
Fundamentos de optimizacin restringida

Reduccin de Variables e Introduccin a los Multiplicadores de Lagrange


*
Ahora se ver que condiciones matemticas se satisfacen en el punto mnimo x
( )
del ejemplo anterior. Sea el punto ptimo representado como x* = x1* , x2* . Para
derivar las condiciones e introducir el multiplicador de Lagrange, primero se supon-
dr que la restriccin de igualdad puede usarse para resolver para una variable en
trminos de la otra (al menos simblicamente), es decir, se asume que se puede
escribir

x2 = F( x1 ) (5.10)

donde F es una funcin apropiada de x1 . En muchos problemas, puede que


no sea posible escribir explcitamente la funcin F ( x1 ), pero para propsitos de
derivacin, se asumir su existencia. Ser visto posteriormente que la forma ex-
plcita de la funcin no es necesaria. Para el ejemplo 5.4, F ( x1 ) de la ecuacin
(5.9) est dada como

F( x1 ) = -x1 + 2 (5.11)

Sustituyendo la ecuacin (5.10) en la ecuacin (5.8), se elimina x2 de la funcin


objetivo y se obtiene el problema de minimizacin no restringido en trminos de
x1 , solamente:

Minimizar f ( x1, F( x1 )) (5.12)

para el ejemplo 5.4, sustituyendo la ecuacin (5.11) en la ecuacin (5.8) se tiene

2 2
f ( x1 ) = ( x1 - 2) + (-x1 ) = 2 x12 - 4 x1 + 4

la condicin necesaria
df
= 2( x1 - 2) + 2 x1 = 4 x1 - 4 = 0
dx1

231
Aplicaciones de Programacin no Lineal

* *
da x1 = 1 . Luego la ecuacin (5.11) da x2 = 1 y la funcin objetivo en el punto
(1,1) es 2. Puede verificarse que la condicin suficiente

d2 f
= 4>0
dx12

1
se satisface. As el punto x* =
1
es verdaderamente un mnimo. Si se supone que la forma explcita de la funcin
F( x1 ) no puede obtenerse (que es el caso generalmente), entonces, algn proce-
dimiento alternativo debe desarrollarse para obtener la solucin ptima. Se derivar
tal procedimiento y se ver que el multiplicador de Lagrange para la restriccin se
define naturalmente en el proceso. Usando la regla de la cadena de la diferencia-
cin, se escribe la condicin necesaria

df
=0
dx1

para el problema definido en la ecuacin (5.12) como

df f ( x1 , x2 ) f ( x1 , x2 ) dx2
= +
dx1 x1 x2 dx1

sustituyendo la ecuacin (5.10), la ecuacin anterior puede escribirse en el punto


( )
ptimo x1* , x2* como

(
f x1* , x2* ) + f ( x1*, x2* ) dF = 0 (5.13)
x1 x2 dx1

232
Fundamentos de optimizacin restringida

dF
ya que F no se conoce, se necesita eliminar d F / dx1 de la ecuacin (5.13).
Para realizar esto, se deriva la ecuacin de restriccin h ( x1, x2 ) = 0 en el punto
( )
x1* , x2* como dx1

* *
(
dh h x1 , x2
= +
) (
h x1* , x2* d F
=0
)
dx1 x1 x2 dx1

dF
y despejando , se obtiene
dx1

(
h x1* , x2* )
dF x1 (5.14)
=-
dx1 (
h x1* , x2* )
x2

dF
ahora, sustituyendo , de la ecuacin (5.14) en (5.13), se obtiene
dx1

h
f f x1
- = 0 (5.15)
x1 x2 h

x2

si se define una cantidad l como

f
x
l - 2 (5.16)
h
x2

233
Aplicaciones de Programacin no Lineal

y sustituyendo sta en la ecuacin (5.15), se tiene

f h
+l =0 (5.17)
x1 x1

Tambin, rearreglando la ecuacin (5.16) que define l , se obtiene

f h (5.18)
+l =0
x2 x2

Las ecuaciones (5.17) y (5.18) junto con la restriccin de igualdad h(x)= 0 ,


son las condiciones necesarias de optimalidad. Cualquier punto que viole estas
condiciones no puede ser un punto mnimo para el problema. Para el ejemplo 5.4
estas condiciones dan

2( x1 - 2) + l = 0
2( x2 - 2) + l = 0
x1 + x2 - 2 = 0

la solucin a este conjunto de ecuaciones es x*T = (1,1) y l* = 2 .

Significado Geomtrico de los Multiplicadores de Lagrange

Se acostumbra usar lo que se conoce como la funcin de Lagrange para escribir


las condiciones necesarias. La funcin de Lagrange se denota con la letra L y se
define usando las funciones objetivo y de restricciones como

L ( x , l ) = f ( x ) + lh ( x ) (5.19)

234
Fundamentos de optimizacin restringida

se ha observado que las condiciones necesarias de las ecs. (5.17) y (5.18) estn
dadas en trminos de L como

( )
L x * = 0 (5.20)

escribiendo esta condicin usando la ecuacin (5.19) se obtiene

( ) ( )
f x * + lh x * = 0 (5.21)

que puede reescribirse de la siguiente manera

( )
f x* = -lh x* ( ) (5.22)

Esta ecuacin muestra que en el punto mnimo candidato, los gradientes de las
funciones objetivo y de restricciones estn a lo largo de la misma lnea y son
proporcionales. (Obsrvese (5.22) con el ejemplo dado). El concepto de los mul-
tiplicadores de Lagrange es bastante general. El multiplicador de Lagrange pue-
de interpretarse para una restriccin como una fuerza requerida para imponer la
restriccin.

Condiciones Necesarias: Restricciones de Desigualdad

Si ahora se incluyen restricciones de desigualdad de la forma

g k (x ) 0 k = 1,..., l

en el problema de optimizacin general, se puede transformar una restriccin de


desigualdad a una igualdad adicionando una nueva variable a sta, llamada la
variable de holgura, debido a que la restriccin es de la forma , esto es, su valor
es negativo o nulo. De esta manera, la variable de holgura siempre deber ser no
negativa, es decir, nula o positiva respectivamente, para hacer de la desigualdad
una igualdad. Una restriccin de desigualdad

235
Aplicaciones de Programacin no Lineal

g k (x ) 0

es equivalente a la restriccin de igualdad

g k (x ) + sk = 0 , sk 0

Las variables sk son tratadas como incgnitas del problema de optimizacin jun-
to con las variables originales. Sus valores deben determinarse como una parte
de la solucin. Cuando la variable sk tiene valor nulo ( sk = 0 ), la correspondiente
restriccin de desigualdad se satisface como igualdad. Tal desigualdad es llama-
da una restriccin activa (o ajustada), es decir, no hay holgura en la restriccin.
Para cualquier sk > 0, la correspondiente restriccin es una desigualdad estricta.
Esta es llamada una restriccin inactiva (o pasiva), tiene holgura dada por sk .

Obsrvese que en el procedimiento anterior, debe introducirse una variable adi-


cional sk y una restriccin adicional sk 0 para tratar cada restriccin de desigual-
dad. Esto incrementa la dimensin del problema de optimizacin. La restriccin
2
(sk 0) puede evitarse si se usa sk como la variable de holgura en lugar de sk .
Por tanto, la desigualdad g k (x ) 0 es convertida a igualdad como

(5.23)
g k (x ) + sk2 = 0

donde sk puede tener cualquier valor real. Esta forma puede usarse en el Teo-
rema de Multiplicadores de Lagrange para tratar restricciones de desigualdad y
derivar las condiciones necesarias correspondientes.

Las l nuevas ecuaciones necesarias para determinar las variables de holgura,


son obtenidas requiriendo que el Lagrangiano sea estacionario con respecto a las
variables de holgura

L
= 0
s

236
Fundamentos de optimizacin restringida

Obsrvese que una vez que un punto ptimo se determina, la ecuacin (5.23) se
2
utiliza para calcular la variable de holgura sk . Si la restriccin se satisface en el
2
punto, es decir,g k (x ) 0, entonces sk 0. Si esta se viola, entonces sk2 < 0 , lo
cual no es aceptable, es decir, el punto no es punto mnimo candidato.

Hay una condicin necesaria adicional para los multiplicadores de Lagrange de


las restricciones del tipo dadas como

mk* 0 , k = 1,..., l

*
donde mk es el multiplicador de Lagrange para la k -sima restriccin de igual-
dad. De esta manera, el multiplicador de Lagrange para cada restriccin de des-
igualdad del tipo debe ser no negativa. Si la restriccin es inactiva en el pti-
mo, su multiplicador de Lagrange asociado es cero. Si sta es activa (g k (x ) = 0 ),
entonces el multiplicador asociado debe ser no negativo.

Las condiciones necesarias para las restricciones de igualdad y desigualdad pue-


den resumirse en lo que son comnmente conocidas como las condiciones ne-
cesarias de Kuhn-Tucker (K-T). Aunque estas condiciones pueden expresarse en
diferentes formas, discutiremos solamente la que se va a dar, es decir, aqulla
que define a las variables de holgura.

Teorema 5.2 Condiciones Necesarias de Kuhn-Tucker (K-T)


*
Sea x un punto regular del conjunto de restricciones, es decir, un mnimo
local para f (x ) sujeta a las restricciones

h j (x ) = 0 , j = 1,..., m
g k (x ) 0 , k = 1,..., l
se define la funcin de Lagrange para el problema de optimizacin como

237
Aplicaciones de Programacin no Lineal

o bien

(5.24)

luego existen multiplicadores de Lagrange y tales que el


Lagrangiano es estacionario con respecto a xi,lj, mk y sk, es decir

m h j l
L f g
=
xi xi
+ l*j
xi
+ mk* xki = 0 , i = 1,..., n (5.25)
j =1 k =1

L
l j
( )
= h j x* = 0 , j = 1,...,m (5.26)

L
mk
( )
= g k x* + sk2 = 0 , k = 1,..., l (5.27)

L
= 2mk* sk = 0 , k = 1,..., l (5.28)
sk
mk* 0 , k = 1,..., l (5.29)

y donde todas las derivadas se evalan en el punto x* .

Las condiciones anteriores son llamadas algunas veces las condiciones necesa-
rias de primer orden. Es importante entender su uso para: 1) verificar la posible
optimalidad de un punto dado y, 2) determinar los puntos estacionarios.

238
Fundamentos de optimizacin restringida

Obsrvese primero de las ecuaciones (5.26) y (5.27) que el punto estacionario


debe ser factible, as deben tenerse en cuenta todas las restricciones para ase-
gurar su satisfaccin. Las condiciones de los gradientes de la ecuacin (5.25)
tambin deben satisfacerse simultneamente. Estas condiciones tienen un signi-
ficado geomtrico. Para ver esto, reescribimos la ecuacin (5.25) como

m h j l
f g k
-
xi
= l*j
xi
+ mk*
xi
, i =1,..., n (5.30)
j =1 k =1

que muestra que en el punto estacionario, la direccin del gradiente negativo


para la funcin objetivo, es una combinacin lineal de los gradientes de las res-
tricciones con multiplicadores de Lagrange como los parmetros escalares de la
combinacin lineal.

Las l condiciones en la ecuacin (5.28) se conocen como las condiciones de


cambio o las condiciones de relajamiento complementarias. Ellas pueden satis-
facerse imponiendo ya sea sk = 0 (cero holgura implica desigualdades activas,
( )
es decir g k x* = 0), o mk = 0 (en este caso g k debe ser 0 para satisfacer
la factibilidad). Estas condiciones establecen varios casos en clculos reales y su
uso debe entenderse claramente. El nmero de condiciones de cambio es igual
al nmero de restricciones de desigualdad para el problema. Diferentes combina-
ciones de estas condiciones pueden dar muchos casos de solucin. En general,
con l restricciones de desigualdad, las condiciones de cambio guan a 2l casos de
solucin normales distintos (caso anormal es aqul en donde mk = 0 y sk = 0 ).

Para cada caso, se requiere resolver las condiciones necesarias restantes para
puntos estacionarios. Dependiendo de las funciones del problema, puede ser o
no posible resolver analticamente las condiciones necesarias de cada caso. Si
las funciones son no lineales, se tendr que usar los mtodos numricos para
hallar sus races. En resumen, cada caso puede dar puntos estacionarios.

Para problemas generales, las incgnitas son x , , y s . Estos son vectores


n-, m- , l- y l- dimensionales respectivamente. De este modo, hay (n+m+2l) varia-
bles desconocidas y necesitamos (n+m+2l) ecuaciones para determinarlas. Las
ecuaciones necesarias de Kuhn-Tucker. Estas ecuaciones deben satisfacerse
simultneamente para puntos estacionarios. Despus de que las soluciones
se han hallado, las condiciones necesarias restantes de las ecuaciones (5.29)
debern verificarse.

239
Aplicaciones de Programacin no Lineal

Condiciones de Segundo Orden para Optimizacin Restringida

Las soluciones de las condiciones necesarias son puntos estacionarios.

Las condiciones de suficiencia determinan si un punto estacionario es verdade-


ramente un mnimo local o no. En esta seccin, se discutirn las condiciones
necesarias de segundo orden y de suficiencia para problemas de optimizacin
restringidos. Primero se abordarn las condiciones suficientes para problemas de
programacin convexa y luego para problemas de optimizacin ms generales.

Condiciones Suficientes para Problemas Convexos

Para problemas de programacin convexa, las condiciones necesarias de primer


orden de Kuhn-Tucker tambin resultan ser suficientes. De esta manera, si se
muestra la convexidad de un problema cualquier solucin de las condiciones ne-
cesarias, satisfacern automticamente las condiciones suficientes. En adicin,
la solucin ser un mnimo global.

Teorema 5.3 Condicin Suficiente para un Problema Convexo

Si f (x ) es una funcin objetivo convexa definida sobre una regin


factible convexa (conjunto de restricciones), entonces las condiciones
de primer orden de Kuhn-Tucker son necesarias as como suficientes
para un mnimo global.

Condiciones de Segundo Orden para Problemas Generales

Como en el caso no restringido, se puede usar la informacin de segundo orden


acerca de las funciones (es decir, la curvatura) en el punto estacionario x* para
determinar si este es verdaderamente un mnimo local. Recurdese que la sufi-
ciencia local para el problema no restringido requiere que la parte cuadrtica de
la expansin en serie de Taylor para la funcin en x* sea positiva para todos los
cambios d no nulos. En el caso restringido, tambin deben considerarse restric-
ciones activas en x* para determinar cambios factibles d. Se considerarn slo
los puntos x=x*+d en la vecindad de x* que satisfacen las ecuaciones de restric-
cin activas. Cualquier d 0 satisfaciendo restricciones activas de primer orden
debe estar en el plano tangente a la restriccin (vase la figura 5.5)

240
Fundamentos de optimizacin restringida

Tales vectores d son entonces ortogonales a los gradientes de las restricciones


activas (los gradientes de las restricciones activas son normales al plano tangente
de la restriccin). Por lo tanto, el producto punto de d con cada uno de los gradien-
tes de las restricciones h j y g k deben ser cero, es decir,

hTj d =0
g kT d =0

De este modo, las direcciones d son determinadas para definir una regin factible
alrededor del punto x*. Obsrvese que slo las restricciones de desigualdad acti-
vas son usadas en determinar d.

Para derivar las condiciones de segundo orden, se escribir la expansin en serie


de Taylor de la funcin de Lagrange y se considerar solo aquella d que satisfaga
las condiciones anteriores, x* es entonces un punto mnimo local si el trmino de
segundo orden de la expansin en serie de Taylor es positiva para todo d en el
plano tangente de la restriccin. Esta es entonces la condicin suficiente. Como
una condicin necesaria, el trmino de segundo orden debe ser no negativo.

Se resumen estos resultados en los siguientes teoremas:

a)

241
Aplicaciones de Programacin no Lineal

b)

c)

Figura 5.5 Planos tangentes (a), (b) y (c) a las restricciones en x* .

242
Fundamentos de optimizacin restringida

Teorema 5.4 Condiciones Necesarias de Segundo Orden


*
Sea x un punto que satisface las condiciones necesarias de K-T.
*
Se define la matriz Hessiana de la funcin de Lagrange L en x como

m l
2
L= f + 2
l*j 2h j + mk*2 gk (5.31)
j =1 k =1

Sea d una direccin factible no nula ( d 0 ) que satisface al siguiente


sistema lineal en el punto x* :

hTj d = 0 , j = 1,..., m (5.32)

g kT d = 0 , " g k (x ) activa (5.33)

*
entonces, si x es un punto mnimo local para el problema de optimiza-
cin debe satisfacerse que

dT 2 L d 0 (5.34)

Obsrvese que cualquier punto que no satisface las condiciones necesarias de

segundo orden, no puede ser un punto mnimo local.

243
Aplicaciones de Programacin no Lineal

Teorema 5.5 Condiciones Suficientes de Segundo Orden


*
Sea x un punto que satisface las condiciones necesarias de primer
orden de K-T. Sea la matriz Hessiana de la funcin Lagrangiana en x*
como

m l
2
L= f + 2
l*j 2h j + mk*2 gk (5.35)
j =1 k =1

Definimos direcciones factibles no nulas ( d 0 ) como soluciones de


los sistemas lineales

hTj d = 0 , j = 1,..., m (5.36)

g kT d = 0 , k = 1,..., l (5.37)

para desigualdades activas con mk > 0.


Tambin sea gkTd 0 para aquellas restricciones con mk = 0 . Si

( )
dT 2 L x* d > 0 (5.38)

*
entonces, x es un mnimo local aislado (aislado significa que no hay
otros puntos mnimos locales en la cercana o vecindad de x*).

Obsrvese primero la diferencia en las condiciones para las direcciones d en


(5.33) para la condicin necesaria y (5.37) para la condicin suficiente. En (5.33)
todas las desigualdades activas con multiplicadores no negativos estn incluidas,
mientras que en (5.37) slo aquellas desigualdades activas con un multiplicador
positivo son incluidas.

244
Fundamentos de optimizacin restringida

Condiciones Necesarias de Primer Orden: Restricciones de Igualdad

La deduccin de condiciones necesarias y suficientes para que un punto sea un


punto mnimo local sujeto a las restricciones de igualdad es bastante sencilla,
ahora que se conoce la representacin del plano tangente. Se comienza dedu-
ciendo las condiciones necesarias de primer orden.

*
Lema 5.1 Sea x un punto regular de las restricciones h (x ) = 0
y un punto extremo local (mnimo o mximo) de f (x ) sujeto a estas
n
restricciones. Entonces todo y E que cumpla

( )
hT x* y = 0
(5.39)
debe cumplir tambin

( )
T f . x* y = 0 (5.40)

( *)
El lema anterior expresa que f x es ortogonal al plano tangente. A conti-
( )
nuacin, se concluye que esto implica que f x* es una combinacin lineal de
los gradientes de h en x*, una relacin que da lugar a la introduccin de los mul-
tiplicadores de Lagrange.

Teorema 5.6
Sea x* un punto extremo local de f (x ) sujeto a las restricciones
h (x ) = 0 . Supngase, adems que x* es un punto regular de estas restric-
ciones. Entonces, existe un tal que

(5.41)

245
Aplicaciones de Programacin no Lineal

Obsrvese que las condiciones necesarias de primer orden (5.41) junto con las
restricciones

( )
h x* = 0

proporcionan un total de n + m ecuaciones (en general, no lineales) en las


n+m variables que comprenden x*, . As, las condiciones necesarias son un
conjunto completo, pues, al menos localmente, determinan una solucin nica.

Conviene introducir el Lagrangiano asociado al problema con restricciones defi-


nido como

(5.42)

entonces, las condiciones necesarias se pueden expresar en las formas

(5.43)

(5.44)

la segunda no es ms que un nuevo planteamiento de las restricciones. Se deja-


r, por un momento, el desarrollo matemtico para considerar algunos ejemplos
de problemas de optimizacin con restricciones.

Ejemplo 5.5: Considrese el problema

Minimizar f (x ) = x1 x2 + x2 x3 + x1 x3
Sujeta a: h (x ) = x1 + x2 + x3 - 3 = 0

246
Fundamentos de optimizacin restringida

Solucin:

Las condiciones necesarias se convierten en

x2 + x3 + l = 0
x1 + x3 + l = 0

x1 + x2 + l = 0

estas tres ecuaciones, junto con la restriccin, proporcionan cuatro


ecuaciones que se pueden resolver para las cuatro incgnitas x1 , x2 , x3 y l . La
solucin da

x*T = (1,1,1) y l* = -2

Condiciones de Segundo Orden

Con un argumento anlogo al utilizado para el caso sin restricciones, tambin se


pueden deducir las correspondientes condiciones de segundo orden para proble-
2
mas con restricciones. En esta seccin, se supone que f (x ), h (x ) C .

Teorema 5.7 Condiciones Necesarias de Segundo Orden


*
Supngase que x es un mnimo local de f (x ) sujeto a h (x ) = 0 y
que x* es un punto regular de estas restricciones. Entonces, existe un
tal que

(5.45)

247
Aplicaciones de Programacin no Lineal

Si se representa por
entonces la matriz
T el plano tangente, {
T = y : hT (x ) y = 0 }

(5.46)

es semidefinida positiva en T , esto es, ( )


y T L x* y 0 para todo y T .

El teorema anterior es el primer encuentro con la matriz L=F+TH que es la matriz


de las segundas derivadas parciales con respecto a x , del Lagrangiano l(x) . Esta
matriz es la base de la teora de algoritmos para problemas con restricciones y se
encontrar a menudo en las secciones posteriores. A continuacin, se enuncia el
conjunto correspondiente de condiciones suficientes.

Teorema 5.8 Condiciones de Suficiencia de Segundo Orden

( )
Supngase que hay un punto x* que satisface h x* = 0 y un
tal que

(5.47)

Supngase tambin que la matriz es definida


{ }
positiva en T = y : hT (x* ) y = 0 , esto es, para y T, y 0 se cumple
que

( )
y T L x* y 0 (5.48)

entonces, x* es un mnimo local estricto de f (x ) sujeta a h (x ) = 0 .

248
Fundamentos de optimizacin restringida

Ejemplo 5.6: Considrese el problema

Maximizar f (x ) = x1 x2 + x2 x3 + x1 x3
Sujeta a: h (x ) = x1 + x2 + x3 - 3 = 0

Solucin:
*T *
En el ejemplo 5.5 anterior result que x = (1,1,1) y l = -2 , satisfacen las
condiciones de primer orden. En este caso, la matriz L=F+TH se convierte en

0 1 1

L = 1 0 1

1 1 0

que no es ni positiva ni negativa definida. Sin embargo, en el subespacio

T = {y : y1 + y2 + y3 = 0}

se observa que


0 1 1 y1 y2 + y3
y T Ly = ( y1 , y2 , y3 )1 0 1 y2 = ( y1 , y2 , y3 ) y1 + y3

1 1 0 y3 y1 + y2

(
= y1 ( y2 + y3 ) + y2 ( y1 + y3 ) + y3 ( y1 + y2 ) = - y12 + y22 + y32 )
y as, L es definida negativa en T . Por tanto, la solucin es un mximo local.

249
Aplicaciones de Programacin no Lineal

Restricciones de Desigualdad

Se tratarn ahora problemas de la forma

Minimizar f (x )
Sujeta a : h (x ) = 0 (5.49)

g (x ) 0

Se supone que f (x ) y h (x ) son como antes y que g (x ) es una funcin


l-dimensional. Inicialmente, se supone que f(x), h(x) y g(x) tienen primeras de-
rivadas parciales continuas.

Condiciones Necesarias de Primer Orden

Con la consiguiente generalizacin de la definicin anterior, se puede estable-


cer un paralelismo con el desarrollo de las condiciones necesarias para las
restricciones de igualdad.

Definicin 5.3:
*
Sea x un punto que satisfaga las restricciones

( )
h x* = 0
(5.50)
g ( x* ) 0

( )
*
y sea K el conjunto de ndices k para el cual gk x = 0. Entonces se
dice que x* es un punto regular de las restricciones (5.50) si los vectores
( ) ( )
gradientes h j x* , g k x* ,1 j m, k K son linealmente indepen-
dientes.

250
Fundamentos de optimizacin restringida

Se observa que, segn la definicin de restricciones activas, un punto x* es un


punto regular si los gradientes de las restricciones activas son linealmente inde-
pendientes. O de otra forma, x* es regular para las restricciones si es regular en
el sentido de la definicin anterior para restricciones de igualdad aplicadas a las
restricciones activas.

Teorema 5.9 Condiciones de Karush-Kuhn-Tucker


*
Sea x un punto mnimo relativo para el problema

Minimizar f (x )
(5.51)
Sujeta a : h (x ) = 0
g (x ) 0
*
y supngase que x es un punto regular para las restricciones.
m
Entonces, existe un vector E y un vector El, 0 tal que

(5.52)

(5.53)

Ejemplo 5.7: Considrese el problema

Minimizar f (x ) = 2 x12 + 2 x1 x2 + x22 -10 x1 -10 x2


Sujeta a : g1 (x ) = x12 + x22 - 5 0
g 2 (x ) = 3x1 + x2 - 6 0

251
Aplicaciones de Programacin no Lineal

Solucin:

Las condiciones necesarias de primer orden, adems de las restricciones, son:

4 x1 + 2 x2 -10 + 2m1x1 + 3m2 = 0


2 x1 + 2 x2 -10 + 2m1x2 + m2 = 0

(
m1 x12 + x22 - 5 = 0)
m2 (3 x1 + x2 - 6) = 0
m1 0
m2 0

Para hallar una solucin, se definen varias combinaciones de restricciones acti-


vas y se verifican los signos de los multiplicadores de Lagrange resultantes. En
este problema, se puede intentar hacer activas ninguna, una o dos restricciones.
Al suponer que la primera restriccin es activa, y la segunda inactiva, resultan las
ecuaciones

4 x1 + 2 x2 -10 + 2m1x1 = 0

2 x1 + 2 x2 -10 + 2m1x2 = 0

x12 + x22 - 5 = 0

que tienen la solucin x*T = (1, 2) , m1* = 1 . Esto produce 3 x1 + x2 = 5 y,


*
por tanto, se satisface la segunda restriccin. As como m = 1 > 0 , se con-
1
cluye que esta solucin satisface las condiciones necesarias de primer orden,
( m2* = 0 ).

252
Fundamentos de optimizacin restringida

Condiciones de Segundo Orden

Las condiciones de segundo orden, necesarias y suficientes para problemas con


restricciones de desigualdad, se deducen esencialmente teniendo en cuenta slo
el problema con restricciones de igualdad implicado por las restricciones activas.
El plano tangente apropiado para estos problemas es el plano tangente a las
restricciones activas.

Teorema 5.10 Condiciones Necesarias de Segundo Orden

( )
Supngase que las funciones f x* , h (x ) y g (x ) tiene segundas
derivadas parciales continuas y que x* es un punto regular de las
restricciones (5.50). Si x* es un punto mnimo relativo para el proble-
m l
ma (5.49), entonces existe E , E , tales que se cumplen
(5.52) y (5.53) y tales que

(5.54)

es positiva semidefinida en el subespacio tangente de las restricciones


activas en x*.

Al igual que en la teora de la minimizacin sin restricciones, se puede formular


una inversa del teorema de la condicin necesaria de segundo orden, para
obtener un teorema de la condicin suficiente de segundo orden. Por analoga,
con la situacin sin restricciones, se puede esperar que la hiptesis requerida
sea que L(x*) sea positiva definida en el plano tangente T. De hecho, esto es

suficiente en la mayora de las situaciones. Sin embargo, si hay restricciones de


desigualdad degeneradas (esto es, restricciones de desigualdad activas que


tengan cero como multiplicador de Lagrange asociado), se debe exigir que L(x*)
sea positiva definida en un subespacio mayor que T.

253
Aplicaciones de Programacin no Lineal

Teorema 5.11 Condiciones de Suficiencia de Segundo Orden


2
Sean f (x ) , h (x ) y g (x ) C . Las condiciones suficientes para
que un punto x* que satisfaga (5.50) sea un punto mnimo relativo
m
E l tal que
estricto del problema (5.49) es que exista E ,


0 (5.55)

( )
T g x* = 0 (5.56)

(5.57)

y la matriz Hessiana

(5.58)

sea positiva definida en el subespacio


{ ( ) ( )
T ' = y : hT x* y = 0, T g k x* y = 0, " k K }
donde { ( )
K = k : g k x* = 0, mk > 0 }.

Se observa, sobre todo, que si todas las restricciones de desigualdad tienen mul-
tiplicadores de Lagrange correspondientes estrictamente positivos (sin desigual-
dades degeneradas), entonces el conjunto K incluye todas las desigualdades
activas. En este caso, la condicin suficiente es que el Lagrangiano sea positivo
definido en T, el plano tangente de las restricciones activas.

254
Fundamentos de optimizacin restringida

Condiciones Suficientes para Problemas Convexo

Para problemas de programacin convexa, las condiciones de primer orden de


Karush-Kuhn-Tucker (KKT) tambin resultan ser suficientes. De esta manera, si
podemos mostrar la convexidad de un problema, cualquier solucin de las
condiciones necesarias, satisfacern automticamente las condiciones suficien-

tes. En adicin, la solucin ser un mnimo global.

Teorema 5.12 Condicin Suficiente para un Problema Convexo

Si f (x) es una funcin objetivo convexa definida sobre una regin


factible convexa (conjunto de restricciones), entonces las condiciones de
primer orden KKT son necesarias as como suficientes para un mnimo
global.

Ejemplo 5.8: Considrese el siguiente problema

Minimizar f (x ) = x13 + 4 x22 - 4 x1


Sujeta a: g (x ) = 2 x2 - x1 -12 0

Este problema es un problema de programacin convexa?.

Solucin:

Las matrices Hessianas asociadas a la funcin objetivo y la restriccin son:

6 x 0 0 0
F (x) = 1 G (x ) =
0 8 y 0 0

obsrvese que la Hessiana asociada a la restriccin de desigualdad es cncava


y convexa, pero la Hessiana asociada a la funcin objetivo slo es convexa para
x1 0
la regin .

255
Aplicaciones de Programacin no Lineal

Problemas

Resuelva el siguiente conjunto de problemas usando los mtodos de reduccin


de variables y/o el mtodo de multiplicadores de Lagrange.

5.1 Un cartel debe contener 300 cm2 de texto impreso con mrgenes superior e
inferior de 6 cm y 4 cm en los laterales. Encuentre las dimensiones del cartel que
minimizan el rea total.

5.2 Una caja con base cuadrada y sin tapa debe retener 1000 cm3. Determine las
dimensiones que requieren el menor material para construir la caja.

5.3 Halle el volumen del cilindro circular recto ms grande que puede inscribirse
dentro de una esfera de radio R.

5.4 Se desea construir un recipiente cilndrico de metal con tapa que tenga una
superficie total de 100 cm2. Encuentre las dimensiones de modo que tenga el
mayor volumen posible.

5.5 Inscribir en una esfera de radio 1 m, un cilindro circular que tenga:

a) volumen mximo

b) rea lateral mxima.

En ambos casos encuentre las dimensiones, radio de la base y altura.

5.6 Un alambre de 100 cm. de longitud, se corta en dos partes formando con una
de ellas un crculo y con la otra un cuadrado. Cmo debe cortarse el alambre para
que:

a) la suma de las reas de las dos figura sea mxima y

b) la suma de las reas de las dos figura sea mnima.

256
Fundamentos de optimizacin restringida

5.7

Optimizar: f ( x=
) x1 + 3x2
Sujeta a: 2 x1 + 3x2 6

x1 + 4 x2 4

x1 , x2 0

5.8

2
9
Optimizar: f ( x ) = x1 + ( x2 2 )
2

4
Sujeta a: x12 + x2 0

x1 + x2 6

x1 , x2 0

257
APNDICE A
Matemticas preliminares
A.1 Introduccin

Para entender los mtodos de la optimizacin matemtica y su anlisis mo-


derno, es importante familiarizarse con el lgebra lineal, especficamente con las
operaciones vectoriales y matriciales, y el clculo bsico. As, los conceptos
fundamentales del clculo de las funciones, de una y varias variables, tambin
debe incluirse dentro del estudio de estos temas. En este captulo se define la
terminologa y su notacin estndar usadas en todo el texto. Es en extremo
importante entender esto debido a que sin ellos podra ser difcil seguir el resto
del texto. La notacin definida aqu no es complicada; de hecho, es muy simple
y casi directa. Cualquier persona con el conocimiento bsico en lgebra de
matrices y lgebra lineal no encontrar dificultades. Se recomienda una revisin
de conceptos y definiciones.

A.2 Terminologa bsica y notacin

Escalares, vectores y matrices

Definicin A.1 El smbolo ij representa la delta de Kronecker y se


define como


0 si i j
dij =
; i, j = 1, 2,..., n. (A.1)


1 si i = j

261
Aplicaciones de Programacin no Lineal

Este smbolo se usa con frecuencia en combinacin con la sumatoria para con-
traer trminos y reducir las expresiones a formas ms simples.

Definicin A.2 Un escalar es aquella propiedad fsica o matemtica que


posee nicamente magnitud.

Las operaciones con escalares obedecen las mismas reglas del lgebra.

Definicin A.3 Un vector x es un conjunto ordenado de n nmeros


reales x1, x2 ,..., xn, tal que n es un nmero natural cualquiera indicando
su tamao, la dimensin o su orden.

Estas entidades fsicas o matemticas tienen tanto magnitud como direccin y


suelen representarse en letras minsculas y negrillas. Los vectores pueden ser
de dos tipos; el llamado vector rengln, cuya representacin es

xT = ( x1, x2 ,..., xn )
(A.2)

y el denominado vector columna, representado por

x1

x2
x = (A.3)


xn

262
Apndice A. Matemticas preliminares

Cuando se transforma un vector columna a un vector rengln, lo que se hace


es escribir la columna como rengln y poner el superndice T en el smbolo x;
esta operacin se conoce como transposicin. Con frecuencia es conveniente
expresar un vector en funcin de sus componentes segn los ejes de coordena-
das, una vez establecido el convenio para la designacin de stos ltimos. Con
este propsito se definen los vectores elementales correspondientes a los ejes
de coordenadas.

n
Definicin A.4 Un vector elemental en el espacio euclidiano E es un
vector de magnitud unitaria con la i-sima componente igual a la unidad
y las restantes componentes nulas, y su direccin apunta a lo largo del
correspondiente eje de coordenadas.

As pues,
i-sima componente

eTi = (0,0,...,1,...,0)

n componentes (A.4)

es una representacin de un vector rengln elemental de n componentes; el ni-


co valor distinto de cero ocupa la i-sima posicin, como se indica en la ecuacin
(A.4).

Definicin A.5 El producto interno o escalar de dos vectores elementales


cualesquiera de orden n se define como

eTi e j = dij ; i, j = 1,..., n. (A.5)

263
Aplicaciones de Programacin no Lineal

El resultado es un escalar con valor 0 o 1 obtenido de la definicin (A.1) y ex-


presa las condiciones de ortonormalidad de los vectores elementales entre s.
Obsrvese que ambos vectores elementales deben ser del mismo orden.

Definicin A.6 Una matriz es un arreglo rectangular de cantidades que


pueden ser nmeros reales o complejos, smbolos, funciones de varias
variables, etc. escritos de la siguiente forma:

a11 a12 a1n



a21 a22 a2 n
A = . (A.6)


am1 am 2 amn

Por lo general, las matrices se representan en letras maysculas y en negrillas.


Se dice que A es una matriz de orden o dimensin m x n si sta tiene m renglones
y n columnas. La matriz A tambin se puede representar en forma compacta por
medio de sus elementos, de la siguiente manera:

i = 1,..., m
A = (aij ) ; (A.7)
mxn j = 1,..., n

donde aij es el elemento de A ubicado en el rengln i y la columna j, m x n es


el orden de la matriz. En este contexto, algunas veces es conveniente pensar en
un escalar, como una matriz de orden 1 x 1, en un vector rengln como una matriz
de orden 1 x n, y de un vector columna como una matriz de orden nx1 .

264
Apndice A. Matemticas preliminares

Definicin A.7 La transpuesta de una matriz A se forma intercambiando


los renglones de A por sus columnas, es decir

i = 1,..., m
AT = (a ji ) ; (A.8)
nxm j = 1,..., n

Algunas propiedades de la transposicin

T
1) ( )
AT =A

T
2) ( A + B) = AT + BT
T
3) ( AB) = BT AT

Definicin A.8 El producto externo entre dos vectores elementales de


orden diferente (m y n respectivamente) se expresa como

k = 1,..., m
eieTj = (ekl )mxn ; (A.9)
l = 1,..., n

donde i y j estn fijos y son arbitrarios; adems,


0 si la ubicacin del elemento kl nocoincidecon ij
ekl =


1
si la ubicacin del elemento kl coincidecon ij

265
Aplicaciones de Programacin no Lineal

El resultado es una matriz elemental de orden m x n , ya que ei es un vector ele-


mental columna de orden m x 1 y eTj es un vector elemental rengln de orden 1xn.
Si los vectores elementales tienen el mismo orden, resulta una matriz cuadrada.

En trminos de vectores elementales, cualquier matriz A puede escribirse como

m n
A= aijeieTj (A.10)
i =1 j =1

Operaciones bsicas entre matrices

Igualdad de matrices

i = 1,..., m
A mxn = B mxn aij = bij ; (A.11)
j = 1,..., n

Es aparente que la igualdad de matrices no tiene significado a menos que ellas


sean del mismo orden.

Desigualdad de matrices

i = 1,..., m
A mxn B mxn aij bij ; (A.12)
j = 1,..., n

266
Apndice A. Matemticas preliminares

Suma de matrices

i = 1,..., m
A mxn B mxn = Cmxn cij = aij bij ; (A.13)
j = 1,..., n

Multiplicacin de matrices
l
i = 1,..., m
A mxl Blxn = Cmxn cij = aik bkj ;
j = 1,..., n (A.14)
k =1

En general, el producto AB de dos matrices A y B se define como la matriz C


tal que el elemento cij en el i-simo rengln y la j-sima columna de C se obtiene
sumando los productos de los elementos del i-simo rengln de A y los corres-
pondientes elementos de la j-sima columna de B tomando cada uno de ellos en
orden. Observe que el nmero de columnas de A debe ser el mismo nmero de
renglones de B.

Ejemplo A.1 Calcule AB para las siguientes matrices:

2 3 3 -2 2
A = y B =
1 -4 1 0 -1

Solucin:

2 3
3 -2 2 = 9 -4 1.
AB = 1 0 -1 -1 -2 6
1 -4

267
Aplicaciones de Programacin no Lineal

Definicin A.9 El determinante de una matriz cuadrada A se puede


expresar por recurrencia sobre n de la siguiente manera:

Para n =1
det(a11 ) = a11

Para n=2

a a
det 11 12 = a11a22 - a12a21
a21 a22

Para n=3
a11 a12 a13

det a21 a22 a23 = a11a22a33 - a11a23a32 - a12a21a33

a31 a32 a33
+ a12a23a31 + a13a21a32 - a13a22a31

En el caso general n x n se define

n
det A = A = a1k c1k ; c1k = (-1)1+k D1k ; n = 2,3,...
k =1

(A.15)

siendo D1k el determinante de la matriz (n -1) por (n -1) resultante de su-


primir en A la fila 1 y la columna k.

268
Apndice A. Matemticas preliminares

Definicin A.10 El menor M ij de la matriz cuadrada A es el arreglo


matricial resultante despus de eliminar el rengln i y la columna j de
la matriz A.

Definicin A.11 El cofactor cij de la matriz cuadrada A es el escalar


resultante de la siguiente expresin

cij = (-1)i + j det M ij (A.16)

Determinante de una matriz por expansin de menores

Partiendo de las definiciones A.10 y A.11 se tienen dos maneras para calcular
el valor del determinante de una matriz cuadrada A.

Desarrollo por rengln fijando i arbitrariamente

n n
A= aijcij = (-1)i+ j aij det Mij (A.17)

j =1 j =1

Usando la notacin de la ecuacin (A.15), Dij = det Mij .


Observacin: vase entonces que la ecuacin (A.17) es un caso particular de la
ecuacin (A.15).

269
Aplicaciones de Programacin no Lineal

Desarrollo por columna fijando j arbitrariamente

n n
A= aijcij = (-1)i+ j aij det Mij (A.18)

i =1 i =1

Si la matriz es triangular o diagonal las expansiones anteriores se reducen a

n
A= aii (A.19)
i =1

Definicin A.12 La matriz adjunta A* de A es la transpuesta de la matriz


de cofactores C de A, es decir

A* = adj A = CT aij* = c ji ; i, j = 1,..., n (A.20)

Definicin A.13 La matriz inversa de A es la matriz nica A-1 que


satisface

AA-1 = A-1A = I (A.21)

270
Apndice A. Matemticas preliminares

La matriz inversa existe si y slo si A es no-singular, es decir, si A 0 . Si A = 0


la matriz es singular y su inversa no existe. Una derivacin de la matriz inversa de A
esta dada por

adj A A*
A-1 = = (A.22)
det A A

Ejemplo A.2 Obtenga la matriz inversa A -1 de A usando la ecuacin (A.22), si

1 2 3

A = 4 5 6

7 8 10

Solucin:

Si la matriz de cofactores C y la matriz adjunta A* estn dadas por

2 -3 2 4 -3
2
C = 4 -11 6 y A* = CT = 2 -11 6

-3 6 -3 -3 6 -3

y el det A = -3 , entonces la inversa de A es

2 4 -3
A *
1
A-1 = = 2 -11 6
A -3
-3 6 -3

Se deja al lector comprobar que AA-1 = I = A-1A .

271
Aplicaciones de Programacin no Lineal

Algunas propiedades de la matriz inversa

1
1) A-1 =
A
-1
2) ( A-1 ) =A

-1 T
3) ( ) AT (
= A-1 )
T
4) Si A es simtrica ( A
T
= A ), entonces A-1 ( ) = A- 1

1
5) Si A es diagonal invertible, entonces A-1 =
aii
nxn
-1
6) ( AB) = B-1A-1

Productos y normas de vectores y matrices


n
Sea x un vector en el espacio Euclidiano de n dimensiones ( x R ) y A una
matriz simtrica (AT=A) de orden n x n; otros productos entre vectores y matrices
comnmente encontrados incluyen los siguientes:

1) Producto entre un vector rengln y una matriz:

n
T
x A= xi aijeTj (A.23)
i , j =1

y el resultado es un vector rengln de 1 x n.

272
Apndice A. Matemticas preliminares

2) Producto entre una matriz y un vector columna:

n
Ax = aij x jei (A.24)
i , j =1

y el resultado es un vector columna de n x 1.

3) Producto entre un vector rengln, una matriz y un vector columna:

n
T
x Ax = xi aij x j (A.25)
i , j =1

resulta ser un escalar.

4) Producto entre un vector rengln y un vector columna:

n
xx = T
xi x jeieTj (A.26)
i , j =1

resulta ser una matriz de orden n xn .

Definicin A.14 La magnitud, la longitud o la norma (euclidiana) de un


vector x se expresa como

n
x 2= x x= T
xi2 (A.27)
i =1

273
Aplicaciones de Programacin no Lineal

Ejemplos de otras definiciones de normas vectoriales posibles son

1) x
= max xi (norma mxima).
1in

n
2) x1= xi (norma de la sumatoria).
i =1

Estos casos y la norma euclidiana son casos particulares de normas de Hlder


para p = , p = 1 y p = 2.

n
p
x p
= p
xi (A.28)
i =1

Definicin A.15 La magnitud, la longitud o la norma de Frobenius de un


matriz A se expresa como

n n
A F
= aij2 (A.29)
i =1 j =1

Ejemplos de otras normas matriciales posibles son

n
1) A

= max
1in
aij
j =1

n
2) A = max
1 1 j n aij
i =1

274
Apndice A. Matemticas preliminares

Dependencia e independencia lineal, rango de una matriz

Definicin A.16
Una combinacin lineal de vectores , con un conjunto de
escalares , se define como

(A.30)

Donde , son las columnas de X . Entonces:

1. Las columnas de X son linealmente dependientes si

a) puede satisfacerse para una

b) X es singular, es decir, det X = 0 y X-1 no existe.

2. Las columnas de X son linealmente independientes si

a) solo para una

b) X es no singular, es decir, det X 0 y X-1 existe.

Definicin A.17 El rango de una matriz es igual al nmero de renglones


o columnas linealmente independientes y se denota por rA .

275
Aplicaciones de Programacin no Lineal

Obsrvese que el rango no depende de si se toman renglones o columnas lineal-


mente independientes.

Valores y vectores propios de una matriz

Definicin A.18 Asociada con cada matriz cuadrada A de orden n xn


existe una funcin

f (l ) = det ( A - lI ) (A.31)

llamada la funcin caracterstica de A .

Definicin A.19 La ecuacin

f (l ) = det ( A - lI ) = 0 (A.32)

puede expresarse en forma polinomial como

n
ckl n-k = 0 (A.33)
k =0

y se llama la ecuacin caracterstica de la matriz A .

Definicin A.20 Las n races de la ecuacin caracterstica de una matriz


cuadrada A se conocen como valores propios de A y tambin se cono-
cen como valores caractersticos o incluso eigenvalores.

276
Apndice A. Matemticas preliminares

Ejemplo A.3

Dada la matriz ,

3 0 2

A = -6 5 1

9 -5 1

determine su ecuacin caracterstica y valores propios.

Solucin:

Para hallar la ecuacin caracterstica de A debe calcularse el determinante de

3 0 2 1 0 0

-6 5 1 - l 0 1 0 = l 3 - 9l 2 + 10l = 0

9 -5 1 0 0 1

Esta es la ecuacin caracterstica y para determinar los valores propios de A ,


debe resolverse la ecuacin obtenindose todas sus races. Entonces

(
l 3 - 9l 2 + 10l 2 = l l 2 - 9l + 10 = 0 )
cuyas races son

9 41 9 41
l1 = 0, l2 = + , l3 = -
2 2 2 2
las cuales son los valores propios de la matriz A .

277
Aplicaciones de Programacin no Lineal

Definicin A.21 Cualquier vector columna no nulo denotado por xi , de


manera que

Axi = li xi (A.34)

se llama vector propio de A asociado al valor propio li .

Un importante e interesante teorema de la teora de matrices es el Teorema de


Hamilton-Cayley.

Teorema A.1 Toda matriz cuadrada A satisface su propia ecuacin


caracterstica.

Si es reemplazada por la matriz A de orden n y el nmero real cn es reemplaza-


do por el mltiplo matricial cnI , donde I es la matriz identidad de orden n, entonces
la ecuacin caracterstica de la matriz A resulta en una ecuacin matricial vlida,
es decir,

n
ck An-k = 0 (A.35)

k =0

El teorema de Hamilton-Cayley puede aplicarse al problema de determinar la


matriz inversa de una matriz no singular A. Sea

c0l n + c1l n-1 + + cn-1l + cn = 0

278
Apndice A. Matemticas preliminares

la ecuacin caracterstica de A . Observe que como A es una matriz no sin-


gular, li 0 , es decir, todo valor propio es no nulo y cn 0 . Por el teorema de
Hamilton-Cayley,

c0 A n + c1A n-1 + + cn-1A + cn I = 0

y entonces

1
I =-
cn
(
c0 A n + c1A n-1 + + cn-1A ) (A.36)

si ambos lados de (A.36) son multiplicados por A-1 , el resultado es

1
A-1 = -
cn
(
c0 A n-1 + c1A n-2 + + cn-1I ) .
(A.37)

Ejemplo A.4 Use el teorema de Hamilton-Cayley para hallar la matriz inversa de


.


1 0 1
A = -1 1 -3

2 2 4

Solucin:

La ecuacin caracterstica de A es

l 3 - 6l 2 + 13l - 6 = 0
.

279
Aplicaciones de Programacin no Lineal

Por el teorema de Hamilton-Cayley resulta

y por lo tanto,

1 0 1 2 1 0 1 1 0 0


1
A-1 = -1 1 -3 - 6-1 1 -3 + 130 1 0
6
2 2 4 2 2 4 0 0 1

5 1 1
-
3 3 6

-1 1 1 1
A = -
3 3 3
2
1 1
- -
3 3 6

Observe que el clculo de una matriz inversa por el uso de la ecuacin (A.37) es
muy adaptable a una computadora digital y no es difcil de calcular manualmente
para pequeos valores de n. Por ltimo, usando la ecuacin (A.37) ahora es po-
sible expresar cualquier potencia entera negativa de una matriz no singular A de
orden n en trminos de una funcin lineal de las primeras (n-1) potencias de A.

280
Apndice A. Matemticas preliminares

Clasificacin de las matrices simtrica

Definicin A.22 Una matriz simtrica A de orden n x n puede dividirse


en submatrices escaladas, como se muestra a continuacin:



a11 a12 a13 a1n

a a22 a23 a2 n
21
A =
(A.38)

a31 a32 a33 a3n



an1 an 2 an3 ann

Los determinantes de las submatrices principales de A

a11 a12 a13


a11 a12
son D1 = a11, D2 = a a , D3 = a21 a22 a23 ,..., Dn = A
21 22
a31 a32 a33

Todos los determinantes de las submatrices escaladas de A se conocen


como los menores principales de A .

281
Aplicaciones de Programacin no Lineal

Menores principales de una matriz A simtrica

Para i = 1, 2,..., n

1) A es positiva definida si y slo si Di > 0 .

2) A es positiva semidefinida si y slo si Di 0 .


3) A es negativa definida si y slo si (-1)i Di > 0 .
4) A es negativa semidefinida si y slo si (-1)i Di 0 .
5) A es indefinida si y slo si la sucesin Di es distinta a lo anterior.

Ejemplo A.5 Dada la matriz

1 2
A =
2 3

determine usando el criterio de determinantes de los menores principales, si la


matriz es: positiva definida, positiva semidefinida, negativa definida, negativa se-
midefinida o indefinida.

Solucin:

Los determinantes de los menores principales de la matriz A son

a11 a12
D1 = a11 = 1 > 0 y D2 = = -1 < 0
a21 a22

segn la clasificacin anterior, esta matriz es indefinida.

282
Apndice A. Matemticas preliminares

Valores propios de una matriz A simtrica

Para i = 1, 2,..., n

1) A es positiva definida si y slo si li > 0.


2) A es positiva semidefinida si y slo si li 0.
3) A es negativa definida si y slo si li < 0.
4) A es negativa semidefinida si y slo si li 0.
5) A es indefinida si y slo si la sucesin para algunas i, li 0 y las

restantes li <0.

Ejemplo A.6 Dada la matriz del ejemplo A.5, determine si sta es; positiva defi-
nida, positiva semidefinida, negativa definida, negativa semidefinida e indefinida
usando el criterio de los valores propios.

Solucin:

Los valores propios de la matriz A son

l1 = 2 + 5 = 4.2360 > 0 y l2 = 2 - 5 = -0.2360 < 0

segn la clasificacin anterior, esta matriz es indefinida, resultado que


concuerda en el ejemplo anterior.

283
Aplicaciones de Programacin no Lineal

Ms propiedades de las matrices simtricas

1) Si li = 0 para alguna i , entonces det A = 0 .

2) Los valores propios de A y AT son los mismos.

3) Los valores propios de una matriz diagonal son iguales a los elementos de la
diagonal principal.

4) Si li son los valores propios de A , entonces li-1 son los valores propios de
A-1 .

5) Si los valores propios de una matriz son distintos, entonces los vectores pro-
pios asociados son linealmente independientes.

6) Si A es una matriz real, entonces los valores propios de A son reales.

7) Si A es una matriz real, entonces los vectores propios de A asociados con dis-
tintos valores propios son vectores mutuamente ortogonales.

Formas cuadrticas

Definicin A.23 Una forma cuadrtica real es un polinomio homogneo


de segundo grado en n variables x1, x2,..., xn es decir, es una funcin po-
linomial de la forma

n n
f ( A, x) = aij xi x j (A.39)
i =1 j =1

Toda forma cuadrtica puede expresarse como un producto matricial de la si-


guiente manera

f ( A, x) = xT Ax (A.40)

284
Apndice A. Matemticas preliminares

donde A , si es una matriz simtrica real, es nica; si no es simtrica, entonces A


no es nica.

Ejemplo A.7 Exprese la siguiente forma cuadrtica en forma matricial

f ( A, x) = 3 x12 + 10 x1x2 + 3x22

Solucin:

La transformacin queda expresada por

T 3 5
f ( A, x) = 3 x12 + 10 x1x2 + 3 x22 = ( x1, x2 ) x1 = xT Ax
5 3 x2

o bien, podra ser

T 3 10
f ( A, x) = 3 x12 + 10 x1x2 + 3 x22 = ( x1, x2 ) x1 = xT Ax
x2
0 3
o

T 3 3 x1
f ( A, x) = 3 x12 + 10 x1x2 + 3 x22 = ( x1, x2 ) = xT Ax
7 3 x2

Obsrvese que la primera forma matricial contiene a una matriz simtrica y esta
es nica, mientras que en las otras formas matriciales se tienen dos matrices no
simtricas.

285
Aplicaciones de Programacin no Lineal

Clasificacin de las formas cuadrtica

1) Si xT Ax > 0 para todo valor de x , la forma cuadrtica se llama positiva definida.


2) Si xT Ax < 0 para todo valor de x , entonces se le llama negativa definida.
3) Si xT Ax 0 la forma cuadrtica se conoce con el nombre de positiva semidefinida.
4) Si xT Ax 0 se conoce como negativa semidefinida.
T
5) Si x Ax toma valores negativos o cero para ciertos valores de x , y positivos
para otros valores de x, entonces la forma cuadrtica se llama indefinida.

Ejemplo A.8 La forma cuadrtica del ejemplo A.7 sera una forma cuadrtica
indefinida porque sta toma valores positivos para ciertos valores de x y valores
negativos para otros valores de x, como puede verificar el lector.

286
REFERENCIAS
REFERENCIAS

Bartholomew-Biggs, M., Nonlinear Optimization with Engineering Applications,


Springer, 2008.
http://dx.doi.org/10.1007/978-0-387-78723-7

Bazaraa, M.S., Sherali, H.D. y C.M. Shetty, Nonlinear Programming Theory and
Algorithms, Third Edition, John Wiley & Sons, Inc., 2006.
http://dx.doi.org/10.1002/0471787779

Bertsekas Dimitri P., Constrained Optimization and Lagrange Multiplier Methods,


Athena Scientific Belmont, Massachusetts, 1996.

Beveridge, G.S.G. y R.S. Schetcher, Optimization: Theory and Practice, McGraw-


Hill, New York, 1970.

Bevington, P.R., Data Reduction and Error Analysis for the Physical Sciences,
McGraw-Hill Book Company, 1969.

Box, M.J. Computer J., 8:42, 1965.


http://dx.doi.org/10.1093/comjnl/8.1.42

289
Aplicaciones de Programacin no Lineal

Brown, K.M. y J.B. Dennis, Derivative free analogues of the Levenberg-Marquardt


and Gauss algorithms for non linear least squares approximation, Numer. Math.
18, pp 289-297, 1972.
http://dx.doi.org/10.1007/BF01404679

Broyden, C.G., A class of methods for solving nonlinear simultaneous equations,


Math. Comp., 19, pp 577-593, 1965.
http://dx.doi.org/10.1090/S0025-5718-1965-0198670-6

Burden, R.I. y J.D. Faires, Anlisis Numrico, Grupo Editorial Iberoamericana,


1996.

Chapra, S.C. y R.P. Canale, Mtodos Numricos para Ingenieros, McGraw-Hill


Interamericana Editores S.A. de C.V., 1999.

Constantinides, A. y N. Mostoufi Numerical Methods for Chemical Engineers with


MATLAB Applications, Prentice-Hall International Series, 1999.

Conte, S.D., y C. de Boor, Anlisis Numrico Elemental, McGraw-Hill, Mxico,


1974.

Dennis, J.B. y R.B. Schnabel, Numerical Methods for Unconstrained and Nonlinear
Equations, Prentice-Hall, Englewood Cliffs, New Jersey 1983.

Edgar, T.F., Himmelblau, D.M. y L.S. Lasdon, Optimization of Chemical Processes,


Second Edition, McGraw-Hill International Edition, 2001.

Eves, H., Elementary Matrix Theory, Dover Publications, Inc., New York, 1966.

Fadeeva, N.V., Computational Methods of Linear Algebra, Dover Publications,


Inc., New York, 1966.

Fletcher, R. y C.M. Reeves, Computer J., 7:149, 1964.


http://dx.doi.org/10.1093/comjnl/7.2.149

Fletcher, R., A modifie Marquardt subroutine for nonlinear least squares, Report
R6799, AERE, Harwell, 1971.

290
Aplicaciones de Programacin no Lineal

Fletcher, R., Practical Methods of Optimization, Second Edition, John Wiley &
Sons, Inc., 1993.

Forst, Wilhelm and Dieter Hoffmann, Optimization: Theory and Practice, Springer,
2010.
http://dx.doi.org/10.1007/978-0-387-78977-4

Forsythe, G. y C.B. Moler, Computer Solution of Linear Algebraic Equations,


Prentice-Hall, Englewood Cliffs, New Jersey, 1967.

Fox, R.L. Optimization Methods for Engineering Design, Addison-Wesley, Reading.


Massachusetts 1971.

Gill, P.E., Murray, W., y Wright, M.H., Practical Optimization, Academic Press,
New York, 1981.

Golub, G.H. y C.F. Van Loan, Matrix Computations, Third Edition, The John
Hopkins University Press, Baltimore and London, 1996.

Hestenes, M.R., Conjugate-Direction Methods in Optimization, Springer Verlag,


New York, 1980.
http://dx.doi.org/10.1007/978-1-4612-6048-6

Himmelblau, D.M., Applied Nonlinear Programming, McGraw-Hill Book Company,


1972.

Kuester, J.L. y J.H. Mize, Optimization Techniques with FORTRAN, McGraw-Hill


Book Company, 1973.

Levenberg, K., A method for the solution of certain nonlinear problems in least
squares, Quart, Appl. Math. 2, pp 164-168, 1944.

Luenberguer, D.G. y Y. Ye, Linear and Nonlinear Programming, 3rd Ed., Springer,
2008.

Marquardt, D.W., An algorithm for least squares estimation of nonlinear parameters,


SIAM J. Appl. Math., 11, pp 431-441, 1963.
http://dx.doi.org/10.1137/0111030

291
Aplicaciones de Programacin no Lineal

Mathews, J.H. y K.D. Fink, Mtodos Numricos con MATLAB, Prentice-Hall Iberia
S.R.L., 2000.

Nelder, J.A. y R. Mead, Computer J., 7:308, 1964.


http://dx.doi.org/10.1093/comjnl/7.4.308

Paviani, D. Ph.D. Dissertation, The University of Texas, Austin, Tex. 1969.

Pettofrezzo, A.J., Matrices and Transformations, Dover Publications, Inc., New


York, 1966.

Reklaitis, G.V., Ravindran, R.A. y K.M. Ragsdell, Engineering Optimization


Methods and Applications, Wiley-Interscience, New York, 1983.

Searle, S.R., Matrix Algebra Useful for Statistics, John Wiley & Sons. 1982.

Seinfeld, J.H. y L. Lapidus, Process Modeling, Estimation and Identification


Prentice-Hall, Englewood Cliffs, New Jersey, 1974.

Spendley, W., Hext, G.R. y F.R. Himsworth, Technometrics, 4:441, 1962.


http://dx.doi.org/10.1080/00401706.1962.10490033

Spiegel, M.R., Anlisis Vectorial y una Introduccin al Anlisis Tensorial, McGraw-


Hill Interamericana Editores S.A. de C.V., 1998.

Strang, G., Linear Algebra, Second Edition, Academic Press, New York, 1980.

Wilde, D.J., Optimum Seeking Methods, Prentice-Hall, Englewood Cliffs, New


Jersey 1964.

Wilde, D.J. y C.S. Beightler, Foundations of Optimization, Prentice-Hall, Englewood


Cliffs, New Jersey 1967.

292

También podría gustarte