Está en la página 1de 6

La Herramienta Solver de Excel

Optimizacin con restricciones.


En un problema de optimizacin con restricciones se buscan los valores de ciertas variables que
optimizan una funcin objetivo, sujetas a ciertas condiciones. Matemticamente
Optimizar f(x1 , x2 , ..., xn )
sujeta a:
g1(x1 , x2 , ..., xn ) =( , ) b1
g2(x1 , x2 , ..., xn ) =( , ) b2
................................
gm(x1 , x2 , ..., xn ) =( , ) bm
Los modelos ms sencillos corresponden a modelos de Programacin Lineal, donde tanto la
funcin objetivo como las restricciones son funciones lineales, las variables deben ser no negativas, y pueden tomar cualquier valor real, no necesariamente entero.
La herramienta Solver
Solver es una herramienta para resolver y optimizar ecuaciones mediante el uso de mtodos numricos. Solver se puede utilizar para optimizar funciones de una o ms variables, sin o con
restricciones. Microsoft Excel Solver utiliza diversos mtodos de solucin, dependiendo de las
opciones que se seleccionen. Para los problemas de programacin lineal utiliza el mtodo Simples, para problemas lineales enteros utiliza Branch and Bound y para problemas no lineales
utiliza el cdigo de optimizacin no lineal (GRG2).
Con Solver, se puede buscar el valor ptimo para una celda, denominada celda objetivo, en donde se escribe la frmula de la funcin objetivo f(x1 , x2 , ..., xn ).
Solver cambia los valores de un grupo de celdas, denominadas celdas cambiantes, y que estn
relacionadas, directa o indirectamente, con la frmula de la celda objetivo. En estas celdas se
encuentran los valores de las variables de decisin x1 , x2 , ..., xn.
Los modelos ms realistas tienen factores de restriccin que es necesario aplicar a ciertos valores. Estas restricciones se pueden aplicar a las celdas de las variables de decisin (celdas cambiantes) o a cualquier otra celda que tenga una funcin (frmula) de estas celdas.
Se puede agregar restricciones a Solver, escribiendo una frmula gj(x1 , x2 , ..., xn ) en una celda,
y especificando que la celda deber ser mayor o igual, igual, o menor o igual que otra celda que
contiene la constante bj.
Tambin, si fuese el caso, se puede especificar que los valores sean enteros, para evitar resultados absurdos en algunos problemas.
Instalar Solver

En el men Herramientas, hay que fjarse si aparece el comando Solver. Si no aparece, se deber instalar el complemento o macro automtica Solver: en el cuadro de dilogo Complementos, hay que seleccionar la casilla de verificacin Solver. Si Solver no aparece en la lista del
cuadro de dilogo Complementos, se hace clic en Examinar y se localiza la unidad, la carpeta y
el nombre de archivo Solver.xla que, normalmente, est ubicado en la carpeta Macros/Solver, o
se ejecuta el programa de instalacin si no se puede localizar el archivo.
Algunos ejemplos.
Antes remarquemos ciertos aspectos que pueden suceder al intentar resolver un problema con
Solver:

Si Solver no encuentra los valores, de las variable de decisin y de la funcin objetivo, ptimos hay que tener en cuenta que los mtodos numricos para problemas no
lineales encuentran el ptimo slo si:
o Existe, y
o se parte de una solucin inicial "apropiada".

Es conveniente siempre probar con diferentes soluciones iniciales, para confirmar


que la solucin de Solver es realmente la mejor, o para evitar que se "atasque" en
puntos de inflexin o en ptimos locales.

Las inestabilidades (por malas soluciones iniciales) del algoritmo de optimizacin


no lineal no se presentan en casos de Programacin Lineal, dado que Solver utiliza
el Mtodo Simplex

Veamos algunos casos de optimizacin:


Optimizar una funcin de varias variables: Optimizacin no lineal con restricciones
Se va a construir una nave industrial con una capacidad de 1.500 m3. Los costes de construccin por m2 son de 4 u.m./m2 para los muros, 6 u.m./ m2 para para el techo y 12
u.m./m2 para el suelo. Por razones estticas, la anchura del almacn debe ser el doble de su
longitud. Encontrar las dimensiones ptimas del almacn, si se desea minimizar el coste
de construccin. (problema tomado de Barbolla y otros, 2000; pginas:176 y 222 es planteado y resuelto con Lagrange ).

Dimensiones: ancho, alto y largo; stas sern las variables de decisin (celdas cambiantes)

Superficie de las paredes: 2*largo*alto+2*ancho*alto

Superficie del suelo: largo*ancho

Superficie del techo: largo*ancho

Coste de construccin de las paredes: 4*superficie de los muros

Coste de construccin del suelo: 12*superficie suelo

Coste de construccin del techo: 6*superficie techo

Coste de construccin total: Coste de construccin de las paredes + Coste de construccin


del suelo+ Coste de construccin del techo

Restriccin esttica: ancho-2*largo=0

Restriccin de volumen: largo*ancho*alto=1500

Introduccin de Datos
Se abre una nueva hoja de clculo, y se introducen los datos y las frmulas del modelo anterior.
La hoja debe quedar como se muestra a continuacin. Se sugiere introducir los diferentes ttulos
y luego modificar los anchos de columna.
Para ayudar en la confeccin de la hoja la fuente en negrita indica las celdas con valores fijos, y
en con fuente normal las celdas donde debe haber una frmula.
Ancho Alto Largo Paredes
0
0
0

Dimensiones

Suelo

Coste de construccin

Techo

Total

Restricciones
estetica
volumen

0
Valor

Limite
0
1500

0 =
0 =

Las frmulas que aparecen son:


Dimensiones
Coste de construccin

Ancho
1

Alto
1

Largo Paredes
=2*$B$15*$C$15+2*$C$15*$D$15
1
=4*E15

Suelo
Techo
Total
=$B$15*$D$15 =$B$15*$D$15
=12*F15

=6*G15

Restricciones
estetica
volumen

=SUMA(E17:G17)
Valor
=B15-2*D15
=B15*C15*D15

=
=

Limite
0
1500

Se puede utilizar Solver para determinar el valor mximo de una celda (celda objetivo) cambiando el valor de otras (celdas cambiantes). La celda donde se encuentra la funcin objetivo
debe contener una frmula que dependa de las celdas cambiantes (variables de decisin). Si no
es as, al cambiar el valor de una celda no cambiara el valor de la celda objetivo.
1. En el men Herramientas, se hace clic en Solver.
2. Nota: el botn Restablecer todo sirve para borrar los datos de Solver (si se ha utilizado previamente en esa misma hoja) .
3. En el cuadro Celda objetivo, escribimos o seleccionamos la celda H17 (coste total).
4. Nos aseguramos de que la opcin Mnimo est seleccionada.

5. En el cuadro Cambiando las celdas, escribimos b15:d15 o seleccionamos las celdas


B15:D15 (las dimensiones del almacn) en la hoja de clculo.
6. Si no hubiese restricciones haramos clic en Resolver, pero no es el caso.
En este caso hay restricciones, cmo agregar una restriccin?
1. Si se hubiese cerrado el cuadro de dilogo anterior: en el men Herramientas, se hace clic
en Solver y despus en Agregar.
Aparecer el cuadro de dilogo Agregar restriccin.

2. En el cuadro Referencia de celda, escribimos h20 o seleccionamos la celda H20 en la hoja


de clculo. La celda H20 debe ser igual a 0. Seleccionamos la relacin de igualdad. En el
cuadro que se encuentra a la derecha de la relacin escribimos 0.
3. Se hace clic en Agregar para aadir la siguiente restriccin.
4. En el cuadro Referencia de celda, escribimos h21 o seleccionamos la celda H21 en la hoja
de clculo. La celda H21 debe ser igual a 1500. En el cuadro que se encuentra a la derecha
de la relacin, se escribe 1500.
5. Se hace clic en Aceptar y, a continuacin, en Resolver.
6. Se hace clic en Utilizar la solucin de Solver y, a continuacin, en Aceptar para mantener
los resultados que se muestran en la pantalla.
En este caso, si partimos de los valores iniciales (0, 0, 0) para las variables de decisin, Solver
no encuentra la solucin. Partamos de otros valores iniciales (1, 1, 1) para las variables de decisin:

Dimensiones

Ancho Alto
1

Coste de construccin

Largo
1

Paredes
1

Suelo

Techo Total
1
1

4
16

12

Restricciones
estetica
volumen

34
Valor

Limite
-1 =
1=

0
1500

7. En el men Herramientas, hacemos clic en Solver..


8. Hacemos clic en Utilizar la solucin de Solver y, a continuacin, en Aceptar para mantener los resultados que se muestran en la pantalla.

Dimensiones

Ancho Alto Largo Paredes


Suelo
Techo Total
714,330443
79,37
79,37
12,6 18,9
6,3

Coste de construccin

2857,321772

Restricciones
estetica
volumen

952,44 476,22 4285,98


Valor
0 =
1500 =

Limite
0
1500

La solucin encontrada por Solver realiza una redistribucin de las dimensiones del almacn.
Cambiar una restriccin
Cuando se utilice Microsoft Excel Solver, puede experimentar con parmetros diferentes para
decidir la mejor solucin de un problema. Por ejemplo, puede cambiar una restriccin para ver
si los resultados son mejores o peores que antes.
1. En el men Herramientas, se hace clic en Solver.
2. Se seleccione la restriccin a modificar en el cuadro Sujetas a las siguientes restricciones.
3. Se hace clic en Cambiar, los cambios pertinentes, clic en Aceptar, y despus en Resolver.
4. Se hace clic en Utilizar la solucin de Solver y, a continuacin, en Aceptar para mantener
los resultados que se muestran en la pantalla.
Guardar un Problema Modelo
Al hacer clic en Guardar en el men Archivo, las ltimas selecciones realizadas en el cuadro
de dilogo Parmetros de Solver se vinculan a la hoja de clculo y se grabarn al guardar el
libro.
Sin embargo, se puede definir ms de un problema en una hoja de clculo si se guardan de forma individual utilizando Guardar modelo en el cuadro de dilogo Opciones de Solver. Cada
modelo de problema est formado por celdas y restricciones que se escribieron en el cuadro de
dilogo Parmetros de Solver.
Cuando haga clic en Guardar modelo, aparecer el cuadro de dilogo Guardar modelo con
una seleccin predeterminada, basada en la celda activa, como el rea para guardar el modelo.

El rango sugerido incluir una celda para cada restriccin adems de tres celdas adicionales.
Asegrese de que este rango de celdas se encuentre vaco en la hoja de clculo.
1. En el men Herramientas, hacemos clic en Solver y despus en Opciones.
2. Hacemos clic en Guardar modelo. En el cuadro Seleccionar rea del modelo, escribimos
k16:k20 o seleccionams las celdas K16:K20 en la hoja de clculo.
3. Hacemos clic en Aceptar.
Nota: Tambin puede escribir una referencia a una sola celda en el cuadro Seleccionar rea del
modelo. Solver utilizar esta referencia como la esquina superior izquierda del rango en el que
copiar las especificaciones del problema.
Para cargar estas especificaciones de problemas ms tarde, se hace clic en Cargar modelo en el
cuadro de dilogo Opciones de Solver, escribimos k16:k20 en el cuadro Seleccionar rea del
modelo o seleccionamos las celdas K16:K20 en la hoja de clculo de muestra y, a continuacin,
hacemos clic en Aceptar. Solver mostrar un mensaje ofreciendo la posibilidad de restablecer
las opciones de configuracin actuales de Solver con las configuraciones del modelo que se est
cargando. Hacemos clic en Aceptar para continuar.
Solver y Programacin Lineal
Para resolver problemas de programas lineales se siguen los mismos pasos que en el caso anterior. Tngase en cuenta adems que las inestabilidades (por malas soluciones iniciales) del algoritmo de optimizacin no lineal no se presentan en casos de Programacin Lineal, dado que Solver utiliza el Mtodo Simplex.
Para que Solver sepa que est ante un problema lineal en el cuadro de dilogo Parmetros de
Solver se hace clic en el botn Opciones, con lo que aparecer el cuadro de dilogo Opciones
de Solver y se le pide que adopte un problema lineal. Si las variables de decisin fuesen no
negativas (algo bastante habitual, tambin se marcara la opcin correspondiente).

También podría gustarte