SeqProMaq v4.0.1

Revisión del 09:42 29 abr 2011 de Leonardojcmanzanillo5 (discusión | contribuciones) (Página creada con '{{Ficha Software |nombre=Sistema para la optimización del tiempo de secuencias para la fabricación de piezas en procesos tecnológicos de maquinado convencional (SeqProMaq v4....')
(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Sistema para la optimización del tiempo de secuencias para la fabricación de piezas en procesos tecnológicos de maquinado convencional (SeqProMaq v4.0.1)
Información sobre la plantilla
260px
Herramienta computacional para la optimización del tiempo secuencias
CreadorMsC.José M. Márquez Delgado,Ing. Carlos R. Herrara Márquez
Lanzamiento inicialJunio 2009
Última versión estable4.0.1
Sistemas Operativos compatiblesWindows
IdiomaEspañol

SeqProMaq v4.0.1: Sistema para la optimización del tiempo de secuencias para la fabricación de piezas en procesos tecnológicos de maquinado convencional.

Descripción preliminar

Este sistema brinda una herramienta computacional para la optimización de dichas secuencias mediante el uso de una metaheurística conocida como Algoritmo Genético. Este se realizó para la EMPROMEC “Cmdte. Manuel Fajardo Rivero” del municipio de Manzanillo entidad cuyo perfil es la construcción de maquinarias y por ende la fabricación de una gran variedad de piezas y partes de estas. Esta empresa, al igual que todas las de su rama en el país, no contaba con una herramienta que permitiera obtener secuencias de fabricación de piezas por tecnología de maquinado que minimizaran el tiempo total de producción, también conocido como makespan; elemento muy importante a tener en cuenta cuando se habla de producción ya que una deficiente programación implica que la empresa incurra en costos adicionales lo que se traduce al final en pérdidas.

Herramientas utilizadas para el desarrollo de la aplicación

El proceso de análisis y diseño del sistema fue realizado a través del Rational Rose Enterprise Edition 2002. La implementación del software está auxiliada por la plataforma Borland C++ Builder 6.0, software propietario de Borland Corporation, herramienta especializada en el desarrollo rápido de aplicaciones.

¿Por qué se utilizó el lenguaje C++ para implementar la aplicación?

C++ tiene la reputación de ser un lenguaje muy poderoso, pero con el poder viene la responsabilidad, el programador debe de conocer una serie de conceptos y reglas de uso. En la actualidad, el C++ es un lenguaje versátil, potente y general. Su éxito entre los programadores profesionales le ha llevado a ocupar el primer puesto como herramienta de desarrollo de aplicaciones, además mantiene las ventajas del C en cuanto a riqueza de operadores y expresiones, flexibilidad, concisión y eficiencia.

Rational Rose Enterprise Edition 2002

En la definición de sistemas, esta herramienta permite que el equipo de desarrollo entienda mejor el problema, que identifique las necesidades del cliente en forma más efectiva y comunique la solución propuesta en forma más clara.

Requerimientos del Sistema

Los requisitos son una descripción de las necesidades o cualidades de un producto. La meta primaria de la fase de requerimientos es identificar y documentar lo que en realidad se necesita, en una forma que claramente se le comunique al cliente y a los miembros del equipo de desarrollo.

Requerimientos funcionales

Analizando las necesidades del usuario se crearon los siguientes requisitos funcionales.

  1. Crear un nuevo fichero de datos con la información necesaria para la optimización de las secuencias de producción para procesos tecnológicos de maquinado.
  2. Modificar los datos cargados de un fichero de datos.
  3. Obtener soluciones utilizando un algoritmo genético (optimizar).
  4. Configurar los parámetros del método de optimización utilizado (algoritmo genético).
  5. Visualizar los mejores resultados obtenidos en Diagramas de Gantt.
  6. Generar un informe con los resultados obtenidos del proceso de optimización.

Requerimientos no funcionales

En cuanto a su Apariencia e Interfaz:

  • Se requiere una interfaz gráfica sencilla y amigable, que facilite la manera en que los usuarios entran y procesan los datos. La interfaz debe brindar la mayor cantidad de información al usuario.

En cuanto a Usabilidad:

  • El sistema debe estar diseñado para ser utilizado por los usuarios avanzados como no avanzados. Debe ser un sistema fácil de usar e intuitivo que le de el control de la aplicación al usuario.

En cuanto a Rendimiento:

  • El procesamiento de los datos se realiza de forma rápida, por lo que la respuesta final se obtiene en un tiempo corto. Los algoritmos matemáticos utilizados tienen un alto grado de eficiencia.

En cuanto a Confiabilidad:

  • Se debe implementar mecanismos de protección contra fallos así como de recuperación con el objetivo de que si existen fallos en el sistema no se pierda la información. Además los resultados brindados por el sistema como resultado de los datos iniciales deben tener el máximo de calidad y un 100% de confiabilidad. Teniendo en cuenta que este resultado formará parte de un proceso productivo y que un error costaría serias perdidas en cuanto a costo y tiempo de trabajo.

En cuanto a Requerimientos de Hardware:

  • Para que el sistema trabaje de forma óptima se necesita una computadora con una memoria RAM de 256 MB y un microprocesador de 1.7 GHz o de velocidad como mínimo.

En cuanto a Requerimientos del Software:

  • Es necesario para el correcto funcionamiento del software que se tenga instalado Windows 2000, alguna versión de XP o superior.

En cuanto a Requisitos Legales:

  • El empleo de este producto no deberá violar ninguna ley o licencia asociada a este.

Análisis de los tiempos de ejecución

Para demostrar las mejoras que se obtienen con el empleo del algoritmo genético en cuanto al costo computacional, se creó esta aplicación que utiliza una enumeración completa para resolver el job-shop scheduling. Las pruebas se hicieron en una PC Pentium 4 - DUAL Core a 3.00 GHz de velocidad y 512 de RAM. El algoritmo genético se corrió por 500 generaciones con un tamaño de población de 100 individuos. los tiempos de ejecución que se obtienen con el algoritmo genético son inferiores en casi todos los casos a los que se obtienen mediante el empleo del enfoque enumerativo. Este análisis evidenció lo intratable que se vuelve el jobshop scheduling al usar un enfoque enumerativo, pues los tiempos de ejecución crecen rápidamente a medida que se incluyen más piezas, al punto de hacerse prácticamente incalculable para instancias del problema mayor a 13 piezas, con lo que demuestra la potencia y la efectividad del algoritmo genético frente a problemas de optimización combinatoria.

Logros obtenidos con este sistema

  1. Se obtuvo un algoritmo para el cálculo del tiempo total de fabricación de una secuencia de tareas (makespan) para la fabricación de piezas mediante tecnología de maquinado convencional.
  2. La representación del problema mediante un grafo disyuntivo, resultó ser válida.
  3. Se comprobó que la utilización de un Algoritmo Genético como método de optimización aplicado al problema de la secuenciación de tareas (Job Shop Scheduling Problem) resuelve éste en un tiempo de cómputo razonable ofreciendo buenas soluciones.
  4. Se logró representar gráficamente la solución del problema mediante un diagrama de Gantt, con lo que se ilustra más detalladamente el desarrollo del proceso de fabricación.
  5. La obtención de una secuencia de producción óptima influye significativamente en la reducción del tiempo total de ejecución (makespan), con lo que se logra minimizar los tiempos de interrupción del proceso, lo que significa un uso más racional de las máquinas - herramientas y con ello un aumento de su vida útil.

Véase también

Fuentes

  • Ing. José M. Márquez Delgado, MsC.
  • Ing. Carlos R. Márquez Delgado.