Equipo 3 Practica 4.3

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 14

SIMULACIÓN

UNIDAD 4: Lenguajes de Simulación.

Práctica 4.3: Construcción de un


simulador en R

• Integrante del Equipo 3: No. De Control:


◦ Ávila Rodríguez Manuel 17070709
◦ Báez Santiago Jesús Emmanuel 18071638
◦ Echavarri Gómez Iván Osiris 18070520
◦ Granados Chia Fabricio 18070522
◦ Rojas Vallejo Juan David 19070066

• Carrera: Ingeniería en Sistemas Computacionales

• Grupo: 14:00 – 15:00 hrs

• Docente: Graciela Mora Otero


ÍNDICE DE CONTENIDOS

Introducción …..………………………..……………………………….……………………………… 2

MARCO TEÓRICO
Distribución Uniforme …………………………………………….………………………... 3
Distribución Exponencial ………………………………………………………………….. 3

Proyecto ………………………………………………………………………………………………….
4
Algoritmo en R …………………………………………………………………………………. 4
Experimentación ………………………………………………………………………………..
5
Toma de decisiones ………………………………………………….………………………...
6
Conclusión del proyecto ………………………………………………………………………
9

Conclusión general …………………………………………………………………………………...


10
Conclusiones individuales …………………………………………………………………………. 10

Bibliografía ……………………………………………………………………………………………..
12
Introducción
R es un sistema para análisis estadísticos y gráficos creado por Ross Ihaka y Robert
Gentleman. R tiene una naturaleza doble de programa y lenguaje de programación y es
considerado como un dialecto del lenguaje S creado por los Laboratorios AT&T Bell.está
disponible como el programa S-PLUS comercializado por Insightful2.

R se distribuye gratuitamente bajo los términos de la GNU General Public Licence4; su


desarrollo y distribución son llevados a cabo por varios estadísticos conocidos como el Grupo
Nuclear de Desarrollo de R.

R está disponible en varias formas: el código fuente escrito principalmente en C (y algunas ´


rutinas en Fortran), esencialmente para maquinas Unix y Linux, o como archivos binarios pre- ´
compilados para Windows, Linux (Debian, Mandrake, RedHat, SuSe), Macintosh y Alpha Unix.
Los archivos necesarios para instalar R, ya sea desde las fuentes o binarios pre-compilados, se
distribuyen desde el sitio de internet Comprehensive R Archive Network (CRAN)5 junto con las
instrucciones de instalación. Para las diferentes distribuciones de Linux (Debian,. . ), los
binarios están disponibles generalmente para las versiones m ´ as actualizadas de ´ estas ´ y
de R; visite el sitio CRAN si es necesario.

R posee muchas funciones para análisis estadísticos y gráficos; estos últimos pueden ser
visualizados de manera inmediata en su propia ventana y ser guardados en varios formatos
(jpg, png, bmp, ps, pdf, emf, pictex, xfig; los formatos disponibles dependen del sistema
operativo). Los resultados de análisis estadísticos se muestran en la pantalla, y algunos
resultados intermedios (como valores P-, coeficientes de regresión, residuales, . . .) se pueden
guardar, exportar a un ´ archivo, o ser utilizados en análisis posteriores.

R es un lenguaje Orientado a Objetos: bajo este complejo termino se esconde la simplicidad ´


y flexibilidad de R. El hecho que R es un lenguaje de programación puede desaminar a muchos
usuarios que piensan que no tienen “alma de programadores”. Esto no es necesariamente
cierto por dos razones. Primero R es un lenguaje interpretado (como Java) y no compilado
(como C, C++, Fortran, Pascal, ...), lo cual significa que los comandos escritos en el teclado son
ejecutados directamente sin necesidad de construir ejecutable.

Marco teórico
Distribución Uniforme
A partir de la función de densidad de las variables aleatorias uniformes a y b,

1
F ( x )= a≤x≤b
b−a

Se obtiene la función acumulada


x
1 x−a
F ( x )=∫ dx= a≤ x≤b
a b−a b−a
Al igualar la función acumulada F(x) con el número Pseudoaleatorio r i U ( 0,1 ), y despejar x se
obtiene:

x i=a+ ( b−a ) F ( x)i


x i=a+(b−a)r i

Distribución Exponencial.

A partir de la función de densidad de las variables aleatorias exponenciales con media 1/ λ,

f ( x )= λ e−λx para x ≥ 0

Se obtiene la función acumulada

x
F ( x )=∫ λ e−λx dx=1−e−λx para x ≥0
0
Si igualamos la función acumulada F(x) con el número pseudoaleatorio r i U ( 0,1 ), y
despejamos x se obtiene:

Proyecto
Un sistema recibe piezas de acuerdo con una distribución uniforme de entre 4 y 10 minutos.
Las piezas son colocadas en un almacén con capacidad infinita, donde esperan a ser
inspeccionadas por un operario. El tiempo de inspección tiene una distribución exponencial con
media de 5 minutos. Después de la inspección las piezas pasan a la fila de empaque, con
capacidad para 5 piezas. El proceso de empaque está a cargo de un operario que tarda 8
minutos con distribución exponencial en empacar cada pieza. Luego, las piezas salen del
sistema.
a) Simule el sistema por 40 horas.
b) Identifique dónde se encuentra el cuello de botella.
c) Genere vistas para cada uno de los procesos por separado.
d) Incrementar el espacio en el almacén cuesta $5/semana-unidad de espacio adicional;
aumentar 10% la velocidad de empaque cuesta $15/semana; el costo de incluir otro
operario para que se reduzca el tiempo de empaque a 5 minutos con distribución
exponencial, es de $20/semana.
Cada unidad producida deja una utilidad de $0.40. Con base en esta información, determine
qué mejoras podrían hacerse al sistema para incrementar su utilidad semanal.

Algoritmo en R
Experimentación
Teniendo el algoritmo escrito en el lenguaje R, procedimos a llevar a cabo la experimentación
en base al planteamiento del problema un total de 20 veces durante 40 horas cada una, y
obtuvimos los siguientes resultados haciendo uso de las series que generamos en la unidad 2:
g = 11 Xo = 9 k = 12 a = 5 + 8(12)
RESULTADO = 340
RESULTADO = 341

g = 11 Xo = 17 k=6 a = 5 + 8(6)
RESULTADO = 346
RESULTADO = 338

g = 10 Xo = 19 k=2 a = 5 + 8(2)
RESULTADO = 347
RESULTADO = 344

g = 10 Xo = 73 k = 14 a = 5 + 8(14)
RESULTADO = 342
RESULTADO = 346

g = 12 Xo = 29 k = 24 a = 3 + 8(24)
RESULTADO = 340
RESULTADO = 343

g = 11 Xo = 11 k=8 a = 5 + 8(11)
RESULTADO = 342
RESULTADO = 349
RESULTADO = 340

g = 10 Xo = 35 k=4 a = 3 + 8(4)
RESULTADO = 344
RESULTADO = 342

g = 12 Xo = 15 k=6 a = 5 + 8(6)
RESULTADO = 342
RESULTADO = 339
RESULTADO = 348

g = 11 Xo = 77 k = 10 a = 3 + 8(10)
RESULTADO = 345
RESULTADO = 340
Toma de decisiones
De modo que se puedan tomar decisiones para seleccionar la mejor alternativa para aumentar
las utilidades del almacén, modificamos algunos de los valores en el modelo de simulación y en
el algoritmo, siendo dichos valores, la media de las distribuciones que determinan el tiempo en
el que suceden los eventos en el sistema. Primeramente, mostraremos los resultados de la
segunda alternativa, ya que como lo dice el planteamiento, el almacén tiene capacidad infinita,
por lo que no tendría sentido incrementarlo.

La segunda alternativa nos pide aumentar la velocidad un 10% con un costo de $15, lo cual
generaría las siguientes utilidades simulando 20 veces:
CORRIDAS CON INCREMENTO DEL 10% EN EMPAQUE
g = 11 Xo = 9 k = 12 a = 5 + 8(12)
RESULTADO = 342
RESULTADO = 347

g = 11 Xo = 17 k=6 a = 5 + 8(6)
RESULTADO = 350
RESULTADO = 343

g = 10 Xo = 19 k=2 a = 5 + 8(2)
RESULTADO = 348
RESULTADO = 341

g = 10 Xo = 73 k = 14 a = 5 + 8(14)
RESULTADO = 340
RESULTADO = 338

g = 12 Xo = 29 k = 24 a = 3 + 8(24)
RESULTADO = 340
RESULTADO = 343

g = 11 Xo = 11 k=8 a = 5 + 8(11)
RESULTADO = 350
RESULTADO = 346
RESULTADO = 336

g = 10 Xo = 35 k=4 a = 3 + 8(4)
RESULTADO = 342
RESULTADO = 340

g = 12 Xo = 15 k=6 a = 5 + 8(6)
RESULTADO = 346
RESULTADO = 346
RESULTADO = 345

g = 11 Xo = 77 k = 10 a = 3 + 8(10)
RESULTADO = 342
RESULTADO = 337

Como podemos ver, el sistema produce más piezas; sin embargo, obteniendo la media de la
muestra obtenida, la cual corresponde a 343.1 en un total de 20 semanas de trabajo, podemos
estimar que tenemos una ganancia en promedio de $137.24 dólares por semana, menos el
costo del aumento en la velocidad de empaquetado, se obtiene una ganancia semanal de
$122.24.

En la tercera alternativa, nos plantea que el costo de agregar a otro operario para reducir el
tiempo de empaquetado a 5 minutos, es de $20.00 USD a la semana. Utilizamos las mismas
series en el simulador para encontrar resultados que nos permitan determinar si es
conveniente:
CORRIDAS CON UN OPERARIO EXTRA EN EMPAQUE
g = 11 Xo = 9 k = 12 a = 5 + 8(12)
RESULTADO = 349
RESULTADO = 343
g = 11 Xo = 17 k=6 a = 5 + 8(6)
RESULTADO = 347
RESULTADO = 348

g = 10 Xo = 19 k=2 a = 5 + 8(2)
RESULTADO = 340
RESULTADO = 345

g = 10 Xo = 73 k = 14 a = 5 + 8(14)
RESULTADO = 344
RESULTADO = 339

g = 12 Xo = 29 k = 24 a = 3 + 8(24)
RESULTADO = 345
RESULTADO = 347

g = 11 Xo = 11 k=8 a = 5 + 8(11)
RESULTADO = 344
RESULTADO = 343
RESULTADO = 343

g = 10 Xo = 35 k=4 a = 3 + 8(4)
RESULTADO = 341
RESULTADO = 338

g = 12 Xo = 15 k=6 a = 5 + 8(6)
RESULTADO = 335
RESULTADO = 337
RESULTADO = 345

g = 11 Xo = 77 k = 10 a = 3 + 8(10)
RESULTADO = 348
RESULTADO = 346

Como podemos ver, el sistema produce más piezas; sin embargo, obteniendo la media de la
muestra obtenida, la cual corresponde a 343.35 en un total de 20 semanas de trabajo,
podemos estimar que tenemos una ganancia en promedio de $137.34 dólares por semana,
menos el costo del aumento en la velocidad de empaquetado, se obtiene una ganancia
semanal de $117.34.

Conclusión del proyecto


Al analizar los resultados, nos podemos dar cuenta con facilidad de que la opción más
conveniente es el incrementar un 10% la velocidad del operario en el área de empaque para
generar más piezas, y, por ende, más utilidades. Esta alternativa representa la mejora que
debe llevarse a cabo en el almacén.

Conclusión general
La construcción de un simulador en el lenguaje R fue una tarea más compleja de lo que
esperábamos, ya que fue muy tardado encontrar funciones que se acoplaran a lo que
deseábamos diseñar como algoritmo y que funcionara para todos los casos que pudiesen
presentarse en el modelo. Sin embargo, sentimos un gran alivio al encontrar la librería
“Simmer”, la cuál contiene un conjunto de métodos y funciones que nos permitieron diseñar
nuestro proyecto en código, por lo que el diseño se convirtió en un proceso bastante simple y
no tan tardado, lo único que tuvo cierto grado de complejidad, fue el entender cómo
funcionaban todos los métodos proporcionados, pero al final logramos comprenderlos. Fue una
práctica interesante, y debemos decir que fue todo un reto, uno de los mayores con los que nos
hemos encontrado durante nuestra carrera.

Conclusiones individuales
Báez Santiago Jesús Emmanuel:
El lenguaje de programación R nos brinda un campo de trabajo con el cual uno se siente más
cómodo y más familiarizado, simular nuestro proyecto en este lenguaje nos permite obtener
resultados los cuales se compararon con los obtenidos en el lenguaje de simulación AGPSS,
así corroboramos que los que hemos obtenido sean los correctos y nos sirvan para la toma de
decisiones.

Ávila Rodríguez Manuel:


El lenguaje R fue de gran utilidad para realizar la simulación debido que contaba con
funciones estadísticas que nos facilitaron la implementación.

Echavarri Gómez Iván Osiris:


Usar R fue un gran reto para la construcción de un simulador, ya que no sabíamos ni por
dónde empezar o qué buscar. Afortunadamente, conocimos las funciones ya hechas de R, por
lo que todo se transformó en algo más sencillo de llevar a cabo.

Granados Chía Fabricio:


Implementar nuestro proyecto de simulación en un lenguaje de alto nivel como lo es el
lenguaje R fue sustancioso no solo para el proyecto si no para nosotros porque aprendimos
algo nuevo.

Rojas Vallejo Juan David:


Este proyecto representó probablemente el mayor reto que he tenido la fortuna de
experimentar, ya que requirió del uso de todos nuestros conocimientos de programación
orientada a objetos y estructurada para representar al modelo. Fue un proceso algo tardado en
comparación al uso de GPSS, pero fue más satisfactorio al ver que nosotros mismo lo
habíamos construido, por lo que debo decir que me siento muy orgulloso del trabajo del equipo
en general durante esta práctica.
Bibliografía
Paradis, E. (2003). R para Principiantes. Montpellier,france: RCUH/ University of Hawaii &
USGS/National Wildlife Health Center.

Cárdenas L., García E., García H. (2013). “Simulación y análisis de sistemas con ProModel”. 2da
Edición. Pearson Editorial. Recuperado de:https://cffgblog.files.wordpress.com/2017/03/libro-
simulacic3b3n-y-anc3a1lisis-de-sistemas-2da-edicic3b3n.pdf

Coss Bu, R. (1992). “Simulación un enfoque práctico”. En R. C. Bu, Simulación: un enfoque


práctico. México: LIMUSA. Recuperado de:
ftp://148.225.34.1/PUBLICO/04_INGENIERIA.CIVIL/lineas/pdf/Simulacion%20Un%20enfoque
%20Practico%20Autor%20Raul_COSS_Bu.pdf

También podría gustarte