SV101 | Lingo

Page 1

Revisión de sitio web elaborada por:

Nallely Noh de la Cruz | Mayra Elizondo Cortés nallely_noh@comunidad.unam.mx | mayra.elizondo@comunidad.unam.mx

DE QUÉ SE TRATA

EJEMPLO

La programación matemática ha sido una herramienta muy importante para resolver problemas de optimización. Existen diversos tipos de programas matemáticos. Uno de los más utilizados es la programación lineal, que está caracterizada por: la maximización (por ejemplo: beneficios) o minimización (por ejemplo: costos) de una función objetivo lineal, que busca aprovechar lo mejor posible los recursos disponibles (tiempo, materia prima, número de trabajadores, etc.), representados por restricciones que se formulan como desigualdades o igualdades lineales, y cuyo resultado es el conjunto x de variables de decisión que pertenece a los números reales y se requiere no negativo. Así que, si estás familiarizado o interesado en la programación lineal, esta herramienta te podría interesar.

A través de un pequeño ejemplo, te mostraremos la facilidad de uso de esta herramienta para resolver problemas de programación lineal. Al abrir LINGO, se mostrará una ventana en blanco (Fig. 2) lista para empezar a formular el problema.

LINGO es un software muy práctico que nos permite resolver esta clase de problemas de optimización con el método simplex o sus variaciones. Este software es amigable debido a que no es necesario un lenguaje específico para modelar, simplemente, con notación matemática se puede formular el problema de interés. Además, dependiendo de la versión adquirida, se pueden resolver problemas no lineales, cuadráticos, semi-definidos y estocásticos.

Fig. 2: Página principal de Lingo. En este caso, supongamos que el problema planteado es el que se presenta en la Fig. 3.

CÓMO LO PUEDES USAR Existe una versión gratuita en http://www.lindo.com y para obtenerla se selecciona la opción de LINGO (Fig. 1) y posteriormente, la opción de descargar la versión de prueba. Cabe mencionar que la capacidad de esta versión es para problemas pequeños, con un máximo de 150 restricciones y 300 variables, 30 de ellas enteras.

Fig. 3: Problema formulado en Lingo. Es importante saber que la formulación en LINGO debe cumplir con las siguientes características: • •

Fig. 1: Página principal de Lindo.

La función objetivo representada por MAX o MIN (dependiendo si el problema es de maximización o minimización), seguido del signo igual (=); el producto de un número por la variable de decisión se representa con un asterisco (*) y el signo de “menor o igual que” (<=), “mayor o igual que” (>=) o “igual” (=) se usa en las restricciones;

 10 de septiembre 2017 


• •

cada línea, ya sea que contenga a la función objetivo o a las restricciones, finaliza con punto y coma (;); se pueden escribir comentarios, iniciando con el signo de exclamación (!) y finalizando con punto y coma (;), con estos signos el comentario se tornará color verde; no será necesario declarar las restricciones de no negatividad, ya que LINGO de forma automática tiene seleccionado la opción VARIABLES ASSUMED NON-NEGATIVE; Lingo no distingue entre mayúsculas o minúsculas, por ejemplo, es lo mismo escribir MAX que max.

Fig. 6: Cuadro de diálogo Solution Report.

Una vez formulado el problema, se puede resolver a través de la opción Solve, ubicada en el menú LINGO → Solve o en el ícono con forma de tiro al blanco ubicado en la barra de herramientas (Fig. 4).

Finalmente, con este ejemplo se puede ver lo sencillo que es resolver un problema utilizando LINGO. El valor de la función objetivo para este problema de maximización (obtenido en los dos últimos cuadros de diálogo) es de 21 y los valores de las variables X1 y X2 (obtenidos en el último cuadro de diálogo) es de 3 y 1.5, respectivamente.

Fig. 4: Ícono de Solve.

Es importante mencionar que LINGO es sólo un software que aplica el método simplex, entre otros, para resolver problemas de programación lineal, pero para entender y utilizar correctamente a la programación matemática, es necesario tener conocimiento sólido de matemáticas y de optimización.

Si el problema tiene solución factible, aparecerá el cuadro de diálogo LINGO Solver Status, el cual muestra el valor de la función objetivo, el número de iteraciones realizadas, el tiempo en que se resolvió, el número de variables, entre otros datos (Fig. 5).

DÓNDE PUEDES ENCONTRAR MÁS INFORMACIÓN Se puede consultar el manual de LINGO en la siguiente dirección, seleccionando la opción de LINGO: http://www.lindo.com/index.php/ls-downloads/user-manuals

DATOS GENERALES DEL SOFTWARE •

Autor: Lindo Systems Inc.

Sitio Principal: http://www.lindo.com/

Categoría: Software para resolver problemas de programación matemática.

Requerimientos: conocimientos básicos de programación matemática, y programación lineal.

Áreas que puede apoyar: Investigación de Operaciones.

PALABRAS CLAVE DE ESTE NÚMERO Programación lineal, programación matemática, método simplex, optimización. Fig. 5: Cuadro de diálogo LINGO Solver Status. Cerrando la ventana anterior, se muestra el cuadro de diálogo Solution Report (Fig. 6), donde nuevamente se puede observar el valor de la función objetivo y el número de iteraciones, pero además, se muestra el valor de las variables de decisión, las variables de holgura, el precio dual y el costo reducido; todos estos son datos importantes para realizar el análisis de sensibilidad, que es parte importante de la toma de decisiones con programación lineal.

¿Y

ESTE BOLETÍN QUÉ ONDA?

Nuestro objetivo es difundir software e instrumentos digitales que puedan apoyar el aprendizaje. El boletín está abierto a colaboraciones de quien guste participar. Se prefieren las revisiones de software libre o de fácil acceso, así como de servicios digitales públicos. Encontrarás la Guía para los Autores en el ambiente virtual de aprendizaje http://www.inteligencianet.org. El Software Volandero se publica de manera aleatoria, con un tiraje aproximado de doscientos ejemplares impresos y en versión electrónica.


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.