Práctica de informática del programa LINDO



Documentos relacionados
Introducción al programa WinQSB

1. Análisis de la situación Objetivo Hipótesis... 3

Programación Lineal y Optimización Segundo Examen Parcial Respuesta: :Solución Profr. Eduardo Uresti, Enero-Mayo 2011

Guía rápida de WinQSB

Programación Lineal y Optimización Segundo Examen Parcial :Solución Profr. Eduardo Uresti, Verano 2009

BREVE MANUAL DE SOLVER

Desarrollar un modelo Lingo. Para desarrollar un modelo de optimización en Lingo hay que especificar:

INDICE. 1. Introducción El panel Entities view El panel grafico Barra de botones Botones de Behavior...

TEMA 2 WINDOWS XP Lección 4 BLOC DE NOTAS

CURSO DE INTRODUCCIÓN AL WORD

Remesas bancarias de Clientes

Operación de Microsoft Word

MANUAL PARA GESTIÓN DE INCIDENCIAS INFORMÁTICAS

TEMA 7 ANÁLISIS DE DATOS: INTRODUCCIÓN AL SPSS

Plantilla de texto plano

SOLUCIÓN CASO GESTIÓN DE PERSONAL I

H E R R A M I E N T A S D E A N Á L I S I S D E D A T O S HERRAMIENTAS DE ANÁLISIS DE DATOS

Programa diseñado y creado por Art-Tronic Promotora Audiovisual, S.L.

Plataforma e-ducativa Aragonesa. Manual de Administración. Bitácora

REGISTRAR LOS SITIOS WEB MÁS INTERESANTES

PHPMYADMIN Y MYSQL. Para gestionar la base de datos MySQL, lo haremos desde la aplicación PhpMyAdmin.

PowerPoint 2010 Manejo de archivos

CREACIÓN DEL PRIMER PROYECTO EN mikrobasic PRO for AVR

10. El entorno de publicación web (Publiweb)

DUALIDAD EN PROGRAMACIÓN LINEAL CON LINDO

El programa Minitab: breve introducción a su funcionamiento. Para mostrar la facilidad con la que se pueden realizar los gráficos y cálculos

2) Se ha considerado únicamente la mano de obra, teniéndose en cuenta las horas utilizadas en cada actividad por unidad de página.

MANUAL DE LA APLICACIÓN DE ENVÍO DE SMS

WinQSB. Módulo de Transporte y Asignación. Al ejecutar el módulo Network Modeling la ventana de inicio es la siguiente

DESCARGA DE CARPETAS DE MENSAJES DE CORREO DESDE EL WEBMAIL A PC S LOCALES

Programación Lineal. Ficha para enseñar a utilizar el Solver de EXCEL en la resolución de problemas de Programación Lineal

CONCEPTOS BASICOS. Febrero 2003 Página - 1/10

Capítulo 9. Archivos de sintaxis

2_trabajar con calc I

MANUAL DE CÓMO REALIZAR ANEXOS A LAS FACTURAS DE TRATAMIENTO DE PRÓTESIS

ESCUELA SUPERIOR DE INFORMATICA Prácticas de Estadística UNA SESIÓN EN SPSS

10. GENERADOR DE INFORMES.

TEMA 5. INTRODUCCIÓN AL MANEJO DE ORIGIN 6.1

La ventana de Microsoft Excel

Kepler 8.0 USO DEL ERP

Índice general de materias LECCIÓN 7 74

MEJORAR EL RENDIMIENTO DEL EXPLORADOR DE INTERNET

Contenido. cursos.cl / Teléfono:

ANÁLISIS DE SENSIBILIDAD CON EXCEL Y LINDO

UNIDAD I PROCESADOR DE TEXTOS

Uso básico desde la propia página del sitio

PS.Vending Almacén Pocket PC

ESTÁNDAR DESEMPEÑO BÁSICO Recopila información, la organiza y la procesa de forma adecuada, utilizando herramientas tecnológicas.

Cómo creo las bandejas del Registro de Entrada /Salida y de Gestión de Expedientes?

Estimado usuario. Tabla de Contenidos

Dando nuestros primeros pasos con 3DS Max. 1. Objetivos

Desarrollo de una aplicación de ejemplo: movilidapp. Desarrollado por movilidapp

Inicio del programa WORD 2007

Historial de Versiones: Velneo vversion. Funcionamiento. Repositorio de versiones. Funcionalidades del Historial de Versiones. Bloquear.

La pestaña Inicio contiene las operaciones más comunes sobre copiar, cortar y pegar, además de las operaciones de Fuente, Párrafo, Estilo y Edición.

Aprendiendo LINGO INTRODUCCIÓN A LINGO - 1

Introducción al PSPICE

Unidad 5 Utilización de Excel para la solución de problemas de programación lineal

Formas de Pago y Efectos en Facturas de Venta WhitePaper Febrero de 2007

Mensario 2: Manual de importación

INSTALAR UBUNTU DESDE WINDOWS

El módulo de texto plano es un sencillo editor. Al seleccionarlo en la caja de módulos, el área central adoptará al siguiente aspecto:

Recursos de Aprendizaje

El Entorno Integrado de Desarrollo Dev-C++ (Ayuda básica para las primeras sesiones de prácticas)

Control de accesos autónomo por huella dactilar

Instalación del programa PSPP y obtención de una distribución de frecuencias.

Clase Nº 9 OPERADOR PC. P á g i n a 1 HOJA DE CALCULO MICROSOFT EXCEL

Correo Electrónico: Webmail: Horde 3.1.1

Servicio Webmail. La fibra no tiene competencia

Para crear formularios se utiliza la barra de herramientas Formulario, que se activa a través del comando Ver barra de herramientas.

6.1. Conoce la papelera

1.- MENU DE CONTROL O MENU VENTANA: permite cerrar la ventana cambiarla de tamaño y pasar a otra ventana

Software para edición de audio. Grabación

Seminario de Informática

WINDOWS. Iniciando Windows. El mouse

LA INFORMÁTICA EN EL AULA

AGREGAR UN EQUIPO A UNA RED Y COMPARTIR ARCHIVOS CON WINDOWS 7

1) Aplicación Inp. Si has llegado hasta aquí poco te podemos decir ya de la misma. Seguimos.

/05/2009

GVisualPDA Módulo de Almacén

Guía para el tratamiento en Allegro de recibos para centros no pertenecientes a la Generalitat Valenciana.

Instalación del programa PSPP y obtención de una distribución de frecuencias.

Bienvenidos a EVIEWS Pantalla del Menú (1) Principal

Montaje. Resumen de Montaje WhitePaper Febrero de 2007

Fundamentos de Investigación de Operaciones Investigación de Operaciones 1

Cómo acceder a Google Drive? Tiene más funcionalidades una cuenta de Google?

Carrito de Compras. Esta opción dentro de Jazz la podremos utilizar como cualquier otro carrito de compras de una página de Internet.

Ecuaciones de primer grado con dos incógnitas

MUNIA Manual de usuario

Race Manager by Master Timing Guía del usuario GUIA RACE MANAGER. Eventronic, SL

CICLO DE LOS PARTES DE TRABAJO EN EL PROGRAMA PARA LA GESTIÓN DEL MANTENIMIENTO

Instalación de dos Sistemas Operativos en un mismo Computador

Manual de uso del Tracker (Gestor de Actividad)

Gestión de Retales WhitePaper Noviembre de 2009

PLANTILLAS EN MICROSOFT WORD

PLANTILLAS DE DOCUMENTOS EN WORD 2007

Tutorial de Introducción a la Informática Tema 0 Windows. Windows. 1. Objetivos

Transcripción:

FACULTAD DE CIENCIAS ECONÓMICAS Y EMPRESARIALES PROGRAMACIÓN MATEMÁTICA Práctica de informática del programa LINDO Curso 2004-05 LINDO 6.1 es un programa de entorno Windows, que sirve para resolver problemas de programación lineal. 1º) Introducir un problema: El formato que hemos de seguir para introducir el problema es muy simple, tal y como vemos en el siguiente ejemplo: Max 4x+3y subject to x + y <=5 2x+y<=8 x>=1 El programa asume las condiciones de no negatividad de las variables del problema. Si el criterio de optimización es de mínimo, sustituimos Max por Min en el problema. Además, podemos sustituir subject to por st. Podemos asignar un número o un comentario para cada restricción de la siguiente forma: Max 4x+3y st R1)x + y <=5 R2)2x+y<=8 x>=1 Podemos introducir comentarios aclaratorios en algunas líneas del problema, sin más que comenzar la línea con el símbolo!. Por ejemplo:! Problema del beneficio Max 4x+3y subject to x + y <=5 2x+y<=8 x>=1 1

El símbolo! nos puede servir también para que LINDO no tenga en cuenta una línea. Por ejemplo, si deseamos resolver el problema anterior sin la restricción x>=1, no es necesario borrarla, basta con incluir el símbolo! delante de ella:! Problema del beneficio Max 4x+3y subject to x + y <=5 2x+y<=8!x>=1 Los nombres de las variables del problema pueden ser de hasta 8 caracteres. 2º) Resolver un problema: Una vez introducido un problema, lo resolveremos de la siguiente forma: Para resolver el problema presionaremos el botón de la barra de herramientas, o bien, a través del teclado, presionamos Ctrl+S. Aparecerán en pantalla dos ventanas, una que resume de la resolución del problema (nº de iteraciones realizadas para resolver, valor de la función objetivo, etc.) y otra en la que nos preguntan si deseamos realizar análisis de sensibilidad del problema: 2

Tras responder a la pregunta correspondiente al análisis de sensibilidad y cerrar la ventana Lindo Solver Status, Lindo muestra la solución del problema en una ventana nueva a la que denomina Reports Window (Ventana de Resultados), y a la que podemos acceder de distintas formas: Presionando el botón : de la barra de herramientas. En el menú Window, marcando Reports Window. La ventana de resultados muestra la siguiente información: 1) 18.00000: VARIABLE VALUE REDUCED COST X 3.000000 0.000000 Y 2.000000 0.000000 ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 2.000000 3) 0.000000 1.000000 4) 2.000000 0.000000 NO. ITERATIONS= 1 RANGES IN WHICH THE BASIS IS UNCHANGED: OBJ COEFFICIENT RANGES VARIABLE CURRENT ALLOWABLE ALLOWABLE COEF INCREASE DECREASE X 4.000000 2.000000 1.000000 Y 3.000000 1.000000 1.000000 RIGHTHAND SIDE RANGES ROW CURRENT ALLOWABLE ALLOWABLE RHS INCREASE DECREASE 2 5.000000 2.000000 1.000000 3 8.000000 2.000000 2.000000 4 1.000000 2.000000 INFINITY 3

Interpretación de estos resultados: 1) Valor de la función objetivo en el óptimo 1) 18.00000: 2) Punto óptimo: (x= 3, y = 2). REDUCED COST es el z j c j de cada variable en la tabla del simplex. VARIABLE VALUE REDUCED COST X 3.000000 0.000000 Y 2.000000 0.000000 3) Restricciones (variables de holgura): Cada fila corresponde a una restricción: ROW SLACK OR SURPLUS DUAL PRICES 2) 0.000000 2.000000 3) 0.000000 1.000000 4) 2.000000 0.000000 SLACK OR SURPLUS: Mide lo que queda del recurso en la restricción y, por tanto, es el valor de la variable de holgura asociada a esa restricción. DUAL PRICES: Precio sombra o valor de la variable dual. Es, por tanto, el z j de la variable de holgura correspondiente a esa restricción. (En este caso, los c j = 0, luego también se interpretan como z j c j ). Por tanto, en nuestro problema las soluciones de las variables de holgura y los z j de las mismas son: x 3 = 0, x 4 = 0 y x 5 = 2 z 3 = 2, z 4 = 1 y z 5 = 0 4

4) Análisis de sensibilidad: RANGES IN WHICH THE BASIS IS UNCHANGED: 4a) Análisis de sensibilidad de costes: OBJ COEFFICIENT RANGES VARIABLE CURRENT ALLOWABLE ALLOWABLE COEF INCREASE DECREASE X 4.000000 2.000000 1.000000 Y 3.000000 1.000000 1.000000 CURRENT COEF: Valor de coeficiente de la variable en la función objetivo. ALLOWABLE INCREASE: Cantidad en la que puedo incrementar el coeficiente sin que cambie la base. ALLOWABLE DECREASE: Cantidad en la que puedo reducir el coeficiente sin que cambie la base. Los intervalos de sensibilidad para los costes del problema son: C 1 [3, 6] y C 2 [2, 4] 4b) Análisis de sensibilidad de recursos: RIGHTHAND SIDE RANGES ROW CURRENT ALLOWABLE ALLOWABLE RHS INCREASE DECREASE 2 5.000000 2.000000 1.000000 3 8.000000 2.000000 2.000000 4 1.000000 2.000000 INFINITY CURRENT RHS: Valor del recurso en la restricción. ALLOWABLE INCREASE: Cantidad en la que puedo incrementar el coeficiente sin que cambie la base. ALLOWABLE DECREASE: Cantidad en la que puedo reducir el coeficiente sin que cambie la base. Los intervalos de sensibilidad para los recursos del problema son: 5

b 1 [4, 7], b 2 [6, 10], b 3 (-, 3] 3º) Notas: 1. Si, una vez resuelto el problema queremos modificarlo, volvemos a la ventana en la que tenemos el problema y realizamos los cambios correspondientes. Si, seguidamente lo resolvemos, la solución aparecerá en la ventana de resultados (Reports Window) seguida de la anterior. 2. Si el problema resuelto tiene infinitas soluciones, el programa no avisa de ello y, por tanto, para detectarlo debemos revisar las columnas DUAL PRICE Y REDUCED COST de la solución, comprobando que las variables no básicas (las que son nulas si la solución es no degenerada) tienen un z j -c j nulo. 3. Si el problema que resolvemos no posee soluciones factibles (conjunto de oportunidades vacío), aparece en pantalla la siguiente ventana: 4. Si el problema que resolvemos posee solución ilimitada, aparecerá en pantalla la siguiente ventana: 6

5. Si queremos guardar el problema o la ventana de resultados, lo haremos con los comandos Archivo, Guardar, como en cualquier programa de entorno Window. El nombre del archivo debe tener, como mucho, 8 caracteres. Los archivos Lindo tienen la extensión ltx (*.ltx). 4º) Variables: FREE (Nombre de la Variable): Elimina las cotas de la variable. Con ello elimina la condición de no negatividad de la variable que el programa asume inicialmente. GIN (Nombre de la Variable): La variable toma valores enteros y no negativos. INT (Nombre de la Variable): La variable es binaria, sus valores quedan restringidos a 0 ó 1. 5º) Descripción de algunos comandos de utilidad para utilizar el programa. Menú FILE: o New :Crea un nuevo fichero de LINDO. o Open :Abre un fichero ya existente de LINDO. o View: Abre un fichero modelo de LINDO. o Save: Graba el fichero activo (correspondiente a un problema o a resultados) en disco.. El nombre del archivo debe tener, como mucho, 8 caracteres. Los archivos Lindo tienen la extensión ltx (*.ltx). o Save As: Graba el fichero activo (correspondiente a un problema o a resultados) en un lugar distinto o con un nombre distinto. o Close: Cierra la ventana activa. o Print: Imprime el contenido de la ventana activa. o Exit: Salir de LINDO Menú EDIT: o Undo. Deshace la última acción. o Cut: Corta el texto seleccionado. o Copy: Copia el texto seleccionado. 7

o Paste: Pega el texto anteriormente cortado o copiado. o Clear: Borra el texto seleccionado. o Find/Replace: Busca una palabra, frase,... en la ventana activa y, opcionalmente la reemplaza por otra. o Options: Configurar LINDO. o Go to Line: Ir a una línea de la ventana activa. o Paste Symbol: Muestra la lista de símbolos reservados en el programa, las y los nombre de las variables del problema. o Select All: Selecciona todo el texto de la ventana activa. o Clear All: Borra todo el texto de la ventana activa. o Choose New Font: Cambia la fuente (tipo de letra) en la ventana activa. Menú SOLVE: o Solve: Resuelve el problema de la ventana activa. o Compile Model: Compila el problema de la ventana activa.. Menú REPORTS: o Solution: Muestra, en la ventana de resultados, la solución óptima para el problema de la ventana activa. o Range: Muestra, en la ventana de resultados, el análisis de sensibilidad de la solución óptima para el problema de la ventana activa. o Parametrics: Realiza un análisis paramétrico de los recursos de las restricciones. El resultado lo muestra mediante una gráfica que indica cómo cambia la función objetivo ante el cambio en el recurso. o Tableau: Muestra la tabla óptima del simplex de problema. La primera fila de esta tabla es la de z j c j, que nosotros colocamos en último lugar. o Formulation: Muestra en la ventana de resultados el problema que estamos resolviendo. 8

Menú WINDOWS: o Open Status Window: Abre la ventana de resolución (Solver Status Window), que puede ser utilizada para seguir el proceso de resolución de un problema. o Send To Back: Cambia la ventana activa actual por la siguiente. o Cascade: Coloca todas las ventanas abiertas en cascada. o Tile: Coloca todas las ventanas abiertas en forma de mosaico. o Close All: Cierra todas las ventanas abiertas. 9

PROBLEMA DEL BENEFICIO Y LA CONTAMINACIÓN: 1) MÉTODO DE LAS PONDERACIONES Max λ (4x +3y) +(1-λ)(-3x-2y) st x+y<=5 2x+y<=8 x>=1 Funciones objetivo ponderadas: Vector de Pesos λ (4x +3y) +(1-λ)(-3x-2y) Solución λ = 0-3x-2y (1, 0, 4, 6, 0) λ = 0.125-2.125x-1.375y (1, 0, 4, 6, 0) λ=0.25-1.25x-0.75y (1, 0, 4, 6, 0) λ=0.375-0.375x-0.125y (1, 0, 4, 6, 0) λ=0.4-0.2x Segmento que une los puntos (1,0) y (1,4) λ=0.45 0.15x+0.25y (1,4,0,2,0) λ=0.5 0.5x+0.5y Segmento que une los puntos (1,4) y (3,2) λ=0.625 1.375x+1.125y (3,2,0,0,2) 2) PROGRAMACIÓN POR METAS LEXICOGRÁFICA Nivel 1: Introducir el problema: Min n1 st x+y<=5 2x+y<=8 x>=1 4x+3y+n1-p1=10 Solución: LP OPTIMUM FOUND AT STEP 2 OBJECTIVE FUNCTION VALUE 1) 0.0000000E+00 10

VARIABLE VALUE REDUCED COST N1 0.000000 1.000000 X 2.500000 0.000000 Y 0.000000 0.000000 P1 0.000000 0.000000 ROW SLACK OR SURPLUS PRICES 2) 2.500000 0.000000 3) 3.000000 0.000000 4) 1.500000 0.000000 5) 0.000000 0.000000 DUAL NO. ITERATIONS= 2 Puesto que n1=0, pasamos al nivel 2 Nivel 2: Solución: Min p2 st x+y<=5 2x+y<=8 x>=1 4x+3y+n1-p1=10 3x+2y+n2-p2=6 n1=0 LP OPTIMUM FOUND AT STEP 2 OBJECTIVE FUNCTION VALUE 1) 1.000000 VARIABLE VALUE REDUCED COST P2 1.000000 0.000000 X 1.000000 0.000000 Y 2.000000 0.000000 N1 0.000000 0.000000 P1 0.000000 0.666667 N2 0.000000 1.000000 ROW SLACK OR SURPLUS DUAL PRICES 2) 2.000000 0.000000 3) 4.000000 0.000000 4) 0.000000-0.333333 5) 0.000000-0.666667 11

6) 0.000000 1.000000 7) 0.000000 0.666667 NO. ITERATIONS= 2 Luego, la solución del problema es x = 1, y = 2, n1 = 0, p2 = 1. Puesto que la variable no deseada p2 es distinta de 0, la solución obtenida no es satisfactoria. 12