FLOW-SHOP SIN PULMONES:

Documentos relacionados
Dirección de Operaciones

PROGRAMA DE ESTUDIO. Básico ( ) Profesional ( ) Especializado ( X ) Teórica ( ) Presencial ( X ) Teórica-práctica ( X) Híbrida ( )

GRAFICOS DE CONTROL DATOS TIPO VARIABLES

Estudio y aplicación del algoritmo Lomnicki Pendular al problema Fm block Fmax :: 1 Resumen

Problema de Localización de Plantas con Capacidades y Distancias Limitadas

MODELOS DE INVESTIGACION DE OPERACIONES

UNIVERSIDAD AUTÓNOMA DEL ESTADO DE HIDALGO

Metaheurísticas y heurísticas. Algoritmos y Estructuras de Datos III

CAPÍTULO 6 PROGRAMACIÓN DINÁMICA. Programación Dinámica

Tema 7: Problemas clásicos de Programación Lineal

PROGRAMA DETALLADO VIGENCIA TURNO UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA DE LA FUERZA ARMADA 2009 DIURNO INGENIERÍA DE SISTEMAS ASIGNATURA

Grafos Eulerianos y Hamiltonianos. Algoritmos y Estructuras de Datos III

INTRODUCCION AL DISEÑO EDUCATIVO Andrea Paola Leal Rivero. La Academia al servicio de la Vida

Algoritmos de búsqueda exhaustiva

Procedimientos para la secuencia de fabricación en una máquina con tiempos de preparación variables

IN34A - Optimización

EI MT1008 Programación II

Algoritmo de ramificación y acotación

Taller de grafs: rutes, mapes i xarxes socials

ALGORÍTMICA

Optimización del problema generalizado de las rutas con restricciones temporales y de capacidad (CVRPSTW)

Optimización combinatoria: Aplicaciones, modelos y métodos de solución Juan Carlos Rivera Agudelo

1. Defina el problema de particionamiento. Escriba un ejemplo de este tipo de problema, junto con su formulación general en AMPL.

LECCIÓN 7 "DISTRIBUCIÓN Y OPTIMIZACIÓN DE RECURSOS"

CONTENIDO SEMBLANZA DE LOS AUTORES DE LOS ESCRITORES DE CASOS..

INGENIERIA CIVIL EN MECANICA PROGRAMA DE PROSECUCION DE ESTUDIO VESPERTINO GUÍA DE LABORATORIO ASIGNATURA TÓPICOS III EXPERIENCIA C927

ELEFINFLUI - Elementos Finitos en Fluidos

Sistemas de ecuaciones lineales

Descripción del problema:

Optimización de Colonia de Hormigas para resolver el problema de Distribución en Planta

UNIVERSIDAD DE MANAGUA Al más alto nivel

Introducción a las RdP. Optimización basada en redes de Petri. Redes de Petri. Son objeto de estudio: RdP. Ejemplos:

ALGORÍTMICA

Parte de Algoritmos de la asignatura de Programación Master de Bioinformática. Búsqueda exhaustiva

Inteligencia Artificial

Problema de Localización de Plantas con Capacidades y Distancias Limitadas

Programación de la secuencia de fabricación en una máquina, con tiempos de preparación variables, mediante la aplicación de Algoritmos Genéticos.

Introducción a la Computación Evolutiva

PROBLEMAS RESUELTOS DE ASIGNACIÓN POR EL MÉTODO HUNGARO INVESTIGACIÓN DE OPERACIONES I

REGLADA REV. 0 Pág.: 1 / 5

Producto.- Se debe revisar si es un solo producto o sin son productos estandarizados, varios productos o un producto a pedido.

Complejidad computacional (Análisis de Algoritmos)

Aplicación de la heuristica de CDS en la secuenciación de n tareas en m máquinas: un caso de estudio

EJERCICIOS DE PROGRAMACIÓN LINEAL

donde,, es controlable si y solo si la matriz de controlabilidad tiene rango,

DOCUMENTO INTERNO DE TRABAJO

TABLAS PARA LA CALIFICACIÓN DE CARRERAS PROFESIONALES

C a l ses P P y y NP C a l se P C a l se N P N P [No N n o -De D te t rmin i i n s i ti t c i Polynomial-tim i e]

TALLER DIAGRAMAS DE FLUJO EN LEGO MINDSTORMS

PROBLEMAS MATEMATICOS EN TERCERO DE EDUCACION PRIMARIA. (2006/2007)

DIAGRAMA DE GANTT, DIAGRAMAS DE FLUJO Y DE PSEUDOCODIGO COMO HERRAMIENTAS PARA LA PROGRAMACION DEL JUEGO PEDAGOGICO PAULA DANIELA MORENO ESPINOSA

LINEAS DE ESPERA. En diferentes ocaciones de la vida, la mayoria de las personas que viven en la sociedad moderna han esperado

CAPÍTULO 4 TÉCNICA PERT

Desarrollo de Tecnología Informática para la optimización de la planificación y control del proceso de corte de materia prima.

Estudio de viabilidad económica de la implantación de tecnología CNC en un taller metalmecánico.

Matrices y Sistemas Lineales

Sistema de planos acotados

obtenido de la fusión de dos rutas y la posterior asignación a un vehículo con capacidad disponible.

Asumiremos que se dispone de procedimientos para leer y escribir caracteres. Se desarrollan algunas funciones primitivas que nos serán útiles.

Diseño y simulación de un algoritmo basado en lógica difusa para el despacho de ascensores en un edificio

PFC. José Luis Pichardo Muñoz 5. Heurística basada en Grafos

Matrices y Sistemas Lineales

240ST Técnicas de Optimización en la Cadena de Suministro

PROGRAMA INSTRUCCIONAL INVESTIGACIÒN DE OPERACIONES

250ST Rutas de Vehículos

250ST Rutas de Vehículos

Secuenciación en una máquina de la vida real con tiempos de preparación dependientes de la secuencia

puede no servir si hay arcos con costo negativo. Justifique.

UNIVERSIDAD MAYOR DE SAN SIMÓN FACULTAD DE CIENCIAS Y TECNOLOGÍA INGENIERÍA DE SISTEMAS BÚSQUEDA PRIMERO EL MEJOR

INDICE Prologo Capitulo 1. Algoritmos y programas Capitulo 2. La resolución de los problemas con computadoras y las herramientas de programación

Proyecto: El Problema de las 8 Torres

EJERCICIOS RESUELTOS DE DETERMINANTES

Programación de las órdenes de fabricación en una sola máquina con tiempos de preparación. * RESUMEN

Por: BONILLA Londoño Héctor Fabio.

Programación 1. Diseño modular de nuevos tipos de datos en un programa. Diseño modular de un tipo de dato con estructura de conjunto

El análisis de los problemas de localización es un área fértil de investigación

Simulación de eventos discretos.

PROGRAMA EDUCATIVO HOJA DE ASIGNATURA CON DESGLOSE DE UNIDADES TEMÁTICAS

A5 Introducción a la optimización en redes

PROGRAMA ANALÍTICO DE ASIGNATURA

Práctico N 5 Parte a: Programación lineal

Algoritmos. Fundamentos de Programación

Algoritmo del solterón aplicado a la optimización de rutas con flotas heterogéneas VRPHESTW

ESTRATEGIAS DE MODELADO, SIMULACIÓN Y OPTIMIZACIÓN DE PROCESOS QUÍMICOS

Introducción a la Programación Dinámica. El Problema de la Mochila

Examen escrito de Programación 1

Tema 1: Matrices. Sistemas de ecuaciones. Determinantes

Curso: Teoría de la Computación. Unidad 2, Sesión 7: Complejidad computacional

Programación lineal: Algoritmo del simplex

A 2 E 4 I. Las cámaras situadas en puntos capaces de vigilar 2, 3 y 4 zonas cuestan 5, 7 y 8 unidades monetarias,

LIBRO GUIA: INVESTIGACIÓN DE OPERACIONES Hamdy A. Taha. Editorial Pearson Prentice Hall, 2004

Fundamentos de Programación. Archivos (Ficheros)

ASIGNATURA: OPERACIONES BÁSICAS DE LA INGENIERÍA I

MQ1 - Métodos Cuantitativos 1

UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE ESTUDIOS SUPERIORES ACATLÁN DIVISIÓN DE MATEMÁTICAS E INGENIERÍA LICENCIATURA EN ACTUARÍA

Capítulo Siete PROGRAMACIÓN DE LA PRODUCCIÓN

Estudio de la problemática relativa al uso de las sentencias secuénciales, selectivas e iterativas, en el diseño de algoritmos

CONTENIDO Prefacio CAPITULO 1: Qué es la investigación de operaciones? CAPITULO 2: Introducción a la programación lineal...

Transcripción:

Documento Interno de Trabajo. Laboratorio de Organización Industrial. Departamento de Organización de Empresas Presentado: I Workshop de Ingeniería de Organización. Bilbao, 21-22 de Septiembre de 2000. FLOW-SHOP SIN PULMONES: Comparación de métodos de resolución. FLOW-SHOP SIN PULMONES: Comparación de métodos de resolución Bautista, J.; Companys, R.; Mateo, M.; de la Rosa, M. Departament d Organització d Empreses Universitat Politècnica de Catalunya Correo-e: bautista@ioc.upc.es, mateo@ioc.upc.es RESUMEN Los problemas de secuenciación de las tareas de un sistema de producción se conocen, comúnmente, como problemas de Taller mecánico. El caso de aquellos en que el recorrido de las piezas es igual para todas se conoce como flujo regular de las piezas o de tipo Flow-shop. Además, para adaptar el modelo a la aplicación real que se desea resolver, se puede incluir alguna característica como la limitación del espacio de almacenaje (pulmones) denominadas extensiones al problema clásico. En el presente trabajo se estudia el caso de Flow-shop sin pulmones intermáquina, realizando una comparación de los métodos de resolución desarrollados para este problema en concreto. Palabra clave: secuenciación, Flow-shop sin pulmones, programación de tareas. 1.- INTRODUCCIÓN Siguiendo con la exploración de las peculiaridades referentes a la producción en la industria química, se llevan desarrollando desde 1999 una serie de Proyectos Final de Carrera en los que se resolvía dicho problema. En concreto, dentro de la línea de trabajo relativa a la secuenciación y programación de tareas, se trata de explotar la variante referente a las colas de tamaño nulo. En el problema clásico de taller mecánico se considera la realización de n piezas, trabajos o lotes en m máquinas o etapas. Se denomina ruta de una pieza al orden en que éstas son procesadas a través de las máquinas, siendo conocido el tiempo

de cada operación. En este sentido se identifican dos clases básicas de problemas en función de las rutas: Problema Flow-shop sin pulmones o de flujo regular: en este caso, las piezas tienen esencialmente la misma ruta. Ninguna tiene dos operaciones en la misma máquina aunque alguna de las piezas puede no tener operaciones en alguna de las máquinas. Problema de Job-shop o de flujo general: se trata del caso en que cada pieza sigue una ruta diferente pudiéndose encontrar el caso de dos piezas que visiten un par de máquinas en sentido contrario. En el caso general existe la suposición implícita de que, en caso necesario, frente a cada máquina puede existir una cola de piezas de tamaño ilimitado. No obstante, como se ha comentado, en este trabajo se estudia la variante del problema de flow-shop en donde el tamaño de las colas se reduce al mínimo. Se trata del problema conocido como Flow-shop sin pulmones. En el presente trabajo se presentan una herramienta para el tratamiento de los problemas de Flow-shop sin pulmones que consiste en un programa de comparación de métodos de resolución para los problemas de Flow-shop. Se trata de una herramienta para poder estudiar la bondad de las soluciones comparadas con la solución óptima, obtenidas por otros métodos. 2.- FORMULACIÓN DEL PROBLEMA Los problemas de flow-shop que se desean estudiar quedan definidos mediante la nomenclatura n/m/fzb/b y n/m/pzb/b donde n y m representan el número de piezas y máquinas, respectivamente, y B indica el índice de eficacia. Fzb y Pzb son las consideraciones de pulmones nulos (zb= zero buffer) de los problemas F y P. A pesar de las diferencias existentes entre estas dos formulaciones, basadas en el mantenimiento para el caso P de la misma secuencia de producción en todas las máquinas, para el caso de Flow-shop sin pulmones éstas no se manifiestan siendo problemas equivalentes. 3.- MÉTODOS DE RESOLUCIÓN Dada la complejidad del problema que se desea resolver, se han desarrollado una serie de procedimientos de resolución. El consumo de tiempo y memoria asociado a la obtención de soluciones depende tanto del tamaño del problema como del tipo de algoritmo utilizado. Tal como se explica en Companys[1], no todos los métodos utilizados para la resolución del problema de Flow-shop "clásico" pueden ser utilizados en el caso

de tamaño de cola nulo. En concreto de los métodos heurísticos Greedy más utilizados, se pueden utilizar sin ninguna modificación los métodos de Palmer, Trapecios y Gupta; mientras que los métodos Teixidó_1 y Teixidó_2 se deben reformular. Como se ha comentado se han desarrollado Proyectos Final de Carrera en los que se reformulan algunos de los métodos utilizados en el problema de Flow-shop para el caso de estudio. En concreto se han programado los casos de Lomnicki Pendular, Teixidó_1, Búsqueda Tabú, Recocido simulado y algunas heurísticas de mejora por intercambio. 4.- HERRAMIENTA DE COMPARACIÓN. Como la mayoría de los métodos desarrollados resolvían las mismas 6 colecciones de 1.000 instancias cada una, era posible establecer una comparación entre los resultados. Además, conociendo los valores óptimos para los 6.000 problemas se podían establecer la bondad de dichos métodos. En este marco se elaboró una herramienta para la comparación de las soluciones obtenidas hasta el momento con la posibilidad de introducir otras soluciones externas. Dicho programa de comparación consta de tres posibles actuaciones (Fig.1): Fig. 1- Pantalla principal del programa de comparación Introducción de nuevas soluciones. Mediante un fichero de texto se pueden introducir las soluciones de un nuevo método para disponer de un fichero actualizado de métodos y resultados. Comparación de resultados. Dentro de la comparación de los resultados se da la posibilidad de obtenerlos según una de las 6 colecciones o estudiando la evolución de un método de resolución. En cualquiera de los casos es posible visualizar los resultados tanto en formato tabular (Fig.2) como en formato gráfico (Fig. 3).

Obtención de informes. Según las necesidades del usuario se pueden obtener informes según alguna de las comparaciones posibles o según la selección de la colección y el método. Dichos informes pueden ser exportados o impresos. Fig.2 - Tabla de resultados Fig.3 - Gráfico de resultados 5.- RESULTADOS A continuación se presentan los resultados después de la experiencia computacional realizada con 6 colecciones de 1.000 ejemplares cada una, para los 6 tipos de problemas que se encuentran en las columnas: 10 lotes en 3 etapas; 10 lotes en 5 etapas; 12 lotes en 4 etapas; 12 lotes en 5 etapas; 15 lotes en 3 etapas; 15 lotes en 4 etapas. En la tabla 1, las filas se encabezan por el número de lotes y etapas de cada conjunto de problemas. Seguidamente, además figuran la desviación estándar del valor de la solución dada por cada una de las heurísticas comparadas. Las heurísticas AED y ANED corresponden a algoritmos de Descenso Exhaustivo y Descenso No Exhaustivo, respectivamente. En alguna de las heurísticas desarrolladas no se han resuelto todas las colecciones de problemas. En dicho caso aparece el cuadro correspondiente de color gris. n 10 10 12 12 15 15 m 3 5 4 5 3 4 AED 10 [2] 17,08% 0,97% 1,16% 1,15% 1,10% 1,39% AED 11 [2] 16,98% 1,05% 1,38% 1,27% 1,31% 1,67% AED 12 [2] 17,27% 0,74% 0,92% 0,90% 0,81% 1,11% AED 5 [2] 14,38% 3,31% 5,28% 4,41% 8,97% 7,15% AED 6 [2] 14,99% 2,69% 4,31% 3,65% 7,90% 6,10% AED 7 [2] 14,86% 2,69% 4,52% 3,80% 8,04% 6,30% AED 8 [2] 15,10% 2,50% 4,11% 3,48% 7,68% 5,90% AED 9 [2] 16,33% 1,80% 2,45% 2,32% 2,66% 3,02% ANED 1 [2] 14,20% 3,57% 5,63% 4,70% 9,35% 7,44% ANED 2 [2] 16,02% 2,28% 2,82% 2,69% 3,04% 3,48% ANED 4 [2] 16,85% 1,26% 1,73% 1,74% 1,82% 2,69%

Gupta [3] 9,13% 11,10% 11,67% 12,64% 14,23% 14,20% Heur mejoradas [5] 17,36% 7,87% 0,83% 0,77% 0,96% 1,27% Lompen [5] 17,69% 7,82% 3,36% 5,85% Nabashima [3] 21,39% 8,00% 6,63% 7,98% 4,51% 6,72% Nehprim [3] 9,22% 22,47% 22,10% 22,33% 20,81% 22,89% Palmer [3] 20,47% 15,06% 20,22% 17,35% 24,81% 22,86% Recocido Simulado [6] 14,42% 4,81% 7,42% 7,30% 8,86% Tabú [4] 17,29% 0,48% 0,85% 0,82% 1,24% 1,29% Teixidó [3] 10,55% 8,75% 11,73% 10,69% 15,81% 14,45% Trapecios [3] 10,61% 7,41% 10,28% 9,01% 15,77% 12,95% Tabla 1. Valor medio de la desviación relativa del valor de la solución dada por la heurística respecto al de una óptima La tabla 2, de estructura similar a la tabla 1, se ha realizado a partir de los valores máximos en lugar de los valores medios. n 10 10 12 12 15 15 m 3 5 4 5 3 4 AED 10 [2] 51,44% 6,77% 5,33% 5,48% 4,76% 5,20% AED 11 [2] 51,44% 8,90% 6,73% 5,88% 8,16% 5,86% AED 12 [2] 51,44% 5,98% 5,33% 5,36% 3,52% 4,07% AED 5 [2] 47,60% 14,22% 15,12% 14,42% 22,97% 18,94% AED 6 [2] 48,56% 13,61% 15,12% 12,90% 22,07% 17,15% AED 7 [2] 47,60% 13,61% 15,12% 12,90% 22,07% 17,43% AED 8 [2] 48,56% 13,61% 13,66% 12,90% 21,30% 17,15% AED 9 [2] 50,96% 9,09% 10,73% 8,14% 10,36% 11,26% ANED 1 [2] 44,71% 15,64% 15,53% 14,22% 25,00% 20,08% ANED 2 [2] 46,63% 8,90% 9,84% 12,55% 10,80% 12,16% ANED 4 [2] 51,44% 8,18% 13,64% 10,28% 10,71% 12,16% Gupta [3] 28,68% 39,90% 37,20% 35% 32,99% 30,29% Heur mejoradas [5] 51,44% 41,46% 4,59% 5,48% 4,93% 5,15% Lompen [5] 51,44% 38,55% 37,20% 37,04% Nabashima [3] 57,69% 24,79% 18,91% 20,83% 15,35% 18,00% Nehprim [3] 45,70% 73,25% 42,58% 45,27% 41,10% 45,05% Palmer [3] 53,79% 52,47% 49,73% 48,74% 47,18% 42,42% Recocido Simulado [6] 48,08% 15,79% 20,00% 18,05% 21,96% Tabú [4] 50,00% 9,50% 10,00% 8,72% 8,37% 7,97% Teixidó [3] 31,97% 25,12% 36,19% 28,64% 37,39% 30,54% Trapecios [3] 30,56% 21,80% 24,62% 21,93% 37,84% 26,36% Tabla 2. Valor máximo de la desviación relativa del valor de la solución dada por la heurística respecto al de una óptima

La tabla 3, que contiene los mismos tipos de filas, indica el número de soluciones óptimas obtenidas por cada una de las heurísticas. n 10 10 12 12 15 15 m 3 5 4 5 3 4 AED 10 [2] 6 378 235 235 185 106 AED 11 [2] 8 355 189 206 137 74 AED 12 [2] 6 468 305 308 241 136 AED 5 [2] 8 93 15 18 4 1 AED 6 [2] 9 126 32 25 6 2 AED 7 [2] 7 126 25 25 6 1 AED 8 [2] 8 140 36 33 6 2 AED 9 [2] 4 198 65 73 38 18 ANED 1 [2] 9 77 16 12 3 1 ANED 2 [2] 7 150 56 52 41 17 ANED 4 [2] 5 327 189 141 130 47 Gupta [3] 14 1 1 0 1 0 Heur mejoradas [5] 7 27 339 356 212 126 Lompen [5] 9 21 509 179 Nabashima [3] 2 13 40 13 88 33 Nehprim [3] 19 2 0 0 0 0 Palmer [3] 0 1 0 0 0 0 Recocido Simulado [6] 7 36 4 5 3 Tabú [4] 6 652 398 415 174 142 Teixidó [3] 18 7 2 0 1 0 Trapecios [3] 8 7 4 1 0 0 Tabla 3. Número de óptimos Si se observa el comportamiento del valor medio de la desviación de las diferentes heurísticas frente a los diferentes problemas se pueden establecer cuatro grupos de comportamiento. En el gráfico 1, se presentan las cuatro tendencias tipo que siguen las heurísticas estudiadas.

La composición de los grupos de comportamiento queda reflejada en la tabla 4. Grupo 1 Grupo 2 Grupo 3 Grupo 4 ANED 2 [2] ANED 1 [2] Gupta [3] Palmer [3] ANED 4 [2] AED 5 [2] Teixidó [3] Nehprim [3] AED 9 [2] AED 6 [2] Trapecios [3] AED 10 [2] AED 7 [2] AED 11 [2] AED 8 [2] AED 12 [2] Nabashima [3] Heur mejoradas [5] Recocido Simulado [6] Tabú [4] Lompen [5] Tabla 4. Grupos de comportamiento Las características de los grupos se encuentran definidas en la Tabla 5. Grupo 1 Grupo 2 Grupo 3 Grupo 4 Errores medios - Valores elevados en 10/3 - Estabilización en franja de 1% ancho - Valores elevados en 10/3 - Cota mínima 10/5 - Después Tendencia alcista - Menores errores para mayor nº de máquinas - Tendencia ascendente - Comportamiento diferente con nº piezas constante - Tendencia ascendente - Cota mínima en 10/3 - Cota máxima en 15/4 Desviación y error máximo - Esquema similar a errores medios - Esquema similar a errores medios - Valor elevado en 10/3 - Estabilización a partir de 12/4 en franja 2% ancho - Cota máxima en 10/5 - Estabilización en franja de 1% ancho Nº óptimos y mejor solución - Valores 10/3 bajos - Punta de óptimos en 10/5 - Valores similares en 12 piezas - Disminución a partir de punta - Valores 10/3 bajos - Punta de óptimos en 10/5 - Valores similares en 12 piezas - Disminución a partir de punta - Puntas bajas (150 ópt) - Valores bajos - Cotas máximas en 10 piezas - Disminución hasta cero a partir de 12/4 - Valores bajos - Cotas máximas en 10 piezas - Disminución hasta cero a partir de 12/4 Tabla 5. Características de los grupos de comportamiento

6.- CONCLUSIONES Hemos analizado la variante del tradicional problema de secuenciación del tipo flow-shop, en la que no existen pulmones intermedios entre las máquinas. A partir del comportamiento del error medio de las diferentes heurísticas se han podido establecer diferentes grupos de comportamiento, así como las pautas generales que los caracterizan. Comparativamente se puede afirmar que los métodos de mejora por exploración de entornos en los que se genera el vecindario por reglas de intercambio (Algoritmos de Descenso Exhaustivo y No Exhaustivo), responden mejor en aquellos casos que el intercambio se produce entre piezas no consecutivas. 7.- REFERENCIAS [1] COMPANYS, R; MATEO, M; BAUTISTA, J. (1999) Flow-shop sin pulmones. III Jornadas de Ingeniería de Organización [2] BAULENAS, O. (1999) Resolució del problema de flow-shop sense pulmons intermàquina mitjançant heurístiques d intercanvi Proyecto Final de Carrera. [3] ALBERÓ, M; RODRÍGUEZ, B. (1999). Resolució del problema de flow-shop sense pulmons intermàquina mitjançant heurístiques greddy. Proyecto Final de Carrera. [4] BERNADÓ, D. (1999) Resolució del problema de flow-shop sense pulmons intermàquina mitjançant cerca tabú. Proyecto Final de Carrera. [5] URBANO, J. (1999) Resolución del problema de flow-shop sin pulmones intermáquina mediante Lomnicki Pendular. Proyecto Final de Carrera. [6] GRACIÁN, E.; OLIVER, J. (1999) Resolución del problema de flow-shop sin pulmones intermáquina mediante Recocido Simulado. Proyecto Final de Carrera.