Professional Documents
Culture Documents
Integrantes:
Giraldo Marin Hamer
Martínez vera Jorge
Serrano Gomez Gabriela
Curso:
ISI-S-MA-5-2
Docente:
Ing. Cevallos Torres Lorenzo
Materia:
Investigación de operaciones
Año Lectivo:
2017 – 2018 (II Ciclo)
Contenido
El arte de programar en R: un lenguaje para la estadística .......................................................... 3
1. Historia de R y S ........................................................................................................... 3
Guía Básica de instalación del R y el R-commander en Windows ................................................ 5
1. Instalación R ...................................................................................................................... 5
Método gráfico ............................................................................................................................ 11
La función objetivo lineal ........................................................................................................ 11
Problema de transporte o distribución ....................................................................................... 13
Función objetivo ...................................................................................................................... 15
Restricciones en oferta............................................................................................................ 15
Restricciones en demanda ...................................................................................................... 15
Ejemplo: .............................................................................................................................. 15
El Problema ............................................................................................................................. 15
Solución mediante Programación Lineal ................................................................................. 16
Método de la esquina noroeste .............................................................................................. 21
Método Vogel.......................................................................................................................... 22
Método del costo mínimo ....................................................................................................... 22
Método simplex .......................................................................................................................... 23
Presentación del Método Simplex .......................................................................................... 23
Construcción de la tabla simplex ............................................................................................ 24
Método dual simplex .................................................................................................................. 26
Macro Método Simplex ............................................................................................................... 29
Bibliografía .................................................................................................................................. 29
2
El arte de programar en R: un lenguaje para la estadística
Por esta razón, en lugar de pensar de R como un sistema estadístico, es preferible verlo
como un ambiente en el que se aplican técnicas estadísticas. Por ejemplo, en este libro
nos inclinaremos hacia el lado de la programación (lenguaje) más que tocar los aspectos
estadísticos. Esto con la finalidad de ampliar la gamma de aplicaciones en el tratamiento
de datos.
1. Historia de R y S
R fue creado en 1992 en Nueva Zelanda por Ross Ihaka y Robert Gentleman
(Ihaka [1998]). La intención inicial con R, era hacer un lenguaje didáctico, para ser
utilizado en el curso de Introducción a la Estadística de la Universidad de Nueva
Zelanda. Para ello decidieron adoptar la sintaxis del lenguaje S desarrollado por Bell
Laboratories. Como consecuencia, la sintaxis es similar al lenguaje S, pero la
semántica, que aparentemente es parecida a la de S, en realidad es sensiblemente
diferente, sobre todo en los detalles un poco más profundos de la programación.
3
Formato del código en el texto
Con el propósito de facilitar la lectura del presente texto, el código del lenguaje se
diferencia en párrafos especiales, que han sido construidos con la ayuda del software
knitr, gentilmente creado por Xie [2013]2. A continuación, se muestra un fragmento de
código con las explicaciones correspondientes.
4
Guía Básica de instalación del R y el R-commander en Windows
1. Instalación R
Para la instalación del programa R y del paquete R-Commander, con su navegador abra
la página www.r-project.org. Marque el enlace Download R como se ilustra.
Figura 2
Figura 3
5
Para los usuarios de Windows, una vez elegida la opción Windows, se abrirá una página
con enlaces a los dos directorios principales de la distribución de R, elija base. En la nueva
página, como lo muestra la figura a continuación, se le presentará la última versión
disponible de R (en el momento de la redacción de este texto, se trata de la 2.12.0).
Figura 4
Figura 5
6
En la instalación el siga los pasos sin modificar, hasta la quita pantalla cuando se pregunta
si deseamos establecer opciones de configuración, se escoge Si.
Figura 6
También para poder utilizar el R-Commander se debe marcar la opción SDI en la sexta
pantalla, como se muestra a continuación.
Figura 7
El último cambio que se hará será en la pantalla Acceso a Internet, donde se aconseja
marcar la casilla Internet 2.
7
Figura 8
Una vez terminada la instalación del programa R, ejecútelo, el programa se abrirá con
una ventana como se muestra, esta ventana se conoce como la consola de R, donde se
tiene que escribir los comandos.
Figura 9
8
Para instalar el paquete R-Commander, asegurándose de tener activada una conexión a
Internet. Seleccionar en la barra de menús Paquetes>Instalar paquete(s)
Figura 10
Tendría que abrirse entonces una ventana con todos los posibles espejos (CRAN mirror),
como en la próxima figura de la izquierda, donde seleccionamos el espejo de Madrid. Una
vez elegido el espejo, se abrirá otra ventana con los paquetes descargables desde el
mismo, como se ilustra en la próxima figura de la derecha. Desplazándose hacia abajo se
encontrarán los paquetes de interés: se trata de marcar todos los paquetes que comiencen
con Rcmdr
Figura 11
9
El programa R empezará la instalación de los paquetes, también instalará otros que R-
commander necesita para su funcionamiento. Al detenerse la instalación volverá a
mostrar la pantalla de la consola. Para arrancar el R-Commander, seleccione otra vez el
menú Paquetes>Cargar paquete
Figura 12
Figura 13
10
Figura 14
Método gráfico
𝑧 = 𝑐1 𝑥1 + 𝐶2 𝑥2 + ⋯ + 𝑐𝑛 𝑥𝑛
o utilizando la notación de sumatorias
𝑛
𝑧 = ∑ ∑ 𝑐𝑗 𝑥𝑗
𝑗=1
11
Donde:
….
….
𝐴𝑚1 𝑥1 + 𝐴𝑚2 𝑥2 + ⋯ + 𝐴𝑚𝑛 𝑥𝑛 = 𝐵𝑚
𝑥1 , 𝑥2 , … , 𝑥𝑛 ≥ 0
Según Beneke y Winterboer (1984: 25), hay tres tipos básicos de restricciones: de
“mayor que” (≥), de “menor que” (≤) o de igualdad (=), y estas pueden ser clasificadas
en razón a su naturaleza:
12
Problema de transporte o distribución
El problema de transporte o distribución es un problema de redes especial en
programación lineal (Lopez, 2016) se refiere a que se funda en la necesidad de llevar
unidades de un punto específico llamado Fuente u Origen hacia otro punto específico
llamada Destino. Los principales objetivos de un modelo de transporte son la satisfacción
de todos los requerimientos establecidos por los destinos y claro está la minimización de
los costos relacionados con el plan determinado por las rutas escogidas.
El contexto en el que se aplica el modelo de transporte es amplio y puede generar
soluciones atinentes al área de operaciones, inventario y asignación de elementos.
El procedimiento de resolución de un modelo de transporte se puede llevar a cabo
mediante programación lineal común, sin embargo su estructura permite la creación de
múltiples alternativas de solución tales como la estructura de asignación o los métodos
heurísticos más populares como Vogel, Esquina Noroeste o Mínimos Costos.
(-Cun-, 2011) El objetivo primordial del modelo de transporte es buscar minimizar los
costos de envió de la cantidad de elementos que se enviaran de cada fuente a cada destino,
tal que se minimice el costo del transporte total de los envíos. Por otra parte, el modelo
de transporte establece un método que regula el transporte de mercancías de varias fuentes
a varios destinos.
Los elementos del modelo son:
1. Indica el nivel de oferta que tiene cada fuente y la cantidad de demanda en cada
destino.
Como solo existe una mercancía y el destino puede recoger su demanda varias fuentes
(proveedores).
(Castro, 2011) Es una técnica cuantitativa creada para minimizar los costos asociados a
la distribución de un bien o servicio desde diferentes orígenes hasta diferentes destinos.
Las condiciones de linealidad están Presentes, como en cualquier técnica de
programación lineal.
13
Las características que hacen del Modelo Lineal de Transporte un modelo de
programación lineal especial son:
b) Las cantidades demandadas deben ser iguales a las cantidades ofrecidas para poder
solucionar el modelo.
VARIABLES DE DESICION
Xi,j= Unidades a enviar desde la fuente i-ésima (i=1,...,m) al destino j-ésimo (j=1,...,n)
Ci,j= Costo de enviar una unidad desde la fuente i-ésima (i=1,.,m) al destino j-ésimo
(j=1,.,n)
14
Función objetivo
Minimizar 𝑍 = 𝐶1,1𝑋1,1+. . +𝐶1, 𝑗𝑋1, 𝑗 +...+ C1,nX1,n +...+ Ci,1Xi,1 +...+ Ci,jXi,j
+...+ Ci,nXi,n +...+Cm,1Xm,1 +...+ Cm,jXm,j+...+ Cm,nXm,n
Restricciones en oferta
𝑋_11 + 𝑋_12 ≤ 𝑂_1
Restricciones en demanda
𝑋11 + 𝑋21 + 𝑋31 ≤ 𝐷1
Los problemas de transporte o distribución son uno de los más aplicados en la economía
actual, dejando como es de prever múltiples casos de éxito a escala global que estimulan
la aprehensión de los mismos. (Lopez, 2016).
Ejemplo:
El Problema
Una empresa energética colombiana dispone de cuatro plantas de generación para
satisfacer la demanda diaria eléctrica en cuatro ciudades, Cali, Bogotá, Medellín y
Barranquilla. Las plantas 1,2,3 y 4 pueden satisfacer 80, 30, 60 y 45 millones de KW al
día respectivamente. Las necesidades de las ciudades de Cali, Bogotá, Medellín y
Barranquilla son de 70, 40, 70 y 35 millones de Kw al día respectivamente.
Los costos asociados al envío de suministro energético por cada millón de KW entre cada
planta y cada ciudad son los registrados en la siguiente tabla.
15
Formule un modelo de programación lineal que permita satisfacer las necesidades de
todas las ciudades al tiempo que minimice los costos asociados al transporte.
i j
Xij
Planta 1 Cali
Planta 2 Bogotá
Planta 3 Medellín
Planta 4 Barranquilla
GRAFICA 1
16
Restricciones de oferta o disponibilidad, las cuales son de signo ≤:
𝒁𝑴𝑰𝑵 = 5𝑋11 + 2𝑋12 + 7𝑋13 + 3𝑋14 + 3𝑋21 + 6𝑋22 + 6𝑋23 + 1𝑋24 + 6𝑋31
+ 1𝑋32 + 2𝑋33 + 4𝑋34 + 4𝑋41 + 3𝑋42 + 6𝑋43 + 6𝑋44
17
Aquí están los resultados:
18
i Xij j
Planta 1 Cali
Planta 2 Bogotá
Planta 3 Medellín
Planta 4 Barranquilla
GRAFICA 2
Este problema presenta una solución óptima alternativa, aquí los resultados.
19
𝑋43 0 6 0
𝑋44 0 6 0
TOTAL 620
Tabla #3: Los análisis de dualidad y sensibilidad en los modelos de transporte resultan
ser bastante interesantes, pues pueden llegar a determinar aumentos de capacidad en las fuentes
si el precio sombra de las rutas en relación a ellas lo justifica
La empresa necesita los discos en tres cadenas de montajes si en las tres localizaciones
distintas. Dichas cadenas requieren de 1.500, 1.000, y 2.500discos respectivamente; los
precios en cientos de euros por cada disco entregado a cada cadena son los siguientes:
PROVEERDORES CADENAS
PROVEEDOR 1 CADENA 1
PROVEEDOR 2 CADENA 2
PROVEEDOR 3 CADENA 3
TABLA #4
20
Método de la esquina noroeste
(-Cun-, 2011) Este método asigna la cantidad máxima autorizada para la oferta y la demanda a
la variable X11 ubicada en la esquina noroeste de la tabla.
La columna o fila satisfecha se satura dejando ver las variables restantes en la columna o
fila saturadas son igual a cero. Si la columna y la fila se satisfacen simultáneamente, solo uno
de los dos debe ser saturada; garantizando localizar las variables básicas cero si existen.
Después de ajustar las cantidades de oferta y demanda para todas las filas y columnas no
saturadas, la cantidad máxima factible se asigna al primer elemento no saturado en la nueva
columna o fila; el método finaliza cuando las filas o la columna se saturan.
21
Método Vogel
(-Cun-, 2011) Este método suele producir una mejor solución inicial que los métodos de
noroeste, costo mínimo. Ya que provoca una solución inicial óptima, o inmediata al nivel
óptimo.
22
5. Muévase al sector con el costo mínimo de la tabla resultante no se debe tener en
cuenta la fila o columna saturada.
6. Retornar a los puntos 3,4,5 continuamente, hasta que todos los sectores queden
asignadas.
Método simplex
El método simplex se utiliza, sobre todo, para resolver problemas de
programación lineal en los que intervienen tres o más variables. El álgebra matricial y el
proceso de eliminación de Gauss-Jordan para resolver un sistema de ecuaciones lineales
constituyen la base del método simplex.
Mientras que los Programas Lineales que solo tienen restricciones de ( ≤)se
pueden resolver sólo usando variables de holgura con el método simplex, para aquellos
programas lineales que involucren restricciones de tipo (≥) e (=) es necesario usar
variables artificiales, las variables de holgura tienen un significado físico real que
corresponde a las disponibilidades o requerimientos no usados en las restricciones, pero
las variables artificiales no tienen ninguna representación física y sólo son usadas como
un comodín matemático para ayudar en la solución del problema.
Pues bien, cuando se tiene que usar variables artificiales al tener restricciones de
(≥) e (=) se debe usar una de las siguientes variantes del método simplex:
Método de la m grande
Método de dos fases
23
El método del simplex se basa en la siguiente propiedad: si la función objetivo, f,
no toma su valor máximo en el vértice A de la región factible, entonces hay una arista
que parte de A, a lo largo de la cual f aumenta; es decir, partiendo del valor de la función
objetivo en un vértice cualquiera, el método consiste en buscar sucesivamente otro vértice
que mejore al anterior.
La búsqueda se hace siempre a través de los lados del polígono (o de las aristas
del poliedro, si el número de variables es mayor) que conforman la región factible. Cómo
el número de vértices (y de aristas) es finito, siempre se podrá encontrar la solución.
Cabe destacar que, para aplicar el Método Simplex a un modelo lineal, este debe
estar en un formato especial conocido como formato estándar.
𝑧 = 𝑐1 𝑥1 + 𝐶2 𝑥2 + ⋯ + 𝑐𝑛 𝑥𝑛
Sujeto a:
….
….
𝐴𝑚1 𝑥1 + 𝐴𝑚2 𝑥2 + ⋯ + 𝐴𝑚𝑛 𝑥𝑛 = 𝐵𝑚
𝑥1 , 𝑥2 , … , 𝑥𝑛 ≥ 0
última el término independiente de cada restricción (𝑃0 ). Para tener una visión más clara
24
de la tabla, incluiremos una fila en la que pondremos cada uno de los nombres de las
columnas.
Sobre esta tabla que tenemos incluiremos dos nuevas filas: una que será la que
liderará la tabla donde aparecerán las constantes de los coeficientes de la función objetivo,
y otra que será la última fila, donde tomará valor la función objetivo. Nuestra tabla final
tendrá tantas filas como restricciones.
Tabla 1
Los valores de la fila Z se obtienen de remplazar los valores Cim de la función
objetivo y cero si no aparece en la base. El resto de las columnas se obtiene
remplazando los coeficientes de las restricciones según se muestra en la tabla. Se
observará al realizar el método Simplex, que, en esta primera tabla, en la base estarán
las variables de holgura.
25
cociente 𝑃0 /𝑃𝑗 sea el menor de los estrictamente positivos (teniendo en cuenta
que sólo se hará cuando 𝑃𝑗 sea mayor de 0). La intersección entre la columna
Este método se aplica a los problemas óptimos pero infactible. En este caso, las
restricciones se expresan en forma canónica (restricciones). La función objetivo puede
estar en la forma de maximización o de minimización. Después de agregar las variables
de holgura y de poner el problema en la tabla, si el elemento de la derecha es negativo y
si la condición de la optimización está satisfecha, el problema puede resolver por el
método Dual Simplex. Tenga en cuenta que un elemento negativo en el lado derecho
significa que el problema comienza óptimo pero infactible como se requiere en el método
dual simplex. En la iteración donde la solución básica llega a ser factible, esta será la
solución óptima del problema (Peralta, 2015).
26
Método Dual-Simplex empieza con una solución óptima o mejor que óptima, pero no
factible y se mueve hacia el óptimo mediante iteraciones que mejoran su factibilidad
conservando su optimalidad (Almenares, 2015).
El problema de programación lineal dual que se define a partir de un problema original
(primal), comparte con él los mismos coeficientes tanto de la función objetivo como de
las restricciones, pero en diferente posición como más adelante se especificará (ROMO,
2005).
DEFINICIÓN DEL PROBLEMA DUAL
Para poder elaborar el problema dual a partir del primal, este se debe presentar en su
forma canónica de la siguiente forma:
MAX Z= 𝑛
∑ 𝐶𝑗𝑋𝑗
𝑗−1
SA
∑𝑛𝑗−1 𝐴𝑖𝑗𝑋𝑗 ≤ B
Xj ≥0
MIN Z= 315A + 110B + 50C
SA
∑𝑛𝑗−1 = La sumatoria de 15A
los elementos.
+ 2B + C ≥ 200
≤ = Menor igual. 7,5A+ 3B + C ≥ 150
5A + 2B + C ≥ 120
≥ = Mayor igual. A,B,C ≥ 0
i= 1, 2, 3,…… …, m (número de restricciones).
j= 1, 2, 3,………, n (número de variables).
i= 1, 2,3,………, m (número de variables).
j= 1, 2,3,………, n (número de restricciones).
27
EJEMPLO SIMPLEX DUAL
Considere el siguiente modelo de Programación Lineal:
Paso 2: Se selecciona el lado derecho "más negativo" lo cual indicará cuál de las actuales
variables básicas deberá abandonar la base. En el ejemplo el lado derecho más negativo
se encuentra en la primera fila, por tanto S1 deja la base. Para determinar cual de las
actuales variables no básicas (A, B, C) entrará a la base se busca el mínimo de {-Yj/aij}
donde aij es el coeficiente de la respectiva variable no básica en la fija i (del lado derecho
más negativo, marcado en verde) y donde Yj es el costo reducido de la respectiva variable
no básica. De esta forma se obtiene: Min {-315/-15, -110/-2, -50/-1} = 21, donde el pivote
(marcado en rojo) se encuentra al hacer el primer coeficiente, por tanto A entra a la base.
28
Macro Método Simplex
Figura Macro 1
Bibliografía
Castro. (7 de febrero de 2011). Slideshare.net. Obtenido de
https://es.slideshare.net/castrov/programacin-lineal-de-transporte
-Cun-. (16 de Mayo de 2011). Blogspot.com. Obtenido de
http://metododetransporte2011.blogspot.com/2011/05/ejemplo-una-empresa-de-
componentes.html#comment-form
Lopez, B. S. (2016). Ingenieria Industrial:Online.com . Obtenido de
https://www.ingenieriaindustrialonline.com/herramientas-para-el-ingeniero-
industrial/investigaci%C3%B3n-de-operaciones/problema-del-transporte-o-
distribuci%C3%B3n/
29
30