27
El PROBLEMA Un herrero con 80 Kg. de acero y 120 Kg. de aluminio quiere hacer bicicletas de paseo y de montaña que quiere vender, respectivamente a 20.000 y 15.000 pesos cada una para sacar el máximo beneficio. Para la de paseo empleará 1 Kg. De acero y 3 Kg. de aluminio, y para la de montaña 2 Kg. de ambos metales. ¿Cuántas bicicletas de paseo y de montaña deberá fabricar para maximizar las utilidades? EL MODELO MATEMÁTICO Acero Aluminio Precio de Venta Bicicleta de paseo (x) 1 kg 3 kg $ 20.000 Bicicleta de montaña (y) 2 kg 2 kg $ 15.000 Disponibilidad 80 kg 120 kg Función Objetivo MAX Z= 20000x + 15000y Declaración de variables x = Cantidad de bicicletas de paseo a producir y = Cantidad de bicicletas de montaña a producir Restricciones de capacidad Aluminio: x + 2y <= 80 Acero: 3x + 2y <= 120

Operaciones Tora

Embed Size (px)

DESCRIPTION

solucion de problemas

Citation preview

El PROBLEMA

Un herrero con 80 Kg. de acero y 120 Kg. de aluminio quiere hacer bicicletas

de paseo y de montaña que quiere vender, respectivamente a 20.000 y 15.000

pesos cada una para sacar el máximo beneficio. Para la de paseo empleará 1

Kg. De acero y 3 Kg. de aluminio, y para la de montaña 2 Kg. de ambos

metales. ¿Cuántas bicicletas de paseo y de montaña deberá fabricar para

maximizar las utilidades?

EL MODELO MATEMÁTICO

Acero Aluminio Precio de Venta

Bicicleta de paseo (x) 1 kg 3 kg $ 20.000

Bicicleta de montaña (y) 2 kg 2 kg $ 15.000

Disponibilidad 80 kg 120 kg

Función Objetivo

MAX Z= 20000x + 15000y

Declaración de variables

x = Cantidad de bicicletas de paseo a producir

y = Cantidad de bicicletas de montaña a producir

Restricciones de capacidad

Aluminio:

x + 2y <= 80

Acero:

3x + 2y <= 120

INGRESANDO LOS DATOS A TORA

Una vez iniciado TORA nos mostrará su menú principal de opciones, en él

seleccionamos la opción "Linear Programming":

Una vez seleccionada la opción de programación lineal, nos mostrará un menú

desde el cual podemos elegir si iniciar un nuevo modelo, o abrir un archivo

existente; además de seleccionar el formato de ingreso de datos, en el cual

recomendamos el formato decimal:

El siguiente paso consiste en completar la información solicitada en la nueva

ventana, correspondiente al nombre del problema, la cantidad de variables y

restricciones:

Una vez consignada la información anterior, y luego de teclear ENTER, nos

mostrará la siguiente interfaz, en la cual debemos consignar la información del

modelo, se trata de un formato tipo matricial muy similar al utilizado

por WinQSB:

Una vez completa la información de la matriz, procedemos a resolver el

modelo, presionando el botón SOLVE. Una vez hagamos esto nos mostrará un

menú en el que podemos modificar el formato numérico de la solución. Luego

de esto, nos mostrará un menú emergente en el que podemos elegir el tipo de

solución que queremos visualizar, se encuentra la solución gráfica y la

algebraica, elegimos la algebraica en este caso y seleccionamos que se nos

muestre el tabulado final:

En el tabulado solución podemos observar como la función objetivo toma el

mismo valor obtenido con los programas de solución de Solver y WinQSB. A

partir de este tabulado podemos efectuar un análisis de sensibilidad teniendo

en cuenta que:

Objective Value: Nos muestra el resultado de nuestra función objetivo, en este

caso la solución óptima tiene una función objetivo (utilidad) de $ 850.000.

 

Value: El valor que toman las variables de decisión.

 

Obj Val Contrib: Es la contribución unitaria de las variables de decisión en la

función objetivo.

 

Slack-/Surplus+: Cuando la restricción en cuestión tiene el operador <=,

corresponde a una holgura, es decir, se puede interpretar como el recurso no

utilizado. Cuando la restricción en cuestión tiene el operador >=, corresponde a

un exceso, es decir, se puede interpretar como el recurso utilizado por encima

de la restricción de mínimo uso.

 

Min and Max Obj Coeff: Para un coeficiente de la función objetivo en

particular. Este es el rango en que la base actual de la solución sigue siendo la

misma.

Dual price: Llamado en WinQSB como Shadow Price, y en Solver como

Multiplicador de Lagrange, corresponde al cambio marginal de la función

objetivo cuando el valor del lado derecho de la restricción aumenta en una

unidad. En nuestro ejemplo sería así: por cada kg de acero adicional que

tengamos disponible, la función objetivo aumentará en $1250.

El PROBLEMA

Un herrero con 80 Kg. de acero y 120 Kg. de aluminio quiere hacer bicicletas

de paseo y de montaña que quiere vender, respectivamente a 20.000 y 15.000

pesos cada una para sacar el máximo beneficio. Para la de paseo empleará 1

Kg. De acero y 3 Kg. de aluminio, y para la de montaña 2 Kg. de ambos

metales. ¿Cuántas bicicletas de paseo y de montaña deberá fabricar para

maximizar las utilidades?

EL MODELO MATEMÁTICO

Acero Aluminio Precio de Venta

Bicicleta de paseo (x) 1 kg 3 kg $ 20.000

Bicicleta de montaña (y) 2 kg 2 kg $ 15.000

Disponibilidad 80 kg 120 kg

Función Objetivo

MAX Z = 20000x + 15000y

Declaración de variables

x = Cantidad de bicicletas de paseo a producir

y = Cantidad de bicicletas de montaña a producir

Restricciones de capacidad

Aluminio:

x + 2y <= 80

Acero:

3x + 2y <= 120

INGRESANDO A LINEAR AND INTEGER PROGRAMMING (WINQSB)

Una vez se haya ingresado al módulo Linear and Integer Programming, se

abrirá una ventana de inicio del módulo, tal como se muestra a continuación:

En esta ventana podremos entonces crear un nuevo problema, o cargar uno

que ya hayamos desarrollado. Una vez demos clic en "Nuevo Problema (New

Problem)" se abrirá un menú emergente que nos permitirá ingresar los

parámetros básicos del problema:

El programa requiere que se definan las especificaciones del problema, que

incluye el nombre de problema, el número de variables, el número de

restricciones, el criterio de la función objetivo, los tipos de variable por

defecto, y el formato de entrada de datos, ya sea en forma de matriz o en forma

de modelo normal. El nombre de problema, los nombres de variables, nombres

de restricción, el número de variables, número de restricciones , el criterio de la

función objetivo, tipos de variables, y la entrada de datos formato se pueden

modificar mediante el menú Formato y menú Editar una vez se haya abierto el

modelo.

Para el problema que estamos abordando es necesario que ingresemos los

siguientes parámetros:

Número de variables: 2 (x, y)

Número de restricciones: 2 (Disponibilidad de Aluminio y Acero)

Función Objetivo: Maximizar (Utilidades)

Tipos de variables por defecto: Enteras no negativas (Serán bicicletas,

unidades enteras)

Formato de entrada: Matriz (Recomendado)

Una vez se registren los parámetros y al dar clic en el botón OK, se mostrará

la siguiente ventana, en aras de utilizar las mismas variables que en el modelo,

mostraremos el método de renombrar las variables:

Desde el menú EDIT, también podremos modificar el nombre de las

restricciones, tal como se aprecia en la siguiente imagen:

La interfaz para ingresar los valores que controlan el problema es la siguiente:

En ella hemos registrado los datos que controlan nuestro problema de estudio.

El siguiente paso, consiste en resolver el problema, para ello damos clic en el

botón "Solve and Analize": Este comando resuelve el problema . Si se

especifica alguna variable como un entero o binario, el programa utilizará

automáticamente el método de Branch and Bound (Rama y Cotas) para

resolver el problema. El método simplex modificado es utilizado

para resolver problemas de programación lineal continua.

 

Esta opción mostrará automáticamente un tabulado resumen de la solución si

el problema tiene una solución óptima, mostrará la inviabilidad de análisis si el

problema no es factible, o mostrará si el análisis no acotación si el problema no

está acotado en función objetivo o valores de las variables.

Este mensaje nos indica que el problema ha sido resuelto, y que existe una

solución óptima que ha sido encontrada. Al dar clic en Aceptar, nos llevará al

cuadro resumen de la solución:

Interpretar cada uno de los valores del cuadro solución, es cuan o más

importante que obtener la solución óptima, dado que de dicha interpretación

podremos extraer un buen análisis de sensibilidad:

Solution value: Valor solución, es el valor que toman las variables de decisión

en nuestra solución óptima, en este caso nos indica que se deberán producir

20 bicicletas tipo paseo y 30 bicicletas tipo montaña.

 

Unit Cost or Profit: El costo unitario o contribución es el valor que les fue

asignado a las variables por nosotros en la función objetivo.

 

Total Contribution: Es la contribución total a la solución objetivo, es el

producto del valor solución * costo unitario o contribución.

 

Basic Status: Después de que el problema se resuelve , esto representa si la

variable es una variable de base, en el límite inferior, o en el límite superior en

la tabla simplex final.

 

Allowable MIN, MAX C(j): Para un coeficiente de la función objetivo en

particular. Este es el rango en que la base actual de la solución sigue siendo la

misma.

 

Objective Function: Nos muestra el resultado de nuestra función objetivo, en

este caso la solución óptima tiene una función objetivo (utilidad) de $ 850.000

 

Left Hand Side: Del lado izquierdo, es el valor que toma la ecuación de cada

restricción luego de reemplazar las variables que la componen por los valores

solución. Por ejemplo, la ecuación de la restricción de Acero que es x + 2y <=

80, al reemplazar los valores solución quedará: (20) + 2(30) <= 80, el valor del

lado izquierdo será entonces 80.

 

Right Hand Side: Del lado derecho, es el valor asignado por nosotros a las

restricciones como máximo o mínimo recurso disponible.

Slack o Surplus: Cuando la restricción en cuestión tiene el operador <=,

corresponde a una holgura, es decir, se puede interpretar como el recurso no

utilizado. Cuando la restricción en cuestión tiene el operador >=, corresponde a

un exceso, es decir, se puede interpretar como el recurso utilizado por encima

de la restricción de mínimo uso.

 

Shadow Price: El precio sombra de una restricción, es el cambio marginal de

la función objetivo cuando el valor del lado derecho de la restricción aumenta

en una unidad. En nuestro ejemplo sería así: por cada kg de acero adicional

que tengamos disponible, la función objetivo aumentará en $ 1250.

PROGRAMACIÓN LINEAL EN SOLVER

Solver es una herramienta que forma parte de una serie de comandos a veces

denominados de "análisis Y si". Con Solver, puede buscarse el valor óptimo para

una fórmula de celda, denominada celda objetivo, en una hoja de cálculo. Solver

funciona en un grupo de celdas que estén relacionadas, directa o indirectamente, con

la fórmula de la celda objetivo. Solver ajusta los valores en las celdas cambiantes que

se especifiquen, denominadas

Celdas ajustables, para generar el resultado especificado en la fórmula de la

celda objetivo. Pueden aplicarse restricciones para restringir los valores que

puede utilizar Solver en el modelo y las restricciones pueden hacer referencia a

otras celdas a las que afecte la fórmula de la celda objetivo, lo cual lo

constituyen en una herramienta adecuada para solucionar problemas

de programación lineal, y programación lineal entera.

ALGORITMOS Y MÉTODOS UTILIZADOS POR SOLVER

La herramienta Microsoft Excel Solver utiliza el código de optimización no lineal

(GRG2) desarrollado por la Universidad León Lasdon de Austin (Texas) y la

Universidad Allan Waren (Cleveland).

 

Los problemas lineales y enteros utilizan el Método Simplex con límites en las

variables y el método de ramificación y límite (método de branch and bound),

implantado por John Watson y Dan Fylstra de Frontline Systems, Inc. El

método de branch and bound corresponde al mismo método utilizado

por WinQSB para la solución de problemas de programación lineal entera y/o

que utilicen variables binarias.

CÓMO HABILITAR EL COMPLEMENTO SOLVER DE EXCEL?

Aquí se encuentra la explicación acerca de cómo habilitar este complemento

para las versiones de Microsoft Excel 2007 (izquierda) y 2010 (derecha).

Método para Microsoft Excel 2007: El primer paso consiste en dirigirse al botón

de "Office", y seleccionar la opción "Opciones de Excel":

Luego, se abrirá una ventana emergente de "Opciones de Excel", en ella

vamos a la opción "Complementos" (ubicada en la barra lateral izquierda). Ya

en complementos, nos dirigimos a la opción "Administrar: Complementos de

Excel" y damos clic en botón "IR":

Luego se abrirá una pequeña ventana emergente, en ella se podrán observar

varios complementos junto con una casilla de verificación cada uno. Activamos

la casilla de verificación de Solver y damos clic en "Aceptar":

Método para Microsoft Excel 2010: El primer paso consiste en dirigirse a la

pestaña "Archivo", dirigirse a la opción "Ayuda" y seleccionar la opción

"Opciones":

Luego, se abrirá una ventana emergente de "Opciones de Excel", en ella

vamos a la opción "Complementos" (ubicada en la barra lateral izquierda). Ya

en complementos, nos dirigimos a la opción "Administrar: Complementos de

Excel" y damos clic en botón "IR":

Luego se abrirá una pequeña ventana emergente, en ella se podrán observar

varios complementos junto con una casilla de verificación cada uno. Activamos

la casilla de verificación de Solver y damos clic en "Aceptar":

Una vez se ha habilitado el complemento, para ambas versiones, Solver se

ubicará en la pestaña de "Datos".

SOLUCIÓN DE UN PROBLEMA DE PROGRAMACIÓN LINEAL CON SOLVER

Al igual que para cualquier otro método de resolución, el primer paso para

resolver un problema de programación lineal (PL) consiste en el modelamiento

matemático, y es en esta fase en la que el profesional de Ingeniería Industrial

debe desarrollar su mayor habilidad y destreza. Los pasos para resolver un

problema de PL se encuentran en el módulo de programación lineal. Sin

embargo, dada la interfaz de Excel, el modelamiento se hace más simple,

siempre y cuando nos caractericemos por organizar muy bien la información.

El PROBLEMAUn herrero con 80 Kg. de acero y 120 Kg. de aluminio quiere hacer bicicletas

de paseo y de montaña que quiere vender, respectivamente a 20.000 y 15.000

pesos cada una para sacar el máximo beneficio. Para la de paseo empleará 1

Kg. De acero y 3 Kg. de aluminio, y para la de montaña 2 Kg. de ambos

metales. ¿Cuántas bicicletas de paseo y de montaña deberá fabricar para

maximizar las utilidades?

EL MODELO MATEMÁTICOAcero Aluminio Precio de Venta

Bicicleta de paseo (x) 1 kg 3 kg $ 20.000

Bicicleta de montaña (y) 2 kg 2 kg $ 15.000

Disponibilidad 80 kg 120 kg

Función Objetivo

MAX Z = 20000x + 15000y

Declaración de variables

x = Cantidad de bicicletas de paseo a producir

y = Cantidad de bicicletas de montaña a producir

Restricciones de capacidad

Aluminio:

x + 2y <= 80

Acero:

3x + 2y <= 120

INGRESANDO LOS DATOS A EXCELTal cómo se mencionó, la importancia de una correcta organización de la

información es vital, proponemos la siguiente plantilla para ingresar los datos

de nuestro problema:

El siguiente paso corresponde a registrar la información en la plantilla, de

acuerdo a los datos que tenemos en el problema:

El siguiente paso consiste en formular la plantilla, para ello debemos considerar

¿qué pasaría si cambiaran las variables de decisión?... Pues, en caso tal de

que las variables sufrieran cambios se alteraría la contribución total, y el

inventario de recursos. Por ello, debemos formular en consecuencia:

Ahora que ya tenemos nuestra plantilla formulada, el siguiente paso consiste

en utilizar Solver para resolver el modelo, para ello, vamos a la pestaña Datos

(En cualquier versión de Office), y seleccionamos el complemento Solver:

Una vez iniciemos Solver se abrirá una ventana emergente llamada

"Parámetros de Solver", en ella como primera medida seleccionaremos nuestra

celda objetivo (Contribución Total) y seleccionaremos el criterio Maximizar:

El siguiente paso, es indicarle a Solver que debe alcanzar el máximo valor para

la celda objetivo mediante la variación de las siguientes celdas (Cambiando las

celdas), es decir, le indicaremos cuales son las variables de decisión:

El siguiente paso consiste en asignarle las restricciones a las que el modelo

está sujeto, las cuales son restricciones de disponibilidad de recursos:

Lo que nos muestra la imagen anterior es la forma de indicarle la restricción a

Solver, para que el inventario usado sea menor o igual al inventario disponible.

De igual forma debe hacerse para el recurso de Aluminio.

La siguiente restricción es la de no negatividad, es decir, que las variables de

decisión no puedan tomar valores menores que cero.

Si quisiéramos resolver el modelo tal cual como está pudiésemos hacerlo, y

obtendríamos quizá una respuesta que distaría de su aplicación práctica, dado

que es probable que la respuesta nos de variables continuas, y en la práctica

vender 0,6 bicicletas es un poco complicado. Por tal razón, agregaremos una

restricción que hace que el ejercicio se resuelva mediante programación lineal

entera, indicando que las variables de decisión deban ser enteras:

Hecho esto, damos clic en Aceptar y en Resolver... Podemos observar como

las variables de decisión, las restricciones (inventario usado) y la contribución

total (celda objetivo) han tomado valores, estos son los valores óptimos según

el modelo formulado. Ahora nos aparecerá un cuadro de diálogo que nos

preguntará si deseamos utilizar la solución de Solver y unos informes que

debemos seleccionar para obtener una tabla resumen de la respuesta y un

análisis de sensibilidad que se insertarán como hojas al archivo de Excel:

El informe de sensibilidad arrojado por Solver es mucho más básico que el que

nos puede proporcionar WinQSB, sin embargo destacamos la información

referente al "Multiplicador de Lagrange" que corresponde al "Shadow Price de

WinQSB" conocido como el precio sombra, es decir, el cambio marginal de la

función objetivo cuando el valor del lado derecho de la restricción aumenta en

una unidad, en este caso, por cada kg de Acero adicional que dispongamos, la

función objetivo aumentaría en $ 1250.