La Computadora, Herramienta Indispensable en Diversas Áreas del ...

418

Transcript of La Computadora, Herramienta Indispensable en Diversas Áreas del ...

Page 1: La Computadora, Herramienta Indispensable en Diversas Áreas del ...
Page 2: La Computadora, Herramienta Indispensable en Diversas Áreas del ...
Page 3: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

La computadora, herramienta indispensable

en diversas áreas de conocimiento

Page 4: La Computadora, Herramienta Indispensable en Diversas Áreas del ...
Page 5: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

La computadora, herramienta

indispensable en diversas áreas

de conocimiento

Marco Antonio Cruz Chávez

Jesús del Carmen Peralta Abarca

Martín Gerardo Martínez Rangel

Martín Heriberto Cruz Rosales

(coordinadores)

México, 2014

Page 6: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

Esta obra fue desarrollada y compilada por los miembros de la Academia General

de Cómputo (AgeComp) 2011-2014 y el apoyo de la Facultad de Ciencias

Químicas e Ingeniería, Facultad de Contaduría, Administración e Informática,

Facultad de Ciencias y el Centro de Investigaciones en Ingeniería y Ciencias

Aplicadas.

La computadora, herramienta indispensable en diversas áreas de conocimiento

Marco Antonio Cruz Chávez, Jesús del Carmen Peralta Abarca, Martín Gerardo

Martínez Rangel, Martín Heriberto Cruz Rosales (coordinadores)

Primera edición, 2014

D.R. © 2014 Marco Antonio Cruz Chávez

Imagen de portada: Gibran Corona, Venas, acrílico y collage sobre papel, 40 x 60

cm, 2009

ISBN: 978-607-00-7036-5

Los artículos incluidos en este libro fueron sometidos a arbitraje ciego. El

contenido de los artículos y las ideas expresadas en ellos son responsabilidad de

los autores.

Impreso en Mexico

La computadora, herramienta indispensable en diversas áreas de

conocimiento / Marco Antonio Cruz Chávez, Jesús del Carmen Peralta Abarca, Martín Gerardo Martínez Rangel, Martín Heriberto Cruz Rosales (coordinadores). - - México : Marco Antonio Cruz Chávez, 2014.

568 p. : il. ISBN 978-607-00-7036-5 1. Procesamiento electrónico de datos 2. Programas para computadora – Desarrollo 3. Algoritmos

LCC QA76 DC 004

Page 7: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

Contenido Capítulo I. Optimización<<<<<<<<<<<<<<.<<

Calendarización de Redes de Distribución de

agua<<<<<<<<<<<<<<<<<<<<<<<<<

A Heuristic Approach for Improvement Batch Plant Design

under Imprecise Demand Using Fuzzy

Logics<<<<<<<<<<<<<<<<<<<.<<<<<.

Propuesta de una Metodología Generalizada para el Diseño de

Micro Algoritmos Bioinspirados<<<<<<<<<..<<.

Estudio de Tres Algoritmos Heurísticos para Resolver un

Problema de Distribución con Ventanas de Tiempo: Sistema

por Colonia de Hormigas, Búsqueda Tabú y Heurístico

Constructivo de una Ruta<<<<<<<<<<<<<<<...

Aplicación de la Optimización por Enjambre de Partículas a un

Problema Inverso de Conducción de Calor<<<<<.<

Algoritmo de recocido simulado secuencial y paralelizado con

memoria distribuida para el problema de máquinas paralelas

no relacionadas ponderadas<<<<<<<<.<.<

Capítulo II. Aplicaciones<<<<<<<<<<<<<<<.<

Diseño de un Sistema de Gestión de la Información para

Tutorías<<<<<<<<<<<<<<<<<<<<.............

Actualización de Bases de Datos DBF a

MySQL<<<<<<<<<<<<<<<<<<<.<<<<..

Proposición de un Modelo para la Acentuación Automática de

Palabras Ambiguas del Español, utilizando Etiquetado de

Texto <<<<<<<<<<<<<<<<<<<.<<<<<

Ladrillo rojo: aplicación de redes de Petri a un proceso

milenario <<<<<<<<<<<<<<<<<<<<..<...

Perspectivas de automatización del proceso de fabricación de

ladrillo rojo en la región de Cholula, Puebla <<<<<<<..

Cloud computing <<<<<<<<<<<<<<<<<<<

Aproximación de un Diagnóstico Neurológico Mediante un

Sistema Multiagente Inteligente <<<<<<<<<<.........

Elección de Software Libre en el Desarrollo de Sistemas Web

5

7

23

43

57

73

85

101

103

117

127

139

151

161

175

187

199

Page 8: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

Gestión del Aprendizaje de las Nuevas Tecnologías en Adultos

de la Tercera Edad, en Tijuana, Baja California, México, por la

UABC. Resultados obtenidos en el primer Curso de

Computación Básico. <<

Modelo Matemático Multiobjetivo para la Selección de una

Cartera de Inversión en la Bolsa Mexicana de Valores.

<<<<<<<<<<<<<<<<<<<<.............................

Sistema Estatal de Información y Documentación Científica y

Tecnológica (Siedcyt): el primer paso para la propuesta de

creación de un Parque Tecnológico Virtual, en el estado de

Baja California <<<<<<<<<<<<<<.<<<<........

Advanced Tools for the estimation of basic Knowledge Level

on Education and Training ..........................................................

Relajación del Problema de Calendarización de Trabajos en un

Taller de Manufactura Utilizando un Grafo Bipartita

<<<<<<<<<<<<<<<<<<<<<<<<<<.<

Capítulo III. Electrónica y Métodos Computacionales

<<<<<<<<<<<<<<<<<<<<<<<<<<..<

Diseño e Implementación de un Sistema Digital que Obtenga

la Máxima Potencia Generada por un Haz

L{ser<<<<<<<<<<<<<<<<<<<<<<<<..<

Evolución de las Bases de Datos: de Fijas a Móviles <<<..<.

Grid Computing <<<<<<<<<<<<<<<<<...<<

Herramienta Computacional para Determinar la Confiabilidad

de los Activos Reparables de Distribución de CFE

<<<<<<<<<<<<<...........................................................

Modelo Eléctrico del Cátodo de una Descarga de Alta Presión

de Sodio <<<<<<<<<<<<<<<<<<<<<.<...

Control difuso de un Sistema no Lineal <<<<.<.................

Automatización de bombas de calor por medio del control de

bombas en un puerto LPT con adquisición de datos en un

Puerto GPIB <<<<<<<<<<<.<<<<<<<<<<.

Numerical Simulation of the Field Confinement in a

Quasiperiodic Multilayered Microsphere as an Application of

the Software Engineering <<<<.<<<<<<<<<<<

The use of Parallel Axtensions Libraries for Scientific and

Engineering Calculations. ..............................................................

Capítulo IV. Inteligencia Artificial y Visión <<<<<<<<.

Complejidad de los datos en las redes neuronales artificiales:

situación actual <<<<<<<<<<<<<<<<<<<.....

207

217

233

241

253

265

267

277

291

301

311

323

337

349

361

371 373

Page 9: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

Automatización del Proceso de Ensamble utilizando Visión

Artificial <<<<<<<<<<<<<<<<<<<<<...<..

Quality Measurement of Existing Color Metrics using

Hexagonal Color Fields <<…………………………………...

381

395

Page 10: La Computadora, Herramienta Indispensable en Diversas Áreas del ...
Page 11: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

Prefacio

El contenido de los temas que abarca el presente libro, es un esfuerzo por dar a

conocer los trabajos de investigación en el área de ciencias e ingeniería con un

enfoque al uso de herramientas computacionales. Este esfuerzo colegiado se da

entre la Academia General de Cómputo (AGECOMP) y el Cuerpo Académico de

Optimización y Software, con el apoyo del centro de Investigación en Ingeniería

y Ciencias Aplicadas (CIICAp), de la Facultad de Ciencias, de la Facultad de

Contaduría, administración e Informática y también de la Facultad de Ciencias

Químicas e Ingeniería.

El eje principal que agrupa a los trabajos presentados, es el uso de la computadora

como herramienta aplicada en diferentes áreas del conocimiento, la cual hoy en

día es un instrumento esencial para tratar problemas, que por su naturaleza

compleja, requiere de innumerables cálculos y/o de un manejo de gran cantidad

de datos, que sin la computadora, sería muy difícil o prácticamente imposible el

poder tratar estos problemas de manera eficiente. Este medio es un espacio dado a

los investigadores, estudiantes de postgrado y empresas privadas, para que

puedan dar a conocer sus conocimientos de punta a la comunidad académica e

industrial.

La presentación de los trabajos en el área de investigación y tecnología en este

libro, se divide en cuatro capítulos. El primer capítulo presenta temas del área de

optimización, en diversas áreas como calendarización de recursos, la demanda de

recursos en plantas industriales, transporte, térmica. El segundo capítulo presenta

un contenido con aplicaciones a una diversidad de problemas como salud,

educación, producción y tecnología. El tercer capítulo trata de electrónica y

métodos computacionales. Finalmente, el cuarto capítulo presenta temas que

tratan de inteligencia artificial.

Los trabajos aceptados para su publicación en el presente libro, fueron a través de

un comité de expertos formado por investigadores activos de los diversos centros

de investigación del Estado de Morelos, y por supuesto de la UAEM. Cada

trabajo fue evaluado en calidad y aportación a la frontera del conocimiento por un

mínimo de dos y un máximo de tres investigadores expertos en el tema y que

Page 12: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

cultivan las mismas líneas de conocimiento, con lo cual se garantiza la calidad de

los trabajos.

Los autores participantes en el presente libro, son de de distintas universidades e

Institutos del país, con ubicación en la Ciudad de México, Estado de México,

Puebla, Morelos, Sinaloa, Tlaxcala, Hidalgo, Baja California, Oaxaca, Coahuila,

Venezuela y España.

Un agradecimiento muy grande a toda la gente que participo en el desarrollo del

presente libro, comenzando por los autores de los temas, quienes con su

investigación de calidad dan realce a esta obra impresa. Agradecemos al comité

de evaluadores por su valiosa aportación para la revisión y aceptación de trabajos

de calidad.

Agradecemos el apoyo recibido de las autoridades de la Secretaria Académica y

de la Dirección de Educación Superior de la Universidad Autónoma del Estado

de Morelos, para el buen término de esta gran obra.

Dr. Marco Antonio Cruz Chávez

Page 13: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

Lista de Autores

Abraham Briseño Cerón, Vanessa Guadalupe Félix Aviña, Rogelio Alfonso Noris

Covarrubias. Universidad Politécnica de Sinaloa. México.

P. Toribio, B. G. Rodriguez. Centro Universitario UAEM Atlacomulco,

Universidad Autónoma del Estado de México, México.

R. Alejo. Dept Llenguatges I Sistemes Informátics, Universitat Jaume I,. España.

Juan C. Herrera-Lozada, Hiram Calvo. Centro de Investigación en Computación,

CIC-IPN, U. P. México.

Hind Taud, Edgar A. Portilla-Flores. Centro de Innovación y Desarrollo

Tecnológico en Cómputo, CIDETEC IPN. México.

Irma Delia Rojas-Cuevas. Departamento de Sistemas y Computación. Instituto

Tecnológico de Puebla. México.

José Rafael Mendoza-Vázquez. Departamento de Ingeniería Eléctrica y

Electrónica. Instituto Tecnológico de Puebla. México.

Sergio Javier Torres-Méndez. Departamento de Postgrado e Investigación.

Instituto Tecnológico de Puebla. México.

Obed Cortés-Aburto, Rafael Rojas-Rodríguez, Carlos Marín-Dávila. Mecatrónica,

Universidad Politécnica de Puebla, México.

Carlos Eduardo Mariano Romero. Instituto Mexicano de Tecnología del Agua

(IMTA), Cuernavaca, México.

Page 14: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

Raymundo Montiel, Blanca E. Pedroza, María Guadalupe Medina, Carlos Pérez.

Instituto Tecnológico de Apizaco División de Estudios de Posgrado e

Investigación. México.

Mario Peña Cabrera, H. Gómez N. R. Osorio C. Instituto de Investigaciones en

Matemáticas Aplicdas y en Sistemas de la Universidad Nacional Autónoma de

México-IIMAS-UNAM. México.

Ismael López-Juárez. CINVESTAV, Saltillo, Coahuila, México.

J. Cerezo-Román, Oleg Sergiyenko. Instituto de Ingeniería, Universidad

Autónoma de Baja California, México.

Jesús Enrique Vázquez Reyna. Instituto de la Educación Básica del Estado de

Morelos. México.

Juan Fernando García Mejía, Flor del Río González Romero, Arturo Garduño

Aparicio. Departamento de Instrumentación Virtual, Centro Universitario

UAEMEX Atlacomulco. México.

Martha Idalid Rivera González, Gelier Jonathan Reyes Vite.

Ciencias Computacionales, Universidad Autónoma del Estado de Hidalgo,

Instituto de Ciencias Básicas e Ingeniería, Área Académica de Computación.

México.

E. Antúnez-Cerón. Instituto Nacional de Astrofísica, Óptica y Electrónica. Puebla,

México.

Rodolfo Ostos Robles, Ismaylia Saucedo Ugalde, Víctor Javier Sánchez Sánchez .

Universidad Politécnica de Sinaloa. México.

Paola Delgado Fernández. Universidad Autónoma de Baja California, Ensenada,

Baja California, México.

Luis Antonio Gama Moreno. Instituto Tecnológico de Zacatepec, Zacatepec,

Morelos, México.

Hilda Beatriz Ramírez Moreno, Esperanza Manrique Rojas, Maricela Sevilla Caro,

Margarita Ramírez Ramírez. Facultad de Contaduría y Administración,

Universidad Autónoma de Baja California, Campus Tijuana. México.

Page 15: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

Vanessa Hamar. Centre de Physique des Particules de Marseille. Francia. Centro

Nacional de Cálculo Científico, Universidad de Los Andes, Corporación Parque

Tecnológico de Mérida, Mérida, Venezuela.

Teresa Natalia Figueroa Ríos, Leopoldo Altamirano Robles.Instituto Nacional de

Astrofísica, Óptica y Electrónica. Puebla. México.

Benjamín Sierra Rodríguez. Gerencia de Normalización, Comisión Federal de

Electricidad, México, D.F.

Manuel González de la Rosa. Unidad Académica Profesional UAEM

Tianguistenco, Universidad Autónoma del Estado de México. México.

Norma Martínez Urbano, Venancio García González, Roberto Alejo Eleuterio.

Centro Universitario UAEM Atlacomulco, Universidad Autónoma del Estado de

México. México.

José Luis Tapia Fabela, Yulia Nikolaevna Ledeneva, René Arnulfo García

Hernández. Departmento de Ingeniería de Software, Unidad Académica

Profesional de Tianguistenco, Universidad Autónoma del Estado de México.

México.

Jorge Ruiz Vanoye. Universidad Juárez Autónoma de Tabasco. Tabasco. México.

Luis Eduardo Espinosa Maya, Godolfredo Sánchez Medina, Horacio George

Haro, René L. Pacheco L., Gerardo Villegas R., Gerardo Mino A., Oscar Morales

P., Honorato Azucena C., Grupo de Mecatrónica, Facultad de Ciencias de la

Electrónica, Benemérita Universidad Autónoma de Puebla. México.

Jorge Barahona Ávalos. Instituto de Electrónica y Computación, Universidad

Tecnológica de la Mixteca, Huajuapan de León, Oaxaca. México.

Nora del Carmen Osuna Millán, Margarita Ramírez Ramírez, Esperanza

Manrique Rojas, María del Consuelo Salgado Soto. Universidad Autónoma de

Page 16: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

Baja California-Campus Tijuana. México.

José Alberto Hernández-Aguilar, Martín H. Cruz-Rosales, Messouma

Atakishiyeva. Facultad de Ciencias, Universidad Autónoma del Estado de

Morelos. México.

Marco Antonio Cruz-Chávez, Alina Martínez-Oropeza, Fredy Juárez-Pérez, Erika

Yesenia Ávila Melgar, Sotsil Silva-Sotelo, M. Tecpoyotl-Torres, P. Vargas-Chable,

J. A. Damián-Morales J. Escobedo-Alatorre, A. Zamudio-Lara, Gennadiy Burlak,

V. Grimalsky, Y. El-Hamzaoui, J.A. Hernandez, R. J. Romero, P. A. Márquez-

Aguilar, A. Díaz-de-Anda y S. Koshevaya Atakishiyeva. Centro de

Investigaciones en Ingeniería y Ciencias Aplicadas (CIICAp), Posgrado en

Ingeniería y Ciencias Aplicadas, Universidad Autónoma del Estado de Morelos.

México.

José Crispín Zavala-Díaz. Facultad de Contaduría, Administración e Informática.

Universidad Autónoma del Estado de Morelos. México.

Jorge Barahona Ávalos. Instituto de Electrónica y Computación, Universidad

Tecnológica de la Mixteca, Huajuapan de León, Oaxaca. México.

Luis Eduardo Espinosa Maya, Godolfredo Sánchez Medina, Horacio George

Haro, René L. Pacheco L., Gerardo Villegas R., Gerardo Mino A., Oscar Morales

P., Honorato Azucena C. Grupo de Mecatrónica, Facultad de Ciencias de la

Electrónica, Benemérita Universidad Autónoma de Puebla, México.

René Santaolaya Salgado, Moisés González García. Departamento de Ciencias

Computacionales, Centro Nacional de Investigación y Desarrollo Tecnológico

CENIDET. México.

Yuriy Kotsarenko, Fernando Ramos. Instituto Tecnológico de Estudios

Superiores de Monterrey. México.

A.Bassam. Centro de Investigación en Energía, Universidad Nacional Autónoma

de México. México.

Alberto Ochoa. Instituto de Ingeniería y Tecnología, Universidad Autónoma de

Ciudad Juárez. México.

Page 17: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

R. Vargas-Bernal. Instituto Tecnológico Superior de Irapuato, Electronics

Department. México.

M. Torres-Cisneros. Faculty of Mechanical, Electrical and Electronic Engineering,

FIMEE, University of Guanajuato, Mexico.

Page 18: La Computadora, Herramienta Indispensable en Diversas Áreas del ...
Page 19: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

5

Capítulo I

Optimización

Page 20: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

6

Page 21: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

7

Calendarización de Redes de Distribución de

Agua Marco Antonio Cruz-Chávez, José Crispín Zavala-Díaz, Fredy Juárez-Pérez, Erika

Yesenia Ávila Melgar, Carlos Eduardo Mariano Romero

Resumen. En este artículo se describe una metodología para la calendarización

de redes de distribución de agua y se hace la conversión de un algoritmo genético

secuencial a un algoritmo genético paralelo aplicado a problemas de

calendarización de este tipo. El problema clásico de diseño de redes de

distribución de agua y su evolución en las últimas décadas se estudian de manera

comparativa. Se muestran dos esquemas de paralelización del algoritmo:

paralelización simple y paralelización funcional, señalando las ventajas y

desventajas de cada esquema. La aplicación de este algoritmo paralelo reduce el

tiempo necesario para obtener soluciones aproximadas para problemas NP-

Completos, como lo es el problema de las redes de distribución de agua.

Palabras clave: paralelización de un algoritmo, paralelización simple,

paralelización funcional, algoritmo genético, redes de distribución de agua.

Sumario:

1 Introducción 2 Descripción del problema 3 Estado del arte del problema de

diseño de las redes de distribución de agua 4 Metodología para la

paralelización simple de un algoritmo genético 5 Metodología para la

paralelización funcional de un algoritmo genético 6 Conclusiones Referencias

1 Introducción

Los algoritmos genéticos son algoritmos computacionales basados en la

evolución natural de los seres vivos. A pesar de que no garantizan que la

solución óptima de un problema se encuentre, se han aplicado con éxito en

diferentes áreas de investigación para la solución de una gran variedad de

problemas. Estudios experimentales diversos muestran la eficiencia de los

algoritmos genéticos para encontrar soluciones aproximadas en tiempos de

cómputo razonables. Gracias a sus características, son relativamente fáciles de

llevarlos a ambientes paralelos. La programación paralela es un mecanismo que

reduce el tiempo de cómputo de los algoritmos. La paralelización de un

algoritmo se realiza principalmente para resolver problemas complejos1 en los

Page 22: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

8

que los recursos de una sola máquina no son suficientes, o bien, si se pudiera

resolver, la máquina tardaría años en encontrar una solución. La finalidad de

paralelizar un algoritmo es disminuir el tiempo de procesamiento mediante la

distribución de tareas entre los procesadores disponibles. La paralelización se

basa en el concepto de cooperación entre los procesadores, lo que mejora la

calidad de las soluciones de un problema. Actualmente, la paralelización de

algoritmos es un recurso que se usa cuando se quiere resolver problemas de

optimización en los que el espacio de soluciones es muy grande, por ejemplo,

problemas de tipo NP-Completo, como el de las redes de distribución de agua.

El problema de las redes de distribución de agua es de gran interés para los

investigadores, por su aplicación práctica; durante más de tres décadas ha sido

estudiado ampliamente. Una cantidad considerable de formulaciones y métodos

de solución ha sido propuesta; sin embargo, sólo se ha logrado resolver instancias

prácticas pequeñas, pues, de acuerdo con la teoría de la complejidad, el problema

se clasifica dentro de los NP-Duros2 y puede abordarse desde diferentes

perspectivas: diseño, operación, rehabilitación y mantenimiento. Actualmente, la

mayoría de los investigadores ha realizado estudios enfocados en la solución del

diseño.

El problema de diseño consiste en elegir los componentes básicos que forman la

red. Los componentes más comunes son: tuberías, bombas, válvulas y reservorios

o fuentes de abastecimiento. Las tuberías comerciales, disponibles en diferentes

diámetros y materiales, llevan el agua desde las fuentes hasta los usuarios de la

red. Las válvulas regulan la presión de una red de agua. Las bombas son

indispensables cuando la técnica de distribución es el bombeo. Finalmente, las

fuentes de abastecimiento son imprescindibles: ríos, arroyos, manantiales, pozos

y otros recursos acuíferos. La fase de diseño de una red de distribución de agua

es fundamental porque de éste depende, en gran parte, su buen funcionamiento.

Se debe elegir una topología adecuada que represente la ubicación física en la que

se localizarán los componentes de la red —los usuarios, las fuentes de

abastecimiento y los demás elementos que la integran. También deben

considerarse otros factores, como las condiciones topográficas, las características

de los componentes y el número de usuarios. Las redes de distribución de agua

pueden representarse de forma gráfica utilizando la teoría de grafos.3 En un

grafo, los nodos representan a las fuentes de abastecimiento y a los

consumidores. Los arcos o aristas representan los elementos de conexión, como

tuberías, válvulas, bombas, entre otros.

De acuerdo con Bhave,4 las redes se clasifican en serie, ramificadas y malladas.

Una red en serie es aquella que no contiene mallas ni ramificaciones; es una

conexión entre dos o más nodos de forma lineal. Generalmente, tiene un nodo

fuente, un nodo final o sumidero y uno o más nodos intermedios. Es la topología

más simple que existe para las redes de distribución de agua.

Page 23: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

9

Una red ramificada es similar a una estructura de árbol. Es un conjunto de redes

en serie y no contiene mallas. Estas redes presentan un nodo fuente, más de un

nodo final y uno o más nodos intermedios. Generalmente, las redes ramificadas

se utilizan para la distribución de agua en comunidades rurales pequeñas, en

zonas industriales y en zonas de riego. En la práctica, el inconveniente de las

redes ramificadas es la suspensión del servicio en diferentes puntos de la red

cuando ocurren roturas o fugas en alguna tubería. Esto se debe a que sólo tienen

un camino para llegar de un punto a otro, de manera que algunos usuarios se

quedan sin servicio cuando hay fuga.

Las redes malladas contienen ciclos o mallas por donde el agua llega a un punto

de la red por diferentes caminos. En estas redes, la interrupción del servicio

ocasionada por rupturas en las tuberías ocurre con menor frecuencia, ya que el

agua llega a su destino utilizando diferentes trayectorias, de tal manera que una

rotura en una tubería, en general, no afecta gravemente a otros puntos de la red.

A pesar de que el costo de construir redes malladas es más elevado que el de las

redes ramificadas, su uso se justifica por su fiabilidad.5

La operación de una red de distribución de agua es importante también. Un

diseño correcto ayuda a su buen funcionamiento. Sin embargo, no garantiza que

la distribución del agua sea eficiente. En la actualidad, la forma de operar de una

red es lo que hace que el agua llegue a los usuarios en cantidades apropiadas

evitando fugas, desperdicios o desabastecimientos. La distribución de agua en

una red es, en sí misma, un problema de optimización. La función objetivo

consiste en minimizar el costo de distribución con base en la demanda de los

usuarios, la cual es variable a lo largo de cada día.

La mayor parte de la investigación respecto del tema que nos ocupa se ha

enfocado en el diseño de la red. Sin embargo, la forma de operarla merece ser

estudiada a fin de aprovechar los recursos hídricos existentes mediante una

distribución equitativa entre los usuarios. En este trabajo se aborda el problema

de las redes de distribución de agua desde la etapa de operación.

2 Descripción del problema

La operación de una red de distribución de agua consiste básicamente en

encontrar la forma más eficiente de suministrarla cumpliendo una serie de

restricciones para la red y para los usuarios. Las restricciones principales son las

presiones mínimas requeridas por los usuarios y las velocidades en los flujos de

la red, entre otras.

Idealmente, la operación de la red debería brindar a los usuarios un servicio

constante e ininterrumpido. Sin embargo, hasta ahora, en la práctica esto no ha

Page 24: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

10

sido posible. Este esquema de operación tiene costos energéticos altos y la

capacidad de los recursos hídricos de las fuentes de abastecimiento disponibles es

limitada. Como una alternativa, en un estudio realizado por Cruz-Chávez et al.,6

se propone un esquema de calendarización del servicio, con el cual la operación

eficiente de la red se garantice y los costos energéticos ocasionados por la

distribución del agua se minimicen. El servicio debe incluir a todos y cada uno de

los usuarios, logrando una distribución equitativa de los recursos hídricos.

A continuación, se retoma la formulación matemática del modelo a resolver

presentado en Cruz-Chávez et al.6

La función objetivo consiste en minimizar el tiempo de distribución óptima del

agua en una red. El método de solución que aquí se propone consiste

precisamente en utilizar un algoritmo genético para la calendarización de las

redes de distribución de agua. Los algoritmos genéticos son técnicas de

optimización estocástica. Trabajan mediante la generación de soluciones

aleatorias. La teoría de los algoritmos genéticos fue propuesta por Holland7 y

desarrollada posteriormente por Goldberg8 y se basa en la evolución natural de

los seres vivos. Así, en los algoritmos genéticos, una población se compone de un

conjunto de soluciones computacionales. Cada individuo se representa mediante

un conjunto de valores que describen una solución. Cada solución está codificada

en cromosomas, es decir, cadenas de caracteres análogas a las del ADN. Los

algoritmos genéticos tradicionales utilizan la representación alfabética o binaria

para las cadenas y manejan los operadores clásicos de selección, cruzamiento y

mutación (véase la figura 1).

Page 25: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

11

Fig. 1. Algoritmo genético tradicional.

Los algoritmos genéticos ya se han aplicado al problema de las redes de

distribución de agua, y generalmente se obtienen buenos resultados en

problemas complejos. Sin embargo, el tiempo de convergencia para la solución de

un problema oscila entre uno y varios días, por lo mismo, surge la necesidad de

obtener resultados eficaces más eficientemente. Para lograr esto, se plantea aquí

una metodología para llevar un algoritmo secuencial existente a un ambiente

paralelo, aplicándolo al problema de las redes de distribución de agua. La

complejidad mayor de la conversión de un algoritmo genético secuencial a un

algoritmo genético paralelo es la comunicación entre procesadores. El algoritmo

secuencial, que está implementado en lenguaje C, contiene estructuras dinámicas

que deben enviarse, modificarse y recibirse de regreso en los nodos, en cada

iteración del algoritmo (véase la figura 2).

Page 26: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

12

Las

estructura

s de datos

“Fuente”

y

“Ciudad”

son

complejas

porque

utilizan

tipos de

datos

básicos

del

lenguaje

C. Los

tipos de

datos que

utilizan

(int) son

primitivos

.

La

estructura

de datos

“Calendar

iza” es

dinámica,

ya que

utiliza

apuntador

es para

referirse a

otros tipos

de datos.

Fig. 2. Estructuras de datos del problema secuencial de la calendarización.

Las estructuras dinámicas permiten que la información esté organizada;

sin embargo, utilizan apuntadores para referirse a otros datos y no se reconocen

en el entorno MPI.

3 Estado del arte del problema de diseño de las redes de

distribución de agua

Desde hace tiempo este problema ha sido estudiado por una gran cantidad de

investigadores. Por ejemplo, Alperovits y Shamir9 proponen el problema clásico

de diseño óptimo de un sistema de distribución de agua, el cual consiste en una

red de tuberías que llevan agua de las fuentes a los usuarios. La red puede

contener bombas, válvulas y fuentes de abastecimiento. En este problema, las

restricciones son las demandas conocidas, que deben cumplirse, y las presiones

en los nodos, que deben respetar ciertos límites. Las variables de decisión son los

diámetros de las tuberías y se basan en algunos enfoques de las variables

continuas, lo que significa que entre cada par de nodos un segmento de tubería

puede dividirse en dos o más segmentos con diferentes diámetros. Las variables

de decisión son también las capacidades de las bombas y la elevación de las

fuentes de abastecimiento. En este enfoque clásico, generalmente se utilizan redes

ramificadas como caso de estudio. La formulación del problema es lineal y el

método de solución es el gradiente.

Page 27: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

13

Después de Alperovits y Shamir,9 el problema de diseño de redes de distribución

de agua ha sido estudiado por Quindry,10 Goulter et al.,11 Fujiwara y Khang,12

Kessler y Shamir,13 Gupta et al.,2 Eiger et al.,14 entre otros. La mayoría de los

investigadores tratan el problema de manera lineal y proponen algunas técnicas

de solución: modificaciones a los métodos del gradiente, quasi-Newton, Branch

and Bound, entre otros (véase el cuadro 1).

Cuadro 1. Problema de diseño de redes de distribución de agua utilizando

variables continúas

Los costo obtenido por diferentes autores para el problema de diseño de la red,a

pesar de que se han empleado métodos diferentes, los resultados son cercanos.

Generalmente, se aplican a redes ramificadas, se utilizan componentes

adicionales y la técnica de distribución del agua es mediante bombeo.

Con el tiempo, el problema clásico se ha modificado gradualmente, de tal forma

que en las últimas décadas se ha tratado como un problema no lineal, utilizando

los diámetros de las tuberías como variables de decisión discretas. Se han

propuesto diversos tipos de heurísticas para resolver el problema y se han

obtenido resultados experimentales similares (véase el cuadro 2); sin embargo, no

existe la certeza de que las soluciones encontradas sean óptimas, ya que la

mayoría de los métodos propuestos no tienen prueba de optimalidad.

Page 28: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

14

Cuadro 2. Problema de diseño de redes de distribución de agua utilizando

variables discretas

Las variables de decisión son discretas. Generalmente, la topología de las redes es

mallada, la mayoría de los métodos de solución se basan en heurísticas. La

estrategia de distribución del agua suele ser por gravedad.

En estos estudios existen algunas diferencias remarcables. En algunos,6,7,8,9,10,11 se

utilizan componentes en la red; mientras que, en otros,12 se supone la existencia

de un modelo ideal de red. Además, algunos autores6,7,8,9,10,11 utilizan topologías

ramificadas, mientras que otros consideran el diseño de redes malladas.15

Finalmente, en algunos trabajos se utiliza la técnica de gravedad porque se

considera que las fuentes de abastecimiento están a mayor altura que los nodos

de demanda;4 en otros se piensa en la técnica de bombeo porque algunos nodos

se encuentran a mayor altura que las fuentes de abastecimiento,6,7,8,9,10,11 o bien,

simplemente, porque se requiere una mayor presión en los nodos.

4 Metodología para la paralelización simple de un algoritmo

genético

La paralelización de un algoritmo requiere de un modelo de operación. El

modelo de islas26 divide la población original en un conjunto de subpoblaciones

distribuidas entre diferentes procesadores. Cada procesador es responsable de la

gestión de la subpoblación que se le ha asignado, de forma que ejecuta todos los

pasos de la heurística y ocasionalmente envía individuos entre islas. Aunque este

modelo rompe la secuencia del algoritmo, estudios en diferentes aplicaciones han

demostrado que suele superar al modelo maestro-esclavo, debido principalmente

a que permite mantener la diversidad en la búsqueda a la vez que se mantiene un

cierto grado de cooperación entre procesadores.26 Una primera propuesta de

paralelización para el algoritmo secuencial presentado es una metodología de

paralelización simple (véase la figura 3).

Page 29: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

15

Fig. 3. Paralelización simple.

La metodología de paralelización simple se basa en el modelo de islas y en la idea

de competencias entre procesadores. Consiste en los siguientes pasos:

1. Dado un algoritmo secuencial, el primer paso de la paralelización

consiste en el análisis del algoritmo para identificar las secciones críticas que

consumen la mayor cantidad de recursos computacionales y que pudieran

trabajar de forma independiente.

2. Una vez identificadas las funciones críticas se deben dividir de forma

manual o dinámica entre el número de procesadores disponibles.

3. Posteriormente, se asigna una copia del programa a cada procesador y se

le indica qué funciones debe ejecutar.

4. Se define una fórmula para que procesador calcule por sí mismo el

número de iteraciones a realizar en las funciones críticas que le fueron

asignadas. En ellas trabaja durante la ejecución del programa.

5. Se define un conjunto de datos para cada procesador y éste trabaja de

forma independiente. El procesador sólo se comunica con los demás

procesadores en caso de encontrar la solución óptima del problema. En este

momento se termina la ejecución del programa en todos los procesadores.

5 Metodología para la paralelización funcional de un algoritmo

genético

La paralelización funcional (véase la figura 6) consiste en la división de tareas

entre el número de procesadores existentes. Se utiliza el modelo maestro-esclavo,

el cual permite mantener la secuencia del algoritmo original.26 Un procesador

Page 30: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

16

maestro centraliza la población y gestiona la selección y los reemplazos de

individuos. También se encarga del envío de subconjuntos de la población a los

esclavos, los cuales ejecutan tareas de evaluación y mutación. Después, los

esclavos devuelven las soluciones evaluadas al maestro.

Esta metodología de paralelización funcional del algoritmo aplicado al problema

de redes de distribución de agua consiste en los siguientes pasos:

1. Dado un algoritmo secuencial, el primer paso en la paralelización

consiste en el análisis del algoritmo para identificar las secciones críticas que

consumen la mayor cantidad de recursos computacionales. Estas secciones se

dividen entre el número de procesadores.

2. Se debe realizar un análisis exhaustivo del código fuente del programa

secuencial para identificar el grado de cohesión y acoplamiento del programa.

En caso de que sea un programa con alto grado de acoplamiento, la

comunicación entre los procesadores será constante durante el envío y

recepción de los datos que se modifican en las diferentes funciones. Se sabe

que, en cómputo distribuido, las comunicaciones constantes afectan el

rendimiento del programa, por lo que es recomendable en la medida de lo

posible evitar el exceso de comunicaciones entre procesadores.

3. Se debe analizar el tipo de datos que se enviarán a los procesadores. La

existencia de estructuras dinámicas beneficia porque la información está

organizada y no hay necesidad de hacer varios envíos. Sin embargo, debe

realizarse una conversión de datos de lenguaje C a su equivalente en MPI.

Como MPI no reconoce la existencia de estructuras dinámicas, hay que llevar

a cabo un proceso que equivale a serializar y deserializar los datos. En Michel

y Devaney,27 se propone una metodología para la conversión manual de un

tipo de dato en C a MPI. También se propone el uso de una herramienta para

realizar la conversión de forma automática.

4. Una vez definidas las tareas y datos que se asignarán al programa, se

debe identificar el número de procesadores disponibles. Con base en esta

cantidad, se puede realizar una distribución dinámica tanto de los datos como

del número de operaciones a realizar. Esto tiene la finalidad de obtener un

balance de carga para que los procesadores terminen sus actividades casi al

mismo tiempo. Con esto se logra aprovechar al máximo los recursos

disponibles y se evita el tiempo ocioso en los procesadores mientras se les

asignan nuevas tareas.

Page 31: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

17

5. En el caso de los algoritmos genéticos se debe definir necesariamente un

proceso de sincronización porque existe un número de iteraciones que deben

realizarse. En cada iteración, el procesador maestro debe recopilar los datos y

actualizar la población de tal forma que se envíen datos nuevos a los procesos

esclavos. Así se mejoran las soluciones, pues cada procesador trabaja sobre

espacios de soluciones diferentes que pueden combinarse. Para la sincronización

existen las técnicas conocidas como semáforos, barreras, o bien, comunicación

bloqueante, propia de la biblioteca de paralelización MPI.

6. Finalmente, se deben utilizar instrucciones importantes para el algoritmo

paralelo. Algunas instrucciones son propias del entorno MPI (véase el cuadro 3).

Cuadro 3. Funciones definidas en la biblioteca MPI

Como acabamos de ver, en el modelo maestro-esclavo para la paralelización

funcional del algoritmo genético, se tiene un nodo central (maestro) que se

encarga de distribuir los datos y las tareas a los nodos esclavos. El algoritmo

trabaja con una única población de individuos que se divide en partes iguales

entre el número de nodos disponibles. A cada nodo esclavo le corresponde una

parte de la población total, sobre la cual realizará las operaciones que le

corresponden. Los nodos esclavos se encargan de realizar las operaciones de

mutación sobre la parte de la población que les fue asignada. Una vez que

finalizan las operaciones, los nodos esclavos devuelven sus resultados obtenidos

al nodo maestro. El nodo maestro almacena las soluciones obtenidas por los

esclavos en una nueva población. Sobre esta nueva población, el nodo maestro

realiza las operaciones correspondientes a los operadores de selección y

cruzamiento, y posteriormente envía a los nodos esclavos la nueva población

sobre la cual deben trabajar (véase la figura 4).

Page 32: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

18

Fig. 4. Paralelización funcional con comunicación.

La diferencia principal entre los esquemas de paralelización utilizados en este

trabajo es que en el esquema funcional existe una comunicación constante entre el

nodo maestro y los nodos esclavos. También hay cooperación entre los nodos

para encontrar mejores soluciones en cada generación. Sin embargo, una

desventaja de la aplicación funcional es que algún nodo falle o simplemente se

detenga, lo cual puede ocurrir con frecuencia para evitar que los costos

energéticos se eleven a causa de que el clúster de computadoras esté funcionando

de manera ininterrumpida. Si un nodo falla o se detiene, el nodo maestro se

quedará esperando los resultados de todos los nodos esclavos y no podrá

continuar con la siguiente iteración del programa. Por otra parte, la ventaja

principal de la paralelización simple es que no existen dependencias entre los

procesadores y cada uno puede trabajar a diferente ritmo; cualquiera de ellos

puede encontrar la solución óptima global. Llevar un algoritmo secuencial a un

Page 33: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

19

ambiente paralelo requiere de un conocimiento exhaustivo del algoritmo.

Además, es necesario asegurarse de que durante la paralelización los datos

conserven su consistencia y lleguen correctamente a los nodos destino durante la

comunicación.

6 Conclusiones

Una de las ventajas de utilizar el cómputo paralelo es la disminución del tiempo

de ejecución de un programa. El cómputo paralelo se usa como una herramienta

para resolver problemas complejos de optimización combinatoria en los que los

recursos de una sola computadora no son suficientes o tardarían años en

solucionar un problema.

En este artículo se presentó un análisis comparativo del problema de las redes de

distribución de agua en las últimas décadas, abordado desde el punto de vista de

su diseño. Se presentaron también dos metodologías de paralelización: la simple

y la funcional. Se compararon las metodologías y se señalaron las dificultades,

ventajas y desventajas de cada esquema. La problemática principal de la

paralelización del algoritmo genético es el envío de las estructuras dinámicas en

el clúster de computadoras. Puede decirse que ambos esquemas de

paralelización, tanto la simple como la funcional, tienen ventajas y desventajas, y

dependiendo de las necesidades que se tengan se puede elegir alguna de ellas.

Las metodologías que aquí se han propuesto pueden ayudar en la conversión de

un algoritmo secuencial a un algoritmo paralelo en un ambiente MPI. En el

presente estudio se logró la conversión de un algoritmo secuencial a su

equivalente en paralelo, el cual puede aplicarse al problema de las redes de

distribución de agua.

Un trabajo que daría continuidad a esta investigación en el futuro sería el de

mostrar los resultados experimentales realizados con ambas metodologías en el

problema de las redes de distribución de agua.

Referencias 1. Blazewicz, J., ‚Handbook on Parallel and Distributed Processing‛, en

International Handbooks on Information Systems, Springer-Verlag, Nueva York,

2000.

2. Gupta, I., J. K., Bassin, A. Gupta y P. Khanna, ‚Optimization of Water

Distribution System‛, Environmental Software, núm. 8, 1993, pp. 101-113.

3. Water Distribution Systems Connectivity Analysis Avi Ostfeld, J. Water

Resour. Plng. and Mgmt. 131, 58 (2005), DOI:10.1061/(ASCE)0733-

9496(2005)131:1(58)

4. Bhave, P. R., Analysis of Flow in Water Distribution Networks, Technomic

Publishing Company, Lancaster, 1991.

Page 34: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

20

5. Baños Navarro, R., Metaheurísticas híbridas para optimización monoobjetivo y

multiobjetivo, tesis doctoral, Almería, España, 2006. Disponible en Internet

(www.ace.ual.es/~rbanos/CV.html), página consultada el 12 de mayo de 2009.

6. Cruz-Chávez, M. A. et al., ‚Empirical Transformation of Job Shop Scheduling

Problem to the Hydraulic Networks Problem in a Water Distribution System‛,

ponencia para el Congreso de Electrónica, Robótica y Mecánica Automotriz, 2009

(inédito).

7. Holland, J. H., Adaptation in Natural and Artificial Systems, MIT Press,

Cambridge, Mass., 1975.

8. Goldberg, D. E., Genetic Algorithms in Search, Optimization and Machine Learning.

Addison, Wesley Publishing Co., Reading, Mass., 1989.

9. Alperovits, E. y U. Shamir, ‚Design of Optimal Water Distribution Systems‛,

Resources Research, vol. 13, núm. 6, 1977, pp. 885-900. 10. Quindry, G. E., E. D.

Brill, J. C. Liebman y A. R. Robinson, ‚Comment on ‘Design of Optimal Water

Distribution System’’ by E. Alperovits and U. Shamir‛, Water Resources Research,

vol. 15, núm. 6, 1979, pp. 1651-1654.

11. Goulter, I. C., B. M. Lussier y D. R. Morgan, ‚Implications of Head Loss Path

Choice in the Optimization of Water Distribution Networks‛, Water Resources

Research, vol. 22, núm. 5, 1986, pp. 819-822.

12. Fujiwara, O y D. B. Khang, ‚Correction to ‘A Two-Phase Decomposition

Method for Optimal Design of Looped Water Distribution Networks’ ‛, Water

Resources Research, vol. 27, núm. 5, 1991, pp. 985-986.

13. Kessler, A. y U. Shamir, ‚Analysis of the Linear Programming Gradient

Method for Optimal Design of Water Supply Networks‛, Water Resources

Research, vol. 25, núm. 7, 1989, pp. 1469-1480.

14. Eiger, G., U. Shamir y A. Ben-Tal, ‚Optimal Design of Water Distribution

Networks‛, Water Resources Research, vol. 30, núm. 9, 1994, pp. 2637-2646.

15. Loganathan, G. V., H. D. Sherali y M. P. Shah, ‚A Two-Phase Network Design

Heuristic for Minimum Cost Water Distribution System Under a Reliability

Constraint‛, Eng. Optim., vol. 15, núm. 4, 1990, pp. 311-336.

16. Varma, K. V. K., S. Narasimhan y S. M. Bhallamudi, ‚Optimal Design of

Water Distribution Systems Using NLP Method‛, Journal of Environmental

Engeneering, vol. 123, núm. 4, 1997, pp. 381-388.

17. Savic, D. A. y G. A. Walters, ‚Genetic Algorithms for Least-Cost Design of

Water Distribution Networks‛, Journal of Water Resource Planning Management,

vol. 123, núm. 2, 1997, pp. 67-76.

18. Abebe, A. J. y D. P. Solomatine, ‚Application of Global Optimization to the

Design of Pipe Networks‛, en Proceedings of the International Conference on

Hydroinformatics, A. A. Balkema, Brookfield, Vt., 1998, pp. 989-996.

Page 35: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

21

19. Abebe, A. J. y D. P. Solomatine, ‚Two Strategies of Adaptive Cluster Covering

with Descent and Their Comparison to Other Algorithms‛, Journal of Global

Optimization, núm. 14, 1999, pp. 55-79.

20. Montesinos, P., A. García y J. L. Ayuso, ‚Water Distribution Network

Optimisation Using Modified Genetic Algorithm‛, Water Resources Research, vol.

35, núm. 11, 1999, pp. 3467-3473.

21. Cunha, M. C. y J. Sousa, ‚Water Distribution Network Design Optimization:

Simulated Annealing Approach, Journal of Water Resource Planning Management,

vol. 125, núm. 4, 1999, pp. 215-221.

22. Geem, Z. W., J. H. Kim y G. V. Loganathan, ‚A New Heuristic Optimisation

Algorithm: Harmony Search‛, Simulation, vol. 76, núm. 2, 2001, pp. 60-68.

23. Eusuff, M. M. y K. E. Lansey, ‚Optimization of Water Distribution Network

Design Using the Shuffled Frog Leaping Algorithm, Journal of Water Resource

Planning Management, vol. 129, núm. 3, 2003, pp. 210-225.

24. Matías, A., Diseño de redes de distribución de agua contemplando la fiabilidad

mediante algoritmos genéticos, tesis doctoral, Universidad Politécnica de Valencia,

España, 2003.

25. J. Reca, J. Martinez, Genetic algorithms for the design of looped irrigation

water distribution networks, Water Resources Research, Vol. 42, Almeria,

España. 2006.

26. Cantu-Paz, E., ‚A Survey of Parallel Genetic Algorithms‛, reporte técnico

(IlliGAL, núm. 97003), University of Illinois at Urbana, Champaign, 1997.

27. Michel, M. y J. E. Devaney, ‚A Generalized Approach for Transferring Data-

Types with Arbitrary Communication Libraries‛, en Proceedings of the VII

International Conference on Parallel and Distributed Systems: Workshops, ICPADS-

IEEE Computer Society, Washington, DC, del 4 al 7 de

Page 36: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

22

Page 37: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

23

A Heuristic Approach for Improvement Batch

Plant Design under Imprecise Demand Using

Fuzzy Logics

Y. El-Hamzaoui ,J.A. Hernandez , A.Bassam

Abstract. This paper deals with the problem of the improvement design of

multiproduct batch chemical plants found in chemical engineering with

imprecise demand. The objective of the batch plant design problem is to

minimize the investment cost and find out the number and size of parallel

equipment units in each stage. For this purpose, it is proposed to solve the

problem in two differents ways: The first way is by using Monte Carlo Method

(MC), the second way is by Genetic Algorithm (GA), that takes into account

simultaneously, the imprecise demand using Fuzzy Logics with two criteria

maximization of the Net Present Value (NPV) and Flexibility Index (FI). The

results (number and size of equipment, investment cost, NPV, FI, Hi, CPU time)

obtained by the GA are better than the MC. This methodology can help the

decision makers and constitutes very a promising framework for finding a set of

‚good solutions‛.

Key words: Genetic Algorithm, Monte Carlo, Fuzzy Logics, Batch Plant Design.

1. Introduction 2. Methodology 2.1 Process description 2.2. Fuzzy logics 2.3 Data

Set 2.3 Tools 2.3.1 Monte Carlo Method 2.3.2 Genetic Algorithm 2.4. Assumptions

2.5 Model Formulation 3. Results and discussion 4. Conclusions Nomenclature

References

1. Introduction

In chemical engineering, precisely, in recent years, there has been an increased

interest in the design of batch processes due to the growth of specialty chemical,

food products, pharmaceutical and related industries aroused the current focus

on the batch plant design problem (Cameron, 2008). Also the Process Engineering

framework, batch processes are of growing industrial importance because of their

flexibility and their ability to produce high added-value products in low

volumes.

In economics, demand is the desire to own something and the ability to pay for it

(Henning et al.1988). The term demand is also defined elsewhere as a measure of

Page 38: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

24

preferences that is weighted by income, but the market demand for such

products is usually changeable, and at the stage of conceptual design of a batch

plant, it is almost impossible to get the precise information on the future product

demand over the lifetime of the plant. However, decisions must be made about

the plant capacity. This capacity should be able to balance the product demand

satisfaction (Henning et al.1988). In the conventional optimal design of a

multiproduct batch chemical plant (Hasebe et al.1979), a designer specifies the

production requirements for each product and total production time for all

products (Floudas et al.2005). The number required of volume and size of parallel

equipment units in each stage is to be determined in order to minimize the

investment cost.

Basically, batch plants are composed of items operating in a discontinuous way.

Each batch then visits a fixed number of equipment items, as required by a given

synthesis sequence (so-called production recipe) (Ponsich et al.2007).

For instance, the design of a multiproduct batch chemical plant is not only to

minimize the investment cost, but also to minimize the operation cost, to

minimize the total production time to maximize the revenue, and to maximize

the flexibility index, simultaneously (Aguilar Lasserre et al, 2005). On the other

hand, the key point in the improvement designs of batch plants under

imprecision concerns the modeling of demand variations. The market demand

for products resulting from the batch industry is usually changeable, and at the

stage of conceptual design of a batch plant, it is almost impossible to obtain the

precise information on the future product demand over the plant lifetime.

Nevertheless, decisions must be made about on the plant capacity. This capacity

should be able to balance the product demand satisfaction and extra-capacity in

order to reduce the loss on the excessive investment cost or than on market share

due to the varying product demands (Huang et al.2002). The most recent common

approaches treated in the dedicated literature represent the demand uncertainty

with a probabilistic frame by means of Gaussian distributions. Yet, this

assumption does not seem to be always a reliable representation of the reality,

since in practice the parameters are interdependent and do not follow symmetric

distribution rules, which leads to very complex conditional probabilities

computations. An alternative treatment of the imprecision is constituted by using

fuzzy concepts by Zadeh (1975). This approach, based on the arithmetic

operations on fuzzy numbers, differs mainly from the probabilistic models

insofar as distribution laws are not used. It considers the imprecise nature of the

information, thus quantifying the imprecision by means of fuzzy sets that

represent the ‛more or less possible values‛.

In this study, we will only consider multiproduct batch plants, which mean that

all the possible values‛. Products follow the same operating steps (Bautista,

2007), the structure of the variables are the equipment sizes and number of each

Page 39: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

25

unit operation that generally takes discrete values. Based on Fuzzy concepts of

the demand, the IBPD (Improvement Batch Plant Design) is solved by two

techniques: Monte Carlo Method (MC) and Genetic Algorithm (GA).

The aim of this work is to treat the improvement of multiproduct batch plant

design under imprecise demand using MC and GA as tools of heuristic methods.

The paper is organized as follows: Section 2 is devoted to the methodology and

an overview of fuzzy set theory involved in the fuzzy framework, section 3

presents results and discussion. Finally the conclusions on this work are drawn.

2. Methodology

02.1 Process description

The case study is a multiproduct batch plant for the production of proteins taken

from the literature by Cao et al. (2002). This example is used as a test bench since

short-cut models describing the unit operations involved in the process. The

batch plant involves eight stages for producing four recombinant proteins; on one

hand, two therapeutic proteins, human insulin (A) and vaccine for hepatitis (B)

and, on the other hand, a food grade protein, chymosin (C), and a detergent

enzyme, cryophilic protease (D). Fig 1 shows the flowsheet of the multiproduct

batch plant considered in this study. All the proteins are produced as cells grow

in the fermenter (Fer).

Fig. 1. Multiproduct batch plant for protein production

Vaccines and protease are considered to be intracellular: the first microfilter (Mf1)

is used to concentrate the cell suspension, which is then sent to the homogenizer

(Hom) for microfilter (Mf2) is used to remove the cell debris from the solution

proteins. The ultrafiltration (Uf1) step is designed to concentrate the solution in

order to minimize the extractor volume. In the liquid–liquid extractor (Ext), salt

concentration (NaCl) is used in solution in order to minimize the extractor

Page 40: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

26

volume. In the liquid–liquid extractor (Ext), salt concentration (NaCl) is used to

first drive the product to a poly-ethylene-glycol (PEG) phase and again into an

aqueous saline solution in the back extraction. Ultrafiltration (Uf2) is used again

to concentrate the solution. The last stage is finally chromatography (Chr), during

which selective binding is used to better separate the product of interest from the

other proteins.

Insulin and chymosin are extracellular products. Proteins are separated from the

cells in the first microfilter (Mf1), where cells and some of the supernatant liquid

remain behind. To reduce the amount of valuable products lost in the retentate,

extra water is added to the cell suspension. The homogenizer (Hom) and

microfilter (Mf2) for cell debris removal are not used when the product is

extracellular. Nevertheless, the ultrafilter (Uf1) is necessary to concentrate the

diluted solution prior to extraction. The final step of extraction (Ext),

ultrafiltration (Uf2) and chromatography (Chr) are common to both the

extracellular and intracellular products.

2.2. Fuzzy logics

The emergence of electronic commerce and business-to-business applications has,

in a recent period, considerably changed the dynamics of the supplier–customer

relationship. Indeed, customers can change more rapidly their orders to the

suppliers and many enterprises have to organize their production even if the

demand is not completely known at short term. On the other hand, the increasing

need for integration and optimization in supply chains leads to a greater

sensitivity to perturbations due to this uncertainty. These two elements clearly

show the interest of taking into account as soon as possible the uncertainty on the

demand and to propagate it along the production management mechanisms.

In the context of engineering design, an imprecise variable is a variable that may

potentially assume any value within a possible range because the designer does

not know a priori the final value that will emerge from the design process. The

fuzzy set theory was introduced by Zadeh. (1975), to deal with problems in

which a source of vagueness is involved. It is well recognized that fuzzy set

theory offers a relevant framework to model imprecision.

In this section, only the key concepts from the theory of fuzzy sets that will be

used for batch plant design are presented; more detail can be found in Kaufmann

et al.(1988). Different forms can be used to model the membership functions of

fuzzy numbers. We have chosen to use normalized trapezoidal fuzzy numbers

(TrFNs) for modeling product demand, which can be represented by a

membership function μ(X). The proposed approach involves arithmetic

operations on fuzzy numbers and quantifies the imprecision of the demand by

means of trapezoidal fuzzy sets, as shown in Fig.2.We represent subjective

Page 41: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

27

judgments on future demand, given as linguistic values, such as ‚demand is

around a certain value or interval [q2,q3+ ‛ or ‚demand is not lower than a certain

value‛. For the design of the demand, we suppose that the products have a sure

level of acceptance in market, represented by the interval [q2, q3]: This means that

the demand has, in this interval, a certainty level α=1 that derives in TrFNs. On

the other hand, the intervals [q1,q2] and [q3,q4+ represent the demand ‚more or less

possible values‛. (See Fig. 2).

Fig.2. Demand modeling by fuzzy numbers

A fuzzy demand can be represented by a membership function μQ(x) at μ level

by the following expression:

(1)

The membership function is defined by

(2)

The arithmetic calculations involve addition, subtraction and symmetric (image),

through the extension principle of Zadeh (1975).

•Addition:A(+)B= (a1,a2,a3,a4)(+)(b1,b2,b3,b4) = (a1+ b1, a2 + b2, a3 + b3, a4+b4)

•Subtraction : A (-) B = (a1,a2,a3,a4) (-) (b1,b2,b3,b4) = (a1 - b4, a2 - b3, a3 - b2, a4 - b1).

Symmetric (image) of a TrFN: -(A) = (-a4, - a2, -a3, a1 )

),,,( 4321 qqqqQ

434112 )(,)(,1,0 qqqqqqQ

4

43

34

4

32

21

12

1

1

,0

,

,1

,

,0

)(

qx

qxqqq

xq

qxq

qxqqq

qx

qx

xQ

Page 42: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

28

2.3 Data Set

The experimental data of IBPD was initially proposed by Montagna et al. (2000).

In table 1, the plant, divided into sub-processes, consists of six batch stages [B (1-

6)] to manufacture four products A, B, C, D. The table shows the values for

processing times , size factor for the units, cost data, and the production

requirement for each product quantifying the imprecision of the demand by

using Fuzzy Logic representing the ‚more or less possible values‛.

Table 1. Data used in the problem of batch plant design

The problem involves 16 discrete variables to determine have been spread in the

table 2.

)(, hji

Page 43: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

29

Table 2. List of determination variables

2.3 Tools

In the 1960s and 1970s, witnessed a tremendous development in the size and

complexity of industrial organizations. The administrative decision-making has

become very complex and involves large numbers of workers, materials and

equipment. A decision is a recommendation for the best design or operation in a

given system or process engineering, so as to minimize the costs or maximize the

gains. Using the term "best" implies that there is a choice or set of alternative

strategies of action to make decisions. The term ‚optimal‛ is usually used to

denote the maximum or minimum of the objective function and the overall

process of maximizing or minimizing is called optimization. The optimization

problems are not only in the design of industrial systems and services, but are

also applied in the manufacturing and operation of these systems once they are

designed. Including various methods of optimization, we can mention: Monte

Carlo Method and Genetic Algorithm.

2.3.1 Monte Carlo Method

Enrico Fermi was an early user of what was later called a Monte Carlo Method. A

Monte Carlo Method uses a computer to generate a large number of scenarios

based on probabilities for inputs. For each scenario, a specific value would be

randomly generated for each of the unknown variables (Douglas, 2007). Then

these specific values would go into a formula to compute an output for that

single scenario. This process usually goes on for thousands of scenarios by the

method of inverse transformation and cumulative frequency distributions. The

demand is the random variable of our model. In order to simulate the values of

this variable, we have used a graphical user interface of random number

generation tool. Through calculation we can see the whole values will take the

Equipement number [n] Equipement volume[m3]

n1( Fermentación (Fer)) V1( Fermentación (Fer))

n2(Microfilter1 (Mf1)) V2(Microfilter1 (Mf1))

n3(Homogenizer(Hom)) V3(Homogenizer(Hom))

n4(Microfilter2 (Mf2)) V4(Microfilter2 (Mf2))

n5(Ultrafiltration1(Uf1)) V5(Ultrafiltration1(Uf1))

n8(Chromatographic column(Chr)) V8(Chromatographic column(Chr))

n6(Extractor (Ext)) V6(Extractor (Ext))

n7(Ultrafiltration2(Uf2)) V7(Ultrafiltration2(Uf2))

Page 44: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

30

objective function as net present value. Then we made several runs with different

sample sizes to see what happened with the NPV and then calculate the average

results and standard deviation error.

2.3.2 Genetic Algorithm

The term ‚genetic algorithm‛, almost universally abbreviated now a days to GA,

was first used by Holland (1975), whose book Adaptation in Natural and Artificial

Systems was instrumental in creating what is now a flourishing field of research

and application that goes much wider than the original GA. A genetic algorithm

is a search technique used in computing to find exact or approximate solutions to

optimization and search problems. However its implementation in this work

consists of the following steps:

Variable Encoding. Binary system was chosen for encoding as it simplifies the

genetic operators, crossover, and mutation. Encoding system can always be

translated in a binary encoding system. However, the encoding of the solutions

was carried out by dividing the chromosome, i.e. a complete set of coded

variables, into two parts. The first one deals with the items volumes, which are

continuous in the initial formulation. Nevertheless, they were discretized here

with a 50 unit range, while their upper and lower bounds were preserved. The

second part of the chromosome handles the number of equipment items per

stage: the value of these discrete variables is coded directly in the chromosome

(Holland, 1975). Fig. 3 shows an illustration of the encoding method for a small

size example. In this example, we can see that the encoding procedure is adapted

to the variable nature: The item size variables are coded according to a binary,

like a technique, while the item number per stage are copied just as they are

worth in the chromosome (for instance, if nj=2, the corresponding locus will

contain information ‚2‛). The encoding procedure is adapted to the double

nature of the variables: since continuous and integer variables have to coexist in

the same chromosome, this latter is partitioned into two zones. As shown in

Fig.3, the first zone encodes the continuous variables, i.e. the item sizes of each

processing stage, as reduced variables (between 0 and 1, using the lower and

upper bounds) and according to a binary – like technique that is not detailed

here. On the other hand, the integer variables, representing the item number for

each stage, are copied directly in the chromosome without any change: For

instance, the plant illustrated in Fig.3 has 2 items for stage 1, 1 item for stage 2,

and 3 items for stage 3: This corresponds to the integer numbers encoded at the

end of the chromosome: 2, 1, 3.

Page 45: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

31

Fig. 3. Illustration of the encoding method for a small size example

Creation of the initial population. The procedure of creating the initial

population corresponds to random sampling of each decision variable within its

specific range of variation. This strategy guarantees a population varied enough

to explore large zones of the search space.

Survival. For a given survival rate, the selection process is achieved via a classical

biased roulette wheel. The selection is performed and each selected individual is

included into the new population.

Crossover Operation. To complete the new population, a classical one-point

crossover is performed on pairs of individuals randomly chosen in the current

population.

Mutation Operation. After selection and crossover, mutation is then applied on

the resulting population, with a fixed mutation rate. The number of individuals

on which the mutation procedure is carried out is equal to the integer part of the

value of the population size multiplied by the mutation rate. These individuals

are chosen randomly among the population and then the procedure is applied.

Elitism. The elitism consists in keeping the best individual from the current

population to the next one.

2.4. Assumptions

The model formulation for IBPD’s problem adopted in this section is proposed by

Karimi et al.(1989). It considers not only treatment in batch stages, which usually

appears in all types of formulation, but also represents semi-continuous units

that are part of the whole process (pumps, heat exchangers, etc). A semi-

continuous unit is defined as a continuous unit alternating idle times and normal

activity periods.

Besides, this formulation takes into account mid-term intermediate storage tanks.

They are just used to divide the whole process into sub-processes in order to

Page 46: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

32

store an amount of materials corresponding to the difference of each sub-process

productivity.

This representation mode confers on the plant better flexibility for numerical

resolution: It prevents the whole production process from being paralyzed by one

limiting stage. So, a batch plant is finally represented as a series of batch stages

(B), semi-continuous stages (SC) and storage tanks (T).The model is based on the

following assumptions:

(i) Devices used in the same production line can not be used again by the same

product.

(ii) Production is achieved through a series of single product campaigns.

(iii) Units of the same batch or semi-continuous stage have the same type and

size.

(iv) All intermediate tank sizes are finite.

(v) If a storage tank exists between two stages, the operation mode is ‚Finite

Intermediate storage‛. If not, the ‚Zero-Wait‛ policy is adopted.

(vi) There is no limitation for utility.

(vii) The cleaning time of the batch items is included in the processing time.

(viii) The size of the items is continuous bounded variables.

2.5 Model Formulation

The model considers the synthesis of (I) products treated in (J) batch stages and

(K) semi-continuous stages. Each batch stage consists of (mj) out-of-phase parallel

items of the same size (Vj). Each semi-continuous stage consists of (nk) out-of-

phase parallel items with the same processing rate (Rk) (i.e. treatment capacity,

measured in volume unit per time unit). The item sizes (continuous variables)

and equipment numbers per stage (discrete variables) are bounded. The (S-1)

storage tanks, with size (Vs*), divide the whole process into (S) sub-processes.

Following the above mentioned notation, IBPD’s problem can be formulated to

minimize the investment cost for all items, maximizing the net present value and

maximizing the flexibility index:

The investment cost (Cost), written as an exponential function of the unit size, is

formulated in terms of the optimization variables, which represent the plant

configuration:

(3)

Where aj and αj, bk and βk, Cs and γs are classical cost coefficients. A complete

nomenclature is available in the Appendix. Eq. (3) shows that there is no fixed

cost coefficient for any item. This may be unrealistic and will not tend towards

minimization of the equipment number per stage. Nevertheless, this information

S

s

sss

K

k

kkkk

J

j

jjjj VcRbnVamCostMin

111

)()()()(

Page 47: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

33

was kept unchanged in order to compare our results with those found in the

literature (Chunfeng et al.1996).

Instead of the investment cost recommended the economic criterion represents

the NPV. This approach allows evaluating the impact of the plant over some

years, taking into account the calculation of the net cash flow in terms of the

present value of the money.

(4)

Eq.(4) underlines the fact that the objective function accounts not only for the

investment cost, but also for the incomes from the sells (Vp), the operation costs

(Dp) and depreciation (Ap) computed on n given time periods. Discount rates (r),

taxes (a), and working capital (f) are also involved to update the money value. It

is worth noting that since sales and operation costs depend on the uncertain

demand parameter.

However, the Flexibility Index (FI) is formulated as the ratio between the new

total production and initial demand:

(5)

This problem is subjected to three kinds of constraints:

(i) Variable bounding:

(6)

(7)

Volume of the items of each batch stage j and treatment capacity of each

semi-continuous stage k. However, these variables are not continuous anymore

and were discretized with an interval of 50 units between two possible values.

This working mode was adopted in a view of realism. Indeed, since equipment

manufacturers propose the items following defined size ranges, the design of

operation unit equipments does not require a level of accuracy such as real

number. Note however that the initial bounds on these size variables were kept

unchanged, being for batch and semi-continuous, respectively: and ,

and .

Item number in batch stage j and item number in semi-continuous stage k.

These variables cannot exceed 3 items per stage ( ).

n

pnn

pppp

i

f

i

AaADVfCostNPVMax

1 )1()1(

)1)(()(

I

i

i

I

i

ii

Q

QQ

FIMax

1

1

* )(

)(

maxmin,..,1 VVVjj j

maxmin,..,1 RRRkk k

jV kR

minVmaxV

minRmaxR

jm kn

3,1 kj nm

Page 48: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

34

(ii) Time constraint: the total production time for all products must be lower than

a given time horizon :

(8)

Where is the demand for product i.

(iii) Constraint on productivities: the global productivity for product i (of the

whole process) is equal to the lowest local productivity (of each sub-process s).

(9)

These local productivities are calculated from the following equations:

(a) Local productivities for product in sub-process s:

(10)

(b) Limiting cycle time for product in sub-process s:

(11)

Where Js and Ks are, respectively, the sets of batch and semi-continuous stages in

sub-process s.

(c) Cycle time for product in batch stage j:

(12)

Where k and k+1 represent the semi-continuous stages before and after batch

stage j.

(d) Processing time of product i in batch stage j:

(13)

(e) Operating time for product in semi-continuous stage :

(14)

(f) Batch size of product in sub-process :

(15)

(g) Finally, the size of intermediate storage tanks is estimated as the greatest size

difference between the batches treated in two successive sub-processes:

(16)

H

I

i i

iI

i

iod

QHH

11 Pr

iQ

Ss

isi odlocMinodIi

PrPr,..1

i

L

is

is

T

BodlocisSsIi Pr,..,1,,..,1

i

itij

L

is TMaxTSsIi ,,..1,,..1

I

j

ijtiti

ijm

pTJjIi

)1(,,..,1,,..,1

dij

isijijij BgppSsJjIi 0,..,1,..,1,,..,1

i k

kk

ikisik

nR

DBSsKskIi ,..,1,,..,1,,..,1

i s

ij

j

isS

VMinBSsIi ,..1,,..,1

)1()1((*Pr1,..,1 ti

L

si

L

isisis TTSodMaxVSs

Page 49: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

35

V1 V2 V3 V4 V5 V6 V7 V8

10000.000 10000.000 10000.000 8692.625 9924.000 10000.000 899.877 6269.000

n1 n2 n3 n4 n5 n6 n7 n8

3 3 3 3 3 3 3 2

Volume [m3]

Equipment number [n]

%Std.Dev(FI)

Cost

Max(NPV)

%Std.Dev(NPV)

Max(FI)

1000000[$]

15%

1.00000085

Hi

CPU time

15%

1500000[$]

6000(h)

20000*(s)

3. Results and discussion

The results obtained by Monte Carlo Method, running the model 30 runs of

100000 iterations is given in Table 3, although Fig .5 shows equipment structure

according to this result.

Table 3. Best design of batch plant by MC

*CPU time was calculated for MC method on Microsoft Windows XP

Professional Intel(R)D CPU 2.80 GHz., 2.99 GB of RAM.

Fig. 4. Equipment Structure according to the Table 3

However, the Genetic Algorithm parameters are displayed in Table 4. The

reference values were taken from (Berard, 2000).

Page 50: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

36

Table 4. Genetic algorithm parameters

Population size 200

Generation number 1000

Survival rate 0.50

Mutation rate 0.40

Elitism 1

The results inspiring from this technique are treated in Table 5, and in Fig. 6, we

can see the equipments structure according to the results.

Table 5. The Best design of batch plant by GA

*CPU time was calculated for this method on Microsoft Windows XP Professional

Intel(R) D CPU 2.80 GHz., 2.99 GB of RAM.

Fig. 5. Equipment Structure according to Table 5

V1 V2 V3 V4 V5 V6 V7 V8

8043.200 9965.900 9675.300 6554.170 7539.280 9888.000 455.170 4212.000

n1 n2 n3 n4 n5 n6 n7 n8

3 1 1 1 1 1 1 1

Hi 5491.123159(h)

CPU time 15*(s)

%Std.Dev(FI) 5%

Cost 695000[$]

%Std.Dev(NPV) 5%

Max(FI) 2.08176419

Max(NPV) 1400000[$]

Volume [m3]

Equipment number [n]

Page 51: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

37

The Monte Carlo Method results where the demand is modeled by a Fuzzy Logic

are shown in Table 3, and Fig.5 shows the structure of equipment including the

number (n) and size (V).

Table 3 shows an acceptable level of NPV showing the feasible process with

respect to the economic aspect due to the rapid depreciation of equipment over

five years of study. Also this configuration offers a set of discrete equipment sizes

and well balanced from the fourth stage. The risk of this configuration is just

ending at 6000h with risk of failing to fulfill the future demand coming from

fluctuation of the market.

The typical results obtained by Genetic Algorithm after thirty runs guarantees

the stochastic nature of the algorithm with demand modeled by a Fuzzy Logic,

maximizing NPV and FI are shown in Table 5, and in Fig.6 had been indicated

the structure of equipment. Also this configuration shows an excellent NPV with

respect to the economical feasibility and indicates great flexibility in the process

to fulfill future demand.

Table 5 shows a better NPV ($1,400,000) from the configuration obtained by GA

optimization with respect to the MC. Also this process shows great flexibility

(FI=2.08), taking into account, that the customers need the product each 6000h,

the configuration created by Table 5 has 5491.12h as a total production time. This

helps fulfill the increase future demand coming from fluctuation of the market.

Also this configuration shows a very small Std. Dev (error): In addition, GA’s

results are faster convergence (CPU=15s), and GA’s yield highly satisfactory

could be touch to the global optimum.

However, the configuration showing by Monte Carlo Method (Table 3 and Fig.5 )

is expensive and the NPV obtained is very small, also The error is also high, and

the time of the process calculation is slow(CPU=20000s~6h).

Finally, the best design of multi-product batch chemical process with the best Net

Present Value (NPV) and best Flexibility Index is shown in Fig.6, and the results

of the optimization variables are presented in Table 6.

Fig.6. Best Design of Multi-product Batch Chemical Process by Genetic

Algorithm

Page 52: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

38

Table 6. Results of optimization variables from the best solution by Genetic

Algorithm

Equipment items Numbe

r[n]

Volume

[m3]

Fermenter (Fer)

3 8043.20

0

First Micro Filter

(Mf1)

1 9965.90

0 Homogenizer (Hom) 1 9675.30

0 Second Micro Filter

(Mf2)

1 6554.17

0 First Ultra Filter

(Uf1)

1 7539.28

0 Liquid Extractor

(Ext)

1 9888.00

0 Second Ultra Filter

(Uf2)

1 455.170

Chromatographic

Column (Chr)

1 4212.00

0

4. Conclusions

The problem of improvement design of processes with production in multi-

product batch involves the specification of the desired quantity of each product

and the total production time available. Market demand for such products within

the batch production systems is generally variable, and particularly in the design

stage of the process, it is almost impossible to obtain accurate information on

future demand to produce. Therefore, was presented an alternative treatment of

the imprecision of the demand by using a Fuzzy Logic.

Another significant advantage is that a Genetic Algorithm was adapted to solve

Improvement Batch Plant Design problems with high accuracy and faster.

According to the above investigation, we recommend to the decision maker the

configuration mentioned in Figure 5 and Table 6, because it gives us a good NPV,

with a low cost investment for the purchase of equipment, taking a major

advantage to fulfill the possibility if there is an increased demand in the future.

Furthermore, the results provided by the Genetic Algorithm performance are

better with respect to Monte Carlo Method (error=15%), as the Genetic Algorithm

(error=5%) is based on a strong mathematical model algorithm (Meta-heuristics

algorithm) with a well known structured objective function and constraints, and

the computing time is less than that of MC. This demonstrates the effectiveness of

GA in solving the complicated improvement batch plant design problem. In this

framework, the Genetic Algorithm gave us the sample efficiency and justifies its

factibility use for solving non-linear mathematical models with uncertain

parameters. Another advantage of GA is that it is simple in structure and is

Page 53: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

39

convenient for implementation, with no more complicated mathematical

calculation than such simple operators as encoding, decoding, testing constraints,

and computing values of objective. Finally, this framework provides an

interesting decision making approach to improve design multi-product batch

plants under conflicting goals.

Nomenclature a : Tax rate (0).

AP : Depreciation (M$/year).

Bis : Batch size for product i in batch stage s (kg).

dij : Power coefficient for processing time of product i in batch stage j.

Dik :Duty factor for product i in semi-continuous stage k (L/kg).

DP : Operation cost (M$/year).

CP : Unit price of production cost ($/kg).

Co : Unit price of operation cost ($/kg).

CE : Operating cost factors.

f : Working capital (M$).

gij : Coefficient for processing time of product i in batch stage j.

k : Index for semi-continuous stages.

K : Total number of semi-continuous stages.

Ks :Total number of semi-continuous stages in sub-process s.

mj : Number of parallel out-of-phase items in batch stage j.

M :Number of stages.

n : Number of periods.

nk : Number of parallel out-of-phase items in semi-continuous stage k.

pij : Processing time of product i in batch stage j (h).

pij0 : Constant for calculation of processing time of product i in batch stage j( h).

P : Number of products to be produced.

prodi : Global productivity for product i (kg/h).

prodlocis : Local productivity for product i in sub-process s (kg/h).

Qi :Demand for product i.

Rk : Processing rate for semi-continuous satge k (L/h).

Rkmax : Maximum feasible processing rate for semi-continuous stage k (L/h).

Rkmin : Minimum feasible processing rate for semi-continuous stage k (L/h).

S : Total number of sub-processes.

Sij : Size factor of product i in batch stage j (L/kg).

Sis : Size factor of product i in intermediate storage tanks (L/kg).

Tij : Cycling time of product i in batch stage j(h).

TisL : Limiting cycling time of product i in sub-process s(h).

Vj : Size of batch stage j (L).

Vjmax : Maximum feasible size of batch stage j (L).

Vjmin : Minimum feasible size of batch stage j (L).

Page 54: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

40

Vp : Revenue (M$/year).

Vs : Size of intermediate storage tank (L).

Greek letters

: Cost factor for batch stage j.

: Power cost coefficient for semi-continuous stage k.

: Power cost coefficient for intermediate storage.

: Operating time of product i in semi-continuous stage k.

References

Aguilar Lasserre, A. A, Azzaro-Pantel C, Pibouleau L, Domenech S. :

Modelisation des imprecisions de la demande en conception optimale

multicritère d’atelier discontinues.In: Proceedings of the SFGP (Sociètè Francias

de Gènie de procedes), Toulouse, France (2005).

Bautista MA. Modelo y software para la interpretación de cantidades difusas en

un problema de diseño de procesos .MBA thesis, Instituto Tecnológico de

Orizaba, México, 2007.

Berard, Stratègies de gestion de production dans un atelier flexible de chimie

fine. These de doctorate, INP ENSIGC Toulouse,France(2000).

Cameron, A Survey of industrial process modeling across the product and life

cycle. Computers & Chemical Engineering Volume 32,Issue 3,24 March 2008,

page420-438.

Cao DM, Yuan XG. Optimal design of batch plants with uncertain demands

considering switchover of operating modes of parallel units. Industrial

Engineering and Chemistry Research 2002; 41(18):4616–25.

Chunfeng Wang, Hongying Quan,and Xien Xu ., Optimal Design of

Multiproduct Batch Chemical process Using Genetic Algorithm. Ind. Eng. Chem.

Res. 1996, 35, 3560-3566.

Douglas Hubbard "How to Measure Anything: Finding the Value of Intangibles

in Business" p. 72, John Wiley & Sons, 2007

Floudas C.A., I.G. Akrotirianakis S, Caratzoulas, C.A. Meyer, J. Kallrath Global

Optimization in the 21st century: Advances and challenges. Computers &

Chemical Engineering volume 29, Issue 6, 15 May 2005, pages 1185.

j

k

s

ik

Page 55: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

41

Hasebe S.,Takeichiro Takamatsu, Iori Hashimoto Optimal scheduling and

minimum storage tank capacities in a process system with parallel batch units.

Computers & Chemical Engineering volume 3, Issues 1-4,1979 pages 185-195).

Henning, N, Charles, and piogott William, and Scott, Robert Haney, Financial

Markets and the economy 5th ed, new Jersey, 1988.

Holland, J, Adaptation in Natural and Artificial Systems, 1975. Oxford

University,Press

Huang HJ, Wang WF. Fuzzy decision-making design of chemical plant using

mixed-integer hybrid differential evolution. Computers and Chemical

Engineering 2002; 26(12):1649–60.

Karimi IA Modi AK,. Design of multiproduct batch processes with finite

intermediate storage.Computers and Chemical Engineering 1989;13(1-2):127-39.

Kaufmann, A., Gupta, M. M. Fuzzy mathematical models in engineering and

management s(1988). Science. North Holland.

Montagna, J. M., Vecchietti, A. R., Iribarren, O. A., Pinto, J. M., & Asenjom, J. A.

(2000). Optimal design of protein production plants with time and size factor

process models. Biotechnology Progress, 16, 228–237.

Ponsich A, Azzaro-Pantel C, Domenech S, Pibouleau. Some Guidelines for

Genetic Algorithm Implemenetation in MINLP Batch Plant Design Problems,

Ind. Eng. Chem. Res., 2007, 46 (3).

Zadeh LA. The concept of a linguistic variable and its application to approximate

reasoning.Information Sciences 1975;8(3):199–249.

Page 56: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

42

Page 57: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

43

Propuesta de una Metodología Generalizada para

el Diseño de Micro Algoritmos Bioinspirados

Juan C. Herrera-Lozada, Hiram Calvo, Hind Taud, Edgar A. Portilla-Flores

Resumen. En este trabajo se sugiere una metodología para diseñar algoritmos

bioinspirados que funcionen con una población de tamaño reducido, para resolver

problemas de optimización. Nuestra idea principal considera tres aspectos

fundamentales para generalizar la propuesta: una convergencia nominal, un

proceso de elitismo y un mecanismo de reinicialización del algoritmo. Para validar

los resultados se diseñó un algoritmo de evolución diferencial con una población

de sólo cinco individuos.

Palabras clave: Algoritmos bioinspirados, evolución diferencial, microalgoritmo,

optimización numérica

1 Introducción 1.1 Fundamentación básica 1.2 Trabajo previo 1.3 Trabajo previo 2

Propuesta generalizada de un microalgoritmo bioinspirado 3 Microalgoritmo de

evolución diferencial 4 Experimentos y resultados 5 Conclusiones y trabajos

futuros. Referencias

Page 58: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

44

1 Introducción

Los algoritmos evolutivos y bioinspirados han adquirido gran importancia

dentro del área de la inteligencia artificial, debido a que han demostrado ser

exitosos en la solución de ciertos problemas complejos de aprendizaje de

máquina, clasificación y optimización.1 Este tipo de técnicas son poblacionales, es

decir, utilizan una población de soluciones potenciales, lo que permite una

exploración amplia del espacio de búsqueda. La población se genera de manera

aleatoria y se somete a un proceso iterativo utilizando diferentes estrategias y

operadores de variación para mejorar las soluciones.

La simplicidad de un algoritmo es una de las tendencias actuales en el área de la

computación evolutiva, aunque en la mayoría de los casos se sacrifica el

desempeño en aras de un menor coste computacional.2,3 Debido a la

manipulación simultánea de un gran conjunto de soluciones, la ejecución de un

algoritmo requiere un espacio suficiente en la memoria de datos, además de un

tiempo de procesamiento generalmente elevado. Para reducir estos factores se

han diseñado algoritmos con poblaciones extremadamente pequeñas, los cuales,

en la mayoría de las aplicaciones abordadas, se desempeñan de manera similar a

los algoritmos de población estándar. No obstante que los microalgoritmos han

demostrado ser competitivos, el tamaño reducido de su población obliga a una

convergencia prematura derivada de una exploración limitada del espacio de

búsqueda, por lo que el número de individuos, así como los mecanismos para

mantener la diversidad son factores definitorios. Para demostrar cómo se utiliza

la metodología generalizada aquí propuesta, de la literatura especializada se

eligió el algoritmo de Evolución Diferencial (ED), el cual es muy representativo

en los algoritmos bioinspirados contemporáneos y conocido por su aplicación

sencilla y su eficiencia.

Fundamentación básica

El problema de la optimización global se establece como:

encontrar tal que optimice , en donde representa el vector de

soluciones y cada , tiene límites inferior y superior

.

Trabajo previo

Goldberg4 experimentó con un Algoritmo Genético (AG) simple, de

representación binaria, utilizando una población de sólo tres individuos, y afirmó

que éstos eran suficientes para asegurar la convergencia sin que importe el

x )(xfnx

Tnxxxx ,...,, 21ix ni ,...,1

iii UxL

Page 59: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

45

tamaño del cromosoma. En su trabajo, aplicó los operadores genéticos hasta

alcanzar una convergencia nominal conceptualizada como la generación en la

cual los individuos son muy similares o se alcanza cierto número predefinido de

iteraciones, obteniendo un nuevo individuo —el de mejor aptitud—, para

posteriormente generar de manera aleatoria los otros dos individuos que

completarán la nueva población. Krishnakumar5 diseñó un AG con una

población reducida a cinco individuos; a su algoritmo de representación binaria

lo llamó Microalgoritmo Genético (Micro-Genetic Algorithm). Al igual que

Goldberg, Krishnakumar utilizó el elitismo para preservar la mejor cadena

encontrada al término de la convergencia nominal, como uno de los individuos

obligatorios para la siguiente generación. Al comparar el desempeño del micro-

AG contra un AG simple con una población de 50 individuos, se obtuvieron

mejores resultados sobre funciones de un solo objetivo; además, se comprobó que

el AG de población reducida convergía más rápido.

Coello y Toscano6 diseñaron un micro- AG para resolver problemas de

optimización de múltiples objetivos, aportando criterios para el manejo de

restricciones de igualdad y desigualdad, además de proponer un esquema de

dominancia de pareto, con un posicionamiento geográfico para mantener la

diversidad y distribuir uniformemente las soluciones del frente de pareto. Este

algoritmo trabaja con una población de cuatro individuos y utiliza una memoria

secundaria que almacena las soluciones potenciales a lo largo de la búsqueda.

Recientemente, Fuentes y Coello7 diseñaron un microalgoritmo PSO (Particle

Swarm Optimization, Optimización por Cúmulo de Partículas) para resolver

problemas de optimización de un solo objetivo con manejo de restricciones.

Utilizan cinco partículas (individuos) y se apoyan en una convergencia nominal.

Fuentes,8 autor de este mismo algoritmo, hizo una extensión de su primera

propuesta y diseñó un microalgoritmo PSO para resolver problemas de

optimización multiobjetivo.

2 Propuesta generalizada de un microalgoritmo bioinspirado

Si se realiza una revisión de los trabajos anteriores, es posible encontrar

similitudes en el diseño de un algoritmo con un tamaño de población reducido:

1. Población de tres a cinco individuos.

2. Se requiere de una convergencia nominal y de un proceso de

reinicialización.

3. Es necesario considerar el elitismo para preservar, al menos, al mejor

individuo obtenido al término de la convergencia nominal.

Page 60: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

46

Otro punto en común de los diseños es que el microalgoritmo que se utiliza para

la optimización monoobjetivo puede adecuarse para manejar restricciones y para

la optimización con objetivos múltiples.9 Con base en lo que hemos expuesto

hasta aquí, presentamos el esquema general de la figura 1 para diseñar —o

adaptar, en su caso— un algoritmo estándar a un modelo de micropoblación. En

ella se aprecia que existen dos ciclos de funcionamiento: uno interno, que se

ejecutará mientras no se haya alcanzado la convergencia nominal, y uno externo,

que se efectuará hasta que se alcance el criterio de paro del algoritmo.

Fig. 1. Esquema general de un microalgoritmo bioinspirado.

Page 61: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

47

La metodología generalizada consta de tres partes fundamentales:

1. Definición del número de individuos de la población. Resulta evidente

que, dependiendo de la complejidad del problema a resolver, los ajustes en

el tamaño de la micropoblación serán necesarios; no obstante, para

cumplir con la metodología que proponemos, el número de cinco

individuos es asequible para resolver las funciones que se probaron

experimentalmente. En la generación inicial, los individuos de la población

se obtienen de manera aleatoria. Éstos se copian a la población de trabajo y

a la población inicial del ciclo interno del microalgoritmo (véase la figura

1). Durante el proceso de evolución, generación tras generación, la

población se mantendrá con un número estático, es decir, el tamaño de la

población no crece ni se disminuye de manera dinámica, aunque se debe

considerar la inclusión de individuos nuevos en cada generación, como se

mencionará posteriormente.

2. Definición del criterio de la convergencia nominal y aplicación de los

operadores y estrategias del algoritmo bioinspirado en su versión estándar. El

criterio más utilizado para la convergencia nominal es definir un número

de generaciones máximas a realizar; en este rubro, ejecutamos pruebas

funcionales que permitieron precisar que cinco generaciones son

suficientes para los experimentos con el microalgoritmo de Evolución

Diferencial. Cuando se alcanza la convergencia nominal, es necesario

llevar a cabo un proceso de reinicialización para conformar una nueva

población de trabajo. En el ciclo interno, controlado por la convergencia

nominal, se utilizan los operadores y estrategias particulares definidas

para el algoritmo bioinspirado en su versión estándar, siendo posible

aplicarlo sin cambios, o en otro caso, con aquellas modificaciones que

mejoren el desempeño del algoritmo respecto a un problema en particular.

Debido a que la calidad de las soluciones generadas al término de la

convergencia nominal depende de los operadores y de las estrategias

definidas por cada algoritmo estándar, el número de generaciones para

alcanzar la convergencia nominal seguramente será diferente al cambiar

del algoritmo de ED a algún otro algoritmo bioinspirado.

3. Aplicación del elitismo para garantizar la convergencia. Algunos de

los individuos obtenidos al término de la convergencia nominal —

generalmente los mejores, o al menos, el mejor (elitismo) con base en la

aptitud—deben ser copiados a la población de trabajo, la cual se completa

con individuos generados aleatoriamente —para mantener la diversidad—

, y se incrementa una generación más, en el ciclo externo, hasta que se

alcance la condición de paro del algoritmo. La determinación de cuántos

individuos deben ser copiados a la población de trabajo, como parte del

Page 62: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

48

elitismo, depende mucho de la naturaleza de los algoritmos bioinspirados

—respecto a los operadores y las estrategias internas—, además de que

éste garantiza la convergencia del microalgoritmo. En la particularidad de

esta propuesta y del algoritmo elegido para los experimentos, cuando se

alcanza la convergencia nominal en el ciclo interno, se copian los cuatro

mejores individuos —seleccionados mediante un ranking— a la nueva

población del ciclo externo para reinicializar todo el proceso.

3 Microalgoritmo de evolución diferencial

La Evolución Diferencial es un algoritmo evolutivo propuesto por Storn y Price10

para resolver problemas de optimización, en especial en espacios continuos, y en

el cual las variables se representan mediante números reales. Actualmente se ha

utilizado en problemas de alta complejidad con muy buenos resultados.11

En la ED se genera de forma aleatoria una población inicial de individuos

(vectores originales), de los cuales se seleccionan tres, también aleatoriamente,

que sean distintos entre sí. A cada uno de estos individuos se le denomina vector

objetivo y se denotan por r1, r2 y r3, en donde r3 es el vector base o principal.

Con ayuda de un operador especial (F) se realiza una combinación lineal con las

diferencias entre r1, r2 y r3, con la intención de generar nuevos vectores ruidosos.

A esta etapa se le conoce como mutación. F es entonces un factor que escala la

diferencia entre vectores. Posteriormente, se generan vectores de prueba a partir

de la recombinación de vectores ruidosos y vectores originales, lo que se logra

por medio de un parámetro denominado tasa de recombinación (CR). Para

finalizar el algoritmo, se procede a seleccionar el vector que se copiará a la

generación siguiente, comparando los vectores de prueba con los originales con

base en su aptitud.

La versión más común de la ED es la denominada DE/rand/1/bin; la cual se

abordó en este trabajo y se lista en la figura 2 (para más detalles, véase Mezura,

Velázquez y Coello).12 La cantidad de generaciones, el tamaño de la población y

los parámetros CR y F son definidos por el usuario.

Page 63: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

49

Fig. 2. Evolución Diferencial estándar, versión DE/rand/1/bin

La versión modular de este mismo algoritmo, con población reducida, se observa

en la figura 2. En nuestros experimentos con ED utilizamos una población de

cinco individuos porque se comprobó de manera funcional que con un menor

número de individuos se obtiene una convergencia prematura, y si se utilizan

más de cinco individuos los resultados no mejoran. Se determinó que el criterio

para alcanzar la convergencia nominal fuera al cabo de cinco generaciones,

refiriéndose al ciclo interno del algoritmo. En este rubro, también se realizaron

pruebas con diez generaciones, sin que se observara alguna mejoría en los

resultados.

Page 64: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

50

Fig. 3. Diagrama en bloques del micro algoritmo de ED.

En la generación cero, utilizando una población aleatoria de cinco individuos, se

procedió a copiarlos en la población de trabajo y en la población inicial —nótese

que para el ciclo interno, donde se aplica la convergencia nominal, el algoritmo

ED se lleva a cabo sin cambios de operadores y estrategias para evaluar la

metodología de manera básica. Al alcanzarse la convergencia nominal, es

necesario determinar cuántos individuos se copiarán a la población de trabajo y

aplicar el proceso de reinicialización. Después de una serie de experimentos, se

decidió copiar los cuatro mejores individuos y generar el restante de manera

aleatoria. Los experimentos realizados contemplaron respectivamente la copia de

uno, dos, tres y cuatro individuos con la mejor aptitud; sin embargo, con cuatro

individuos se obtuvieron los mejores resultados. En este microalgoritmo la

diversidad se mantiene gracias a las etapas de mutación y recombinación del

Page 65: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

51

propio algoritmo base de ED y al individuo aleatorio incorporado a la población

de trabajo.

4 Experimentos y resultados

Para los experimentos se utilizaron las siguientes funciones de alta

dimensionalidad (véase Mezura, Velázquez y Coello);12 f1 y f2 son funciones

unimodales y separables, f5 es una función multimodal y no separable.

f1 – Esfera de De Jong

(1)

-100 ≤ xi ≥ 100

min (f1 ) = f1 (0, <, 0) = 0

f2 – Función techo

(2)

-100 ≤ xi ≥ 100

min (f2 ) = f2 (0, <, 0) = 0

f5 – Función generalizada de Rosenbrock

(3)

-30 ≤ xi ≥ 30

min (f3 ) = f3 (1, <, 1) = 0

Las tres funciones fueron probadas en el microalgoritmo ED, con 20 ejecuciones

para cada una, de donde se obtuvieron los resultados que a continuación se

discutirán. Se definieron los parámetros indicados en el cuadro 1, sugeridos en

Mezura, Velázquez y Coello):12

Cuadro 1. Parámetros utilizados para el microalgoritmo de ED

Función CR F

f1 0.9

f2 0.0

f5 0.0

230

1

)()(

i

ixxf

2

30

1

)5.0()(

i

ixxf

29

1

222

1 )1()(100)(i

iii xxxxf

9.0,3.0

9.0,3.0

9.0,3.0

Page 66: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

52

En el cuadro 2 se indican las generaciones utilizadas para cada función, así como

los resultados experimentales alrededor del valor óptimo.

Cuadro 2. Veinte ejecuciones del microalgoritmo de ED

Función Ciclo

externo

Ciclo

interno

Mejo

r Peor Media

f1 300 5 0.0 0.006

4 0.00010

f2 200 5 0.0 1.0 0.20

f5 300 5 0.0 0.001

0 0.00012

En la figura 4 se aprecia el comportamiento del algoritmo de ED estándar, en su

versión DE/rand/1/bin, respecto a la aptitud, para f2. Se utilizó una población de

60 individuos, 1000 generaciones y los mismos valores de CR y F listados en el

cuadro 1.

Fig. 4. Aptitud para f2 con ED estándar.

Utilizando una población de 5 individuos y los parámetros indicados en la Tabla

2, se obtuvo la gráfica exhibida en la Figura 5, para f2 probada en el micro

algoritmo de ED.

Page 67: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

53

Fig. 5. Aptitud para f2 con microalgoritmo de ED.

Para las funciones experimentales, el desempeño del algoritmo de población

reducida es tan eficiente como el del algoritmo en su versión estándar. La

cantidad de evaluaciones aplicadas a la función objetivo es similar, considerando

el ciclo interno del microalgoritmo.

5 Conclusiones y trabajos futuros

En este artículo se presentó una metodología generalizada que permite diseñar —

o en su caso, adaptar— un algoritmo bioinspirado para que funcione con una

población de tamaño reducido. Los elementos principales en esta metodología

consisten en incorporar una convergencia nominal que se alcance después de un

número fijo de iteraciones, un elitismo que preserve al mejor o mejores

individuos encontrados al término de la convergencia nominal y un criterio para

incorporarlos como parte de una nueva población al momento de reinicializar el

algoritmo. Mantener la diversidad es uno de los mayores retos en los

microalgoritmos, por lo que en este trabajo se aportaron algunos criterios para

cumplir con este requisito.

El microalgoritmo de ED —en su versión DE/rand/1/bin)— generó buenos

resultados con base en la metodología aplicada. En los resultados experimentales

se obtuvo el óptimo para las tres funciones de prueba de alta dimensionalidad, lo

que resulta alentador para continuar con la investigación. Es posible afirmar que

el desempeño del microalgoritmo de ED es tan bueno como el de su contraparte

estándar, aunque con menores requerimientos de espacio en la memoria de

datos, lo que permite enfocar el diseño hacia aplicaciones con un bajo costo

computacional o en circuitos embebidos —por ejemplo, en dispositivos de lógica

programable y en microcontroladores convencionales—, refiriéndose al

denominado hardware evolutivo. El manejo de espacios restringidos y la

optimización con múltiples objetivos se pueden incorporar al esquema básico

Page 68: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

54

planteado. Seguramente éste será un trabajo futuro, al igual que la exploración de

la adaptación de otros algoritmos bioinspirados comunes en la resolución de

problemas de optimización.

Referencias

1. Ashlock, D., Evolutionary Computation for Modeling and Optimization,

Springer-Verlag, Nueva York, 2005.

2. Munetomo, M. y Y. Satake, ‚Enhancing Model-Building Efficiency in

Extended Compact Genetic Algorithms. Systems, Man and Cybernetics, 2006‛,

ICSMC ’06, IEEE International Conference, vol. 3, 8-11 de octubre de 2006, pp.

2362-2367.

3. Torresen, J., ‚Possibilities and Limitations of Applying Evolvable

Hardware to Real-World Application‛, en R. W. Hartenstein et al. (eds.),

Lecture Notes in Computer, vol. 1896 (Field-Programmable Logic and

Applications: 10th International Conference on Field Programmable Logic and

Applications, FPL-2000), Springer-Science, Heidelberg, 2000, pp. 230-239.

4. Goldberg, D. E., Genetic Algorithms in Search, Optimization and Machine

Learning, Addison Wesley, Reading, MA, 1989.

5. Krishnakumar, K., ‚Micro-Genetic Algorithms for Stationary and Non-

Stationary Function Optimization‛, en SPIE Proceedings: Intelligent Control and

Adaptive systems, 1989, pp. 289-296.

6. G. Toscano, Carlos y A. Coello, ‚A Micro-Genetic Algorithm for

Multiobjective Optimization‛, en Lecture Notes in Computer Science, vol. 1993

(First International Conference on Evolutionary Multi-criterion Optimization),

Springer-Verlag, Neva York, 2001, pp. 126-140.

7. Fuentes, J. C. y C. A. Coello, ‚Handling Constraints in Particle Swarm

Optimization Using a Small Population Size‛, en Lecture Notes in Computer

Science (MICAI 2007: Advances in Artificial Intelligence), vol. 4827, Springer-

Verlag, Nueva York, 2007.

8. Fuentes, J. C., Un nuevo algoritmo de optimización basado en optimización

mediante cúmulos de partículas utilizando tamaños de población pequeños, tesis de

maestría, CINVESTAV-IPN, México, 2008.

9. Bäck, T., D. B. Fogel y Z. Michalewicz (eds.), Handbook of Evolutionary

Computation, Institute of Physics Publishing and Oxford University Press,

Nueva York, 1997.

10. Storn, R. y K. Price, ‚Differential Evolution: A Simple and Efficient

Adaptive Scheme for Global Optimization over Continuous Spaces‛, reporte

técnico (TR-95-012), ICSI, marzo de 1995. En Internet (ftp.icsi.berkeley.edu),

página consultada el 20 de junio de 2009.

Page 69: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

55

11. Mezura, E., E. A. Portilla, C. A. Coello, J. [lvarez, C y A. Cruz Villar, ‚An

Evolutionary Approach to Solve a Novel Mechatronic Multiobjective

Optimization Problem‛, Advances in Metaheuristics for Hard Optimization, 2008,

pp. 329-351.

12. Mezura, E., J. Vel{zquez y C. A. Coello, ‚A Comparative Study of

Differential Evolution Variants for Global Optimization‛, GECCO, ACM, 2006,

pp. 485-492.

Page 70: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

56

Page 71: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

57

Estudio de Tres Algoritmos Heurísticos para

Resolver un Problema de Distribución con

Ventanas de Tiempo: Sistema por Colonia de

Hormigas, Búsqueda Tabú y Heurístico

Constructivo de una Ruta

Manuel González de la Rosa, Norma Martínez Urbano, Venancio García González,

Roberto Alejo Eleuterio

Resumen. En este trabajo se presenta la aplicación y comparación, respecto al

número mínimo de rutas construidas, de tres algoritmos heurísticos: sistema por

colonia de hormigas, búsqueda tabú y heurístico constructivo de una ruta, para

un problema de logística de distribución con ventanas de tiempo que debe

resolver diariamente una empresa embotelladora. La empresa debe enviar el

producto terminado, en cargas completas de camión, a sus almacenes de

distribución que tienen ventanas de tiempo para la recepción de la carga. Cada

almacén tiene asociada una demanda que puede expresarse en número de cargas

y debe ser satisfecha diariamente en su totalidad. La solución al problema es un

conjunto de rutas que satisfacen la demanda. Los experimentos realizados con

problemas de prueba en una computadora portátil muestran que el algoritmo del

sistema por colonia de hormigas proporciona mejores soluciones que los otros

dos algoritmos heurísticos.

Palabras clave: heurísticos, búsqueda tabú, sistema por colonia de hormigas,

logística de distribución, optimización combinatoria, NP-Completo.

1 Introducción 2 El algoritmo heurístico constructivo de una ruta 3 El

algoritmo de búsqueda tabú 4 El algoritmo de sistema por colonia de hormigas

5 Experiencia computacional Conclusiones. Referencias

1 Introducción

En los últimos años, ha cobrado relevancia el incremento de la competitividad de

las empresas, y en particular, de sus actividades logísticas de distribución. Para

que una empresa sea competitiva, debe enfocar correctamente su estrategia

logística de distribución para abastecer el producto adecuado, en el momento

adecuado, al precio adecuado, en las mejores condiciones y cantidades que el

cliente solicite. Esta importancia logística ha motivado a investigadores y

compañías privadas a aplicar técnicas de optimización para desarrollar políticas

Page 72: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

58

que buscan incrementar la eficiencia en la planeación de la distribución y obtener

ventajas competitivas. Una de las estrategias utilizadas con mayor frecuencia es

el uso de algoritmos heurísticos para la solución de problemas de optimización

combinatoria en el transporte de productos terminados.

El problema en estudio se origina en una empresa embotelladora de la ciudad de

Toluca. La empresa debe entregar diariamente su producto terminado a 12

almacenes regionales. La demanda de cada almacén se conoce con anticipación,

ya que la empresa maneja una política de preventa. La demanda se satisface

mediante camiones que son cargados en su totalidad, por lo que no es necesario

decidir sobre la mezcla de productos ni la consolidación de la carga. El producto

a distribuir se empaca en palets, en los almacenes regionales el producto se separa

y se distribuye a las tiendas minoristas donde acude el consumidor final, lo que

implica decidir políticas de ruteo de vehículos que no forman parte del problema

de investigación. Ya que se trata de un problema de distribución de bebidas

embotelladas, la demanda cambia día con día y semana tras semana, de acuerdo

con la estación del año. Cada almacén tiene ventanas de tiempo para la recepción

del producto, fuera de estas ventanas no es posible atender la entrega. Las

ventanas de tiempo, los tiempos de recorrido desde la planta hasta cada almacén,

así como los tiempos de descarga son conocidos y constantes, ya que no cambian

de un día para otro. Se requieren 20 minutos para cargar un camión en la planta y

sólo puede cargarse uno a la vez; esta condición requiere de una estrategia

adecuada de secuenciación. No se realiza ruteo porque un camión se carga con

palets en la planta embotelladora, viaja al almacén, se descarga y regresa a la

planta para otra posible entrega. De acuerdo con lo anterior, debe construirse un

plan de distribución que considere dos tipos de decisiones:

a) Decidir el conjunto de almacenes que debe atender cada ruta construida.

b) Decidir el orden en que deben cargarse los camiones en la planta.

Al considerar los dos tipos de decisiones, debe analizarse la restricción de

ventanas de tiempo. El problema tiene similitudes con diversos problemas de

transporte, tales como el SDVSP (Single Depot Vehicle Scheduling Problem), el

SPPTW (Shortest Path Problem with Time Windows), el TSPTW (Traveling Salesman

Problem with Time Windows). Para resolver el SDVSP, se han propuesto diversas

estrategias, una de las más exitosas ha sido la propuesta por Desrosiers, Dumas,

Solomon y Soumis,4 la cual utiliza un modelo basado en flujo en redes. Esta

estrategia puede aplicarse a este problema de investigación porque modifica los

arcos entre un almacén y otro e incluye el regreso a la planta. El SPPTW ha

demostrado ser de complejidad computacional NP-Difícil2 y aparece como un

subproblema al construir un conjunto de nodos de decisión en el tiempo y formar

arcos de espera y arcos de entrega. Los arcos de espera tendrán un costo mayor

Page 73: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

59

que los arcos de entrega porque se desea minimizar el tiempo ocioso en cada

ruta. El TSPTW se caracteriza por ser una extensión de uno de los problemas

combinatorios más estudiados, el TSP (Traveling Salesman Problem), porque

incluye ventanas de tiempo. Al estudiarlo, se aprecia la creciente complejidad

computacional que depende de la amplitud de las ventanas de tiempo. Las

técnicas de reducción de ventanas de tiempo y eliminación de arcos3 que han sido

propuestas pueden aplicarse al problema de estudio.

El problema de investigación posee características de secuenciación, manejo de

ventanas de tiempo y optimización de recursos limitados y es de complejidad

computacional NP-Completo.9 En investigaciones previas se han diseñado

estrategias heurísticas para su solución, entre éstas es posible mencionar el

algoritmo heurístico constructivo de una ruta (HC1-R),9 el de recocido simulado

(Simulated Annealing),7 el de la búsqueda tabú (BT o Tabu Search)8 y el sistema por

colonia de hormigas (SPCH o Ant Colony System).10

La estrategia de solución descrita por González de la Rosa y Gaytán Iniestra9

consiste en modelar el problema utilizando intervalos de tiempo de 20 minutos,

los cuales corresponden al periodo de carga en la planta. Estos intervalos de

tiempo están definidos por un instante de decisión inicial y un instante final. Para

un horizonte de planeación de 24 horas se tiene un total de 72 instantes o nodos

de decisión. De acuerdo con los tiempos de viaje de ida, el tiempo de descarga, el

tiempo de regreso a la planta y las ventanas de tiempo en cada almacén, se

calculan el nodo inicial y el nodo de regreso para cada posible entrega. De esta

forma, se construyen para cada almacén y para cada nodo de decisión los arcos

de entrega que representan todas las alternativas factibles para las ventanas de

tiempo. Los arcos de entrega tienen duraciones diferentes que dependen de los

tiempos de viaje hacia cada almacén.

Los arcos de espera tienen una duración fija de 20 minutos. Cuando se

consideran los arcos de entrega para todos los almacenes, los arcos de espera y

los nodos de decisión, es posible representar el proceso de decisión con el fin de

construir una ruta mediante una red, la cual se muestra en la figura 1. Nótese que

se tienen el costo CB y los periodos de carga de 20 minutos PB asociados a cada

arco.

Page 74: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

60

Fig. 1. Grafo que modela la red de decisión para construir una ruta.

Una solución al problema de distribución está formada por un conjunto de rutas

que satisfacen todas y cada una de las demandas asociadas a cada almacén. Una

ruta es una secuencia de entregas realizadas por un camión en un intervalo de 24

horas; se describe por medio de un subconjunto de arcos de entrega y arcos de

espera. Al aplicar la estrategia anterior, todos los arcos de entrega son factibles

respecto a las restricciones de ventanas de tiempo y la duración del plan de

distribución de 24 horas y quedan pendientes por satisfacer las restricciones de

demanda para cada almacén, de secuenciación de carga en la planta y

secuenciación dentro de cada ruta. La función objetivo del problema es satisfacer

la demanda con el número mínimo de rutas.

Todos los posibles arcos de entrega, para cada almacén y para cada nodo de

decisión, forman una lista que se muestra parcialmente en el cuadro 1. La lista se

utiliza como base para formar el espacio de búsqueda y construir las rutas. Cada

nodo de decisión está codificado en minutos, por lo que el nodo 0 corresponde a

las 24:00 horas. En González de la Rosa y Gaytán Iniestra,9 se resuelve el

problema utilizando un modelo de flujo en redes con variables binarias,

aplicando un algoritmo basado en ramificar y acotar, usando CPLEX 8.0 en una

computadora PC con procesador Pentium 4 y 512 Mb en la memoria RAM. Ya

que el problema es NP-Completo, declarar la solución óptima para las instancias

difíciles puede consumir varias horas e incluso días de tiempo de cómputo, y por

tratarse de una planeación que debe realizarse diariamente, hace poco práctica la

aplicación de un algoritmo exacto para declarar una solución óptima.

Page 75: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

61

Cuadro 1. Lista parcial de los arcos de entrega para cada nodo de envío

Nodo de envío

Nodo de regreso

Almacén

-140 200 9

-120 240 7

-120 220 9

-100 260 7

-100 240 9

-100 160 11

-80 160 6

-80 280 7

-80 140 8

-80 260 9

-80 140 10

-80 180 11

-60 180 6

-60 300 7

-60 160 8

La experiencia computacional con problemas de prueba construidos —es decir,

cuando se reproduce la demanda de forma aleatoria— muestra que el algoritmo

basado en el sistema por colonia de hormigas proporciona mejores soluciones

porque reporta un menor número de rutas.

2 El algoritmo heurístico constructivo de una ruta

El algoritmo heurístico constructivo de una ruta (HC1-R)9 construye de forma

consecutiva, a partir de la lista de arcos de entrega, un conjunto de rutas que

satisfacen la demanda de cada almacén, considerando una ruta para cada camión

k. Para obtener el mínimo de rutas en una solución, cada una debe llenarse con el

mayor número de arcos de entrega o con el mínimo de arcos de espera. El

algoritmo HC1-R aplica una estrategia de descomposición, ya que cada ruta es

vista como un problema combinatorio del tipo mochila, con una capacidad P de

72 periodos. Para construir una ruta, el algoritmo HC1-R incluye sólo un arco de

entrega a la vez, hasta completar la capacidad de la ruta P. Los arcos de la ruta

deben ser factibles respecto al orden de carga en la planta y a la secuencia de

entregas de la misma ruta. Al incluir un arco de entrega en una ruta, debe

resolverse una serie de subproblemas cuyas alternativas se calculan para cada

estado de decisión y forman el subconjunto M de arcos de entrega. Si la demanda

de cada almacén no ha sido satisfecha, el algoritmo abre otra ruta y repite el

proceso hasta completar el total de entregas D a todos los almacenes. La función

objetivo utilizada tiene la forma siguiente:

Page 76: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

62

(1)

Donde K es el conjunto de rutas construidas y que forma una solución, Fk es el

costo fijo de utilizar una ruta y Yk es una variable binaria que indica la utilización

de la ruta k. El algoritmo HC1-R realiza el siguiente proceso:

Inicio Comienza con una demanda satisfecha igual

a 0; no se ha construido ninguna ruta.

Paso 1 Se incluye un arco de entrega. El

subproblema consiste en elegir el arco de

entrega que debe incluirse en la ruta para el

almacén l con demanda remanente drl > 0. Se

calcula el conjunto de alternativas M y los

costos para cada arco de entrega.

Paso 2 Se evalúa cada alternativa considerando el

orden en el cual los arcos de entrega se

incluyen en la ruta, por la condición de

secuenciación en la planta embotelladora y

dentro de la ruta. Para evaluar cada

alternativa, se consideran los subconjuntos

de arcos de entrega ya incluidos en la ruta.

Por ejemplo, si una ruta k ya incluye envíos

a los siguientes almacenes {a, b, c}, y se desea

incluir el arco {f}, los subconjuntos

considerados son {(f,a,b,d), (a,f,b,c), (a,b,f,c),

(a,b,c,f)}. Obsérvese que los subconjuntos

crecen rápidamente conforme hay más

entregas en la ruta.

Paso 3 Se elige la mejor alternativa considerando el

costo mínimo y se actualizan la demanda

satisfecha, la demanda remanente y los arcos

de entrega en la ruta k. Si no es posible

incluir más arcos en la ruta debido a espacio

insuficiente o a la secuenciación dentro de la

ruta, ésta se cierra, se abre una nueva ruta

vacía y se continúa con el paso 1. Si la ruta

no se ha cerrado, se regresa al paso 1.

Si la demanda total D de todos los

almacenes ha sido satisfecha, el algoritmo

termina y se reportan todas las rutas

construidas.

Kk

kkYFMin

Page 77: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

63

3 El algoritmo de búsqueda tabú

El algoritmo búsqueda tabú (BT)11 es metaheurístico y está basado en la búsqueda

local; utiliza una estructura de memoria llamada ‚lista tabú‛, la cual permite salir

de óptimos locales para alcanzar un óptimo global. Este algoritmo ha sido

atribuido a Fred Glover, quien, en 1986, dijo:1

Es mejor una mala decisión basada en información, que una buena

decisión al azar, ya que, en un sistema que emplea memoria, una mala

elección basada en una estrategia proporcionará claves útiles para

continuar la búsqueda. Una buena elección fruto del azar no

proporcionará ninguna información para posteriores acciones.

Un movimiento es una perturbación que se aplica a la solución actual para

encontrar una nueva solución que comparte algunas de sus propiedades. Al

aplicar una serie de movimientos a la solución actual, se construye un conjunto

de soluciones vecinas sobre las cuales se realiza la búsqueda local. El algoritmo

BT se basa en la prohibición de movimientos que empeoran la solución actual.1 A

partir de los arcos de entrega y los arcos de espera, el algoritmo de búsqueda

tabú sigue los siguientes pasos:

Inicio Se construye una solución inicial

llamada S0.

Paso 1 Se genera un conjunto de

soluciones vecinas N(S0)

mediante la función generadora

de vecinos; estas soluciones

comparten propiedades

similares.

Paso 2 Se evalúa la función objetivo (1)

para el conjunto de soluciones

vecinas, N(S0).

Paso 3 Se actualiza la mejor solución

encontrada.

Paso 4 Se actualiza la lista tabú,

formada por movimientos

Page 78: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

64

‚prohibidos‛, ya sea porque

produce soluciones no factibles

o soluciones peores respecto al

valor de la función objetivo.

Paso 5 Se aplica el criterio de

terminación, y en su caso, se

continúa con el paso 1.

Para llevar a cabo el algoritmo de búsqueda tabú, se establecen las siguientes

estrategias:8 para obtener una solución inicial S0, se elige el nodo de decisión

mínimo k disponible en la planta, el cual sirve para construir la primera ruta;

considerando el nodo de regreso de cada arco de entrega, se elije un nuevo arco

de entrega hasta agotar el horizonte de planeación, lo cual produce una nueva

ruta. Si las demandas de los almacenes aún no están satisfechas, se toma el

siguiente nodo de decisión mínimo no utilizado en la posición k + 1 para crear la

siguiente ruta, y esto se repite hasta satisfacer el total de demandas de los

almacenes.

El segundo paso es la creación del conjunto de soluciones vecinas N(S0). La

función generadora de vecinos aplica un movimiento llamado ‚intercambio de

un arco de la solución por un arco libre‛ (IASPAL), que consiste en intercambiar

aleatoriamente un arco de la solución en alguna ruta por otro que no haya sido

utilizado y que no se encuentre en la lista tabú (LT). Este arco se incorpora a una

ruta, siempre y cuando cumpla con las condiciones de secuencia de carga en

planta y secuencia dentro de la ruta, que no haya sido elegido con anterioridad y

que al almacén al que va dirigido sea el mismo. Para el manejo de la LT, se

guardan los últimos t movimientos realizados, lo cual dirige la búsqueda global.

Los valores de t son diferentes en cada instancia y oscilan de 3 a 18.

El criterio de intensificación consiste en combinar las mejores rutas dentro de una

solución; en especial, en aquellas que tienen sólo uno o dos arcos de entrega.

Después de un número determinado de iteraciones, se reporta la mejor solución

encontrada hasta el momento. La ejecución del algoritmo BT se realizó con 1 000

iteraciones.

4 El algoritmo de sistema por colonia de hormigas

Las investigaciones recientes sobre algoritmos han tomado como inspiración el

comportamiento de insectos que viven en colonias, tales como termitas,

hormigas, abejas, etcétera, para resolver problemas combinatorios diversos. Este

conocimiento ha sido aplicado en el desarrollo de algoritmos heurísticos nuevos,

como los de optimización, basados en colonias de hormigas (ACO, Ant Colony

Page 79: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

65

Optimization).5 Un requisito para la aplicación de estos algoritmos es que el

problema pueda representarse por medio de un grafo formado por nodos y arcos.

Cada nodo representa un estado de decisión y los arcos representan alternativas

de solución que tienen asociados dos tipos de información, cuya finalidad es

ij

es la información heurística que incluye la preferencia de moverse de un nodo i a

un nodo j ij representa el

rastro de feromona que depositan las hormigas en el ambiente, modela lo

deseable de una alternativa y guía el comportamiento de búsqueda de la hormiga

artificial. El rastro de feromona es un valor numérico que cambia durante la

ejecución del algoritmo y depende de la calidad de las soluciones encontradas. En

esta investigación se presenta una variante del algoritmo ACO llamada ‚sistema

por colonia de hormigas‛ (SPCH), variante que actualiza la feromona de dos

formas: una vez que las m hormigas artificiales han terminado su recorrido por el

grafo, la cantidad de feromona se actualiza y, posteriormente, se hace una

actualización global de la feromona. El valor de m varía de acuerdo con la

instancia utilizada, con el fin de encontrar buenas soluciones de forma rápida;

este valor oscila entre 30 y 90 hormigas. Los valores cercanos a 30 se utilizan para

instancias con demandas menores y los valores cercanos a 90 para instancias con

demandas mayores.

Del modelo propuesto por González de la Rosa y Gaytán Iniestra,9 se utilizan los

nodos de decisión, los arcos de entrega y los arcos de espera por cada hormiga

artificial (véase la figura 1). A cada arco se le asocia un valor inicial que

ij sobre el arco (i, j). Cada hormiga

construye una ruta, y mientras construye su recorrido, la hormiga modifica los

rastros de feromona sobre los arcos de entrega elegidos, lo que constituye una

actualización local de feromona. La hormiga artificial k, situada en el nodo r,

escoge el siguiente nodo s que no pertenece a su memoria de arcos ya utilizados

Mk aplicando la política de decisión mostrada en la ecuación 2,6 donde τij es la

cantidad de feromona sobre el arco (i, j); y ηij = 1/dij; dij son los periodos de espera

en la ruta. Ya que las mejores rutas son las que incluyen una mayor cantidad de

arcos de entrega, la función objetivo (1) se modifica en este algoritmo para

minimizar los arcos de espera incluidos en una ruta. α y β son par{metros

mayores a 1, es un valor aleatorio [0, 1], Jk es el conjunto de nodos a ser

visitados por la hormiga k y S es una variable aleatoria seleccionada de acuerdo

con la ecuación 2.

(2)

q

nexploraci— o

q q si caso otroen

nexplotaci— o

q q si ]][ij

[ max arg

S

kJi

ij

s

Page 80: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

66

Cuando q < q0, la hormiga artificial sigue los rastros de feromona depositados por

las hormigas anteriores, y cuando q ≥ q0, se permite la evaluación de opciones

nuevas utilizando el valor de Pij en (3). Una vez que se elige la mejor alternativa,

la hormiga viaja a través de este arco y llega a un nuevo nodo de decisión en el

cual el proceso se repite hasta que el horizonte de planeación de 24 horas se

agota.

(3)

De esta forma, cada hormiga construye el recorrido que realiza un camión

ij, está dada por los

arcos de espera en la ruta durante el horizonte de planeación. Si el valor de

feromona del arco correspondiente es alto, Pij tendrá más posibilidades de ser

elegido. En el proceso de construcción, las hormigas artificiales usan los rastros

de feromona dejados por otras hormigas. El rastro artificial de feromona tiene un

o = 0.0001 y es un valor numérico entre 0 y 1.

La actualización de feromona se realiza de dos formas: primero, se hace una

actualización local una vez que la hormiga k termina de hacer su recorrido por la

red de decisión y se actualizan solamente los arcos utilizados por esta hormiga; la

ij se lleva a cabo mediante la ecuación (4), ρ es un

parámetro con valores entre [0, 1].

(4)

Donde τ0 = 1/ nLnn, n es el número de nodos y Lnn representa el costo de la ruta.

La segunda actualización de feromona es global y para ello se usa la ecuación (5).

Esta actualización se realiza una vez que se ha obtenido una solución y considera

a la hormiga artificial que incluyó la menor cantidad de arcos de espera durante

el horizonte de planeación. Sólo se actualizan los valores de feromona de los

arcos que fueron utilizados por esta hormiga.

(5)

caso otroen 0

j)(i, si .

.kM

Pl

ilil

ijij

ij

oijij )1(

ijijij )1(

Page 81: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

67

La notación es como sigue: Δτij = 1/Lgb, Lgb es el costo de la mejor solución

encontrada y δ es el par{metro de evaporación 0< δ < 1. El algoritmo se puede

dividir en tres procedimientos principales, la construcción de la solución, la

actualización de feromona y la evaluación de la solución. Para construir una

solución se crean las hormigas artificiales, cada una puede visitar los nodos de la

red de decisión eligiendo el siguiente nodo a visitar según la ecuación (2). El

procedimiento de actualización de feromona se realiza en los arcos donde se

incrementa el depósito de feromona o se reduce por la evaporación, lo que evita

estancarse en un óptimo local. La evaluación de la solución verifica si la solución

encontrada es válida y si es mejor que la que se haya encontrado anteriormente.

En estos dos últimos procedimientos se busca cumplir con las restricciones del

problema.

5 Experiencia computacional

Para evaluar el desempeño de los algoritmos que se han propuesto, se utilizó un

total de 38 instancias de prueba que fueron construidas por González de la Rosa

y Gaytán Iniestra,9 al variar aleatoriamente la demanda D de cada centro de

distribución y dejando fijos los demás datos, tales como las ventanas de tiempo,

los tiempos de viaje, los tiempos de carga y los tiempos de descarga.

Las rutas construidas para cada instancia de prueba y por cada algoritmo se

muestran en el cuadro 2. Puesto que el problema de investigación es de

complejidad computacional NP-Completo,9 conforme crece la demanda a

satisfacer, crece también la naturaleza combinatoria del problema, haciendo más

difícil encontrar soluciones cercanas al óptimo. Al comparar el algoritmo HC1-R

con el algoritmo de búsqueda tabú, tenemos que en 15 instancias de prueba el

algoritmo de búsqueda tabú construye una ruta más; igualando al algoritmo

HC1-R en 16 instancias de prueba y mejorando los resultados del HC1-R con dos

rutas menos en sólo una instancia. Respecto a los algoritmos HC1-R y el de

sistema por colonia de hormigas, en 14 instancias de prueba este último aventaja

al HC1-R porque construye una ruta menos y ambos tienen un desempeño

similar en 22 instancias de prueba. En general, cuando se consideran las 38

instancias de prueba, el algoritmo de sistema por colonia de hormigas construye

un total de 327 rutas, HC1-R construye un total de 345 rutas y el de búsqueda

tabú 368. Los algoritmos fueron programados en lenguaje de programación C++

en una computadora portátil con procesador AMD Sempron a 1.4 Ghz, 1Gb

RAM. La ejecución de cada algoritmo se realizó bajo el sistema operativo

Windows XP sin otras aplicaciones abiertas. Los tiempos reales de ejecución

oscilan entre 2 y 4 minutos para cada instancia. Una comparación gráfica de los

algoritmos respecto al número de rutas construidas se muestra en la figura 2, en

Page 82: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

68

la cual se aprecia un comportamiento similar de los tres algoritmos para

demandas menores a 38.

Cuadro 2. Rutas construidas por cada algoritmo

Número de rutas Número de rutas

Deman

-da

HC1

R

BT SPC

H

Deman

-da

HC1

R

BT SPC

H

20 5 5 4 41 9 10 8

20 5 5 4 41 8 9 8

23 5 5 5 42 11 11 10

24 5 5 5 44 11 12 10

26 6 6 6 44 10 11 10

29 6 7 6 44 9 10 9

32 7 7 7 44 10 11 9

32 8 8 7 44 9 10 9

33 8 8 7 45 11 11 10

34 8 8 7 46 12 13 11

35 8 8 8 46 10 11 10

36 8 8 7 46 10 11 10

38 9 10 9 47 9 11 9

38 8 10 8 49 10 12 10

39 8 9 8 50 10 12 10

39 9 9 9 51 10 11 10

40 8 9 8 53 15 13 13

40 10 10 9 57 12 14 12

41 10 10 9 64 18 18 16

Para demandas mayores, el algoritmo de sistema por colonia de hormigas

construye un menor número de rutas, por lo que es posible concluir que

proporciona un mejor desempeño.

Page 83: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

69

Fig. 2. Número de rutas construidas con los algoritmos HC1-R, búsqueda tabú y

sistema por colonia de hormigas, para instancias de prueba con demanda

creciente.

Conclusiones

Esta investigación compara los resultados obtenidos por tres algoritmos

heurísticos para un problema de logística de distribución con complejidad

computacional NP-Completo. La evidencia experimental muestra que el

algoritmo de sistema por colonia de hormigas proporciona mejores resultados

que los algoritmos heurísticos HC1-R y de búsqueda tabú. La estrategia seguida

por el algoritmo de sistema por colonia de hormigas para construir una ruta y

resolver el problema de estudio considera nodos de decisión en el tiempo, arcos

de actividad y la penalización de la inclusión de arcos de espera en la evaluación

de alternativas, de esta manera se explotan adecuadamente los principios que

fundamentan a la familia de algoritmos ACO para encontrar la ruta más corta

entre dos nodos. La estrategia fundamental del algoritmo HC1-R es insertar un

arco de entrega adicional en una ruta a la vez; sin embargo, la naturaleza

combinatoria del problema sugiere que se construya en forma paralela k rutas a la

vez, lo que implica un mayor esfuerzo de análisis y evaluación. Esta estrategia de

inserción paralela puede aplicarse en la función generadora de vecinos y

enriquecer el proceso de generación y búsqueda. El desempeño del algoritmo de

búsqueda tabú es sensible a la calidad de la solución inicial, la función

generadora de vecinos, la longitud de la lista tabú y los criterios de aspiración e

intensificación, los cuales proporcionan una vasta riqueza de posibilidades que

sugieren una investigación más extensa. Los algoritmos utilizados en esta

investigación, además de proporcionar soluciones con el mínimo de rutas,

encuentran soluciones casi óptimas de forma rápida, con tiempos de ejecución de

2 a 4 minutos, lo que permite proponer oportunamente un plan de distribución al

Page 84: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

70

personal de la planta embotelladora. Las estrategias de solución que aquí se han

presentado consideran un horizonte de planeación de 24 horas que puede

extenderse a 48 o 72 horas, lo cual hace al problema combinatoriamente más rico

y difícil de resolver. El problema de estudio también puede modelarse aplicando

la optimización de flujo en redes, lo que extendería aún más esta investigación.

Referencias

1. Arts, E. y J. Karel Lenstra, Local Search in Combinatorial Optimization,

Princeton University Press, Nueva Jersey, 2003.

2. Desrochers, M. y F. Soumis, ‚A Reoptimization Algorithm for the Shortest

Path Problem with Time Windows‛, European Journal of Operational Research,

vol. 35, núm. 2, 1988, pp. 242-254.

3. Desrochers, M., J. Desrosiers y M. Solomon, ‚A New Optimization

Algorithm for the Vehicle Routing Problem with Time Windows‛, European

Journal of Operational Research, vol. 40, núm. 2, 1992, pp. 342-354.

4. Desrosiers, J., Y. Dumas, M. Solomon y F. Soumis, ‚Time Constrained

Routing and Scheduling‛, en M. O. Ball, T. L. Magnanti, C. L. Monma y G. L.

Nemhauser (eds.), Handbooks in Operations Research and Management Science,

vol. 8, Network Routing, 1995, pp. 35-139.

5. Dorigo, M., G. Di Caro, y L. M. Gambardella, ‚Ant Algorithms for Discrete

Optimization‛, Artificial Life, vol. 5, núm. 2, 1999, pp. 137-172.

6. Dorigo, M. y L. M. Gambardella, ‚Ant Colonies for the Traveling

Salesman Problem‛, Biosystems, vol. 43, núm. 2, 1997, pp. 73-81.

7. González de la Rosa, M. y R. Cruz Cruz, Implementación del algoritmo

heurístico recocido simulado para un problema de optimización combinatoria de

logística de distribución, tesis de licenciatura, Centro Universitario

Atlacomulco-Universidad Autónoma del Estado de México, México, 2009.

8. González de la Rosa, M. y V. García González, Implementación del algoritmo

heurístico búsqueda tabú para un problema de optimización combinatoria de

logística de distribución, tesis de licenciatura, Centro Universitario

Atlacomulco-Universidad Autónoma del Estado de México, México, 2009.

9. González de la Rosa, M. y J. Gaytán Iniestra, A Heuristic Algorithm for a

Delivery Planning Problem with Time Windows and Side Constraints, tesis

doctoral, Instituto Tecnológico y de Estudios Superiores de Monterrey,

Toluca, México, 2005.

10. González de la Rosa, M. y N. Martínez Urbano, Implementación del

algoritmo heurístico sistema por colonia de hormigas para un problema de

optimización combinatoria de logística de distribución, tesis de licenciatura,

Centro Universitario Atlacomulco-Universidad Autónoma del Estado de

México, México, 2009.

Page 85: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

71

11. Meli{n, B., J. A. Moreno Pérez y J. C. Moreno Vega, ‚Metaheurísticas:

una visión global. Inteligencia Artificial‛, Revista Iberoamericana de Inteligencia

Artificial, núm. 19, 2003, pp. 7-28.

Page 86: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

72

Page 87: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

73

Aplicación de la Optimización por Enjambre de

Partículas a un Problema Inverso de Conducción

de Calor

Obed Cortés-Aburto, Rafael Rojas-Rodríguez, C. Román Marín-Dávila

Resumen. En el presente trabajo se utiliza la optimización por enjambre de

partículas (PSO) para estimar la función de generación de calor de un aparato de

placa caliente con guarda (APCG). Este aparato sirve para la determinación de la

conductividad térmica de materiales aislantes. La aplicación se desarrolla en una

dimensión y en coordenadas cilíndricas. Las geometrías aplicadas son: un disco

—para la placa caliente— y una corona —para la guarda. Se emplean desde uno

hasta cinco parámetros. Los resultados se comparan con los obtenidos con el

método de Levenberg-Marquardt. De esta manera, la capacidad de este método

para recuperar la función analítica se prueba. Los resultados exhiben un buen

ajuste con los valores experimentales.

Palabras clave: optimización por enjambre de partículas, conducción de calor

inversa.

Sumario:

1 Introducción 2 Problema directo 3 Optimización por enjambre de partículas 4

Resultados 5 Conclusión Referencias

1 Introducción

Los problemas inversos en transferencia de calor se valen de las mediciones de

temperatura, o también, de flujo de calor para estimar las cantidades

desconocidas que se presentan en los modelos matemáticos de problemas físicos

en este campo.1,2

El uso de las técnicas de análisis inverso es un nuevo paradigma de investigación.

No se trata simplemente de comparar los resultados obtenidos de las

simulaciones numéricas y de los experimentos a posteriori, sino que existe una

sinergia estrecha entre los investigadores experimentales y los teóricos durante el

desarrollo de los estudios para obtener la mayor cantidad posible de información

a partir del problema físico en cuestión.3 Por tal razón, en años recientes los

problemas inversos han evolucionado de ser un tema de investigación teórica

específica a ser una importante herramienta práctica del análisis de ingeniería.

Page 88: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

74

Los problemas inversos se resuelven mediante una metodología de estimación de

parámetros o de estimación de función. Si se tiene alguna idea acerca de la forma

funcional de la cantidad desconocida, el problema inverso se puede reducir a la

estimación de unos pocos parámetros desconocidos. Al contrario, si no tenemos

la información, necesitamos considerar el problema inverso como de estimación

de función en un espacio dimensional infinito de funciones.

Los problemas inversos también se clasifican matem{ticamente como ‚mal

planteados‛, en tanto que los problemas normales de transferencia de calor son

‚bien planteados‛. La solución de un problema bien planteado debe satisfacer las

condiciones de existencia, unicidad y estabilidad respecto a los datos de entrada.

La existencia de un problema inverso de transferencia de calor puede asegurarse

mediante razonamiento físico. Pero la unicidad de la solución de los problemas

inversos se prueba matemáticamente sólo en algunos casos especiales. Además,

el problema inverso es muy sensible a los errores aleatorios de los datos medidos

de entrada, y por lo tanto, requiere técnicas especiales de solución para satisfacer

la condición de estabilidad.

Una solución exitosa de un problema inverso generalmente involucra su

reformulación como un problema bien planteado aproximado, haciendo uso de

algún tipo de método de regularización (estabilización).

En este artículo se prueba un método para la solución de problemas inversos de

transferencia de calor. El problema de prueba involucra la recuperación de la

función de generación de calor en coordenadas cilíndricas en una dimensión. Se

utilizan dos geometrías, un disco y un anillo. Los resultados concuerdan con los

experimentos en forma bastante aceptable.

2 Problema directo

Las mediciones de temperatura se obtienen a partir de la caracterización de un

dispositivo para determinar la conductividad térmica de los materiales aislantes

utilizados en la construcción en México. Este dispositivo se conoce como aparato

de placa caliente con guarda (APCG). El problema se define como:

Una placa caliente tiene una resistencia situada en m,

temperatura inicial K al tiempo s y pierde calor por convección

en un medio con temperatura K en la frontera ubicada en

m para tiempos . La guarda tiene una resistencia

situada en m, temperatura inicial K al tiempo s y

pierde calor por convección en un medio con temperatura K en

ambas fronteras ubicadas en m y m para tiempos

. Los dos diagramas se muestran en la figura 1.

g t1

0.0538r

0302.378T 0t

amb302.378T

0.0762r b 0t g t

20.0983r

0300.39T 0t

amb300.39T

0.0762r b 0.1524r d

0t

Page 89: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

75

La formulación matemática de estos problemas directos de conducción de calor

es de la siguiente forma:4

(1a)

(1b)

(1c)

para la placa caliente, y

(2a)

(2b)

(2c)

(2d)

para la guarda, donde es la función delta de DIRAC.

La solución de este problema se obtiene mediante el método de la transformada

integral.4 Para el problema inverso, la fuente de calor variable en el tiempo

se considera como una incógnita. La información adicional que se obtuvo de las

mediciones de temperatura en estado transitorio registradas en la posición

en los tiempos , se utiliza entonces para la estimación de

.

(a) Placa caliente (b) Guarda

Fig. 1. Modelo físico del aparato de placa caliente con guarda.

Para este trabajo se considerará una aproximación desde uno hasta cinco

parámetros, expresada de la siguiente forma:

2

2

11 1

2

g t r rT T T

r r r kr t

0 , 0r b t

amb

Tk hT hT

r

, 0r b t

0T T 0 , 0r b t

2

2

2

1 1

2

g t r rT T T

r r r kr t

, 0b r d t

amb

Tk hT hT

r

, 0r b t

amb

Tk hT hT

r

, 0r d t

0T T , 0b r d t

g t

medr r

it 1, 2, ,i I

g t

Page 90: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

76

(3)

La solución de este problema inverso de conducción de calor para la estimación

de los parámetros desconocidos se basa en la minimización de la norma ordinaria

de mínimos cuadrados, dada por:

(4)

Donde:

Suma de los cuadrados de los

errores o función objetivo

Vector de

parámetros desconocidos

Temperatura estimada

al tiempo

Temperatura medida al

tiempo

Número total de parámetros

desconocidos

Número total de mediciones,

donde

Las temperaturas estimadas se obtienen de la solución del problema

directo en la posición de las mediciones, , utilizando la estimación actual de

los parámetros desconocidos.

Para minimizar la norma de mínimos cuadrados dada por la ecuación (4), se

necesita igualar a cero las derivadas de respecto a cada uno de los

parámetros desconocidos.

La solución completa para estos problemas4 está dada por:

(5)

Donde:

2 3 4

1 2 3 4 5t Pt Ptg t P PtP

2

1

i i

I

i

S Y T

P P

S

TP

1 2, , ,

NP P P

i

T P ,i

T t P

it

iY

iY t

it

N

I

I N

i

T P

medr

S P

2 2

2 2

2

2

2 2

2

2 2 4

2 4 2 2

0

3 6

3 6 3 2 4 2 2

4 8

4 8 4

5

0 0 0 0

1 2

0 0 1

3

4

5

10

, , , , , 1

, , 1 12

2 2 1

3 6 6 1

t tamb

t t

t

t

hbT hbTT r t R r R b e R r R b e

kN kN

P PR r R r e t e

kN

Pt t e

Pt t t e

Pt

23 6 3 2 4 2 2

4 12 24 24 1t

t t t e

Page 91: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

77

(6)

para la placa caliente, y

(7)

Donde:

(8)

3 Optimización por enjambre de partículas

El comportamiento de un enjambre se puede modelar con unas cuantas reglas

sencillas. Los enjambres de peces (banco, cardumen) y de pájaros (bandadas,

parvadas) se pueden modelar con tales modelos simples. Por ejemplo, aun si las

reglas de comportamiento de cada individuo (agente) son simples, el

comportamiento del enjambre puede ser complicado. Reynolds5 utilizó los

siguientes tres vectores como reglas simples en sus investigaciones con boid:

Alejarse del agente más cercano.

Ir hacia el destino.

Ir hacia el centro del enjambre.

El comportamiento de cada agente dentro del enjambre se puede modelar con

simples vectores. Los resultados de la investigación son uno de los antecedentes

básicos de la PSO.

2 2 2 2

2

0 0

2

0

2

,

2

,

h k b R bN

k

R r J r

2

2

2 2

2

2

2

0

0 0 0

0 0 0

1 2

0 0 2

3

4

2

2

2 2 4

2 4 2 2

3 6

3 6 3 2 4 2 2

4 8

, , , ,

, , , 1

, , 1 12

2 2 1

3 6 6 1

t

tamb

t t

t

t

hTT r t bR b dR d R r e

kN

hTbR b dR d R r e

kN

P PR r R r e t e

kN

Pt t e

Pt t t e

24 8 4 3 6 3 2 4 2 2

5 10

54 12 24 24 1

tP

t t t t e

2 2 2 2 2 2 2

0 0

2 2

0 0

0

1 0 1 0

, ,

2

,

h k d R d b R bN

k

J r Y rR r

kJ d hJ d kY d hY d

Page 92: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

78

Boyd y Richerson6 examinaron el proceso de decisión de los humanos y

desarrollaron los conceptos de ‚aprendizaje individual‛ y ‚transmisión cultural‛.

De acuerdo con su análisis, las personas utilizan dos clases importantes de

información en el proceso de decisión. La primera es su propia experiencia; esto

es, han intentado las diferentes alternativas y conocen cuál estado es el mejor

hasta el momento y saben qué tan bueno es. La segunda es la experiencia de otra

persona; esto es, tienen conocimiento de cómo se han comportado otras personas

a su alrededor. A saber, saben qué alternativas sus vecinos han encontrado más

positivas hasta el momento y qué tan positivo fue el mejor patrón de alternativas.

Cada persona toma su decisión utilizando sus propias experiencias y las

experiencias de los otros. Los resultados de esta investigación también son uno

de los elementos fundamentales básicos de la PSO.

Fig. 2. Concepto de la modificación de un punto de búsqueda en la PSO.

De acuerdo con los antecedentes de la PSO que acabamos de mencionar,

Kennedy y Eberhart7 desarrollaron la PSO mediante la simulación de la bandada

de pájaros en un espacio bidimensional. La posición de cada agente se representa

mediante su posición en los ejes y y también su velocidad se expresa

mediante (la velocidad en el eje ) y (la velocidad en el eje ). La

modificación de la posición del agente se lleva a cabo mediante la información de

posición y velocidad.

La bandada de pájaros optimiza cierta función objetivo. Cada agente conoce su

mejor valor hasta el momento ( ) y su posición en y . Esta información

es una analogía de las experiencias personales de cada agente. Por otra parte,

cada agente conoce el mejor valor ( ) de todos los que ha obtenido el

grupo hasta el momento. Esta información es una analogía del conocimiento de

cómo se han comportado los otros agentes a su alrededor. Cada agente intenta

modificar su posición utilizando la siguiente información:

Las posiciones actuales ( , ).

x y

vx x vy y

pbest x y

gbest pbest

x y

Page 93: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

79

Las velocidades actuales ( , ).

La distancia entre la posición actual y su .

La distancia entre la posición actual y el .

Esta modificación se representa mediante el concepto de velocidad (el valor

modificado para las posiciones actuales). La velocidad de cada agente se puede

modificar con la siguiente ecuación:

(10)

Donde es la velocidad del agente en la iteración , es una función de

ponderación, son coeficientes de ponderación, es un número aleatorio

entre 0 y 1, es la posición actual del agente en la iteración , es el

del agente y es el del grupo.

En otras palabras, la velocidad de un agente se puede cambiar utilizando tres

vectores, como en el boid. La velocidad se limita normalmente a cierto valor

máximo. La PSO que se utiliza en la ecuación (10) se llama modelo Gbest. La

siguiente función de ponderación se utiliza normalmente en el modelo Gbest:

(11)

Donde es el peso inicial, es el peso final, es el número

máximo de iteraciones e es el número actual de iteración.

Fig. 3. Errores en la estimación de la fuente de calor para la PSO, comparados

con el LMM, en el caso de la placa caliente.

vx vy

pbest

gbest

1

1 1 2 2á rand rand

k k k k

i i i i iv w v c pbest s c gbest s

k

iv i k w

jc rand

k

is i k

ipbest

pbest i gbest gbest

max min

max

max

w ww w iter

iter

maxw

minw

maxiter

iter

Page 94: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

80

El significado del lado derecho de la ecuación (10) se explica de la siguiente

manera:8 el lado derecho de la ecuación (10) consta de tres términos (vectores). El

primer término es la velocidad previa del agente. Los términos segundo y tercero

se utilizan para cambiar la velocidad del agente. Sin estos dos términos, el agente

permanecería ‚volando‛ en la misma dirección hasta golpear la frontera. Es decir,

intenta explorar nuevas áreas y, por lo tanto, el primer término se corresponde

con la diversificación en el proceso de búsqueda. Por otro lado, sin el primer

término, la velocidad del agente ‚volador‛ se determina únicamente mediante el

uso de su posición actual y las mejores posiciones de su historia. En otras

palabras, los agentes intentarán converger a su o también, a su y,

por lo tanto, los términos se corresponden con la intensificación en el proceso de

búsqueda.9 Como se mostrará más adelante, por ejemplo, y se ajustan a

0.9 y 0.4 respectivamente. Por consiguiente, al comienzo del proceso de

búsqueda, la diversificación tiene una ponderación muy alta, mientras que la

intensificación está más ponderada al final del proceso de búsqueda en una

forma similar al recocido simulado (SA, Simulated Annealing). Es decir, se puede

calcular una cierta velocidad que gradualmente se acerque a los y al .

La PSO que se utiliza en las ecuaciones (10) y (11) se conoce como ‚el método de

pesos de inercia‛ (IWA, Inertia Weights Approach).

Fig. 4. Errores en la estimación de la fuente de calor para la

PSO, comparados con el LMM, en el caso de la guarda.

La posición actual (el punto de búsqueda en el espacio de solución) puede

modificarse mediante la siguiente ecuación:

pbest gbest

maxw

minw

pbest gbest

Page 95: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

81

(12)

En la figura 2 se ilustra el concepto de modificación del punto de búsqueda para

la PSO. Shi y Eberhart8,10 intentaron examinar la selección de los parámetros que

hemos mencionado. De acuerdo con su análisis, son apropiados los siguientes

parámetros y sus valores no dependen del problema en consideración:

4 Resultados

En la placa caliente del APCG se utilizó una generación eléctrica de calor de 5 W.

Se realizaron mediciones de temperatura cada 1 minuto (durante 624 pasos

temporales) en la posición m. La generación de calor que se utilizó

en la guarda fue 3 W. Las mediciones se realizaron cada 30 segundos (durante

345 pasos temporales) en la posición m. El número de partículas

utilizado para la optimización fue de 20.

Cuadro 1. Valor de la menor norma

ordinaria de mínimos cuadrados para la

placa caliente y para la guarda

Paráme-

tros

Placa caliente

Guarda

PSO

LMM

PSO

LMM

1 1891.6394 1891.6394 200.5644 200.6026

2 1132.1777 1132.1777 28.4137 29.1051

3 919.9884 865.1679 13.5919 21.5268

4 758.6564 758.5913 13.5064 17.3220

5 751.0625 733.9622 13.3632 17.5800

En el cuadro 1 se muestra la norma ordinaria de mínimos cuadrados para los

casos de la placa caliente y de la guarda. Se compara con un método tradicional

de solución de problemas inversos, el método de Levenberg-Marquardt (LMM).

Para el caso de la placa caliente, se observa un mejor desempeño del LMM

conforme aumentamos el número de parámetros. En el caso de la guarda, la PSO

tiene un mejor desempeño en todos los casos, ya que su norma ordinaria de

mínimos cuadrados es la menor.

1 1k k k

i i is s v

2.0, 0.9, 0.4i max min

c w w

0.0762med

r

0.1524med

r

Page 96: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

82

Fig. 5. Campo de temperatura obtenido con la mejor norma ordinaria de

mínimos cuadrados con la PSO y el LMM para la placa caliente.

En el cuadro 2 se enlistan los parámetros estimados para cada caso tanto para la

placa caliente como para la guarda. En la figura 3 se muestran los errores para los

casos que exhibieron el menor error en la estimación de la fuente de calor para la

PSO y el LMM en la placa caliente. La figura 4 exhibe los mismos resultados para

el caso de la guarda. Las figuras 5 y 6 muestran los campos de temperaturas

obtenidos con la estimación que exhibió la menor norma ordinaria de mínimos

cuadrados para la placa caliente y para la guarda, respectivamente.

Page 97: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

83

Fig. 6. Campo de temperatura obtenido con la mejor norma ordinaria de

mínimos cuadrados con la PSO y el LMM para la guarda.

5 Conclusión

Se ha aplicado una estrategia para resolver problemas inversos de transferencia

de calor, la optimización por enjambre de partículas. Se comparó con un método

tradicional, el método de Levenberg-Marquardt. El resultado obtenido es

satisfactorio, porque los que se obtuvieron con ambos métodos son muy similares

y en algunos casos la PSO exhibe mejor desempeño. En especial, para la guarda,

la PSO exhibió un mejor desempeño en todos los casos. Sin embargo, es necesario

aplicar la optimización por enjambre de partículas a distintos problemas inversos

para demostrar su capacidad. Los resultados obtenidos son muy alentadores para

seguir trabajando en esta dirección.

Page 98: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

84

Referencias

1. Alifanov, O. M., Inverse Heat Transfer Problems, Springer-Verlag, Nueva York,

1994.

2. Ozisik, M. N. y H. R. B. Orlande, Inverse Heat Transfer: Fundamentals and

Applications, Taylor and Francis, Nueva York, 2000.

3 Colaco, M. J., H. R. B. Orlande y G. S. Dulikravich, ‚Inverse and

Optimization Problems in Heat Transfer‛, ponencia en el X Congreso Brasileño

de Ingeniería y Ciencias Térmicas, Río de Janeiro, 2004.

4. Cortés, O., ‚Aplicación del método de Levenberg-Marquardt y del gradiente

conjugado en la estimación de la generación de calor de un aparato de placa

caliente con guarda‛, tesis de maestría, CENIDET, Cuernavaca, 2004.

5. Reynolds, C., ‚Flocks, Herds And Schools: A Distributed Behavioral Model‛,

Computer Graphics, núm. 21, 1987, pp. 25-34.

6. Boyd, R. y P. J. Richerson, Culture and the Evolutionary Process, University of

Chicago Press, 1985.

7. Kennedy, J. y R. Eberhart, ‚Particle Swarm Optimization‛, IEEE International

Conference on Neural Networks, vol. IV, IEEE Press, 1995, pp.1942-1948.

8. Shi, Y. y R. Eberhart, ‚A Modified Particle Swarm Optimizer‛. IEEE

International Conference on Evolutionary Computation, IEEE Press, 1998, pp. 69-73.

9. Fukuyama, Y., ‚Fundamentals of Particle Swarm Optimization Techniques‛,

en K. Y. Lee y M. A. El-Sharkawi (eds.), Modern Heuristics Optimization

Techniques, 2008.

10. Shi, Y. y R. Eberhart, ‚Parameter Selection in Particle Swarm

Optimization‛, Proceedings of the VII Annual Conference on Evolutionary

Programming, MIT Press, San Diego, 1998.

Page 99: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

85

Algoritmo de recocido simulado secuencial y

paralelizado con memoria distribuida para el

problema de máquinas paralelas no relacionadas

ponderadas

Marco Antonio Cruz-Chávez, Fredy Juárez-Pérez, Érika Yesenia Ávila-Melgar,

José Crispín Zavala-Díaz,

Resumen. En este artículo se comparan dos soluciones para el problema de

máquinas paralelas no relacionadas con el objetivo de minimizar el tiempo total

de término ponderado ( ). Se aplica el recocido simulado clásico secuencial y

paralelizado, con memoria distribuida sobre un clúster de alto rendimiento. El

problema es modelado como de emparejamiento bipartita ponderado. Se

presentan resultados experimentales con benchmarks y se evalúa la eficiencia y

eficacia de los algoritmos. Los resultados demuestran que el algoritmo de

recocido simulado paralelo tiene un mejor desempeño sobre el recocido clásico

secuencial porque disminuye drásticamente los tiempos de procesamiento.

Ambas soluciones presentan un alto desempeño, debido a que en todas las

pruebas siempre encuentran el óptimo.

Palabras clave: recocido simulado, problema de máquinas paralelas no

relacionadas, programación lineal entera, emparejamiento bipartita ponderado,

interfase de pase de mensajes.

1 Introducción

El problema general de secuenciado de n trabajos sobre m máquinas paralelas no

relacionadas sin interrupciones está clasificado como de tipo NP-Completo (Garey y

Johnson).2 Los investigadores se han enfocado en estos problemas debido a la

dureza que representan cuando se busca la solución óptima. Además, son de

especial interés para su aplicación en la industria de la manufactura. En la búsqueda

de algoritmos que resuelvan este problema en particular, se han hecho muchas

investigaciones. El modelo problema de máquinas paralelas no relacionadas

(PMPNR), por ejemplo, ha sido usado por Koranne7 para resolver problemas de

ikC

Page 100: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

86

transporte con algoritmos de aproximación y demostrando un rendimiento mejor

que los obtenidos mediante formulaciones de programación lineal entera.

Zhou et al.8 buscaron el total de retrasos ponderados y propusieron el uso de un

algoritmo con colonia de hormigas, el cual incorpora un operador de

transferencia genética en la búsqueda local, con lo que se logra un excelente

desempeño. Mönch9 presenta un método eficiente para optimizar el total de

retrasos ponderados, aplicando la colonia de hormigas y usando rutas de

feromonas artificiales e información de la heurística, con lo que se obtiene una

optimización aproximada. Chun-Lung10 toma en cuenta los tiempos de arranque

para minimizar el número total de trabajos retrasados ponderados y aplica un

algoritmo de búsqueda local interactiva. Pessan et al.11 simplifican el problema,

convirtiéndolo en uno de asignación, con el objetivo de reducir los tiempos de

arranque requeridos para intercambiar la producción de un tipo de producto a

otro. Utilizan un algoritmo de ramificación y acotamiento (branch and bound).

Chun-Lung y Chuen-Lung12 trabajan con un algoritmo de cuello de botella, con el

cual identifican el cuello de botella y construyen su calendarización. Este

algoritmo se utiliza para elaborar calendarizaciones con páginas de retraso en la

asignación de trabajos entre los intervalos identificados como cuellos de botella.

En Anastasova y Dror,13 se describe una aplicación enfocada en el análisis de una

línea automática de soporte de procesos para un centro de computación; las

actividades de consulta en línea del centro se modelan como un grupo de

máquinas paralelas no relacionadas, así los usuarios tienen procesos como

aplicaciones de ayuda en línea a los cuales llega una lluvia de trabajos. Un índice

automático de procesamiento de lenguaje natural (PLN) es aplicado a cada

trabajo con el fin de estimar los tiempos de procesamiento que dependen de una

máquina determinada. En Anil Kumar y Marathe,14 un algoritmo de redondeo es

desarrollado para buscar una calendarización en máquinas paralelas no

relacionadas. Este algoritmo trabaja con modelos de programación lineal,

cuadrática y convexa extendida de una calendarización, para optimizar el

Makespan.

En el presente trabajo se muestran dos soluciones al modelo de programación

lineal entera (PLE) ponderado, de máquinas paralelas no relacionadas, como el

que se muestra en Pinedo.3 El estudio de máquinas paralelas no relacionadas es

muy importante porque es un problema frecuente en la industria. La solución

eficiente y efectiva de modelos teóricos es una aproximación simple al estudio de

los modelos reales que permiten a la industria de la manufactura incrementar su

desarrollo y competitividad. Las dos soluciones al PMPNR que aquí se describen

usan un algoritmo de recocido simulado clásico secuencial y un algoritmo de

recocido simulado paralelo, con memoria distribuida, ejecutado sobre un clúster

de alto rendimiento, para resolverlo como un problema de emparejamiento

bipartita ponderado.

Page 101: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

87

2 Modelo de programación lineal entera ponderado

El problema Rm || ΣkCj (Graham et al.),1 es de tipo NP-Completo y puede ser

formulado como un problema de programación lineal entera (PLE), con una

estructura especial que ayuda a resolverlo en tiempo polinomial utilizando un

algoritmo determinista. Esta PLE modela el problema como un conjunto de

máquinas que deben procesar un conjunto de trabajos y cada trabajo requiere una

operación para terminar. Cada máquina puede procesar cualquier trabajo, uno a la

vez. El tiempo de procesamiento de un trabajo depende de la máquina en la cual se

procese.

El problema de PLE presentado en Pinedo3 ha diso formulado como sigue: la

contribución a la función objetivo en (1) de cada trabajo j, depende de la máquina

i donde el trabajo j es procesado, así como de la posición k donde el trabajo es

procesado en la máquina i, el conjunto de trabajos que se procesan en la máquina

i es ordenado. El trabajo j contribuye en kpij al valor de la función objetivo. La

función objetivo optimiza el tiempo total de término ponderado (ΣkCj). En este

modelo, la restricción en (4) indica que las variables x toman sólo el valor de

0 o 1. Si xikj = 1, entonces el trabajo j es asignado a la máquina i en la k-th posición.

Si xikj= 0, en caso contrario. Las restricciones en (2) aseguran que cada trabajo sea

asignado a una sola posición k. Las restricciones en (3) aseguran que en cada

posición k para cada máquina i es tomado por al menos un trabajo j. Este modelo

puede ser mapeado para problemas de transporte (Hillier y Lieberman)4 si las

restricciones del conjunto (4) se reemplazan por un conjunto de restricciones de

valores no negativos, esto es, xikj >= 0. Esto es relevante debido a que con este

modelo relajado se obtendrían límites con algoritmos exactos para problemas

NP-Completos, como el modelo Rm|| Cj. En un modelo con una estructura como

la presente, la formulación relajada tiene resultados de 0 o 1 para las variables x.

De esta manera, es posible usar un algoritmo exacto, como el SIMPLEX, y obtener

una solución para el modelo sin necesidad de relajar las restricciones en (4).

Page 102: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

88

3 Modelo de grafos bipartita

Un caso especial del problema de transporte es el problema de emparejamiento

bipartita ponderado (PEBP). El modelo Rm | | kCj, para la estructura definida

en el modelo de PLE en la sección 2, puede ser representado como PEBP

(Pinedo).3 La figura 1 presenta una instancia de n=3 trabajos y m=2 máquinas para

el problema Rm | | kCj, usando un grafo bipartita. El grafo está compuesto de

n trabajos en la parte superior y mn posiciones en la parte inferior. Las mn

posiciones se dan en pares (i,k), donde i es la máquina asignada para procesar el

trabajo j y k la posición dentro de la cola de la máquina i, donde cada máquina i

puede procesar a lo más n trabajos. Si el trabajo j que es asignado a la posición ik

presenta un costo kpij, el objetivo es determinar la asignación ik para cada trabajo j

en el grafo bipartita que tenga el mínimo costo de tiempo total.

La interpretación se da con base en la figura 1, como sigue: para la máquina i=1 el

trabajo j=1 puede ser procesado en primer lugar (p11), segundo lugar (2p11) o en

tercer lugar (3p11). El trabajo j=2 puede ser procesado en primer lugar (p12),

segundo lugar (2p12) o en tercer lugar (3p12). El trabajo j=3 puede ser procesado en

primer lugar (p13), en segundo lugar (2p13) o en tercer lugar (3p13).

Fig. 1. Grafo bipartita para ΣkCj.

El modelo del PEBP puede ser solucionado con varias metaheurísticas. La

siguiente es una de recocido simulado (RS) mediante la cual se obtiene la

solución.

4. Algoritmo de recocido simulado

Los fundamentos de la metaheurística denominada RS fueron introducidos por

Kirkpatrick,5 quien propuso un método probabilístico de búsqueda local de

manera que escapara de los óptimos locales. El nombre del método proviene de

su similitud con el proceso metalúrgico de recocido lento, con el que se consigue

un sólido de mínima entropía. El RS sigue un esquema similar para ayudar a

Page 103: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

89

resolver problemas de optimización (véase la figura 2). El proceso de RS requiere

del conocimiento de los siguientes parámetros:

so : Solución inicial

del problema.

T : Parámetro de

control de RS.

r : Coefíciente de

control. 0 < r < 1.

MCS > 0: Cadena de

Markov (Markov

Chain Size).

C: Función de costo.

N: Estructura de

vecindad.

FROZEN: Criterio

de paro. Mínimo

valor de T.

function

SimulatedAnnealing ( )

Begin

s:= so, T = T0

Repeat

cycle := 1 to MCS

generate new solution,

s’ = N(s)

if C(s’) < C(s) then

s := s’

else

d := C( s’) - C(s)

Random (0 ,1)

if then

s := s’

end else

end cycle

T := r T

Until FROZEN

return C(s)

End

Fig. 2. Algoritmo de recocido simulado.

Como se ve en la figura 2, al principio el RS, con una temperatura alta T, acepta

casi todas las transiciones entre las soluciones. Después T disminuye

gradualmente, debido al factor r. Esto hace que la aceptación de movimientos sea

cada vez más y más selectiva. Finalmente, sólo se aceptan aquellos movimientos

que mejoren la solución actual. Un movimiento es un vecino s' de s, obtenido de

una estructura de vecindad. El costo de la función C es la función objetivo del

problema a resolver y permite la evaluación de la calidad de la solución. La

aceptación de los movimientos —la nueva solución— es controlada por el

algoritmo de metrópolis, el cual involucra la función de Boltzmman. En cada

ciclo de T, metrópolis repite MCS ciclos. Para los diferentes valores de T, que

pasan por una secuencia de enfriamiento, un proceso explora las mejores

soluciones. FROZEN considera el criterio de paro, el cual es un valor mínimo al

que T llega y que está controlado por r.

T

d

e

Page 104: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

90

5 Metodología de solución

Para solucionar el problema Rm | |kCj usando programación paralela con

memoria distribuida, se proppone la siguiente metodología, basada en el grafo

bipartita (véase la figura 1), que consiste en los siguientes pasos:

1. Representación simbólica del grafo bipartita.

2. Determinación de una estructura de vecindad que obtenga soluciones

factibles.

3. Sintonización de los parámetros de RS: T, r, MCS y FROZEN.

4. Aplicación de la metaheurística de RS secuencial y paralelizado.

5. Aplicación del mecanismo generador de soluciones.

6. Aplicación del mecanismo para recolectar soluciones en el clúster.

5.1 Representación simbólica

Para la representación simbólica del grafo bipartita, se emplea una estructura de

datos unidimensional para representar las mn posiciones que se dan entre las

máquinas (i=0,..., m-1) y las k-ésimas posiciones que un trabajo j (j=0,...,n-1) puede

tomar dentro de una máquina i. Con este estructura, tendremos n trabajos

calendarizados sobre el arreglo de tamaño mn y tendremos mn – 1 posiciones

libres hacia donde se pueden mover los trabajos mediante un intercambio

aleatorio. Una solución a la instancia presentada en la figura 1 se muestra en la

figura 3 usando la representación simbólica.

La estructura representa m=2 máquinas i en serie y n=3 trabajos j, lo que da un

total de seis posiciones posibles para los tres trabajos j. Cada máquina i ocupa

tres posiciones para los tres posibles trabajos j, por lo tanto, la estructura

representa a las máquinas 0 y 1. Las seis posibles posiciones son referenciadas

mediante un índice que va desde la posición 0 hasta la posición 5. La secuencia va

desde k=0 hasta k=2 para representar las tres posibles posiciones dentro de la cola

de la máquina i.

Fig. 3. Representación simbólica del problema.

La interpretación de la figura 3 se da como sigue: el trabajo j = 1 se procesa en

primer lugar k = 0 en la primera máquina i = 0 y con una posición real índice = 0.

Page 105: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

91

El trabajo j = 0 se procesa en segundo lugar k=1 en la primera máquina i = 0 y con

una posición real índice = 1 y así sucesivamente. Las posiciones dentro del arreglo

que contengan j = -1 son posiciones disponibles.

5.2 Mecanismo para generar soluciones en RS

La estructura de vecindad esta basada en la representación simbólica de las

posiciones que el grafo bipartita de la figura 1 representa. En este trabajo, se

desarrollo un método de búsqueda local en la estructura de vecindad el cual

incluye los siguientes pasos:

1. Generación de la calendarización inicial aleatoria.

2. Aplicación del mapeo indirecto y directo.

3. Generación del mapeo rápido.

4. Cambio de posición desde un trabajo hasta una posición libre aleatoria.

5. Intercambio de dos trabajos aleatorios.

Para generar la solución inicial aleatoria, se seleccionan un trabajo j y una

máquina i. El trabajo j se pone en posición sobre la máquina seleccionada. En la

figura 4 se da el algoritmo que genera la solución inicial. Un conjunto de trabajos

J y un conjunto de máquinas M se emplean para calendarizar la solución inicial.

Un trabajo j y una máquina i se seleccionan aleatoriamente del conjunto J y M

respectivamente. La posición ki se asigna en la máquina que no tiene un trabajo

asignado (posición libre), entonces el trabajo j se almacena en el Array (véase la

figura 3), en la posición ki; la posición ki se actualiza y el trabajo j queda eliminado

del conjunto J. El procedimiento se repite mientras J no sea un conjunto vacío.

function initial_solution( )

Begin

k = {k1=0,...,km-1=0}

M = {m1 = 0,...,mm=m-1}

J= {0,...,n-1}

Repeat

j = random(J)

i = random(M)

Array[i * n + ki] = j

ki=ki + 1

J = J - {j}

Until j0 ≠

End

Fig. 4. Generación de la solución inicial.

Page 106: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

92

El mapeo indirecto busca los elementos ikj a partir de la posición real dentro de la

estructura de vecindad. La posición real se obtiene del índice que se utiliza para

acceder al Array. Las funciones son:

j = Array( index ) (5)

i = integer_truncate(index / n ) (6)

k = operator_ module (index, n) (7)

Por ejemplo, en la figura 3, usando (5), para el índice = 3 se obtiene el trabajo 2.

Con el mismo índice, usando (6), se obtiene la máquina 1. Usando (7), se

encuentra la posición k = 0.

El mapeo directo encuentra la posición real dentro de la estructura de vecindad

denotada por el índice a partir de los elementos ikj. Las funciones son:

index = i * j + k (8)

En la figura 5 se da un mapeo rápido a partir de la representación simbólica

(véase la figura 3) que genera una calendarización de trabajos en una estructura

de tamaño 2n.

Fig. 5. Mapeo rápido.

El arreglo corresponde a una calendarización —trabajos, máquinas y

posiciones— menor en tamaño que la estructura de vecindad de tamaño mn. Esta

estructura permite seleccionar un trabajo aleatoriamente y localizar su posición

dentro de la estructura de vecindad con base en las funciones de mapeo descritas

anteriormente. Esta estructura aumenta la eficiencia en la búsqueda de una nueva

solución debido a que los mapeos directos e indirectos representan la indexación

de la estructura de vecindad y agilizan el acceso y modificación de las nuevas

soluciones, de la misma manera como lo haría una base de datos indexada. Como

se observa en la figura 5, el ordenamiento de la estructura de vecindad es con

base en el número de máquinas y la estructura de mapeo rápido, con base en el

número de trabajos.

Page 107: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

93

El movimiento de un trabajo a una posición libre del arreglo genera un vecino. Se

selecciona un trabajo de forma aleatoria de la estructura de vecindad usando el

mapeo rápido, el cual contiene todos los trabajos calendarizados, como se

muestra en la figura 6. Entonces se realiza la operación de transformación

descrita en (8), para localizar el índice que apunta a ese trabajo en la estructura de

vecindad de la figura 6. Paso seguido, selecciona una posición de la estructura de

vecindad en forma aleatoria, la cual es apuntada por el índice y representa el

lugar hacia donde se moverá el trabajo previamente seleccionado. En la figura 6

se muestra una posición libre (-1).

En la figura 6d se indica el movimiento del trabajo j = 0 de la posición 1 a la

posición 4. Por último, con base en las operaciones de transformación descritas en

(5), (6) y (7), actualizamos las posiciones del trabajo j = 0 como se muestra en la

figura 6.

Fig. 6. Operación mueve. Fig. 7. Operación intercambia.

El intercambio de un par de trabajos en la solución genera un nuevo vecino. En la

figura 7 se muestra el intercambio de trabajos 0 y 2 contenidos en las posiciones 1

y 3. La selección del par de trabajos es aleatoria y las operaciones de

transformación son las mismas aplicadas anteriormente. Finalmente, en la figura

7 se ve que es necesario actualizar las posiciones de los trabajos 0 y 2 para tener

una referencia correcta.

Page 108: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

94

5.3 Mecanismo para recolectar soluciones en el clúster

Se le hizo una modificación al algoritmo de RS para permitir su ejecución en

paralelo. Esta modificación consiste en agregar funciones para el pase de

mensajes entre el proceso de control —llamado ‚proceso maestro‛— y los

diferentes procesos de los nodos del clúster —llamados ‚procesos esclavos‛. El

número de procesos que se ejecutan en cada nodo es igual al número de

procesadores que tenga cada nodo en particular, esto es, a cada proceso le

corresponde un solo procesador. Conocido como interfase de pase de mensajes

(MPI), este estándar permite agregar paralelismo a las aplicaciones con memoria

distribuida.

El algoritmo de RS paralelo maestro recolecta las soluciones obtenidas por los

procesos de RS esclavos. Esto significa que cada proceso de RS esclavo envía el

óptimo encontrado al proceso maestro. De esta manera, el óptimo global de los

RS esclavos puede ser obtenido por el RS maestro. Cuando se encuentra más de

un óptimo global igual, se toma el que tiene menos tiempo de procesamiento.

En algoritmo denominado RSPCJ está compuesto por la parte de control (véase la

figura 8a) y la parte de procesamiento numérico (véase la figura 8b).

function

RSProcesoMaestro ( )

Begin

s:= so, t:= 0

cycle p := 1 to

Procesadores

recibe_del_procesado

r(p,s’,t’)

if C(s’) < C(s) then s

:= s, t:=t’

if C(s’) == C(s) and t

> t’ then t:=t’

end cycle

End

function

RSProcesoEsclavo( )

Begin

s:= so, ti:= t:=

tiempo_inicial()

Repeat

cycle := 1 to MCS

...

end cycle

T := r T

Until FROZEN or s

==SIMPLEX

t’:= tiempo_final() - t

envia_al_maestro(s,t’)

End

Fig. 8a. Algoritmo

RSPCJ parte de

control.

Fig. 8b. Algoritmo

RSPCJ procesamiento

númerico.

Por ejemplo, en la figura 9, los p procesos esclavos de los n nodos del clúster

ejecutan el RS cada uno con su propia solución inicial; en cada ciclo MCS los p

procesos esclavos generan soluciones aleatorias y al término descienden la

Page 109: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

95

temperatura. Este proceso se repite hasta llegar al punto de congelación FROZEN

y encontrar el óptimo dado por SIMPLEX.

Fig. 9. El algoritmo RSPCJ recolecta las soluciones.

Finalmente, los p procesadores esclavos envían el resultado final que hayan

encontrado al nodo maestro. Entonces, el nodo maestro escoge la mejor solución

(véase la figura 9). En caso de encontrar resultados iguales en más de un

procesador, se toma el que tenga un tiempo menor de búsqueda.

6 Escenario de pruebas

Cinco problemas de prueba fueron usados. Estos benchmarks son los propuestos

en Arnaut et al.15 Cada benchmark contiene 60 trabajos y cuatro máquinas paralelas

no relacionadas. La información referente a los tiempos de iniciado no son

tomados en cuenta porque el modelo usado para este trabajo no los usa. Para

probar la eficiencia y eficacia del algoritmo de RS, un algoritmo exacto

(SIMPLEX) fue desarrollado en Marco et al.16 para resolver las instancias con un

máximo de 60 trabajos y cuatro máquinas. Con este algoritmo se obtuvo la

solución óptima global. Después de obtener la solución, los algoritmos de RS

secuencial y RS paralelo fueron usados para encontrar el óptimo basado en 30

ejecuciones para cada uno de los cinco benchmarks.

Page 110: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

96

La infraestructura utilizada fue un clúster de alto rendimiento compuesto de un

nodo maestro con procesador Intel x86 de 1GB de memoria. Nueve nodos de

procesamiento numérico, cada uno con procesador de doble núcleo Intel Celeron

de 2.0 GHz y 2 Gb Memoria, hicieron un total de 18 núcleos de procesamiento

numérico. El software utilizado fue el sistema operativo Scientific Linux 4.7,

compilador GCC 3.4.3, librerías OpenMPI 1.3.6 y sistema de archivos de red NFS.

7 Resultados experimentales

Para todas las pruebas, el sintonizado de los valores de los parámetros del

algoritmo de RS fueron: T = 25, r = 0.985, FROZEN = 0.0001 y MCS es seis veces el

tamaño de la vecindad. El sintonizado de r = 0.985 fue en el rango de (0.8 <= r <=

0.99) de acuerdo con David et al.6 El criterio de paro fue llegar al punto de

congelamiento FROZEN o encontrar el óptimo dado por SIMPLEX.

En el cuadro 1 se observa que para los cinco benchmarks, el algoritmo de RS

secuencial siempre encuentra el óptimo y el número de veces que lo encuentra es

de al menos tres. Muestra una desviación estándar aceptable y un error relativo

por debajo del 0.02%, en el peor de los casos, para el promedio de 30 pruebas por

cada problema. El mejor resultado obtenido por el RS secuencial fue para el

benchmark 60on4Rp50Rs50_1, debido a que, de las 30 pruebas, el peor resultado

fue de 62659, con una desviación estándar de 3.8201 y un promedio de error

relativo de 0.0073%.

Cuadro 1. Eficacia del algoritmo

RS

secuencial

Para el algoritmo de RS paralelo, en el cuadro 2 se observa que al igual que el RS

secuencial siempre encuentra el óptimo, pero el número de veces es de al menos

28. Muestra una desviación estándar mejor que el RS secuencial y, por lo tanto,

un error relativo por debajo del 0.0003%, en el peor de los casos, para el promedio

de 30 pruebas por cada problema. Los mejores resultados obtenidos por el RS

paralelo fueron para los benchmarks 60on4Rp50Rs50_2, 60on4Rp50Rs50_3 y

60on4Rp50Rs50_5. La eficacia aumenta considerablemente debido a que el

Page 111: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

97

paralelismo permite evaluar un mayor número de RS. Así, para una prueba del

algoritmo de RS paralelo, se requiere un proceso maestro y 18 procesos esclavos,

aumentando la eficiencia en 18 veces respecto al RS secuencial.

Cuadro 2. Eficacia del algoritmo

RS

paralelo

El cuadro 3 muestra los resultados de eficiencia. Para el último benchmark, el

algoritmo de RS paralelo muestra que el mejor resultado de las 30 pruebas reduce

el tiempo de ejecución en un 27.38% respecto al secuencial. En general, se observa

que el algoritmo de RS paralelo reduce el tiempo de ejecución en la búsqueda del

óptimo en 24.43% en promedio, más rápido que el RS secuencial. La eficiencia del

RS paralelo se ve aumentada cuando uno de los 18 RS encuentra el óptimo antes

de llegar al punto de congelación FROZEN; en este caso, el tiempo de

procesamiento se reduce y de los 18 procesos se toma el menor.

Cuadro 3. Comparación de eficiencia RS secuencial contra RS paralelo

El speedup calculado para el RS paralelo es muy cercano al óptimo y corresponde

a un speedup sublineal, como se muestra en el cuadro 4. La eficiencia calculada es,

en promedio, del 0.999, muy próximo al ideal. El algoritmo paralelo minimiza el

uso de comunicaciones, lo que le permite alcanzar un excelente desempeño en

eficiencia paralela.

Page 112: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

98

Cuadro 4. Cálculo del speedup y eficiencia del RS paralelo

8 Conclusiones

La indexación de la estructura de vecindad, representada por un mapeo rápido

en el algoritmo de RS, causa que la búsqueda del óptimo en el espacio de

soluciones sea más eficiente que con el método SIMPLEX en los cinco benchmarks

analizados. La eficacia del algoritmo de RS paralelo y RS secuencial es del 100%

para los benchmarks analizados debido a que encuentran siempre el óptimo en

todos los benchmarks. El RS paralelo muestra una mejor eficacia debido a que hace

una mayor exploración y explotación del espacio de soluciones. Esto se debe a

que para cada prueba se requiere un proceso maestro y 18 procesos esclavos que

se ejecutan en paralelo, lo que aumenta las posibilidades de encontrar el óptimo

en 18 veces respecto al RS secuencial. Así, para las 30 pruebas, existen 30 x 18

posibilidades de encontrar el óptimo. Las posibilidades de encontrar el óptimo en

un clúster de alto rendimiento aumentan en función del número de procesadores

disponibles en él.

Cuando comparamos la eficiencia del RS secuencial con la del RS paralelo, se

observa que el RS paralelo mejora el tiempo secuencial en un promedio de

24.43%. Esto se debe principalmente a que los 30 x 18 RS aumentan de manera

considerable las posibilidades de encontrar el óptimo antes de llegar al criterio de

paro FROZEN, lo que lleva a una reducción en el tiempo de búsqueda.

El algoritmo presenta un excelente desempeño, con 0.99% de eficiencia y un

speedup muy próximo al óptimo, debido principalmente al diseño, el cual

minimiza el uso de las comunicaciones entre los procesos del RS. Otros trabajos

futuros se centrarán en un uso más extenso de las comunicaciones, a fin de hacer

Page 113: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

99

una mejor exploración del espacio de soluciones con el pase de mensajes con

MPI.

Referencias

1. Graham, R. L., E. L. Lawler, J. K. Lenstra y A. H. G. Rinnooy Kan,

‚Optimization and Approximation in Deterministic Sequencing and

Scheduling: A Survey‛, Annual of Discrete Mathematics, 1979, pp. 287-326.

2. Garey, A. M. y D. S. Johnson, Computers and Intractability: A Guide to the

Theory of NP-Completeness, Freeman, San Francisco, 1979.

3. Pinedo, M., Scheduling Theory, Algorithms and Systems, Prentice Hall,

2001, p. 586.

4. Hillier, F. S. y G. J. Lieberman, Introduction to Operation Research, 8a

edición, McGraw-Hill, 2008.

5. Kirkpatrick, S., C. Gelatt y M. Vecchi, ‚Optimization by Simulated

Annealing‛, Science, vol. 220, núm. 4598, 1983, pp. 671-680.

6. David, R., R. Sixto y M. Jacinto, Simulación, Alfaomega, 2009, p. 388.

7. Koranne, S., ‚Formulating SoC Test Scheduling as a Network

Transportation Problem‛, IEEE Transactions on Computer-Aided Design of

Integrated Circuits and Systems, vol. 21, núm. 12, diciembre de 2002.

8. Zhou, H., Z. Li y X. Wu, ‚Scheduling Unrelated Parallel Machine to

Minimize Total Weighted Tardiness Using Ant Colony Optimization‛,

Proceedings of the IEEE International Conference on Automation and Logistics,

Jinan, del 18 al 21 de agosto de 2007, pp. 132-136.

9. Mönch, L., ‚Heuristics to Minimize Total Weighted Tardiness of Jobs on

Unrelated Parallel Machines‛, IV IEEE Conference on Automation Science

and Engineering Key Bridge Marriott, Washington, D.C., del 22 al 26 de

agosto de 2008, pp. 572-577.

10. Chun-Lung, C., ‚An Iterated Local Search for Unrelated Parallel

Machines Problem with Unequal Ready Times‛, Proceedings of the IEEE

International Conference on Automation and Logistics, Qingdao, septiembre de

2008, pp. 2044-2047.

11. Pessan, C., J. L. Bouquard y E. Neron, ‚An Unrelated Parallel Machines

Model for Production Resetting Optimization‛, IEEE International Conference

on Service Systems and Service Management, vol. 2, 2007, pp. 1178-1182.

12. Chun-Lung, C. y C. Chuen-Lung, ‚A Heuristic Method for a Flexible

Flow Line with Unrelated Parallel Machines Problem‛, IEEE Conference on

Robotics, Automation and Mechatronics, 2006, pp. 1-4.

13. Anastasova, K. y M. Dror, ‚Intelligent Scheduler for Processing Help

Requests on Unrelated Parallel Machines in a Computer Support

Page 114: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

100

Administration System‛, IEEE Conference on Systems, Man, and Cybernetics,

1998, pp. 372-377.

14. Anil Kumar, V. S. y M. V. Marathe, ‚Approximation Algorithms for

Scheduling on Multiple Machines‛, Proceedings of the XLVI Annual IEEE

Symposium on Foundations of Computer Science, 2005, pp. 254-263.

15. Arnaut, P., R. Musa y G. Rabadi, ‚Ant Colony Optimization Algorithm to

Parallel Machine Scheduling Problem with Setups‛, IV IEEE Conference on

Automation Science and Engineering, Washington, D.C., del 23 al 26 de agosto

de 2008, pp. 578-582.

16. Marco, C., J. Fredy, Y. Erika y M. Alina, ‚Simulated Annealing Algorithm

for the Weighted Unrelated Parallel Machines Problem‛, The Electronics,

Robotics and Automotive Mechanics Conference, 2009.

Page 115: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

101

Capítulo II. Aplicaciones

Page 116: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

102

Page 117: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

103

Diseño de un Sistema de Gestión de la

Información para Tutorías Irma Delia Rojas-Cuevas, José Rafael Mendoza-Vázquez y Sergio Javier Torres-Méndez

Resumen. En este documento se presenta la propuesta para un sistema de

gestión de la información aplicado a tutorías en educación superior. La propuesta

del sistema está basada en el lenguaje de modelado unificado (UML, por sus

siglas en inglés) y en la ingeniería del software. Tiene siete etapas principales:

determinación de requerimientos, planeación, diseño funcional, diseño

pedagógico, diseño físico, sistema y evaluación. Su ventaja estriba en dos

aspectos primordiales: primero, el modelo obtenido es independiente del

lenguaje de programación que se utiliza para su elaboración y construcción;

segundo, el modelo toma en cuenta la reutilización de sus componentes para que

éstos sean incorporados en las secciones que tengan las mismas características.

Para finalizar, se presentan los diagramas y los documentos principales

producidos durante el proceso de desarrollo del sitio de tutorías.

Palabras clave: educación, tutorías, sistemas de gestión de la información,

ingeniería del software, lenguaje de modelado unificado.

Abstract. This paper presents the systems for information management for tutoring. The

model is based on Unified Modeling Language (UML) and Software Engineering.

There are seven components: determination of requirements, planning,

functional design, pedagogical design, physical design, system evaluation. The

system have the advantage of considering two aspects: the model obtained is

independent of programming language, the model takes into account the aspect

of reusability of different components are built in sections that have the same.

Finally, the diagrams and the main documents generated are presented.

Keywords: education. tutoring, systems for information management, software

engineering, Unified Modeling Language.

Page 118: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

104

1 Introducción

En el artículo 3 de la Constitución de nuestro país, así como en el Programa de

Desarrollo Educativo 2000-2006 y en el Programa para el Mejoramiento del

Profesorado (PROMEP), se señala la importancia estratégica de la educación

integral, necesaria para impulsar el conocimiento. La educación integral debe

operar en las instituciones de educación superior (IES), y como parte de su puesta

en práctica se desarrollan actividades de tutoría en estas instituciones. Por

ejemplo, la ANUIES1 reporta que en su caso sólo 20% de los estudiantes de nivel

superior se titula, además de que otro 25% abandona sus estudios, esto último se

destaca entre otros indicadores de las labores de las IES en México. Las causas de

la deserción, el rezago y el abandono académico son diversas; entre ellas, algunos

alumnos señalan problemas personales. Por esta razón, se busca reducir la

reprobación y el abandono a fin de lograr índices de aprovechamiento y de

eficiencia terminal satisfactorios, de modo que los estudiantes de las IES

concluyan sus estudios y se incorporen al ambiente laboral. Para que esto sea

posible, el papel que ha desempeñado el docente del nivel superior debe cambiar,

pasando de ser el de un simple transmisor de conocimientos, al de ser un

facilitador, tutor y asesor, a fin de que el alumno alcance una formación que le

prepare para un desenvolvimiento acorde con su proyecto de vida y su vida

profesional. Por ello, la ANUIES,2 en La Educación Superior en el Siglo XXI,

propone el desarrollo integral de los alumnos y destaca la institucionalización de

las actividades de tutoría en el año 2000. Posteriormente, en una publicación de

Alejandra Roma López,3 la ANUIES establece los programas institucionales de

tutoría, su organización y funcionamiento en las IES, a partir de los cuales se han

puesto en marcha muchos de los programas de tutoría que actualmente operan

en buena parte de las instituciones de este nivel. A mediados de 2003, la propia

ANUIES4 publica un estudio sobre las modalidades y los procedimientos

utilizados por las instituciones que ya habían puesto en marcha un programa de

tutoría, con resultados interesantes para aquellas IES que también buscan poner

en práctica modelos tutoriales, dado que se muestra la diversidad de estrategias

utilizadas, pero, a la vez, la homogeneidad en los objetivos e intenciones

formativas.

2 Espacios educativos

La ANUIES2,3 propone el establecimiento de universidades virtuales para mejorar

la educación; promueve también el uso de las tecnologías por medios

Page 119: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

105

electrónicos, como una necesidad actual. Por su parte, el gobierno mexicano,5 en

su estrategia 14.2, destaca el uso de las tecnologías de información y

comunicación; mientras en España se analizan cuáles son las mejores opciones

para el desarrollo de sistemas en la Web.6 Por ello, los espacios educativos en

Internet que ofrecen diferentes instituciones públicas, como la Universidad

Tecnológica de Puebla, y privadas, como la Universidad de las Américas y el

ITESM, son cada vez más frecuentes. Estas áreas deben estar dirigidas a los

estudiantes, usuarios principales de la red, y reunir características de simpleza,

amenidad y facilidad de uso;7 por lo tanto, se necesita definir sus requerimientos

de acuerdo con el cliente y traducirlos finalmente a los objetivos alcanzables del

aprendizaje significativo,8 como sucede en las tutorías. Para ello, se emplean

principios de diseño funcional, sin perder de vista el diseño pedagógico,9 el cual

permite al estudiante asimilar en forma ágil los contenidos y los conocimientos.

Del mismo modo, el diseño físico del espacio educativo debe ser agradable, para

que se capte la atención del estudiante y su interés se mantenga, aprovechando la

interactividad del sistema.

Recientemente, en distintas IES de México, se ha desarrollado lo que se ha

dado en llamar ‚tutorías electrónicas‛, cuya característica es la de ofrecer

asistencia apoyada en las nuevas tecnologías de la información, sobre todo en la

computadora y en Internet. Así, las actividades de apoyo y aprendizaje en

general y los objetivos relacionados con la tutoría en especial se realizan

mediante el uso de estas tecnologías. Con base en este tipo de medios se elaboran

tutoriales de contenidos y propósitos educacionales múltiples, con la intención de

que el alumno sea capaz de ‚aprender a aprender‛. Adem{s de que se dispone de

información para el alumno y los tutores, todo esto está orientado a mejorar el

desempeño del alumno durante su estancia en una IES.

En las secciones siguientes se presentan los aspectos fundamentales de la

tutoría y la propuesta para el Instituto Tecnológico de Puebla.

3 La tutoría

La tutoría es una actividad docente que respalda la integración escolar en

general, así como la vida cotidiana extraescolar del estudiante a partir de sus

intereses y necesidades académicas. Su finalidad es impulsar al alumno para que

adquiera madurez e independencia en su proceso educativo.1 La tutoría también

asegura que la formación sea integral, ya sea personalizada o grupal, o ambas,

pues se basa en la interrelación y el compromiso entre el tutor y el o los alumnos,

mediante el establecimiento de las condiciones de apoyo y seguimiento para el

aprendizaje.

La tutoría es una actividad continua; apoya, orienta y evalúa el proceso de

aprendizaje del alumno;1,2,3,4 propicia la iniciativa propia, está planificada de

Page 120: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

106

manera sistemática, contribuye al abatimiento de la deserción y crea un clima de

confianza. Así, las circunstancias o condiciones del aprendizaje mejoran y la

capacidad del estudiante para asumir responsabilidades en el ámbito de su

formación profesional se desarrolla. Por medio del estímulo al interés del

estudiante, se promueven las habilidades de integración en los equipos de

trabajo, así como valores y actitudes que favorecerán su desempeño, tanto en el

ámbito académico y profesional, como en el personal.

4 Modelo

La elaboración de la presente propuesta contempla varios aspectos, los cuales se

desarrollan de manera gradual. Primero, se determinan los requerimientos del

usuario final. Tomando como base estos requerimientos, se establece el diseño

funcional. En seguida se hace el diseño pedagógico y a continuación se elabora el

diseño físico, el cual da la pauta para obtener el sistema en su primera versión, la

cual se evaluará al final. En la figura 1 se muestra este modelo de desarrollo de

tutorías, en él se muestran las seis etapas que acabamos de mencionar:

determinación de requerimientos, diseño funcional, diseño pedagógico, diseño

físico, sistema y evaluación. Con base en la evaluación se pueden hacer mejoras,

en un proceso de retroalimentación. Dentro de este modelo, los requerimientos

del ususario son fundamentales, y a partir de ellos se establecen las bases del

sistema.

Este modelo se distingue porque considera el diseño pedagógico, el cual

permite que los contenidos sean asimilados de forma fácil.

Todos sus componentes se describirán de manera detallada en las siguientes

secciones.

Page 121: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

107

Fig. 1. Modelo para el desarrollo de sistemas de gestión de la información.

4.1 Determinación de requerimientos

Los requerimientos son las necesidades que los usuarios tienen para alcanzar un

objetivo o resolver un problema.9 Los requerimientos son la base para establecer

los objetivos de funcionalidad del sistema y son un punto de verificación para

corroborar que el sistema cumple con el planteamiento original. Por ello, es muy

frecuente escuchar que una cantidad considerable de proyectos de ingeniería de

software fracasan, puesto que no contemplaron una definición, especificación y

administración adecuada de los requerimientos.

La documentación de los requerimientos sirve para especificarlos por escrito y

detallarlos, antes de la elaboración del sistema.10 Con los requerimientos

definidos, contamos entonces con especificaciones correctas y medibles — que

describen consistentemente, es decir, con claridad y sin ambigüedades, las

necesidades de los usuarios— para involucrarlas en el sistema.

Los requerimientos se subdividen en requerimientos funcionales y no

funcionales.

Los requerimientos funcionales definen las funciones que el sistema debe ser

capaz de realizar y describen las transformaciones que el sistema debe llevar a

cabo sobre las entradas para producir salidas precisas y útiles. Por ello es

importante que se describa lo que el sistema debe hacer. Entre este tipo de

requerimientos se deben establecer todos los aspectos que puedan ser

representados en un diagrama de casos de uso,11,12 en el cual se refleja la

funcionalidad del sistema, es decir, las funciones que se desea realice el sistema.

Evaluación

Sistema

Diseño

físico

Mejoramiento

Diseño

pedagógico

Diseño

funcional

Determinación de

requerimientos

Retroalimentación

Page 122: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

108

En este tipo de sistemas, el requerimiento de contenidos es primordial.

Asimismo, deberán especificarse las actividades que puede realizar cada uno de

los actores del diagrama de casos de uso.

Los requerimientos no funcionales tienen que ver con aquellas características

que pueden limitar el sistema, como, por ejemplo, rendimiento, interfaces del

usuario, fiabilidad, mantenimiento, seguridad, portabilidad, estándares, etcétera.

4.2 Diseño funcional

El diseño funcional se realiza con base en los requerimientos del usuario, donde

se establece la forma en que se deberá comportar el sistema y se define lo que se

espera del sistema en acciones concretas. El diseño funcional determina cuáles

son los componentes necesarios para que el sistema funcione adecuadamente,

antes de pasar al diseño físico.

En el diseño funcional se incluye, principalmente, el propósito del sistema; los

objetivos del diseño; definiciones, acrónimos y abreviaturas; referencias;

arquitectura del sistema; la forma en que funcionará el sistema para satisfacer los

requerimientos especificados. Todo ello se establece mediante la arquitectura del

sistema. Para definir la arquitectura del sistema se utilizan los diagramas de casos

de uso y diagramas de secuencia. De esta forma, se determinan las

funcionalidades del sistema. Además, se elaboran los diagramas de secuencia

para establecer con claridad la interacción de cada actor con el sistema. En el

diagrama de casos de uso se debe ubicar quiénes van a ser los actores, cuáles

serán sus funciones y cuál será su interacción con el sistema. Una vez terminadas

estas actividades, se las documenta en formatos preestablecidos. A continuación,

se muestra el diagrama de casos de uso del tutorado y del tutor del

administrador y del gestor (véanse las figuras 2, 3, 4 y 5).

Page 123: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

109

Fig. 2. Diagrama de casos de uso del tutorado del sistema de gestión de la

información para tutorías.

Fig. 3. Diagrama de casos de uso del tutor del sistema de gestión de la

información para tutorías.

Page 124: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

110

Fig. 4. Diagrama de casos de uso del administrador del sistema de gestión de la

información para tutorías.

4.3 Diseño pedagógico

El diseño pedagógico consiste en establecer los contenidos necesarios y ponerlos

en orden de mayor a menor grado de complejidad, empleando imágenes, a fin de

lograr impacto visual. Dado que esta forma de aprendizaje la tenemos desde

niños, esta sección se ha llamado ‚diseño pedagógico‛ y no ‚diseño

andragógico‛ (véase la figura 5).

Fig. 5. Orden de los contenidos.

Sistema de Gesti—n de la Informaci—n para

Tutor’as a nivel Licenciatura

Registrarse

AutenticarseGestor

Depto. acad�mico

ÇusesÈ

ÇusesÈ

ÇextendsÈ Establecer larelaci—n alumno-tutor

BD usuarios

Reglamento de tutor’asy Documentos de apoyo

ÇusesÈ

Page 125: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

111

4.4 Diseño físico

El diseño físico tiene dos vertientes, el diseño conceptual y el diseño detallado,

éstos se muestran en la figura 6.

Fig. 6. Tipos de diseño.

El diseño físico consiste en la definición de la distribución de los elementos en las

páginas principales y secundarias; en la elección de colores, botones, imágenes y

demás, obteniendo como resultado la interfaz gráfica que nos permitirá

interactuar con el sistema.

El diseño conceptual representa la suma de todos los subsistemas que integran el

sistema completo, proponiendo un modelo del producto global que realiza las

funciones necesarias para dar servicio al usuario. En la figura 7 se presenta parte

del diseño conceptual.

Fig. 7. Diseño conceptual del sistema de gestión de la Información para tutorías.

Page 126: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

112

(a) (b)

Fig. 8. Diseño conceptual del tutor (a) y del tutorado (b).

El diseño detallado consiste en definir cuál será el dibujo de cada icono que se

ubicará en la página, así como las imágenes y los colores que se utilizarán —

preferentemente se utilizan colores de tipo institucional (véase la figura 9).

Fig. 9. Diseño detallado de la vista del tutor (a); tutor-tutorado, entrevista inicial

(b); tutor-tutorado, habilidades de estudio (c); tutor-tutorado, análisis FODA (d).

4.5 Sistema

En esta sección se debe determinar con qué software se ha de desarrollar el

sistema. El sistema de tutorías utilizará el lenguaje HTML; sin embargo, para

facilitar el manejo de este lenguaje se utilizará el dreamwear. Así también, se

utilizará PHP para los formatos y el acceso al sistema. Para las animaciones se

utilizará Flash y Swish; para el diseño se utilizará Fireworks y finalmente para la

elaboración del video de bienvenida y el manual del usuario se utilizará

Camtasia y Snagit.

Page 127: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

113

4.6 Evaluación

Una vez concluido el desarrollo y su implementación, se procede a realizar la

revisión del sistema a fin de verificar que se cumplió con los requerimientos tanto

funcionales como no funcionales. Este proceso se desarrolla por medio de los

alumnos que realicen la evaluación del sistema y contesten un cuestionario para

disponer de información relevante del sistema y sus acciones (véase la figura 10).

Fig. 10. Cuestionario para evaluar el sistema.

Page 128: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

114

4.7 Retroalimentación

Después de analizar la pertinencia de realizar en el sistema los cambios

sugeridos, y en el caso de que no se haya cubierto algún objetivo, se hace la

retroalimentación. El mejoramiento comienza siguiendo el diagrama que se

muestra en la figura 11.

4.8 Mejoramiento

El mejoramiento se da en todas las etapas, empezando por la etapa de definición

de requerimientos, donde se deberán plantear los requerimientos obtenidos en la

etapa de evaluación. Los nuevos documentos generados deben estar actualizados

en versión y fecha, para que posteriormente se hagan los cambios en el sistema

(véase la figura 12).

Fig. 11. Diagrama de retroalimentación del sistema.

5 Conclusiones

Se obtuvo un modelo para el desarrollo de sistemas de gestión de la información

para tutorías en educación superior en el Instituto Tecnológico de Puebla. Este

modelo establece los requerimientos del sistema y de esta manera define los

alcances del sistema a desarrollar, con base en los requerimientos de la DGEST y

la ANUIES.

En el modelo, los módulos y objetos del sistema de tutorías se definieron para

que fueran reutilizables, a fin de aprovechar los elementos desarrollados.

Page 129: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

115

El establecimiento del modelo para el desarrollo de SGI permite utilizar

metodologías tipo UML. En este formato, la revisión y el mejoramiento de los

componentes de los sistemas resultan simples.

En el artículo se presentaron algunas de las secciones más remarcables y el diseño

propuesto para el sistema de tutorías.

Para el mejoramiento del sistema, se están empleando, entre otros, los

indicadores expuestos en la sección de evaluación y el formato de la figura 11.

Principalmente, se dispondrá de datos referentes al uso, facilidad y claridad de la

información. También se tendrá evidencia de la rapidez y el número de usuarios.

Para los casos expuestos, la información que den tanto los alumnos como los

tutores será vital para el mejoramiento del sistema, a fin de tener un SGI ameno,

de fácil uso y que permita desarrollar las actividades de tutoría en el Instituto.

Dado que en la actualidad vivimos en la era de la información, donde la ésta es

uno de los bienes más preciados de la empresa, aquel organismo que no esté

actualizado al respecto corre el riesgo de quedar rezagado; por lo tanto, es

recomendable digitalizar la información y colocarla en la red de redes. Esto hará

más ágil su acceso, de tal forma que pueda tenerse a disposición en el momento

en que sea requerida.

En relación con las áreas de oportunidad, se dispondrá de un conjunto de

elementos constructivos en el área de sistemas interactivos, los cuales permitirán

el desarrollo de sistemas de características similares en un tiempo menor.

Finalmente, se dispondrá de elementos humanos con los conocimientos

suficientes y necesarios para desarrollar sus propias aplicaciones, lo cual recae en

el ámbito de reducción de costos en el presente; y en el futuro, se tendrá la

capacidad de atender las necesidades de empresas e industrias en diferentes

zonas industriales, dado que las aplicaciones sobre sistemas interactivos son una

necesidad actual.

Referencias 1. Asociación Nacional de Universidades e Institutos de Educación

Superior (ANUIES), Programas Institucionales de Tutoría, ANUIES

(Colección de la Biblioteca de la Educación Superior, Serie

Investigaciones), 2000.

2. ANUIES, La Educación Superior en el Siglo XXI. Líneas estratégicas

de desarrollo, una propuesta de la ANUIES, ANUIES, marzo de 2000.

3. Roma López, Alejandra, La incorporación de los programas de

tutorías en las instituciones de educación superior, ANUIES (Colección de

documentos), 2003.

4. Programa Nacional de Extensión de la Cultura y los Servicios,

Aprobado en la XXX Sesión Ordinaria de la Asamblea General de la

ANUIES.

Page 130: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

116

5. Poder Ejecutivo Federal, Plan Nacional de Desarrollo 2007-2012,

objetivo 11, estrategia 14.2.

6. Pons, J. de P., R. García Pérez, R. Barragán Sánchez y O. Buzón

García, Análisis de páginas Web elaboradas por docentes de tecnología

educativa: una aproximación descriptiva de sus conceptos socioculturales,

Universidad de Sevilla, España.

7. República de Colombia, Ministerio de la Protección Social,

Informática siglo XXI, documento de especificación de requerimientos no

funcionales del proyecto de Mejoramiento de Procesos, Análisis y Diseño

del Sistema de Información para la Vigilancia de Eventos en Salud

Pública en la Fase 1: Subsistema Básico General y Subsistema de

Vigilancia en Salud Pública.

8. Zapata Ros, M., ‚Brecha digital y educación a distancia a través

de redes. Funcionalidades y estrategias pedagógicas para el e-learning‛,

Anales de Documentación, núm. 8, 2005, pp. 247-274.

9. Herrera, J. y Lizka J., ‚Ingeniería de requerimientos, ingeniería

de software‛, 2003.

10. Ferré Grau, X. y M. I. Sánchez Segura, Desarrollo orientado a objetos

con UML, Facultad de Informática-UPM.

11. Piattini Velthuis, M. y F. García Rubio, Calidad en el desarrollo y

mantenimiento del software, Alfaomega, México, 2003.

12. IEEE-SA Standards Board, IEEE Recommend Practice for Software

Requirements Specifications, IEEE (estándar 830), 1998

Page 131: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

117

Actualización de Bases de Datos DBF a MySQL

Abraham Briseño Cerón, Vanessa Guadalupe Félix Aviña,

Rogelio Alfonso Noris Covarrubias

Resumen. Con el uso de Internet, las empresas están invirtiendo en la

actualización de sus aplicaciones. El proceso de modernizar los sistemas requiere

del análisis de las estructuras de datos actuales para la construcción de nuevos

modelos de datos. El desarrollador deberá contar con una guía de los

mecanismos de transferencia de información entre las estructuras de datos para

mantener la integridad de los sistemas. En este trabajo se propone una

metodología para actualizar bases de datos que estén en formato DBF

transfiriéndolas al sistema manejador de base de datos MySQL, mediante una

herramienta de migración de datos elaborada en lenguajes XML y PHP.

Palabras clave: actualización de sistemas, bases de datos, migración de datos.

Sumario: 1 Introducción 2 Estado del arte 3 Metodología 3.1 Análisis de sistemas 3.2

Modelado y transformación 3.3 Estructuras y comparadores 3.4 Extractores e

inserción 3.5 Pruebas y revisión 4 Conclusiones y trabajo futuro.

1 Introducción

Las empresas, siguiendo un proceso natural de expansión de su mercado, tienen

necesidad de compartir su información con los usuarios o clientes. Para realizar

esta tarea, optan por desarrollar sistemas nuevos o actualizar sus aplicaciones

vigentes. Aproximadamente 80% de los gastos totales en el software de una

empresa corresponden a la etapa de mantenimiento;1 en términos económicos,

este porcentaje equivale a los gastos de adquisición de un sistema nuevo, o bien,

a la actualización del ya existente. Si la empresa requiere una modernización de

sus sistemas, debe contemplar el gasto en software, hardware y en la capacitación

tecnológica de los usuarios. En una actualización, así como en el desarrollo de un

sistema nuevo, lo más importante es proteger la integridad de la información; sin

embargo, los sistemas vigentes almacenan la información sin prever las ventajas

que se obtendrían si se le da un formato que permita su uso más allá de la

consulta simple de las bases de datos. El traslado de información, de una

Page 132: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

118

estructura de base de datos a otra, es sumamente delicado, debido a la necesidad

de asegurar la integridad de los datos antes, durante y después de la

transferencia. Asimismo, es recomendable utilizar una metodología clara para la

actualización de las bases de datos, facilitando, con este proceso, las consultas

posteriores, el manejo de la totalidad de los datos, la organización de su

almacenamiento, una identificación clara de los campos mediante los nombres

asignados al contenido, el uso de la normalización de datos y el establecimiento

de los niveles de concurrencia. Este proceso de actualización de datos llevará a

los desarrolladores a preguntarse cómo migrarlos. La operación es riesgosa

porque mezcla diferentes formatos, estructuras y parámetros y puede provocar

retrasos prolongados, costos altos y hasta pérdidas de información, inclusive. Lo

anterior depende de la herramienta que se seleccione, por ejemplo, la adquisición

de algún software o el desarrollo de una utilería de migración a la medida. El

presente trabajo se enfoca en la actualización de bases de datos en formato DBF

para su uso en el gestor MySQL, mediante una metodología en la cual se elaboró

una herramienta y se utilizaron lenguajes como XML (Extensible Markup

Language) y PHP, lo que dio como resultado un motor de migración denominado

DB-MY.

2 Estado del arte

La actualización de los datos es un proceso ligado a las bases de datos,

aplicaciones o sistemas de información, por lo tanto, la conservación de la

información existente es primordial porque ésta suele tener un valor histórico

para sus propietarios, o bien, para las organizaciones que la manejan.2 De ahí

proviene el interés en el desarrollo de metodologías y herramientas diversas para

llevar a cabo transferencias de datos a otros ambientes. Los métodos que se

utilizan pueden ser directos o indirectos; los primeros operan de la siguiente

manera: abren los archivos DBF o MDB, se conectan a la base de datos MySQL y

transfieren sus contenidos a través de esa conexión con la misma estructura de

fila y columna en las tablas origen y destino. Los segundos crean uno o más

archivos temporales, los cuales posteriormente generarán las tablas de la base de

datos, o bien, insertarán los registros conservando la misma estructura.3 Existen,

además, los generadores automáticos de planes de migración de datos, los cuales

funcionan a partir de la información disponible en los modelos producidos con

las herramientas CASE. Estas herramientas trabajan por comparación —entre los

esquemas que definen el sistema original y los del sistema evolucionado, el cual

admite los cambios—, y así es posible producir de manera automática planes de

migración de datos cuya ejecución migre y transforme la información

almacenada desde la base de datos inicial hasta la final.4 En cuanto a las

herramientas que se utilizan para llevar a cabo la migración de datos, se tienen

Page 133: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

119

las siguentes: dbf2mysql, Ispirer SQLWays, Embarcadero DT/Studio, DBF-to-

MySQL, DBF Converter, todas las cuales son programas ágiles de conversión de

datos; sin embargo, en algunos casos no soportan un número amplio de registros;

en otros, el tiempo de migración es demasiado y provoca la pérdida de datos,

además de que la transferencia de los datos se realiza sin normalizarlos o

distribuirlos, como se observa en el cuadro 1, donde se comparan estas

herramientas.

Cuadro 1. Comparación de herramientas de migración DBF a MySQL

Este proyecto se basa en la necesidad de actualizar los datos que se encuentran en

formato DBF para su uso en un operador de datos que facilite el trabajo con ellos

en la Web, como lo hace el gestor MySQL. Para llevarlo a cabo, los recursos

económicos de la empresa deben tomarse en cuenta, pues en ocasiones es

preferible el desarrollo de herramientas a la medida, con tendencia al uso de

software libre, lo que disminuye el costo de las licencias. Se recomienda que el

programador cuente con un plan o metodología de trabajo para la migración de

datos, con la finalidad de garantizar la integridad de la información.

3 Metodología

Para actualizar las bases de datos, deben establecerse primero los requerimientos

de información que se manejarán en el nuevo sistema y la relación de los datos

con el antiguo esquema. Es importante conocer al dueño o los dueños de la

información, así como los criterios de depuración que se aplicarán a los datos

seleccionados, asegurando de esta manera una óptima calidad de migración.5 Si

se establece un buen esquema de trabajo de actualización, se facilitará el traspaso

de datos entre estructuras diversas. En la figura 1 se observan las etapas de este

propuesta de metodología para la actualización de datos, de DBF a MySQL:

Page 134: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

120

Fig. 1. Etapas de la actualización de una base de datos.

Este modelo se pondrá en práctica en el departamento de estadística de la

Secretaría de Educación y Cultura durante la actualización de algunos de sus

sistemas —los cuales están elaborados en DBase—, debido a que la ley de

transparencia de la información los obliga a contar con un portal donde se

publiquen las acciones en materia de información educativa y estadística de la

región.

3.1 Análisis de sistemas

En esta etapa se contemplan tanto la definición de los datos como los

requerimientos del nuevo sistema. Para comenzar, se hace una inspección interna

de las bases de datos existentes con el objetivo de diseñar el modelo de datos

correspondiente. Es posible que no se cuente con información previa sobre el

repositorio de datos, por lo que se tendrá que hacer una propuesta. Con este

primer modelo, y atendiendo a las necesidades de información, se construirá el

nuevo modelo de base de datos.

3.2 Modelado y transformación

El resultado del análisis es el modelo de datos. Éste sirve como base para el

modelo nuevo —y en caso de ser necesario, se mejora, por ejemplo,

normalizando los datos. Esta variable es la referencia que se usa en el modelo de

datos, lo que resulta muy complejo para el administrador de una base de datos

como ésta. En este caso, se llevó a cabo una transformación del modelo, pues éste

Page 135: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

121

no estaba validado. Se aplicaron entonces las tres primeras formas normales y el

resultado fue un nuevo modelo relacional de datos.

Las tres primeras formas normales son las siguientes:

Primera forma normal: una relación se encuentra en 1FN si y solo si todos

sus renglones columna son atómicos.

Segunda forma normal: se encuentra en 2FN si los atributos no primos

dependen de una la llave primaria.

Tercera forma normal: está en 3FN si está en 2FN y todos los atributos no

primos no dependen transitivamente de la llave primaria.

Como parte de la metodología, se diseñó una herramienta de migración con el

siguiente modelo, el cual consta de tres etapas, como se muestra en la figura 2.

Fig. 2. Esquema para elaborar herramienta de migración.

Las tres etapas del modelo de esta herramienta se describen de esta manera:

Primera etapa: se lleva a cabo la lectura de las estructuras de datos. Segunda

etapa: se hace una comparación entre estructuras y se define un mecanismo de

control para la migración. Tercera etapa: contando con el mecanismo de control,

se traspasa la información a la nueva estructura de datos.

3.3 Estructuras y comparadores

Con el apoyo de los diccionarios de datos, y mediante la elaboración de reglas de

transformación, se construyen las estructuras tanto del modelo anterior como del

nuevo. Esto forma parte de la primera etapa de la migración. El comparador de

campos o mapeo entre las fuentes de origen y destino es necesario. Este paso es

indispensable para que la información se coloque en su cuadro o base de datos

Page 136: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

122

correspondiente y se mantenga la relación de datos que permite asegurar la

integridad de la información. Para esto, en lenguaje XML, se elaboraron archivos

con las estructuras de origen y destino, así como los metadatos, los cuales

describen cómo se comportan los datos, de tal manera que, al cargar un DBF, se

haga una inspección por filas. Este mapeo servirá para ir generando las

estructuras pertinentes para la inserción y revisión por columnas en la

comparación de estructuras. La información de definición de datos se envía al

módulo denominado ‚comparador‛, para saber en qué sección del repositorio

nuevo se depositarán los datos. El llamado de la comparación se hace invocando

los dos archivos de las estructuras, como se muestra en el siguiente código:

<?xml version="1.0" standalone="no"?>

<files>

<file dbf=’miarchivo.dbf’ xml=’miarchivo.xml’/>

</files>

Dentro de cada XML se tiene la información correspondiente a cada DBF, además

de su correspondiente en la base de datos nueva, los metadatos que describen

cada archivo DBF —y que contienen el nombre del cuadro del repositorio nuevo

y el identificador del campo—, así como los datos manejados en las variables dbfi

y dbff, los cuales servirán para hacer la comparación semántica del campo y

validar que el tipo de dato corresponda, como puede verse en el siguiente

ejemplo de código:

<?xml version="1.0" standalone="no"?>

<database name=’nombre_base_datos’ server=’servidor’ user=’usuario_conexión’

pass=’password’>

<general>

<table name=’nombre_tabla’>

<campo name=’nombre_campo’ dbfi=’variable_dbf’ dbff=’variable_mys’/>

</table> </general> </database>

Después de la comparación de estructuras vendrá el proceso de lectura y

escritura de datos.

3.4 Extractores e inserción

La construcción de los métodos de lectura de información de las fuentes de datos

se realiza y éstos se vinculan con los módulos de estructuras y comparación. Este

último módulo servirá de vínculo en el proceso de inserción, donde se tendrán

los métodos de escritura y validación del formato para el nuevo sistema operador

Page 137: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

123

de base de datos. Este proceso se realiza mediante clases implementadas en PHP,

que forman el core del motor DB-MY. El funcionamiento será el siguiente: una

vez que se identifica el nombre del archivo DBF y se cuenta con el XML que tiene

la estructura de origen y destino, se carga en la memoria, por medio del mapeo,

la ruta del archivo, el cual habrá de recorrerse de manera secuencial para ir

tomando las filas y colocándolas en un ciclo finito, a fin de realizar la lectura y

escritura por medio de los comandos de SQL. Este paso se realizará con la

construcción de funciones desarrolladas en las clases del motor y con la

manipulación de la clase XMLCore (xmlcore.php), la cual va acomodando los

datos al leer los archivos DBF e indica cómo éstos se deben acoplar. Además, se

ejecuta una clase denominada ‚Conversor‛ (conversor.php) para que se encargue

de coordinar el trabajo de lectura y controle la inserción de datos. Con este core,

todo el proceso de lectura y escritura entre la estructuras quedará hecho. Cabe

señalar que los datos se migran a MySQL, pero el core puede hacerlo hacia

cualquier otro sistema operador de datos con características similares a las de

MySQL. Una observación: si al establecer una metodología como ésta no se

cuenta con la posibilidad de desarrollar una herramienta para la migración de

datos durante la actualización, se puede utilizar alguna de las ya existentes, de

acuerdo con el problema.

3.5 Pruebas y revisión

En esta etapa se realizarán evaluaciones de la migración de datos. Primero se

simularán cargas de cuadros de muestra, las cuales servirán para identificar los

inconvenientes que podrían presentar las cargas reales. Esto permitirá hacer las

modificaciones necesarias en el motor o en los archivos de estructura de origen y

destino. Después se empezarán a trasladar cuadros pequeños, verificando si los

datos son correctos. Si es así, entonces, por último, se realizará la migración

restante del repositorio antiguo al nuevo y se proseguirá con la revisión de

resultados. En ocasiones, será necesario diseñar de nuevo algunas funciones de

lectura o de escritura, si es que están provocando pérdidas de información. Para

detectar estas fallas, es importante hacer una revisión a detalle antes de dejar

trabajando por sí solo al motor. Las reglas de control para determinar dónde

podría estar el error son indispensables para hacer una herramienta estable, así el

motor de migración coordinará todo el proceso de transacción y, por ejemplo, si

se presenta algún error, ejecutará una operación de tipo rollback y omitirá lo

actualizado. Por último, se realizaron pruebas con datos reales y se obtuvo que al

pasar un archivo DBF pequeño, de 34 registros, la migración tarda de 2 a 3

segundos. Con un DBF de estructura compleja, de 13 816 registros, tarda de 10 a

15 minutos. Esto es relativamente rápido si se lo compara con la cantidad de

información a transferir o con las veces que se debe repetir un proceso

Page 138: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

124

manualmente. Además, se puede realizar desde cualquier máquina conectada a

Internet. Esta herramienta es genérica, de alguna manera, puesto que se la podría

adaptar fácilmente a cualquier otra tarea de migración de datos; es flexible y

expandible para soportar otros gestores de base de datos y para incrementar el

rendimiento de las actividades de traspaso de datos. En la figura 3 se muestra la

interfaz de migración de datos datos y los controles visuales para verificar el

estado de este proceso.

Fig. 3. Interfaz para migrar bases de datos DBF a MySQL.

Una vez concluidos la metodología y el desarrollo de esta herramienta, se tienen

los datos en una plataforma de gestión de datos diferente y lista para generar la

actualización de software o de las aplicaciones necesarias.

4 Conclusiones

Esta metodología proporciona los pasos para llevar a cabo la transferencia de

datos entre las estructuras DBF y MySQL. Se apoya en el desarrollo de una

herramienta hecha a la medida para garantizar la actualización de los datos,

debido a que las existentes en el mercado no servían en las condiciones

específicas de este problema. La renovación de las estructuras de bases de datos

incide en las necesidades globales de información. Para realizar esta tarea, el

análisis es fundamental porque de esta manera se conocen las estructuras de

origen con base en las cuales se proyectarán las estructuras nuevas. Al conocer

ambas estructuras se controlan mejor la definición de datos, la lectura y el paso

de la información a través de las herramientas de migración. Los programadores

pueden optar por el desarrollo de herramientas de migración o por la utilización

de alguna ya existente. Una buena metodología garantizará el éxito de la

actualización de la información. Este trabajo se llevó a cabo para actualizar

sistemas de información estadística que estaban desarrollados en DBase,

mediante cuatro pasos básicos: la lectura de las estructuras, la comparación para

Page 139: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

125

indicar el origen y el destino, la escritura de datos y las estructuras de control de

migración. Con este procedimiento, se hizo la actualización de información entre

dos sistemas de operación de datos, se desarrolló una herramienta denominada

‚DB-MY‛ y se utilizaron lenguajes como XML y PHP. Este proyecto permitió

actualizar en poco tiempo todos los registros estatales de educación en cualquier

nivel, de manera eficiente y automática. Esta actualización, ya consolidada, forma

parte de las utilerías del Sistema de Información Estadística y Educativa de la

SEPyC. En el futuro se continuará desarrollando esta herramienta de migración,

tomando en cuenta la compatibilidad con otras extensiones de archivos de datos,

así como con otros sistemas operadores, de tal forma que se su utilización se

generalice entre los diversos gestores de datos.

Referencias

1. Ramos, I. y J. Silva, ‚Un generador de planes de migración‛, Taller de

Evolución, VI Jornadas de Ingeniería del Software y Bases de Datos, Almagro

(Ciudad Real), noviembre de 2001.

2. Talend, ‚Open Data Solutions‛, http://www.talend.com/index.php#.

3. Llarens, Jorge, ‚Migraciones.Mygnet‛,

http://www.mygnet.net/manuales/mysql/manejo_de_base_datos.

4. Carsí, J. A., I. Ramos, J. Silva, J. Pérez y V. Anaya, Un generador automático de

planes de migración de datos, Departamento de Sistemas Informáticos y

Computación, Universidad Politécnica de Valencia.

5. Data Migration Testing Methodology,

http://www.docstoc.com/docs/document-preview.aspx?doc_id=287735.

Page 140: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

126

Page 141: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

127

Proposición de un Modelo para la Acentuación

Automática de Palabras Ambiguas del Español,

utilizando Etiquetado de Texto

Raymundo Montiel, Blanca E. Pedroza, María Guadalupe Medina, Carlos Pérez

Resumen. La acentuación de palabras cuando se escribe un texto en español es

un problema de ambigüedad, debido a que muchas palabras llevan acento o no

dependiendo del contexto de la frase. El problema de la ambigüedad está

relacionado con la asignación de etiquetas o categorías gramaticales a las

palabras dentro de una frase, es decir, cuando se indica si se trata de un verbo, un

sustantivo, etcétera. En el presente artículo se propone un modelo que ayuda a

determinar en forma automática si una palabra con acento diacrítico debe llevar o

no acento ortográfico, con base en la asignación de etiquetas y mediante la

aplicación de métodos híbridos —algoritmos supervisado y no supervisado.

Posteriormente, el método se aplica en el diseño de un programa de cómputo

cuya función es de apoyo en la enseñanza de las reglas de acentuación y con el

cual se realiza la acentuación automática de palabras ambiguas. Este método

podría ser una herramienta en un procesador de palabras.

Palabras clave: desambiguación del sentido de la palabra (DSA),

Keywords: word sense disambiguation, accent restoration, part of speech tagger.

Sumario: 1 Introducción 2 Solución 3 Resultados 4 Conclusiones Referencias

1 Introducción

En computación, una de las tareas más difíciles —y que ha suscitado mucho

interés en el ámbito del procesamiento del lenguaje natural (PLN)— se produce

cuando una palabra tiene varios sentidos o significados. Este fenómeno

lingüístico se conoce como ‚polisemia‛ y a él se le asocia lo que en el

procesamiento del lenguaje natural se conoce como desambiguación del sentido

de la palabra (DSA), tarea que consiste en identificar el sentido correcto de una

palabra en un contexto.4 La polisemia está muy relacionada con el problema de la

asignación de categorías gramaticales, el cual consiste en decir si una palabra es

Page 142: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

128

un verbo, un artículo, un adjetivo o un sustantivo,3 dependiendo del significado

que le corresponde en el contexto de la oración. El proceso de acentuar palabras es también un problema de ambigüedad, debido

a que en el español existen muchas palabras que pueden estar acentuadas o no,

dependiendo de su contexto, del tiempo de la acción en la oración, etcétera. El

acento diacrítico distingue palabras formalmente idénticas, es decir, escritas con

las mismas letras, pero que pertenecen a categorías gramaticales diferentes. Aunque los procesadores de texto de las grandes compañías de software poseen

funciones muy sofisticadas —como, por ejemplo, un diccionario para corregir la

ortografía—, tienen un límite.

Estos correctores no comprenden el significado de las palabras, sino que se

limitan a ir comparando cada palabra del texto con las existentes en su

diccionario, de modo que si encuentra la palabra en cuestión la dará por válida si

está escrita correctamente, en caso contrario la marca para indicar un error.1

Sin embargo, cuando aparecen palabras que pueden llevar acento ortográfico o

no, el procesador no las marca como errores si el usuario no les pone acento, y

tampoco le indica que puede estar mal escrita. Entonces, un usuario que no

conozca bien el idioma se quedaría con la idea de que la palabra está escrita

correctamente. La falta de acentos en algunas palabras de las oraciones es un problema de

ambigüedad. Las ambigüedades más comunes en la acentuación se dan entre las

palabras con terminación ‚o‛, como en ‚completo‛ y ‚completó‛. Se trata de los

tiempos presente y pretérito de los verbos que terminan en ‚ar‛. Otras

ambigüedades son semánticas, como sucede con algunos sustantivos; por

ejemplo, ‚secretaria‛ —persona encargada de escribir la correspondencia— y

‚secretaría‛ —sección de un organismo, institución o empresa.8 En este artículo se describirá el modelo que se usó para diseñar una herramienta

informática de desambiguación semántica para el idioma español, cuya utilidad

es la acentuación correcta de las palabras en los textos escritos, basándose en el

etiquetado de las oraciones. Para llevar a cabo el modelo se aplicó un método

híbrido, esto es, mediante un algoritmo supervisado y uno no supervisado.

2 Solución

El objetivo de este trabajo es crear un sistema que ayude a determinar si una

palabra con acento diacrítico debe o no llevar acento ortográfico, lo cual está

determinado por el contexto en el que se esté ocupando, con ayuda de las

etiquetas asignadas.

La primera tarea del modelo es el análisis léxico, el cual consiste en la eliminación

de los acentos de las palabras de la frase de entrada, ya que para el cálculo de los

Page 143: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

129

parámetros del modelo se requieren palabras sin acentos. Además, el analizador

léxico identifica y separa los signos de puntuación de las palabras.

Posteriormente, se establece si existen palabras ambiguas en la oración de

entrada, y al mismo tiempo, el modelo indica la posición en la que éstas se

encuentran. Esto se realiza comparando cada una de las palabras de las oraciones

con las palabras cuyo acento es diacrítico, en el diccionario previamente

construido. El modelo general que se propone para la solución del problema se

ilustra en la figura 1.

Fig. 1. Arquitectura del modelo de solución.

En este método de solución se utilizan los modelos ocultos de Markov (HMM),

los cuales se definen siguiendo la notación presentada por Rabiner,9 como la una

5-tupla µ = (Q, V, π, A, B), donde:

Page 144: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

130

1. Q es el conjunto de estados del modelo. Aunque los estados permanecen

ocultos, para la mayoría de las aplicaciones prácticas se conocen a priori. En

nuestro caso de etiquetado de palabras, cada etiqueta sería un estado. En

general, los estados están conectados de tal modo que cualquiera de ellos se

alcanza desde cualquier otro estado en un solo paso. Los estados se etiquetan

como ,1, 2,<, N}, y el estado actual en el instante de tiempo t se denota como

. Para el etiquetado de palabras no hablaremos de los instantes de tiempo,

sino de las posiciones de cada palabra en la frase.

2. V es el conjunto de los distintos sucesos que se observan en cada uno de

los estados. Cada uno de los símbolos individuales que un estado emite se

denota como { }. En el etiquetado de palabras, M es el tamaño del

diccionario y cada es una palabra distinta.

3. π = es la distribución de probabilidad del estado inicial. Por lo tanto,

4. A = es la distribución de probabilidad de las transiciones entre

estados, es decir,

5. B= es la distribución de probabilidades de los sucesos

observables, es decir,

Éste es un método estocástico que necesita parámetros previamente definidos, los

cuales se calculan mediante métodos de entrenamiento supervisado y no

supervisado. Para la fase del entrenamiento supervisado se utilizó un cuerpo de texto

etiquetado conocido como CONLL, el cual es una colección de artículos

noticiosos del año 2000 ofrecida por la Agencia de Noticias EFE. Los parámetros

(1)

(2)

(3)

Page 145: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

131

del modelo se estiman por ‚m{xima verosimilitud‛,5 a partir de las frecuencias

relativas de aparición de los eventos del texto etiquetado (véase la figura 2).

Fig. 2. Entrenamiento supervisado y no supervisado.

Las probabilidades de transición aij se obtienen contando las veces que se transita

del estado si al estado sj y dividiendo el resultado por las veces que se transita por

el estado si.

(1)

Las probabilidades de emisión se obtienen contando las veces que un símbolo (vk)

ha sido emitido en un estado (sj) y dividiendo el resultado por las veces que se ha

transitado por ese estado:

(2)

Una vez que tenemos los parámetros iníciales de µ, se aplica el algoritmo Baum-

Welch,6 lo que incrementa la probabilidad de las transiciones entre los estados y

sus símbolos, y se mejora en consecuencia la probabilidad de la secuencia de

observaciones dada. En el modelo de solución (véase la figura 1) se maneja una fase de etiquetado que

utiliza el algoritmo de Viterbi, con algunas modificaciones, ya que no se

consideran todos los estados posibles, es decir, todas las etiquetas del juego de

etiquetas utilizado, sino sólo las etiquetas candidatas asignadas a cada una de las

palabras ambiguas.

Page 146: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

132

Para ejemplificar el funcionamiento del modelo, consideremos la oración ‚El jugo

frío est{ sobre la mesa‛, en la cual existen varias palabras ambiguas. Adem{s,

como existen palabras ambiguas al principio de la oración, se recorre t palabras

hasta encontrar una palabra no ambigua, en este caso, ‚frío‛. Una vez encontrada

la primera palabra no ambigua, se le asigna la etiqueta más probable. Después de

esto, se asigna la etiqueta más probable a t-1 a partir de la etiqueta (t), ya

conocida (véase la figura 3), hasta llegar a t=1.

Una vez obtenidas las primeras etiquetas de la oración, el cálculo para obtener las

etiquetas de las palabras ambiguas se realiza sólo sobre las etiquetas asignadas

manualmente a estas palabras. En el cuadro 1 se muestra la oración junto con las

etiquetas asignadas.

Fig. 3. Asignación de etiquetas.

Cuadro 1. Resultado del etiquetado

Después de haber obtenido las etiquetas de cada una de las palabras de la

oración, se determina si las palabras ambiguas deberán o no llevar acento, con

base en nuestro diccionario de palabras ambiguas etiquetadas (véase el cuadro 2).

El jugo frío está sobre la mesa

det_art sust adj_cal vbo_aux prep det_art sust

Page 147: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

133

Cuadro 2. Ejemplo de palabras ambiguas con sus etiquetas PALABRA

AMBIGUA

ETIQUETA PALABRA

EL det_art el

pron_per él

ESTÁ det_dem esta

vbo_aux está

JUGO

sust jugo

vbo_ind jugó

sust sobre

SOBRE

prep sobre

vbo_sub sobre

vbo_ind sobré

Por último, se hace una comparación de las palabras de la oración, con la etiqueta

asignada, y se determina si la palabra debe o no llevar acento. El resultado de

nuestro ejemplo se muestra en el cuadro 3.

Cuadro 3. Resultado de ejemplo

Uno de los problemas que no se resolvió con la asignación de categorías

gramaticales fue el de una palabra con acento diacrítico etiquetada con la misma

categoría gramatical, como se muestra en el cuadro 4.

Cuadro 4. Palabras con terminación ‚o‛

Palabra Etiqueta

abrazo sust

abrazo vbo_ind

abrazó vbo_ind

Las dos últimas palabras corresponden a la conjugación en modo indicativo del

verbo ‚abrazar‛; sin embargo, la primera corresponde al tiempo presente en

primera persona y la segunda al tiempo pasado en tercera persona. Para

solucionar este problema se creó un conjunto de reglas utilizando ‚listas de

decisiones‛ similares a las utilizadas por Yarowsky.2

En el cuadro 5 se presenta un extracto de las reglas obtenidas, ordenadas de

acuerdo con su aparición en el corpus de entrenamiento, en el cual también se

indica el orden en que se han de ir verificando cada una de las reglas cuando se

obtengan ejemplos nuevos para identificar el patrón que les corresponde.

El jugo frío está sobre la mesa

Page 148: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

134

Cuadro 5. Extracto del conjunto de reglas

% Regla Clasificación

19.63 YO -o » -o

19 SE -o » -ó

16.6 -o DE » -o

14.6 -o det_art » -ó

10.83 sust -o » -ó

10.6 -o CON » -o

9.09 adv -o » -o

8.33 -o det_ind » -ó

Además de acentuar las palabras ambiguas, se trata de acentuar las palabras que

siempre llevan acento, es decir, aquellas palabras que tienen acento, pero no

diacrítico. Para esto, se hizo una base de datos de palabras con acento.

3 Resultados

Para la evaluación del modelo, se reunió una colección de 63 artículos de

distintos contextos —deportes, ciencia, salud, etcétera—, obtenidos del periódico

digital El Universal. Los artículos fueron evaluados por el modelo a partir de

frases completas, en el cuadro 6 se muestra un resumen de los resultado

obtenidos.

Cuadro 6. Resumen de los resultados obtenidos

1) Número del artículo. 2) Palabras por artículo. 3) Con acento diacrítico. 4) Con acento

diacrítico, sin acento. 5) Con acento diacrítico, sin acentuar. 6) Con acento diacrítico, con

acento. 7) Con acento diacrítico, acentuadas. 8) Con acento no diacrítico. 9) Con acento no

diacrítico, acentuadas.

Page 149: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

135

Con estos datos nos damos cuenta de que:

A continuación, los datos que aparecen en el cuadro 7 son los resultados

obtenidos utilizando las métricas de efectividad de las tasas de recuperación (r),

precisión (p), error (e), exactitud (a), y FB. En la primera parte del cuadro 3 se

muestran los resultados obtenidos a partir de las palabras acentuadas por nuestro

modelo, donde la ‚precisión‛ —total de palabras acentuadas entre el número

total de palabras con acento diacrítico— tiene como resultado 84.11%. Uno de los

problemas que se han identificado est{ en el etiquetado de la palabra ‚el‛, pues

siempre que el sistema encuentra esta palabra al comienzo de la frase, le asigna la

etiqueta ‚pronombre personal‛ y la acentúa; sin embargo, también puede tomar

la etiqueta de ‚artículo‛, en cuyo caso no lleva acento.

Cuadro 7. Resultados Con base en

palabras

Con base en

palabras

acentuadas no acentuadas

r = .7153 e = 0.0549 r = .9796

p = .8411 a = .945 p = .9580

f-B = .7731 f-B = .9687

Pero, como ya se ha mencionado, este modelo también determina cuándo una

palabra con acento diacrítico no debe llevar acento ortográfico. En la segunda

parte del cuadro 7 se muestran los resultados obtenidos a partir de las palabras

que no deben llevar acento ortogr{fico. En este caso, la ‚precisión‛ —total de

palabras que el modelo decide no acentuar, entre el número total de palabras con

acento diacrítico— tiene como resultado 95.8%. Sin embargo, el resultado de

‚exactitud‛ —total de decisiones correctas tomadas por el modelo— es de 94.5%,

con un error de 5.49%.

Este modelo se programó en Java y se está trabajando en la creación de un

programa de cómputo que sirva como auxiliar en la enseñanza de las reglas de

acentuación y para acentuar palabras ambiguas que por lo regular los editores de

texto no acentúan. En la figura 4 se muestran algunas de las pantallas del sistema.

Page 150: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

136

Fig. 4. Pantallas del sistema para la acentuación de textos en español.

4 Conclusiones

El etiquetado de palabras es una técnica que ayuda a identificar la ambigüedad

en la acentuación de palabras de un texto determinado y a producir herramientas

computacionales que revisen y corrijan la acentuación correcta de textos en

español, ya sea para hacer más fácil la escritura de los documentos o para

utilizarlas en la enseñanza de las reglas gramaticales del español.

Aunque el problema de la ambigüedad en la acentuación de las palabras no es

sencillo de resolver, aún se puede seguir analizando la gramática del idioma para

encontrar patrones de comportamiento en las palabras, de acuerdo con las

características del contexto en el cual se encuentren las oraciones. Además, las

teorías y algoritmos ya existentes para el manejo de las gramáticas son factibles

de aplicación, así como lo son las teorías del área de los sistemas inteligentes,

como el aprendizaje automático. Por lo tanto, todavía hay mucho que investigar

en este tema, si se quieren producir sistemas de cómputo que ayuden al usuario a

corregir sus errores de acentuación y otros errores ortográficos.

Se propone que en el futuro se trabaje en lo siguiente:

1) El aumento de las palabras con acento diacrítico, las palabras con acento no

diacrítico y en las categorías gramaticales para disminuir la ambigüedad en el

etiquetado. 2) La creación de un módulo, dentro del modelo, para el

entrenamiento de los casos no resueltos. 3) El diseño de la interfaz para la

enseñanza de las reglas gramaticales, y en especial, del uso de las palabras con

acento diacrítico. 4) La aplicación del algoritmo de desambiguación semántica,

para mejorar resultados. 5) El análisis sintáctico previo para reducir ambigüedad

en la frase. 6) La creación de un sistema global de apoyo para la enseñanza o

reafirmación de las reglas ortográficas, particularmente, de la acentuación. 7) La

Page 151: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

137

identificación de un patrón de ambigüedad para los casos similares al de la

palabra ‚el‛.

Referencias 1. Pascual, F., Domine Microsoft© Office XP Profesional, versión 2002, edición

especial, Alfaomega, México, 2002.

2. Yarowsky, D., ‚Decision List for Lexical Ambiguity Resolution: Application

to Accent Restoration in Spanish and French‛, en Proceeding of the XXXII

Annual Meeting of the Association for Computational Linguistics, 1994, pp. 88-95.

3. Perea, J., Etiquetado de textos y su aplicación a la traducción, University of

Granada (investigación inédita), 2005.

4. Stevenson, M. y Y. Wilks, ‚Combining Independent Knowledge Sources for

Word Sense Disambiguation‛, en R. Mitkov (ed.), Recent Advances in Natural

Language Processing, John Benjamins Publisher, 2000.

5. Dempster A., N. Laird et al., ‚Maximum Likelihood from Incomplete Data

Via the EM Algorithm‛, Journal of Royal Statistical Society (Series B,

Metodological), vol. 39, núm. 1, 1977, pp. 1-38.

6. Baum, L., ‚Statistical Inference for Probabilistic Functions Finite State

Markov Chains‛, Annual Mathematic Statistical, vol. 37, 1966, pp. 1554-1563.

7. Yarowsky, D., ‚A Comparison of Corpus-Based Techniques for Restoring

Accents in Spanish and French Text‛, Proceedings of the II Annual Wordshop on

Very Large Text Corpora, Kyoto, 1994 (en prensa).

8. Real Academia Española, Banco de datos (CREA). Corpus de referencia del

español actual, en Internet (http://www.rae.es), página consultada el 29 de abril

de 2009.

9. Rabiner, L. R., ‚A Tutorial on Hidden Markov Models and Selected

Applications in Speech Recognition‛, IEEE, vol. 77, núm. 2, 1989, pp. 257-286.

10. Wagacha, P., G. De Pauw et al., ‚A Grapheme-Based Approach for Accent

Restoration in Gikuyu‛, en Proceedings of the V International Conference on

Language Resources and Evaluation, 2006, pp. 1937-1940.

11. Bobiceva, V., ‚O altã metodã de restabilire a semnelor diacritice‛, en I.

Pistol, D. Cristea y D. Tufiş (eds.), Resurse Lingvistice şi Instrumente pentru

Prelucrarea Limbii Române, 2008, pp. 179-188.

12. De Pauw, G., P. W. Wagacha y De Schryver, G. M., ‚Automatic Diacritic

Restoration for Resource-Scarce Language‛, en V. Matousek y P. Mautner

(eds.), TSD 2007, LNAI 4629, 2007, pp. 170-179.

Page 152: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

138

Page 153: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

139

Ladrillo rojo: aplicación de redes de Petri a un

proceso milenario

Carlos Marín, Obed Cortés, Rafael Rojas

Resumen. Durante mucho tiempo, la zona productora de ladrillo rojo en el

estado de Puebla se ha visto marcada por un problema que involucra pobreza y

contaminación relacionadas de tal forma que pocos han intentado abordar su

solución. En este artículo, la Universidad Politécnica de Puebla hace una

propuesta de solución de uno de los puntos ese problema. El objetivo del artículo

es ofrecer una visión general de la industria ladrillera en la región de Cholula,

Puebla, destacando las áreas de oportunidad para la automatización del proceso

mediante técnicas avanzadas de optimización. En primer lugar, se hace una

introducción general sobre cómo ha sido este proceso a lo largo de la historia

para posteriormente tratar la automatización por medio de redes de Petri. Al

final, se muestran las conclusiones respecto al ejemplo de su aplicación a una de

las partes del proceso, con el propósito de evolucionar a otro que se adapte a las

demandas actuales del mercado.

Palabras clave: ladrillo rojo, proceso, automatización, redes de Petri.

1 Introducción

En las antiguas Mesopotamia y Palestina, lugares donde apenas se disponía de

madera y piedras, desde hace unos 9 000 años el ladrillo ha constituido el

principal material de construcción. En lo que respecta a nuestro continente, las

civilizaciones indígenas prehispánicas lo utilizaron, por ejemplo, en la

construcción de las pirámides Olmecas y Mayas.

En la actualidad, un ladrillo es una pieza de cerámica ortoédrica elaborada con

arcillas compuestas principalmente de sílice, alúmina, agua y cantidades

variables de óxidos de hierro y otros materiales alcalinos, como los óxidos de

calcio y los óxidos de magnesio. El ladrillo rojo se distingue de su predecesor, el

adobe, porque sufre cambios físico-químicos al someterse a las altas temperaturas

de cocción. Sin embargo, justo esta parte del proceso y su evolución son lo que

hoy en día hace polémica su fabricación.

Page 154: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

140

2 Generalidades

2.1 Situación actual

Una de las actividades distintivas de la región de Cholula, Puebla, es la

fabricación de ladrillo rojo y sus derivados. Aquí se concentra la mayor cantidad

de productores de ladrillo rojo del país. En comunidades como San Diego

Cuachayotla, San Cristóbal Tepontla, San Mateo Cuanalá, Santa María

Coronango y Santa María Zacatepec, por mencionar sólo algunas, ubicadas en los

municipios de San Pedro Cholula, San Andrés Cholula, Juan C. Bonilla y

Coronango, 8 000 familias se dedican a la producción de este ladrillo.

Si bien es cierto que este proceso productivo ha tenido avances notables desde la

utilización de combustible en lugar de leña, prácticamente se ha mantenido

intacto desde el año 200 d. C.

Este hecho simple tiene repercusiones importantes en la sociedad, la economía y

la ecología de la región. En la actualidad, una familia productora de ladrillo que

manufactura a mano 1 100 piezas diarias, obtiene una ganancia neta de 88 pesos

—0.08 pesos por pieza—, lo cual pone en riesgo la integridad del núcleo familiar.

Por otra parte, de acuerdo con la red de monitoreo ambiental (REMA) del

gobierno del estado de Puebla, la región de 3 kilómetros cuadrados donde se

concentran 322 hornos de ladrillo tradicionales, produce anualmente 808

toneladas de contaminantes —partículas de monóxido de carbono, óxidos de

nitrógeno, bióxido de azufre, bifenilos, hidrocarburos aromáticos policíclicos,

policlorados y dioxinas—, lo que repercute en la calidad del aire.

Fig. 1. Combustible tilizado para el proceso de cocción. Los

barriles contienen combustóleo (fuel oil), uno de los

residuos del proceso de la destilación fraccionada del

petróleo.

Page 155: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

141

Fig. 2. Vapores emanados por uno de los hornos de producción de ladrillo rojo

en la región de Cholula, Puebla.

No existe acondicionamiento alguno para su deposición a la atmósfera de los

vapores. En un escenario como éste, la tecnificación del proceso requiere de la

consideración de los aspectos sociales, económicos y ecológicos, todos ellos como

variables independientes una de otra. Cabe destacar que el aspecto social ha sido

el menos abordado y es, sin embargo, el más importante, pues por ello muchos

proyectos no han tenido consecución.

2.2 Descripción del proceso

El proceso de fabricación tiene varias etapas: mezclado, moldeado, secado y

cocido.

Primero, se mezclan tres tipos de arcilla y agua. La variación de las proporciones

de los materiales es muy particular, pues se trata de un proceso artesanal, basado

en ‚recetas‛ que han pasado de generación en generación a lo largo de los años.

Las familias con menos recursos realizan esta parte del proceso de manera

manual, amasando la mezcla con palos, palas o rastrillos. Los mejor organizados

hacen uso del tractor agrícola, equipado con una herramienta llamada niveladora

y aprovechando las hendiduras propias del dibujo de las llantas. El mezclado

consiste en pasar repetidamente con el tractor sobre el material a mezclar.

En cualquiera de los casos, la calidad del mezclado varía de semana a semana, lo

que dificulta la obtención de un producto de alta calidad.

Page 156: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

142

Fig. 3. Tipos y condición de las arcillas que posteriormente se convertirán en

ladrillos y algunos otros productos derivados.

Fig. 4. Mezcla realizada con la ayuda de un tractor.

Nótese la cantidad de mezcla utilizada para llenar un horno con 4 000 ladrillos y

téngase en cuenta el área de trabajo requerida.

Una vez hecha la mezcla, según las características determinadas por el miembro

de la familia con más experiencia, el moldeado debe llevarse a cabo o de lo

contrario la mezcla comienza a deshidratarse. Con una matriz de 3 x 2, o como le

llaman los locales, una ‚gavera‛, se le da forma a los ladrillos. Este bastidor se

coloca a ras de tierra y se va rellenando por la parte superior con las manos y los

dedos. El objetivo es hacer una semicompactación y eliminar el aire del interior

del molde antes de quitar el material sobrante. El producto terminado va

consumiendo tanto la materia prima como a los mismos productores,

literalmente, pues al secarse la mezcla sobre la piel provoca heridas que pueden

llegar a convertirse en agrietamientos severos.

Page 157: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

143

Fig. 5. Ése es el molde o ‚gavera‛ para producir ladrillo.

Fig. 6. Aquí se observa a un productor realizando el moldeo a mano.

Una vez concluido el moldeado, los ladrillos se dejan secar a la intemperie, lo

suficiente como para ser manipulados. El secado limita los periodos de

producción porque tarda entre 15 y 30 días, dependiendo de las condiciones

meteorológicas imperantes.

Cuando la mezcla, ahora en forma de ladrillos, ha perdido la suficiente humedad,

se procede a la colocación de las piezas en el interior del horno. Esta estructura

tiene capacidad para cocer de una vez hasta 40 000 piezas. El tiempo de cocción

varía según la cantidad de ladrillos a cocer y la temperatura lograda por la

quema del combustóleo, la cual oscila entre los 800 y 110 grados centígrados; de

manera que para obtener todos los ladrillos ya cocidos toma entre 30 y 48 horas.

Si bien el empleo de combustóleo sustituyó la quema de árboles y leña, los

contaminantes provenientes de su mala combustión suman más de 10 837

toneladas anuales. Diesel y gas LP también son requeridos para poner en

funcionamiento la caldera; sin embargo, se prefiere el combustóleo por su bajo

costo, a pesar de su baja calidad. La caldera suele colocarse y controlarse a mano.

La etapa de cocción es vital para obtener un producto de mejor calidad, así como

ampliar la gama de productos derivados.

Al término de las 30 o 38 horas, se pasa a una fase de enfriado que dura entre 8 y

10 días, nuevamente al beneplácito de las condiciones climatológicas.

Page 158: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

144

Fig. 7. Algunos ladrillos secándose a la intemperie.

Fig. 8. Aquí se observa una caldera rudimentaria ubicada en la base de un horno

para la cocción de ladrillos.

Las áreas de oportunidad de cambio y mejoramiento que resultan de la

descripción que acabamos de hacer son claras: las inclemencias del tiempo, las

cantidades de los ingredientes, el tipo de aspersión y el reaprovechamiento del

calor durante el cocimiento, por mencionar sólo algunas. Si alguno o varios de

estos aspectos se mejora, la calidad de vida de cientos de productores de la región

cambiará también.

3 Redes de Petri para la automatización

Siendo ésta una época con gran énfasis en la competitividad y en la lucha por el

acceso a los mercados, la brecha económica que se abre entre un trabajo artesanal

y uno mecanizado es enorme, lo que deja fuera de la contienda a miles de

pequeños productores de la región. La tendencia a la globalización se refleja en

los mercados y productos, así como en la economía y otros aspectos cotidianos;

sin embargo, la región de Cholula parece no haber sido notificada de esta

realidad y desde hace varios siglos se ha venido menoscabando su economía. Si a

Page 159: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

145

esto le agregamos el que los procesos industriales automáticos vienen

evolucionando desde hace décadas, se obtiene un escenario poco alentador para

el desarrollo de esta actividad. Pero existe la posibilidad de avanzar en este rubro

si se adaptan sus instalaciones actuales con tecnologías de automatización, a fin

de conseguir un sistema de producción más moderno y eficaz, y si fuese posible,

incluso, sin recursos económicos excesivos. Por eso se debe tener un cuidado

especial cuando se haga la adaptación, para que ésta se lleve a cabo de manera

coherente y previsora, buscando no solamente la automatización del proceso,

sino también una realización clara, estructurada y sistemática del objetivo, que

condicione lo menos posible la adaptación de las futuras innovaciones que haya

que aplicar, hecho poco frecuente en las industrias pequeña y mediana, donde

reina la solución rápida del problema antes que una solución reflexiva y a futuro.

Con base en lo que hemos explicado hasta aquí, se propone el uso de las redes de

Petri (rdP) como una herramienta para el modelado y diseño de

automatizaciones. Si bien las redes de Petri tienen un sustento teórico extenso

que las avala en todos aquellos campos en los que son empleadas y la producción

científica a su alrededor es amplia, en este caso, se ocuparán para investigar una

de las partes del proceso de producción de ladrillo rojo, y no como objeto de la

investigación.

3.1 Definiciones básicas

Para ubicarnos en el contexto, una red de Petri es un grafo orientado en el que

intervienen dos clases de nudos, los lugares —representados frecuentemente por

circunferencias— y las transiciones —representadas por pequeños segmentos

rectilíneos unidos alternativamente por arcos. Un arco une un lugar con una

transición —o viceversa— pero no puede unir dos transiciones o dos lugares. Un

lugar puede contener un número positivo o nulo de marcas. Una marca se

representa con un punto en el interior del círculo que representa al lugar. El

conjunto de marcas asociadas a cada uno de los lugares en un instante dado

constituye lo que se denomina un marcado de la red de Petri.

Reduciendo un sistema en un grafo, su representación se realiza mediante el

conjunto de estados totales en los que tal sistema se pueda encontrar. En una rdP

el estado está representado por el marcado. Como el marcado puede contener

varios lugares marcados simultáneamente, el estado está definido por un

conjunto de subestados —locales o parciales— del sistema. Esto es indicio de su

eficiencia para la descripción de evoluciones simultáneas.

Matricialmente, una rdP se representa mediante dos matrices. Sea (número

de lugares de la red) y sea (número de transiciones de la red). Se denomina

P n

T m

Page 160: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

146

matriz de incidencia previa a la matriz , en la que . Se

denomina matriz de incidencia posterior a la matriz en la que

.

La clasificación de las redes de Petri se realiza en tres niveles. En el nivel uno, se

caracterizan por tener lugares en los que se pueden representar valores

booleanos. El segundo nivel, se caracterizan por tener lugares que representan

valores enteros. En el tercer nivel, se caracterizan por tener lugares que

representan valores de altas prestaciones.

Cabe mencionar que la utilización de los GRAFCET en rdP es más común en la

automatización industrial, debido a que las rdP son más desconocidas. De hecho,

los GRAFCET se pueden aplicar como un subconjunto de las rdP, lo que permite

referirse a ambas herramientas como rdP, de forma genérica.

3.2 Aplicación de las redes de Petri

Para aprovechar las ventajas de las rdP, su potencia y su simplicidad, junto con la

simulación del proceso productivo se realiza la simulación de la rdP que define

su funcionamiento, ya sea lo que se ha empleado para el desarrollo del programa

autómata o una que haga el modelo de tal desarrollo. Con esto, tenemos en el

proceso de monitoreo toda la información del estado del sistema; en cambio, con

la visualización de la planta tan sólo tenemos información de las entradas y

salidas, lo cual no es suficiente en los sistemas secuenciales. Además, así se

emplean todas las posibilidades de análisis, optimización y detección de errores,

ampliamente estudiadas en las rdP, para mejorar el proceso, y de una manera

clara, estructurada y sistemática, para facilitar posteriores modificaciones o

ampliaciones.

Cuando se hace el modelo de un sistema que pudiera llegar a presentar recursos

compartidos, concurrencias, autorizaciones memorizadas, sincronizaciones

mutuas con evoluciones simultáneas o con desactivación de subsistemas, con las

rdP es una labor muy simple, mientras que su programación directa en leguaje

escalera —para un control lógico programable (PLC)— puede resultar

sumamente compleja.

Para modelar el proceso de producción de ladrillo rojo, se debe comenzar con la

representación de cómo van a evolucionar las salidas de algunas de las partes que

lo integran, en función de la secuencia de salidas deseadas, teniendo en cuenta

que el estado interno evoluciona en función de las entradas. Una vez que se ha

realizado el modelo, se procede a su implementación, de tal manera que frente a

las respuestas del sistema y las incógnitas que le proporcione el usuario se

produzcan las correspondientes órdenes al sistema para que éste evolucione

ij nxmC C ( , )ij i jc p t

ij nxmC C

( , )ij j ic t p

Page 161: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

147

como se debe. La automatización suele ser secuencial; su estado interno debe

identificar su comportamiento frente a las entradas a cada momento, de modo

que la información del estado del sistema esté contenida en el estado interno de

la automatización, o también puede recibirse del propio sistema, como parte de la

respuesta.

3.3 Propuesta de automatización

Como ejemplo de la utilización de las rdP, propongamos la automatización de

una cinta para trasportar ladrillos crudos. Se propone la utilización de dos

sensores capacitivos en los extremos de la cinta, la cual tiene que avanzar hasta

que haya un ladrillo en el extremo final para que sea ingresado el siguiente paso

automatizado. Para esto, primero debemos identificar tanto las entradas

(sensores) como las salidas (avance) con lo cual se reconoce inmediatamente una

automatización sin consigna. A partir de aquí también se ve con claridad que la

capacidad máxima de nuestra cinta no es recibida en el sistema como entrada, lo

que implica la generación y el almacenamiento de esta información en el estado

interno de la automatización, la cual se muestra en la figura 9.

Fig. 9. Red de Petri de la cita trasportadora.1

Automatizada la cinta, se procede a la simulación del sistema —en este caso, sólo

serán los sensores. Hay que tener en cuenta que las salidas del sistema se

ÒhuecosÓ

INICIO

ÒladrillosÓ

AVANZAR

FIN

ÒesperaÓ

FIN

Page 162: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

148

activarán en función de las órdenes procedentes de la automatización y de los

eventos externos que forman parte del proceso de fabricación, como, por ejemplo,

los procedentes de otras máquinas, del PLC, de los actuadores. Así, para la

simulación, tendremos como entrada a los ladrillos producidos, los ladrillos

entregados y el avance; para las salidas, tendremos solamente los sensores de

‚inicio‛ y ‚fin‛. La rdP así generada se muestra la figura 10.

Fig. 10. Red de Petri generada para la simulación.1

El sistema parte de que la cinta no ha sido cargada previamente con ningún

ladrillo. Esta acción pertenece al evento externo ‚ladrillo nuevo‛, el cual da pie a

la simulación del comportamiento del sensor ‚inicio‛. Activado éste, con un

temporizador se simula el tiempo que permanece el sensor activado por el paso

del ladrillo mientras la cinta se encuentra en marcha. Si en la cinta se encuentra

algún ladrillo, de igual forma se controla el tiempo que tardaría el ladrillo en

recorrer la cinta hasta la activación del sensor ‚fin‛. Llegado el ladrillo al final de

la cinta, se retira —mediante el evento externo ‚quitar ladrillo‛.

Independientemente del número de ladrillos que se encuentren sobre la cinta o

del tiempo que hayan estado avanzando sin llegar hasta el final, debe observarse

que siempre tardarán el mismo tiempo en recorrer la cinta desde su puesta en

marcha hasta que llegue el primero. Esto no caracteriza a un modelo exacto pero,

para nuestros propósitos, es lo necesario.

Siguiendo con el diseño, se procede a la fusión de la automatización y la

simulación en el PLC, con el fin de detectar anomalías en el funcionamiento y

eliminarlas. Esto se hace relacionando las rdP para simularlas en computación,

como lo muestra la figura 11, e implementarlas una vez traducidas al lenguaje del

dispositivo.

ÒhuecosÓ

INICIO

ÒladrillosÓ

AVANZAR

INICIOTIM1

FIN TIM 1

TIM 2

FIN TIM 2

FIN

QUITAR LADRILLO

INICIO NUEVO

Page 163: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

149

Fig. 11. Implementación.1

Así, la automatización y la simulación forman un todo en el que se integran las

entradas de los eventos externos de ‚ladillo nuevo‛ y ‚quitar ladrillo‛.

4 Conclusiones

Cuando se hace un medelo de un sistema previo a la automatización que tendrán

los dispositivos que lo integran, se toman en cuenta los aspectos más interesantes

del sistema y se obvian los que no afectan el funcionamiento global, los cuales

muchas veces son más complejos que aquellos que realmente nos interesan; de

esta manera, se trabaja con un sistema simplificado.

Con el modelo del sistema en un programa de simulación, es posible confrontarlo

con el de la automatización, así se sabrá de antemano si la automatización es

correcta o no, además de que se puede hacer un análisis del comportamiento, es

decir, se verá cómo funcionaría idealmente la producción.

Si en el futuro se utilizara un controlador lógico programable (PLC) para llevar a

cabo el control en alguna de las etapas o de las partes que integran el proceso de

producción, como, por ejemplo, el de una banda transportadora, la rdP

permitiría traducir su comportamiento a lenguaje escalera (ladder). De esta forma,

se tendría la simulación en tiempo real dentro del propio dispositivo de control;

es decir, ahora, en vez de controlar la planta, se controlaría el modelo que de ella

tiene introducido. Así, no sólo se comprobaría si la automatización está bien

hecha, sino que también se comprobraría el dispositivo de control.

El diseño de la planta debe llevarse a cabo con la participación de un grupo de

profesionales —y no solamente una persona— porque la integración de

conocimientos correlacionados es fundamental. El objetivo de la integración de

varios profesionales obedece a que el diseño se lleve a cabo en un tiempo y

Òhuecos 2Ó

INICIO

Òladrillos 2Ó

ÒesperaÓ

AVANZAR

INICIO

FIN TIM 1

TIM 2

FIN TIM 2

FIN

QUITAR LADRILLO

INICIO NUEVO

Òhuecos 1Ó

INICIO

Òladrillos 1Ó

AVANZAR

FIN

ÒesperaÓ

FIN

ÒesperaÓLUG1

LUG2

LUG3

ÒesperaÓLUG4

LUG5

LUG6

LUG7

LUG8

LUG9

Page 164: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

150

espacio determinados, con el menor costo posible, ofreciendo calidad y duración

en lo instalado.

Desde una perspectiva social, es necesario recordar que el estilo de vida y las

costumbres no son iguales que hace 100 años y que esto es parte de un ciclo

continuado al cual deben de adaptarse rápidamente nuestros productores. Esto

supone, por lo tanto, un cambio de hábitos productivos, y en general, de hábitos

de vida antes de la aplicación de cualquier automatización.

Referencias

1. Jiménez, E., Técnicas de automatización avanzadas en procesos industriales,

Universidad de La Rioja, España, 2001, pp. 106-108.

2. Astrom. K. J. y B. Wittenmark, Computer Contolled Systems, Prentice Hall-

Englewood Cliffs, Nueva Jersey, 1997.

3. Xing K. Y., B. S. Hu y H. X. Chen, ‚Deadlock Avoidance Policy for Petri-net

Modeling for Flexible Manufacturing Systems with Shared Resources‛, IEEE

Trans on Automatic Control, núm. 41, 1996, pp. 289-294.

4. Falkenhainer B. y K. Forbus, ‚Compositional Modeling: Finding the

Right Model for the Job‛, Artificial Intelligence, núm. 51, 1991, pp. 95-143.

5. Gaspar, A., Modelling and Optimization of Single Screw Extrusion, University of

Minho, Brazil, 1999.

6. Elías, X., Optimización de procesos cerámicos industriales, Universidad Pontificia

Bolivariana, Medellin, 2001.

7. Departamento de Ciencias de la Computación del Centro de Investigaciones

y de Estudios Avanzados del Instituto Politécnico Nacional, en Internet

(http://computacion.cs.cinvestav.mx/~ameneses/pub/tesis/mtesis).

8. Facultad de Ciencias Fisicomatemáticas de la Universidad Michoacana de

San Nicolás Hidalgo, en Internet

(http://www.fismat.umich.mx/~crivera/tesis/node25.html).

Page 165: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

151

Perspectivas de automatización del proceso de

fabricación de ladrillo rojo en la región de

Cholula, Puebla

Rafael Rojas-Rodríguez, Obed Cortés-Aburto, Carlos Marín-Dávila

Resumen. Las perspectivas para la automatización del proceso de fabricación de

ladrillo rojo en la región de Cholula, Puebla, se discuten en el presente estudio. El

proceso actual se describe paso a paso, según las etapas que lo conforman,

empezando con el mezclado y terminando con el cocido. Se hace también un

diagrama, considerando el promedio de las distancias y los tiempos de dos

hornos ladrilleros de la región, en condiciones climatológicas favorables para la

fabricación del ladrillo. Finalmente, se presentan perspectivas para la

automatización del proceso, considerando una baja inversión.

Palabras clave: automatización, ladrillo, arcilla, construcción, combustóleo.

Sumario: 1 Introducción 2 Descripción del proceso actual 2.1 Etapa de mezclado 2.2 Etapa

de moldeado 2.3 Etapa de secado 2.4 Etapa de cocido 5 Perspectivas para la

automatización 5.1 Etapa de mezclado 5.2 Etapa de moldeado 5.3 Etapa de

secado y cocido 6 Diagrama del proceso actual Conclusiones.Referencias

1 Introducción

El hombre, desde su aparición sobre la tierra, ha buscado la forma de protegerse

de la intemperie y de los depredadores. Los primeros habitantes del mundo

vivían en el interior de las cuevas. Con el tiempo, los hombres desarrollaron

técnicas primitivas para la construcción de viviendas; entre las más antiguas de

las que se tiene registro, están las ubicadas en Çatal Höyük, hoy Turquía, con una

antigüedad que data de los años 10000 a 6000 a.C., y cuyo material de

construcción principal era la arcilla formada en piezas que se secaban al sol

(véase la figura 1).1

En América, los restos de viviendas más antiguos de los que se tiene registro,

están ubicados en la región de La Venta, en el estado de Tabasco, y pertenecen a

la cultura Olmeca, con antigüedades que van de los años 1500 a.C. a 200 d.C. En

ellas, el ladrillo era utilizado como elemento estructural.

Page 166: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

152

En la región de Cholula, Puebla, cuyo apogeo constructivo se dio en el periodo

comprendido entre los años 200 y 700 d.C., se observa la utilización del ladrillo

en la construcción de muros y pisos.2 Actualmente, en esta región se encuentra

una de las mayores concentraciones de productores de ladrillo rojo del país, con

alrededor de 4 000 hornos,3 los que a su vez representan la principal o única

fuente de ingresos de alrededor de 8 000 familias, involucrando a comunidades

como San Diego Cuachayotla, San Sebastián Tepalcatepec, San Juan Tlautla, San

Cristóbal Tepontla, San Matías Cocoyotla, San Mateo Cuanalá, Santa María

Coronango y Santa María Zacatepec, por mencionar sólo algunas, ubicadas en los

municipios de San Pedro y San Andrés Cholula, Juan C. Bonilla y Coronango.

El proceso de fabricación de ladrillos rojos no ha variado sustancialmente desde

su aparición, resultando en un atraso tecnológico del sector y en desventajas

competitivas en los ámbitos regional, nacional y mundial.

Las etapas en la que se ha dividido el proceso de fabricación son: mezclado,

moldeado, secado y cocido.

Aquí se exponen las formas de trabajo actuales y sus perspectivas de

automatización.

Fig. 1. Ruinas de Catal Höyül, actual Turquía.

2 Descripción del proceso actual

2.1 Etapa de mezclado

La primera etapa del proceso consiste en el mezclado de la materia prima, que en

este caso son tres diferentes tipos de tierras y agua. Las tierras utilizadas son:

arcilla amarilla, tepetate y arcilla gruesa.

Las proporciones de estos materiales en la mezcla varían de productor a

productor, debido a que se trata de un proceso esencialmente artesanal y las

Page 167: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

153

‚recetas‛ dependen de la tradición familiar; es decir, se trata de fórmulas que han

pasado de generación en generación a lo largo de los años.

La mezcla, en algunos casos, se hace de manera totalmente manual. Se agregan

las arcillas y el tepetate empujando con los pies sobre el suelo y se incorpora el

agua; posteriormente, se amasa con palos, palas o rastrillos. Actualmente, en

algunos de los sitios de producción, se hace uso del tractor agrícola equipado con

una herramienta llamada niveladora, y se aprovecha el dibujo de las llantas para

llevar a cabo el mezclado, el cual consiste en el repetitivo paso del tractor sobre el

material a mezclar.

La mezcla resultante no es homogénea debido a lo deficiente del proceso y a la

variación de las cantidades de materia prima involucradas.

Otra desventaja de esta metodología de trabajo es la cantidad de superficie

requerida para llevarla a cabo, debido a que se hacen grandes volúmenes de

mezcla y el espacio requerido para la correcta operación del tractor es grande.

2.2 Etapa de moldeado

En esta etapa se le da forma a los ladrillos, una vez que la mezcla ha adquirido las

características que el productor considere óptimas. Se debe de llevar a cabo en

cuanto se concluye el mezclado y se utiliza una herramienta llamada gavera,

formada por un bastidor que tiene capacidad para moldear 4 o 6 ladrillos por

vez.

Una vez que se acarrea la mezcla al lugar donde se moldearán los ladrillos, se

coloca la gavera a ras de tierra y se toma una porción de mezcla, se coloca en la

parte superior de la gavera y se utilizan las manos y los dedos para compactar los

ladrillos y eliminar los huecos que quedan en el interior del molde. Se agrega otra

cantidad de la mezcla y se repite la operación, hasta que los huecos quedan

completamente llenos. Una vez hecho esto, se utiliza un rasero —una pieza con

forma de solera metálica— para eliminar el material sobrante.

Cuando se ha terminado de llenar los moldes y de pasar el rasero, se retira la

gavera, teniendo cuidado de no dañar la forma de los ladrillos moldeados. La

gavera se coloca junto a los ladrillos que se acaban de moldear y se repite

nuevamente todo el proceso. La disposición de los ladrillos queda en forma

paralela y horizontal, y los fabricantes tienen cuidado de dejar una separación

suficiente entre hilera e hilera para transitar entre ellas.

Este método de trabajo tiene varias desventajas; por ejemplo, las manos de los

productores están en contacto directo con la mezcla, lo cual es riesgoso porque se

producen heridas, o también, cuando el material se seca, reseca la piel y ésta se

agrieta. Otra desventaja es la necesidad de que el terreno tenga una pendiente de

Page 168: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

154

5 a 10% para que el exceso de agua escurra por efecto de la gravedad. Además,

un terreno muy amplio es necesario para colocar los ladrillos a ras de tierra para

esperar a que pierdan humedad y puedan ser transportados manualmente al

lugar de secado.

3 Etapa de secado

Los ladrillos se dejan secar lo suficiente como para manipularlos sin que se

rompan o desbaraten. Periódicamente se verifica que este secado se produzca

(véase la figura 1). Cuando los ladrillos están lo suficientemente secos, se

disponen de forma vertical durante unas 24 horas a fin de que sus caras pierdan

humedad por efecto del aire y el calor; después, se acomodan formando muros

de secado, llamados enrejados, para que el aire circule libremente entre los

ladrillos y se pierda una mayor cantidad de humedad. Esto tarda entre 15 y 30

días, dependiendo de las condiciones meteorológicas imperantes.

Fig. 2.Ladrillos en etapa de secado.

4 Etapa de cocido

Una vez que los ladrillos crudos han perdido humedad, se transportan al horno

(véase la figura 3) y se colocan en su interior (véase la figura 4). El horno es una

estructura construida con los mismos ladrillos que se fabrican, con forma

prismática rectangular y rematada en forma piramidal truncada, con un espacio

que queda por debajo del nivel del piso, en el cual se colocan los quemadores y se

lleva a cabo la combustión.

El tiempo de cocción varía, dependiendo de la cantidad de ladrillos a cocer.

Generalmente, un horno para 40 millares tarda entre 30 y 48 horas para obtener

Page 169: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

155

un cocido correcto. Después los ladrillos se dajan enfriar durante 8 o 10 días,

dependiendo de las condiciones del clima.

Fig. 3. Transporte de ladrillos secos hacia el horno de cocimiento.

El combustóleo utilizado es de muy baja calidad —en el mercado nacional—, su

costo también es bajo, pero las emisiones de contamintantes a la atmósfera son

muy grandes, en el orden de las 10 837 toneladas anuales.3 Debido a su baja

calidad, no es posible quemarlo con atomización mecánica, por lo que necesita de

un medio atomizante. En la región de Cholula, generalmente, se utiliza vapor de

agua. Al mismo tiempo, es necesario contar con un piloto, operado con gas LP, a

fin de garantizar un encendido confiable, y por último, el combustóleo requiere

de dos etapas de calentamiento antes de ser enviado a los quemadores. La

primera etapa de calentamiento lo lleva a 35 °C, para que alcence a ser

bombeado, y la segunda, a 100 °C para que se pueda quemar.

Para dar comienzo al proceso de cocción, es necesario calentar con Diesel las

líneas de conducción del combustóleo y hacer lo mismo al terminar, para que las

líneas se mantengan limpias y no se formen tapones de combustóleo. También es

necesario, al concluir la cocción, hacer una limpieza profunda de las líneas de

conducción y de las boquillas y filtros, así como deshollinar toda la caldera.

Fig. 4. Horno de cocido.

Page 170: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

156

5 Perspectivas para la automatización

La propuesta para la automatización del proceso toca todas las etapas que hemos

descrito hasta aquí. A continuación, se describen las perspectivas de

automatización para cada una de ellas, así como la forma probable de operar de

cada una.

5.1 Etapa de mezclado

La etapa de mezclado se llevará a cabo con una banda transportadora alimentada

por tres tolvas, las que a su vez contendrán los tres tipos de tierra utilizados para

el proceso y un tanque de almacenamiento de agua.

En la banda transportadora se depositarán las cantidades necesarias de cada una

de las tierras, previamente pesadas con galgas elastométricas, a fin de controlar la

cantidad y las proporciones de los materiales.

En el otro extremo de la banda se colocará una máquina para el molido y el

mezclado de los materiales, incorporando la cantidad necesaria de agua, medida

mediante un fluxómetro, a fin de obtener una consistencia óptima. Esta

consistencia óptima se determinará en estudios previos.

5.2 Etapa de moldeado

Para esta etapa también se propone una evolución drástica. Habrá una extrusora

mecánica que será alimentada con la mezcla; un motor eléctrico proporcionará la

potencia necesaria para mover un tornillo sin fin acoplado a una cámara de vacío,

para extraer así la mayor cantidad posible de aire de la mezcla y forzar su salida a

través de una boquilla con dimensiones 250 mm x 120mm, a fin de obtener un

macizo con esas dimensiones y una longitud variable.

A la salida de la boquilla, el macizo descansará sobre otra banda transportadora

que lo trasladará a la zona de cortado, compuesta por una guillotina que lo

cortará en la sección transversal. Posteriormente, se realizarán nuevos cortes

transversales de 50 mm cada uno, a fin de formar el ladrillo de dimensiones

comunes. Esta última parte del moldeado se llevará a cabo utilizando otra

guillotina, pero esta vez con múltiples hojas de corte, las cuales, en realidad,

serán alambres de acero sujetados a un bastidor, con la tensión correcta para que

los cortes sean los adecuados.

Page 171: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

157

5.3 Etapa de secado y cocido

En esta etapa se aprovechará el calor emitido por el horno para reducir el tiempo

de secado de los ladrillos moldeados. En el proceso actual se pierde calor por la

parte superior del horno, debido a la porosidad del material del que está

construido y a la separación que existe entre los ladrillos que lo conforman. A fin

de aprovechar al máximo la cantidad de energía que se consume en el proceso, se

procederá a captar el calor desprendido por el horno cuando otros ladrillos se

encuentren en cocimiento. Este calor será conducido hasta una especie de

invernadero en el que se encontrarán los ladrillos recién moldeados, los cuales

perderán humedad por efecto del calor hasta obtener un secado óptimo en un

tiempo menor al que se consume actualmente.

El proceso de cocido, ahora íntimamente ligado al de secado, será modificado por

medio de un análisis de las propiedades térmicas del horno, a fin de optimizar la

colocación de los quemadores y disminuir considerablemente el consumo de

energía. También se realizará un estudio de los requerimientos de energía que

tienen los ladrillos utilizados en las construcciones; así se obtendrán las

características mecánicas óptimas requeridas en la industria de la construcción.

Page 172: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

158

Fig. 5. Diagrama del proceso actual.

6 Diagrama del proceso actual

En la figura 5 se observa el diagrama del proceso actual5 de fabricación de ladrillo

rojo en un horno típico de la región de Cholula y los promedios de distancia y

tiempo de dos hornos pertenecientes a la familia Flores Chapuli. En el diagrama

es posible observar que el proceso de secado de ladrillos tiene una duración

promedio de 22 días, considerando condiciones climatológicas favorables. Este

tiempo puede disminuirse considerablemente si se aprovecha el calor emitido

por el horno para el secado de lso ladrillos recién moldeados.

El enfriamiento del horno tarda en promedio 9 días, durante los cuales la

producción se detiene. Entonces los recursos disponibles están ociosos, lo que

conduce a un incremento en los costos de producción. Desde nuestra perspectiva,

el calor que se debe perder en esta etapa será aprovechado para el proceso de

secado y se propondrá, además, la producción en serie, a fin de disminuir la

duración del ciclo de fabricación.

Page 173: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

159

Conclusiones

El proceso que actualmente se sigue para la elaboración de ladrillo rojo en la

región de Cholula no ha sufrido ninguna variación significativa desde la época de

apogeo de la cultura cholulteca, comprendida entre los años 200 y 700 d.C., lo

que deja en una posición de desventaja competitiva a los productores, porque la

presencia de la tecnología es mínima, y en la mayoría de los casos, nula. En el

presente trabajo se expuso una primera propuesta para su automatización,

considerando que el monto de las inversiones debe de ser muy bajo, debido a la

pobre condición económica de los productores. Actualmente, los profesores de la

carrera de Mecatrónica de la Universidad Politécnica de Puebla tienen

acercamiento con un grupo de productores de la región para colaborar con ellos

en la disminución del tiempo del ciclo de trabajo, mejorar las condiciones de estas

pequeñas empresas familiares y aumentar la rentabilidad.

Referencias

1. Bartel, B., ‚The Characteristics of the Çatal Hüyük Supra-Community‛,

documento presentado en el LXXIII General Meeting of the AIA, American

Journal of Archaeology, núm. 76, 1972, pp. 204-205.

2. México en el Tiempo, núm. 19, julio-agosto de 1997, en Internet

(http://www.mexicodesconocido.com.mx/notas/5247-El-ladrillo-en-la-

arquitectura-prehisp%C3%A1nica).

3. Comunicación Social del Gobierno del Estado de Puebla, en Internet

(http://www.comunicacionsocial.gob.mx/index2.php?option=com_content&do

_pdf=1&id=7932).

4. Kidder, F. E. et al, ‚Manual del arquitecto y del constructor‛, Unión

Tipográfica-Editorial Hispanoamericana, México, 1997.

5. Zandin, K. B. y H. Bright Maynard, ‚Manual del ingeniero industrial‛, vol.

2, McGraw-Hill, 2000.

Page 174: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

160

Page 175: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

161

Cloud computing

Jesús Enrique Vázquez Reyna

Resumen. Esta ponencia tiene el propósito de dar a conocer el concepto de ‚cloud

computing‛, sus orígenes, aplicaciones en línea y sus ventajas y desventajas; así

como sus aplicaciones presentes y futuras.

Palabra clave: informática en la nube o computación de nube.

Keyword: Cloud Computing.

Sumario:

1 Introducción 2 Orígenes de la cloud computing 3 Aplicaciones de

la cloud computing 4 Cloud storage 5 ¿Qué se le debe pedir a un

proveedor de cloud storage? 6 Algunos ejemplos de cloud storage 7

Ventajas y desventajas de la cloud computing 8 Riesgos del área de

la cloud computing 9 Las tres clases de cloud computing 10

Proyectos a futuro 11 Conclusiones Referencias

1 Introducción

Durante mucho tiempo el concepto de Web 2.0 ha estado rodando sobre los

términos más comunes de la WWW (World Wide Web). En la actualidad, el

concepto m{s nuevo es el de ‚cloud computing‛, es decir, la tendencia a disponer

de archivos y aplicaciones directamente en la Web. En los últimos 10 años las

empresas muestran una tendencia cada vez mayor a guardar en algún lugar de la

red su información, a manera de almacenamiento, por eso la distancia entre el

usuario y la red de redes se ha ido acortando. Cada usuario eventualmente

tendrá que usar algún tipo de aplicación de ofimática y utilidades que

probablemente no tenga instaladas en su computador, por lo cual esta teoría

viene a revolucionar el mundo de la información.

El fundador de la Free Software Foundation y del proyecto GNU, Richard

Stallman, ataca este concepto porque dice que se trata de una campaña de

marketing que hará a los usuarios aún más dependientes del software basado en la

Web, lo que representa un grave riesgo para la libertad y la intimidad. Su

posición se explica cuando se piensa en el hecho de que, si se traslada todo el

software a la Web, se estaría poniendo en manos de las empresas nuestras tareas

cotidianas, con el riesgo de que en algún momento estas compañías decidieran

Page 176: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

162

cobrar por nuestros accesos al servicio, con lo cual nos quedaríamos de un día

para el otro sin herramientas de trabajo.

La centralización de los recursos no tiene nada de original, pues es un concepto

que a lo largo de la historia de la informática se ha adoptado y luego abandonado

unas cuantas veces, conforme a los vaivenes provocados por las más recientes

innovaciones tecnológicas. Por lo tanto, esta tendencia o bien llegó para quedarse

o, como ya ha sucedido en otras ocasiones, no es más que una burbuja temporaria

que explotará al exponerse a los primeros vientos de cambio.

El término ‚cloud computing‛ traducido literalmente al español significa

‚computación de nube‛; sin embargo, por sí mismo no explica absolutamente

nada.

Desde los primeros tiempos, la noción de Internet se ha representado

gráficamente como una nube hacia donde se conectan todas las computadoras

del mundo. Pero lo cierto es que Internet es un concepto más complejo. Se trata

de computadoras individuales que conforman redes, las cuales a su vez se

agrupan en conglomerados de redes. Estos conglomerados se conectan entre sí

conformando una red de redes denominada Internet. Para que la explicación sea

más simple, la gráfica de Internet semeja una nube hacia la cual se conecta cada

ordenador para utilizar los servicios y aplicaciones que todos conocemos.

Fig. 1. Cloud computing en la Web.

Page 177: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

163

2 Orígenes de la cloud computing

Al comienzo de la década de 1960, los entonces primitivos y gigantescos equipos

informáticos eran diseñados y construidos para ejecutar un único programa —o

trabajo— a la vez. Pero apenas un lustro después, se había hecho inmensamente

popular el concepto de ‚time sharing‛, con el cual, prestando una fracción de los

recursos del sistema —ya fuera tiempo del procesador o capacidad de

almacenamiento— a múltiples usuarios conectados por medio de ‚terminales

bobas‛, era posible que muchos de ellos trabajaran de manera simultánea en un

solo equipo, con los poderes de proceso y almacenamiento de los documentos

concentrados en un gran computador central o ‚mainframe‛. Este enfoque se

tornó de uso masivo al ser adoptado por grandes comunidades de usuarios,

como los científicos o estudiantes universitarios de ciencias exactas, ansiosos de

acceder al poder del cálculo informático. Pero, durante la década de 1980, la

aparición de las computadoras hogareñas acostumbró a muchos usuarios a tener

y operar sus propios equipos. El lanzamiento, en el año de 1981, de la ‚personal

computer‛, un equipo inform{tico lo suficientemente barato como para ser

asequible para una gran cantidad de individuos, pero de notable potencia, con

una arquitectura modular y expansible de IBM, invirtió definitivamente la

tendencia. A partir de entonces, los usuarios se acostumbraron a ser los dueños y

señores de sus computadoras, con el consiguiente monopolio de la capacidad de

proceso y de almacenamiento que éstas ofrecían.

3 Aplicaciones de la cloud computing

Esta tecnología permite acceder a servicios y aplicaciones por medio de Internet,

con un navegador convencional. En este tipo de sistema, el usuario accede a toda

clase de servicios, sin necesidad de instalar un software en su ordenador.

Una forma gráfica de mostrar este punto es con un ejemplo sencillo. Todas las

personas que manejan computadoras tienen cuentas de correo electrónico. Si

tomamos como referencia a Hotmail, Gmail o Yahoo, nos damos cuenta de que

para utilizar sus casillas de correo no es necesario instalar ningún software.

Solamente tenemos que acceder mediante el navegador a la página principal del

cliente de correo y escribir el nombre del usuario y la contraseña. De este modo,

administramos nuestro correo, recibimos mensajes, los enviamos e incluso los

almacenamos. Ahora bien, toda esta información no se aloja en nuestro

ordenador, sino que se almacena en nuestro servidor de la empresa que presta

estos servicios. Otros ejemplos de servicios de este tipo que solemos usar vía Web

son los blogs, los antivirus, el online (en línea), las emisoras de radio y video, entre

otros.

Page 178: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

164

Como dijimos anteriormente, la tendencia tecnológica actual es el uso de

aplicaciones en línea (online) y no instaladas en la PC (personal computer). Cuando

hablamos de aplicaciones, nos referimos a aquellos programas informáticos

diseñados para facilitar al usuario la realización de un determinado tipo de

trabajo. Como primer ejemplo, citaremos la ‚suite de oficina‛, que ofrece una

planilla de cálculo, un procesador de texto y una base de datos, entre otras

aplicaciones. Desde un principio, este paquete de programas se ha tenido que

instalar en el ordenador para utilizarlo.

Lo mismo sucede con la reproducción de música. Por ejemplo, para escuchar una

canción, es necesario tener un reproductor y los códecs (codificador-

decodificador)1 necesarios para cada tipo de archivo que se va a reproducir. A

partir del concepto de cloud computing, estos requisitos ya no existirán.

Para ilustrar este ejemplo, pensemos en el servicio de Google Docs,2 con el cual

creamos documentos, hojas de cálculo y presentaciones en línea (online). Este

servicio es de uso muy sencillo, similar a programas como Word, Excel o

PowerPoint. Los archivos quedan guardados en servidores externos a nuestra

PC, con la ventaja que ofrece la posibilidad de abrirlos desde cualquier parte del

mundo, con apenas una PC que ofrezca conexión a Intenet.

Otro aspecto a destacar es la posibilidad de manejar un sistema operativo

completo en línea (online). En la actualidad, existen al menos 10 versiones

diferentes de sistemas operativos Web. Un ejemplo de ello es eyeOS, una nueva

forma de sistema operativo donde todo está disponible desde el navegador.

Con estos sistemas operativos tendremos un escritorio, aplicaciones y archivos

siempre a nuestra disposición, ya sea en el hogar, en la universidad, en la oficina,

etcétera. Para acceder al escritorio y a los archivos sólo debemos abrir un

navegador y conectarnos con un servidor eyeOS. Pero de estos aspectos

trataremos con detalle más adelante, a lo largo de este artículo.

4 Cloud storage

El concepto de ‚cloud storage‛ es similar al de cloud computing, pero con la

diferencia de que se trata de la capacidad de almacenamiento. La idea es contar

con la posibilidad de almacenar información en espacios virtuales fuera de los

discos duros alojados en las PC locales. Con el cloud storage, los datos también

residen en la Web, asignados dinámicamente entre varios centros de datos para

garantizar su almacenamiento y entrega con la mayor rapidez allí donde sean

requeridos. Es decir, los usuarios nunca saben dónde están almacenados sus

datos en un momento dado. Geoff Tudor, cofundador de Nirvanix, firma de

reciente introducción en este mercado, compara el cloud storage con el servicio

Page 179: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

165

eléctrico: ‚después de todo, cuando enciendes la luz, no sabes exactamente dónde

se origina cada electrón‛.

Fig. 2. Cloud storage o capacidad de almacenamiento en distintos medios.

Aunque son ya muchas las compañías interesadas en entrar en este nuevo

mercado, hoy la oferta de cloud storage mejor conocida es Simple Storage Service

(S3), de Amazon, con dos años de existencia. Cabe mencionar también a

Nirvanix, lanzado en octubre de 2007, y a Mosso, una compañía de Rackspace

que dio a conocer su oferta hace sólo unos meses atrás. Algunas otras grandes

marcas del mundo están ya preparando con entusiasmo sus ofertas de cloud

storage, como Google, que trabaja en el lanzamiento de un servicio de

almacenamiento en línea (online) informalmente conocido como GDrive.

Asimismo, EMC, tras la compra en septiembre del año 2009 de la firma de

backup online Mozy, ultima un servicio masivo con tecnologías denominadas en

código Hulk & Maui. Para alimentar esta estrategia, la compañía adquiría

recientemente la firma Pi, cuyo software y servicios ayudan a los usuarios a seguir

el rastro de sus datos y contenidos personales en la red. La tecnología y la

plantilla de Pi serán integrados en la nueva unidad Cloud Infrastructure and

Services Division, de EMC, en la cual también se encuadran, además de la

tecnología de Mozy, la plataforma de servicios basados en cloud fortness.

Pese a su liderazgo, del servicio de Amazon se conocen pocos detalles sobre la

infraestructura de cloud utilizada. De la de Nirvanix se sabe que utiliza software

personalizado y tecnologías de sistemas de ficheros corriendo sobre servidores de

almacenamiento en Intel, localizados en seis centros de Estados Unidos, Asia y

Europa, aunque el número de estos emplazamientos ascendió a 20 a finales de

Page 180: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

166

2009; por motivos de seguridad, los datos del cliente se replican en dos o tres de

estos centros. En cuanto a Mosso, el servicio se suministra desde el centro de

datos de Rackspace, en Dallas, Estados Unidos, al que pronto se añadirá otro

centro en Reino Unido.

FreeDrive, el servicio de distribución de archivos y de almacenamiento personal

para usuarios de redes sociales, como Facebook, MySpace y Bebo, lleva usando el

servicio de Nirvanix desde noviembre de 2009. Gracias a su solución, la

compañía convierte videos a formato flash automáticamente y envía datos

directamente desde ‚la nube‛ a sus m{s de 180 000 clientes; de otro modo, todos

los datos tendrían que ser confiados al propio servidor Web de FreeDrive. Por su

parte, Geezeo, red social centrada en las finanzas personales, utiliza el servicio S3

de Amazon para almacenar sus 251 GB de datos, con la tranquilidad de que, en

caso de que sus necesidades de almacenamiento se multipliquen, nunca tendrá

problemas.

Los clientes de Nirvanix pagan 18 céntimos de dólar al mes por GB de

almacenamiento, más otros 18 céntimos por GB cargado y descargado. En el

mismo rango de precios, S3 de Amazon cobra 15 céntimos de dólar al mes por GB

de almacenamiento, más 10 céntimos por GB por datos transferidos. Un cliente

podría comenzar con sólo unos pocos cientos o miles de usuarios y, con el

tiempo, escalar a Petabytes de almacenamiento sin necesidad de cambiar la

aplicación.

5¿Qué se le debe pedir a un proveedor de cloud storage?

Medidas de seguridad. Los usuarios deben ‚encriptar‛ sus propios ficheros. No

deben permitir que sea el proveedor quien lo haga.

Acceso y auditoría de los datos. El acceso a los datos permite averiguar si

alguien los ha modificado. Algunos proveedores, como Amazon y Nirvanix,

ofrecen esta posibilidad sin coste adicional.

Localización de los datos almacenados. En algunos casos, los clientes

necesitan saber la localización exacta de los datos por motivos de

cumplimiento normativo. Nirvanix ofrece la opción de bloquear los datos en

localizaciones físicas específicas pero Amazon no.

Tiempos de caída del servicio. Los clientes del Simple Storage Service, de

Amazon, sufrieron durante horas una caída del servicio el pasado febrero.

Aún así, los cloud services pueden ser más fiables que el propio centro de datos

del cliente. Amazon y Nirvanix dan créditos a los clientes si el tiempo de

actividad mensual cae por debajo del 99.9%.

Recuperación de desastres. No hay modo de evitarlo, de vez en cuando

se producen catástrofes. Por ello hay que asegurarse de que el proveedor

Page 181: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

167

cuenta con un plan de recuperación de desastres que permita acceder sin línea

(offline) a los principales centros de datos.

6 Algunos ejemplos de cloud storage

Google Apps: brinda el servicio de aplicaciones para empresas como Gmail,

Google Talk, Google Calendar y Google Docs, etcétera.

Amazon Web Services: los servicios que ofrece son el Amazon EC2™, Amazon

S3™, SimpleDB™, Amazon SQS™.

Azure de Microsoft: ofrece servicios de sistema operativo, hosting, sistemas para

desarrollo.

Rackspace: es una famosa empresa de hosting que está detrás de Mosso,

compañía que ofrece un paquete de básico de hosting a partir del cual se escala

según se necesite —y sin migrar de servidores. Recientemente, Rackspace

adquirió a JungleDisk, un popular cliente para Amazon S3, el cual pronto estará

integrándose a CloudFiles, otro servicio de Mosso.

7 Ventajas y desventajas de la cloud computing

Las ventajas de la cloud computing son:

Acceso a la información y los servicios desde cualquier lugar.

Disponibilidad del servicio y/o aplicación Web 24h/7días/365dias.

Accesibilidad mediante diferentes tecnologías compatibles, tales como

PDA, teléfonos móviles, ordenadores portátiles, blackberrys, netbooks,

etcétera.

Servicios gratuitos y de pago según las necesidades del usuario.

No saturación del uso del disco duro en el ordenador o aplicación que se

usa, debido a que sólo se necesita un navegador Web e Internet.

Empresas con facilidad de escalabilidad.

Capacidad de procesamiento y almacenamiento sin instalar máquinas

localmente.

Las desventajas son las siguientes:

Acceso de toda la información a terceras empresas.

Dependencia de los servicios en línea.

En ocasiones, debido a una catástrofe natural o error humano, el servicio

se suspende, con las malas repercusiones para los clientes —nosotros.

es mejor no guardar datos privados, fotos, videos o información mucho

m{s privada en estos servicios. Hoy parece que ‚no nos molesta‛, pero,

Page 182: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

168

¿realmente estamos todos de acuerdo y tranquilos dejando tantos datos al

alcance de terceras personas? ¿Dónde y cuándo comenzaríamos a perder

nuestra privacidad y libertad?

Descontrol del manejo, almacenamiento y uso de esta información.

Dependiendo de qué tecnología use ese servicio, un dispositivo podrá

acceder o no al servicio.

Mayor dependencia de proveedores de Internet y de la velocidad de

ADSL, cable, fibra óptica u otras tecnologías.

Posibilidad de que delincuentes cibernéticos revienten la seguridad del

servicio y se hagan con datos privados.

Demasiada necesidad y dependencia de estar conectado, podría generar

apariciones de nuevos tipos de enfermedades —‚internetitis estresis aguda‛.

8 Riesgos del área de la cloud computing

Por su parte, Gartner identifica siete riesgos principales en el área de la cloud

computing:

1 La confianza en el proveedor. Cuando sus aplicaciones y datos corporativos se

externan, usted debe hacerlo con alguien de su total confianza, que le asegure la

calidad del servicio, los términos de confidencialidad de su relación contractual,

etcétera.

2 Conformidad legal. Al final, el responsable en caso de infracción es el propietario

de la información. Por ello, los proveedores de cloud computing deberán estar

abiertos a cualquier tipo de auditoría externa y a tomar y cumplir cuanta medida

sea necesaria para garantizar el cumplimiento de la normativa, ofreciendo, con

ello, seguridad a sus clientes.

3 Localización de los datos. Es uno de los puntos fuertes de la cloud computing pero

también uno de sus riesgos. El tener acceso a los datos en cualquier momento,

independientemente de dónde estén localizados, debe estar garantizado para el

cliente.

4 Protección de la información. Como se comparten recursos, esto no puede ir en

menoscabo de la confidencialidad de los datos del cliente, la cual deberá estar

garantizada en todo momento.

5 Recuperación. El desconocimiento de la localización de la información no puede

implicar jamás la falta de medidas de seguridad y réplica para garantizar su

recuperación en caso de desastre o pérdida de datos.

Page 183: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

169

6 Colaboración con la justicia. Se deben acatar las leyes de protección y seguridad

de la información, aunque éstas varíen según las normas propias del país donde

se localicen los datos y aplicaciones del usuario.

7 Una relación “para toda la vida”. La sustentabilidad del proveedor tiene que estar

garantizada. Fusiones, quiebras, cualquier cambio en su negocio no puede dejar

‚indefenso‛ al cliente y, por ello, se establecerá un compromiso de continuidad a

largo plazo en la relación en los propios términos del contrato.

9 Las tres clases de cloud computing

La cloud computing se ha convertido en un concepto comodín. Se puede usar en

múltiples contextos para referirse a cosas de lo más dispares. Pero parece que hay

consenso respecto a tres clases fundamentales, a saber:

Software as a Service (SaaS); en español, ‚software como servicio‛. Modelo de

distribución de software donde una empresa sirve el mantenimiento, soporte y

operación que usará el cliente durante el tiempo que haya contratado el servicio.

El cliente usará el sistema alojado por esa empresa, la cual mantendrá la

información del cliente en sus sistemas y proveerá los recursos necesarios para

explotar esa información. Ejemplos: Salesforce, Basecamp.

Infrastructure as a Service (Iaas); en español, ‚infraestructura como servicio‛.

Modelo de distribución de infraestructura de computación como un servicio,

normalmente mediante una plataforma de ‚virtualización‛. En vez de adquirir

servidores, espacio en un centro de datos o equipamiento de redes, los clientes

compran todos estos recursos a un proveedor de servicios externo. Una

diferencia fundamental con el hosting virtual es que el aprovisionamiento de estos

servicios se hace de manera integral por medio de la Web. Ejemplos: Amazon

Web Services EC2 y GoGrid.

Platform as a Service (PaaS); en español, ‚plataforma como servicio‛. Aunque suele

identificarse como una evolución de SaaS, es más bien un modelo en el que se

ofrece todo lo necesario para soportar el ciclo de vida completo de construcción y

puesta en marcha de aplicaciones y servicios Web completamente disponibles en

Internet. Otra característica importante es que no hay descarga de software que

instalar en los equipos de los desarrolladores. PasS ofrece mútliples servicios,

pero todos aprovisionados como una solución integral en la Web. Aunque a

algunos servicios de Amazon Web Services, como SimpleDB y SQS, yo los

considero PaaS, esta afirmación puede ser discutida. Otro ejemplo: Google App

Engine.

Page 184: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

170

10 Proyectos a futuro

El carácter experimental que todavía tiene cloud computing, pese a que ya es

operativo en distintas formas y ofertas, está llevando a la industria y las

instituciones nacionales e internacionales a investigar estas tecnologías con el

objeto de crear modelos de producción válidos tanto para el mercado de

consumo como el de empresa. De las actividades que se están desplegando

alrededor de la cloud computing con propósitos innovadores destacan dos, una en

Estados Unidos y otra en la Unión Europea. En ambas, IBM es protagonista. El

pasado marzo de 2009, IBM lanzó una iniciativa de investigación, en colaboración

con dos entidades universitarias de Estados Unidos, dirigida al suministro de

software de automatización y autogestión del centro de datos en entornos de cloud

computing. En concreto, la alianza con el Georgia Institute of Technology y la

Ohio State University se centra en el desarrollo de tecnologías de autogestión por

la división de autonomic computing de IBM, creada en 2001. La compañía espera

que finalmente los avances conseguidos en este terreno se integren en sus

productos comerciales, especialmente en el software de gestión de Tivoli. ‚IBM

está siendo muy activa en autonomic computing y más recientemente en cloud

computing. Y este proyecto permitirá unir ambas áreas para dar respuestas a los

clientes‛, aseguraba recientemente Matt Ellis, vicepresidente de Autonomic

Computing de IBM, a Network World. Las tendencias hacia entornos

inform{ticos cada vez m{s flexibles ‚incrementan la complejidad de la gestión.

Por ello, se necesita automatización que soporte estos entornos din{micos‛.

Finalmente, la iniciativa desplegará un prototipo de cloud computing que enlace

los centros de datos de las dos universidades, llamado Critical Enterprise Cloud

Computing Services (CECCS). Los investigadores probarán durante los próximos

tres años los beneficios de la automatización en cuestiones como balanceo de

cargas, consolidación de servidores, recuperación de desastres, failover

automatizado y fiabilidad.

El otro gran proyecto en cloud computing es el promovido por la Unión Europea,

dentro de la primera convocatoria del VII Programa Marco, en el capítulo de

Infraestructuras, Ingeniería y Arquitecturas de Software y Servicios. Dotado con

17 millones de euros, Reservoir (Resources and Services Virtualization without

Barriers) persigue ‚explorar el despliegue y gestión de servicios TI a través de

diferentes dominios administrativos, plataformas tecnológicas y geografías‛.

Desde Europa y con España, liderado por IBM, en su laboratorio de investigación

de Haifa, en Reservoir participan un total de 13 socios europeos, entre ellos,

Telefónica Investigación y Desarrollo y el Grupo de Arquitectura de Sistemas

Distribuidos de la Universidad Complutense de Madrid, junto a otras entidades

Page 185: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

171

como SAP Research, Sun Microsystems, Thales y universidades de Umea,

Londres, Lugano y Messina. Como apunta en su blog Ignacio Martín Llorente,

catedrático del Grupo de Arquitecturas de Sistemas Distribuidos de la

Universidad Complutense de Madrid:

El objetivo de Reservoir durante los próximos tres años es desarrollar la

tecnología necesaria para desplegar soluciones de infraestructura que

proporcionen servicios bajo demanda, a un precio competitivo y

asegurando calidad de servicio. Esta tecnología será decisiva para los

centros de datos del futuro, virtualizando [sic] la infraestructura que

soporta los servicios y permitiendo que varios centros de datos

compartan su infraestructura con el fin de satisfacer demandas puntuales

que excedan la capacidad local. En otras palabras, una empresa podrá

acceder a servicios o infraestructura adicional por medio de la tecnología

Reservoir en alguno de los sitios de la cloud. Si existe una demanda

puntual para un servicio hospedado en un centro de datos, éste podrá

alquilar dinámicamente servicios adicionales. El proyecto incluye la

validación de la nueva tecnología en escenarios de la administración

pública, procesos de negocio, computación bajo demanda y

telecomunicaciones.

El proyecto está organizado en tres actividades tecnológicas principales:

gestión de servicios, gestión de entornos de ejecución virtuales e

infraestructura de virtualización. El Grupo de Arquitectura de Sistemas

Distribuidos de la Universidad Complutense de Madrid es responsable

de la actividad sobre gestión de entornos de ejecución virtuales. En el

contexto de la actividad se desarrollarán nuevas tecnologías Grid y de

virtualización para satisfacer las demandas fluctuantes de recursos en

entornos tipo cloud computing.

En el modelo cloud de Reservoir se emplea el motor de gestión de

‚virtualización‛ OpenNEbula, una tecnología de código abierto desarrollada por

el grupo de investigación de Martín Llorente, que está siendo adoptada en

numerosas soluciones cloud y datacenter.

11 Conclusiones

Finalmente, la cloud computing está emergiendo. Se ha dado la combinación de

factores para que empiece a despegar. Aún quedan muchas incógnitas que

resolver, especialmente la de cuál será el papel de los medianos y pequeños

proveedores de hosting contra los grandes proveedores. La otra gran pregunta es

qué características arquitectónicas deberán tener las aplicaciones que aprovechen

Page 186: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

172

la cloud computing, que pueden correr sobre cientos o miles de máquinas virtuales

iguales:

La aplicación debe poder escalar hacia arriba y hacia abajo de manera

sencilla y rápida.

El software de infraestructura debe estar pensado para correr sobre

máquinas virtuales y no sobre el metal.

Los sistemas hardware deben pasar de diseñarse para racks a diseñarse

para containers. Además, el hardware debe ser energéticamente eficiente

cuando el sistema esté ocioso. Otra cuestión importante es que el hardware

deber{ tener en cuenta la ‚virtualización‛ y sus características —cuellos de

botella de entrada-salida, por ejemplo.

En los años venideros se verá un crecimiento rápido de estos servicios, algo muy

atractivo para las empresas, que estarán interesadas en seguir de cerca su

desarrollo, entender cómo pueden beneficiarse de las alternativas que ofrece y

asegurar que utilizan la tecnología de la información de la forma más beneficiosa

posible.

Referencias:

1. Códecs o codificador-decodificador. Es una especificación que utiliza un

dispositivo o programa para desempeñar transformaciones bidireccionales

sobre datos y señales. Existen códecs de transmisión, compresión y encriptación

[véase Internet (http://www.alegsa.com.ar/

Dic/codec.php)].

2. El concepto de Google Docs cambia el modo de trabajar en equipo. Además,

nos libera de tener que depender de un disco rígido o un pen drive para ir por

allí revisando y actualizando documentos. Todo está en línea, ordenado y

actualizado, para que podamos acceder a cualquier hora y desde cualquier

lugar [véase Internet (http://expediciones-virtuale

s.blogspot.com/2008/05/googledocs.html)].

3. Revista Dr. Max Número 82 Año V, páginas 14-23, edición Dalaga, S.A.

Ciudad de Buenos Aires Argentina.

2. Revista Users Número 21 1Año V, páginas 68-70, edición Dalaga, S.A.

Ciudad de Buenos Aires Argentina.

3. En Internet (http://www.maestrosdelweb.

com/editorial/cloud-computing-nueva-era-de-desarrollo).

4. En Internet (http://www.idg.es/Comunic

aciones/articulo.asp?id=191003).

5. En Internet (http://www.nubeblog.com/

2008/10/15/saas-iaas-y-paas-las-tres-clases-de-cloud-computing/).

Page 187: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

173

6. En Internet, (http://www.feliperm.info/2009/

03/04/cloud-computing-ventajas-ydesven

tajas/).

7. En Internet (http://www.itcio.es/cloud-

computing/informes/1005071022902/ventajas-frenos-al-cloud-

computing.1.html).

Page 188: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

174

Page 189: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

175

Medición del Tremor Parkinsoniano mediante

un Instrumento Virtual Analizado y Diseñado

con SysML

Juan Fernando García Mejía, Flor del Río González Romero, Arturo Garduño Aparicio

Resumen. En este artículo se presenta el análisis y diseño, mediante el lenguaje

de modelado de sistemas, de un instrumento virtual de medición no invasivo de

una señal eléctrica representativa del tremor parkinsoniano, el cual es un signo

de una enfermedad de carácter neurológico-degenerativo conocida como mal del

Parkinson. El sistema propuesto está constituido en su etapa física por una tarjeta

de adquisición de datos, un circuito de medición compuesto por amplificadores

operaciones y fotorresistencias como elemento sensor, la parte lógica se compone

de módulos de adquisición, medición de frecuencia y visualización, los cuales

son codificados en Lab View.

Palabras clave: tremor parkinsoniano, lenguaje de modelado de sistemas.

Sumario:

1 Introducción 1.1 Tremor parkinsoniano 1.2 Lenguaje de modelado de

sistemas 1.2 Lenguaje de modelado de sistemas 2 Análisis y diseño 3

Desarrollo 4 Resultados 5 Conclusiones Agradecimientos Referencias

1 Introducción El mal de Parkinson es un trastorno degenerativo asociado con el daño a la

sección del cerebro encargada de la movilidad, el cual fue descrito por James

Parkinson, en Inglaterra, en el año de 1817. Este mal pueden padecerlo tanto

hombres como mujeres. Hoy se estima que en los próximos 25 años habrá un

incremento de 100% en la cantidad de casos reportados. Con esto en mente, se

construyó un instrumento virtual de medición del tremor parkinsoniano, de

carácter no invasivo, el cual fue analizado y diseñado mediante el lenguaje de

modelado de sistemas.

Los instrumentos virtuales presentan un problema teórico: la falta de técnicas de

análisis y diseño holístico de las etapas físicas y lógicas que los componen.1,2,3,4,5,6,7

En los diagramas de flujo, esquemáticos o de bloques que se emplean para

Page 190: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

176

representar la funcionalidad de manera general y las expresiones matemáticas, si

se utilizan técnicas de procesamiento digital, tratamiento de los datos medidos o

aspectos de los circuitos de electrónica, esto queda desarticulado del desarrollo

de los componentes lógicos de los instrumentos virtuales. De continuar así, esta

tendencia provocaría en el futuro retrasos en la entrega y un aumento de los

costos de implementación y mantenimiento, tal como se presentan ahora en la

industria del software.

Una solución para este problema8 propone el análisis y diseño holísticos de los

instrumentos virtuales, mediante los diagramas de flujo de datos (DFD). Otra

forma de solucionarlo es recurriendo al lenguaje de modelado de sistemas, el cual

a diferencia de la otra solución, se ha convertido en un estándar aprobado.

1.1 Tremor parkinsoniano

Los signos representativos del mal de Parkinson son la rigidez y la bradicinesia

—pérdida de sensibilidad en los músculos faciales—, la acinesia —pérdida o falta

de movimiento—, la inestabilidad postural y el tremor parkinsoniano, el cual se

define como un movimiento involuntario, rítmico y oscilatorio que se produce

por la contracción alternante de músculos inervados recíprocamente —agonistas-

antagonistas— y que se presenta en estado de reposo. El tremor parkinsoniano se

ha registrado en 70% de los casos de esta enfermedad. Una de las formas de

seguimiento del mal de Parkinson es mediante la medición del tremor, la cual se

lleva a cabo con las técnicas que se describen en el cuadro 1.

Cuadro 1. Diversos principios de medición del tremor parkinsoniano y sus

desventajas

Técnica Desventaja

Acelerómetros.9 Su desventaja es su carácter

invasivo, pues los dispositivos se

colocan en el paciente.

Medición de señales

mioeléctricas con

equipo de electromio-

cardiografía.10

Son de carácter invasivo y el

costo de los instrumentos de

medición de EMG es alto.

Grabación en video

del movimiento para

su posterior análisis.11

Su ventaja es su carácter no

invasivo; su desventaja es su alto

costo, debido a las características

de grabación y reproducción del

equipo.

Page 191: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

177

1.2 Lenguaje de modelado de sistemas

El propósito general del lenguaje de modelado de sistemas (SysML) tiene

aplicaciones en ingeniería de sistemas; soporta la especificación, el análisis del

diseño, así como la verificación y validación de un rango amplio de sistemas

complejos. Estos sistemas incluyen hardware, software, información, procesos y

personal.12

En el año 2001, el Consejo Internacional de Ingeniería de Sistemas (INCOSE, por

sus siglas en inglés) decidió hacer del lenguaje de modelado unificado (UML) un

lenguaje estándar para la ingeniería de sistemas. El UML se adapta a necesidades

específicas y a un gran número de herramientas de modelado. Gracias a los

mecanismos de extensión —denominados estereotipos—, se pueden definir

vocabularios de modelado nuevos, lo que permite que el UML se adapte a

dominios específicos y disciplinas diversas. La adaptación del UML para

sistemas de ingeniería recibe el nombre de OMG Systems Modeling Languaje

(OMG SysML™), cuya primera versión (1.0) est{ basada en el UML 2.1.1.13

Una forma de describir la relación existente entre los lenguajes UML y SysML es

considerando un diagrama de Venn, como se muestra en la figura 1, donde, en

los conjuntos que agrupan a estos lenguajes, la intersección indica los elementos

de UML reutilizados por SysML y la región marcada con la etiqueta ‚SysML

extensions to UML‛ indica los elementos nuevos, que no tienen contraparte en

UML o han sido reemplazados.

Fig. 1. Un

diagrama de

Venn donde

se muestran los

componentes del estándar SysML, el cual está formado por diagramas

reutilizados de UML y sus extensiones.

Page 192: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

178

<< Diagrama de contexto >>

ibd Instrumento virtual del tremor parkisoniano

Paciente

ÇSistema È

Instrumento de

medici—n del tremor

parkinsoniano

M�dico

ÇCondiciones

Externas È

Luminocidad

En la figura 2 se ven los diagramas que componen el estándar del SysML

mostrando tres tipos de diagramas: el de requerimientos, los de comportamiento

y los de estructura.

Fig. 2. Tipos de diagramas que forman el estándar SysML, donde se muestran los

que fueron modificados a partir de los diagramas de UML, los que se ocupan sin

ninguna modificación y los exclusivamente originales.

2 Análisis y diseño

En la figura 3 se muestra el diagrama de contexto del instrumento que aquí se

propone. Éste es el diagrama donde se observan los actores que intervienen en el

instrumento.

Fig. 3. Diagrama de contexto elaborado con un diagrama de bloques interno, para

mostrar parte del entorno del instrumento.

Page 193: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

179

En la figura 4 se ven los casos de uso del sistema que aquí se propone y se

muestra a los usuarios que participan en el instrumento y sus funciones.

Fig. 4. Diagrama de casos de uso del sistema, en el cual se observan dos actores:

el médico y su paciente.

En las figuras 5, 6 y 7 se muestran los diagramas de actividad, requerimientos y

paquetes, respectivamente. También se indican los pasos que se llevan a cabo

para hacer una medición del tremor parkinsoniano y se señalan los requisitos

que debe cumplir el desarrollo, como la portabilidad y la economía, y por último,

en el diagrama de paquetes se ven los componentes de un instrumento virtual,

los cuales son lógicos y físicos; asimismo, se describen los elementos que integran

estas etapas.

Fig. 5. Diagrama de actividad del sistema, en el cual se observan las actividades

llevadas a cabo por el instrumento.

act Instrumento de medici—n del tremor parkinsoniano

Adquiere datos del tremor Calculo de la FFT

Determinaci—n de los componentes de corriente directa yLa frecuencia fundamental

Almacenamiento en base de datos

<< Diagrama de Casos de Uso >>

uc Instrumento de Medici—n del tremor parkinsoniano

Paciente

M�dico

Tiembla sobre el

sensor

Ingresa datos

paciente

Tremor Parkinsoniano

Page 194: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

180

Fig. 6. Diagrama de requerimientos del sistema, en el cual se realiza un análisis

de los atributos que se desean que tenga el instrumento a desarrollar.

Fig. 7. Diagrama del paquete del sistema en el que se muestran los componentes

del instrumento.

3 Desarrollo

En la figura 8 se muestra el circuito de acondicionamiento de la señal, con el cual

se convierten las variaciones de resistencia del elemento sensor (R2) en una

diferencia de potencial mediante el amplificador operacional número 1. El

componente (R3), con su lazo de retroalimentación, controla las variaciones

luminosas que se presentan en los diversos escenarios de medición.

req Name

Requerimientos del

instrumento de medici—n

del tremor parkinosoniano

ÇrequirementÈ

No invasivoÇrequirementÈ

Bajo costo

ÇrequirementÈ

Rango de 4 a

6Hz

ÇrequirementÈ

Portatil

<<Instrumento vitual de medici—n parkinsoniano >>

Componente f’sicoComponente l—gico

Circuito de

medici—n

Tarjeta de

adquisici—n de

datos

pkg Name

pkg Name

Adquisici—n de

datos

pkg Name

Determinaci—n

de componentes

frecuenciales Visualizaci—n

Page 195: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

181

Fig. 8. Diagrama eléctrico del circuito de medición del tremor parkinsoniano,

compensado para variaciones de luz.

El amplificador operacional número 2 tiene como finalidad reducir el voltaje offset

mediante un circuito restador; el número 3 amplifica el voltaje para que éste

pueda ser adquirido por una computadora personal. Uno de los elementos de un

sistema de instrumentación virtual es la tarjeta de adquisición de datos, por lo

que en este artículo se propone el uso de la tarjeta NI USB-6008 de National

Instruments, la cual tiene las siguientes características:

8 entradas analógicas de 12 o 14 bits.

2 salidas analógicas de 12 bits.

12 TTL/CMOS digitales.

12 líneas I/O.

32-bit, 5Mhz Counter.

Digital triggering.

Bus-powered.

El desarrollo lógico que estamos proponiendo en este artículo está basado en la

obtención e interpretación de datos mediante los componentes y herramientas de

adquisición de datos y visualización que proporciona LabView.

En la figura 9 se muestran las rutinas necesarias para adquirir en la computadora

los valores de voltaje obtenidos del sensor antes descrito.

La adquisición de datos se basa en las siguientes actividades:

1) Creación de tarea: se le informa al sistema que ha sido asignada una

nueva tarea de adquisición de datos.

2) Definición de canal analógico: se indica el dispositivo y la entrada

analógica por la cual los datos van a ser obtenidos.

3) Tiempo de muestreo: se define el número de muestras por segundo, así

como la correspondiente frecuencia de muestreo.

Page 196: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

182

4) Iniciar tarea: este elemento prepara el dispositivo y el canal analógico.

5) Lectura: en esta fase el instrumento virtual adquiere datos del exterior

mediante una tarjeta de adquisición.

6) Interpretación de datos analógicos: en esta etapa se propone la

integración de un elemento gráfico para visualizar los datos representativos

de las variaciones de voltaje.

7) Terminar y limpiar: esta fase le indica al sistema que el usuario ha decido

terminar con la tarea de adquirir datos.

Fig. 9. Código de LabView para la adquisición de datos en la etapa física del

instrumento virtual.

Las rutinas correspondientes a la visualización y el análisis del espectro de

Fourier se muestran en la figura 10, siguiendo las siguientes actividades:

1) Inverso de la frecuencia de muestreo (dt): esto se realiza con el fin de

obtener el coeficiente correspondiente a la derivada del tiempo.

2) Obtención del la frecuencia diferencial (df): mediante el instrumento

virtual FFT Spectrum (Mag-Phase) proporcionado por LabView, se obtiene

el dato correspondiente a la frecuencia diferencial.

3) Eliminación del coeficiente 0: esta operación es necesaria para descartar el

componente de CD arrojado por el acondicionamiento de la señal, de tal

manera que la cresta más alta del espectro multiplica al coeficiente df, todo

esto con el fin de obtener la magnitud correspondiente a la frecuencia

adquirida.

4) Visualización del espectro: se propone la integración de un elemento

gráfico para visualizar el espectro de Fourier.

5) Obtención de la frecuencia: en esta fase se indica la frecuencia generada

por la señal eléctrica del sensor.

Page 197: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

183

Fig. 10. Código de LabView para la medición del tremor parkinsoniano, basado

en la transformada rápida de Fourier.

4 Resultados

Cuando ya se puso en funcionamiento el módulo de adquisición de datos, se

procedió a realizar una prueba del tremor parkinsoniano en un paciente que no

estuviera medicado con Levodopa en las instalaciones de la Asociación de

Enfermos de Mal de Parkinson ubicada en Atlacomulco, Estado de México. Al

paciente se le citó una hora antes de la ingesta de una dosis de Levodopa, con lo

cual el tremor parkinsoniano se vuelve a presentar en el enfermo. En este caso

especifico, el tremor parkinsoniano ha aumentado conforme trascurre el tiempo.

En la figura 11 se ve una señal eléctrica oscilatoria de frecuencia constante (véase

el circuito en la figura 8), la cual es representativa del tremor parkinsoniano. Este

movimiento es involuntario, rítmico y oscilatorio, tal como se le definió en la

sección 1.1 del presente artículo.

El módulo de adquisición de datos, en combinación con el módulo de análisis y

visualización del espectro, da como resultado lo que aparece en la figura 12,

donde se observa que el elemento 28, correspondiente al eje del tiempo, responde

a la magnitud espectral.

Fig. 11. Señal eléctrica representativa del tremor parkinsoniano en un paciente

que no ha ingerido Levodopa.

Page 198: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

184

La frecuencia de este signo del mal de Parkinson se incrementa conforme avanza

la enfermedad, esto debido a su carácter crónico degenerativo.

Fig. 12. Espectro de Fourier de la señal eléctrica representativa del tremor

parkinsoniano mostrado en la figura 11. Con el espectro de Fourier se determina

la frecuencia a partir de la magnitud frecuencial.

5 Conclusiones

El uso de una fotorresistencia como elemento sensor, así como del circuito

propuesto en la figura 8, permite medir el tremor parkinsoniano de forma no

invasiva y a un costo bajo, en cuanto al sensor y manejo de señales. Con el uso de

los diagramas SysML, se sistematizan las actividades de análisis y diseño del

instrumento virtual, de tal forma que se garantiza cierta calidad en el producto

obtenido. Sería interesante pensar en un trabajo futuro que utilice alguna

metodología ágil para el desarrollo de software para la parte lógica. A partir de los

datos proporcionados por este instrumento, próximamente será posible elaborar

una caracterización matemática del tremor parkinsoniano, ya que esto no se ha

hecho todavía —si nos atenemos a lo que se reporta en la literatura consultada.

La segunda fase de este desarrollo consistiría en realizar un estudio de

repetibilidad, linealidad e histéresis para garantizar la confiabilidad del

instrumento.

Agradecimientos

Los autores agradecen a la Universidad Autónoma del Estado de México su

apoyo al presente proyecto mediante la Secretaría de Investigación y Estudios

Avanzados, y al C. P. Salvador Escamilla, presidente de la Asociación de

Enfermos de Parkinson del Norte del Estado de México, por su colaboración

durante las pruebas de este estudio.

Page 199: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

185

Referencias

1. De la Rosa V{zquez, ‚Sistema para detección de c{ncer cervicouterino

empleando espectroscopía óptica‛, ponencia presentada en el XX Congreso de

Instrumentación Somi, León, Guanajuato, octubre de 2005.

2. Carranza Castillo, ‚Sistema de digitalización de 10 canales para ser

procesados a través del puerto paralelo‛, ponencia presentada en el XX

Congreso de Instrumentación Somi, León, Guanajuato, octubre de 2005.

3. Rangel, D., ‚Sistema port{til para caracterizar l{mparas UV-VIS‛,

ponencia presentada en el XX Congreso de Instrumentación Somi, León,

Guanajuato, octubre de 2005.

4. Arroyo, S., ‚Plataforma de cuatro canales para adquisición y

procesamiento de señal mioeléctrica‛, ponencia presentada en el XXIII

Congreso de Instrumentación Somi, Mérida, Yucatán, octubre de 2008.

5. Cruz, I. ‚Monitoreo de señales electrofisiológicas como apoyo médico en

el tratamiento de pacientes con lesiones musculares‛, ponencia presentada en

el XXIII Congreso de Instrumentación Somi, Mérida, Yucatán, octubre de 2008.

6. Quintana, S., ‚Fotopletismógrafo de bajo consumo en corriente,

alimentado por puerto USB de una computadora‛, ponencia presentada en el

XXIII Congreso de Instrumentación Somi, Mérida, Yucatán, octubre de 2008.

7. Guzmán, R. ‚Medición a distancia de variables eléctricas a través de los

puertos GPIB y Ethernet‛, ponencia presentada en Electro 2006, Creel,

Chihuahua, octubre de 2006.

8. García, M., ‚Un espirómetro virtual: diseño e implementación basados en

análisis estructurado, transformada Wavelet discreta y Matlab‛, ponencia

presentada en el VI Congreso de Cómputo CICOS, Cuernavaca, Morelos, junio

de 2008.

9. Saavedra, J., ‚Efecto del tens en el efecto de la enfermedad del Parkinson‛,

Arch Neurocien, vol. 10, núm. 3, México, octubre de 2005, pp. 133-139.

10. Pérez, M., ‚Demodulador digital para acelerometría din{mica‛, en

Memorias del I Taller de Cómputo Reconfigurable “Óptica y electrónica”,

Coordinación de Sistemas Computacionales-Instituto Nacional de Astrofísica,

Apixaco, Tlaxcala, 2003.

11. Brunetti, F., ‚Un conjunto de herramientas port{tiles para la valoración y el

estudio de desórdenes neuromotores‛, ponencia presentada en las XXVI

Jornadas de Automática, Universidad de Alicante, España, septiembre de

2005.

12. OMG, ‚Systems Modeling Language (OMG SysML™) 2008‛, versión 1.0,

OMG, 2008, pp. 27-31.

13. Weilkiens, T., Systems Engineering with SysML/UML Modeling, Analysis,

Design, Morgan Kaufmann Publishers, Eslsevier, 2007, pp. 22-44.

Page 200: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

186

Page 201: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

187

Aproximación de un Diagnóstico Neurológico

Mediante un Sistema Multiagente Inteligente

Martha Idalid Rivera González, Gelier Jonathan Reyes Vite

Resumen. Los sistemas multiagentes, con sus capacidades de cooperación y

comunicación, cuando resuelven problemas lo hacen con un enfoque diferente a

los métodos tradicionales; esto ha conducido al replanteamiento de muchos de

los procedimientos médicos que hoy en día se utilizan para la exploración del

paciente y que pueden representarse como árboles de decisión y resolverse por

medio de sistemas multiagentes para obtener un diagnóstico previo sustentado

en el procesamiento de la información de su entorno que los agentes perciban.

Palabras clave: sistemas multiagentes, árboles de decisión, prediagnóstico

neurológico.

Sumario: 1. Introducción 2. Agentes 3. Sistemas multiagentes 4. Análisis del caso de

estudio 5. Diseño del caso de estudio 6. Conclusiones. Referencias.

1 Introducción

Existen diversas ramas de la inteligencia artificial que se han dado a la tarea de

crear soluciones para las diferentes necesidades en el campo de la medicina; una

de ellas es la de los agentes. Los agentes proveen una metáfora natural y algunos

poderosos paradigmas para la construcción y mantenimiento de sistemas

distribuidos, inteligentes y abiertos.

Los sistemas en el ramo de la medicina han tenido una aceptación favorable

sobre todo en tratamiento de enfermedades en áreas especializadas, como las

neurociencias. El desarrollo de estas herramientas avanza continuamente y las

tecnologías nuevas se abren paso llevándonos a la reconsideración de las

soluciones existentes. Los sistemas multiagente son parte de esta nueva tendencia

tecnológica; sus capacidades para resolver problemas que requieren coordinación

y comunicación superan al modelo orientado a objetos en muchos aspectos,

permitiendo la construcción de sistemas dinámicos capaces de adaptarse a los

cambios que sufra su entorno. Una de las aplicaciones de este tipo de sistemas se

centra en el desarrollo de software de prediagnóstico. En este artículo

Page 202: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

188

abordaremos el análisis y diseño de un sistema multiagente con el cual, mediante

el uso de árboles de decisión, se obtiene una exploración preliminar y puntual de

un paciente determinado. Como caso de estudio, nos enfocaremos en la

aplicación de un test para detectar estructuras neurológicas posiblemente

dañadas en una persona.

El enfoque del sistema multiagente permitirá obtener las soluciones apropiadas

para lograr las metas que nos hemos propuesto con base en las capacidades

almacenadas en cada uno de los agentes que conforman el sistema. Este enfoque

es flexible y permite la especialización en cada uno de los agentes que conforman

el sistema, lo que brinda la posibilidad de segmentar el problema en varias capas.

La metodología a utilizar en el desarrollo del sistema multiagentes está

sustentada en INGENIAS, la cual resuelve el problema de análisis y diseño de

sistemas multiagente desde cinco puntos de vista: la organización de los agentes,

el agente, las tareas y objetivos, las interacciones —cómo se comunican los

agentes— y el entorno —que define qué es lo que existe alrededor del sistema

multiagente.

El procesamiento del conocimiento adquirido se realizará mediante árboles de

decisión, los cuales se encargarán de clasificar los resultados obtenidos con el

objetivo de hacer estimaciones sobre los datos y mejorar el razonamiento de los

agentes en el sistema. El sistema multiagente será construido sobre la plataforma

JADE (Java Agent Development Framework).

2 Agentes

El concepto de agente es relativamente reciente —años noventa— y con él se ha

producido la fusión de varias disciplinas científicas que abarcan desde la

inteligencia artificial hasta la psicología, pasando por la ingeniería del software,

las bases de datos, los sistemas distribuidos, la sociología, etcétera. Desde un

punto de vista tecnológico, la teoría de agentes aglutina todos los campos

relacionados con la informática.1

Un agente es un sistema informático situado en algún entorno, dentro del cual

actúa de forma autónoma y flexible para así cumplir sus objetivos. Además de su

interacción con el medio, y utilizando la definición de Wooldridge,2 un agente se

caracteriza por las siguientes propiedades:

1. Autonomía. Tiene la capacidad de actuar sin intervención humana

directa o de otros agentes

2. Sociabilidad. Puede interactura con otros agentes, utilizando como

medio algún lenguaje de comunicación entre agentes

Page 203: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

189

3. Reactividad. Un agente está inmerso en un determinado entorno

(hábitat), del que percibe estímulos y ante los que debe reaccionar en un

tiempo preestablecido.

4. Iniciativa. Un agente no sólo debe reaccionar a los cambios que se

produzcan en su entorno, sino que ha de tener un carácter emprendedor y

tomar la iniciativa para actuar guiado por los objetivos que debe satisfacer.

Para proporcionar una manera simple de caracterizar el espacio de los tipos de

agentes, Moulin3 ha definido tres tipos de agentes con base en el grado de

capacidad de solución de problemas:

1. Reactivos

2. Intencionales

3. Sociales

Los orígenes de la tecnología de agentes4,5 comienzan con la inteligencia artificial

distribuida (IAD), es decir, con la resolución de problemas de forma distribuida

—computación inteligente. El concepto de agente como entidad computacional

aislada evoluciona desde la IAD debido al influjo de la ingeniería del software.

Hoy en día se habla de la programación orientada al agente desde el punto de

vista de la ingeniería del software, como la metodología capaz de superar las

limitaciones de la programación orientada a objetos. Para desarrollar agentes se

pueden utilizar lenguajes de propósito general, entre los que cabe destacar los

orientados a objetos, debido a cierto paralelismo que existe entre éstos y los

agentes, como C++ o JAVA. Los lenguajes específicos de agentes, de los que han

aparecido numerosas propuestas en los últimos años, suelen tener asociadas

plataformas de desarrollo, una de éstas es JADE, de la cual se hará mención más

adelante. Los lenguajes de agentes han de permitir definir la estructura, el estado

y el comportamiento de cada agente.

3 Sistemas multiagentes

Los agentes no funcionan de manera aislada, típicamente deben operar en un

ambiente donde concurran varios agentes para el logro de sus metas. En este

sentido, es importante verles como sistemas sociales. La idea de ver un sistema

como una sociedad es útil cuando éste es manejado en términos de roles.6 Los

roles dotan al sistema de diferentes grados de especialización, en la medida en

que el problema a resolver así lo requiera, ya que cada agente que conforma el

sistema tendrá una tarea específica que será resuelta con el objetivo de satisfacer

las demandas del sistema. En general, los sistemas multiagente tratan sobre la

coordinación inteligente entre una colección de agentes autónomos; cómo pueden

Page 204: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

190

coordinar sus conocimientos, metas, propiedades y planes para tomar una

decisión o resolver un problema.7

Respecto de la terminología de este campo, en primer lugar hay que clarificar la

diferencia entre un sistema basado en agentes y un sistema multiagente.6 Un

sistema basado en agentes es aquel que utiliza el concepto de agente como

mecanismo de abstracción, pero que, aunque sea modelado en términos de

agentes, podría implementarse sin ninguna estructura de software

correspondiente a éstos. Por otro lado, un sistema multiagente es aquel que se

diseña e implementa pensando en que estará compuesto por varios agentes que

interactuarán entre sí, de tal forma que, juntos, alcancen la funcionalidad que se

desea.8 En este caso, hay que hacer un mayor esfuerzo de abstracción, identificar

mecanismos de aprendizaje, coordinación, negociación, etcétera. Los sistemas

multiagente son adecuados para solucionar problemas para los que hay múltiples

métodos de resolución, o bien, múltiples entidades capaces de trabajar

conjuntamente para solucionarlos.9 Por ello, entre los aspectos básicos de estos

sistemas están la interacción entre los diferentes agentes que los forman y la

definición de modelos concretos de cooperación, coordinación o negociación

entre los agentes.

4 Análisis del caso de estudio

Existen actualmente muchos trabajos que hablan sobre el enfoque multiagente

para resolver problemas de diagnóstico; la mayoría de ellos es muy similar en

cuanto a la organización de los agentes, pero difieren en la técnica que utilizan

para llevar a cabo el aprendizaje o los procesos de diagnóstico. Dichas técnicas

pueden ser, por ejemplo, las redes bayesianas mencionadas en el trabajo titulado

A Multi-Agent Intelligent Environment for Medical Knowledge,10 o también, las redes

neuronales incluidas en Case Based Reasoning versus Artificial Neural Networks in

Medical Diagnosis.11 En realidad, el uso de técnicas de inteligencia artificial con

estos sistemas depende mucho de los objetivos particulares que se pretendan

conseguir y que, entre más especializados sean, requerirán de técnicas más finas

o de combinaciones de ambas que resuelvan el problema de diagnóstico.

En el articulo Visualizing a Multiagent-Based Medical Diagnosis System,12 el proceso

de diagnóstico se toma como un proceso distribuido y cooperativo que involucra

a diferentes especialistas, departamentos y fuentes de conocimiento. De manera

similar, y basándose en este modelo, nuestro caso de estudio resolverá una parte

de todo este procedimiento, el cual abarca el diagnóstico diferencial.

El caso de estudio tiene que ver, de forma muy particular, con el proceso de

diagnóstico diferencial. La forma en que un diagnóstico diferencial se lleva a cabo

Page 205: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

191

implica una serie de pasos que obligan a considerar un numero abierto de

variables antes de emitir un diagnóstico definitivo. El ser humano no siempre es

capaz de considerar todos los factores que influyen en una determinada

enfermedad, lo que dificulta la elaboración de un perfil de riesgo para un

paciente determinado. Los sistemas multiagentes, gracias a la capacidad de

comunicación, especialización y modificación de su entorno, permiten replantear

las estrategias para obtener las metas y así considerar factores que antes no se

tenían en cuenta.

El diagnóstico diferencial está dividido en dos grandes etapas: la formación de

hipótesis y la recolección de evidencia médica (véase la figura 1).

Fig. 1. Proceso de diagnóstico diferencial.

Las dos etapas se conjuntan para descartar posibles enfermedades en un paciente,

dejando como resultado un diagnóstico final o definitivo. La parte que concierne

directamente a la entrevista médica consiste en la observación del paciente y en la

realización de una serie de preguntas sobre signos y síntomas que presenta la

persona afectada en ese momento; el resultado de esta primera fase del

diagnóstico diferencial sirve como prediagnóstico para el médico y se corrobora

mediante una serie de estudios clínicos detallados. En la literatura médica es

común observar árboles de decisión simples que ordenan las preguntas de tal

forma que en las ramas de los árboles se encuentran las posibles causas del

malestar o la posible zona afectada en un paciente. En conjunto, sistemas

Page 206: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

192

multiagentes y árboles de decisión son herramientas tecnológicas que vale la

pena explotar a fin de crear una herramienta más, con la cual dar solución a

nuestro caso de estudio.

5 Diseño del caso de estudio

La metodología elegida para el diseño del sistema se denomina INGENIAS.13

INGENIAS concibe el sistema multiagente como la representación computacional

de un conjunto de modelos. Cada uno de estos modelos muestra una visión

parcial del sistema multiagente: los agentes que lo componen, las interacciones

que existen entre ellos, cómo se organizan para proporcionar la funcionalidad del

sistema, qué información es relevante en el dominio, las tareas y objetivos que

tienen lugar en el sistema y cómo es el entorno en el que se ubica el sistema a

desarrollar. INGENIAS proporciona herramientas gráficas para generar

especificaciones, validar los diseños, generar códigos de forma automática y

documentos. Por medio de los modelos de INGENIAS es sencillo representar todos los

aspectos de un sistema de agentes. Cada uno de estos modelos se centra en

aspectos concretos del sistema:

Modelo de organización. Es el equivalente a la arquitectura del sistema.

Describe cómo se agrupan y coordinan los distintos componentes del sistema,

identifica las tareas relevantes para la organización, así como sus objetivos

globales, y define restricciones en las interacciones entre los agentes.

Modelo de agente. Describe agentes particulares, sus tareas, objetivos, los

roles que desempeñan y los estados mentales en que se encontrarán a lo largo

de su vida.

Modelo de objetivos y tareas. Tiene como propósito recoger las motivaciones

del sistema de agentes, definir las relaciones entre objetivos y tareas, indicar

las entradas y salidas de cada tarea, y describir cuáles son sus efectos, tanto en

el entorno como en el estado mental de sus agentes responsables.

Modelo de interacción. Describe cómo se coordinan y comunican los

agentes del sistema. Esto incluye a los actores implicados, las unidades de

interacción, los protocolos utilizados y cómo afecta la interacción en el

contexto.

Modelo de entorno. El propósito de este metamodelo no es representar el

mundo en el que se ubica el sistema, sino, desde un punto de vista más

pragmático, categorizar el tipo de entidades relevantes en el entorno y

Page 207: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

193

restringir la interacción con ellas. Así, el entorno contendrá sólo recursos,

aplicaciones y agentes, y se limitará la percepción y actuación de los agentes.

El sistema multiagente inteligente está conformado por cuatro agentes:

a. Agente entrevistador. Se encarga de evaluar al paciente con base en las

preguntas existentes.

b. Agente de datos. Lleva el control de los pacientes distribuyendo la

información obtenida por el agente entrevistador.

c. Agente broker. Lleva el control de las comunicaciones entre los agentes y

distribuye la información que éstos obtienen.

d. Agente de prediagnóstico. Integra un diagnóstico previo con base en la

información recibida del agente de datos.

La organización de estos cuatro agentes se detalla en la figura 2.

Fig. 2. Esquema del sistema multiagente.

La comunicación de los agentes se lleva a cabo mediante ACL (Agent

Comunication Language),14 un lenguaje estándar desarrollado por FIPA (Foundation

for Intelligent Physical Agent)17 y basado en actos del habla, con el cual se definen

protocolos de interacción de alto nivel, llamados conversaciones. Las

conversaciones entre agentes suelen seguir ciertos patrones o secuencias típicas

de mensajes, denominados protocolos de conversación. Existen protocolos

definidos por FIPA para la comunicación. En este artículo se hace uso del

protocolo FIPA-request, el cual permite que un agente haga una petición sobre

una acción a realizar y reciba una respuesta del agente receptor.15 La

representación del protocolo se muestra en la figura 3.

Page 208: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

194

Fig. 3. Protocolo FIPA-request.

El tipo de arquitectura del que hace uso el sistema multiagente es híbrido. Se

trata de una arquitectura centrada en reaccionar a los eventos que tengan lugar

en el entorno pero cuidando que las decisiones se tomen utilizando mecanismos

de razonamiento lógico (véase la figura 4).

Fig. 4. Arquitecturas de agentes.

El funcionamiento del sistema tiene lugar cuando un paciente acude y empieza la

comunicación del agente entrevistador con el agente broker. Éste se encarga de

hacer una petición al agente de datos, solicitando información relativa al paciente

y confirmando si figura en la base de datos de pacientes. Si esto es así, se muestra

la información correspondiente a dicho paciente; de lo contrario, el agente

devuelve un mensaje de paciente no localizado. Ya sea que el paciente se

encuentre dado de alta o no, el agente entrevistador procede con la aplicación del

cuestionario médico que, en este caso, se trata de una serie de preguntas sobre

signos y síntomas neurológicos.

La forma en que se encuentra estructurado el cuestionario se basa en un árbol de

decisión simple, el cual es almacenado en la base de datos de tal manera que el

agente entrevistador se encargue de aplicarlo tal cual lo indica el árbol, con el fin

de integrar un prediagnóstico y almacenarlo en el historial del paciente. El

Page 209: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

195

especialista, si así lo decidiese, es capaz de modificar en cualquier momento las

características del sistema con el fin de que se adapten al tipo de prediagnóstico

del cual se quiere tener conocimiento en su momento.

La plataforma utilizada para desarrollar los agentes es JADE (Java Agent

Development Framework), un middleware que proporciona tanto un entorno de

desarrollo como uno de ejecución para la realización y mantenimiento de

sistemas multiagente. El entorno de desarrollo está formado por una serie de

librerías en JAVA que permiten la implementación de agentes de manera limpia e

independiente de la plataforma sobre la que se va a ejecutar.16

El diseño de las interacciones de los agentes con su entorno estará a cargo de

INGENIAS, el cual basa el diseño del sistema multiagente en los siguientes

aspectos:

1. Los agentes que componen al sistema.

2. Las interacciones que existen entre ellos.

3. Cómo se organizan para proporcionar la funcionalidad del sistema.

4. Qué información es relevante en el dominio.

5. Cómo es el entorno en el que se ubica el sistema a desarrollar.

6 Conclusiones

El diagnóstico de enfermedades haciendo uso de sistemas multiagentes resulta

extremadamente útil como una herramienta de apoyo para el personal médico o

personas que carezcan de la infraestructura apropiada para llevar a cabo una

observación mínima de un paciente en riesgo potencial, ya que los agentes

descomponen los procedimientos médicos clásicos en tareas que se resuelven

haciendo uso de las capacidades de comunicación que poseen los agentes,

subsanando las deficiencias humanas que conlleva el considerar un número

indefinido de variables al momento de integrar el diagnóstico diferencial y

adaptándose a las necesidades que un entorno en continuo cambio les exija.

El modelado de este tipo de sistemas depende en gran medida de las necesidades

especificas que quieran atenderse, pero la mayoría de los trabajos descompone la

problemática de manera similar, centrándose generalmente en el mecanismo de

decisión que el agente de diagnóstico adopte para integrar un resultado; los

demás agentes que componen el sistema trabajan para aportar a este agente datos

obtenidos del entorno.

Page 210: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

196

En este articulo se abordó el diseño y desarrollo de sólo una parte del diagnóstico

diferencial, haciendo uso de los árboles de decisión en su forma más simple, para

brindar un prediagnóstico que se ajuste a las entrevistas aplicadas por los

médicos a pacientes que padecen enfermedades de tipo neurológico, con el fin de

facilitar y minimizar el error cuando se emite un juicio final sobre el estado de un

paciente o para canalizar de una mejor manera las atenciones que debe recibir el

paciente en determinado momento, si no está presente un especialista.

Referencias

1. Molina López, J. M., J. García Herrero y A. M. Bernardos Barbolla, Agentes

y sistemas multiagentes, Departamento de Informática, Universidad Carlos III

de Madrid, 2004.

2. Wooldridge, M. y n. R. Jennings, ‚Intelligent Agents: Theory and

Practice‛, The Knowledge Engineering Review, vol. 10, núm. 2, 1995, pp. 115-

152.

3. Moulin, C., ‚Hierarchical Model and Communication by Signs, Signals

and Symbols in Multiagent Mnvironments‛, Journal of Expert. Theory. Artifcial

Intelligence, 1996.

4. Bradshaw, J., Software Agents, AAAI Press-The MIT Press, 1996.

5. Ferber, J., Multi-Agent Systems. An Introduction to Distributed Artificial

Intelligence, Addison-Wesley, 1999.

6. Jennings, R., K. Sycara y M. Wooldridge, ‚A Roadmap of Agent Reasearch

and Development‛, Autonomous Agents and Multiagent Systems, vol. 1, núm.

1, 1998, pp. 275-306.

7. Bond, A. H. y L. Gasser, Readings in Distributed Artificial Intelligence,

Morgan Kaufman,1988.

8. Bussman, S. y H. J. Müller, ‚A Communication Achitecture for

Cooperating Agents‛, Computational Artificial Intelligence, vol. 12, núm. 1,

1993, pp. 37-54.

9. Chu-Carroll, C. y S. Carberry, Conflict Detection and Resolution in

Collaborative Planning Intelligent Agents II: Agent Theories, Architectures and

Languages, M. J. Wooldridge, P. Mueller y M. Tambe (eds.), Springer-Verlag,

Nueva York, 1995, pp. 111-127.

10. Vicaria, R. M. y C. D. Floresa, A Multi-Agent Intelligent Environmentf for

Medical Knowledge, Instituto de Informática-Universidad Federal do Rio

Grande do Sul, Caixa, 2005.

Page 211: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

197

11. Alves, V. y P. Novais, Case based reasoning versus artificial neural networks

in medical diagnosis, Departamento de Informática-Universidade do Minho

Braga, Portugal, 2004.

12. Tawfig, A. y M. Elammari, Visualizing a Multiagent-Based Medical

Diagnosis System Using a Methodology Based on Use Case Maps, Institute for

Computer Science and Business Information Systems-University of

Duisburg-Essen, 2004.

13. INGENIAS, Universidad Complutense de Madrid (GRASIA), en Internet

(http://grasia.fdi. ucm.es/ingenias), 2005.

14. FIPA-ACL, en Internet (http://www.fip

a.org/specs/fipa00061/SC00061G.pdf).

15. FIPA-Request, en Internet (http://www.fip a.org/specs/

fipa00026/SC00026H.pdf).

16. Garamendi, J. Agentes inteligentes: JADE, Programa de Doctorado en

Informática y Modelización Matemática, Universidad Rey Juan Carlos, 2004.

17. FIPA (Foundation for Intelligent Physical Agent) es una organización que

promueve estándares de tecnología basada en agentes y la interoperabilidad

con otras tecnologías, de manera normada.

Page 212: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

198

Page 213: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

199

Elección de Software Libre en el Desarrollo

de Sistemas Web

Rodolfo Ostos Robles, Ismaylia Saucedo Ugalde, Víctor Javier Sánchez Sánchez

Resumen. Los sistemas de información son muy útiles para las organizaciones;

no obstante, se invierten cuantiosos recursos económicos en su desarrollo o

adquisición sin que se tenga la opción de modificarlos o adaptarlos según las

necesidades propias de cada empresa, lo que irrevocablemente conduce a un

círculo vicioso empresa-proveedor de soluciones de software. Las tendencias

actuales en el desarrollo de las tecnologías de sistemas de información se están

orientando al uso de software libre para el manejo de información y comunicación.

Esto, en primera instancia, eliminaría la codependencia empresa-proveedor que

acabamos de mencionar, pero la alternativa produce otro problema: el de la

elección adecuada de las herramientas. En el presente artículo se propone una

metodología que asista al ingeniero en sistemas en su elección de software libre.

Esta metodología fue empleada en el desarrollo de un sistema Web para una

dependencia educativa gubernamental.

Palabras clave: software libre, sistemas de información, tecnologías de la

información y la comunicación, instituciones gubernamentales.

Sumario: 1 Introducción 2 Estado del arte 3 Metodología 4 Resultados experimentales.

Conclusiones. Referencias

1 Introducción

Las tecnologías de la información y la comunicación (TIC) engloban diferentes

aspectos,1 desde el hardware —los dispositivos electrónicos— hasta el software —

los procedimientos de operación de estos dispositivos—; estas tecnologías tienen

muchas ventajas porque reúnen, procesan, almacenan y sirven para consultar y

distribuir información. La iniciativa privada y los gobiernos de los países

desarrollados han entendido esto desde hace tiempo y no han dudado en invertir

cuantiosos recursos económicos en ellas; en cambio, en los países en vías de

desarrollo, especialmente en el sector gubernamental, esto no es así, debido a que

Page 214: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

200

sus presupuestos para la adquisición y utilización de nuevas tecnologías son

limitados, especialmente en tiempos de austeridad. A pesar de esto, economizar

en hardware no es una alternativa recomendable; en cambio, reducir los costos del

software es viable. Por ejemplo, países como Brasil, India, China y Alemania

utilizan software libre,2 de tal manera que el presupuesto asignado al pago de

licencias al propietario del software ahora se utiliza para fortalecer otras áreas

tecnológicas, obteniendo así una optimización de los recursos establecidos para

este fin. En este artículo se describe una metodología para elegir las herramientas

de un sistema Web utilizando software libre, con la cual se integraron siete

sistemas de información en una dependencia educativa gubernamental.

2 Estado del arte

El uso de software libre implica que éste se pueda ejecutar, copiar, distribuir,

estudiar, cambiar y mejorar, y esto no es algo nuevo. Los primeros registros de

este uso datan de finales de los años de 1960, con la distribución del sistema

operativo Unix.3 Con el paso del tiempo, este concepto se fue modificando y

adaptando hasta llegar a la actualidad, cuando se puede conseguir una cantidad

importante de software, desde sistemas operativos hasta herramientas ofimáticas

y herramientas para desarrollo de aplicaciones. Debido al uso de este tipo de

software, que no requiere del pago de licencias al propietario —por ejemplo,

sistemas operativos y aplicaciones ofimáticas—, se optimiza el presupuesto

gubernamental invertido en el desarrollo de sistemas de información. En el año

2002, en España y otras regiones de Europa los parlamentos respectivos han

decretado leyes que favorecen el uso de software libre. En Latinoamérica, Perú y

Argentina4 han adoptado medidas similares.Brasil es uno de los ejemplos más

documentados respecto de las leyes que ha instituido para favorecer el uso de

software libre. El gobierno de Cuba, por su parte, ha desarrollado proyectos

estatales utilizando herramientas de software libre, como el Infomed, un portal

dedicado al sector salud.5 Reproducir estos esfuerzos en el gobierno mexicano

sería recomendable. En México ha habido pocos proyectos de software libre y

éstos, en la mayoría de los casos, se han enfocado al ámbito educativo —por

ejemplo, el Proyecto Red Escolar—, con resultados poco favorables6 debido

principalmente a la problemática relacionada con la elección del software. Esta

indecisión ha contribuido a que no se explote el potencial del software libre en los

espacios gubernamentales. En nuestro país no existen políticas que favorezcan el

empleo de este tipo de software. Por lo tanto, aquí se desarrolla una metodología

que eleva la certidumbre cuando se trata de elegir la mejor opción de software

libre.

Page 215: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

201

3 Metodología

Debido a la naturaleza del software libre, al comenzar un proyecto es importante

llevar a cabo un análisis profundo de las herramientas disponibles, a fin de que la

elección entre las opciones tecnológicas más recientes se la mejor. Los requisitos

básicos incluyen el que se puedan utilizar desde para la migración de

aplicaciones ofimáticas hasta para el desarrollo y puesta en marcha de sistemas

de información, como es el caso de nuestro proyecto, pues se desarrolló un

sistema de información de estadística educativa con base en la metodología para

la elección del software para el sistema Web que se describe a continuación.

La metodología para la elección del software está dividida en cuatro fases (véase

la figura 1):

Fase conceptual. La función principal de esta fase es la de entender el entorno que

rodeará el proyecto, es decir, el ambiente en el cual será insertado. En esta fase

juegan papeles importantes la amplitud del proyecto, el tipo de sistema que se

implementará y la interacción directa que los usuarios tendrán con el sistema de

información. Habrá que analizar la cultura informática tanto de los usuarios

como de los administradores que se quedarán a cargo de la operación y

mantenimiento del software para que esta información sea tenida en cuenta

durante el proceso de elección.

Fase operacional. En esta fase se toma en cuenta la infraestructura tecnológica.

Generalmente, el equipo con el que operan las instituciones gubernamentales es

obsoleto, por lo tanto, se debe hacer un inventario de todo el equipo de cómputo

en existencia y sus capacidades, lo que dará un panorama claro de la

infraestructura que posee la organización. Esto definirá el tipo de software que se

utilizará.

Esta fase puede llevar a una de dos opciones: a) se utiliza la infraestructura con

las que se cuenta; b) se elabora una propuesta de para la adquisición de equipo

nuevo.

Fase técnica. Con base en la información recopilada en las dos fases anteriores, se

elige la plataforma con la que operará el sistema de información, teniendo en

cuenta las capacidades de los equipos de cómputo que serán utilizados como

clientes y servidores. Además, esto último dictará las características de las

herramientas que se utilizarán para el desarrollo e implementación del sistema de

información.

En esta fase se analizan las opciones para lo siguiente:

A. El sistema operativo del servidor.

B. El sistema operativo de los clientes.

C. El sistema gestor de base de datos.

D. Las herramientas de desarrollo.

Page 216: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

202

Herramientas de modelado.

Lenguajes de programación.

Herramientas de depuración.

Cuando el proyecto es sólo de migración de aplicaciones ofimáticas, esta fase se

divide en el análisis de las opciones para lo siguiente:

A. El sistema operativo del servidor.

B. El sistema operativo de los clientes.

C. Herramientas ofimáticas.

Fase de evaluación del software. Finalmente, en la etapa de evaluación, se hace un

estudio comparativo de las opciones disponibles, las cuales deben cumplir con

los objetivos funcionales y operacionales del proyecto.

Fig. 1. Fases para la elección de software libre.

Esta metodología garantiza una correcta elección del software libre para el

desarrollo o migración y conduce a la optimización de los recursos económicos,

porque el presupuesto ya no tendrá que destinarse al pago de licencias de

software.

4 Resultados experimentales

La metodología fue aplicada en la elección del software libre para el desarrollo de

un sistema de información de una dependencia de gobierno. La aplicación de la

metodología, así como los resultados obtenidos, se describen a continuación.

Fase conceptual. Se hizo el estudio detallado del ambiente organizacional; se

entrevistó tanto a los usuarios potenciales internos y externos, como a los

administradores del sistema, una vez que éste estuvo terminado, y se determinó

lo siguiente:

Conceptual Operacion

al

Técnica Evaluación

del

software libre

Fases para la elección de software libre de

un proyecto informático

Inicio con la

propuesta

del proyecto

Finaliza con

la correcta

elección de software

libre

Page 217: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

203

1. Los usuarios del sistema tenían poca cultura informática, lo que influyó

directamente en los requerimientos de diseño de interfaz.

2. Los administradores estaban familiarizados con el manejo de lenguajes

de consulta estructurados.

3. El sistema de información estadístico se limitaría a visualizar y generar

datos.

Fase operacional. Esta fase fue de mucha utilidad porque se obtuvieron datos

valiosos para el proyecto. Se analizó el equipamiento del departamento: sus

equipos, sistemas operativos y capacidades de procesamiento, y se concluyó lo

siguiente:

1. La antigüedad del equipo estaba en un rango de entre 3 y 8 años.

2. La capacidad de procesamiento era de rango bajo.

3. Se utilizaban sistemas operativos de Microsoft, como Windows 98 y

Windows XP.

Como resultado de lo anterior, se realizó una propuesta de equipamiento con

equipo de cómputo nuevo.

Fase técnica. El resultado de esta fase fue la elección de una plataforma Web,

porque era lo que mejor se adaptaba al problema. Una vez decidido lo anterior,

se procedió al análisis de herramientas, lenguajes de programación y sistemas

operativos para servidores.

Fase de evaluación del software. Después de elegir entre las opciones de software

libre probables, se consideraron más adecuados los siguientes:

1. El sistema operativo del servidor, GNU LINUX Debian.

2. El sistema operativo de los clientes se conservó.

3. El sistema gestor de base de datos, Mysql 5.0.

4. Las herramientas de desarrollo.

Herramientas de modelado DBDesigner 4.

Lenguajes de programación PHP, Java Strip,

XML.

Herramientas de depuración Firebug.

Uno de los factores que contribuyó a la elección de software libre fue la limitación

existente en el presupuesto de las instituciones gubernamentales para la

inversión en una tecnología que diera solución inmediata a todas sus necesidades

de infraestructura tecnológica. Por consiguiente, la adquisición de un ‚software

privativo‛ no era lo m{s viable para que el sistema de información operara

eficientemente. En el cuadro 1 se muestra la información de los costos

aproximados que hubiera representado para la institución gubernamental un

sistema de información desarrollado con base en ‚software privativo‛.

Page 218: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

204

Cuadro 1. Costos de inversión en software libre comparados con los del software

privativo

Software

libre

Costo Software

privativo

Costo

GNU/Linux

(Debian)

Apache|

Sin

costo

Windows

Server 2008

R2 Enterprise

$ 3 999 dlls

(25 licencias

de usuario)

MySQL

DBBesigner 4

Sin

costo

Microsoft

SQL Server

2008

$ 24 999 dlls

(una licencia

de

procesador)

PHP

Blueflsh

Sin

costo

Microsoft

Visual Studio

2008

Professional

Edition

$ 799 dlls

(una licencia)

Cuando una institución pública o privada adquiere un ‚software privativo‛ se

obliga a pagar costosas licencias y no obtiene el código fuente; además, se rige

por la prohibición de copiarlo y/o modificarlo y se enfrenta con la necesidad de

invertir en hardware que pueda soportarlo, todo lo cual implica disponer de más

presupuesto, lo que resulta difícil. Como se mostró en el cuadro 1, no es necesario

que las organizaciones inviertan en ‚software privativo‛ para desarrollar un

sistema que satisfaga sus necesidades operativas y estratégicas cuando existen

otras alternativas, como es el caso del software libre.

Conclusiones

Aunque las tecnologías de información y de comunicación no son una solución

para los problemas de procesos; en cualquier institución pública o privada es

indispensable contar con herramientas tecnológicas para lograr objetivos

institucionales eficientes. La información que se genera es el insumo para la toma

de decisiones de la alta dirección, y cuando no se cuenta con información

oportuna y confiable, puede disminuir la calidad de las decisiones que se tomen.

La utilización de software libre contribuye a que una institución pública deje de

ser dependiente de los proveedores propietarios. La migración de un sistema a

otro se realiza con más sencillez; a esto se aúna el hecho de que todos los datos

almacenados se encuentran en formatos abiertos y se cuenta con el código fuente

de todos los sistemas que se utilizan, reduciéndose así los costos de

mantenimiento y soporte técnico ‚obligatorio‛. El dejar de adquirir la tecnología

cada vez más sofisticada que requieren los ‚software privativos‛ tiene un

impacto económico favorable para la institución. Es importante que la

capacitación técnica del personal que dará soporte a la nueva tecnología

desarrollada con software libre sea bien llevada a cabo. El código fuente estará

Page 219: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

205

disponible para el mantenimiento del sistema, así como para brindar atención

oportuna a las necesidades futuras. El valor que se dé a esta etapa, representará

en gran medida el éxito o fracaso de la tecnología implementada.

Referencias

1. Villatoro S., P. y M. R. Yáñes, Las nuevas tecnologías de la información y la

comunicación (TIC) y la institución social. Hacia una gestión basada en el

conocimiento, Publicación de las Naciones Unidas, mayo de 2005.

2. Brys, C. A., Plan estratégico para el gobierno electrónico de la provincia de

misiones, Editorial Universitaria de Misiones, Argentina, 2005.

3. García Valcárcel, I. y Munilla Calvo, E-Business colaborativo. Cómo

implantar software libre, servicios Web y el grid computing para ahorrar costes y

mejorar las comunicaciones en su empresa, Fundación Confemetal, España,

2003.

4. Conferencia de las Naciones Unidas sobre el Comercio y Desarrollo,

Informe Sobre el Comercio Electrónico y Desarrollo 2003, Publicación de las

Naciones Unidas, 2003.

5. Zúñiga, L., El software libre y sus perspectivas para el desarrollo en América

Latina y el Caribe, Bellanet International Secretariat América Latina y el

Caribe, marzo de 2004. En Intenet

(http://www.mentores.net/Portals/2/mentores_net_sabemos_software_libre.p

df), página consultada el 9 de junio de 2009.

6. González Barahona, J., J. Seoane Pascual J y G. Robles, Introducción al

software libre, Universitat Oberta de Catalunya, 2003.

Page 220: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

206

Page 221: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

207

Gestión del Aprendizaje de las Nuevas

Tecnologías en Adultos de la Tercera Edad, en

Tijuana, Baja California, México, por la UABC.

Resultados obtenidos en el primer Curso de

Computación Básico

Hilda Beatriz Ramírez Moreno, Esperanza Manrique Rojas, Maricela Sevilla Caro,

Margarita Ramírez Ramírez

Resumen. Las nuevas generaciones que se integran a la sociedad actual han

hecho que el proceso de enseñanza-aprendizaje tenga la reestructuración

necesaria para satisfacer sus necesidades de tecnología. En cambio, en lo que

respecta a la generación de adultos de la tercera edad (55 años en adelante),

quienes en apariencia concluyeron su proceso de enseñanza-aprendizaje, existe

preocupación porque se sienten aislados y confusos cuando se enfrentan al uso

de las tecnologías de información que ahora se ocupan en la mayoría de las

actividades cotidianas. En México, y en particular, en la ciudad de Tijuana, una

gran parte de la sociedad, ya sea por miedo o por falta de oportunidad, no ha

interactuado con una computadora, lo que ocasiona que se sientan marginados o

excluidos de todas las actividades relacionadas con la tecnología. En la Facultad

de Contaduría y Administración de la Universidad Autónoma de Baja California,

campus Tijuana, se diseñó y se ejecutó un proyecto para introducir a los adultos

de la tercera edad a las áreas de Tecnologías de Información, obteniendo

excelentes resultados.

Palabras clave: tecnologías de información, adultos de la tercera edad,

andragogía.

1 Introducción

El significado de la palabra ‚educación‛ tiene su raíz en los verbos latinos

‚educare‛, que significa cuidar, atender, orientar, conducir, y ‚educere‛, que se

refiere a la acción de sacar, extraer, dar a luz. Etimológicamente, la palabra

‚adulto‛ proviene de la voz latina ‚adultus‛, cuyo significado es crecer. Por lo

tanto, se considera que la educación dirigida a los adultos, es decir, a las personas

de la tercera edad, es un proceso dinámico de formación y modificación de sí

mismo en un contexto histórico dado. Por medio del proceso educativo, se

produce un cambio en el individuo. Este proceso es progresivo en el desarrollo

humano, desde los niños de preescolar hasta los profesionistas que ocuparán

puestos laborales y formarán parte del desarrollo económico. Las generaciones de

Page 222: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

208

jóvenes que se van integrando poco a poco a la sociedad han hecho que las

estrategias de enseñanza-aprendizaje se modifiquen, modernizándose. En

México, en el área de educación, se han llevado a cabo cambios en las estrategias

de enseñanza-aprendizaje en todos los niveles, para satisfacer las necesidades

actuales. Estas necesidades provienen, entre otros aspectos, del requerimiento de

concocimientos sobre las tecnologías de información para su uso cotidiano. Las

nuevas generaciones se capacitan para hacer uso de estas tecnologías, pero, ¿qué

sucede con las generaciones cuyo proceso de enseñanza-aprendizaje concluyó

hace años?

Si reflexionamos sobre la cultura del envejecimiento, debemos volver la mirada a

las consecuencias. La misma sociedad parece cerrar un cerco alrededor del grupo

de adultos de la tercera edad, porque, mientras se les ofrece un trato

‚preferencial‛ en algunos asuntos cotidianos, en otros, este trato es excluyente.

El uso de las tecnologías de información no debe satisfacer solamente las

necesidades de las generaciones jóvenes. Hoy en día, una muchos trámites

gubernamentales, no gubernamentales, personales, etcétera, se hacen por medio

de Internet —por ejemplo, los pagos de servicios se hacen en cajeros automáticos

o por medio Internet. Aquellas generaciones que no recibieron una preparación

para hacer uso de estas tecnologías son hoy los adultos de la tercera edad (55

años o más). Estas personas sienten que no son activos dentro de esta sociedad

tecnológica.

Cuando el estudio de la educación se fue definiendo como área de trabajo, las

primeras investigaciones y teorías se referían a los niños; de esta manera surgió la

pedagogía. M{s recientemente, la andragogía (del griego, ‚hombre‛ y ‚guía‛) es

la disciplina que se ocupa de la enseñanza y el aprendizaje del adulto y su

objetivo es lograr un cambio sustancial en las formas de enseñanza destinadas a

personas en etapas de plenitud o declive de vida, para contribuir a su desarrollo

integral en las áreas psicológica, biológica y social, permitiendo con este proceso

incrementar su capacidad de pensamiento, su autogestión, su calidad de vida y

su creatividad. El participante adulto recibe así una oportunidad de realización

propia a una edad mayor. Para el adulto de la tercera edad es necesario ofrecer

programas de acuerdo con sus necesidades y características.

Lo primero que hay que considerar son los cambios físicos que ha experimentado

el adulto; sus potencialidades fisiológicas están desgastándose constantemente,

para la mayoría de ellos la vista falla y esta disminución de agudeza visual los

obliga a utilizar anteojos permanentes; falla también su agudeza auditiva, por lo

cual se les complica la comprensión de ideas a viva voz; sus reflejos son más

lentos y su fuerza muscular y la energía que producen diariamente disminuyen.

En la actualidad, con el avance científico y tecnológico, la esperanza de vida al

nacer aumenta, y por lo tanto, el envejecimiento poblacional también. El adulto

Page 223: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

209

mayor, por los cambios físicos y psíquicos que sufre, muchas veces no se siente

parte de la sociedad, se siente inútil. La educación es un proceso saludable que le

ofrece alcanzar un nuevo desarrollo de sus potencialidades y que le dará, además

de conocimiento, un resultado de bienestar personal.

2 Argumentación y desarrollo

El derecho a la educación no debe ser limitado a edades ni condiciones sociales;

para el adulto de la tercera edad, el ejercer este derecho significa una

oportunidad de actualización, de participación social y reafirmación de sus

potencialidades. Para las personas que se encuentran en esa etapa de la vida, la

educación es un auxilio en el desarrollo de una cultura del envejecimiento y una

posibilidad de elevación de su calidad de vida, todo lo cual se traduce en

mejoramiento de la salud, bienestar y felicidad.

La integración básica de la educación de adultos comenzó en Europa y Estados

Unidos de América —bastante tarde, en comparación con su equivalente en el

ámbito de la educación de niños y jóvenes. Apenas a finales de los años cincuenta

empezaron los esfuerzos de sistematización, articulación y difusión de teorías

específicas acerca del aprendizaje del humano adulto, de los cuales surgirían las

estrategias y métodos capaces de expresarse en términos de una didáctica para el

aprendizaje adulto. A partir de entonces, el término ‚andragogía‛ cobra

importancia; acuñado por el maestro alemán Alexander Kapp, su aparición data

de 1833. Como su uso no se generalizó, cayó en el olvido hasta que Eugen

Rosemback, a principios del siglo XX, lo retoma para referirse al conjunto de

elementos curriculares propios de la educación de adultos —profesores, métodos

y filosofía. Otro autor destacado en este terreno es Knowles (1970), considerado el

padre de la educación de adultos porque elaboró una teoría de la andragogía más

acabada, en la que ésta se considera el arte y la ciencia de ayudar a los adultos a

aprender.

La población de adultos mayores ha crecido de manera notable a causa de

numerosos factores que se han conjugado para sustentar una mayor esperanza de

vida. Distintos organismos de las Naciones Unidas han considerado la

elaboración de políticas generales que vayan en beneficio directo de las

condiciones de vida de estas personas; se destacan entre ellas los planes y

programas mudiales emprendidos por la UNESCO en las áreas de cultura y

educación, así como los desarrollados por la Organización Mundial de la Salud

(OMS), que han puesto énfasis en la salud preventiva, en beneficio de una mayor

calidad de vida.

En México, de acuerdo con datos del Consejo Nacional de Población (Conapo), en

el siglo XX hubo un elevado incremento poblacional y el nuevo milenio comenzó

con una tasa de crecimiento natural semejante a la observada 70 años atrás,

Page 224: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

210

aunque con un tamaño seis veces mayor, lo que transformó la conformación

poblacional, que ahora se expresa en un proceso gradual de envejecimiento. Se

considera que para el año 2050 habrá 129.6 millones de mexicanos, de los cuales

36.2 millones serán adultos mayores, lo que representaría 27.9% del total de

población. El Instituto Nacional de Estadística y Geografía (INEGI), a su vez,

proyectó que, para los años 2020 y 2030, la esperanza de vida promedio será de

78.5 y 79.1 años, respectivamente. Así, se espera que las mujeres vivan 80.9 años

en 2020 y 82.1 años en 2030; mientras que los hombres alcanzarían los 76.1 y 77.5

años en esas mismas décadas (INEGI, página oficial, abril de 2009).

En nuestro país todavía existe la discriminación laboral de los adultos de la

tercera edad, por distintos motivos, y entre ellos se encuentran el rezago

educativo y el desconocimiento de la tecnología. Estos adultos tienen que ser

atendidos con programas de autosuficiencia económica —despensas y consultas

médicas—, aunque esto no resuelve el problema de discriminación y rezago. Hay

muchas personas de la tercera edad que tienen fuerza física y mental como para

ser trabajadores eficientes, gracias a su experiencia y sabiduría; para que tengan

la oportunidad de participar activamente en el mundo actual, requieren de

capacitación en aspectos técnicos, porque la mayoría de ellos no sabe usar una

computadora o un procesador de palabras ni navegar en Internet.

La Facultad de Contaduría y Administración de la Universidad Autónoma de

Baja California, campus Tijuana, llevó a cabo un proyecto en en el cual se diseñó

un curso de introducción a las tecnologías de información para adultos de la

tercera edad, con el objetivo de proporcionar las bases necesarias para que por

primera vez interactúen con una computadora. Este proyecto se llevo a cabo en

cuatro fases:

Primera fase. Se diseñó el programa del curso, supervisado por expertos en las

áreas de tecnologías de información y educación. El curso contempla una

duración de 24 horas, divididas en seis clases sabatinas de cuatro horas cada una

y en fechas en las que normalmente el clima es bueno, como en mayo y junio. En

el contenido se integraron conceptos generales de computación: introducción a

Windows, procesador de palabras con Word, conceptos generales de Internet,

cómo buscar información, correo electrónico y el mensajero instantáneo.

Segunda fase. Se integró de manera cuidadosa un grupo de egresados de la carrera

de Licenciatura en Informática, algunos con experiencia en docencia. Estos

egresados cumplirían sus horas de servicio social con este proyecto. Con el apoyo

de una licenciada en Educación, se les dio capacitación y herramientas básicas

para el proceso enseñanza-aprendizaje. El grupo se dividió en equipos, algunos

los cuales desarrollaron los manuales y el material audiovisual; otros se

encargaron de impartir el curso. Para esto último se formaron equipos con un

instructor y hasta cinco auxiliares por cada 25 alumnos. Esta fase concluyó con la

Page 225: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

211

coordinación de los equipos de trabajo y la revisión de los manuales y material

audiovisual.

Tercera fase. Se realizó la convocatoria para participar en el curso; se dio a conocer

por medio de folletos, correo electrónico, radio y página de Internet. Se publicó el

objetivo del curso, el lugar y la fecha en que se impartiría, y los requisitos —ser

mayor de 55 años, saber leer y escribir y no tener conocimientos del uso de la

computadora. En esta fase también se contó con el apoyo del grupo de egresados

interesados en el proyecto.

Cuarta fase. Se formaron cuatro grupos de 24 adultos cada uno. El promedio de

edad osciló entre los 60 y 70 años. De acuerdo con las reacciones de cada persona,

se fue dando la pauta para el ritmo del curso. El último sábado del curso los

adultos de la tercera edad concluyeron con un convivio. Posteriormente, se les

hizo entrega de su constancia de asistencia. El objetivo se cumplió

satisfactoriamente.

Fig. 1. Adultos de la tercera edad en el curso de computación.

Fig. 2. Los instructores apoyando a sus alumnos.

Page 226: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

212

Fig. 3. Festejo que se llevó a cabo el último día del curso.

Fig. 4. Primera Generación de Adultos en Plenitud, FCA, UABC, Tijuana.

3 Conclusiones

En estos tiempos de cambios educativos, la edad no debería ser un impedimento

para seguir estudiando. Desde el año 2000 varias universidades otorgan créditos

por experiencia o estudios previos, ofrecen clases nocturnas y programas

educativos en institutos multidisciplinarios, entre otras actividades dirigidas a

personas de la tercera edad; sin embargo, estas mismas opciones todavía no

satisfacen bien las necesidades psicológicas ni aprovechan plenamente las

características cognitivas de este grupo de edad. La mayoría de los adultos tiene

metas claras respecto de lo que pretende obtener cuando ingresa al sistema

educativo. Entre estos objetivos, sobresalen: 1) ascender en sus profesiones, 2)

emprender negocios, 3) utilizar de manera formativa su tiempo de ocio.

El educador del adulto, además de evaluar estos objetivos primordiales, tendrá

que adaptar sus métodos y materiales de enseñanza tomando en cuenta los

cambios fisiológicos, psicológicos y cognitivos de sus alumnos, motivarlos y

orientar sus metas para que ellos revaloren la etapa que viven, tomando lo mejor

para superarse como miembros de la sociedad, con un sentimiento renovado de

utilidad para sus labores.

La oportunidad de llevar a cabo este tipo de trabajos de investigación, que

involucran diferentes generaciones de seres humanos, es muy enriquecedora. Los

adultos de la tercera edad tienen mucho que expresar y se les debe dar la

Page 227: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

213

oportunidad de aprender cosas nuevas, como, por ejemplo, el manejo de la

tecnología, porque en nuestros tiempos esto es indispensable.

Como parte de este estudio, se aplicó una encuesta a las personas que tomaron el

curso, para conocer su opinión; de esta manera, se obtuvo información muy

importante. A continuación, se transcriben algunas de las preguntas, cuáles

fueron las respuestas obtenidas y algunos comentarios generales.

Pregunta 1. ¿Qué opinión tiene del curso de computación del que formó parte?

Fig. 5. La gráfica muestra que 81 personas opinaron ‚excelente‛ y seis ‚bueno‛.

Pregunta 2. ¿Cómo considera lo que ha aprendido?

Fig. 6. La gr{fica muestra que 38 alumnos opinaron ‚excelente‛, 40 ‚bueno‛ y

nueve ‚regular‛.

Pregunta 3. ¿El curso cumplió con sus expectativas?

Fig. 7. La respuesta es alentadora. La gráfica muestra que 80 de las 87 personas

encuestadas piensan que sus expectativas se cumplieron

Page 228: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

214

Pregunta 4. ¿Recomendaría el curso a otras personas?

Fig. 8. De manera contundente, 100% de los adultos de la tercera edad que

tomaron el curso piensan recomendarlo.

Para finalizar, se transcriben a continuación algunos de los comentarios escritos

en la encuesta:

‚El curso, muy bien, y a gusto con los compañeros, estudiantes y profesores.‛

‚Solamente me gustaría continuarlo.‛

‚Necesito un curso m{s lento y personalizado.‛

‚Espero que se repita y se haga m{s publicidad para que muchas personas se

impulsen a producir m{s.‛

‚Los profesores y el personal de apoyo son personas excelentes en su trato y con

mucha paciencia para con nosotros. Estoy encantada de haber participado en este

curso.‛

‚Felicito a los maestros que tuvieron la iniciativa de llevar a cabo este curso, así

como a los profesionistas que lo impartieron por tomar muy en cuenta a las

personas de la tercera edad, ello nos estimula y deja la opción de continuar

prepar{ndose en lo que es la inform{tica.‛

‚B{sico, pero muy bueno; ojal{ continuemos, ya que debemos ser ejemplo para

nuestros hijos.‛

‚Espero que tenga continuidad el curso y se diseñe la segunda parte para ampliar

nuestros conocimientos como adulto en plenitud.‛

‚Sólo deseo agradecer: gracias, mil gracias por cambiar nuestras vidas de manera

tan positiva.‛

Page 229: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

215

‚Nos integramos a la vida moderna y nos sacan del aislamiento d{ndonos

oportunidades que no teníamos‛.

El proyecto de capacitación para adultos de la tercera edad no pretende

prepararlos para enviarlos a buscar empleo, pero si una oportunidad de este tipo

se les presentara, todo el esfuerzo realizado habrá valido aún más la pena.

Referencias

1. García-Mínguez, J., La educación en personas mayores. Ensayo de nuevoscaminos,

Editorial Narcea, México.

2. Biblioteca Digital RAM, en Internet (http://www.reda

dultosmayores.com.ar/educacionA M.htm).

3. Psicología Científica, revista electrónica, en Internet (http://www.psicolo

giacientifica.com/bv/psicologia -279-1-la-educacion-de-adulto-mayor-

antecedentes-y-perspectivas.html).

4. Estadísticas del INEGI, en Internet

(http://www.inegi.gob.mx/inegi/contenidos/espanol/prensa /contenidos/estad

isticas/2008/edad2.doc).

5.-Consulta, en Internet (http://amdi.files.w ordpress.com).

6.-Consulta, en Internet (http://www.yturral de.com/ andragogia.htm).

Page 230: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

216

Page 231: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

217

Modelo Matemático Multiobjetivo para la Selección de

una Cartera de Inversión en la Bolsa Mexicana de

Valores José Crispín Zavala-Díaz, Marco Antonio Cruz-Chavez, Martín H. Cruz-Rosales, Jorge

Ruiz Vanoye

Resumen. Un modelo matemático multiobjetivo para la selección de una cartera

de inversión y su aplicación en la Bolsa Mexicana de Valores (BMV) se presenta y

discute en este artículo. El modelo multiobjetivo se basa en nuestro modelo

matemático de programación lineal publicado recientemente. Se establece el

planteamiento del problema multiobjetivo, sus restricciones, la magnitud de las

mismas y la estrategia de búsqueda, la cual consiste en modificar el parámetro

que acota la magnitud de cada una de las restricciones. Nuestro modelo se

prueba con la selección de una cartera de inversión con 10 acciones de la BMV,

donde nuestros resultados son mejores que los obtenidos con los modelos de

máximo rendimiento y mínimo riesgo resueltos en forma independiente.

Palabras clave: multiobjetivo, programación lineal, cartera de inversión, Bolsa

Mexicana de Valores.

1 Introducción

Una cartera de inversión es una combinación de activos o títulos individuales con

la que se pretende que disminuya el riesgo y aumente la utilidad de las acciones.

Desde el punto de vista teórico, la existencia del equilibrio riesgo-rendimiento es

básica para los modelos de evaluación de activos. Desde el punto de vista

práctico, se debe tener la capacidad de colocar los resultados absolutos en el

contexto de características de riesgo-rendimiento de un programa de inversión.

Los cinco pasos del proceso de la inversión son:1 1) política de la inversión, 2)

análisis de los valores, 3) construcción de la cartera, 4) revisión de la cartera, y

5) evaluación periódica del desempeño de la cartera. En particular, para la

construcción de la cartera se deben identificar las acciones específicas en las

cuales invertir y en qué cantidad hacerlo. La selectividad, el timing y la

diversificación deben ser tratadas por el inversionista. La selectividad, también

conocida como micropronóstico, se refiere al análisis de valores y se enfoca en el

pronóstico de los movimientos de precios de valores individuales. El timing,

también conocido como macropronóstico, implica el pronóstico de los

movimientos del precio de las acciones ordinarias respecto a los valores de

Page 232: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

218

ingreso fijo, como los abonos corporativos y las letras del tesoro. La

diversificación es la construcción de la cartera del inversionista de tal manera que

se minimice el riesgo, el cual está sujeto a ciertas restricciones. En este trabajo

haremos un micropronóstico para obtener una cartera de inversión.

En el problema de la selección de la cartera de inversión se tienen dos funciones

objetivo; la primera es la de maximizar el rendimiento, y la segunda, no menos

importante que la primera, la de minimizar el riesgo.

Dos modelos son fundamentales para la valoración de una cartera de inversión,

el de Markowitz2 y el de Capital Assets Pricing Model (CAPM).3 En el primero, se

considera el planteamiento del problema cuadrático de minimización del riesgo

con dos restricciones; la primera restricción es el rendimiento, cuya magnitud

cambia en función de un parámetro, la segunda es la suma de las variables de

decisión igual a 100%. Con este modelo se obtiene la frontera de carteras

eficientes, considerando el riesgo y el rendimiento en función de la covarianza

entre las acciones. El CAPM, por medio de una aproximación lineal, con las

mismas variables que el modelo de Markowitz, obtiene la cartera de inversión

por medio de una línea tangente que toca la frontera de carteras eficientes.

Con base en estos dos modelos se han desarrollado otros, como el nuestro,4 en el

cual la cartera de inversión se obtiene resolviendo en forma independiente las

dos funciones objetivo, maximizar el rendimiento y minimizar el riesgo, y sin

considerar la covarianza entre las acciones. En este modelo, la cartera

seleccionada será la que tenga la diferencia mínima entre las soluciones de esos

dos problemas, tal y como lo establece el CAPM. Por otro lado, se han

desarrollado modelos y métodos para seleccionar la cartera de inversión como un

problema multiobjetivo,5,6,7 con los cuales se determina la frontera de carteras

eficientes. Esta frontera constituye el frente de Pareto, donde se encuentran las

soluciones no dominadas. Para determinar esas soluciones, se supone que el

espacio de búsqueda es convexo y su recorrido se hace mediante los algoritmos

llamados evolutivos,8 que se basan en diferentes metaheurísticas.5,6,7 En estos

planteamientos multiobjetivo, el riesgo y el rendimiento no siempre se calculan

como se plantea en el modelo de Markowitz,6 y en algunos otros se utilizan

restricciones, como el precio de venta.7

Por lo tanto, en este trabajo se desarrolla un modelo multiobjetivo lineal que

considera tanto el espacio de búsqueda dado por la frontera de carteras eficientes

determinadas por Markowitz, como las suposiciones del CAPM, el cual establece

que un solo punto de la línea tangente toca a un solo punto de la frontera

mencionada. En la segunda parte de este trabajo se presenta una descripción de

los problemas multiobjetivo; en la tercera, las bases de nuestro modelo, y en la

cuarta, la selección de una cartera de inversión durante un periodo a la alza.

Page 233: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

219

2 Fundamentos del problema multiobjetivo

El problema de optimización multiobjetivo es similar al problema de

optimización global, excepto que para el caso multiobjetivo se intenta encontrar

un vector de solución que optimice simultáneamente todas las funciones objetivo.

De antemano se conoce que estas funciones se encuentran en conflicto unas con

otras y el mejorar una de ellas significa empeorar el desempeño de las otras.8

El problema de optimización multiobjetivo se define matemáticamente como:

encontrar el vector que satisfaga las m restricciones de la

desigualdad:

, i = 1, 2, <, m (3)

Las p restricciones de igualdad:

, i = 1, 2, <, p (4)

Y que optimice:

(5)

En otras palabras, se intenta determinar el conjunto de todos aquellos números

que satisfacen las restricciones y optimizan todas las funciones objetivo. Las

restricciones definen la región factible del problema y cualquier vector que

esté en esta región se considera una ‚solución factible‛.

En la optimización multiobjetivo, el término ‚optimizar‛ cambia respecto a la

optimización monoobjetivo (global), porque se trata de encontrar un ajuste entre

las distintas funciones objetivo en lugar de una sola solución, como en la

optimización global. Wilfredo Pareto, en 1896, dio una definición más formal del

óptimo en problemas multiobjetivo,9 la cual se conoce en la actualidad como

‚óptimo de Pareto‛. La definición formal es la siguiente:

Sea I el conjunto I={1, 2,…}; un vector de variables de decisión (F es la

región factible) es un óptimo de Pareto si no existe otro tal que:

y . En otras palabras, ‚el óptimo de

Pareto es aquel vector de variables en el cual no se pueden mejorar las soluciones

del problema en una función objetivo sin empeorar cualquiera de las dem{s‛.8,9

Con esto se obtiene un conjunto de soluciones llamado ‚conjunto de óptimos de

Tnxxxx **2

*1

* ,...,

0xgi

0xhi

Tk xfxfxfxf ..., 21

x

Fx *

Fx

*xfxfIi ii *xfxfIj jj

Page 234: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

220

Pareto‛. Los vectores que corresponden a una solución incluida en el conjunto de

óptimos de Pareto son llamados ‚no dominados‛.

2.1 Conjunto de óptimos de Pareto

Para un problema multiobjetivo , el conjunto de óptimos de Pareto ( ) se

define como:

(6)

2.2 Dominancia de Pareto

El término ‚dominancia de Pareto‛ se define por: un vector domina

a otro (denotado mediante ) si, y sólo si u es parcialmente

menor a v:

(7)

Es decir, para que una solución domine a otra, ésta necesita ser estrictamente

mejor en al menos un objetivo y no peor en ninguno de ellos.

2.3 Frente de Pareto

La representación de las funciones objetivo cuyos vectores son no dominados y

est{n en el conjunto de óptimos de Pareto se llama ‚frente de Pareto‛. Su

definición es la siguiente: para un problema multiobjetivo y un conjunto de

óptimos de Pareto , el frente de Pareto ( ) se define como:

(8)

La mejor forma para encontrar el frente de Pareto es evaluar todos y cada uno de

los puntos en la región factible; al realizar una búsqueda exhaustiva, el problema

se hace no computable. Por lo tanto, se tiene la necesidad de aplicar o desarrollar

heurísticas para producir aproximaciones del frente de Pareto. En la figura 1 se

describe cada uno de los elementos definidos previamente.

xf *P

xfxfFxFxP ««:*

kuuu ,...,1

kvvv ,...,1 vu

iiii vukivuki :,...,1,,...,1

xf

*P *FP

*1

* :,..., PxxfxffFP k

Page 235: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

221

Fig. 1. Ejemplo de un frente de Pareto de un problema de optimización con dos

funciones objetivo.

2.4 Breve descripción de los algoritmos de solución multiobjetivo

Para obtener el vector de soluciones, frente de Pareto, de los problemas

multiobjetivo, se ha desarrollado la computación evolutiva. La computación

evolutiva consta de un conjunto de heurísticas que basan su funcionamiento en el

mecanismo de la selección natural propuesto por Charles Darwin, y luego

extendido en el denominado neodarwinismo.8

En la computación evolutiva, una población está compuesta por individuos. Un

individuo es una solución a un problema, codificada según las necesidades del

problema; por ejemplo, en una cadena de bits. El medio donde se desenvuelve

este individuo se representa por la función objetivo, mientras que las

restricciones del problema nos indican qué tan apto es el individuo para

sobrevivir en ese medio. A los individuos de la población, llamados ‚padres‛, se

les aplican operadores probabilísticos, cruza y mutación para obtener nuevos

individuos, llamados ‚hijos‛, los cuales mantienen algunas propiedades de sus

antecesores. Los antecesores se conservan o se eliminan mediante una selección

determinística o probabilística. Este proceso se realiza con cada uno de los

individuos de la población hasta formar una nueva población con nuevos

individuos. Este proceso se repite durante un cierto número de iteraciones,

llamadas ‚generaciones‛ en computación evolutiva.

Respecto a la programación lineal multiobjetivo, son tres los métodos que se

utilizan para resolver este tipo de problemas: el de ponderaciones, e-restricciones

y el SIMPLEX multiobjetivo.10 Los dos primeros también se utilizan en

problemas no lineales, mientras que el último es sólo para problemas lineales.

Cada uno de ellos tiene su ámbito de aplicación, con base en el cual

seleccionamos el método más adecuado para nuestro problema.

Page 236: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

222

2.4.1 Método de ponderaciones

Para llevar a cabo el método, se tiene que considerar en forma sistemática una

serie de conjuntos de pesos positivos que multipliquen a cada objetivo del

problema. Usualmente se empieza por la optimización individual de cada

objetivo, lo que equivale a considerar los pesos {1, 0, …, 0}, {0, 1, …, 0}, <, ,0, 0,…,

1}. Posteriormente, se introduce una variación sistemática de estos pesos con una

tasa de aumento prefijada. Cada problema de ponderación es un problema de

programación lineal cuya resolución conduce a una solución eficiente.

Se pueden tener ciertos inconvenientes. Entre ellos, distintos conjuntos de pesos

pueden generar el mismo punto; el tamaño de paso de un conjunto de pesos a

otro puede no permitir generar todos los puntos extremos, y por lo tanto, se

obtendría una aproximación al conjunto eficiente.

2.4.2 Método de las e-restricciones

Consiste en optimizar la función objetivo más importante que las otras, donde

éstas estarán limitadas por las cotas inferiores. Las cotas inferiores representan

preferencias subjetivas del decisor, por lo que si no existiera una solución se

tendría que relajar al menos una de las cotas. La solución del problema será

eficiente si es única.

2.4.3 Método SIMPLEX-multiobjetivo

Este método se compone de tres etapas y es una extensión natural del algoritmo

SIMPLEX, ya que utiliza la misma transformación de pivote para moverse de un

punto extremo eficiente a otro adyacente. Las tres etapas son:

Primera. Se determina una solución básica inicial factible. Ésta se lleva a cabo,

como el uniobjetivo, introduciendo variables de holgura y/o artificiales se

obtiene un punto extremo inicial factible.

Segunda. Se determina un punto extremo eficiente cuya existencia está

garantizada. Si la región factible del problema es no vacía y todas las

funciones objetivo están acotadas en ella, entonces existe al menos un punto

extremo eficiente.

Tercera. Finalmente, se determinan todos los puntos eficientes partiendo de la

solución de la etapa anterior y se generan, a partir de ella, los restantes puntos

extremos.

Page 237: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

223

3. Fundamentos de nuestro algoritmo multiobjetivo lineal

Nuestra primera hipótesis es que se supone que el portafolio de inversión con el

mayor rendimiento y el mínimo riesgo está en la línea de las carteras eficientes,

frente de Pareto; esa cartera estará en equilibrio a causa de que es una solución no

dominada, ya que cualquier modificación afectará el rendimiento o el riesgo. La

segunda suposición es que la determinación de ese portafolio es posible con el

CAPM, ya que con una línea recta tangente a la curva de las carteras eficientes se

determina un punto único, y éste es el portafolio de inversión óptimo. En

consecuencia, el problema es calcular solamente un punto del frente de Pareto, el

determinado por el CAPM. A partir de esta observación, nosotros desarrollamos

el planteamiento para el modelo matemático multiobjetivo. En la figura 2 se

describe la interacción gráfica de los dos modelos, el de Markowitz y el de

CAPM. En la figura 2, la línea FF representa el frente de Pareto de portafolios de

inversión óptimos. La línea SS es la línea de seguridad del mercado, donde el

punto Rf representa el rendimiento libre de riesgo. El punto a sobre la línea FF

representa la cartera de inversión óptima con un rendimiento R y un riesgo . En

consecuencia, el punto a es el punto que tiene la menor diferencia entre el riesgo

y el rendimiento.3

Fig. 2. El CAPM.

La gráfica de la figura 3 se elaboró con los resultados de la selección de una

cartera de inversión de 10 acciones de la Bolsa Mexicana de Valores (BMV),

durante el periodo de julio de 2005 a febrero de 2007.11 La gráfica muestra que la

determinación del punto a se hace desde la región de las soluciones factibles.

Page 238: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

224

Fig. 3. Carteras de inversión de la región factible durante el periodo de julio de

2005 a febrero de 2007.

En la figura 3 se muestra que sólo un punto es la solución; este punto es el que se

encuentra más a la izquierda de todos los puntos, y tiene la diferencia mínima

entre riesgo y rendimiento. A causa de que los dos problemas se resuelven en

forma independiente, el de maximizar el rendimiento y el de minimizar el riesgo,

en las figuras 4 y 5 se hacen las gráficas de rendimiento y riesgo en función de la

diferencia mínima entre ellos.

Fig. 4. Rendimiento para 10 acciones, en función de la diferencia mínima, durante

el periodo de julio de 2005 a febrero de 2007.

Las gráficas de las figuras 4 y 5 muestran que las áreas son convexas, como se

esperaba, puesto que cuando la solución de un problema se lleva a cabo por

medio de la programación lineal no pueden existir superficies que no sean

convexas.10

En los conjuntos de los elementos cuyas gráficas se muestran en las figuras 4 y 5

estarán el rendimiento y el riesgo que determinen la menor diferencia de la figura

3, es decir, se determina el punto a, con lo cual queda: .

0

50

100

150

200

250

300

350

400

450

1 101 201 301 401 501 601 701 801 901

Riesgo X10-2

Rie

sg

o-R

en

dim

ien

to X

10

-2

a:,...,2,1 iiRki

Page 239: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

225

Fig. 5. Riesgo en función de la diferencia mínima para 10 acciones, durante el

periodo de julio de 2005 a febrero de 2007.

En consecuencia, se supone que la determinación del punto a se puede hacer por

medio de la búsqueda del rendimiento Ri (véase la figura 4) y del riesgo i (véase

la figura 5). A su vez, esta búsqueda se puede hacer modificando la magnitud de

las restricciones para reducir el espacio de búsqueda y evaluar así la ‚aptitud‛

como la diferencia mínima entre riesgo y rendimiento. Lo anterior coincide con el

método de las e-restricciones.

4 Planteamiento del problema multiobjetivo lineal

En el modelo que estamos considerando se hacen las suposiciones siguientes:4

Primera suposición. La cantidad mínima de dinero requerida es el costo de la

acción más barata, a partir de esta cantidad se llega a la cantidad de dinero de

la acción más cara.

Segunda suposición. El riesgo mínimo de la cartera de inversión es el riesgo de

la acción que tenga el menor de todas las acciones y éste variará hasta el riesgo

más alto de la acción correspondiente.

Tercera suposición. El rendimiento mínimo de la cartera de inversión es el

rendimiento de la acción que tenga el menor rendimiento de todas las

acciones y éste variará hasta el rendimiento más alto de la acción

correspondiente.

Con las suposiciones anteriores se formularon los modelos que se describen a

continuación.4

0

50

100

150

200

250

300

350

400

450

1 101 201 301 401 501 601 701 801 901

Riesgo X10-2

Rie

sg

o-R

en

dim

ien

to X

10

-2

Page 240: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

226

4.1 Modelo de maximizar el rendimiento

Maximizar (9)

Sujeto a:

,

Donde Ri, i y Pvi es el rendimiento, riesgo y precio de venta de la acción i,

respectivamente; xi es el decimal de la acción i que debe comprarse y es una

variable real 0≤ xi≤1, xi= 0 cuando la acción no forma parte de la cartera de

inversión; 1, 2 son variables que se utilizan para recorrer todo el espacio de

soluciones y su valor es 0 ≤ 1,2 ≤ 1.

4.2 Modelo de minimización del riesgo

Minimizar (8)

Sujeto a:

,

Las variables son las mismas que las que se describen en la sección 4.1.

n

i

ii Rxz1

1

minmax1

1

min PvPvPvPvxn

i

ii

minmax2

1

min

n

i

iix

11

n

i

ix 1ix

n

i

iixz1

2

minmax1

1

min PvPvPvPvxn

i

ii

minmax2

1

min RRRRxn

i

ii

11

n

i

ix 1ix

Page 241: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

227

4.3 Modelo multiobjetivo lineal para la selección de una cartera de inversión

Considerando los dos modelos, (7) y (8), el método de las e-restricciones, así

como las suposiciones consideradas en la sección 3, el modelo multiobjetivo

resultante se muestra a continuación:

Minimizar (9)

Sujeto a:

(10)

(11)

(12)

,

Donde las variables son las mismas que las que se describen en la sección 4.1. Las

restricciones (10) y (11) son las funciones objetivo de los dos modelos de

optimización base, cuya magnitud variará desde la cota inferior hasta la cota

superior, tal y como lo establece el método de las e-restricciones. Además,

reflejan la segunda y tercera suposición del planteamiento original. La restricción

(12) refleja la primera suposición del modelo original.

Dado que las restricciones (10), (11) y (12) son válidas para los elementos del

conjunto de la región factible, lo primero que se tiene que hacer es considerar

elementos de esa región. Una vez que ya se tiene un elemento de la región

factible, se hace el recorrido al elemento de la cartera óptima. En la figura 6 se

muestra la estrategia de recorrido para determinar el portafolio óptimo.

Fig. 6. Estrategia de búsqueda del planteamiento multiobjetivo.

n

i

iii Rxz1

3

minmax1min

1

n

i

iix

minmax2min

1

RRRRxn

i

ii

n

i

ii PvPvx1

min

11

n

i

ix 1ix

Page 242: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

228

La estrategia consiste en comenzar desde el origen producido por las cotas

mínimas; posteriormente, se incrementa un , primero en la función f1 y después

en la f2, y así sucesivamente, hasta llegar a una solución factible. Una vez que se

ha llegado a una solución factible, se recorre la región convexa manteniendo f1

constante hasta alcanzar el frente de Pareto. Cuando se haya alcanzado el frente

de Pareto, éste se recorre modificando el incremento , lo que consiste en dividir

en dos ese incremento cada vez. La primera modificación será , la segunda

, y así sucesivamente hasta llegar a , donde m es el número de

modificaciones necesarias para llegar al portafolio óptimo.

5 Aplicación del modelo multiobjetivo para calcular una cartera

de inversión en la Bolsa Mexicana de Valores

De la página de Internet de la Bolsa Mexicana de Valores (BMV) se eligieron las

acciones de las 10 empresas más bursatilizadas y en las cuales se basa el cálculo

del IPC.12 Los datos son del periodo que va de julio de 2005 a febrero de 2007; los

valores de rendimiento y riesgo se obtuvieron como lo establecen los modelos

que hemos considerado aquí y en las ecuaciones (13) y (14).1

(13)

(14)

Donde Ri es el rendimiento promedio de la acción i, ri es el rendimiento de la

acción i en cada periodo j y m es el número de periodos considerados; i es el

riesgo (desviación estándar del rendimiento). En el cuadro 1 están los

rendimientos y riesgos de esas 10 acciones. En el cuadro 2 están los resultados

obtenidos con el modelo multiobjetivo y la estrategia de búsqueda diseñada para

este problema. En este cuadro también están los resultados obtenidos del mismo

problema con los modelos monoobjetivo de maximizar el rendimiento y

minimizar el riesgo.

2

1

4

1

m2

1

m

r

R

m

j

i

i

j

1

1

1

2

m

Rrm

j

ii

i

j

Page 243: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

229

Cuadro 1. Rendimiento, precio de venta y riesgo de 10 empresas, durante el

periodo de julio de 2005 a febrero de 200711,12

Var Empresa Ri

(%) Pvi i (%)

x1 GMEXICOB 5.053 76.00 9.289

x2 WALMEX V 2.230 39.67 5.985

x3 G MODELOC 2.016 59.11 5.381

x4 CEMEX CPO 1.024 35.47 10.331

x5 TELMEX L 1.834 18.85 6.332

x6 TELEVISACPO 2.388 55.56 6.569

x7 URBI 4.147 46.42 7.851

x8 KIMBERA 1.135 43.52 6.191

x9 TELECOMA1 3.140 49.18 9.459

x10 NAFTRAC02 2.962 30.82 4.527

Como lo muestran los resultados del cuadro 2, el rendimiento se acerca al

rendimiento del promedio aritmético de los dos modelos (3.2125%), mientras que

el riesgo se acerca más al riesgo calculado en el planteamiento de minimizar el

riesgo. Es decir, la solución obtenida es más cercana a los óptimos determinados

por el modelo de minimización del riesgo. La obtención de mejores resultados se

debe a que los incrementos de los parámetros fueron más pequeños que los

incrementos utilizados por los modelos uniobjetivo. En los modelos uniobjetivo

se utilizó un incremento constante de 0.1 para recorrer todo el espacio de

búsqueda, mientras que en el modelo multiobjetivo se utilizaron incrementos de

hasta 0.1/25 en las últimas iteraciones. Lo anterior nos permitió obtener una mejor

solución. Para obtener los resultados que se presentan en el cuadro 2, se

requirieron 16 iteraciones y cinco incrementos.

Cuadro 2. Diferencia menor entre el máximo rendimiento y el mínimo riesgo,

Page 244: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

230

durante el priodo de julio de 2005 a febrero de 2007

6 Conclusiones

Primera conclusión. El planteamiento multiobjetivo del problema de la selección de

una cartera de inversión es mejor que solucionar en forma independiente los

problemas de maximizar el rendimiento y minimizar el riesgo.

Segunda conclusión. Las suposiciones del CAPM se pueden aplicar al problema

multiobjetivo, y con ellas es posible limitar el espacio de búsqueda a solamente

un punto, sin la necesidad de determinar todo el frente de Pareto.

Tercera conclusión. Los resultados nos muestran que la búsqueda se puede hacer

por medio de la modificación de los parámetros, y no se requiere necesariamente

un algoritmo evolutivo para la generación de los individuos que forman una

solución.

Referencias 1. Messuti, D. J., V. A. Álvarez y H. Romano Graff, Selection of Investment.

Introduction to the Theory of Portfolio, Macchi, 1992, pp. 135-187, 147-151, 175-

187.

2. Markowitz, H. M., ‚Portfolio Selection‛, Journal of Finance, vol. 7, 1952, pp.

77-91.

3. Fama, E. F. y K. R. French, ‚The Capital Asset Pricing Model: Theory and

Evidence‛, CRSP Working Paper, núm. 550, 2003.

4. Zavala-Díaz, J. C., J. Pérez-Ortega, R. A. Pazos-Rangel, D. V. García-

Villagomez y L. Cruz-Reyes, ‚Mathematical Model for Optimizing the

Composition of an Investment Portfolio for the Mexican Stock Market‛, II

International Joint Conference on Computational Sciences and Optimization

(CSO2009), april de 2009, pp. 463-468.

5. Branke, J., B. Scheckenbach, M. Stein, K. Deb y H. Schmeck, ‚Portfolio

Optimization with an Envelope-Based Multiobjective Evolutionary

Algorithm‛, Journal of European Research, núm. 199, 2009, pp. 684-693.

6. Subbu, R., P. P. Bonissone, N. Eklond, S. Bollapragada y K. Chalerm

Kraivuth, ‚Multiobjective Financial Portfolio Design: A Hybrid Evolutionary

Approach‛, Congress on Evolutionary Computation, vol. 2, IEEE, septiembre de

2005, pp. 1722-1729.

7. Fieldsend, J. E. y S. Singh, ‚Pareto Multiobjective Non-Linear Regression

Modelling to Aid CAPM Analogous Forecating‛, Proceedings of IEEE Conference

on Computational Sciences and Optimization, 2002.

8. Coello, C. A., ‚Introduction to Evolutionary Multiobjective Optimization‛,

CINVESTAV-IPN, 2002.

Page 245: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

231

9. Santana Quintero, L. V., ‚Un algoritmo basado en evolución diferencial para

resolver problemas multiobjetivo‛, tesis de maestría, CINVESTAV-IPN,

noviembre de 2004.

10. Ríos Insúa S., ‚Investigación operativa: modelos determinísticos y

estoc{sticos‛, Editorial Universitaria Ramón Areces, España, 2004.

11. Zavala-Díaz, J. C., J. A. Ruiz-Vanoye, D. V. García-Villagomez y O. Díaz-

Parra, ‚Selection of an Investment Portfolio by Means of a Mathematical

Model of Optimization Applied to Mexican Stockmarket in Period of Debacle‛,

V International Conference on Advanced Information Management and

Service, Seúl, Corea, agosto de 2009.

12. Mexican stock-market, en Internet (http://www.bmv.com.mx).

Page 246: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

232

Page 247: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

233

Sistema Estatal de Información y Documentación

Científica y Tecnológica (Siedcyt): el primer paso

para la propuesta de creación de un Parque

Tecnológico Virtual, en el estado de Baja California

Nora del Carmen Osuna Millán, Margarita Ramírez Ramírez, Esperanza Manrique

Rojas, María del Consuelo Salgado Soto

Resumen. El objetivo de este proyecto es presentar la propuesta de la creación de

un parque tecnológico virtual llamado Sistema Estatal de Información y

Documentación Científica y Tecnológica, de Recursos Humanos, Materiales, de

Organización y Financieros en el Estado de Baja California. Los insumos del

sistema de información son: instituciones de educación superior, centros de

investigación, investigaciones realizadas, infraestructura apropiada,

publicaciones científicas y de divulgación, así como otros recursos disponibles en

el estado de Baja California. Todo esto nos proporcionará una estadística de la

actividad científica y tecnológica, así como el conocimiento de los recursos físicos

y económicos con los que cuenta el estado para impulsar el desarrollo de esta

actividad tan importante para esta región. La información será captada de las

siguientes fuentes: a) Consejo de Ciencia y Tecnología del estado de Baja

California —siendo éste un organismo público descentralizado, tiene las tareas de

instrumentar, operar, promover y optimizar el sistema estatal de Ciencia y

Tecnología involucrando a los sectores público, privado y social—; b)

instituciones de educación superior (IES); c) centros de investigación; d) centros

de investigación y desarrollo en empresas y organizaciones privadas.

Palabras clave: innovación, tecnologías de información, sistemas de información.

Sumario: 1 Introducción 2 Estado del arte 2.1 Impacto científico 2.2 Impacto tecnológico 2.3

Impacto social 3 Metodología general 3.1 Objetivo del proyecto 3.2 Objetivos

específicos 3.3 Metas 3.4 Metodología particular 3.5 Recolección de datos y

análisis de la información 3.6 Usuarios específicos 4. El crecimiento de una región

está dictado por la gestión de la innovación que en ella se produzca 4.1 El

escenario local 5. Conclusiones e investigaciones futuras. Referencias

Page 248: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

234

1 Introducción

Actualmente, la sociedad depende del desarrollo de la ciencia y la tecnología en

un porcentaje elevado, por lo tanto, el gobierno debe reforzar de una manera

eficiente la toma de decisiones y las actividades científicas y tecnológicas del país.

Es necesario que las entidades federativas estén concentradas en sistemas de

información de la investigación científica y tecnológica para identificar tanto las

áreas principales del conocimiento que demandan las empresas como los grandes

problemas regionales, nacionales e internacionales. ‚Una de las intenciones de

Baja California es convertir a la ciencia, la tecnología y la innovación en los

pilares de su crecimiento económico‛. El desarrollo de una herramienta que

proporcione información sobre las instituciones de educación superior, centros

de investigación, recursos humanos e infraestructura con la que cuenta el estado

de Baja California es imprescindible si se quiere conocer lo que cada uno de estos

organismos está realizando —cuáles son sus líneas de investigación, la

productividad que tienen sus investigadores, etcétera—; todo esto con el objetivo

de unir esfuerzos en áreas de importancia para la región, manteniendo una

relación de conocimiento, colaboración y apoyo entre instituciones,

investigadores, equipo, productos o servicios ya desarrollados y que pueden ser

reutilizados en líneas de investigación futuras por otras instituciones,

investigadores, empresas. Por todo lo anterior, el desarrollo de un sistema donde

se administre la información de cada una de estas fuentes es fundamental.

El presente trabajo presenta la metodología que se lleva a cabo para el desarrollo

del Sistema Estatal de Información y Documentación Científica y Tecnológica, de

Recursos Humanos, Materiales, de Organización y Financieros en el Estado de

Baja California. Este sistema se construirá con el apoyo de recursos de la

convocatoria de fondos mixtos 2008-1 del estado de Baja California.

2 Estado del arte

2.1 Impacto científico

La divulgación y promoción de la ciencia y tecnología es de vital importancia

para la generación de productos y servicios tecnológicos, por ello, el Sistema

Estatal de Información y Documentación Científica y Tecnológica (Siedcyt)

proporcionará la base para su promoción.

2.2 Impacto tecnológico

El desarrollo de herramientas que apoyen el crecimiento tecnológico es

imprescindible en esta nueva era; por ello, el desarrollo del sistema Siedcyt

Page 249: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

235

aportará un panorama efectivo, eficiente y competitivo del desarrollo tecnológico

de la región.

2.3 Impacto social

Las comunidades de investigación y desarrollo tecnológico se beneficiarán con la

utilización del sistema Siedcyt porque en él encontrarán información relevante

sobre infraestructura, financiamientos, equipos de trabajo y otros.

3 Metodología general

3.1 Objetivo del proyecto

El objetivo fundamental es la elaboración de un sistema de información

administrado y al cual se accede por medio de un sitio Web, donde se

almacenará, procesará y distribuirá la información relevante de ciencia y

tecnología en el estado de Baja California, con el objetivo de fortalecer la toma de

decisiones en esta área.

3.2 Objetivos específicos

1. Integrar un padrón de instituciones de educación superior (IES) y centros

de investigación (CI) públicos y privados de la entidad.

2. Proporcionar información integrada y clasificada que muestre lo relativo

a políticas, programas y proyectos en el área de ciencia y tecnología en el

estado de Baja California.

3. Crear una base de datos que ofrezca los insumos estratégicos para la

toma de decisiones en lo relativo a la ciencia y la tecnología, la investigación y

la formación de recursos humanos.

4. Creación de un sistema que integre los catálogos de información

referente a ciencia y tecnología.

3.3 Metas

Sistema de información con información integrada de los centros de

investigación públicos y privados e instituciones de educación superior de la

entidad.

Base de datos, con información referente a las áreas en las que se

desarrollan investigación, productos y patentes en el estado de Baja

California.

Página Web, con acceso al sistema de información de los centros de

investigación públicos y privados e instituciones de educación superior.

Page 250: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

236

3.4 Metodología particular

La investigación se apoya en el método analítico e incluye una serie de fases o

etapas para la obtención de la información de las entidades involucradas:

instituciones de investigación, centros de desarrollo de investigación y empresas

con infraestructura destinada a investigación científica y tecnológica del estado

de Baja California. La información se obtendrá directamente de las fuentes de

información primaria y secundaria, según sea el caso.

En una primera etapa se trabajará con la información de las instituciones de

educación superior, las cuales tienen entre sus objetivos y políticas institucionales

la investigación. En la seguda etapa se contempla la inclusión de los centros de

investigación y desarrollo de tecnología. En la tercera etapa se analizarán los

centros de investigación privados, los cuales pueden ser subsidiados por

empresas de manufactura y servicios.

3.5 Recolección de datos y análisis de la información

En el trabajo de campo, se aplicarán instrumentos de recolección de información

como investigación documental, cuestionarios y entrevistas semiestructuradas,

siguiendo los siguientes pasos:

1. Planeación del proyecto.

2. Diseño de instrumentos para recopilación de información.

4. Proceso de validación de instrumentos.

5. Aplicación de los instrumentos (entrevistas, cuestionarios).

6. Recopilación de información relativa a las instituciones y proyectos por

diversos medios.

7. Análisis y clasificación de la información.

8. Diseño del sistema de información.

9. Desarrollo del sistema de información.

10. Desarrollo de página Web en la cual se accederá a la información

clasificada para su consulta.

11. Seguimiento.

Page 251: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

237

Fig. 1. Modelo del proceso racional unificado (RUP, Rational Unified Process),

cuatro fases esenciales.

3.6 Usuarios específicos

El sistema estará diseñado para su uso en diferentes niveles; esto es, para

usuarios de la administración del sistema, de niveles de gestión y administración

pública, y para los usuarios finales del sistema:

• Instituciones de gobierno.

• Instituciones del sector privado.

4 El crecimiento de una región está dictado por la gestión de la

innovación que en ella se produzca

Para que una región crezca, debe aumentar su capacidad innovadora. El proceso

de innovación y la creación de medios están relacionados con las grandes fuentes

de información: centros de investigación y desarrollo, universidades, empresas

provistas de un personal especializado dedicado a la investigación y el

dessarrollo. Las IES son básicas para el sistema de innovación de una región o un

país, junto con las empresas y las entidades públicas. La concentración y el flujo

de información entre centros de investigación y empresas se propicia mediante el

uso de un sistema de información apoyado en las tecnologías de la información,

impulsando la innovación en su entorno; transmitiéndola mediante la formación,

publicación y divulgación, y transfiriéndola a las organizaciones de su entorno, el

cual estará estructurado como se muestra en la figura 2.

Page 252: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

238

Fig. 2. Descripción general del Siedcyt.

4.1 El escenario local

En Baja California existe un ámbito favorable para la creación de un medio

innovador porque su situación es la siguiente:

A. En el sector empresarial se identifican capacidades para producir

innovaciones, integrarse en clústers y responder a demandas de

competitividad internacional con nuevas formas productivas y organizativas.

B. En los sectores educativo, de ciencia y tecnología, las interacciones para

articularse con el sector productivo son escasas y han estado determinadas

por el desarrollo industrial y educativo.

C. El sector público o de gobierno local no tiene observatorios y mecanismos

de información empresarial proclives a la innovación.

D. Recientemente, se ha despertado el interés por el desarrollo de clústers;

destacan aquellos cuyo origen está en el mismo sector productivo, como los

de electrónica, industria automotriz y productos médicos; aquellos

promovidos por iniciativas empresariales y educativas, como los de software,

y los alentados por las políticas del Estado, como los de las industrias

automotriz y aeronáutica.

5. Conclusiones e investigaciones futuras

En este trabajo se describieron las etapas definidas para la realización del

proyecto. Actualmente, ya se ha elaborado el instrumento que apoyará en la

recolección de información, con acceso por medio de la Web. Este sistema

facilitará y agilizará la recolección de datos. Se considera que el análisis de los

Page 253: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

239

resultados obtenidos una vez que se haya aplicado este sistema será una

investigación relevante a desarrollar en el futuro; además, deberá hacerse una

valoración del sistema de información Siedcyt, del recibimiento que éste haya

tenido por parte de la comunidad de ciencia y tecnología del estado de Baja

California y de las implicaciones que este sistema pueda tener en el desarrollo de

esta área.

La innovación y el cambio técnico no son procesos lineales ni tienen las

características de una empresa, sino que son el resultado de un entorno que

promueve espacios para generar, adoptar y difundir innovaciones, conocidos

como ‚espacios emergentes‛, ‚regiones que aprenden‛ o ‚entorno innovador‛.

Un territorio innovador es un sistema productivo vinculado a una o varias

actividades, en el que una buena parte de las empresas y organismos existentes

realizan esfuerzos en el plano de la innovación tecnológica, incorporando mejoras

en los diferentes procesos asociados a su cadena de valor y en los productos que

ofrece. Por lo anterior, consideramos este sistema como una acción concreta para

avanzar en el camino de la innovación tecnológica y apoyar la inversión

tecnológica en la región.

Referencias

1. Baca Urbina, G., Formulación y evaluación de proyectos informáticos, McGraw

Hill, 2006.

2. Bernal Torres, C. A., Metodología de la investigación: para administración,

economía, humanidades y ciencias sociales, Pearson Educación, 2006.

3. Cabrero Mendoza, E., El diseño institucional de la política de ciencia y

tecnología en México, Universidad Nacional Autónoma de México, 2006.

4. Cohen Karen, D., Sistemas de información para los negocios: un enfoque para la

toma de decisiones, McGraw Hill, 2005.

5. Consejo Nacional de Ciencia y Tecnología (Conacyt), Ciencia y tecnología

para la competitividad, Fondo de Cultura Económica, 2006.

6. Consejo Nacional de Ciencia y Tecnología (Conacyt), Informe general del

estado de la ciencia y la tecnología: México 2006, Conacyt, 2006.

7. Gómez Vieites, Á., Sistemas de información: herramientas prácticas para la

gestión empresarial, Alfaomega, 2007.

8. Hernández Sampieri, R., Fundamentos de metodología de la investigación,

McGraw Hill, 2007.

9. Kendall, K. E., Análisis y diseño de sistemas, Pearson educación, 2005.

10. López García, X., Sistemas digitales de información, Pearson Prentice Hall,

2006.

Page 254: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

240

11. O’Brien, J. A., Sistemas de información gerencial, McGraw-Hill, 2006.

12. Oros Cabello, J. C., Navegar en Internet: diseño de páginas Web interactivas

con JavaScript y CSS, Alfaomega, 2006.

13. Pacheco Espejel, A., Metodología crítica de la investigación: lógica,

procedimiento y técnicas, Grupo Patria Cultural, 2006.

14. Patten, M. L., Understanding Research Methods: An Overview of the

Essentials, Pyrczak, 2005.

15. Rodríguez Durán, A., Ciencia, tecnología y ambiente, International

Thomson, 2002.

16. Salomon, Jean-Jacques, Una búsqueda incierta: ciencia, tecnología y

desarrollo, Centro de Investigación y Docencia Económicas-Editorial de la

Universidad de las Naciones Unidas-FCE, 1996.

17. Takayanagui, A. D., La universidad del futuro: relaciones entre la educación

superior, la ciencia y la tecnología, UNAM, 2000.

18. Tamayo y Tamayo, M., El proceso de la investigación científica: incluye

evaluación y administración de proyectos de investigación, Limusa, 2007.

19. Uscanga, C., Las políticas para el desarrollo de la ciencia y tecnología en Japón,

UNAM, 2008.

20. Whitten, J. L., Análisis y diseño de sistemas de información, McGraw Hill,

2003.

21. Investigador y Desarrollo, en Internet (http://www.invdes.com.mx/),

página consultada en enero de 2009.

22. Compendio de Revistas Electrónicas Nacionales, en Internet

(http://bivir.uacj.mx/temas/secciones/temarevistasnacionales.htm), página

consultada en enero de 2009.

23. Ciencia y Desarrollo, Concyt, en Internet

(http://www.conacyt.mx/comunicacion/revista/index.html), página

consultada en enero de 2009.

24. Índice de Revistas Mexicanas de Investigación Científica y Tecnológica, Concyt,

en Internet (http://www.conacyt.mx/Indice/Index_Indice.html), página

consultada en enero de 2009.

25. Red De Revistas Científicas de América Latina y el Caribe, España y Portugal,

en Internet (http://www.redalyc.com/), página consultada en enero de 2009.

26. Innovación Tecnológico-Educativa, en Intenet (http://cv1.cpd.ua.

es/catalogaxxi/c10067ppesii1/s127769/p127740nn1/index.html), página consultada

en enero de 2009.

Page 255: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

241

Advanced Tools for the estimation of basic

Knowledge Level on Education and Training

José Alberto Hernández-Aguilar, Gennadiy Burlak, René Santaolaya S., Alberto Ochoa,

Messouma Atakishiyeva

Resumen. Nosotros describimos el uso de nuestro sistema de evaluación en línea

(Cliente-Servidor) equipado con capacidades de reconocimiento biométrico,

aplicado para evaluar el conocimiento básico en una preparatoria. En este reporte

discutimos la posibilidad de la identificación real de estudiantes remotos para

resolver el importante problema de: ¿quién está ahí?. En nuestro experimento,

seleccionamos aleatoriamente una muestra de estudiantes (n=54) y llevamos a

cabo dos evaluaciones: una evaluación normal (en lápiz y papel), y una

evaluación por computadora. En este último caso, nuestro sistema de evaluación

en línea con herramientas biométricas puede autentificar a un estudiante por

medio de la huella digital. Si un estudiante es autentificado, el sistema permite la

evaluación en línea, mientras tanto el estudiante está siendo monitoreado por

cámaras Web. Durante la evaluación en línea los estudiantes fueron afectados

por el ambiente en línea, ellos obtuvieron bajas calificaciones en línea con

respecto a los exámenes tradicionales. El reconocimiento de huella digital fue

muy bien aceptado. Sin embargo, a 13% de los estudiantes evaluados les

disgustó ser monitoreados con cámaras Web, y el 20% de ellos encontraron

alguna forma de hacer trampa. Esta tecnología nos permite obtener estadísticas

comparables de ambas evaluaciones, y discutir recomendaciones generales para

la estrategia, tecnología y equipamiento de las evaluaciones en línea.

Palabras Clave. Reconocimiento de huella digital, Biometría en education,

Evaluación en línea, Multi biometría.

Abstract. We describe the use of our online assessment system (Server-Client)

equipped by biometric recognition capabilities, applied to evaluate the basic

knowledge in a High School. In this Report we discuss the possibilities of real

identification of remote students to solve important problem: ‚Who's there?‛ In

our experiment we randomly selected a sample of students (n=54) and performed

two evaluations: a normal evaluation (paper and pencil), and a computer

assessment. In the latter case our online assessment system with biometric tools

could authenticate a student by means of index fingerprint. If a student is

authenticated, the system allows online assessment, meanwhile such a student is

being monitoring by web cams. During online assessment students were affected

Page 256: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

242

by the online environment, they obtained lower grades online than on traditional

tests. Fingerprint recognition was very well accepted. However, 13% of students

tested dislike web cam monitoring, and 20% of them noticed a way to commit

cheat. This technology allows us to obtain the comparable statistics of both

evaluations and discuss general recommendations for strategy, technology and

equipping of online computer assessment.

Sumario 1. Introduction 1.1 The problem at hands 2. Methodology 3. The Online Testing

System with Biometric Recognition 3.1 Technical requirements 3.1.1. The Server

Side 3.1.2. The Client Side 3.2 Performance Schema 3.3 Implementation 3.3.1.

Hardware 3.3.2. Software 3.3.3. Accumulation and analysis of information 4.

Results and Discussion 5. Future work 6. Conclusions. References.

1 Introduction

Nowadays the problems of information security are of great importance, and it is

not surprising that problems of ‚educational security‛ become be common also

[11]. The Faculty who has not taught online often asks about cheating.

Specifically, they ask how you know the person who is taking the class is the one

who signed up. Unless photo IDs are checked and all course work occurs inside

of a monitored classroom, faculty really does not know for sure whether the

student is who they say they are in the classroom or online [10]. On online

assessments in which we are not sure who is taking the test; students will be

under pressure, some students perform unfairly poorly under pressure and this

is a good incentive to cheat [11]. We have a wide spectrum of documented

techniques to commit cheat on online assessments, for instance: modify a grade

in the database (DB), to steal answers for questions, to copy from another student

or cheat sheets, impostor or substitute remote students, to search for answers on

the Internet or in blogs, on the messenger or cellular phone, in single words to

‚commit cheat‛ to obtain a ‚better grade‛ in an online assessment *6+. Biometrics

is becoming a powerful tool to improve security on transactions and reduce

frauds [7].

Most of e-learning tools providing online assessment uses only basic and

standard security measures and normally do not provide advanced security

mechanisms, for instance the Blackboard system [2] that use an username and

password to verify the student identity, and profiles in database (DB) to avoid

unauthorized access.

An advanced security measure can be implemented by means of modern

biometric technologies. Much of the hot discussion about biometrics has come

Page 257: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

243

about the level of research and interest was drawn to large-scale implementations

of the technology by Governments [4]. They may provide added robustness in

access and control to high security facilities within higher education. Since the

unit price for biometric devices continues to fall it is possible to employ them to

replace the normal systems used for workstation and network access [13].

1.1 The problem at hands

The main problem on online assessments is how to know ‚who’s there?‛ . In this

paper, we propose the use of biometrics, particularly the use of fingerprint

recognition on real time to authenticate students into the assessment system, and

web cam monitoring during online assessments to deal with the well-known

problem of: who is taking the exam? The contribution of this paper is the use of

biometrics on online assessments as a new approach for remote identification on

real time, we realized several proposals considers this problem, however none

documented implementations of such technologies has been tested with flesh and

bone students. Some of these proposals reflect separated point of views of IT,

educational professionals with different perspectives. However in general such a

problem can be solved by efforts of multidisciplinary team works jointed with

mathematical professors, psychologists, statistics professionals and IT

consultants.

2 Methodology

Sample. For our experiment, we selected a random sample of students (n=54)

from the José María Morelos y Pavón High School, located in Temixco, Morelos,

México. A school located in urban area located near capital city of Cuernavaca,

Morelos. Total population of school is 642 students. The students profile was: 15

to 17 years old, socio-economic level C-, D (low middle class-, upper low class)

89% owns a computer, 65% of their parents complete elementary school studies

only, and just 56% of those are married.

Tests design. Professors of this school designed the tests (from August 5th and

6th 2007); one of such a test was implemented for the discussed online

assessment with the use of our authoring tools. The tests consisted of 30

questions with similar complexity level; we evaluated the mathematics basic

knowledge, specifically: arithmetic, algebra, geometry, statistics, probability and

trigonometry.

Type of task. Typical task is to select one of six answers to proposed question.

i.e. which value of X makes true the next equation 7X-9 = 3X+1?

Page 258: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

244

a) 12 b) 8 c) 2.5 d) 5 e) 3.2 f) -5

We carried out two evaluations, a normal evaluation (paper and pencil), and a

computer assessment with our online system equipped with biometric

recognition.

Setting up. Computers were prepared with our online client software installed;

biometric devices and network connectivity was attached.

The traditional test. The paper-and-pencil test was conducted on August 14th.

2007.

Enrollment. Students were enrolled into the system by taking their left-hand

index fingerprint on August 15th 2007. We verified that the students were

identified clearly by the recognition system after their enrollment.

Online assessment with biometric recognition test. Was conducted on the

Computers Network Laboratory located at the High School facilities from August

16th to August 17th 2007, each computer used in the experiment had attached a

Microsoft Fingerprint Reader, a web cam, a broad band connection to our server

as well as our proprietary client system. Students were instructed in how to use

the system, we explained them that a web cam was monitoring their activities,

later students authenticated by means of their fingerprint into our Server. After

that the computerized assessment started. The use of calculator and cellular

phones was avoided.

Statistical Analysis. After termination of assessment, obtained data were

processed using standard statistical tools with the use of Ccount gnu free

software.

3 The Online Testing System with Biometric Recognition

Virtual proctoring involves using biometric technology to monitor students at

remote locations. For virtual proctoring, is recommended using a layered

approach depending on critical maturity of the test. With high stakes tests, video

monitoring and a biometric measure such as iris scanning may be used. For

medium stakes tests, a single biometrics measure may be acceptable [3]. Despite

most of online assessments are located in the middle of both definitions; we

consider the fact of high levels of cheating in remote assessments. In one hand,

fingerprint recognition is a single biometric measure, the cheapest, fastest, most

convenient and most reliable way to identify someone. And the tendency, due to

scale, easiness and the existing foundation, is that the use of fingerprint will only

Page 259: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

245

increase [8]. Cars, cell phones, PDAs, personal computers and dozens of products

and devices are using fingerprint recognition more and more [5].

One current trend is to incorporate fingerprint scanners into personal computers,

laptops, and mice. In addition, computer networks and large databases can be

secured using fingerprint technology. This is a hot topic of discussion since the

phenomenon of the Internet and the development of Intranets has spawned new

digital technologies such as E-commerce and on-line services [7]. Besides, users

are more willing to use fingerprint recognition than iris recognition [1], they

believe is more secure for health. Unfortunately, fingerprint recognition is used

just to authenticate into systems, but then what? The student is free to use any

media to commit cheat, to avoid that situation we considered the possibility to

use web cams. Web cams are inexpensive and most of students are used to deal

with them, they form part of their common tools to work and chat. Is for sure that

some students will reject the possibility to be monitored, percentages vary from

country to country, but is our intention to measure this figure as a part of our

research. Based on above exposed, we propose the use the mix of video

monitoring, by means of web cams, and fingerprint recognition to provide a

secure online assessment environment.

3.1 Technical requirements

3.1.1. The Server Side. Keep information of biometrics measures (fingerprints)

and associated student information in database; Scanning of fingerprints

(enrollment of students); Provide a recognition tool to determine validity of

fingerprint and grant authorization to online assessment; Monitor remote

students by means of web cams located in remote locations. Support the online

assessments process; Provide security mechanisms to ensure confidentiality and

validity of data: Encryption of data transmitted and received, and generation of

log files.

3.1.2 The Client Side. Scanning of fingerprints; Enrollment of students (optional);

Avoid the unauthorized access to online assessment; Show the diagnosis of

security. Provide capacity of students' monitoring using web cams during

assessment process; Provide mechanisms for client setup, students’

authentication (using fingerprint), and evaluation preferences; Support the

evaluation process and show final results of evaluation.

3.2 Performance Schema

We separated the application in two main modules: the first one is on charge of

the online assessment conduction, and the second one on charge of the

Page 260: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

246

fingerprint recognition and web cam monitoring on real time. Server must be in

listening mode waiting for Clients that requires a service. In order to use

fingerprint recognition, the first step is to enroll students –top, right side in

Figure 1-, the students fingerprint is saved and indexed in the Features Database,

we highly recommend to separate this from the Assessment System Database,

using even separated servers, to improve system overall performance. In the

features database is assigned the Student Personnel ID that is used to link the

students’ personnel information with fingerprint image.

Fig. 1. Fingerprint recognition on real time.

If the Sever is on listening mode and the student has been enrolled, the

assessment process can start. The student enters to the online assessment

application, and when system requires the user and password, his or her uses the

Mouse Id –superior right side of Figure 1- to scan his/her fingerprint.

The fingerprint is verified in the Features Database, and if it is recognized as a

valid, then the Server authorizes access to the online assessment application, else

an error message is sent to the Client to try again. In other hand, if the student’s

fingerprint is valid, the user is authenticated into system, the evaluation process

starts and web cam transmission is initialized at Client Side to conduct real time

monitoring by means of multitasking. If someone else tries to get the control of

the computer during the online assessment, the evaluation process is finished

prematurely, and results are sent to server side to be processed as they are. To

the contrary, the evaluation process is finished successfully, the assessment is

processed at Server Side, and the final results of evaluation and security status

are shown at Client Side.

Page 261: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

247

To measure the security level provided by the fingerprint recognition system at

the stage of authorization we used two ratios:

- False Acceptance Rate (FAR). is defined as the ratio of impostors that were

falsely accepted (IFA) over the total number of impostors tested (TNIT) described

as a percentage. This indicates the likelihood that an impostor may be falsely

accepted and must be minimized in high-security applications.

FAR = IFA / TNIT (1)

- False Reject Rate (FRR). is defined as the ratio of clients that are falsely rejected

(CFR) to the total number of clients tested (TNCT) described as a percentage. This

indicates the probability that a valid user may be rejected by the system.

FFRR = CFR / TNCT (2)

On fingerprint recognition the speed and storage requirements acquired

relevancy, specifically the time required to enroll, verify or identify a person is of

critical importance to the acceptance and applicability of the system [13]. Below

we listed the specifications of the selected hardware and software.

3.3 Implementation.

We separated the application in two main modules: the first one is on charge of

the online assessment conduction

3.3.1. Hardware.

- Client System Requirements (minimal). Pentium class (i386) processor (200

MHz or above) with 128Mb or higher, 100Mb disk space.

- Fingerprint mouse. 250 DPI (Digits per Inch) or higher, 500 DPI is

recommended.

- Broadband Internet. Minimum 128 Kbps, recommended 256 Kbps.

3.3.2. Software.

- Biometrics SDK. Griaule GrFinger SDK 4.2 [5] allows you to integrate

biometrics in a wide variety of applications. Provides Support for dozens of

programming languages –including Java- and integration with several Database

Management Systems. Besides, provides multiple fingerprint reader support, and

even after application development or deployment, makes you able to change the

fingerprint reader you’re using, without modifying your code.

Page 262: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

248

- Fingerprint template size. 900 bytes average.

- Programming language. Java. due the online assessment software tool was

developed using this technology.

- JMF Java Media Framework. To allow transmission of video and/or

photographs over the Internet.

- Web Server. Apache 2.0. Database Management System. MySQL.

- Operating System. Windows 98, and Windows NT. Windows 2000, Windows

XP and 2003.

(a) (b)

Fig. 2. The Server Application (a) supporting fingerprint recognition in Client-

side (b) to authenticate students in online assessments.

In Fig. 2, the left section (a) shows the Server Side and the users connected,

specifying remote IP address, date and connection time. The right section (b) the

client-side, here the user enters to the client application, setup the client and

establish connection with server on a specific port and host, once the server and

the client have established connection, the student authenticates into server by

means of fingerprint using the fingerprint reader, the student can see graphically

displayed her/his fingerprint, if the fingerprint is found at server side, the

interface automatically fills the user and password fields and allows the student

to continue with subject selection to be assessed, and later with the assessment

process.

Page 263: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

249

Fig.3. Web cam monitoring while online assessment is in progress.

In Fig. 3, the online assessment interface is shown, the questions and respective

answers are randomly sorted, questions have a limited time to be answered, if a

question can not be answered on assigned time, test will continue with the next

question automatically. Student must select an answer by giving double click or

by selecting one of the available answers and then giving a click on the enter

button. As soon as the assessment starts, web cam monitoring sends information

to server side to know who is in control of the computer. The biometric

information is verified at server side and if an identity error occurs the test is

interrupted and the assessment is processed as it is. Else assessment continues

normally operation. At the end of the assessment, the grade, the protocol of the

assessment and the security report is shown at client side.

3.3.3. Accumulation and analysis of information. The biometric information and

the responses of students were stored in a MySQL Database Version 5.0. We

selected this software, because is a powerful free software that can be

downloaded from the internet for academic purposes, and is strong enough to

support hundreds of online transactions –in our case online assessments-

simultaneously, besides provides security mechanisms that makes applications

work secure. We recommend obtaining a commercial license of this software, if is

required managing thousands of simultaneous transactions, or for commercial

applications.

Quality of analysis depends on how well structured was the database, for this

purpose, we identify the whole relevant entities: Students, Students' Perception,

Results of evaluation, history log, Careers, Subjects, Topics, Students perception,

Subject environment and Professor, and we implemented these on a MySQL

database Schema.

Page 264: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

250

4 Results and Discussion

Considering the number of students enrolled (n=54) on this test with obtain a

FAR of 99.99% and a FRR of 97.09%, only one student could not be recognized

despite several trials, although we try to enroll her using different fingers of her

left hand we could not, she has tiny long fingers and the enrollment results were

always the same. Her fingerprint template is unintelligible to the fingerprint

recognition system, her fingerprints seems like stains. Something related has been

documented in [9], Asiatic persons has similar problems to be identified by

fingerprint readers. We faced this problem by providing to this student an user

and a strong (mix of capital letters, lower letters and numbers) password.

Our results showed that students were affected by the online environment, they

obtained lower grades online versus grades on traditional tests. The average

grade in paper and pencil test was 3.8 meanwhile the online grade was 3.5, this

difference is explained due an small percentage of students must improve their

computer skills, we noticed that video games and chat could improve skills of

students as well as general performance in online assessments. Students

perceived our system as faster, easy to use; fingerprint recognition played an

important role in this perception. However, they disliked time limited questions,

and 13% disliked web cam monitoring. When we asked them directly if they

disliked being monitoring, 33% answered this fact bothers them. They said

feeling under pressure, getting nervous and disliked being monitored or

watched.

A 20% of the students tested, noticed a way to commit cheat using a system like

ours, the identified ways were: turn the camera to some else, use a photo, use a

cheating list, and just one person thinks to dirt the fingerprint reader. We made

in-depth analysis and discovered that students with poor performance (low

grades) are willing to commit cheat. 78 % of the students would like the system

being implemented at their high school. We consider that the online assessment

system with biometric recognition was very well accepted, but must be adapted

to be more user friendly, to improve perception of students, process to enroll

users must be improved too. We believe that our results are quite interesting and

hot, despite in [14] is discussed the application of fingerprint readers and the use

of cameras in online assessments, there are not figures to analyze; as we

explained, we tested our system with flesh and bone students which is an

improvement regarding this previous work. State of the art systems like

Blackboard [2] provide some basic biometric recognition facilities (i.e. photo ids),

but they require that a human proctor verify the identity of students, the purpose

of our system is to perform this task automatically online.

Page 265: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

251

5 Future work

We intend to improve the human-computer interface and assessment

methodology with the use of students’ comments and feedback. We want to test

the tool within different groups at different high schools and Universities.

Regarding of the biometric recognition, we intend to improve strongly the

quality of recognition.

6 Conclusions

Biometric recognition is a promising technology to solve the problem of who is

there? As it is shown in this report, this technology already is well accepted in

online assessments, but it still should be subject to improvement.

References

[1] AIDC. Automated Identification and Data Capture Web Site, http://et.wcu.edu/aidc/

[2] Blackboard. Security, http://www.blackboard.com/us/index.aspx

[3] BSU. Ball State University. Technology assessment reports on: The use of

Biometrics in education. http://web.bsu.edu/dpmuller/biometrics/

*4+ Clarke, N. and Furnell, S. ‚Biometrics: The promise versus the practice‛.

Computer Fraud & Security 2005, Issue 9, September 12-16.

[5] Griaule. Biometrics FAQ, http://www.griaule.com/page/en-us/faq_biometrics

[6] Hernández-Aguilar J.A., Ochoa, A., Muñoz, J., and Burlak, G. ‚Detecting

cheats in online student assessments using Data Mining‛. Dmin06, Las Vegas

Nevada, USA 2006. June 26-29, pp. 204-210.

[7] ITEDU. Biometrics, http://et.wcu.edu/aidc/

*8+ Maltoni, D., Maio, D., Jain, A., and Prabhakar, S. ‚Handbook of Fingerprint

Recognition‛, Springer 2003.

[9] Michigan Org, http://www.reachoutmichigan.org/funexperiments/agesubject/lessons/prints_ext.html

*10+ MSU Michigan State University, ‚Quizzes and Exams: Cheating on exams

and Quizzes‛.

http://teachvu.vu.msu.edu/public/pedagogy/assessment/index.php?page_num=3.

*11+ Neil, R. ‚Cheating in Online Student Assessment: Beyond Plagiarism‛.

Online Journal of Distance Learning Administration, Volume VII, Number II,

Summer 2004 State University of West Georgia, Distance Education Center.

Page 266: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

252

*12+ Savvas, A. ‚Online assessments and biometrics used in new immigration

system‛. Computer Weekly Section IT Management Politics and Law.

3/14/2006, pp .10-10, 1/7p.

*13+ Wasniowski, R. ‚Using Data Fusion for biometric verification‛.

Transactions on Engineering, Computing and Technology APRIL 2005. pp. 72-

74.

*14+ Wisher, R. Curnow, C. and Belanich J. ‚Verifying the Learner in distance

learning‛. 18 Annual Conference on Distance Teaching and Learning 2005.

Page 267: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

253

Relajación del Problema de Calendarización de

Trabajos en un Taller de Manufactura Utilizando

un Grafo Bipartita

Marco Antonio Cruz-Chávez, Alina Martínez-Oropeza, José Crispín Zavala-Díaz,

Martín G. Martínez-Rangel

Resumen. En este artículo se aborda el problema de calendarización de

máquinas en un taller de manufactura. Se establecen las restricciones básicas y el

modelado por medio de un grafo disyuntivo. Con el modelo se mapea el

problema de máquinas en paralelo no relacionadas a través de un grafo bipartita.

Se hace un análisis de las restricciones de ambos problemas para llevar a cabo

una relajación del problema de manufactura. Al llevar a cabo la relajación del

problema de manufactura, se tiene que cualquier operación puede ser asignada a

cualquier máquina, además de que la restricción de precedencia entre par de

operaciones deja de aplicarse. La aplicación del modelo de grafo bipartita

aproximado se muestra como un nuevo modelo alternativo para representar el

problema de máquinas en un taller de manufactura, pudiendo ser éste una

opción para trabajar con este tipo de problemas en lugar de utilizar el modelo de

grafo disyuntivo.

Palabras clave: problema de máquinas paralelas no relacionadas, grafo

disyuntivo, grafo bipartita, problema de calendarización de trabajos en talleres

de manufactura, relajación.

Sumario:

1. Introducción 2. Definición del JSSP 3. Restricciones 4. Modelo de grafo

disyuntivo 5. Modelo de grafo bipartita 6. Relajación del JSSP 7. Conclusiones 8.

Trabajos futuros Referencias.

1 Introducción

El problema de calendarización de trabajos en un taller de manufactura mejor

conocido por su acrónimo en inglés, JSSP (Job Shop Scheduling Problem), está

considerado como uno de los de mayor relevancia en el área de manufactura y

optimización, ya que la administración, así como el manejo eficiente de los

Page 268: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

254

recursos, es de vital importancia en las empresas. Debido a su complejidad, el

JSSP ha sido uno de los problemas más estudiados durante las últimas cuatro

décadas; por este motivo, ha obtenido más avances en el área de la

calendarización y sirve como referencia para comparar las técnicas empleadas en

diversos problemas clasificados como difíciles, como el del agente viajero, entre

otros. Además de estar clasificado en la Teoría de la Complejidad como un NP-

Duro,1 también se le conoce como uno de los más difíciles de resolver en ésta

clasificación. La clase NP-Completo puede definirse alternativamente como la

intersección entre un NP y un NP-Duro. Una característica del tipo NP-Duro es

que no se conoce un algoritmo determinístico que resuelva en tiempo

polinominal problemas de esa clasificación,23 por lo que muchos investigadores

han tradtado de resolverlos empleando métodos de optimización diversos, como

los siguientes:

Branch and Bound,11 algoritmos genéticos,12 recocido simulado,13 colonia de

hormigas,3 entre otros. Algunos de estos algoritmos han sido diseñados

específicamente para resolver ciertas instancias del problema.

Varios enfoques para resolver el JSSP han sido propuestos usando diversos

modelos. Los modelos más utilizados son los grafos disyuntivos,14 la satisfacción

de restricciones15 y la programación lineal entera.14 Instancias pequeñas,

medianas y grandes del JSSP modeladas con el grafo disyuntivo se resuelven o

encuentran soluciones aproximadas al óptimo global por medio de

metaheurísticas, las cuales aplican métodos de búsqueda local. Instancias

pequeñas del JSSP modeladas con programación lineal entera se resuelven con

algoritmos exactos. Los métodos de búsqueda de tipo heurísticos llegan a ser

muy rápidos para encontrar una solución factible para una instancia del JSSP,

pero desafortunadamente no existe prueba de optimalidad de que la solución

encontrada sea la óptima. Sin embargo, los métodos de búsqueda proporcionan

un punto de arranque. Los métodos basados en satisfactibilidad,9,15,17 y reglas de

prioridad20 son algunos ejemplos de métodos de búsqueda. El método de cuello

de botella18,19 es un tipo especial de búsqueda que tiene mejor rendimiento que

muchos otros, pero solamente en instancias pequeñas. En general, las soluciones

de programación lineal entera, mejor conocida por su acrónimo en inglés, ILP

(Integer Linear Programming), y los paquetes de diagramas binarios de decisión,

mejor conocidos por su acrónimo en inglés, BDD (Binary Decisión Diagram),10 son

utilizados para obtener soluciones exactas para muchos problemas de

automatización. El de la calendarización, en cambio, ha sido encaminado por los

investigadores enfocándose en cualquiera de estos métodos. Las formulaciones

basadas en la ILP son más populares para la calendarización, aunque los

calendarizadores basados en los BDD ofrecen también soluciones atractivas. Una

deficiencia de las soluciones basadas en los BDD es que el tamaño del diagrama

binario de decisión llega a ser muy grande para instancias grandes del

Page 269: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

255

problema.21 La mayoría de estos métodos requiere una solución inicial factible al

comienzo del proceso.9

El alcance de la investigación es desarrollar un algoritmo con el enfoque de

colonia de hormigas (ACO), el cual se encuentre paralelizado por medio del paso

de mensajes, utilizando lenguaje C y la librería de paso de mensajes MPI, para, de

esta forma, ser implantado en una estructura de clúster. El algoritmo propuesto

resolverá el problema relajado de calendarización en un taller de manufactura. Se

comprobará entonces su eficiencia y eficacia por medio de problemas de prueba

generados de manera aleatoria. Estos benchmarks permitirán probar el

rendimiento del algoritmo, el cual será comparado con algoritmos de búsqueda

local que ya han sido probados, como lo es el de recocido simulado, y un

algoritmo exacto, como el Simplex.

Las pruebas a realizar se harán de acuerdo con lo que propone el área de

estadística, para su evaluación y análisis completos. Es decir, serán utilizados los

mismos problemas (benchmarks) para probar los tres algoritmos a los que nos

hemos estado refiriendo y, de esta forma, calcular su eficiencia, eficacia y error

relativo, comparando estos resultados directamente con los de los otros dos

algoritmos.

La alternativa para representar el JSSP utilizando un grafo bipartita, el cual

puede ser resuelto como un problema de tipo P al relajar el problema, da una

posibilidad muy atractiva para probar algoritmos exactos y de tipo

metaheurístico aplicados en la literatura a la solución del grafo bipartita22 y para

evaluar su eficiencia y eficacia en el JSSP. El reto de encontrar rápidamente una

solución factible es mapear una instancia del JSSP como un problema de

máquinas en paralelo no relacionadas, donde se relajan las restricciones del

problema para representarlo por medio de un grafo bipartita.

En las siguientes secciones del artículo se aborda la definición del JSSP,

explicando la definición general del problema, su objetivo y sus restricciones

básicas; el modelo del JSSP, explicándolo por medio de un grafo disyuntivo y

dando una solución para una instancia de 3 x 3; la definición del grafo bipartita y

sus características, además, en esta sección se lleva a cabo una representación de

la instancia utilizada para el JSSP por medio de un grafo tipo bipartita; luego se

explica como se llevó a cabo la relajación del problema para representarlo por

medio de un grafo bipartita y, por último, se mencionan las conclusiones del

artículo así como los trabajos futuros.

2 Definición del JSSP

El problema se define como conjuntos de máquinas y trabajos, donde cada

trabajo cuenta con cierto número de operaciones que deben ser procesadas

Page 270: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

256

durante determinado tiempo en determinada máquina sin interrupciones. Cada

máquina puede procesar únicamente una operación en un instante de tiempo. De

manera que se puede definir el problema clásico del JSSP como un conjunto finito

J de n trabajos {Jj} 1 ≤ j ≤ n, los cuales deben ser procesados en un conjunto finito M

de m máquinas {Mk} 1 ≤ k ≤ m. Cada trabajo es visto como una secuencia de

máquinas en las cuales puede ser procesado. El procesamiento de un trabajo Jj en

una máquina Mk se conoce como Ojk. La operación Ojk requiere el uso exclusivo

de una máquina Mk, donde el tiempo de procesamiento de cada operación no

permite interrupciones y es conocido como tjk.3 A continuación, se presenta una

solución al problema para una instancia de 3 x 3 (véase el cuadro 1). El conjunto

de soluciones para este problema está dado por (n!)m, es decir para un problema

de 3 x 3 tendríamos 216 posibles soluciones, de las cuales, no todas son soluciones

factibles, debido a que algunas de ellas violan restricciones de precendencia.

Cuadro 1. Instancia de un problema de JSSP con tres máquinas y tres trabajos

con tres operaciones cada uno.

Trabajos

Operaciones

Máquinas (tiempo

de procesamiento)

1 2 3

1 1(1) 2(2) 3(1)

2 1(3) 3(1) 2(3)

3 2(2) 1(2) 3(3)

La solución propuesta a este problema con los datos de entrada del cuadro 1

puede ser representada por medio de una gráfica de Gantt (ver figura 1), donde

se representa tanto la calendarización de las operaciones como las unidades de

tiempo que se consumen para procesarlas (makespan). Una característica

importante del JSSP es que la máquina que comienza, no necesariamente empieza

con el primer trabajo, sino que cualquier máquina puede empezar o terminar, ya

que el orden de procesamiento de los trabajos en las máquinas es una restricción

del problema.6

Page 271: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

257

Fig. 1. Una de las 216 posibles soluciones para un problema de tres máquinas y

tres trabajos.

3 Restricciones

Para llevar a cabo la calendarización de trabajos en un taller de manufactura, es

necesario definir ciertas restricciones, porque éstas aseguran la integridad de las

operaciones y la eficiencia del proceso. A continuación, se enumeran las

restricciones consideradas para este problema.

Una máquina puede procesar sólo un trabajo en un instante de tiempo.

Un trabajo no debe procesarse en una misma máquina dos veces.

No existen restricciones entre operaciones de trabajos diferentes.

Una vez que una operación es asignada, no puede ser interrumpida.

Un trabajo consiste en i número de operaciones.

Existe una restricción de precedencia entre las operaciones de un mismo

trabajo, lo cual, al igual que los tiempos de procesamiento, son datos

conocidos.

Existe una restricción de capacidad de recursos, la cual es conocida como

la secuencia de operaciones en una máquina, y son datos conocidos.

Las operaciones de los trabajos tienen la misma prioridad.

No se especifican fechas de liberación ni de vencimiento.

La calendarización de trabajos factible puede obtenerse permutando el orden de

las operaciones en las máquinas, cuidando de no violar las restricciones

anteriormente especificadas.6

Page 272: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

258

4 Modelo de grafo disyuntivo

El problema del JSSP, puede ser descrito por un grafo disyuntivo ,

donde V es el conjunto de operaciones de los trabajos junto con dos nodos

especiales: fuente y destino, los cuales indican el inicio y fin de la calendarización.

C es el conjunto de arcos conjuntivos que representan la secuencia de las

operaciones (restricción de precedencia). D consiste en el conjunto de arcos

disyuntivos (cliqués) que representan el conjunto de operaciones que deben ser

procesadas en la misma máquina.2 El tiempo de procesamiento para cada

operación se encuentra definido, además de que el tiempo de procesamiento del

último trabajo (Cmax) depende directamente de la secuencia de operaciones en

cada máquina. A continuación se muestra la representación de una instancia del

JSSP de 3 x 3 por medio de un grafo disyuntivo (véanse la figura 2 y el cuadro 1).

Fig. 2. Representación de un problema de 3 x 3 por medio de un grafo disyuntivo.

Un arco disyuntivo puede estar orientado por cualquiera de sus dos extremos. Al

momento de llevar a cabo la calendarización, se fija la orientación de los arcos

disyuntivos; de esta forma, se obtiene la secuencia de operaciones que serán

procesadas en cada máquina. Una vez que se obtiene la secuencia de operaciones,

los arcos disyuntivos cambian a arcos conjuntivos (véase la figura 3).

La calendarización de las operaciones, como se mencionó anteriormente, se

puede representar por medio de una gráfica de Gantt. Para esta solución,

tenemos la calendarización final en la figura 1.

Page 273: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

259

Fig.3. Una solución para el problema JSSP con tres trabajos en tres máquinas,

donde se encuentra definida por arcos conjuntivos la secuencia de operaciones en

cada máquina, respetando las restricciones de precedencia y de capacidad de

recursos.

5 Modelo de grafo bipartita

Un grafo bipartita es un grafo no dirigido que tiene la característica de que su

conjunto de vértices V puede ser dividido en dos subconjuntos disjuntos

, de tal forma que cada arco conecta un vértice de cada

subconjunto, es decir, un arco conecta un elemento del subconjunto V1 y uno del

V2, tomando en cuenta que no deben existir adyacencias entre elementos de un

mismo subconjunto.5 A continuación, se enumeran las características básicas de

un grafo bipartita. Los subconjuntos V1 y V2 son disjuntos y no vacíos.

Cada arista de A une un vértice de V1 con uno de V2.

No existen aristas uniendo dos elementos de V1; análogamente para V2.

Tomando en cuenta estas características, se representó el problema del JSSP por

medio de un grafo tipo bipartita (véase la figura 4). Esto fue así debido a que ya

existen algoritmos de programación lineal que resuelven grafos bipartitas, como

es el caso del método Simplex.

Fig. 4. Representación del problema JSSP por medio de un grafo bipartita.

Page 274: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

260

De acuerdo con esta representación (véase la figura 4), se dice que es un grafo

tipo bipartita, debido a la restricción de precedencia que prevalece representada

entre las operaciones de cada trabajo. Una vez que se tiene esta representación, es

necesario relajar las restricciones del problema para representarlo como un grafo

bipartita auténtico y de esta forma tratar de resolverlo por medio de algoritmos

de programación lineal.

6 Relajación del JSSP

Para llevar a cabo la relajación del JSSP, fueron analizadas cada una de las

restricciones, llegando a la conclusión de que algunas de las restricciones básicas

del problema pueden ser tomadas de forma implícita, es decir, que no

necesariamente tienen que estar representadas gráficamente en el grafo, por lo

tanto, en general, la representación del grafo bipartita para esta instancia del JSSP

queda de la siguiente manera (véase la figura 5).

Fig. 5. Representación del JSSP relajado por medio de un grafo bipartita para una

instancia de 3 x 3.

Tomando en cuenta esta representación, donde se llevó a cabo la relajación del

problema, obtenemos un mapeo del problema de máquinas en paralelo no

relacionadas (UPM). De acuerdo con la literatura, el problema de las UPM puede

ser definido como el conjunto de n trabajos independientes que necesitan ser

calendarizados en m máquinas en paralelo no relacionadas, de tal manera que se

cumpla la función objetivo: minimizar el tiempo total de completación de todos

los trabajos. Para ello, se debe considerar que una máquina no puede procesar

más de un trabajo a la vez y los trabajos no pueden ser interrumpidos una vez

que han sido asignados.

La diferencia entre el problema de las UPM y el del JSSP radica en que un trabajo

puede ser procesado en cualquier máquina debido a que las máquinas en las que

los trabajos serán procesados son multipropósito. El tiempo de procesamiento Pij

de un trabajo j en una máquina i se encuentra en función del trabajo a procesar y

de la máquina al que fue asignado. Ésta es una característica fundamental del

Page 275: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

261

problema, ya que al ser máquinas no relacionadas, el tiempo de procesamiento de

un mismo trabajo varía de una máquina a otra, debido a que sus recursos y

capacidades suelen ser diferentes.

De acuerdo con esta definición, para la instancia utilizada para el JSSP,

tendríamos un grafo bipartita no dirigido (véase la figura 6), donde cada trabajo

podría ser procesado en cualquier máquina, por lo que de esta forma relajaríamos

la restricción de precedencia y tendríamos representada de manera gráfica

únicamente la restricción de la capacidad de recursos.

Fig. 6. Grafo bipartita no dirigido para una instancia de 3 x 3 para el problema de

máquinas en paralelo no relacionadas.

En el grafo bipartita mostrado anteriormente, se utiliza kPij para identificar

dónde se va a procesar cada trabajo. Donde k es la posición en la máquina i

donde se va procesar el trabajo j.

Por lo tanto, para el caso de un grafo no dirigido, tenemos que un trabajo puede

ser asignado a cualquier máquina en cualquier posición. Para representar la

solución utilizada para el JSSP como grafo bipartita, es necesario pasar del grafo

no dirigido como el que se muestra en la figura 6, a un grafo dirigido, es decir,

asignar cada trabajo a una máquina en una posición, tomando en cuenta tanto las

restricciones del problema como las características del grafo bipartita, por lo que

la representación de la solución quedaría de la siguiente manera (véase la figura

7).

Page 276: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

262

Fig. 7. Grafo bipartita dirigido, donde para una instancia de 3 x 3, cada trabajo

será asignado a una máquina en k posición, de esta forma se evita la sobrecarga o

máquinas ociosas.

Tomando esta solución para la instancia que aquí hemos propuesto, tendríamos,

de acuerdo con los tiempos de procesamiento establecidos en el cuadro 1, una

calendarización que, como ya se mencionó, se representa por medio de una

gráfica de Gantt (véase la figura 8).

Fig. 8. Calendarización de una instancia de 3 x 3 para el problema de máquinas

en paralelo no relacionadas.

7 Conclusiones

Uno de los problemas más estudiados en el área de la optimización es el de la

calendarización de trabajos en un taller de manufactura (JSSP), el cual ha atraído

la atención de un sinnúmero de investigadores alrededor del mundo debido a su

dificultad y su clasificación como problema intratable. En los últimos años se ha

puesto especial interés en la utilización de algoritmos híbridos y heurísticos para

tratar de resolver este problema.

Se han utilizado diversos modelos para la representación del problema, como,

por ejemplo, el de grafos disyuntivos. En este artículo se realizó una relajación

Page 277: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

263

del JSSP, con lo que se consiguió un mapeo del problema de máquinas en

paralelo no relacionadas y con ello un modelado por medio de un grafo bipartita.

8 Trabajos futuros

4 Desarrollar un algoritmo capaz de resolver el grafo bipartita sin

relajación del JSSP.

5 Comparar los resultados del algoritmo antes mencionado con un

algoritmo de grafos disyuntivos y uno de programación lineal.

Referencias

1. Garey R., M., D. S. Johnson y R. Seit, ‚The Complexity of Flor Shop and

Job Shop Scheduling‛, Mathematics of Operation Research, vol. 1, núm. 2. 1976,

pp. 117-129.

2. Takeshi, Y. y N. Ryohei, ‚Genetic Algorithms for Job-Shop Scheduling

Problems‛, Proceedings of Modern Heuristic for Decision Support, UNICOM

Seminar, Londres, 1997, pp. 67-81.

3. Martínez-Rangel, M., Una revisión del problema de calendarizar las tareas en

un taller de trabajo (Job Shop Scheduling Problem) mediante el Modelo de grafos

disyuntivo y el modelo de programación entera mixta, en Internet

(www.uaem.mx/posgrado/mcruz/surveymartin.pdf).

4. Díaz-Pérez, A., Análisis y complejidad de algoritmos, complejidad

computacional, en Internet (http://delta.cs.cinvestav.mx/

~adiaz/anadis/Complexity2k5.pdf), pp. 11.

5. Rosen, K. H., Discrete Mathematics and its Applications, MacGraw Hill, pp.

549.

6. Cortés Rivera, D., Un Sistema inmune artificial para resolver el problema de

Job Shop Scheduling, tesis de maestría en Ciencias con especialidad en

Tecnología eléctrica y opción en Computación, CINVESTAV, marzo de 2004.

7. Morikawa, K., Furuhashi, T. y Y. Uchikawa, ‚Single Populated GA and

its Application to Job Shop Scheduling‛, en Proceedings of the 1992 International

Conference on Industrial Electronics, Control, Instrumentation and Automation,

vols. 1-3, 1992, pp. 1014-1019.

8. Peña, V. y L. Zumelzu, Estado del arte del Job Shop Scheduling Problem,

en Internet (http://www.alumnos.inf.utfsm.cl/~ vpena/ramos/ili295/ia-

jobshop.pdf), 2006.

9. Frausto-Solís, J. y M. A. Cruz-Chávez, ‚A Reduced Codification for the

Logical Representation of Job Shop Scheduling Problems‛, Lecture Notes in

Page 278: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

264

Computer Science, vol. 3046, núm. 4, Springer-Verlag, Heidelberg, 2004, pp.

553-562.

10. Ogrenci-Memik, S. y F. Fallah, ‚Accelerated SAT-Based Scheduling of

Control-Data Flow Graphs Computer Design: VLSI in Computers and

Processors‛, Proceedings of IEEE, 16 al 18 de septiembre de 2002, pp. 395-400.

11. Carlier, J. y E. Pinson, ‚An Algorithm for Solving the Job-Shop Problem‛,

Management Sciences, vol. 35, núm. 2, 1989, pp. 164-176.

12. Zalzala, P. y J. Flemming, Genetic Algorithms in Engineering Systems, AMS

Institute of Electrical Engineers, 1997.

13. Yamada, T. y R. Nakano, ‚Job-Shop Scheduling by Simulated Annealing

Combined with Deterministic Local Search‛, en Metaheuristics Intelligence

Conference, Colorado, Estados Unidos, 1995, pp. 344-349.

14. Conway, R. W., W. L. Maxwell y L. W. Miller, Theory of Scheduling,

Addison-Wesley, Reading, Massachusetts, 1967.

15. Smith, S. F. y C. C. Cheng, ‚Slack-Based Heuristics for Constraint

Satisfaction Scheduling‛, en Proceedings of the XI National Conference on

Artificial Intelligence, Washington, D.C., 1993, pp. 139-145.

16. Cruz-Chávez, M. A. y A. Rivera-López, ‚A Local Search Algorithm for a

SAT Representation of Scheduling Problems‛, Lecture Notes in Computer

Science, vol. 4707, núm. 3, Springer-Verlag, Heidelberg, 2007, pp. 697-709.

17. Crawford, J. M. y A. B. Baker, ‚Experimental Results on the Application

of Satisfiability Algorithms to Scheduling Problems‛, en Proceedings of the XII

National Conference on Artificial Intelligence, Austin, Texas, 1994, pp. 1092-1098.

18. Adams, E., E. Balas y D. Zawack, ‚The shifting Bottleneck Procedure for

Job Shop Scheduling‛, Management Science, vol. 34, núm. 3, 1988, pp. 391-401.

19. Schutten, M. J., Practical Job Shop Scheduling, Annals of Operations

Research, vol. 83, 1988, pp. 161-177.

20. Yoshida, T. y H. Touzaki, A Study on Association amount Dispatching Rules

in Manufacturing Scheduling Problems, IEEE, 1999.

21. Rune-Jensen, A., L. Bech Lauritzen y O. Laursen, Optimal Task Graph

Scheduling with Binary Decision Diagrams, en Inernet

(http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.84.1116&rep=rep1

&type=pdf), 2004.

22. Cruz-Chávez, M. A., F. Juárez-Pérez, E. Y. Ávila-Melgar y A. Martínez-

Oropeza, ‚Simulated Annealing Algorithm for the Weighted Unrelated

Parallel Machines Problem, Electronics, Robotics and Automotive Mechanics

Conference, CERMA 2009‛, IEEE-Computer Society, México, 22 al 25 de

septiembre de 2009 (en prensa).

23. Pinedo, M., Scheduling. Theory, Algorithms, and Systems, 3a. ed., Springer

Science-Business Media, Nueva York.

Page 279: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

265

Capítulo III. Electrónica y

Métodos Computacionales

Page 280: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

266

Page 281: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

267

Diseño e Implementación de un Sistema Digital

que Obtenga la Máxima Potencia Generada por

un Haz Láser

E. Antúnez-Cerón, A. Zamudio-Lara, P. A. Márquez-Aguilar

Resumen. En el presente artículo mostraremos el diseño y la puesta en marcha de

un sistema digital cuya función principal esta enfocada a encontrar el punto de

máxima potencia luminosa generada por un haz láser. Para la implementación

del sistema digital se utilizó un circuito microcontrolador de la familia microchip,

un sensor de detección de intensidad y un sistema de desplazamiento XY.

Palabras clave: microcontrolador, haz láser, potencia.

Sumario:

1. Introducción 2. Desarrollo 2.1. Función de escaneo sobre el eje

correspondiente 3. Resultados 4. Conclusiones 5. Trabajo futuro. Referencias

1 Introducción

Existen muchas fuentes de luz, desde las que se manifiestan de forma natural o

por medios físicos hasta las provocadas por reacciones químicas. La fuente de luz

natural más antigua, que afecta de una u otra forma a los seres vivos y las

plantas, es el Sol. Le sigue el fuego, producido por reacciones químicas que tienen

lugar durante la combustión. Durante miles de años el Sol y el fuego fueron los

únicos elementos que utilizó el hombre para alumbrarse, hasta que, a finales del

siglo XIX, Thomas A. Edison desarrolló y comercializó en los Estados Unidos de

América la bombilla eléctrica incandescente como fuente de luz artificial. A partir

de ese momento histórico se comenzaron a crear otras fuentes artificiales de

iluminación. Entre otras fuentes de luz artificial, se encuentra también el rayo

láser, el cual, aunque no se utiliza en alumbrado, da un haz de luz coherente y de

alta energía cuyas aplicaciones son muchas. Hoy en día, los láseres ocupan una

de las áreas más destacadas de la investigación científica aplicada. La medición

de la potencia luminosa emitida por las diversas fuentes de luz artificiales es de

suma importancia en algunos experimentos. En algunas de estas fuentes la

Page 282: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

268

potencia luminosa cambia de forma aleatoria debido a diversas causas de tipo

físico o de construcción tecnológica. Una forma de obtener información sobre los

cambios en la potencia de una fuente luminosa es mediante la lectura continua de

sus medidas de intensidad. Por eso, hacer las lecturas automáticas de las medidas

de potencia luminosa en intervalos de tiempo muy cortos, como, por ejemplo, del

orden de unos segundos, o al contrario, de varias horas, es de gran utilidad.1 La

técnica manual para la detección de la máxima potencia luminosa resulta

complicada y poco confiable; además, otros factores señalan aún más

complicaciones en un proceso de esta naturaleza, como la poca estabilidad con la

que la persona que lo lleva a cabo sostiene el sensor de detección y la escasa

posibilidad de mantener o repetir la lectura de la máxima potencia más de una

vez durante el proceso.

Dada esta problemática, en este artículo se propone la construcción de un

mecanismo de desplazamiento, del orden de las décimas de micras y en dos ejes

espaciales (X, Y), para hacer la exploración y el sensado dentro del diámetro

transversal central de un haz láser, encontrando automáticamente el punto de

máxima potencia luminosa. La automatización es fundamental, por ello se

decidió diseñar e implementar un mecanismo automatizado que haga uso de

recursos tanto ópticos como electrónicos para la creación de un sistema de

autocontrol confiable, de mayor precisión, de bajo costo y con una gama de

aplicaciones amplia.

2 Desarrollo

En un modelo basado en bloques, para un sistema de lazo cerrado, el punto de

suma establece el valor que se va a comparar con el valor de la salida. El valor del

punto de suma puede ser constante o variable. La salida del sistema se

retroalimenta por medio de un instrumento de medición o un sensor con

funciones de retroalimentación. La señal retroalimentada se compara con el

punto de ajuste y la diferencia (error) activa el controlador, el cual, a su vez,

controla la etapa del proceso (véase la figura 1).

Page 283: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

269

Fig. 1. Lazo cerrado.

En el modelo del sistema funcional basado en bloques que se muestra en la figura

2 se aplican estas técnicas, como se aprecia con detalle. Los dispositivos que

constituyen cada etapa y las acciones de cada uno de los elementos del circuito de

lazo cerrado se describen con claridad. Este modelo señala las etapas o funciones

que se llevan a cabo en cualquiera de los dos ejes de desplazamiento; es decir, en

el mecanismo de posicionamiento, el bloque anterior es idéntico en operación y

caracterización, tanto en X como en Y.

Fig. 2. Modelado del diagrama de bloques del sistema de posicionamiento

autocontrolable por la intensidad de un haz láser.

En la figura 2 se distingue la caracterización del sistema, desarrollado como un

sistema de lazo cerrado, donde el punto de comparación (ajuste) y la etapa de

adquisición de datos se llevan a cabo en el microcontrolador que gobierna el

sistema (unidad de control). Éste, a su vez, corrige el error que se provoca cuando

se realiza una comparación de datos (variable de entrada y salida). El resultado

Page 284: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

270

de esa comparación de datos produce las señales de excitación para las bobinas

de los motores instalados en cada eje de desplazamiento (actuadores u objetos de

control), los cuales, mediante el tren de engranajes adaptado a cada uno de ellos,

hacen un desplazamiento fino en la dirección correspondiente. La

retroalimentación está a cargo del sensor de detección y el medidor de potencia

óptico. Este último proporciona medidas continuas de la intensidad de potencia

en el láser y esta medición es la señal de entrada para el sistema; cuando el

microcontrolador compara las medidas, determina si continúa el desplazamiento

en el eje respectivo hasta encontrar el máximo punto de intensidad durante el

proceso de escaneo; posteriormente, regresa a este máximo para colocarse en la

posición donde se ha registrado la máxima irradiación de luz láser. Una vez que

el sistema ha sido caracterizado como de control de lazo cerrado, tenemos a la

mano un sistema automático en el cual la intervención humana queda limitada

durante el proceso de medición de intensidad sobre el diámetro de un haz láser.

El programa desarrollado para esta aplicación consiste básicamente en tres

funciones principales, cada una de ellas describe el funcionamiento de cualquiera

de los dos ejes de desplazamiento. El diagrama de flujo del programa se muestra

en la figura 3, donde cada uno de los bloques que corresponden a las tres

funciones principales están delimitados por un rectángulo punteado de un color

distinto para cada una de las funciones. El diagrama de flujo muestra las

diferentes funciones que se realizan para cada uno de lo dos ejes de

desplazamiento; es decir, describe el funcionamiento del eje X y del eje Y. A

continuación, se describen con más detalle las tres funciones principales del

programa de control, las cuales se identifican en el diagrama de flujo de la figura

3.

Page 285: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

271

Fig. 3. Función de desplazamiento hacia la posición de ‚origen‛.

La posición de ‚origen‛ sobre cada uno de los ejes hace referencia a la posición en

la que se encuentran ubicados los sensores de cada uno de los ejes con el mismo

nombre. Dicha posición se alcanza cuando el sensor de interrupción denominado

Page 286: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

272

‚origen‛, en cualquiera de los ejes, es presionado por la proximidad de la guía

móvil del eje correspondiente —es decir, cambia de estado, de 1 a 0, de alto a

bajo. El motor que acciona a cada uno de los ejes es activado por las secuencias de

excitación que produce el microcontrolador, las cuales salen a través del puerto B

para dirigirse al controlador o driver del motor, y mecanizarlo con el giro en

dirección a la posición ‚origen‛ cuando el sensor presente un estado alto (1, sin

interrupción). Una vez alcanzada esta posición, se produce la interrupción del

sensor y éste cambia su estado a un nivel bajo (0), entonces el motor se detiene.

2.1 Función de escaneo sobre el eje correspondiente

Una vez que la guía móvil se encuentra en la posición ‚origen‛, est{ lista para

llevar a cabo el escaneo sobre la parte central del diámetro del haz láser. El

escaneo se realiza sobre todo el eje de barrido, en dirección al eje correspondiente

y hasta la posición ‚fin de escaneo‛; paralelamente, y mediante el uso del sensor

y del medidor de potencia óptica, la señal analógica es dirigida hacia la terminal

de entrada analógica correspondiente al canal 0 del microcontrolador. Ahí se

lleva a cabo la conversión de la señal analógica para ponerla en su formato digital

de 10 bits en los registros correspondientes del convertidor. El convertidor A/D

realiza la captura y conversión de la señal analógica de modo continuo, a la vez

que avanza sobre el eje hasta llegar al sensor ‚fin de escaneo‛ ubicado en el

extremo opuesto a la posición del sensor ‚origen‛. El desplazamiento se realiza

generando las señales de excitación para el motor correspondiente. Al mismo

tiempo que se realiza el escaneo, el microcontrolador guarda el mayor dato

capturado y lo compara con el dato de la siguiente medición, realizando este

proceso en toda la trayectoria del escaneo; al finalizar la operación, queda

almacenado el dato de mayor magnitud. Este dato es la lectura de mayor

intensidad registrada por el medidor de potencia en su formato digital —es decir,

los datos que maneja el microcontrolador—; consecuentemente, éste es el punto

de mayor intensidad registrado en todo el escaneo sobre el eje. Una vez que se

produce la interrupción del sensor “fin de escaneo” —esto quiere decir que se ha

llegado al extremo final del eje de desplazamiento—, el motor se detiene.

3 Resultados

Este proyecto tiene como objetivo principal el diseño y la puesta en marcha de un

sistema de posicionamiento automático controlado por la intensidad de la luz

láser, con el propósito de encontrar el punto de máxima intensidad en los

diámetros principales de la circunferencia de irradiación, la cual incide sobre el

obturador del sensor de potencia. El montaje del sistema de posicionamiento

Page 287: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

273

controlado por la intensidad del láser y los diferentes dispositivos de los que hace

uso para su operación se muestran en la figura 4.

Fig. 4. Montaje del sistema de posicionamiento.

En la figura 4 se ve que el sistema está constituido por diferentes dispositivos, los

cuales, interconectados, ayudan a realizar la tarea principal del proyecto. En

términos generales, el sistema está compuesto por tres bloques de dispositivos

diferentes:

Dispositivos ópticos: láser, lente, sensor, medidor.

Dispositivo programable y electrónica.

Mecanismo de posicionamiento.

Las pruebas realizadas con el sistema de posicionamiento se llevaron a cabo bajo

la siguiente condición: la lente convergente (plano convexa) está colocada a 10

centímetros del dispositivo emisor láser y ésta debe alinearse apropiadamente a

la altura y ángulo requeridos para un buen desempeño del haz. A continuación,

el sistema de posicionamiento se coloca a una distancia d. La distancia de prueba

no es más que la distancia existente entre el soporte de la lente utilizada y el eje

que soporta al sensor detector de potencia en el mecanismo de posicionamiento.

Esta distancia es donde el haz tiene un diámetro D; este diámetro aumenta

cuanto mayor sea la distancia d. Lo anterior ocurre debido a la propiedad de la

divergencia de un haz con perfil gaussiano. El criterio con el cual se realizó la

evaluación de las pruebas y la obtención de los resultados correspondientes se

ilustra en el arreglo experimental de la figura 5 y en la figura 6 se muestra una

foto de este arreglo.

Page 288: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

274

Fig. 5. Arreglo experimental.

En la figura 5 se aprecia que la distancia entre el láser y la base del soporte de la

lente óptica es de 10 centímetros y esta distancia entre ambos dispositivos ópticos

se conserva en la realización de las pruebas. El parámetro a modificar es la

distancia de prueba d; y como consecuencia, D cambiará su valor.

Fig. 6. Foto del arreglo experimental.

En el cuadro 1 se dan los resultados de las diferentes pruebas y de la puesta en

marcha del sistema para diversos valores de d y D, respectivamente. Las pruebas

se evaluaron cada 10 centímetros de distancia a partir de la posición del soporte

de la lente y esta medida se incrementó gradualmente hasta llegar a los 150

centímetros. En la práctica, una búsqueda del máximo a 10 o 20 centímetros es un

tanto complicada; sin embargo, se puede ver cómo el sistema ha llevado a cabo

esta tarea, lo cual nos habla de la eficiencia del sistema en estas condiciones.

Page 289: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

275

Cuadro 1. Resultados de las pruebas realizadas con el sistema de

posicionamiento para diferentes valores de d

La búsqueda del máximo siempre se hace procurando que el escaneo se lleve a

cabo sobre el diámetro central transversal de la circunferencia sobre el eje Y, y

posteriormente sobre el diámetro central del eje X. Como se puede observar en el

cuadro 1, a medida que la distancia de prueba d aumenta su magnitud, el

diámetro aproximado D del haz incidente sobre la superficie del sensor también

aumenta. El comportamiento de la intensidad (potencia) del haz láser, como era

de esperase, también se ve afectado por la distancia a la cual se realiza la

búsqueda del máximo. Los resultados anteriores nos muestran cómo a mayor

distancia a partir del foco, la potencia láser disminuye al mismo tiempo que el

diámetro o radio del haz se incrementa, cuanto mayor sea el diámetro del haz,

menor será su potencia. Este hecho nos muestra cómo el sistema de

posicionamiento realiza un buen desempeño en pruebas de irradiación en campo

lejano.

Page 290: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

276

4 Conclusiones

Se diseñó un sistema caracterizándolo como un sistema automático de lazo

cerrado, es decir, con intervención mínima de la mano humana, lo que da mayor

estabilidad en las lecturas y resultados confiables. Al ser un sistema automático,

tiene la característica de que sus resultados son mucho más precisos, ya que

compara los datos de entrada con los de salida asegurándonos un desempeño

confiable.

5 Trabajo futuro

Este sistema es sólo un prototipo de muchos más que se pueden construir. La

innovación y mejora de este sistema queda abierta a las necesidades y

aplicaciones futuras. Su diseño y puesta en marcha se enfocaron en la tarea de

detectar el máximo de intensidad en la distribución de potencia de un haz láser,

lo cual no descarta la posibilidad de agregarle otras funciones. Para ello, sólo se

requiere un nuevo programa, que amplíe las aplicaciones del sistema. Entre las

aplicaciones a futuro figuran las siguientes: El sistema puede programarse de

forma tal que el microcontrolador guarde en variables internas los datos que el

medidor de potencia le esté enviando sobre la intensidad del láser, y para que,

posteriormente, dirija todos estos datos almacenados hacia el ordenador

mediante una interfaz de tipo serial. Una vez allí, los datos pueden ser analizados

o recibir el tratamiento o análisis requerido para alguna aplicación en particular.

Este sistema podría ser programado de forma que en lugar de proporcionar la

detección del máximo de intensidad nos detecte el punto de intensidad mínima

en la distribución de potencia de un haz láser. El sistema de posicionamiento ya

está hecho; pero su funcionamiento está abierto a las necesidades del usuario. En

este sentido, el usuario puede agregar los módulos de hardware y software que

requiera para personalizar su funcionamiento y ampliar la variedad de

aplicaciones.

Referencias 1. Tapia-V{zquez, A. y A. Padilla Vivanco, ‚Programación para el control

autom{tico de un medidor de potencia óptica‛, en Internet (http://www-

optica .inaoep.mx/investigadores/apadilla/fotodetector.pdf).

2. Boreman, G. D., Fundamentos de electro-óptica para ingenieros, SPIE Press,

1999, pp. 93, 95.

Page 291: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

277

Evolución de las Bases de Datos: de Fijas a

Móviles

Paola Delgado Fernández, Luis Antonio Gama Moreno

Resumen. Los sistemas manejadores de bases de datos (SMBD) han estado en

constante cambio desde sus orígenes como sistemas manuales para la

organización de información, pasando por sistemas mainframes y de escritorio

(desktop), hasta la llegada de la computación móvil. Con el surgimiento de las

bases de datos móviles, las actividades de mantenimiento y consulta de

información se pueden realizar en cualquier momento y lugar desde un

dispositivo móvil —teléfono celular, PDA, etcétera. En este artículo se describe

esta evolución, así como las características de los cinco manejadores de bases de

datos para dispositivos móviles con mayor impacto en el mercado,

particularmente en soporte de transacciones, compatibilidad con la norma ANSI-

SQL92, encriptamiento, conectividad vía JDBC-ODBC, entre otros. Finalmente, se

discuten los enfoques de sincronización con los servidores centrales o el motor

embebido en las aplicaciones.

Palabras clave: SMBD, computación móvil, dispositivos móviles.

Sumario: 1 Introducción 2 Estado del arte 2.1 Tecnologías inalámbricas 2.2 Cómputo

móvil 2.2.1 Dispositivos móviles 3 Manejadores de bases de datos para

dispositivos móviles 3.1 PointBase 3.2 SQLAnywhere 3.3 DB2 EveryPlace 3.4

Oracle Lite 3.5 MSSQL CE 4 Discusión 5 Conclusiones. Referencias

1 Introducción

El desarrollo histórico de las bases de datos comienza con la necesidad de

organizar información utilizando archivos en papel y sistemas manuales. En 1960

los sistemas empiezan a computarizarse, lo que lleva al desarrollo del primer

sistema de bases de datos, el IMS (Information Management System), de la

compañía IBM, el cual permitía al usuario visualizar los datos en forma de árbol

jerárquico.

Para 1970, el doctor E. F. Codd29 propuso el concepto de bases de datos

relacional (BDR), basado en los principios matemáticos de la teoría de conjuntos

Page 292: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

278

y la lógica predictiva, y que consistía en el manejo de tablas, filas y columnas

utilizando un conjunto de operaciones lógicas. Asimismo, uno de los avances

más importantes de los años setenta fue el desarrollo del SQL (Structured Query

Language), un lenguaje para el manejo de bases de datos relacionales, basado en

el álgebra relacional.

Sin embargo, el primer producto de BDR comercial fue el SMBD Oracle, lanzado

en 1979 al mercado.22 En esa época las bases de datos relacionales se fueron

aceptando y adoptando poco a poco por empresas y organizaciones, ganando

popularidad y convirtiéndose en una de las principales herramientas para la

gestión de información. A pesar de la popularidad y fuerza que ganó el uso de

los SMBD, la búsqueda de mejores opciones y el desarrollo de nuevas tecnologías

llevó al surgimiento de las bases de datos relacionales orientadas a objetos, las

que más tarde pasarían a ser bases de datos orientadas a objetos,29 aunque sólo

pocos SMBD adoptaron esta propuesta, entre ellos Oracle y PostgreSQL. Para

mediados de 1990 el acceso a una base de datos se logró por medio de Internet, lo

que abrió el camino hacia otras áreas de aplicación de los SMBD; además, los

sitios Web se hicieron más dinámicos e Internet ganó popularidad para el

comercio electrónico, los sistemas de información, etcétera. En los años noventa,

con el auge de Internet y las bases de datos, comienzan a integrarse en las

aplicaciones lenguajes como XML (Extensible Markup Language), además de que

el número de desarrolladores y usuarios aumenta e impulsa el uso de los SMBD.

Con el surgimiento de las nuevas tecnologías de comunicación inalámbrica y de

dispositivos móviles (DM), se logró el desarrollo de la computación móvil (CM),

caracterizada por la independencia de localización, movimiento y plataforma de

los dispositivos.2 Por otra parte, la necesidad de gestionar información desde un

ambiente móvil y la popularidad de las bases de datos motivaron el desarrollo de

los sistemas manejadores de bases de datos móviles (SMBDm). En la figura 1 se

describe el desarrollo histórico de los SMBD.

Fig. 1. Desarrollo histórico de los SMBD.

En el campo de los SMBDm, se han desarrollado aplicaciones importantes, desde

versiones limitadas para ejecutarse en un DM y que después se sincronizan con el

servidor central, hasta productos que van inmersos (embebidos) en las

Page 293: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

279

aplicaciones. Oracle Lite,21 por ejemplo, es un SMDBm con una arquitectura de

cliente-servidor dirigido a dispositivos con plataforma de Windows Mobile,

Symbian OS y Linux. IBM DB2 Everyplace Database Edition11 es una base de

datos móvil de alto rendimiento que se integra con IBM WebSphere Everyplace

Access e IBM WebSphere Everyplace Server; es una base de datos relacional para

plataformas PalmOS y Windows CE. MSSQL CE18 es otra base de datos,

compacta, diseñada para admitir una gran lista de dispositivos inteligentes y

Tablets PC; utiliza la sintaxis de SQL para las consultas y permite su integración

con Microsoft SQL Server 2005. PointBase24 es un SMDBm desarrollado en

JAVA, y por lo tanto, compatible con J2ME, el cual se ofrece en cuatro versiones:

Embedded, Micro, Server y UniSync. SQL Anywhere27 es otro SMDBm y provee

tecnología para el intercambio y gestión de datos desde un dispositivo móvil; ha

sido diseñado para plataformas Windows Mobile 5 y 6 —PocketPC y

Smartphone.

2 Estado del arte

2.1 Tecnologías inalámbricas

Desde el surgimiento de las tecnologías inalámbricas como medio de

comunicación e interacción entre dispositivos, su mejoramiento y avances han

sido constantes. Han permitido transmitir información desde puntos que no se

creían accesibles y mejorar la comunicación entre dispositivos móviles y fijos.

Entre las principales tecnologías está LMDS (Local Multipoint Distribution

Service),23 servicio que establece una conexión bidireccional de punto a

multipunto, es de banda ancha y para utilizarlo es necesario tener licencia; ofrece

telefonía, datos, televisión multicanal y servicios interactivos multimedia. Por

otro lado, Wi-Max (Worldwide Interoperability for Microwave Access) es una

tecnología de banda ancha de rápido despliegue, de punto a multipunto y

económica, ya que no requiere de cableado; permite la conexión de múltiples

usuarios, los cuales deben instalar una antena para la recepción de señal, y da

acceso a servicios de voz (VoIP), datos y video.1 Una de las tecnologías

inalámbricas más populares es Wi-Fi (Wireless Fidelity), la cual facilita la

interconexión de varios dispositivos —computadoras personales, agendas

electrónicas, etcétera— de manera local; su ventaja estriba en que no requiere de

cableado y da movilidad en el área de cobertura, además de que trabaja en las

bandas libres de 2.4 y 5 GHz; solamente precisa un punto de acceso para el área y

una tarjeta Wi-Fi en cada equipo.8 Por otro lado, Internet vía satélite10 o satelital

está basado en el acceso a la red mediante el intercambio de ondas

electromagnéticas a frecuencias muy altas con un satélite en órbita

geoestacionaria, aproximadamente a 36 000 kilómetros. Se requiere de una antena

Page 294: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

280

para captar la señal y un módem DVB para decodificarla. Estos instrumentos se

conectan con cable coaxial y para enviar datos hace falta una red telefónica, o

bien, se puede utilizar el mismo satélite. Otra tecnología, para la comunicación de

corto alcance, son las ondas infrarrojas;14 su uso es limitado pero puede

encontrarse en computadoras portátiles e impresoras. Bluetooth28 es también de

corto alcance, inalámbrica, y se creó para sustituir el uso de cables en las redes,

logrando la conexión de dispositivos móviles y de hardware, como impresoras,

escáners y cámaras digitales, a una computadora, lo que facilita el intercambio de

información; el único requisito es estar dentro del alcance de la red.

2.2 Cómputo móvil

El cómputo móvil,12 también conocido como cómputo nómada, es el resultado de

reunir en un mismo ambiente dispositivos móviles de distintas capacidades

físicas, como memoria y energía. Los dispositivos, por medio de una conexión

inalámbrica, acceden a una red para intercambiar información y compartir

recursos, ofreciendo a los usuarios movilidad y portabilidad. El cómputo móvil

ganó popularidad gracias al surgimiento de poderosas tecnologías de

comunicación inalámbrica, como el Bluetooth, Wi-Fi y Wi-Max. Sin embargo, la

computación móvil sigue enfrentando retos considerables, principalmente de

infraestructura, ya que los dispositivos aún presentan ciertas deficiencias en el

rendimiento de energía y en su capacidad de procesamiento, de memoria y

conectividad.

2.2.1 Dispositivos móviles

Entre los dispositivos móviles de mayor interés para los usuarios se encuentran

los teléfonos celulares e inteligentes. Un teléfono celular se compone, en general,

de un CPU, memoria, memoria flash para almacenamiento, conexión a red y

batería, aunque últimamente llevan incluido características como GPS, cámara

fotográfica, reproductor de música y video.20 Por otra parte, los teléfonos

inteligentes están comenzando a trabajar con procesadores multinúcleo, aunque

el principal enfoque de su diseño es el consumo de energía. Los procesadores

multinúcleo ofrecen una funcionalidad asimétrica que permite al dispositivo

apagarse y encenderse dinámicamente para reducir el consumo de energía.

Todos estos avances en los teléfonos móviles hacen posible que se menejen más

datos, pero requieren de mejores soluciones para la administración de

información.

Los dispositivos móviles presentan las siguientes desventajas:

Desconexiones frecuentes debido a que los clientes móviles no permanecen

conectados de manera continua en una misma red, algunas veces porque el

Page 295: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

281

dispositivo se enciende y se apaga, otras veces porque el cliente decide

desconectarse para conectarse a otra red.

Presentan limitaciones en los recursos de energía, teniendo muchas veces una

cantidad de carga limitada.

El tamaño de la pantalla de algunos dispositivos muchas veces es muy

pequeña y la información no se despliega de la mejor manera.

3 Manejadores de bases de datos para dispositivos móviles1

Una base de datos se define como un conjunto de tablas relacionadas entre sí, que

almacenan una gran cantidad de datos de manera estructurada. Estos datos

constituyen un recurso esencial para todas las organizaciones.4 Una base de datos

es como un contenedor o depósito de un conjunto de archivos de datos

computarizados, sobre los cuales un usuario puede realizar gran cantidad de

operaciones: agregar nuevos archivos, insertar datos, recuperar o consultar datos,

hacer modificaciones y eliminar datos.7

Las bases de datos móviles se consideran las bases de datos de nueva generación,

ya que van dirigidas a sistemas informáticos portátiles, como computadoras

personales y dispositivos móviles, los cuales se conectan con las estaciones base

(servidores) mediante redes de comunicación digitales inalámbricas; además,

deben funcionar mientras estén desconectadas de la red, a diferencia de los

sistemas de bases de datos fijos. Las bases de datos móviles utilizan técnicas

especiales para la administración de memoria porque la capacidad de

almacenamiento de sus dispositivos móviles es limitada.3,26 Además, el hecho de

que se almacenen datos en el teléfono móvil o en la computadora personal

permite a los usuarios hacer operaciones sobre la información sin necesidad de

estar conectados a una red, así como sincronizar o consultar datos de los

servidores en el momento que se tenga acceso a una conexión inalámbrica.13,26

Todas las funciones de una base de datos y las comunica-ciones inalámbricas las

provee un SMBDm,15 cuya arquitectura se describe en la figura 2.

Page 296: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

282

Fig. 2. Sistema móvil de bases de datos.

A continuación, se describen cinco de los SMBDm más comerciales, sus

características, arquitectura, etcétera.

3.1 PointBase

PointBase Inc. comenzó a operar en 1998, desarrollando SMBDs de footprint

pequeño y dirigidos a dispositivos móviles.19 La compañía desarrolló hasta la

versión 4.7 de PointBase Micro, que fue lanzada al mercado en el año 2003.24 Ese

mismo año DataMirror Mobile Solutions compró PointBase Incorporated y

continuó con el desarrollo de nuevas versiones del SMBD, empezando con la

versión 4.8 lanzada en el año 20046 hasta que IBM adquirió DataMirror en el año

2007. Desde entonces, PointBase Micro ha pasado por varias versiones, de la 5.1 a

la 5.7, la cual es la última versión del manejador disponible hoy en día.5

PointBase Micro tiene el mejor soporte CLDC/MIDP.13 Es un manejador de base

de datos relacional muy pequeño, con soporte de SQL, y está optimizado para la

plataforma de JAVA-J2ME. En la figura 3 se aprecia la capa de software que

PointBase Micro utiliza.

Las principales características de PointBase Micro son:

- Es portable, permite su ejecución en distintas plataformas.

- Footprint pequeño, menor a 45 KB para J2ME CLDC/MIDP y menor a 90

KB para CDC (Connected Device Configuration).

- Utiliza un subconjunto de SQL 92 para realizar consultas.

- La API se deriva de JDBC para MIDP.

- Es compatible con distintos sistemas operativos: Palm OS, Windows

CE/Pocket PC, RIM OS y Symbian OS.

Page 297: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

283

Fig. 3. Arquitectura de PointBase.

PointBase provee de dos API para la versión micro:

- JDBC API para J2SE & J2ME/CDC.

- Subconjunto de JDBC API para J2ME/MIDP.

PointBase Micro utiliza la segunda API, también conocida como LiteAPI (véase la

figura 4), la cual fue escrita para proveer al usuario de una interfaz de bases de

datos en J2ME/MIDP, muy similar a JDBC. Las clases que conforman la API están

localizadas en el paquete com.pointbase.me. La diferencia entre la LiteAPI y la

API para JDBC dirigida a plataformas J2SE y J2ME/CDC está en las clases tipo

fecha que son utilizadas para representar los tipos de datos de SQL DATE, TIME,

TIMESTAMP y DECIMAL; esta diferencia se debe a que las clases e interfaces del

paquete java.sql no están disponibles para J2ME/MIDP; LiteAPI usa DATE, TIME

y TIMESTAMP de la clase java.util.Date y para valores decimales utiliza

com.pointbase.me.Decimal.24

Fig. 4. API Lite de PointBase Micro.

3.2 SQLAnywhere

Es una base de datos móvil relacional que provee de tecnología para el

intercambio y la gestión de datos desde un dispositivo móvil. Está diseñada para

dispositivos con plataforma Windows Mobile 5 para Pocket PC y Smartphone, y

Windows Mobile 6. SQL Anywhere tiene soporte para la interfaz ADO.NET,

.NET OLE DB y ODBC; además, permite usar cualquier lenguaje como: .NET,

incluyendo C# y Visual Basic .NET para escribir procedimientos y funciones.27

Page 298: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

284

Como se muestra en la figura 5, su arquitectura es de tipo cliente-servidor, cuenta

con un footprint pequeño, menor a 150 KB, permite conexiones simultáneas y

utiliza el sistema Mobilink Syncronization, un conjunto de tecnologías para la

sincronización entre sistemas fijos y usuarios móviles.25

Fig. 5. Arquitectura de SQLAnywhere.

3.3 DB2 EveryPlace

Desarrollada por la compañía IBM, DB2 Everyplace Database Edition es una base

de datos móvil de alto rendimiento, que permite ampliar el alcance de las

aplicaciones y datos empresariales a dispositivos móviles, como asistentes

digitales personales y teléfonos inteligentes. Tiene un reducido consumo de

espacio y una de sus ventajas es que se integra con la gama de productos de

informática móvil de IBM WebSphere Everyplace Access y WebSphere

Everyplace Server. Esta base de datos es relacional y está dirigida para

plataformas PalmOS y Windows CE.11 Utiliza una arquitectura cliente-servidor

(véase la figura 6) y ofrece gran cantidad de productos de acuerdo con las

necesidades de desarrollo que se tengan.

Fig. 6. Arquitectura de DB2 Everyplace.

Page 299: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

285

3.4 Oracle Lite

Este SMBDm trabaja con una arquitectura cliente-servidor como la descrita en la

figura 7. El cliente incluye un footprint pequeño, de 1 MB, optimizado para

dispositivos de mano, computadoras portátiles y ambientes reducidos, además

de que cuenta con soporte multiusuario. Oracle Lite funciona sobre Windows

Mobile, PocketPC, Symbian OS y Linux. Utiliza SQL 92, procedimientos

almacenados en JAVA, C++ y lenguajes basados en .NET, como C#; cuenta con

soporte de triggers, ODBC, JDBC y ADO .Net. El Servidor Oracle Database Lite

Mobile Server es necesario para que los usuarios móviles sincronicen la

información con la base de datos principal. La sincronización es uno de los

principales elementos de la base de datos de Oracle. Es una solución completa

que ayuda al despliegue de información sin conexión, ofrece métodos de

administración y sincronización de dispositivos, además de una base de datos

relacional segura, ligera y compatible con SQL.21

Fig. 7. Arquitectura de Oracle Lite.

3.5 MSSQL CE

Desde el principio, SQL Server Compact Edition ha sufrido una serie de cambios

y ha pasado por varias versiones, comenzando con el SQL Server CE, el cual se

incluía en el SQL Server 2000. Con el lanzamiento del SQL Server 2005 al

mercado, el SQL Server CE cambió de nombre a SQL Server 2005 Mobile Edition

y estaba dirigido a Smartphones y PDAs.16

MSSQL CE versión 2005 es una base de datos compacta que necesita menos de 2

MB de espacio en disco y sólo 5 MB de memoria. Tiene gran variedad de

funciones y fue diseñada para admitir una gran lista de dispositivos inteligentes

y Tablets PC. Cuenta con un motor de base de datos compacto y un sólido

optimizador de consultas, permite el acceso a datos remotos y réplica de mezcla

Page 300: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

286

para sincronizar datos; utiliza un subconjunto de sintaxis de SQL para las

consultas y se integra fácilmente con Microsoft SQL Server 2005.18 La arquitectura

está formada por un entorno de desarrollo, un cliente y el servidor (véase la

figura 8), a diferencia de la nueva versión del manejador, que utiliza una

arquitectura embebida. El entorno de desarrollo incluye el equipo donde se

desarrollan las aplicaciones, el cual debe tener Microsoft Visual Studio 2005 con

.NET Compact Framework. El entorno del cliente se compone de uno o varios

dispositivos compatibles donde se lleva a cabo la aplicación y SQL Server

Compact Edition; la sincronización puede ser por medio de Microsoft ActiveSync

o de la red. El entorno del servidor está formado por uno o varios equipos en los

que se ejecutan los servicios de Microsoft Internet Information Server (IIS) y una

instancia de Microsoft SQL Server o datos propagados para un origen de datos

heterogéneo. IIS es necesario para el intercambio de datos entre servidores y

clientes.18

Fig. 8. Arquitectura de MSSQL CE.

Actualmente, están disponible la versión de SQL Server 2008, que ofrece una

nueva solución de Compact Edition y la versión 3.5 Service Pack 1, la cual

permite la instalación de una pequeña base de datos SQL Server en un

dispositivo móvil con plataforma Windows Mobile. Esta última versión de

MSSQL CE es una base de datos servidor SQL ‚embebido‛, gratuito, ideal para la

construcción de aplicaciones independientes y que ocasionalmente están

conectadas; está dirigido a dispositivos móviles, computadoras de escritorio y

clientes Web.

4 Discusión

Las bases de datos se han convertido en una de las herramientas para la

administración de información más utilizadas por empresas, instituciones y

personas. Sin embargo, la necesidad de movilidad llevó al desarrollo de los

SMBDm, permitiendo trabajar con la información almacenada en los grandes

servidores corporativos o de información institucional a distancia, utilizando la

tecnología inalámbrica y dispositivos móviles como medios.

Las grandes empresas como ORACLE, IBM, Microsoft, entre otras, han

comenzado a ofrecer sus productos en plataformas que permiten su uso en

Page 301: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

287

teléfonos celulares, agendas personales, etcétera; son soluciones completas, que

permiten el manejo de gran cantidad de información utilizando recursos de

almacenamiento, procesamiento y energía limitados, características que

distinguen a los dispositivos móviles.

En el cuadro 1 se muestran las principales características de los SMBDm

comerciales de mayor uso; estos productos pertenecen a grandes compañías de

desarrollo de Software, también especializadas en el desarrollo de SMBD.

Cuadro 1. SMBDm más importantes y sus principales características

La selección de un sistema manejador de bases de datos móvil depende en gran

medida de las necesidades del usuario a quien va dirigida la aplicación o sistema

y las características de los dispositivos móviles con los que se trabajará.

En todo caso, si ya cuenta con algún SMBD ‚fijo‛ de las compañías ya citadas, la

mejor opción es adquirir una versión del mismo para el dispositivo móvil, por

cuestiones de compatibilidad y facilidad de configuración; por ejemplo, Oracle

Lite para versiones de ORACLE o DB2 Everyplace de IBM, etcétera. Por otra

parte, si la plataforma de desarrollo utilizada es Microsoft, lo mejor es usar

MSSQL CE o SQL Anywhere, soluciones completas para plataformas .NET,

aunque la segunda es un poco más limitada. Si desarrolla en la plataforma de

JAVA, PointBase Micro es una solución excelente ya que la base de datos puede

estar embebida en las aplicaciones; debido al footprint pequeño, es compatible con

Page 302: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

288

J2ME y es fácil de implementar. Por otra parte, la nueva versión de MSSQL CE,

incluida en SQL Server 2008, es una solución más para aplicaciones que requieren

una base de datos ‚embebida‛, ya que es ligera y permite el manejo de gran

cantidad de información, además de que su compatibilidad con los productos de

Microsoft la hace una opción interesante.

Una característica que presentan todos los SMBDm (véase el cuadro 1) es el uso

de un subconjunto del lenguaje SQL, uno de los principales para el manejo de

bases de datos. Además la posibilidad de sincronizar de manera inalámbrica la

información de nuestro dispositivo móvil con los grandes servidores, permite la

movilidad de los usuarios así como la disponibilidad y actualización constante de

la información.

Sin duda, las ventajas de manipular una base de datos desde un dispositivo

móvil son muchas; manejos de inventario sin necesidad de cables, consultas de

expedientes o información de clientes, pedidos, alumnos; administración de

recursos, ventas, compras y transacciones; agendas telefónicas y un sin fin de

aplicaciones más, las cuales sin duda facilitan en gran medida las actividades

diarias de empresarios, trabajadores y usuarios.

5 Conclusiones

La necesidad de mantener organizada y almacenada la información de manera

permanente llevó al surgimiento de las bases de datos, las cuales al comienzo se

basaban en sistemas manuales para la administración de archivos en papel; poco

a poco los avances tecnológicos llevaron a estos sistemas a las computadoras,

comenzando así el desarrollo de los grandes sistemas manejadores de bases de

datos que seguimos utilizando en la actualidad. Además de Internet y del

surgimiento de lenguajes de programación que permitían una mejor

manipulación de los SMBD, el cómputo móvil influyó mucho en el desarrollo de

aplicaciones para el manejo de información, ya que la necesidad de gestionar

datos se trasladó a las plataformas móviles, surgiendo así los sistemas

manejadores de bases de datos móviles o SMBDm.

En este artículo se presentaron cinco manejadores de bases de datos móviles con

características ideales para clientes en movimiento, provenientes de compañías

como Microsoft, Oracle e IBM. Estas compañías comenzaron a desarrollar sus

productos para plataformas móviles con la finalidad de ofrecer soluciones

completas a los corporativos, empresas y usuarios que comenzaban a incluir

dispositivos móviles para la realización de sus actividades diarias.

Se explicaron también las principales características de las bases de datos

móviles respecto al soporte de transacciones, la compatibilidad con la norma

ANSI-SQL92, el encriptamiento y la conectividad vía JDBC/ODBC, entre otros

aspectos.

Page 303: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

289

Sin duda, la tendencia al uso de los dispositivos móviles seguirá creciendo; el

desarrollo de nuevas y mejores SMBDm continuará y la movilidad seguirá

formando parte de nuestras vidas, por lo tanto, suponemos que el desarrollo de

aplicaciones para dispositivos móviles enfrentará aún más retos en los próximos

años.

Agradecimientos

Este trabajo est{ soportado por el proyecto ‚Suite de Servicios para Usuarios de

Dispositivos Móviles (SUSEDIM)‛ clave 886.08-P, financiado por la DGEST, y ha

sido desarrollado durante el XXI Verano Científico de la AMC y el XIV Verano de

la Investigación Científica del Programa DELFIN.

Referencias 1. Andrews, J. G., A. Ghosh y R. Muhamed, Fundamentals of WiMAX,

Prentice-Hall, 2007.

2. Bagrodia, R., W.W. Chu, L. Keinrock y G. Popek, ‚Vision, Issues and

Architecture for Nomadic Computing‛, en IEEE, Personal Communications, vol.

2, núm. 6, 1995, pp. 14-27.

3. Barbar{, D., ‚Mobile Computing and Databases: A Survey‛, en IEEE

Transactions on Knowledge and Data Engineeing, vol. 11, núm. 1, 1999.

4. Batni, C., S. B. Navathe, S. Ceri, M. García y D. Romero Ibancos, Diseño

conceptual de BD, Adisson Wesley-Díaz de Santos, 2004.

5. DataMirror-IBM Company, PointBase Embedded Developer’s Guide Version

5.7, 2007.

6. DataMirror Mobile Sol, PointBase System Guide Version 4.8, 2004.

7. Date, C. J., Introducción a los sistemas de bases de datos, 7a. edición, Prentice

Hall, México, 2001.

8. Ferro, E. y F. Potorti, ‚Bluetooth and WI-FI Wireless Protocols: A Survey

and a Comparision‛, en IEEE Wireless Communications, vol. 12, núm. 1, 2004,

pp. 12-26.

9. Groff, G. R. y P. N. Weinberg, The Complete Reference SQL, 2a. edición,

McGraw-Hill, 2002.

10. Hu, Y. y O. K. Li, ‚Satellite-Based Internet: A Tutorial, en IEEE,

Communication Magazine, vol. 39, núm. 3, 2001, pp. 154-162.

11. IBM, IBM WebSphere Everyplace Suite Version 1.1, 2000.

12. Imielinski, T. y H. F. Korth, Mobile Computing Chapter 1. Introduction to

Mobile Computing, Kluwer Academic Publishers, 1996.

13. Juntao Yuan, M., Enterprise J2ME Developing Mobile Java Applications,

Prentice Hall, Estados Unidos, 2007.

Page 304: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

290

14. Kahn, J. M. y J. R. Barry, ‚Wireless Infrared Communications‛, en

Proceedings of the IEEE, vol. 85, núm. 2, 1997.

15. Kumar, V., Mobile Databases Systems. Computer Science and Informatics

University of Missouri, Wiley-Interscience, 2006.

16. Leiter, C., D. Wood, M. Cierkowski y A. Boettger, Beginning Microsoft

SQL Server 2008 Administration, 2009.

17. McGee, W. C., ‚The Information Management System IMS/VS. Part 1:

General Structure and Operation‛, en IBM System Journal, 1977.

18. Microsoft Corporation, Información General de SQL Server 2005 Compact

Edition, MSDN, 2009.

19. Newswire, P. R., PointBase Extends 100% Pure JAVA Database to Include

Devices Internet Appliances and Embedded Servers, 1999.

20. Nori, A. K., ‚Mobile and Embedded Databases‛, en ACM International

Conference on Management of Data, 2007.

21. Oracle, Oracle Database Lite 10Gr3, Technical White Paper, 2008.

22. Oracle, Oracle Timeline, en Internet

(http://www.oracle.com/timeline/index.html).

23. Papazian, P. B., G. A. Hufford, R. J. Achatz y R. Hoffman, ‚Study of the

Local Multipoint Distribution Service Radio Channel‛, en IEEE Transactions on

Broadcasting, vol. 43, núm. 2, 2008.

24. PointBase, Micro Developer’s Guide Version 4.7, 2003.

25. Reyna, A. y L. Gama-Moreno, Manejador de Archivos Embebido para

Dispositivos Móviles, tesis de maestría, Instituto Tecnológico de Zacatepec,

2005.

26. Silbershatz, A., H. F. Korth y S. Sudarshan, Fundamentos de diseño de bases

de datos, 5a. edición, McGraw-Hill, Madrid, 2006.

27. SQL Anywhere 11 and Microsoft .NET: A whitepaper from Sybase

iAnywhere. Whitepaper (2008)

28. Tanebaum, A. S., Redes de computadoras, 4a. edición, Pearson-Prentice

Hall, 2003.

29. Ward, P. y G. Dafoulas, Database Management Systems, Thomson-

Middlesex University Press, 2006.

Page 305: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

291

Grid Computing

Vanessa Hamar

Resumen. La idea de ‚grid computing‛ o ‚grid‛ no es reciente, aunque en los

últimos años su auge ha ido en aumento, al punto de convertirse en una

herramienta con la cual los usuarios, en su mayoría científicos, hacen uso de

recursos heterogéneos, tanto de cálculo y almacenamiento como de ancho de

banda, porque todos ellos están distribuidos geográficamente alrededor del

mundo. Actualmente, los grids se ocupan para solventar problemas complejos,

asegurando que los datos sean manejados de manera íntegra y segura, gracias a

sus estándares. En este artículo se presentan los conceptos básicos relacionados

con los grids, se esbozan ciertos acontecimientos alrededor de su surgimiento, se

presenta una breve comparación entre los conceptos de ‚grid computing‛ y ‚cloud

computing‛, y al final se describen dos de los middlewares disponibles para los

usuarios que pertenecen al proyecto EELA2.

Palabras clave: grid computing, middleware, gLite, DIRAC.

Sumario: 2 Antecedentes 3 Grid computing 4 Estándares 4.1 Estándares utilizados por la

herramienta Globus 5 Seguridad en el grid 6 Grid computing, cloud computing 7

Middlewares en EELA2 7.1 gLite 7.2 DIRAC Conclusiones Referencias

1 Introducción

Hoy en día los científicos se encuentran con problemas cada vez más complejos

que requieren de un mayor poder de cálculo y del análisis de grandes cantidades

de datos y, por ende, necesitan más capacidad de almacenamiento. Aunado a

esto, como son científicos cuyos centros de trabajo están distribuidos en todo el

mundo y es fundamental que la información que obtienen sea compartida con

sus colegas, ha surgido el concepto de ‚grid computing‛ o ‚grid‛.

El grid es solamente otra forma de computación distribuida; no obstante, permite

la integración de recursos heterogéneos provenientes de organizaciones

distribuidas en distintos lugares del mundo, por medio de Internet, cuya red se

aprovecha como una plataforma de servicios de computación y no sólo como una

fuente de información.

Entre las ventajas de los grids se encuentra el uso de los recursos ociosos de la red

para integrar aplicaciones heterogéneas y diversas, aumentando así la capacidad

de cálculo de las organizaciones sin que éstas tengan que hacer grandes

Page 306: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

292

inversiones. Otra ventaja es que los usuarios acceden al grid desde un único

punto de entrada o interfaz desde cualquier parte del mundo.

Otra ventaja más es que integra recursos de control o equipos que generan data

en tiempo real, permitiendo el análisis de los datos en tiempo casi real —por

ejemplo, los datos enviados por los telescopios.

Los grids involucran organizaciones e individuos que comparten recursos

integrados y coordinados sin que por ello dejen de ser autónomos, flexibles y

seguros; estas características obligan a que los procedimientos a seguir por las

organizaciones e individuos estén estandarizados. Los grids incluyen recursos

computacionales y humanos —en gran cantidad—, quienes deben trabajar en la

misma dirección.

En este artículo se exponen brevemente los antecedentes de los grids, los

conceptos básicos relacionados, algunos de los puntos clave repecto de la

seguridad y se hace una comparación entre el grid computing y el cloud computing.

Finalmente, se describen algunos detalles acerca de dos de los middlewares

disponibles para los usuarios del proyecto EELA2, gLite10 y DIRAC.11

2 Antecedentes

Una definición temprana de este concepto fue dada por Len Kleinrock en 1969:

‚probablemente veremos el esparcimiento de las utilidades de computación tal

como se presentan la electricidad y el teléfono, como servicios individuales en

casas y oficinas en todo el país‛.1

El término ‚grid computing‛, originado a comienzos de los años noventa, se

expuso como una metáfora donde el acceso al poder de cómputo debe ser tan

fácil como el acceso de los usuarios a la red eléctrica.2 En esos años empiezan a

surgir proyectos siguiendo la idea de este tipo de computación. El primer

proyecto que utilizó cientos de computadores independientes para crear códigos

encriptados fue el llamado distributed.net, mejor conocido como dnet, en 1997.

La primera definición del grid computing fue de Ian Foster y Carl Kesselman, a

comienzos de 1998: ‚un grid computacional es una infraestructura de hardware y

software que provee acceso consistente a bajo costo a recursos computacionales de

alto nivel‛.

El segundo proyecto exitoso y popular en la historia de la computación

distribuida es el SETI@home_project,12 el cual reunió más de dos millones de

personas voluntarias distribuidas en todo el mundo, quienes instalaron el agente

de software desde que el proyecto comenzó en mayo de 1999, probando de esta

manera que la computación distribuida puede acelerar los resultados de los

proyectos computacionales manteniendo los costos a niveles manejables.

Ian Foster, Carl Kesselman y Steve Tuecke son reconocidos como los padres del

grid,3 siendo los líderes en el desarrollo del Globus Toolkit,13 el cual incorpora la

Page 307: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

293

capacidad de calculo y de almacenamiento, aspectos de seguridad y monitoreo.

Su diseño permite el desarrollo de servicios utilizando la misma infraestructura,

como, por ejemplo, diferentes mecanismos de notificación, servicios de

información de los estados del grid, etcétera. Globus Toolkit es el estándar de

facto para la construcción de las herramientas.4

3 Grid computing

El grid puede definirse como: ‚un sistema de software y hardware heterogéneos

que permite compartir recursos de cálculo y de almacenamiento utilizando la red

para solucionar problemas de usuarios que pertenecen a una o varias

organizaciones que están distribuidas geogr{ficamente‛. Siguiendo las

similitudes de los grids con las redes eléctricas, éstos deben tener ciertas

características básicas: a) la conexión debe estar disponible en cualquier momento

y desde cualquier lugar; b) debe ser altamente confiable, seguro, transparente y

fácil de usar por los usuarios.

En el artículo “What is a Grid? A Three Point Checklist”,2 Ian Foster hace referencia

a tres puntos clave: 1) los recursos de cálculo no son administrados de una

manera centralizada; 2) se utilizan estándares abiertos, y 3) la calidad del servicio

a alcanzar no es trivial.

De esta manera, el hardware que puede ser parte del grid, como es heterogéneo y

está distribuido geográficamente, constituye una gran ventaja porque reúne todo

tipo de recursos, aumentando las capacidades de cómputo. Además, la

administración se hace por medio de varios individuos cuyas prácticas de

seguridad y modos de administración son diferentes. Finalmente, como los

recursos están expuestos a fallas, están conectados a diferentes redes.

El software, por su parte, agrupa tanto los recursos como las aplicaciones, los

CPU, etcétera, y debe permitir que éstos estén disponibles en todo momento de

manera sencilla y segura. El hecho de que se utilicen estándares abiertos pone al

software al alcance de todas las organizaciones. La calidad del servicio de los grids

debe cumplir con las expectativas de los usuarios, garantizando la seguridad e

integridad de los datos, la detección de intrusos, el rendimiento, el monitoreo de

los recursos, balanceo de cargas, manejo de fallas, manejo de recursos y muchos

otros factores.

Otro concepto relacionado con los grids es el de las organizaciones virtuales (VO,

por su siglas en inglés). Éstas son organizaciones que comparten recursos entre sí

y los usuarios pueden pertenecer a una o más de ellas. Por otro lado, un

‚dominio administrativo‛ es una colección de recursos controlados por un grupo

único de soporte encargado de la instalación, el mantenimiento y la seguridad del

sistema, el cual tiene el acceso como su administrador.

El middleware corresponde a una capa que sirve de mediadora entre los recursos

Page 308: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

294

distribuidos y los usuarios. Es una herramienta de software que ofrece un

conjunto de tecnologías que permiten el desarrollo de herramientas grid y sus

aplicaciones, además de definir y estandarizar los protocolos del grid y los APIs,

enfocándose en aspectos de las relaciones entre dominios administrativos, pero

no relativos a clústers; es decir, se trata de recursos de colaboración utilizados por

múltiples organizaciones y que están integrados en los dominios internos de cada

dominio, creando una capa de servicio colectivo.

4 Estándares

Los grids son de naturaleza dinámica; cambian constantemente —se agregan

usuarios, se incluyen y se eliminan recursos—, por lo tanto, la estandarización en

esta área tiene mucha importancia. La estandarización asegura tanto la

operabilidad entre los diferentes middlewares e implementaciones —para que el

usuario utilice los componentes que requiera—, como el que el sistema sea

funcional en diversas plataformas.

Globus Alliance y sus socios publicaron una serie de estándares como los

siguientes:

Open Grid Services Architecture (OGSA). Son un conjunto de estándares y

protocolos que definen técnicamente cómo debe ser el desarrollo mundial

de los grids. OGSA aprovecha los servicios Web con el fin de establecer

una cooperación a gran escala y facilitar el acceso a aplicaciones mediante

Internet.

Un conjunto de especificaciones diseñadas para integrar el grid y los estándares

del servicio Web. Las nuevas especificaciones del WS-notation y WS-

Resource Framework proveen una infraestructura basada en estándares

para que los usuarios compartan recursos de computación tanto dentro

como fuera de su organización, vía Internet.5

4.1 Estándares utilizados por la herramienta Globus

La herramienta Globus ha sido armada utilizando estándares provistos por

organizaciones tales como Internet Engineering Task Force (IETF),14 World Wide

Web Consortium (W3C),15 Organization for the Advancement Standards

(OASIS)16 y el Global Grid Forum (GGF).17 Actualmente, convergen los

estándares del grid con los de los servicios Web. Como ejemplo de los protocolos

y estándares pertenecientes a los middleware, se describen a continuación algunos

de los que están relacionados con la herramienta Globus:

SSL/TLS v1 [Secure Sockets Layer (SSL v2/v3), Transport Layer Security

(TLS v1), de IETF]. Son protocolos de criptografía que permiten establecer

Page 309: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

295

una conexión segura durante la transferencia de datos a través de Internet.

LDAP v3 (Lightweight Directory Access Protocol, de IETF).Es un

protocolo que se utiliza para consultar y modificar servicios de directorio

sobre TCP-IP.

X.509 Proxy Certificates (IETF). Es el estándar utilizado para las

infraestructuras de llave pública (PKI, por sus siglas en inglés), el cual

especifica los formatos estándares para los certificados de clave pública y el

algoritmo que se utiliza para la validación de los certificados.

HTTP [Hyper Text Transfer Protocol (W3C)]. Protocolo de

comunicación utilizado para transferir información en la Web. Es un

protocolo de petición-respuesta entre clientes y servidores que utiliza TCP.

GridFTP v1.0 [Grid File Transfer Protocol (GGF)]. Protocolo de

transferencia de datos basado en el protocolo de Internet FTP, el cual fue

extendido para proveer operaciones de alto rendimiento y satisfacer los

parámetros de seguridad requeridos por el grid.

OGSA-DAI [Database Access and Integration Services (GGF)]. Es un

producto del middleware que permite acceder a las bases de datos por

medio del grid.

WSDL 2.0 [Web Service Description Language (W3C)].

5 Seguridad en el grid

La seguridad en el grid y en los sitios son dos cosas que se atacan de diferente

manera. Los problemas de seguridad en los sitios sólo afectan al sitio en sí

mismo; sus administradores levantan una barrera y tratan de que el problema no

se repita. En cambio, los problemas de seguridad en el grid afectan a todos los

sitios que lo conforman y su solución puede que involucre a más de un

administrador. La meta de la seguridad en el grid incluye a las diferentes

organizaciones virtuales, sin coartar la autonomía de los sitios.

Entre las consideraciones de seguridad que deben ser tomadas en cuenta está el

que los usuarios deben ser reconocidos en todos los sitios que compartan

recursos con la organización virtual a la que pertenezcan. Es decir, es necesario

autentificar y autorizar a los usuarios de tal manera que puedan utilizar todos los

recursos disponibles en el grid con un único log-in. Desde el punto de vista de los

usuarios, el grid debe garantizar la confidencialidad de sus datos; para esto, se

recurre a una serie de algoritmos para pasar de archivos de texto plano a archivos

encriptados y viceversa. El grid garantiza la integridad chequeando la data con

funciones hash, o también, los algoritmos MD5. La autentificación de los usuarios

se logra presentando algún token que no puede ser modificado; por ejemplo, un

Page 310: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

296

certificado de usuario firmado por una autoridad de certificación reconocida.

Cada usuario, servidor o servicio en el grid debe ser autentificado. Los

certificados incluyen cuatro atributos de información:

Distinguish Name (DN): el cual identifica la entidad a la cual representa el

certificado.

La clave pública que pertenece a la entidad.

La identidad de la autoridad de certificación (CA, por sus siglas en

inglés) que ha firmado el certificado.

La firma digital de la CA.

El formato de codificación de estos servicios es el X509, un formato de data para

certificados, establecido por el IETF. Estos certificados pueden ser compartidos

con otro software, como, por ejemplo, los diferentes navegadores Web.

La no repudiación es la firma digital que se utiliza para afirmar que una entidad

es responsable por un mensaje o acción. El algoritmo Digital Signature Algorithm

(DSA) se usa para firmar pero no para encriptar, además, se incluye el Time

Stamp Authority (TSA), el cual sirve para colocar el lugar y el momento en el que

fue realizada la transacción.

La autorización puede ser realizada directamente por el usuario o por un

servidor de proxies cuando el usuario realice la delegación.

La confianza se define como la aceptación de un tercero en la manera de controlar

y monitorear sus recursos, suponiendo que el comportamiento va a ser el

apropiado y que seguirá las políticas de seguridad, autorización y autentificación.

6 Grid computing, cloud computing

Con la cloud computing las compañías escalan a capacidades masivas en un

instante, sin invertir en una nueva infraestructura, entrenar personal o comprar

nuevas licencias de software. La cloud computing es un beneficio para los pequeños

y medianos negocios que quieren hacer outsourcing de su infraestructura de data

o grandes compañías que quieren bajar la carga de la capacidad sin incurrir en el

alto costo de construir centros de datos internamente. En ambos casos, los

consumidores del servicio usan lo que necesitan por medio de Internet y pagan

sólo lo que usan. La idea subyacente es que el consumidor o usuario no tenga

necesariamente una PC y pueda usar una aplicación desde una PC cualquiera o

compre una versión especifica para un PDA u otros dispositivos. El usuario no es

propietario de la infraestructura, software o plataforma en la cloud, no se encarga

del mantenimiento de la red ni de los servidores. El consumidor puede acceder a

múltiples servidores sin saber dónde se encuentran localizados.

Entre las similitudes de estos dos sistemas están:

Ambos son escalables.

Page 311: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

297

Los usuarios pueden realizar varias tareas de manera simultánea en uno

o varios sitios.

Ambos poseen acuerdos de niveles de servicio (SLA, por sus siglas en

inglés) que garantizan la disponibilidad.

Entre las diferencias, se encuentran las siguientes:

El grid computing pone énfasis en almacenamiento de data-intensiva; la

cloud computing permite almacenar una cantidad de objetos, bien sea

archivos de 1 byte, 5 GB o de TB.

El grid computing se enfoca en operaciones de cálculo intensivo; la cloud

computing ofrece dos tipos de cálculos, los cálculos estándar o el cálculo

intensivo.6

El grid computing es de código abierto; la cloud computing no lo es.7

En la cloud computing, los usuarios dependen del proveedor de servicios;

no así en el grid computing.

La cloud computing es hasta ahora un servicio por el cual el usuario debe

pagar; el grid computing está financiado por los sitios que lo integran y por

proyectos.

La cloud computing es el próximo paso en la evolución de la computación

distribuida; por ahora, se deben buscar y crear herramientas para hacer la

transición de los usuarios y tratar de que el middleware utilizado por la cloud

computing sea de código abierto.

7 Middlewares en EELA2

En el proyecto EELA2 los usuarios pueden escoger entre varios middlewares; en

esta sección se da una introducción de dos de ellos: gLite y DIRAC.

7.1 gLite

gLite es un middleware para hacer grid computing y se está utilizando en los

experimentos del CERN18 LHC y en una gran variedad de dominios científicos.

gLite provee un marco para construir aplicaciones del grid y emplear el poder de

la computación y del los recursos distribuidos por medio de Internet. Ha sido

adoptado por más de 250 centros de computación y más de 15 000 investigadores

en Europa y el resto del mundo, Latinoamérica inclusive.

gLite es un conjunto de componentes distribuidos cuya función es la construcción

de un grid mediante la integración de dichos componentes, entre los que se

cuentan:

User Interface (UI). Es el punto de entrada al grid para los usuarios, quienes

ejecutan comandos sencillos para hacer una lista de los recursos disponibles para

Page 312: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

298

ejecutar los trabajos; desde allí se envía, cancela, recupera la salida y se muestra el

estatus de los trabajos; también se maneja la data por medio de sus elementos.

Computing Element (CE). Es un servicio que reúne una parte o todos los recursos

del sitio. Es una interfaz a los clústers, en la cual se instala un sistema de manejo

de recurso locales (LRMS, por sus siglas en inglés) para controlar un conjunto de

nodos de trabajo donde se van a ejecutar los trabajos enviados por los usuarios.

Storage Element (SE). Provee acceso uniforme al almacenamiento y soporta

protocolos de acceso a data e interfaces.

Information Service (IS). Provee información acerca de los recursos que son parte

del grid.

Workload Management System (WMS). Acepta los trabajos y los asigna al mejor CE

que esté disponible. Para esto, se utiliza el Push Model. Los trabajos son

asignados tan pronto como sea posible y quedan en lista de espera hasta que el

recurso esté libre para ser ejecutado.

Virtual Organization Membership Service (VOMS). Es una base de datos

estructurada de manera simple, como base de datos de cuentas con formatos

fijos. Con ella se hace el intercambio de información como un único log-in o

tiempo de expiración. Maneja múltiples organizaciones virtuales.8

7.2 DIRAC

El proyecto DIRAC fue desarrollado inicialmente por el LHCb19 como un sistema

de producción masivo para la simulación de data. Actualmente, es un marco para

la construcción de sistemas distribuidos que da acceso a diferentes tipos de

recursos computacionales. En este caso, el WMS está compuesto por una cola

central de trabajos y un conjunto de agentes que se ejecutan en los diferentes

recursos de computación. Estos agentes pueden ser ejecutados en un grid, un

clúster o una computadora personal. Los agentes o pilotos son ejecutados como

trabajos normales del grid de gLite, por ejemplo, y cuando el recurso está

disponible se comunica con la cola central de trabajos y le es asignado un trabajo

para su ejecución. Este trabajo será asignado de acuerdo con sus características y

prioridades y con las capacidades del recurso. Es decir, se utiliza el Pull Model y

el trabajo se envía cuando el recurso está disponible. Este modelo ha sido

probado en situaciones extremas.

El DIRAC incluye todos los recursos de cálculo y almacenamiento instalados con

el middleware gLite. El equipo DIRAC desarrolló un Web Portal desde el cual los

usuarios pueden consultar el estado y eliminar o reenviar sus trabajos. El DIRAC

también soporta los trabajos MPI; siguiendo la idea de los trabajos piloto, se

instala en los sitios una implementación de MPI, MPICH2,20 con la idea de que los

trabajos de MPI sean ejecutados en sitios que explícitamente provean o no la

capacidad de ejecutar trabajos de manera paralela.

Page 313: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

299

Conclusiones

Los grids son una realidad, continúan desarrollándose y cada día aumenta el

número de posibilidades y de científicos que lo utilizan para resolver los

problemas con los cuales se encuentran y que requieren de las grandes

capacidades de cálculo que proveen organizaciones diferentes.

Page 314: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

300

Referencias

1. Foster, I. What is the Grid? A Tree Point Checklist, Argonne National

Laboratory & University of Chicago, julio de 2002.

2. Foster, I. y C. Kesselman, The Grid: Blueprint for a New Computing

Infrastructure, Argonne National Lab & University of Chicago, 1998.

3. Braverman, A., ‚Gather of the Grid‛, University of Chicago Magazine, abril

de 2004. En Internet (http://magazine.uch icago.edu

/0404/features/indesx.shtml), página consultada el 1 de noviembre de 2009.

4. Grid Computing, en Internet, (http://en.wi ki pe dia.org/

wiki/Grid_computing), página consultada el 1 de noviembre de 2009.

5. Zaglacas, G., Grid Computing: Meeting the Challenges of an On Demand

World, IBM, septiembre de 2004. En Internet

(http://www.ibm.com/developerworks/rational/library/content/RationalEdge/sep04/za

glakas/index.html), página consultada el 1 de noviembre de 2009.

6. Myerson, J., Cloud Computing versus Grid Computing, IBM, marzo de 2009.

En Internet (http://www.ibm.com /developer works/web/library/wa-

cloudgrid/), página consultada el 1 de noviembre de 2009.

7. An EGEE Comparative Study: Grids and Clouds. Evolution or Revolution,

CERN, julio de 2008. En Internet (https://edms.cern.ch /file/925013/4 /EGEE-

Grid-Cloud-1_2.pdf), página consultada el 1 de noviembre de 2009.

8. gLite, en Internet (http://en.wiki pedia.org/wiki/GLite), página consultada

el 1 de noviembre de 2009.

9. DIRAC Site, en Internet (https://twiki.cern.ch/ twiki/bin

/view/LHCb/DIRAC3Site), página consultada el 1 de noviembre de 2009.

10. En Internet (http://glite.web.cern .ch/glite/).

11. En Internet (https://twiki.cern.ch/twik i/bin/view/LHCb/DIRAC3Site).

12. En Internet (http://setiathome.berk eley.edu/).

13. En Internet (http://www.globus.org/).

14. En Internet (http://www.ietf.org/).

15. En Internet ( http://www.w3.org).

16. En Internet ( http://www.oasis-open.org).

17. En Internet (http://www.globalgrid forum.org).

18. En Internet (http://public.web.cex rn.ch/public/).

19. En Internet (http://lhcb.web.cern.ch /lhcb/).

20. En Internet (http://www.mcs.anl.gov/ research/projects/mpich2/).

Page 315: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

301

Herramienta Computacional para Determinar la

Confiabilidad de los Activos Reparables de

Distribución de CFE

Teresa Natalia Figueroa Ríos, Leopoldo Altamirano Robles, Benjamín Sierra

Rodríguez

Resumen. La Comisión Federal de Electricidad (CFE) es una empresa de clase

mundial que tiene que realizar acciones de optimización en el uso de activos fijos,

tomando en consideración que se deben disminuir los tiempos de fuera de

servicio, los costos de mantenimiento, los costos de operación y los accidentes de

trabajo, y elevar la productividad, el desempeño, la vida útil del equipamiento y

la seguridad. Por tal razón, el LVC-INAOE le ha propuesto a la CFE el desarrollo

de un sistema para determinar el índice de confiabilidad de sus equipos y

materiales de distribución. En este trabajo se presentan el estudio, el análisis y la

implementación computacional de las herramientas probabilísticas y estadísticas

que permiten la obtención de la confiabilidad de los activos reparables.

Palabras clave: confiabilidad, estadística, riesgo, herramienta computacional.

Abstract. Federal Commission of Electricity (CFE) is a world-wide class company

that has to develop strategies to optimize the use of fixed assets, which

considering that it has to decrease out-service time, maintenance and operation

costs, and work accidents, and it has to increase productivity, performance,

equipment useful life, and security. For these reasons LVC-INAOE has proposed

CFE develop a system which calculates the equipment and materials reliability

ratio. This paper describes the study, analysis and computer implementation of

the probabilistic and statistical theory to calculate the reparable assets reliability

ratio.

Keywords: Reliability, Statistical, Risk, Computer Tool.

Sumario: 1 Introducción 2 Confiabilidad de equipos reparables 2.1 Modelo de Harkov 3

Diseño y desarrollo de la herramienta computacional que determina la

confiabilidad de los activos reparables 3.1 Descripción de clases 3.1.1 Clase

Page 316: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

302

‚activos reparables‛ (ActivosReparables) 3.1.2 Clase ‚par{metros‛ (Parametros)

3.1.3 Clase ‚tiempos de reparación‛ (TiempoReparacion) 3.2 Validación de la

herramienta computacional 4 Conclusiones Referencias

1 Introducción

La Comisión Federal de Electricidad (CFE) tiene como misión asegurar a sus

clientes el servicio de energía eléctrica en condiciones de cantidad, calidad y

precio. Uno de los procesos que le permite cumplir con esta misión es la

prevención de las fallas en equipos; para esto, es necesario hacer estudios

estadísticos que diagnostiquen el comportamiento operativo de los equipos y

obtener modelos probabilísticos para determinar la incidencia de fallas y el índice

de confiabilidad y que posteriormente estos resultados sean considerados como

la base para la toma de decisiones que eviten la ocurrencia de fallas. Es decir, el

estudio y análisis de la confiabilidad de los equipos de la CFE son necesarios para

la toma de mejores decisiones a lo largo de la vida útil de cada equipo, ya que

actualmente la confiabilidad se ha convertido en una herramienta indispensable

para la gestión moderna del diseño, construcción, operación y mantenimiento de

las principales tecnologías existentes, la cual se puede aplicar en todo tipo de

procesos industriales, incluidos la generación, transmisión, transformación y

distribución de energía eléctrica.

En este trabajo se mostrará la herramienta computacional que sirve para la

obtención del índice de confiabilidad y otros índices estadísticos que

complementan la información para la toma de decisiones correspondientes al

mantenimiento, operación, reemplazo o compra de activos reparables.

Un equipo reparable es aquel que después de sufrir una falla se puede arreglar de

tal forma que vuelva a realizar la función para la cual fue diseñado. Los estados

de tales equipos son dos: en operación o en reparación. Es conveniente utilizar un

modelo de Markov que represente el comportamiento del equipo reparable y por

medio de éste obtener la confiabilidad y disponibilidad del equipo.

2 Confiabilidad de equipos reparables

Un equipo reparable es aquel cuya condición operativa puede restaurarse

después de fallar, con una reparación.1 Esta consideración implica que en su vida

puede ocurrir más de una falla, y es ésta la diferencia fundamental con los

equipos ‚no reparables‛, en cuya vida sólo puede ocurrir una única falla. Un

esquema básico del comportamiento de un equipo reparable se muestra en la

figura 1.

Page 317: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

303

Fig 1. Representación del ciclo operación-falla-reparación-operación de un

componente.

El equipo es puesto en operación y se encuentra funcionando al tiempo t = 0.

Cuando el equipo falla, es reparado. Tenemos entonces una secuencia de tiempos

de vida o tiempos de funcionamiento T1, T2,... para el equipo; estos tiempos

siguen cierta función de distribución F(t) = P(Ti ≤ t); i = 1, 2, <, y tiempo medio

para la falla MTTF = E(T). Cuando el equipo falla, estará fuera de servicio por un

cierto periodo, al que llamaremos ‚tiempo de reparación del equipo‛.

Asumiremos que los tiempos de reparación D1, D2,< son independientes e

idénticamente distribuidos (i.i.d), con función de distribución F(t) = P(Di ≤ t); i = 1,

2, <, y tiempo medio de reparación MTTR = E(D).

2.1 Modelo de Markov

Un activo reparable en cualquier momento puede estar trabajando normalmente

o tener una falla. Los estados del elemento se representan en la figura 2.

Fig. 2. Representación de los estados de los equipos.

Sobre esto, las variables más importantes al momento de un análisis son, sin

lugar a duda, el número de ocurrencias de fallas y sus duraciones. Por ende, la

estimación de estos datos se torna una misión indispensable. Esta estimación

presenta cierta complejidad debido a que la ocurrencia de una falla es un hecho

fortuito, difícil e incluso imposible de anticipar.

Así, entonces, el sistema es continuo en el tiempo, con estados discretos finitos,

con lo que se ajusta muy bien a una representación mediante los procesos

Page 318: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

304

continuos de Markov.2 Cada elemento reparable, cuando falla, se repara, lo cual

permite establecer una condición de operación normal del equipo o de falla.1

El modelo de los componentes considera sólo dos estados (falla y operación); el

modelo de Markov es perfectamente adecuado para determinar la probabilidad

del estado y la disponibilidad; sin embargo, otros parámetros de confiabilidad,

tales como la frecuencia de encontrarse en un estado y la duración promedio de

residencia en dicho estado entrega información importante. La probabilidad de

que un elemento esté en operación está dada por:

(10)

Donde m es el tiempo promedio de operación y r es el tiempo medio de

reparación. La aplicación de esta técnica puede resumirse en lo siguiente:

1. Evaluar las probabilidades de los estados.

2. Evaluar la frecuencia de encuentro en un estado.

3. Evaluar la duración media de cada estado.

Consideremos un componente reparable con una tasa de fallas y una tasa de

reparación µ, donde el componente falla y es reparado inmediatamente. El

componente tiene dos estados: el estado 0, donde el activo está en operación, y el

estado 1, donde el activo esta fuera de servicio.3

A la probabilidad de que un componente experimente una falla por unidad de

tiempo, dado que el componente es reparable, se le llama ‚tasa de falla r(t)‛.

(11)

El tiempo promedio entre fallas (MTTF) se obtiene mediante:

(12)

Donde f(t) es la función de probabilidad de los tiempos hasta la falla, la cual

depende del tiempo. Si la función de confiabilidad es R(∞)=0, entonces el MTTF

puede expresarse como:

(13)

Si consideramos el proceso de falla-reparación como una cadena donde t=0 indica

el tiempo en que el componente ha fallado, a la probabilidad de que el activo sea

rm

mopP

)(

1)()(

mttr

0

)( dtttfMTTF

0

)( dttRMTTF

Page 319: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

305

reparado completamente antes de un tiempo t se le llama ‚distribución de

reparación G(t)‛.

El tiempo de reparación es una variable aleatoria, para la cual podemos tener su

valor esperado; el valor medio de reparación (MTTR) se obtiene de la siguiente

manera:

(14)

Si G(∞) = 1, entonces el MTTR puede escribirse como

(15)

Para el proceso de falla-reparación-falla, donde X(t) es la variable que define el

estado del elemento; es decir, si x(t) = 0 quiere decir que el componente está en

operación y x(t) = 1 indica que el componente está en estado de falla:

(16)

La es la probabilidad de que el elemento falle al

tiempo t + dt, dado que la componente esta funcionando al tiempo t.

3 Diseño y desarrollo de la herramienta computacional que

determina la confiabilidad de los activos reparables

Esta herramienta fue creada con el lenguaje de programación orientada a objetos

JAVA.4 El proceso de desarrollo de implementación de la sección anterior en la

herramienta computacional se muestra en el diagrama de flujo de la figura 3, el

cual representa a grandes rasgos las etapas que se siguen para obtener la

confiabilidad de equipos reparables.

0

)( dtttgMTTR

dttGMTTR

0

)(1

dttxdttxPP

dttxdttxPP

dttxdttxPP

dttxdttxPP

)1)(|0)(()1|0(

1)1)(|1)(()1|1(

1)0)(|0)(()0|0(

)0)(|1)(()0|1(

)0)(|1)(( txdttxP

Page 320: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

306

Fig. 3. Diagrama de flujo del proceso llevado a cabo en la herramienta

computacional.

El funcionamiento de la herramienta se basa en tres clases principales:

Clase activos reparables

Clase parámetros

Clase tiempos de reparación

La interacción entre las clases permite la obtención de la confiabilidad, el tiempo

esperado de falla, el tiempo esperado de reparación y la disponibilidad de un

equipo reparable. En la figura 4 se presenta el diagrama de clases en el cual se

muestra la interacción que existe entre las funciones de las diferentes clases.

Page 321: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

307

Fig. 4. Diagrama de clases para obtener la confiabilidad.

3.1 Descripción de clases

Como se mencionó anteriormente, la programación está dividida en tres clases,

donde cada una contiene funciones que permiten obtener la confiabilidad tanto

numérica como gráfica. A continuación se describe cada una de las clases.

3.1.1 Clase “activos reparables” (ActivosReparables)

Ésta es la clase principal, la cual se encarga de la interfaz gráfica que se muestra

al usuario, en dicha interfaz se visualizan gráfica y numéricamente los resultados

obtenidos acerca de la confiabilidad para los activos reparables; además, permite

al usuario calcular la confiabilidad y la tasa de fallas en un tiempo dado.

Esta clase tiene funciones que se encargan de realizar los cálculos estadísticos

para obtener estimadores de los tiempos de falla y reparación, así como la

confiabilidad.

3.1.2 Clase “parámetros” (Parametros)

El objetivo de esta clase es obtener los parámetros de la función de distribución

de probabilidad de la confiabilidad para activos reparables, además de realizar

los cálculos para obtener el número esperado de fallas, el tiempo promedio de

falla, el tiempo esperado para la próxima falla.

3.1.3 Clase “tiempos de reparación” (TiempoReparacion)

Page 322: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

308

En esta clase se obtienen estadísticas de los tiempos de reparación, como el

tiempo promedio de reparación y la disponibilidad de un equipo.

3.2 Validación de la herramienta computacional

Para validar que la aplicación sólo admite datos correctos y confiables se

realizaron pruebas con cuatro tipos de datos: datos ficticios, datos erróneos, datos

reales.

Datos ficticios. Aquellos datos que se generaron sin ninguna metodología

numérica para probar la herramienta

Datos erróneos. Aquellos datos que se introducen de manera intencional para

probar y comprobar que el sistema los detecta.

Datos reales. Aquellos con los que el sistema va a trabajar normalmente.

Datos fortuitos. Aquellos que se generaron mediante un software de forma

aleatoria para probar el programa.

Todos estos datos sirvieron para probar que la herramienta obtiene los resultados

esperados. Además, se ejecutó la aplicación reiteradamente con diferentes

cantidades de datos para obtener la capacidad de procesamiento, concluyendo

que esta herramienta soporta 10 000 000 de datos. Finalmente, depurada y

validada la herramienta, su interfaz se muestra en la figura 5.

Fig. 5. Resultados obtenidos por la herramienta.

Page 323: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

309

En la figura anterior se observan las gráficas de confiabilidad y la de la función

de riesgo del lado izquierdo, del lado derecho superior se muestran las diferentes

estadísticas de los tiempos de falla y reparación, así como la confiabilidad del

equipo, y en la parte inferior derecha se permite al usuario introducir

información para obtener las estadísticas principales, como la confiabilidad, el

riesgo y la disponibilidad.

4 Conclusiones

Ésta es una herramienta computacional desarrollada con el lenguaje de

programación JAVA, el cual permite tener interfaces gráficas que el usuario

comprende fácilmente y también realiza cálculos matemáticos de mediana y alta

complejidad. Con esta herramienta computacional se pretende apoyar el manejo

eficiente de los equipos y materiales eléctricos de distribución de la CFE. Con los

resultados que se obtienen mediante de esta herramienta se espera que:

Se adquieran equipos en función de su confiabilidad operativa, de su vida

útil y de los costos que éstos tengan por operarlos y mantenerlos en buen

estado.

Se optimice la gestión de operación y mantenimiento de los equipos.

Se mejore el diseño de los equipos por parte de los fabricantes.

Se cuente con evidencia técnica para el reclamo de garantía, expectativa de

vida útil y expectativa de vida remanente.

Page 324: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

310

Referencias

1. Gnedenko y Ushakov, Probabilistic Reliability Engineering, John Wiley & Sons,

1995.

2. Kumamoto y Henley, Probabilistic Risk Assessment and Management for

Engineers and Scientists, IEEE Press, Nueva York, 1996.

3. Modarres, M., Kaminsky, M. y V. KrivtsoV, Reliability Engineering and

Analysis, CRC Press, Taylor & Francis Group, 1999.

4. JAVA, Developer Resources for JAVA Technology, enero de 2008.

5. Foster, I. y C. Kesselman, The Grid: Blueprint for a New Computing

Infrastructure, Morgan Kaufmann, San Francisco, 1999.

6. Aggarwal, Reliability Engineering, Kluwer Academia Publishers, 1999.

7. Pecht, Product Reliability, Maintainability, and Supportability Handbook, CRC

Press, 2000.

Page 325: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

311

Modelo Eléctrico del Cátodo de una Descarga de

Alta Presión de Sodio José Luis Tapia Fabela, Yulia Nikolaevna Ledeneva, René Arnulfo García

Hernández

Resumen: En este trabajo se presenta el desarrollo de un modelo eléctrico del

cátodo (ECM) de una descarga HPS, basado en las ecuaciones físicas que

describen su comportamiento eléctrico. El modelo evalúa la caída de voltaje

instantánea en la cubierta del cátodo (caída de voltaje predominante en una

lámpara HPS) y la distribución de temperatura en su interior usando como

parámetros de entrada la geometría del cátodo y la corriente de la descarga. El

ECM se basa en la ecuación del transporte de calor del electrodo; dicha ecuación

fue resuelta empleando el método de elementos finitos. Los resultados obtenidos

fueron comparados con los reportados en la literatura, encontrándose una buena

correspondencia. Por lo anterior, se concluye que el ECM es una herramienta que

ayuda a entender la interacción entre la descarga y el cátodo.

Sumario: 1 Introducción 2 Geometría del cátodo 3. Modelo teórico 3.1 Cálculo de la

temperatura en la superficie activa del cátodo 3.2 Ecuación del transporte de calor

del electrodo 3.3 Condiciones de frontera 4 Resultados y discusión 4.1 Cálculo de la

temperatura en la superficie activa del cátodo 4.2 Cálculo de la distribución de

temperatura en el electrodo 4.3 Cálculo del gradiente en la superficie activa del

cátodo 5 Conclusiones Referencias

1 Introducción

Los electrodos de una lámpara de descarga gaseosa constituyen la interfaz entre

la columna positiva y el circuito electrónico. Una fracción importante de la

potencia eléctrica suministrada a la lámpara se disipa en los electrodos

resultando en una pérdida de potencia para efectos de iluminación. Por lo tanto,

resulta esencial comprender la interacción entre los electrodos y la columna

positiva para tratar de reducir las pérdidas de energía y mejorar el desempeño de

la lámpara.

El estudio experimental de la interacción entre el cátodo y la columna positiva de

una descarga resulta difícil de realizar usando lámparas comerciales porque éstas

Page 326: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

312

no cuentan con terminales que permitan medir la caída de potencial en los

electrodos, así que es necesario una disposición experimental sofisticada para

realizar las mediciones. Además, en algunos casos, las dimensiones de las

descargas son tan pequeñas que resulta difícil realizar las mediciones.

Consecuentemente, un modelo numérico de la interacción plasma-cátodo

representa una buena opción para llevar a cabo dicho estudio. En este trabajo se

propone un modelo eléctrico del cátodo ECM de una descarga, el cual es capaz

de predecir la caída de voltaje a través de la cubierta del cátodo bajo diferentes

frecuencias y formas de onda de la corriente de alimentación. El ECM se basa en

la ecuación del transporte de calor en el electrodo y la ecuación de las pérdidas

eléctricas en el frente del electrodo propuesta por J. J. de Groot y J. A. van Vlient.4

Esta ecuación relaciona el gradiente de temperatura en el frente del electrodo

(superficie activa) con la caída de potencial en el mismo.

El ECM fue desarrollado en MatLab aplicando el método de solución de

elementos finitos. El modelo propuesto está basado en ecuaciones físicas que

describen el comportamiento eléctrico del cátodo y por lo tanto es válido bajo

diversas condiciones de operación. El usuario del ECM sólo necesita introducir

amplitud, frecuencia y forma de onda de la corriente de la columna positiva, y

para una geometría del cátodo dada, el modelo predecirá la caída de voltaje

instantánea en el cátodo. Además, usando el ECM es posible calcular la

distribución de temperatura dentro del cátodo. Esto resulta de gran interés

porque la vida útil de una lámpara HPS está fuertemente relacionada con la

distribución de temperatura en los electrodos.9

2 Geometría del cátodo

El cátodo de una descarga HPS alcanza una alta temperatura durante su

funcionamiento, por lo que éste debe ser elaborado con un material refractario,

con un punto de fusión alto. La geometría del cátodo de una descarga HPS se

muestra en la figura 1.

Fig. 1. Sección transversal del cátodo de una lámpara de descarga HPS.2

Page 327: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

313

El cátodo de una descarga HPS está compuesto por una barra de tungsteno

envuelta con una o dos bobinas del mismo material; esto tiene el objetivo de

incrementar la superficie radiativa. Entre las bobinas se deposita una mezcla

activadora de bario que permite una mayor emisión de electrones.

3 Modelo teórico

De acuerdo con J. J. de Groot y J. A. van Vlient,4 las pérdidas eléctricas ( ) en el

frente del cátodo ( ) de una descarga HPS están definidas por la ecuación

(1):

donde: simboliza el diámetro

en el frente del electrodo, es la

conductividad térmica del

tungsteno,

representa la coordenada axial reducida con igual a la coordenada axial y

es la temperatura del electrodo. Como se puede observar en la ecuación (1), la

caída de potencial en el cátodo está relacionada con el gradiente de temperatura

en su superficie activa. Por lo tanto, para calcular las pérdidas eléctricas en el

electrodo de una descarga, es necesario obtener la distribución de temperatura a

través del mismo usando una determinada corriente eléctrica y condiciones de

frontera. Una vez que se conoce la distribución de temperatura es posible

especificar el gradiente de temperatura en la superficie activa del electrodo.

3.1 Cálculo de la temperatura en la superficie activa del cátodo

La emisión termoiónica de electrones, en el caso del cátodo de una descarga HPS,

se ve favorecida con el campo eléctrico aplicado y por la presencia de la capa

activadora, que reduce la función de trabajo en la superficie del electrodo.

En este estudio se asume que la densidad de corriente en la superficie activa del

cátodo ( ) está definida por: , donde representa la densidad de

corriente iónica y es la densidad de corriente de electrones compuesta por la

emisión secundaria ( ) relacionada con el proceso γ-Townsed y por la

emisión termo-iónica corregida por el campo eléctrico ( ) —descrita en la

ecuación de Richardson-Dushman ecuación (4). Por lo tanto: . De

acuerdo con Sherman,7 la emisión de electrones secundarios debida al

bombardeo de iones de sodio sobre el cátodo de tungsteno es igual al 1% de los

iones que alcanzan el c{todo. Usando el coeficiente β-Waymouth, el cual

kP

0y

ed

K

)(21

edzy

z T

j ei jjj ij

ejsec

ejth

ejsec

eth

ee jjj

(1) 0

23

4

1

y

ek

dy

dTKdP

Page 328: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

314

establece una relación entre la densidad de corriente iónica y electrónica en

la cubierta del cátodo de una descarga HPS [Waymouth, 1982] tenemos:

donde: , simboliza la constante de

Richardson-Dushman,7 y representan la carga y la masa del electrón

respectivamente, es la constante de Planck, es la constante de Boltzmann,

Corresponde al campo eléctrico aplicado en la superficie del cátodo y se relaciona

con la caída de potencial ( ) mediante la ecuación de MacKeown:6

donde representa la masa iónica del sodio, es

igual a la constante dieléctrica del vacío, y:

Aquí, es la función de trabajo para el tungsteno y simboliza la corrección

Schottky para la función de trabajo del tungsteno.

Para calcular la temperatura en la superficie activa del cátodo de una descarga

HPS, se asume que el acoplamiento entre el arco y el cátodo es de modo difuso.5

Cuando el cátodo opera en modo difuso, el plasma cubre la superficie activa del

electrodo y sus lados. En el presente estudio se supone que únicamente la

superficie activa del cátodo participa en la emisión termoiónica. Las otras zonas

del electrodo son consideradas inactivas desde el punto de vista de emisión

electrónica.5

Tomando en cuenta los argumentos anteriores y substituyendo las ecuaciones (2)

y (3), en la ecuación (4), es posible derivar la siguiente ecuación que relaciona la

densidad total de corriente con la temperatura en la superficie activa del cátodo (

):

ij ej

2-2632 mA 10 2.14 hkmeA e

e em

h k

kE

kV

eVmjE kiik 24 02 im 0

0

actT

(2)

(3)

(4)

(5)

(6)

secej

thej

ij

ej

ij

ijej sec

Tk

kEeTAth

ej)(

exp2

0

0

4)();()(

kEe

kEkEkE

act

kact

Tk

EeTAj

)(exp

1

1 2

Page 329: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

315

Resolviendo la ecuación anterior se puede deducir la temperatura en la superficie

activa del cátodo que produce una densidad de corriente igual a la corriente de la

descarga. De acuerdo con Waymouth,9 el valor del coeficiente es considerado

como el 20% de la densidad de corriente de electrones.

3.2 Ecuación del transporte de calor del electrodo

La distribución de temperatura dentro del cátodo y en su superficie activa puede

obtenerse resolviendo la ecuación (7) del transporte de calor del electrodo,

usando las condiciones de frontera dadas (véase la sección 3.3). La ecuación (7)

describe la variación de la cantidad de calor por unidad de volumen en el

electrodo:1

donde: representa la

densidad, la capacidad

calorífica específica, es la temperatura del electrodo, t denota la dependencia

del tiempo de la ecuación y simboliza la conductividad térmica del tungsteno.

El término de la ecuación (7) representa la potencia disipada en el electrodo

por unidad de volumen debida al efecto Joule y es dada por la ecuación:1

Aquí representa la densidad de

corriente de la descarga y la conductividad eléctrica del electrodo. El calor

producido en el cuerpo del electrodo debido a la circulación de la corriente de la

descarga a través del mismo, eleva su temperatura y por consiguiente el valor de

la conductividad eléctrica cambia; este cambio está determinado por la

relación:1

Las constantes y

dependen del material del cual está constituido el cátodo. Para el caso del

tungsteno sus valores se muestran en el cuadro 1. Además, la condición

suplementaria siguiente, para la corriente total de la descarga, debe ser

verificada:

donde: es el radio del

cátodo, es la coordenada radial

e representa la corriente en la descarga.

pc

T

K

S

j

e

e

0

20 edr

r

I

(7)

(8)

(9)

(10)

TKSt

Tcp

2jS e

1 )( actoe TTT

0

0

2

r

Idrrj

Page 330: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

316

Cuadro 1. Coeficientes del tungsteno (Cristea, 2003)

Símbolo Valor Unidades

19300 [kg m-3]

133 [J kg-1 K-1]

776/(T0.256)

[W m-1 K-1]

5.28X10-8 *Ω-1m-1]

6.76X10-3

[K-1]

3.3 Condiciones de frontera

El frente (superficie activa) y el extremo posterior del cátodo fueron

caracterizados con una condición de frontera de Dirichlet. La temperatura en el

extremo posterior del cátodo de una descarga HPS similar a la modelada en este

estudio fue medida experimentalmente por Cristea ;1 en el presente

estudio, ante la imposibilidad de realizar esta medición, se usó el valor reportado.

La temperatura en la superficie activa del cátodo se obtiene al resolver la

ecuación (6) para una determinada densidad de corriente de la descarga. Las

condiciones de frontera en los bordes del cátodo se definieron como condiciones

de Neumann; el significado físico de estas condiciones es el intercambio continuo

del flujo energético —radiación, conducción, convección— entre el cátodo y el

medio adyacente. La ecuación que define la condición de frontera es:1

donde: representa la

temperatura del cátodo en el

borde, es la temperatura ambiental, es el coeficiente de convección,

simboliza la emisividad del tungsteno y es la constante de Stefan Boltzmann.

El término representa la derivada de la temperatura en dirección

normal a la superficie activa del cátodo.

4 Resultados y discusión

El procedimiento empleado para calcular las características eléctricas del cátodo

se resume en el diagrama de flujo mostrado en la figura 2. En este diagrama los

pc

K

0

KTend 600

actT

bT

ambT

bnT )(

n

(11) )()()()( 44ambbbambb

b

b TTTTTnn

TTK

Page 331: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

317

parámetros de entrada y salida son representados mediante rectángulos

redondeados para diferenciarlos de los rectángulos que identifican a los pasos de

proceso.

Como se puede ver, para obtener la temperatura en la superficie activa del

electrodo es necesario conocer la caída de voltaje inicial en el cátodo y la corriente

de la descarga. Con la temperatura obtenida es posible calcular la distribución de

temperatura a través del electrodo, y continuando con los pasos subsecuentes se

puede obtener una nueva caída en el cátodo que cumpla con las condiciones

impuestas. El proceso se repite hasta que el programa converge.

La ecuación (7) fue resuelta en MatLab usando el método de elementos finitos.

Las dimensiones del cátodo empleado fueron: =1 mm, =1.5 mm, =1.0

mm, =1.5 mm, =3 mm, =5 mm (véase la figura 1). Los resultados

obtenidos se presentan a continuación:

Fig. 2. Solución estructurada para calcular la caída de voltaje en la cubierta del

cátodo de una descarga HPS.2

ed 2r 3r

1d 2d 3d

Caída de potencial

en el cátodo

Temperatura en la superficie

activa del cátodo

Distribución de temperatura

en el cátodo

Gradiente de temperatura

en la superfice activa del cátodo

act

k

act

kT

EeATj

)(exp

1

1 2

TKSt

Tcp

0

ydy

dT

0

4

12

3

ydy

dTKdP ek

act

k

actcalculada

kT

EeATj

)(exp

1

1 2

jjj calculada 03.

no

sífin

0calculadaj

Corriente de la descarga

Page 332: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

318

4.1 Cálculo de la temperatura en la superficie activa del cátodo

La temperatura en la superficie activa del cátodo se obtiene mediante la ecuación

(6). La solución fue conseguida por medio de un proceso iterativo que cambia la

temperatura en la superficie activa del cátodo y calcula la corriente necesaria para

alcanzar dicha temperatura, el proceso finaliza cuando se converge con la

corriente impuesta por la descarga. En otras palabras, la solución de la ecuación

(6) es una temperatura que produce una densidad de corriente eléctrica igual a la

de la descarga. Los resultados del proceso anterior, para una densidad de

corriente de la descarga de 1.2732×106 A/m2 en una lámpara HPS (400 W), se

muestran en la figura 3. La temperatura obtenida en la superficie activa alcanza

los 1650 K.

Fig. 3. Solución gráfica para la temperatura de la superficie activa del cátodo

usando una densidad de corriente de la descarga de .

4.2 Cálculo de la distribución de temperatura en el electrodo

En la figura 4 se presenta la distribución de temperatura a través del cátodo de

una descarga HPS, obtenida para una temperatura en la superficie activa de

, la cual corresponde a una corriente en la descarga de 4 A. Como

se puede observar, la distribución de temperatura presenta simetría axial.

Considerando que en modo difuso la tasa de agotamiento de la capa de emisión

del cátodo es la misma en todos los puntos; entonces, se puede suponer que en

26 Am1.2732x10 j

K 1650 act T

Page 333: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

319

este modo de operación el cátodo funcionará apropiadamente hasta la conclusión

de la capa de emisión. La distribución de temperatura dentro del cátodo de una

descarga resulta de gran interés debido a que la vida útil de las lámparas HPS

está íntimamente relacionada con dicha distribución.3

Fig. 4. Distribución de temperatura (escala de grises) y flujo de calor (flechas) en

el cátodo de un descarga HPS.

4.3 Cálculo del gradiente en la superficie activa del cátodo

Una vez que se cuenta con la distribución de temperatura en el interior del

cátodo, es posible calcular el gradiente de temperatura en el frente del electrodo

(superficie activa). En la figura 5 se muestra el perfil de temperatura en el centro

del cátodo de una descarga HPS. En el frente del electrodo la temperatura es de

1650 K; sin embargo, la temperatura decrece rápidamente cuando se aproximan a

la parte posterior del electrodo alcanzando un valor de 600 K. El decremento de

temperatura es debido a las pérdidas por conducción y radiación del cátodo

definidas en las ecuaciones (7) y (11). Asimismo, en la figura 5 se muestra el

gradiente de temperatura en la superficie activa del electrodo. El perfil de

temperatura fue comparado con las referencias,1 se encontró una buena

correspondencia en cuanto a la pendiente del perfil en los primeros 5 mm; sin

embargo, existe una notable diferencia en la parte posterior del electrodo. Lo

anterior se explica debido al hecho de que para el cálculo del perfil de

temperatura, los autores de las referencias anteriormente citadas, consideran que

el electrodo es una barra de longitud infinita, y el cálculo lo realizan de manera

unidimensional.

Page 334: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

320

Fig. 5. Gradiente de temperatura en la parte frontal del cátodo usando una

corriente senoidal de 4 A de 60 Hz.

Usando el gradiente de temperatura de la superficie activa del cátodo, obtenido

en la sección previa, se pueden calcular las pérdidas eléctricas y

consecuentemente se logra determinar la caída de potencial en el cátodo. En la

figura 6 se resume el procedimiento adoptado en este estudio para determinar la

influencia de la frecuencia y forma de onda de la corriente de la descarga en la

operación del cátodo.

Fig. 6. Diagrama del modelo eléctrico del cátodo (ECM).

Como se puede observar, para realizar el estudio descrito, se aplica una fuente de

corriente I con frecuencia (f) y forma de onda (wf) al modelo propuesto ECM.

En el cuadro 2 se reportan algunos resultados típicos obtenidos para cátodos de

tungsteno en descargas HPS, lo anterior con el propósito de validar el modelo

desarrollado. En el cuadro 2 es importante notar un ligero incremento en la caída

de voltaje al aumentar la frecuencia. Las diferencias que aparecen con las

referencias consultadas son debidas probablemente a las simplificaciones

consideradas en el modelo propuesto.

ECM

I (f, wf)

Page 335: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

321

Cuadro 2. Caída de voltaje típica obtenida para cátodos de tungsteno en

descargas HPS

5 Conclusiones

En el presente trabajo se diseñó un modelo eléctrico del cátodo de una descarga

HPS dispuesto para el diseño de balastras electrónicas. El modelo se basa en la

ecuación de la transferencia de calor y la ecuación de las pérdidas eléctricas del

electrodo. Fue implementado en MatLab mediante el uso del método de

elementos finitos. Debido a que el modelo propuesto está basado en ecuaciones

físicas que describen el comportamiento eléctrico del cátodo, los resultados

obtenidos con este modelo son validos sobre distintas condiciones de operación.

El ECM es capaz de predecir la caída de voltaje en la cubierta del electrodo, bajo

diferentes frecuencias y formas de onda de la corriente de alimentación. Usando

el ECM es posible determinar la distribución de temperatura en el interior del

cátodo, lo cual es de gran interés debido a que la vida útil de una lámpara HPS

está fuertemente relacionada con ésta. Los resultados obtenidos usando el

modelo fueron comparados con los reportados en la literatura y se encontró que

el modelo predice de una manera satisfactoria los parámetros eléctricos en el

cátodo de una descarga HPS. Por lo anterior se puede concluir que el ECM es una

herramienta que ayuda a entender la interacción entre la descarga y el cátodo con

el objetivo de mejorar el diseño de balastras electrónicas.

Page 336: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

322

Referencias

1. Cristea, M. y G. Zissis, ‚Thin Barium Layer Formation and its Influence

on Tungsten Electrode Arc Attachment Modes in HID Lamps‛, Journal of

Optoelectronics and Advanced Materials, núm. 5, 2003, pp. 511-520.

2. Tapia Fabela, J. L., J. O. Pacheco-Sotelo, M. P. Pacheco, J. S. Benitez-Read,

R. Lopez-Callejas, G. Zissis y S. Bhosle ‚Modeling the Voltage Drop Across

the Cathode Sheath in HPS‛, IEEE Plasma Science, núm. 35, 2006, pp. 1104-

1110.

3. Flesch, P., Light and Light Sources, High-Intensity Discharge Lamps,

Springer-Verlag, Nueva York, 2007.

4. De Groot, J. J. y J. A. van Vliet, The High Pressure Sodium Lamp, MacMillan

Education, Deventer, 1986.

5. Lichtenberg, S., D. Nandelstädt, L. Dabringhausen, M. Redwitz, J.

Luhmann y J. Mentel, ‚Observation of Different Modes of Cathodic Arc

Attachment to HID Electrodes in a Model Lamp‛, Journal of Physical

Development: Applied Physics, núm. 35, 2002, pp. 1648-1656.

6. Mackeown, S. S., ‚The Cathode Drop in an Electric Arc‛, Physical Review,

núm. 34, 1929, pp. 611-614.

7. Sherman, J. C., ‚Secondary Electron Emission by Multiply Charged Ions

and its Magnitude in Vacuum Arcs‛, Journal of Physical Development: Applied

Physics, núm. 10, 1977, pp. 355-359.

8. Tielemans, P. y F. Oostvogels, ‚Electrode Temperature in High Pressure

Gas Discharge Lamps‛, Philips Journal Research, vol. 38, 1983, pp. 214-223.

9. Waymouth, J. F., ‚Analysis of Cathode-Spot Behavior in High-Pressure

Discharge Lamps‛, Journal of Light and Vis. Env., núm. 6, 1982, pp. 53-64.

Page 337: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

323

Control difuso de un Sistema no Lineal Luis Eduardo Espinosa Maya, Godolfredo Sánchez Medina, Horacio George

Haro, René L. Pacheco L., Gerardo Villegas R., Gerardo Mino A., Oscar Morales

P., Honorato Azucena C., Jorge Barahona Ávalos

Resumen: En el presente trabajo se describe el diseño y la puesta en

marcha de un controlador difuso para un prototipo no lineal, el cual está

basado en el sistema clásico de la bola y la viga (ball and beam). El control

difuso se implementa en un microcontrolador PIC de la familia 16F, el

cual carece de instrucciones de multiplicación, por lo tanto, el diseño del

algoritmo y su codificación cobran importancia. La funcionalidad del

controlador se demuestra toda vez que resuelve el problema de control no

lineal cuando se desconoce el modelo dinámico de la planta.

Palabras clave: lógica difusa, control difuso, sistema no lineal,

microcontroladores.

Sumario: 1 Introducción 2 Lógica difusa 2.1 Controladores difusos 3.1 Construcción del

sistema 4 Diseño de control difuso 4.1 Estabilidad 4.2 Modelado y simulación 5

Resultados experimentales 6 Conclusiones Referencias

1 Introducción

El modelo de procesamiento de la información, desarrollado a finales del siglo

XIX y principios del siglo XX, que conforma el binomio lógica booleana-máquina

de Turing, es la base de los actuales sistemas de procesamiento digitales; por

ejemplo, los microprocesadores, los microcontroladores, etcétera. Sin embargo, y

sin desestimar sus indiscutibles logros, este esquema causa problemas cuadro se

abordan tareas del mundo real, donde la información se presenta de forma

masiva y típicamente distorsionada.

Algunos modelos alternativos han sido propuestos para abordar el tema; entre

ellos, las redes neuronales artificiales y los sistemas basados en lógica difusa son

los que cuentan con mayor popularidad y se utilizan más. Éstos y otros modelos

de procesamiento y control se engloban bajo el término de ‚inteligencia

Page 338: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

324

computacional‛ o ‚soft computing‛, puesto que su inspiración para las soluciones

son las que la naturaleza ha encontrado a lo largo de millones de años de

evolución. Las soluciones naturales se copian en los sistemas artificiales, de los

cuales se espera que contribuyan a resolver problemas tecnológicos importantes.

La inteligencia artificial (IA) es una combinación de la ciencia de las

computadoras, la psicología y la filosofía.

Por otra parte, un controlador clásico es un compensador de atraso-adelanto cuyo

diseño se basa en el conocimiento de un modelo matemático; el éxito del control

reside comúnmente en la fidelidad de la representación del comportamiento de la

planta por parte del modelo, lo que hace que estas técnicas sean de difícil

aplicación cuando se desconoce el modelo o la incertidumbre es demasiada.

Con estas premisas, aquí se propone el diseño y la puesta en marcha de un

controlador difuso para un prototipo no lineal, usando un microcontrolador

como sistema de procesamiento. Para los fines del trabajo, se plantea un sistema

lineal del cual se conoce su representación matemática (sistema de la bola y la

viga o ball and beam); con éste se complementa el diseño y se pone en marcha con

el controlador mediante la simulación del sistema en lazo cerrado.

2 Lógica difusa

El desarrollo de controladores difusos ha emergido como una de las más

prósperas y fructíferas aplicaciones de la teoría de conjuntos difusos. Esta teoría

fue postulada por Lotfi Zadeh, como una generalización de los conjuntos clásicos.

Ya en los trabajos seminales, introduce la idea de formular el problema de control

mediante el uso de reglas expresadas con representaciones lingüísticas. Las

experiencias diarias de la vida real nos dan muchos ejemplos donde esto se

confirma, como cuando el entendimiento, el pensamiento y la habilidad humana

resuelven de manera eficiente el problema del control en una gran variedad de

sistemas y sin hacer uso de los algoritmos sofisticados de la teoría del control.

Mamdani y sus colegas fueron los primeros en aplicar la lógica difusa al control

de procesos, particularmente, en un sistema de control para una máquina de

vapor, y desde entonces el número de aplicaciones de los controladores difusos

ha ido en aumento hasta estar prácticamente en todos los campos de la

Ingeniería. Los controladores difusos tienen potencialmente muchas ventajas

cuando las especificaciones del control requieren robustez, adaptabilidad y

flexibilidad, debido a perturbaciones del entorno o a efectos no modelables de la

dinámica del sistema. Los controladores difusos están basados en reglas que

hacen discreto el espacio de operación continuo, no lineal y multidimensional en

las clases discretas. Utilizando la lógica multivaluada, las variables difusas de las

reglas preservan la información cuantitativa en los valores correspondientes de

clase y de pertenencia a esa clase. El comportamiento del controlador difuso se

Page 339: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

325

optimiza mediante una máquina de estados finitos, en términos de las clases

discretas, y finalmente se usa la

información de la función de

pertenencia para hacer una

interpolación suave entre los

puntos vecinos del espacio de operación continuo.

Proposición 1. Conjuntos difusos. Para cualquier conjunto clásico C, definido en el

universo de discurso U, es posible definir una función característica MembC : U

→ {0, 1} como:

. (17)

En la teoría de conjuntos difusos, esta función característica se generaliza como

una función de pertenencia que asigna a cada elemento u є U un valor en el

intervalo unitario [0, 1]. El conjunto F obtenido con base en tal función de

pertenencia se define como conjunto difuso.

Función de pertenencia. La función de pertenencia MembF del conjunto difuso F es:

, (2)

donde, para cada elemento u є U, se asigna el grado de pertenencia MembF (u) є

[0, 1]. De esta manera, F queda completamente determinado por el conjunto de

pares:

Proposición 2. Variable lingüística. La variable lingüística ui es una descripción

simbólica constante utilizada para presentar, en general, una cantidad, variando

en el tiempo dentro del intervalo definido por un universo de discurso Ui. Los

diferentes valores que esta variable puede adquirir son conocidos como valores

lingüísticos.

1,0: UMembF

(3) UuuMembuF F |,

Page 340: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

326

Fig. 1. Variables lingüísticas.

2.1 Controladores difusos

La estructura general de un controlador difuso se muestra en la figura 2 y consta

de cuatro módulos principales: 1) interfaz de fusificación, 2) base de

conocimiento, 3) mecanismo de inferencia, y 4) interfaz de defusificación.

Fig. 2. Arquitectura de un control difuso.

Aquí hemos empleado las metodologías más usadas y estudiadas del control

difuso: la fusificación triangular, la inferencia por Mamdani y una defusificación

tipo centro de área. La base de conocimiento se propuso con base en la

experiencia y fue ajustada por prueba y error.

Page 341: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

327

3 Sistema no lineal

El sistema no lineal usado para el trabajo es el sistema de la bola y la viga (ball and

beam). La descripción completa de la dinámica de la bola rodando sobre la barra

es compleja, pero una útil simplificación del modelo se presenta en la figura 3.

Fig. 3. Fuerzas actuantes en el sistema.

Este sistema tiene la siguiente representación matemática en variables de estado:

3.1 Construcción del sistema

La construcción del sistema se divide en tres partes: construcción física de la bola

y la viga (ball and beam); construcción electrónica y software del microcontrolador.

.

(4)

ugx

x

x

x

dt

d

1

0

0

0

0

)sin(2

Page 342: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

328

El sistema físico de la bola en la viga tiene las siguientes características: 50 cm de

longitud de la barra —40 cm de esta longitud es para el desplazamiento de la

bola—, servomotor de 3 Kg/cm y una pelota de poco peso. Con estos elementos

se hizo un acoplamiento directo entre los dispositivos, considerando una base

que soportara la barra. El prototipo quedó como se ve en la figura 4.

Fig. 4. Prototipo del sistema.

En este prototipo del sistema, la pelota saltaba fuera de la barra cuando se

delizaba fuera del centro. Entonces, se construyó un segundo prototipo,

respetando las mismas dimensiones y acoplando la barra directamente al tubo, el

cual, ahora, hacía las veces de viga (véase la figura 5).

Fig. 5. Prototipo final del sistema.

La electrónica del sistema consta de: 1) sensor infrarrojo IR Sharp GP2DXX, el

cual opera con base en el método de triangulación mediante un pequeño sensor

detector de posición (PSD) lineal para determinar la distancia o la presencia de

los objetos dentro de su campo de visión; 2) la señal del sensor se acondiciona por

medio de un amplificador inversor y un filtro paso bajo de segundo orden, con

frecuencia de corte de 100 Hz; 3) a la salida de la etapa de acondicionamiento se

conecta la entrada del ADC de un microcontrolador PIC16F877; 4) un elemento

de interfaz para el usuario, como un LCD de 2 x 16 caracteres y botones; 5)

alimentación del sistema.

Page 343: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

329

El software residente en el microcontrolador se implementó para ofrecer

diferentes funciones: interfaz para el usuario (teclado y LCD), adquisición de la

señal del sensor y procesamiento del control difuso. El software se desarrolla con

un compilador C para los PIC de la familia 16F. Este software tiene dos ciclos

principales: 1) el usuario ingresa el punto de partida (setpoint) mediante dos

botones, arriba-abajo (up-down), que van aumentando-disminuyendo el punto de

partida de 1cm a la vez, y 2) una ejecución del ciclo de control, donde el dato del

sensor de posición adquiere, calcula el error actual, procesa la fusifucación-

inferencia-defusificación y produce la salida en PWM para el motor.

4 Diseño de control difuso

El sistema procesado obtiene la retroalimentación por medio del AD conectado al

sensor de posición. Una vez adquirida esta información se calcula el error de

posición, el cual se fusifica para aplicarlo al sistema difuso.

Cuadro 1. Términos para el error de posición y el error anterior

Término

lingüístico

Distancia Voltaje medido

en el sensor

NG 30 cm 1.87 volts

NP 23 cm 0.76 volts

C 20 cm 0.55 volts

PP 17 cm 0.38 volts

PG 10 cm 0.15 volts

Los términos que aparecen en el cuadro 1 expresan funciones de pertenencias

triangulares, con centro en el valor de distancia escrito en el rengón

correspondiente. Para la salida o acción de control, se propone un conjunto de

términos más grande.

Page 344: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

330

Cuadro 2. Términos lingüísticos para la variable de salida

Término

lingüístico

Angulo Nombre

NG -60 Negativo grande

NM -35 Negativo

mediano

NP -10 Negativo

pequeño

C 0 Cero

PP 10 Positivo pequeño

PM 35 Positivo mediano

PG 60 Positivo grande

La inferencia del sistema se propone en función de la experiencia, tal como se

presenta en la figura 6. Aquí se reflejan casos simples, como error negativo

grande (NG) o una acción positiva grande (PG).

Fig. 6. Propuesta para la inferencia.

Con base en esta propuesta se construyó un cuadro de relación para los términos

lingüísticos de entrada y salida, y a su vez, sobre esta base se hizo la construcción

del conjunto (set) de reglas a programar en el microcontrolador.

Fig. 7. Matriz de reglas.

Page 345: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

331

4.1 Estabilidad

La estabilidad es una propiedad esencial que debe determinarse en los sistemas

de lazo cerrado planta-controlador. En este caso, y por tratarse de un sistema de

control difuso, aplicamos un criterio propuesto por Mamdani, el cual analiza el

controlador demostrando que sus trayectorias convergen.

Estabilidad en la energía de la relación difusa del controlador. La ecuación básica de un

sistema difuso tiene la forma:

Donde XK y XK+1 son los conjuntos

difusos de los estados K-ésimo y

(K-1)-ésimo instante

respectivamente; UK es la entrada en el instante K, y R es la relación difusa entre

la entrada y la salida. Un sistema dinámico libre se realiza con una entrada cero

(sistema autónomo), tendiendo entonces:

, (6)

donde P = UK º R para UK = cero para k = 0,1,2,3, <

Entonces, un sistema de este tipo está en estado de equilibrio si XK+1 = XK para

todo K. Un sistema es estable si su energía total es mínima y constante. El sistema

es inestable si la energía se incrementa con el tiempo. Es oscilatorio si ésta fluctúa

periódicamente.

Se define la energía de una relación difusa P como:

(7)

Así, el rango de incremento de energía cambia constantemente:

, (8)

Donde Pi = P º P º P < P son las veces que se aplica la composición m{ximo-

mínimo (max-min) a la relación difusa P.

PXX KK 1

n

i

m

j

jipji yxfyxwmn

PE1 1

,,1

1, ii PEPEiPE

.

(5) RUXX KKK 1

,...3,2,1,0K

Page 346: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

332

El algoritmo de estabilidad en la energía (ESA) tiene los siguientes estados:

Si ΔE(P, i) ≤ 0 cuando i → ∞, entonces el sistema es estable.

Si ΔE(P, i) > 0 cuando i → ∞, entonces el sistema es inestable.

Si │ΔE(P, i)│ = │ΔE(P, i + τ )│, cuando i

→ ∞, entonces el sistema es oscilatorio con frecuencia 1/ τ.

En nuestro caso, la relación de la entrada y la salida del controlador:

P= P2=

P3=

Se aprecia que P2 = P3 y, por obviedad, será igual para Pn, por lo que se determina

de igual forma que E(Pi) – E(Pi-1) = 0, sin necesidad de calcular la energía, y por lo

tanto, ΔE(P, i) = 0 cuando i → ∞, entonces la relación difusa es estable.

4.2 Modelado y simulación

La simulación del sistema de la bola y la viga (ball and beam) se presenta junto a

su controlador difuso; para esto, se empleó el SimuLink y el FIS editor de MatLab

6.5. Cuando se trabaja con sistemas de control difuso no es necesario conocer la

dinámica específica del sistema a controlar, por lo cual los coeficientes del

sistema modelado en la simulación no corresponden a los valores del sistema

real.

Con el editor de sistemas difusos (FIS editor), se plantea un sistema con una base

de reglas como las que hemos visto ya en la matriz de la figura 7 (véase la figura

8).

1000 660 620 620 620

620 760 580 620 620

620 760 620 480 620

620 620 660 480 620

620 620 620 580 240

1000 660 620 620 620

620 760 620 620 620

620 760 620 620 620

620 660 620 620 620

620 620 620 620 620

1000 660 620 620 620

620 760 620 620 620

620 760 620 620 620

620 660 620 620 620

620 620 620 620 620

Page 347: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

333

Fig. 8. Visor de reglas del FIS editor de MatLab 6.5.

En SimuLink, se dibuja el diagrama general del sistema de lazo cerrado, tal como

se muestra en la figura 9.

Fig. 9. Diagrama en SimuLink.

Los resultados de la simulación muestran que el controlador difuso

efectivamente controla el sistema de la bola y la viga (ball and beam).

Page 348: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

334

Fig. 10. Respuesta del sistema contra la entrada.

5 Resultados experimentales

Con el sistema construido, se constituyó una batería de cuatro pruebas para

diferentes puntos de partida (setpoints) 1—8cm a 22cm, en paso de 1cm—,

considerando que la bola se encuentra en una posición inicial = 0cm (extremo de

la viga). A continuación, se muestran los resultados obtenidos del experimento

físico (véase el cuadro 3).

Page 349: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

335

Cuadro 3. Resultados finales del sistema

Setpoint

(cm)

P1 P2 P3 P4

18 18.3 19.1 18.7 18.3

19 19.3 19.3 19.2 19.5

20 20.1 19.8 20.2 20.1

21 21.4 21.4 21.2 21.5

22 22.7 22.6 22.6 22.5

Conforme el sistema se aleja un poco del centro de la barra, ubicado a 20 cm

(centro de la variable lingüística C), empieza a tener errores mayores, aunque aun

así las variaciones son pequeñas. Entre las pruebas que se llevaron a cabo, hubo

respuestas muy cercanas al punto de partida (setpoint). El error máximo

registrado en las pruebas fue de 1.1 cm o 2.75%.

6 Conclusiones

Para el diseño de las reglas del control difuso se probó el sistema de forma

manual y se trató de equilibrar la bola, a partir de lo cual se concluyó que cuando

la bola estaba muy cerca del punto deseado había que dar un ángulo pequeño

para mover la bola sólo un poco, pero debido a que la bola estaba prácticamente

frenada, un ángulo demasiado pequeño no la movía y uno algo grande la movía

demasiado —esto, para romper la inercia de la bola. Así que inferimos que,

cuando la bola cae en la vecindad de 1 cm del punto de partida (setpoint) o está

prácticamente frenada, es difícil aproximarse al error cero, pues es difícil romper

nuevamente la inercia para corregir el error, por las características dinámicas de

la bola.

Esta información experimental de primera mano sirvió como base para el ajuste

de los valores de los términos lingüísticos asociados a la entrada y salida del

sistema difuso, y de ahí se planteó la necesidad de incluir un estado anterior del

error.

El software para el control difuso se desarrolló en lenguaje C para

microcontroladores PIC de la familia 16F, lo cual es importante, pues estos

microcontroladores no cuentan con instrucciones tipo Mac y éstas se tienen que

emular; esto implica un tiempo de ejecución muy grande cuando se está

programando la parte difusa —lo que en esencia son sumas y multiplicaciones

(operaciones Mac). El problema se resolvió precalculando algunas operaciones de

constantes y cargando su valor como una constante para el programa. De esta

Page 350: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

336

manera, se demostró que un software bien estructurado es capaz de ejecutar su

tarea bajo las especificaciones de tiempo para la aplicación que nos ocupa.

Los resultados de la demostración de la estabilidad del sistema de control difuso

y de la simulación son complementarios y le dan el formalismo requerido al

trabajo en su conjunto.

Referencias Gómez Galindo, J., ‚Conjuntos y sistemas difusos‛, apuntes de curso de

informática, Departamento de Lenguajes y Ciencias de la Computación,

Universidad de Málaga, España. En Internet (www.uma.es), página consultada

en en agosto de 2006.

Ross, T. J. Fuzzy logic with Engineering Aplications, 2a edición, McGraw Hill, 1998.

Joseph, G., Sistemas expertos. Principios y programación, 2a edición, Ciencias

Thomson, 1999.

Astrom, K. J. et al. Adaptive Control, Addison-Wesley, 1989.

Ibrahim, A. M., Introduction to Applied Fuzzy Electronics, 3a edición, Prentice Hall,

1997.

Angulo, J. M., Microcontroladores diseño y aplicaciones, 2a edición, McGraw-Hill,

2002.

Page 351: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

337

Automatización de bombas de calor

por medio del control de bombas en un puerto

LPT

con adquisición de datos en un Puerto GPIB

R. J. Romero, Sotsil Silva-Sotelo, R. Best, J. Cerezo-Román

Resumen. El presente trabajo muestra una primera aproximación para la

automatización de una bomba de calor por absorción, operando en el

modo de transformador térmico, para la recuperación de calor de desecho

industrial. El programa de adquisición de datos fue realizado con

programación dirigida a objetos y se hizo la configuración de la

comunicación. También se muestra la estrategia de automatización con la

señal enviada a través de un puerto LPT. Finalmente, se describe la

operación de este sistema y sus capacidades de operación para la

revalorización de energía de desecho.

Palabras clave: bombas de calor, transformador térmico, programación dirigida

a objetos, adquisición de datos, automatización y control.

1 Introducción

El calentamiento global y el efecto invernadero se deben a la gran cantidad de

personas que llevan a cabo actividades productivas. La mayor parte de la energía

que se consume en el mundo proviene de diversas fuentes; entre ellas, la de

mayor porcentaje corresponde a la quema de combustibles fósiles.1 La mayor

parte de los procesos industriales transforman energía por medio de una reacción

de oxidación de un hidrocarburo, lo que produce vapor de agua y dióxido de

carbono. Sin embargo, esta emisión puede disminuirse mediante estrategias de

menor quema de combustibles por sustitución de fuentes de energía.2

Algunos procesos industriales no pueden llevarse a cabo con las fuentes

alternativas de energía debido a sus bajos niveles térmicos.3 La transformación de

energía térmica a niveles altos, más útiles, aún no ha sido posible. La mayor parte

Page 352: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

338

de las ampliaciones o crecimientos industriales se hace adquiriendo calderas

nuevas para la quema local de combustibles fósiles, o bien, mediante la conexión

de equipos eléctricos para aumentar la capacidad instalada. Sin embargo, existe

una opción, la cual fue utilizada en varias bombas de calor por absorción, con

bajo consumo de energía eléctrica, desde los años noventa hasta la fecha.4,5,6,7,8,9

Uno de los principales problemas para la operación continua de este tipo de

ciclos termodinámicos de bombeo de calor es el periodo transitorio previo al

estado estable en que operan exitosamente estas tecnologías.

2 Bombas de calor

Las bombas de calor son máquinas térmicas construidas con varios componentes

de intercambio de calor y materia, en forma simultánea. El ciclo de bomba de

calor se puede describir con base en la figura 1, de la siguiente manera: la energía,

en forma de calor de desecho, está a una temperatura constante (TGE); esta energía

se ingresa en un generador de vapor a baja presión, donde se lleva a cabo una

transferencia de calor a un fluido concentrado en una sal afín a un fluido de

trabajo. La presión en el interior del generador es suficientemente baja como para

que ocurra un proceso de separación de fases. El fluido de trabajo vaporizado se

conduce a un segundo componente que está a la misma presión pero que tiene

retiro de calor por medio de un circuito secundario; el calor retirado de este

componente realiza un cambio de fase y se obtiene fluido de trabajo en forma

líquida. A este componente se le denomina ‚condensador‛ y opera a temperatura

ambiente, siendo ésta (TCO) la menor de todo el sistema. El fluido de trabajo en

forma líquida se bombea por medio de una pequeña cantidad de energía eléctrica

—prácticamente una centésima parte de la energía suministrada por el

generador. El vapor que se produce en la etapa de presión mayor a la misma

temperatura constante de ingreso de la energía, ya sea de energías alternativas o

de desecho industrial, se pone en contacto con la solución concentrada que quedó

en el generador, provocando esto una reacción exotérmica a alta presión y

temperatura, conocida como ‚calor de absorción‛. Este calor es útil y ocurre a la

mayor temperatura del sistema. Después, la solución diluida que se ha formado

pasa por un ‚intercambiador‛ de calor para precalentar la solución concentrada

que va del generador al ‚absorbedor‛; entonces, la solución diluida regresa al

generador para comenzar de nuevo el ciclo de la bomba de calor, operando como

transformador térmico para la revalorización de la energía.

Page 353: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

339

Fig. 1. Esquema de un transformador térmico para la revaloración del calor.

3 Estrategia de control

Estos sistemas térmicos tienen un periodo transitorio de mayor tiempo,

comparado con cada una de las operaciones unitarias que tienen cada uno de los

componentes por separado y que forman el ciclo termodinámico. Los periodos

transitorios comienzan con la generación de vapor, cuando la energía

suministrada para realizar el cambio de fase está en función del fluido de trabajo

que se envía al condensador. El fluido de trabajo que se cambia de fase en el

condensador se puede expresar mediante el cálculo del flujo en función lineal de

la potencia del condensador y evaporador:

(1)

(2)

El total de este flujo es la variable limitante del proceso y esta variable participa

en todos los balances de materia y energía, en cada uno de los cálculos de las

operaciones unitarias de generación, condensación, evaporación, absorción e

intercambio de calor. Para controlar el flujo que limita al sistema,10 se ha

propuesto la estrategia siguiente:

TCO

CO

COWF

Qm

TEV

EV

EVWF

Qm

Page 354: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

340

Fig. 2. Diagrama de control de flujo refrigerante.

Para llevar a cabo este algoritmo, se requiere de la adquisición de datos vía

GPIB,11 y así se conocen los valores asociados en las ecuaciones (1) y (2), mediante

las siguientes ecuaciones:

(3)

(4)

Donde las temperaturas T1, T2, T3 y T4, cambian durante el periodo transitorio

cada cinco segundos, por lo que se debe hacer el cálculo de las dos potencias

expresadas en las ecuaciones (3) y (4). Se considera que los valores de los fluidos

que retiran energía del condensador y la suministran al evaporador, permanecen

en función de las temperaturas TCO y TEV, respectivamente, y se pueden

determinar por el sistema de adquisición de datos.

)( 21 TTmCQ TCO

PCO

)( 43 TTmCQ EV

PEV

Page 355: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

341

4 Control automático

Para el control automático del transformador térmico de una etapa, se ha

propuesto un algoritmo de control12 cuyo diagrama se exhibe en la figura 3. Con

este algoritmo, se ha construido un dispositivo acoplable al puerto de

comunicaciones LPT. En este caso, se han modificado los controladores que

operan la bomba que envía el fluido de trabajo del condensador al evaporador

(mEV), para que el potenciómetro opere con un motor a pasos, el cual puede

variar las revoluciones entre 50 y 3500 upm, con variaciones de 5 upm.

Fig. 3. Diagrama de control para el control automático.

En este caso, se han hecho dos programas con programación dirigida a objetos,

en dos partes: 1) un programa de adquisición de datos y cálculo de potencias, y 2)

Page 356: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

342

un programa de control de revoluciones por minuto en el controlador de la

bomba del fluido de trabajo. Estos programas se han realizado en HPVEE Pro y

en LabView 6i. Las pantallas del usuario se muestran en las figuras 8 y 9. El

programa realizado en HPVEE Pro se encarga de la adquisición y cálculo de las

20 temperaturas, dos presiones y ocho potencias para el cálculo de los flujos de

las ecuaciones (1) a (4). Con estos valores, se llama al programa de LabView 6i

para modificar el valor de la posición del potenciómetro del controlador del

fluido de trabajo del transformador térmico. Este dispositivo se muestra en las

figuras siguientes.

Fig. 4. Puerto LPT modificado para el control automático.

Fig. 5. Controlador modificado de bomba de fluido de trabajo.

5 Resultados y discusión

Se ha operado un transformador térmico de una etapa en el Laoratorio de

Ingeniería Térmica Aplicada (LITA), del Centro de Investigación en Ingeniería y

Ciencias Aplicadas (CIICAp) de la Universidad Autónoma del Estado de Morelos

(UAEM). Para su operación se ha utilizado la mezcla carrol-agua. Se ha simulado

el calor proveniente de las energías alternativas, con niveles térmicos de

colectores solares de alta eficiencia13 o de calor de desecho industrial, con niveles

térmicos entre 60 y 80 °C.

Page 357: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

343

Calibración del sensor de flujo. Para la calibración del sensor de flujo tipo turbina se

siguió la siguiente metodologia:

1. Se consideró como patrón a un sensor de flujo tipo Coriolis.

2. El sensor de flujo a calibrar se colocó en serie con el Coriolis.

3. Se fijó una temperatura de 25 °C y se varió el flujo másico 0.3 1, 3, 5, 10 y 15

kg/min, esperando en cada lectura un tiempo mínimo de condiciones de

estabilidad de 15 minutos para el registro del potencial que mostraba el

sensor. Estos datos se almacenaron en un archivo.

4. Después, se incrementó la temperatura con un incremento de T = 10°C y se

varió el flujo másico descrito en el punto 3, hasta llegar a una temperatura de

150 °C.

5. A continuación, se procedió a calcular el flujo másico contra el voltaje y se

calculó una correlación correspondiente. Las ecuaciones de los extremos de la

calibración fueron las siguientes:

A 20 °C F = 10.421x - 13.166 (5)

A 150°C F = 10.024x - 12.176 (6)

Donde F es el flujo masico, en kg/min, y ‚x‛ el potencial en voltios.

Calibración del sensor de temperatura. Para la calibración del sensor de temperatura

se siguió la siguiente metodología:

1. Se fijó una temperatura de 20 °C en un baño térmico.

2. Se introdujo un sensor de temperatura patrón y el testigo.

3. Se tomaron las lecturas de ambos sensores hasta condiciones de estabilidad

y se almacenaron los datos en un archivo.

4. Después, se aumentó la temperatura un T = 10°C y se regresó al punto 3

hasta alcanzar una temperatura de 150 °C.

5. A continuación, se calculó la ecuación de la línea de tendencia del sensor

testigo:

T = 1.0107 (a) - 1.6722 (7)

Donde T es la temperatura calibrada del sensor testigo en °C, válida en un rango

de 20 °C y hasta 150 °C.

El control del flujo refrigerante es fundamental para el control del sistema.

Cuando éste no se controla, no se alcanza el periodo estable del sistema y no se

recupera energía (véase la figura 6). La puesta en marcha del control automático

por medio del fluido de trabajo en el condensador y en el evaporador muestra

que se pueden alcanzar los estados permanentes en los que se han calculado las

potencias de cada una de las operaciones unitarias involucradas en el ciclo

Page 358: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

344

termodinámico de recuperación de calor, el cual puede provenir de energías

alternativas o de desecho industrial.

Fig. 6. Transitorio de la operación de un sistema de recuperación de energía de

desecho.

Page 359: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

345

Fig. 7. Condiciones de operación para revalorización de energía de 70 °C.

En la figura 7 se muestran las condiciones de operación para la revalorización.

Obsérvese que se llega a recuperar entre 25 y 33% de la energía de desecho con al

menos 20 °C por arriba de la temperatura a la que fueron desechados. El nivel de

recuperación de calor permite obtener 33% a 112 °C y hasta 25% a 120 °C de la

energía simulada en el LITA-CIICAp.

En las figuras 8 y 9 se ven las pantallas del control de fluido de trabajo, por medio

de revoluciones por minuto, realizado en LabView, y la pantalla del usuario para

la adquisición de datos cada cinco segundos, realizada en HPVEE Pro, desde

donde se llama al programa de control cuando es necesario, en función del

algoritmo mostrado en la figura 3.

Fig. 8. Pantalla del usuario para el control de rpm de bomba de fluido

refrigerante.

Page 360: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

346

Fig. 9. Pantalla de usuario para adquisición de datos.

Conclusiones

El control automático para un transformador térmico de una etapa, con el

cual se lleva a cabo

la revalorización de energía proveniente de energías alternativas o de

desecho industrial, se puede hacer por medio del control del flujo entre el

condensador y el evaporador, conocido como fluido refrigerante. La

operación se logra por medio del control del flujo mEV, en el cual se puede

hacer una revalorización de energía de 80 °C a 120 °C, en el mejor escenario.

Agradecimientos

Los autores desean expresar su agradecimiento al proyecto Desarrollo y

Aplicación de un Sistema de Refrigeración Termosolar Autosuficiente y

Sustentable para Conservación de Productos Perecederos en Comunidades

Costeras Alejas de la Red, por su apoyo parcial para esta investigación.

Page 361: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

347

Referencias

1. Balance Nacional de Energía (SENER), 2008.

2. Romero, R. J., E. Velasco Uribe y J. Casillas Solano, ‚Comparación de la

producción de CO2 contaminante basada en el rendimiento de bombas de

calor‛, Memorias del XXVIII Encuentro Nacional de la AMIDIQ, Manzanillo,

Colima, 2007.

3. Beltr{n Couste, J., ‚Evaluación de un sistema experimental de

refrigeración por absorcion, que opera a baja temperatura con la mezcla

monometilamina-agua‛, tesis de licenciatura en Ingeniería Mec{nica, FCQEI-

UAEM, 2009.

4. Fathalah, K. y S. E. Aly, ‚Theoretical Study of a Solar Powered

Absorption/MED Combined System‛, Energy Conversion and Management, vol.

31, núm. 6, 1991, pp. 529-544.

5. Al-Juwayhel, F., H. El-Dessouky y H. Ettouney, ‚Analysis of Single-Effect

Evaporator Desalination Systems Combined with Vapor Compression Heat

Pumps‛, Desalination, núm. 114, 1997, pp. 253-275.

6. Elshamarka, S., ‚Absorption Heat Pump for a Potable Water Supply in a

Solar House‛, Applied Energy, vol. 40, núm. 1, 1991, pp. 31-40.

7. Nguyen, M., S. B. Riffat y D. Whitman, ‚Solar-Gas-Driven Absorption Heat-

Pump Systems‛, Applied Thermal Engineering, vol. 16, núm. 4, 1996, pp. 347-356.

8. Huicochea, A., J. Siqueiros y R. J. Romero, ‚Portable Water Purification

System Integrated to a Heat Transformer‛, Desalination, núm. 165, 2004, pp.

385-391.

9. Romero, R. J. y A. Rodríguez-Martínez, ‚Optimal Water Purification Using

Low Grade Waste Heat in an Absorption Heat Transformer‛, Desalination, vol.

220, núms. 1-3, marzo de 2008, pp. 506-513.

10. Alanís Navarro, J. A., D. C. Labastida del Toro, M. Fernández Resenos y R.

J. Romero, ‚Control de flujo refrigerante en una bomba de calor por absorción

de una etapa‛, Memorias del Encuentro de Investigación en Ingeniería Eléctrica,

Zacatecas, 2006, pp. 204-208.

11. Romero, R. J., J. A. Sequeiros, M. A. Basurto-Pensado, J. J. Escobedo y J. M.

Sierra, ‚Instrumentación específica para un transformador térmico de una

etapa‛, Memorias de la XXVII Semana Nacional de Energía Solar, Chihuahua, 2003.

12. Barajas Mendoza A., Algoritmo de control y propuesta de control automático

para un transformador térmico por absorción de una etapa para revalorización de

energía térmica, tesis de licenciatura en Ingeniería Química, FCQEI-UAEM,

México, 2007.

13. Romero, R. J., A. Barajas Mendoza y L. Rayón López, ‚Propuesta para el

control de flujo refrigerante en una bomba de calor por absorción de una

Page 362: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

348

etapa‛, Memorias de la XXX Semana Nacional de Energía Solar, Puerto de

Veracruz, 2006.

Page 363: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

349

Numerical Simulation of the Field Confinement

in a Quasiperiodic Multilayered Microsphere as

an Application of the Software Engineering

Gennadiy Burlak, A. Díaz-de-Anda, René Santaolaya Salgado, Moisés González

García.

Resumen. Estudiamos numéricamente el control del espectro de frecuencias de

nano-emisores puestos en una micro-esfera recubiertas con una pila cuasi

periódica. Se investiga la evolución espectral de transmisión con el cambio de

espesor de bloques de dos capas, construidos siguiendo la secuencia de

Fibonacci. Encontrado básicamente un comportamiento no lineal en dicho

sistema: cuando el número de capas (el orden de Fibonacci) aumenta, la

estructura del espectro de transmisión adquiere una forma fractal. Nuestros

cálculos muestran el confinamiento y una mejora gigantesca del campo, cuando

la relación entre el ancho de las capas en la pila (parámetro de control) está cerca

del valor de la regla de oro. Se discute también la necesidad de un código de

programación estructura orientada a objetos, para el estudio numérico de tal

sistema no lineal.

Keywords: nanosystem, microsphere, quasiperiodic stack, numerical

calculations, control of radiation.

Abstract. We numerically study control of the frequency spectrum of

nanoemitters placed in a recently constructed microsphere with a quasiperiodic

spherical stack. The spectral evolution of transmittance at the change of thickness

of two-layer blocks, constructed following the Fibonacci sequence, is

investigated. We found essentially nonlinear behaviour in such a system: when

the number of layers (Fibonacci order) increases the structure of transmittance

spectrum acquires a fractal form. Our calculations show the confinement and

gigantic field enhancement when the ratio of layers widths in the stack (control

parameter) is close to the golden mean value. The necessity of object-oriented

structure of the program code for numerical study of such a nonlinear system is

also discussed.

Page 364: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

350

Sumario:

1 Introduction 2. Basic equations 3. Program realization 3. Program realization

4. Numerical Results 5. Fractal structure 6. Conclusion. Referencias

1 Introduction.

The use of microcavities and microspheres in advanced optoelectronics has

provided a new view of various effects and interactions in highly integrated,

functional photonic devices. A fundamental question in this area is how to

drastically increase the spectral optical field strength, using artificially produced

alternating layers on the surface of a microsphere. Nowadays, the basic regime of

the operation for bare (uncoated) dielectric microspheres is the whispering

gallery mode (WGM) [1]. But since fabricating the coated dielectric spheres of the

submicron sizes [2], the problem arises to study the optical oscillations in

microspheres beyond the WGM regime for harmonics with small spherical

numbers. These possibilities allow expansion of the essential operational

properties of microspheres with attractive artificial light sources for advanced

optical technologies. The important optical property of a periodic alternating

spherical stack is the possibility of confining the optical radiation (see ([3] and

references therein). However, is periodicity necessary for such resonant optical

effects?

In order to answer this question, we have studied the optical radiation of a

nanosource (nanometer-sized light source) placed into a microsphere coated by a

quasiperiodic multilayered structure (stack) constructed following the Fibonacci

sequence.

Such structures are called quasiperiodic and, lie outside the constraints of

periodicity. One of the main properties of such a stack is re-reflections of the

electromagnetic waves from the interfaces of the layers that result in the

collective wave contributions. The collective optical effects in a quasiperiodic

spherical stack are appreciated only if the number of layers in the stack is large

enough. In this case, various approximations based on the decomposition of field

states in the partial spherical modes have insufficient accuracy, so a deeper

insight requires more advanced approaches. Our approach is based on the dyadic

Green's function technique [5] that provides an advanced approximation for a

multilayered microsphere with nanoemitters [6]. We have applied this approach

to a quasiperiodic spherical stack and found substantially enhanced optical

resonances (Green function strength), when the ratio of the layers width in two-

layer blocks in the stack (quasiperiodicity parameter) is close to the golden mean

Page 365: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

351

value. As far as the author is aware, the optical fields of nanoemitters placed in a

microsphere with a quasiperiodic spherical stack still have been poorly

considered, though it is a logical extension of previous work in this area.

This Report is organized as follows. In Section 2, we formulate our approach and

basic equations for optical fields in a dielectric multilayered microsphere. We

outline the numerical scheme of applying the dyadic Green function (DGF)

technique to evaluate the spectrum of a nanoemitter placed in such a

quasiperiodic system. We found the enhanced field peaks of such a parameter is

close to the golden mean value. Section 3, outlying the structure of our object-

oriented program code and the details of uur program realization is discussed.

In Section 4, we present our numerical results on the structure of the cavity field

states and resonances. In the Section 5 the fractal structures of the resonances in a

microsphere with quasiperiodic spherical stackmdependently of the

quasiperiodecity parameter is discussed. We fund the enhanced field peaks if

sunch a parameter is cleso to the golden mean value. In the last Section, we

summarize our results.

2 Basic equations

The A one dimensional quasiperiodic (QP) spherical stack, where a Fibonacci

sequence is considered, can be constructed following a simple procedure [4]. Let

us consider two neighbors 2-layers segments, long and short, denoted,

respectively, by L and S. If we place them one by one onto the surface of a

microsphere, we obtain a sequence: LS. In order to obtain a QP sequence, these

elements are transformed according to Fibonacci rules as follows: L is replaced

by LS, S is replaced by L. As a result, we obtain a new sequence: LSL. Iteratively

applying this rule, we obtain, in the next iteration, a sequence with a five-element

stack LSLLS, and so on. One can control the properties of such a QP stack by the

use of a control parameter . For the stack with N-elements, where N>>1, the

ratio of numbers of long to short elements is the golden mean value, 0=1.618.

Generally, in spherical geometry, the wave field depends on, position of

a source and, it is formed on a distance scale of the order magnitude of the radius

of the microsphere or thickness of nanolayers of a stack. For analysis of such a

spectrum, it is necessary to use a more advanced approach: the Green function

method.

The base of the latter is a representation of the optical field, radiated by a

nanosource in a coated microsphere, as a weighed superposition (sum) of

forward and backward waves (reflected from the layers interfaces). We consider

a situation where the radiating point source (nanoemitter) is placed into

microsphere coated by a quasiperiodic stack. In this case, the frequency spectrum

is not described longer by a spectrum of a bare microsphere slightly perturbed by

Page 366: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

352

the external stack. If the number of layers is large enough, we have to study the

photons field taking into account the spectral contributions of both the bottom

microsphere and a quasiperiodic stack. In order to calculate the properties of

such a field, we apply the Green function technique. In this case, a nanosource

corresponds to a nanorod or quantum dot that recently was employed in

experiments with microspheres, see [10], [7] and references therein.

Fig. 1: Geometry of system.

The spatial scale of the nanoemitter objects (1÷100)nm is at least one order of

magnitude smaller than the spatial scale of the microspheres (103÷104)nm.

Therefore, in the coated microsphere we can represent the nanoemitter structure

as a point source placed at r´ and having a dipole moment d0. It is well known

that the solution of the wave equation for the radiated electromagnetic field E(r)

is due to a general source J(r), [8], [9].

( ) ( ) ( ) (1)

where G(r, r´, ) is the dyadic Green function (DGF), which contains all the

physical information necessary for describing the multilayered structure.

Following the approach [5], we write down DGF of such a system as follows:

G(r,´r,w)=Gv(r,´r,w)δfs+G(fs)(r,´r,w) (2)

where GV(r, r´, ) represents the contribution of the direct waves from the

radiation sources in the unbounded medium, and G(fs)(r, r´, ) describes the

contribution of the multiple reflection and transmission waves due to the layer

interfaces. The dyadic Green's tensor GV(r, r´, ) in Eq. (2) is given by

H

H r E

H

E

E r

L L LS S S

Layer 1

r

rLayer k

Layer N-1

Media 0

L

1

k

Nr

Media N

Media N

TE-case

TM-case

Page 367: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

353

(3)

where G(fs)(r, r´, ) is the particular Green tensor, m is the spherical, l is the

azimuth quantum numbers, and ki = ωni/c, ni = (i(ω))1/2 is the refraction index.

3 Program realization

Calculation of a frequency spectrum of nanoemitter radiation in a layered

microsphere is a rather difficult problem in the use of computer resources, and

also on the complexity of the program code organization. Our realization

includes two main blocks. The first one contains the code with a description of

the structure of a layered microsphere, while the second block is responsible for

the dynamic calculation of a frequency spectrum and the radial distribution of an

electromagnetic field in the microsphere. Other blocks of the program realize the

graphic support, the data exchange, and also the mathematical library of the

special functions used for evaluation of the Green function.

Fig. 2. The hierarchy of main classes in the program code.

The organization of the program with such a level of complexity certainly

requires the object-oriented approach that provides the modularity and structure

of an object-oriented computer program. It is based on several techniques,

( )

, 1 0

,

0

2 1( , , )

4 ( 1)

( )!(2 ) ( , , ),

( )!

mfe s

p e o m l

f e

l pml

ik mx

m m

m l

m l

G r r

G r r

AbsStruct

BaseLayer BaseStack

BaseGreenTensor

SphericalStack

collection(Spheri

cal-Layers)

Iterative calculation or reflection and

transmittance matrices

Bound. conditions.

Spectrum of eigen-

frequencies.

Calculation optical fields in the

multilayered microsphere

Page 368: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

354

including inheritance, modularity, polymorphism, and encapsulation. In our

structure (see Fig. 2), the self-contained class AbsStruct defines the abstract

characteristics of a microsphere, including its characteristics (fields or properties)

and the microsphere's behaviors (methods). The base of the class hierarchy of a

microsphere contains two basic classes BaseLayer and BaseStack (with general

parent class AbsStruct); in those, the structure (materials and the sizes) of a

layered microsphere is memorized. The structure of the field is described by the

base class BaseGreenTensor that mainly contains the description of the

distribution of the optical fields equation (2) and scattering matrices (arrays) used

to solve equation (1).

Since a number of analytical approaches for low-layered microspheres (with 1 or

2 layers) was developed, we used a possibility to compare analytical and

numerical solutions to evaluate the accuracy of our calculations. To do that, we

used a general conception of polymorphism that allowed us to treat derived class

members (e.g. 2-layered microspheres) just like their parent class's members.

More precisely, in this case the polymorphism provided us the ability to use

objects belonging to different types of coated microspheres (1 or 2-layers system)

to respond to method calls of methods according to an appropriate type-specific

behavior.

At top of the class hierarchy, there is a class-successor (microsphere + field)

that contains among other data two methods of the class: 1) collections of the

layers that are defined by physical definition of the microsphere parameters, and

2) findings of matrixes of dispersion, calculated in agreement with the boundary

conditions imposed on the field in a microsphere.

Our program has a graphic user interface (GUI) to input all parameters of

a microsphere, nanoemitters and parameters of the optical fields, see Figure 5.

As a result, the program calculates various dependencies, e.g., the frequency

spectrum of coefficient reflection and transmittance of a stack, the spatial

distribution of the optical field, real and imaginary parts of the Green function of

the system, etc. The algorithm is completely realized in C# program language.

The visualization of graphical dependencies is prepared by means of a standard

package TeeChart (Steema Software (R)).

4 Numerical Results

The following parameters have been used in our calculations: the geometry of the

system is A{L(B,C)…S(B,C)…}D, where letters A, B, C, and D indicate the

materials in the spherical stack, respectively. The distinct two-layered blocks

L(B,C) and S(B,C) are stacked according to the Fibonacci generation rule with

control parameter being the ratio of layers.

Page 369: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

355

Fig. 3. Graphical user interface and example calculation of the reflection and

transmittance coefficients.

For L and S blocks we use the notation L=(B,C,1) and L=(B,C,), where is the

ratio of both thicknesses. In order to study the behavior of the field in the

microsphere, we have calculated the frequency spectrum of the transmittance

coefficient T and the corresponding spectrum of imaginary parts of the Green´s

function W≡Im(Gϕϕ(r,r,ω)), where r is the position of a nanoemitter, ω=2πf. We

have calculated the evolution of a spectrum for different values γ and also for

different numbers of layers in the spherical stack (Fibonacci order Fn) for a range

[300-600] THz, or [1000-500] nm. The most intensive optical peak was found for

the F9 stack, where =0.618=1/Γ0 (Γ0=1.618 is the golden mean value). The details

of the field spectra are shown in Figure 1 for 68 layers in the stack (34 of 2-layers

blocks, order Fibonacci is F9). We observe from Figure 1 that such a spectrum

consists of peaks with various amplitudes; however, the most intensive peak

with W=87 is located at 436.1THz (details of this peak are shown in the inset).

Thus, even though the periodicity of the stack is broken, well defined intensive

peak of the field is clearly seen.

Page 370: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

356

Fig. 5 . Spectrum of imaginary part of the Green´s function W=Gϕϕ(r,r) for

r=900nm and 68 layers in stack (34 of 2-layer blocks F9) for different values of

parameter quasiperiodisity γ close to the golden mean value: 1) 0.55, 2) 0.58, 3)

0.6, 4) 0.618, 5) 0.63, 6) 0.65, 7) 0.68.

We have also calculated the evolution of a spectrum for different values close to

= 1/Γ0 for a fixed number of layers in the spherical stack (Fibonacci order Fn). The

results are displayed in Figure 3 for the range [430-440] THz, or [697-681] nm.

Fig. 4. (a) imaginary parts of tangential component of the Green´s function

W=Gϕϕ(r,r) for r=900nm; (b) Frequency spectrum of transmittance coefficient T for

spherical quantum number m=9. Microsphere is coated by quasiperiodic stack with

N=68 (34 of 2-layers blocks, order Fibonacci F9) for γ=0.618. See details in text.

Page 371: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

357

One can see that in this area, the spectrum consists of rather narrow resonances,

and a set of satellite peaks appears around the main peak. The intensity of this

peak changes with a different γ, giving rise to another main peak, which

corresponds to another quasi-periodic stack.

When γ approaches to 1/Γ0=0.618, the field peaks become sharper, as shown in

Figure 3. We observe that the amplitude of resonances is maximal for case

γ=0.618. In previous figures, the frequency spectrum of the field (Im(Gϕϕ(r,a,f))

for the quasiperiodic stack was shown. The fractal complicity of the transmittance

spectrum is defined by the intrinsic properties of the quasiperiodic spherical

stack independently of the nanoemitter location. However, in experiments, it is

important to identify the spatial distribution of the field radiated by nanosources

located in such a quasiperiodic microsphere. Therefore, it is of interest to consider

the spatial field distribution in a cross-section contained both center of the coated

microsphere and nanoemitter for some resonant frequency. Such a distribution is

shown in Figure 4 for the most intensive resonance at f0=436.098 THz (see Figure

5), when the quasiperiodicity parameter =0.618. We observe from Figure 6 that

Im(Gϕϕ(r, a, ) has a very sharp peak in the place of the nanosource location. Such

a spatial field structure may be treated as a confinement of the electromagnetic

energy Im(Gϕϕ(r, r) [6] inside the coated microsphere. The leakage of photons

through such a structure into the outer space obviously is small.

We observe from Figure 6 that the field structure inside of the quasiperiodic stack

is anisotropic and quite intricate, but the field distribution beyond the coated

microsphere has a periodic character.

Fig. 6. Spatial structure W(r,)=Im(G(r,a, )) in a cross-section 0<r<21μm and

0<<2 of the microsphere with quasiperiodic stack for eigenfrequency

f=436.09THz. A nanoemitter is placed at point a=900nm. Other parameters are as

in Figure 2. One can see the confinement of field in the stack. Outer cycle

indicates the external boundary Rext=13.8μm of the quasiperiodic spherical stack.

Page 372: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

358

5 Fractal structure

As mentioned above, with a further increase of the Fibonacci order Fj, the

structure of T becomes more indented, see Figure 4. One can see from Figure

4(a) that in a vicinity f = 425 THz, the splitting occurs, and here a new extreme of

T has arisen. A new maxima (and minima) reshape the initially smooth form

of the transmittancy spectrum to a well expressed fractal structure. In order to

calculate the fractal dimension numerically, it is normally assumed that the

fractal is lying on an evenly-spaced grid; then count how many boxes are

required to cover it. Such a dimension is calculated by seeing how this number

changes as we make the grid finer. If N(c) is the number of boxes of side length c

required to cover the fractal, then the fractal (box-counting) dimension DH is

defined as: DH = lim[lnN(c)/ln(1/c)] at c0 (see e.g. (Mandelbrot, 1982), (Falconer,

1990). Let us note that the numerical estimation DH for a finite set is a rather

difficult problem and requires a great amount of data. In our approach, we have

formed the fractal by sequential elimination of quasiband gaps with values less

then . Such an approach is similar to the Cantor set generation, where the set is

created by repeatedly deleting the middle third of a set of line segments.

It is of interest to calculate the fractal dimension DH for other materials in

a quasiperiodic spherical stack. In particular, we studied the change of DH for a

case where the difference of refraction indexes for neighboring layers in the stack

is less. We have considered DH for stack with MgO (n = 1.72, 1-st layer), while the

material of 2-nd layer SiO2 was the same as before. In this case, the difference of

the refraction indexes = 0.26 is less with respect to the previous case. Our

calculations show that the transmittance frequency spectrum for such a

configuration is less indented than the previous case. Calculated fractal

dimension for such a stack is DH=0.965; which is close to 1; thus the fractal

properties for a stack with small n is less pronounced.

Page 373: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

359

Fig. 7. Fractal (capacity) dimension D_,H}(ε) for Fibonacci stack F_,j} with j=8÷12

and γ=0.5. The last curve shows the periodic stack case with F₁₂ and γ=1. (a)

lossless stack; (b) dissipative stack.

It is worth noting that the details of the optical field radiated by a nanoemitter

incorporated into a microsphere depend on the position of such a nanoemitter. In

general, such a field can be studied with the use of the above developed Green

function technique. However, the latter is not necessary in a case where only the

transmittance properties of a quasiperiodic spherical stack are of interest.

Conclusion

C We have studied the frequency spectrum of nanoemitters placed in a

microsphere with a quasiperiodic subwavelength spherical stack. We found that

the transmittance spectrum of such a stack consists of quasiband gaps and

narrow resonances induced by re-reflection of optical waves. We show that the

width of resonant peaks in the frequency spectrum becomes extremely narrow for

a quasiperiodic spherical stack of a high Fibonacci order. In principle, that allows

creating a narrow-band filter with a transmission state within the forbidden band

gap of nanoemitters, incorporated in such a coated microsphere. We have found

confinement and gigantic enhancement of the optical field in a quasiperiodic

structure when the ratio of layers width in two-layer blocks of the stack is close to

the golden mean value. This allows us to confine resonantly the field energy in

the quasiperiodic stack in a very narrow frequency range in order to create very

selective stop-band filters. Incorporating nanoemitters into such structured

microspheres can open new opportunities for the active control of light

Page 374: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

360

nanosources.

References. [1] Braginsky, V.B., et.al., Quality-factor and nonlinear properties of optical

whispering-gallery modes. 1989. Phys. Lett. A.137, 393. [2] Gourevich, I.,et al.,

Polymer Multilayer Particles: A Route to Spherical Dielectric Resonators. 2006.

Macromolecules. 39, 1449.

[3] Burlak, G.,. The Classical And Quantum Dynamics Of The Multispherical

Nanostructures. Imperial College Press, 2004.

[4] Vyacheslav R. Misko, Sergey Savel'ev, and Franco Nori.: Critical currents in su-

perconductors with quasiperiodic pinning arrays: One-dimensional chains and two-

dimensional Penrose lattices. Phys. Rev. B. 74 024522 (2006).

[5] Le-Wei Li; Pang-Shyan Kooi; Mook-Seng Leong; Tat-Soon Yee.: IEEE Trans.

Mi-crowave Theory. 42 2302 (1994).

[6] Burlak, G., Chavez, A.: Frequency spectrum and confinement of optical

radiation

of nanorods in multilayered microsphere. Optics Commun. 268 330 (2006).

[7] B. Mller, U. Woggon, M. V. Artemyev, R. Wannemacher.: Mode control by na-

noengineering light emitters in spherical microcavities. Appl. Phys. Lett. 83 2686

(2003).

[8] Chew W.: Waves and Fields in Inhomogeneous Media. IEEE Press, New York

(1996).

[9] Jackson J.D.: Classical electrodynamics. JOHN Willey, Sons. (1975)

[10] T. F. Smith, M. S. Waterman.: Identi¯cation of Common Molecular

Subsequences. J. Mol. Biol. 147, 195-197 (1981).

[11] Landau, L.D., Lifschitz, E. M.:Statistical Physics Part 2. Oxford, England,

Perg-amon Press. (1981).

Page 375: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

361

The use of Parallel Axtensions Libraries for

Scientific and Engineering Calculations.

Gennadiy Burlak, José Alberto Hernández Aguilar, René Santaolaya Salgado,

Moisés González Garcia

Resumen. Estudiamos el uso de la biblioteca de Ampliación Paralela de

Microsoft de la Estructura .NET 3.5 para cálculos paralelos. Hemos desarrollado

una jerarquía de clases anidadas que tienen una estructura interna complicada y

hemos hecho las pruebas de laboratorio (con una interfase gráfica de usuario

(GUI)) no sólo para los casos estáticos simples sino también para los tipos

dinámicos complicados. Nuestras pruebas han mostrado la alta velocidad de la

biblioteca. El uso de otras bibliotecas que permiten los cálculos en paralelo para

distintas aplicaciones multiplataforma también es discutido.

Palabras Clave. parallel calculations, hierarchy of nesting classes, cross-platform

applications.

Abstract. We studied the use of the library Microsoft Parallel Extensions to .NET

Framework 3.5 for parallel calculations. We have developed a hierarchy of

nesting classes having complicated internal structure and have made the bench

tests (with graphic user interface (GUI)) not only for simple static cases but also

for complex dynamic types. Our tests have shown high speedup of the library.

The use of other libraries allowing calculations in parallel for various cross-

platform applications is discussed also.

Sumario: 1. Introduction 2. The structure of classes and working examples 3. Results and

Discussion 4. Conclusions. Referencias

1 Introduction

Dual cores PCs have gradually become the standard in Universities. Quad core

PCs are also getting closer, and PCs with greater number of CPUs/cores are also

available. Modern scientific problems require large amounts of computational

tasks which are well time consuming. Sometimes parallel/ distributed computing

Page 376: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

362

of such problems is of critical importance [1], [2]. Nowadays developers have

access to PCs with several CPUs/cores; so there is a great task to use the whole

computing power of such PCs in order to load all the cores to work effectively in

parallel. Recently was published the Parallel Extensions to .NET Framework 3.5

Community Technology Preview (CTP) that provides a managed programming

model for data parallelism, task parallelism, and coordination on parallel

hardware unified. Parallel Extensions makes it easier for developers to write

programs that scale to take advantage of parallel hardware by providing

improved performance as the numbers of cores and processors. Parallel

Extensions provides library based support for introducing concurrency into

applications written with .NET languages, including e.g. C#. In this release

various samples of the library were used for time consuming problems

calculating sequentially and in parallel was done (solve nqueen puzzle, sorting

example, simple matrix multiplication, etc). However in the samples mainly was

used a data with simple numeric static structure. For instance, the product of

random double matrixes with large size was sequentially and in parallel

processed. For such configurations it was demonstrated that performance of in

parallel calculations gives an essential speedup of calculations. However in

engineering calculations frequently one meets more advanced problems in which

it is necessary to use the dynamic data with complicated internal structure.

Typical example is calculations with complex numbers, Fast Fourier

transformations, various numeric transformations with complex matrixes and

vectors. Such structures normally must serve as dynamically distributed objects

rather than being static ones. For such situations in parallel calculations are of

great practical importance. It is well known that among the popular

programming languages only FORTRAN and PYTHON have in-built complex

data type. In languages as C++ and C# such types have to be created by

programmers.

However in languages C ++ and C# we meet other much more important feature:

possibility to overload of the standard mathematical operators: addition,

subtraction, multiplication and division that allows to extend considerably the

meaning of such operators. The operator overloading allows constructing much

more advanced numeric (and not only numeric) classes, such as a complex

vectors and matrices having quite complicate behavior. However speedup of

such structures in parallel mode still has been poorly considered though it is a

logical extension of previous investigation in this area.

In this Report we discuss the computations in parallel for C# that allows

distributing the appropriate tasks effectively at all cores available in the system.

We will take a very brief look at what is provided by Microsoft's in Microsoft

Parallel Extensions to .NET Framework 3.5. The main aim is to discuss how to

implement parallelism for dynamic hierarchies of classes with advanced internal

Page 377: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

363

structure. We developed and applied such hierarchy of the nesting classes

(complex matrixes and complex vectors) as working structures at in parallel

calculations and have performed the bench tests. Also we have compared our

results with parallel computations for other library.

2The structure of classes and working examples

Fig.1 shows the structure of our nested classes for complex numbers, vectors and

matrixes. One can see that structural complexity of such objects is much deeper

with respect to a simple double type. For evaluation of real meaning of the MS

parallel library it is important to investigate the speedup of calculation in parallel

for such advanced structures.

Fig.1. Logic diagram and structures of nested classes used in our calculations.

In order to make bench tests of in parallel calculations we used MS VS C# 2008

Express Edition, see Fig.PicrkVS. To handle advanced calculations we had to

extend essentially the code of a testing program. The elaboration consists in the

following. i) The program was added part of code that allow working with

dynamic objects, and ii) the graphic user interface (GUI) has been created. The

latter allow selecting the type of test, and also a desired dimension of the complex

matrixes. Details of our calculations and GUI are depicted in Fig.2. We have

performed the bench tests of library mainly for one of must frequently used in

parallel libraries the cycle operator Parallel.For. We did it not only for static

Page 378: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

364

numeric data, but also for complex dynamic structures. Results of this work are

shown in Fig. 3 and summarized in Table 1.

The following technique was used to create the parallel loops over iteration

spaces. For example, let's parallelize the loop, where the iteration range is based

on doubles (for further references see [3])

for(int i = 0; i<1000; i ++)

{

Process(i);

}

The CTP Parallel.For(,,) only contains overloads For where the iteration variable.

As an example, the previously shown loop could be rewritten as:

Parallel.For(0, 1000, i => //using a lambda expression

{

double d = i / 1000.0;

Process(d);

});

The pseudocode for multiplication of dynamic complex matrices by means of

sequential processing and parallel processing is shown below:

Double ParallelMultiplicationOfComplexMatrix(N)

Imaginary number I;

Integer MATRIX_SIZE = N

#Construction of dynamic matrices

MatrixComplex m1a = MatrizComplex(MATRIZ_SIZE)

MatrixComplex m2a = MatrizComplex(MATRIZ_SIZE)

MatrixComplex m1 = MatrizComplex(MATRIZ_SIZE)

MatrixComplex m2 = MatrizComplex(MATRIZ_SIZE)

# Fill Matrices with random Numbers

for i=0 to (MATRIZ_SIZE-1) with increments of 1

for j=0 to (MATRIZ_SIZE-1) with increments of 1

m1a[i, j] = m1[i, j] = generate_rnd_number() + I * generate_rnd_number()

m2a[i, j] = m2[i, j] = generate_rnd_number() + I * generate_rnd_number()

# Sequential product

Timer.start()

m3 = ProductSequential(m1a, m2a)

Timer.stop()

SequentialTime = Timer.getdifference()

Page 379: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

365

m3 =null

# Parallel product (Lambda operator => )

Timer.start()

=> m3 = m1 * m2

Timer.stop()

ParallelTime = Timer.getdifference()

# Ratio calculation

ratio = SequentialTime/ParallelTime

return ratio

End ParallelMultiplicationOfComplexMatrix

Fig. 2. In parallel calculations were tested in MS VS C\# 2008 Express Edition.

Getting the full workload of multicore processors can be tricky because, in order

for a program to make use of more than one core, it must divide its workload in

such a way that it does not take more effort than the gains achieved by adding

more cores. Most programming languages were written assuming just one

processor would be working through the code sequentially, line by line [8].

Above example shows that is really easy to add parallel processing using

functional programming and C# extensions.

Page 380: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

366

CTP library is quite powerful, easy to use, and provides a lot of different features,

which allow solving the different tasks of parallel computations. It provides

much more than just a single Parallel.For(). However, there are some issues,

which may require other solution for following reasons:

1. The parallel computations extension is targeted for .NET framework 3.5.

Recently the .NET Framework 4 Beta 1 is available for download [4].

However, some applications may still want to support earlier .NET

framework versions, like 2.0, for example that makes difficult for them to

use this extension. The parallel computations extension is not yet included

into the standard .NET framework installation, and requires components

that could not be installed on a target system.

2. The parallel computations extension provided by Microsoft is aimed to

run on Windows systems. However sometimes it is necessary to develop

the cross platform applications that also has to run on Linux, e.g. under the

Mono environment. In this situation one will be left without the paralleling

support.

Therefore further we give attention to the bench tests of parallel CTP library and

the parallel library AFORGE [5]. In the latter the use of the dynamic module

AFORGE.DLL is required only. This library represents a particular interest as it

allows in parallel calculation not only in Windows, but also on cross-platform

situations, for example in system Mono Linux. In this Report the following data

types were used to in parallel bench tests:

Page 381: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

367

Fig.3. Simple graphic user interface and our bench tests for in parallel

calculations.

1) static array double [,];

2) dynamic array double [,];

3) static array TcompD [,];

4) dynamic array TcompD [,];

5) dynamic class TCompMatrix and TCompVector with the operators

overloading;

The speedup factor K is defined as K = T_paral/T_seq, where T_paral is

average time of in parallel calculation, while T_ seq is the calculating

average time in a sequentially regime. Table 1 summarizes our calculations.

A computer with Windows XP SR.3, Intel Core2 duo CPU processor (two

processors), and frequency of 2.0 GHz was used

Page 382: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

368

3 Results and Discussion

We observe that performance in parallel computations is 0.75, from mean number

of speedup factor K from Table 1, which is evaluated in a simple way, 1.75-

1=0.75, which exceds the sequential calculations. The speedup of Aforge library is

comparable with CTP library at least for Parallel.For operator.For completeness it

is worth noting one interesting project that was developed in Parallel Language

Research Project, see [6]. Besides we have to refer to other more classical direction

of Message Passing Interface (MPI). MPI.NET is a high-performance, easy-to-use

implementation of the Message Passing Interface (MPI) for Microsoft's .NET

environment, for further references see [7].

Table 1. The speedup factor K of calculations in parallel.

Type of data CTP, 200x200 Aforge,

200x200

CTP,

400x400,

Aforge,

400x400

static matrixes:

double[,]

1.94 1.72 1.98 1.98

dynamic

matrixes:

double[,]

2.04 1.75 2.03 1.80

complex static

TcompD[,]

1.72 1.74 1.72 1.82

complex

dynamic

TcompD[,]

1.67 1.76 1.70 1.75

Multiplication

objects

TCompMatrix()

1.675 1.76 1.70 1.7

Mult.

TCompMatrix()

and

TCompVector()

2.36 2.24 2.38 2.27

Now almost all new servers and computers are running processors with

multiple cores, and the software-design community is trying to figure out

the best way of making use of this new architecture. Now is possible to use

state of the art models and parallel computing programming languages

like Chapel [9] or X10 [10], but if we analyze the sucessful of programming

languajes like Java or C# in last decade, they felt familiar so it was easy to

Page 383: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

369

adopt them. According to [11] People with legacy code need tools that have

strong attention to the languages they have written and give them an

incremental approach to add parallelism. If languages like X10 and Chapel

do turn out to be popular, their advancements will be integrated into more

popular languages.

4. Conclusions

We studied the use of the library Microsoft Parallel Extensions CTP to .NET

Framework 3.5 for calculations in parallel. In order to make the test deeper

we developed dynamic hierarchies of classes having complicated internal

structures that were applied as working example of advanced objects. Our

testing program with graphic user interface (GUI) has allowed us to

concentrate various bench tests. In result we have found that for advanced

data the performance in parallel at least on 70%-80% and even more can

exceed the sequential calculations. We believe using extensions like the

proposed in this paper are the best approach to include parallel processing

into new developments.

Page 384: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

370

Referencias. [1] Are Magnus Bruaset, Aslak Tveito, Numerical Solution of Partial

Differential Equations on Parallel Computers (Lecture Notes in

Computational Science and Engineering), Springer, 2006.

[2] Wenhua Yu, Raj Mittra, Tao Su, e.a., Parallel Finite-Difference Time-

Domain Method, Artech House Publishers, 2006.

[3] Eric Eilebrecht's blog,

http://blogs.msdn.com/ericeil/archive/2009/04/23/clr-4-0-threadpool-

improvements-part-1.aspx

[4] Visual Studio 2010 and .NET Framework 4 Beta 1,

http://msdn.microsoft.com/es-mx/netframework/dd582936(en-us).aspx

[5] GNC.com: Does parallel processing require new languages?,

http://www.gcn.com/Blogs/Tech-Blog/2009/06/New-parallel-processing-

languages.aspx.

[6] AForge.NET, http://www.aforgenet.com.

[7] Parallel Language Research Project, http://www.parallelcsharp.com.

[8] MPI.NET: High-Performance C# Library for Message Passing,

http://www.osl.iu.edu/research/mpi.net;http://www.osl.iu.edu/research/mpi.

net/software.

[9] Chapel: The Cascade High-Productivity Language,

http://chapel.cray.com/

[10] X10: The New Concurrent Programming Language for Multicore and

Petascale Computing, http://x10-lang.org/

[11] Reinders, James. Intel Threading Building Blocks Outfitting C++ for

Multi-core Processor Parallelism. Publisher O'Reilly Media, 2007.

Page 385: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

371

Capítulo IV. Inteligencia

Artificial y Visión

Page 386: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

372

Page 387: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

373

Complejidad de los datos en las redes neuronales

artificiales: situación actual

P. Toribio, B. G. Rodriguez, R. Alejo

Resumen. En la actualidad, las redes neuronales artificiales son ampliamente

utilizadas para tareas de reconocimiento de patrones, minería de datos y

aprendizaje automático. Lamentablemente, su aplicación a problemas reales

todavía está restringida debido a algunas debilidades, como lentitud en el

proceso de aprendizaje y pobre capacidad de generalización, la cual se ha

mostrado en múltiples aplicaciones prácticas.

En este trabajo se estudian las principales características de los datos de

entrenamiento que tienen un efecto negativo en el proceso de aprendizaje de la

red neuronal, por ejemplo: el ruido, el solapamiento de clases, desbalance de

clases, principalmente. Actualmente, la complejidad de los datos ha atraído la

atención de numerosos investigadores. Se ha observado que la capacidad de

generalización y la convergencia de la red dependen en gran medida del nivel de

complejidad de los datos de entrenamiento.

Palabras clave: Redes neuronales artificiales, costo-sensitivo, over-sampling,

under-sampling, Wilson.

Sumario:

1 Introducción 2 Complejidad de los datos 3 Métodos para tratar la

complejidad de los datos 3.1 Métodos de muestreo (rebalancear la ME) y costo-

sensitivo 3.2 Métodos para eliminar solapamiento, ruido, patrones atípicos y

solapamiento de clases 4 Conclusiones

1 Introducción

Hoy en día las áreas de reconocimiento de patrones, aprendizaje automático y

minería de datos han despertado el interés de muchos investigadores; éstas se

han convertido en herramientas útiles para automatizar procesos en diferentes

campos, como la medicina, la industria y la biología, entre otros. Por ejemplo, la

minería de datos ha surgido como alternativa para la extracción del conocimiento

de grandes cantidades de datos con la finalidad de tomar decisiones o

comprender algún fenómeno social o de la naturaleza. Actualmente, las redes neuronales artificiales (RNA) son muy utilizadas como

clasificadoras en tareas de minería de datos, aprendizaje automático y

reconocimiento de patrones. El Perceptron Multicapa (PM) ha sido utilizado en la

interpretación de imágenes de lectura remota1 y como aproximador universal,

principalmente. Sin embargo, aún se conoce poco de estos modelos, lo que trae

Page 388: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

374

como consecuencia, lentitud en el proceso de aprendizaje y pobre capacidad de

generalización. Varios investigadores han coincidido en que la precisión de estos

clasificadores depende de la calidad de los datos,2,3,4,16 porque las RNA fueron

diseñadas para aprender mediante bases de datos con clases balanceadas y

también con datos que puedan ser linealmente separables, o por lo menos, que

para este tipo de clasificador sea fácil transformar el espacio no linealmente

separable a uno linealmente separable, por lo tanto todos aquellos factores o

características del conjunto de datos que impiden que una RNA aprenda

correctamente reciben el nombre de complejidad de los datos.2,3,5,6,7

Cada investigador define de forma diferente o engloba factores diferentes en

cuanto a la complejidad de los datos; por ejemplo, Barandela3,4 dice que el

conjunto de datos para entrenar la red contiene patrones atípicos y ruidosos que

la afectan negativamente, Visa et al.2 tratan varios factores, como el desbalance —

el problema más grave en redes neuronales—,5,6,7,8 el tamaño de la muestra de

entrenamiento y el solapamiento de clases (véase la figura 1).

Fig. 1. Solapamiento de clases.

2 Complejidad de los datos

Como lo describimos en la sección anterior, la complejidad de los datos son

aquellos factores que disminuyen la calidad de la muestra de entrenamiento (ME)

y que por consiguiente disminuyen la precisión del clasificador. Estos factores se

definen como sigue:

Ruido: son datos con errores originados en su medición o registro —mal

etiquetados, es decir, cuando no pertenecen a la clase donde fueron

colocados.Patrones atípicos: son excepciones a la regla —aunque hayan sido

identificados correctamente, éstos son muy diferentes al resto de los patrones de

la misma clase.

Solapamiento: es cuando dos o más clases se encuentran interceptadas entre sí,

compartiendo elementos en común (véase la figura 1).

Page 389: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

375

Desbalance de clases: sucede cuando una clase tiene más patrones que las otras,

es decir, cuando una clase es demasiado pequeña respecto a las demás.

Tamaño de la ME: la cantidad de patrones es directamente proporcional al

tiempo que tarda una RNA en aprender todo el conjunto, por esta razón, entre

más grande sea la muestra, más tiempo consumirá la red en aprender los

patrones, a lo que hay que agregar la carga computacional asociada a este

proceso. Algunos autores8 no sólo asocian el tamaño de la ME a la cantidad de

patrones, sino también a la cantidad de atributos de cada patrón.

Distribución de la los datos: en la figura 2 se muestran dos casos en los cuales se

observa cómo están distribuidos los datos. En la figura 2a se ve una distribución

que, para una red neuronal, sería la óptima. Aquí tomaremos la linealidad dentro

de la distribución de los datos, pues la primera depende de la segunda.

Fig. 2. Distribución de los datos: a) caso óptimo, b) caso no óptimo.

3 Métodos para tratar la complejidad de los datos

El problema más grave, en el cual la mayoría de los investigadores se ha

enfocado de manera particular, es el desbalance de clases.2,5,6,8,10 Sucede que

en una buena parte de los problemas reales los datos están desequilibrados; por

ejemplo, en los fraudes por vía telefónica —los cuales son mucho menos que las

llamadas telefónicas normales— o al tratar con enfermedades como el SIDA —

pues, en comparación con las sanas, hay menos personas contagiadas. Para

corregir el problema del desbalance de datos, varios métodos han sido

propuestos. Entre los más conocidos están los métodos de muestreo,2,10 basados

en el de costo-sensitivo,11 los cuales se describen en la sección 3.1.

Para tratar el solapamiento de clases, patrones atípicos y ruido se utilizan

métodos como la edición de Wilson, basados en la técnica del vecino más cercano

(NN, nearest neighbor rule) y sus variantes, por ejemplo, el 1-NN, k-NN y CNN.

También se han utilizados técnicas basadas en el criterio de vecindad, como el

Grafo de Gabriel (GG, Gabriel Graph) y Grafo de la Vecindad Relativa (RNG,

Relative Neighbourhood Graph),12 las cuales se presentan en un panorama más

amplio en la sección 3.2. Cabe señalar que tanto estos métodos como los de

muestreo para combatir el desbalance modifican la distribución de los datos, así

como el tamaño de la ME. A partir de esto último, nos planteamos la siguiente

Page 390: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

376

pregunta: ¿qué tan conveniente es modificar el tamaño y la distribución de los

datos?

3.1 Métodos de muestreo (rebalancear la ME) y costo-sensitivo

Cuando hablamos de corregir el desbalance de datos por muestreo, nos referimos

principalmente al over-sampling, under-sampling.2,10 La función principal del

over-sampling es añadir a la clase minoritaria copias de los patrones de esta

misma clase hasta equilibrar las clases de manera aleatoria, aunque Haibo et al.10

nos dicen que la desventaja de usar este método es que se puede llegar a un

sobreajuste.13 De forma contraria, el under-sampling, elimina patrones de

manera aleatoria de la clase mayoritaria hasta balancear la ME. Además, se ha

popularizado SMOTE, una variación del over-sampling, cuya diferencia consiste

en el hecho de que ya no se duplican patrones aleatoriamente, sino que se crean

patrones sintéticos mediante la interpolación.2

Algunos autores rechazan estos métodos porque el under-sampling involucra

pérdida de información —pues descarta datos potencialmente útiles— y el over-

sampling incrementa el tamaño de la ME sin ningún aumento de información,

por lo tanto, sugieren que las investigaciones se enfoquen en los algoritmos de

aprendizaje.

Otro enfoque para combatir el desbalance de clases, es el de costo-sensitivo (cost-

sensitive),11 el cual se basa en la afirmación de que el precio de cometer un error

de clasificación debe ser distinto para cada clase.14 En este método se aplica una

matriz de costos para C clases —los valores dependen del problema que se esté

tratando—, donde:

Denota el costo de una clasificación (véase el cuadro 1) errónea de un patrón de

clase i-ésima en la clase j-ésima, , por ejemplo:

Además, en los últimos años se ha popularizado el paradigma de aprendizaje en

conjuntos,11,18 es decir, se entrenan varios clasificadores y se combinan sus

predicciones. En este paradigma, cada clasificador es un aprendiz; entonces, cada

uno de ellos vota por una clase, y la clase que haya recibido más votos es la que

se retorna.

Page 391: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

377

Cuadro 7. Ejemplo de una Matriz de Costo (Cost[i, j]) para una ME con tres clases

J

1 2 3

i

1 0 1 8

2 1 0 9

3 1 1 0

3.2 Métodos para eliminar solapamiento, ruido, patrones atípicos y

solapamiento de clases

Diversos autores15,16 hablan del uso de técnicas basadas en la regla del vecino

más cercano para la eliminación de ruido en la ME, lo que mejora el rendimiento

del clasificador. Como en la mayoría de las investigaciones solapamiento, ruido y

patrones atípicos se tratan en conjunto, englobaremos estos tres factores como

‚limpieza de la ME‛. Los algoritmos m{s utilizados para limpiar la ME son los

de Edición, los cuales consisten en descartar prototipos (patrones) que se

encuentren en la región correspondiente a una clase distinta a la suya, es decir,

prototipos cuya probabilidad de pertenencia a su clase se vea superada por la

probabilidad de pertenencia a alguna otra clase. La Edición de Wilson17 propone

eliminar los elementos atípicos de la muestra de entrenamiento mediante la

aplicación del procedimiento k-NN (k, vecinos más cercanos). Dado un patrón de

prueba de la ME, se buscan sus k-vecinos más cercanos, y si la mayoría de éstos

no pertenece a la misma clase, el patrón de prueba se elimina. La Edición de

WilsonCN18 es una modificación del algoritmo de Wilson. Este método se basa

en usar, en vez de la regla k-NN, la regla k-NCN (regla de los k-Vecinos de

Centroides más Cercanos) como clasificador central del método, debido a que con

ella se obtienen mejores resultados, sobre todo cuando el conjunto de

entrenamiento es relativamente pequeño. Este algoritmo presenta el

inconveniente de tener un costo computacional superior a la variante original, lo

que limita su utilización en determinados problemas reales. Además de los

métodos basados en la regla del vecino más cercano y sus variantes, los métodos

basados en el criterio de vecindad han dado buenos resultados para la limpieza

de la ME, aunque su impacto sobre la precisión del clasificador no ha alcanzado

lo esperado.

A continuación, el funcionamiento de estos métodos se describe con más detalle.

La técnica GG (Grafo de Gabriel)18 dice que para un conjunto V de n puntos

(refiriéndose a un vector) V = ,p1, p2,<, pn}, dos puntos pi y pj son vecinos de

Gabriel si:

dist2(pi,pj)<dist2(pi,pk)+dist2(pk,pj) (1)

Page 392: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

378

Uniendo mediante una arista todos los vecinos de Gabriel en pares, se obtiene el

grafo de Gabriel. En un sentido geométrico, los dos puntos pi y pj son vecinos de

Gabriel si el circulo con diámetro igual a la distancia entre pi y pj no contiene

ningún otro punto pk V.

La técnica Grafo de Vecindad Relativa (RNG)18 basa su funcionamiento en que si

dos puntos x, y son relativamente cercanos entre sí, el área definida por la

intersección del circulo con centro en x y radio xy, y el circulo con centro en y con

el mismo radio no contiene otro punto. Formalmente, el grado de la vecindad

relativa de un conjunto de puntos S tiene una arista entre x e y si:

dist(x,y)≤max[dist(x,z),dist(y,z)] (4)

La desventaja de estos métodos es que no se tiene control sobre los patrones que

se eliminan de la ME, y su uso en algunos casos aumenta el índice de error en

proceso de aprendizaje.2

4 Conclusiones

En este artículo concluimos que la complejidad de los datos son todos aquellos

factores que afectan la calidad de la muestra de entrenamiento y por consiguiente

disminuyen la presión de clasificación de la RNA. Estos factores son: ruido,

patrones atípicos, solapamiento de clases, desbalance de clases, tamaño de la ME

y distribución de los datos.

Hemos discutido sobre el problema llamado complejidad de los datos y sus

efectos en el entrenamiento de una red neuronal. Describimos también las

soluciones más utilizadas para tratar este problema, lo que nos ayuda a

comprender su magnitud, así como la dirección que deben tomar las

investigaciones futuras para solucionarlo.

Algunas propuestas de investigaciones futuras que podemos mencionar en este

artículo son la búsqueda de métricas que ayuden a medir los factores englobados

en la complejidad de los datos y la modificación de las técnicas anteriores para

obtener mejores resultados. Por ejemplo: hasta ahora, algunos de los métodos

mencionados se han aplicado en el espacio de entrada, pero ¿qué pasaría si se

aplicaran en el espacio oculto de la red neuronal, donde en realidad trabaja la

red?, ¿se mejoraría el desempeño de la red?

Page 393: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

379

Referencias

1. Foody, G. M., ‚Using Prior Knowledge in Artificial Neural Network with a Minimal

Training Set‛, International Journal of Remote Sensing, vol. 2, núm. 16, 1995, pp. 301-

312.

2. Visa, S. y A. Ralescu, A., ‚Issues in Mining Imbalanced Data Sets. A Review Paper‛,

Proceedings of the Sixteen Midwest Artificial Intelligence and Cognitive Science

Conference, 2005, pp. 67-73.

3. Barandela, R., E. Gasca y R. Alejo, ‚Corrección de la muestra para el aprendizaje del

Perceptron Multicapa‛, Revista Iberoamericana de Inteligencia Artificial , año 2, vol. 9,

núm. 13, 2001.

4. Barandela, R., E. Gasca y R. Alejo, ‚Correcting the Training Data. Combinatorial

Optimization‛, Dordrecht, 13, 14, 2002.

5. Anand, R., K. Mehrotra, C. Mohan y S. Ranka, ‚An Improved Algorithm for Neural

Network Classification of Imbalanced Training Sets‛, IEEE Transactions on Neural

Networks, núm. 4, 1993.

6. Murphey, Y., H. Guo y L. Feldkamp, Neural learning from imbalanced data, Applied

Intelligence, núm. 21, 2004.

7. Bruzzone, L. y S. Serpico, ‚Classification of Imbalanced Remote-Sensing Data by

Neural Networks‛, Pattern Recognition Letter, núm. 18, 1997.

8. Lu, Y., H. Guo y L. Feldkamp, ‚Robust Neural Learning from Unbalanced Data

Examples‛, Proceedings of IEEE International Joint Conference on Neural Networks,

1998.

9. Sanchez, J. S., R. A. Mollineda y J. M. Sotoca, An Analisis of how Training Data

Complexity Affects the Nearest Neighbor Classifiers, Springer-Verlag, Londres, 2007.

10. Haibo, He y Edwardo A. Garcia, ‚Learning from Imbalanced Data‛, IEEE

Transactions on Knowledge and Data Engineering, vol. 21, núm. 9, 2009.

11. Zhi-Hua, Xu-Ying Liu, ‚Training Cost-Sensitive Neural Networks with Methods

Addressing the Class Imbalance Problem‛, IEEE Transactions on Knowledge and Data

Engineering, vol. 18, núm. 1, 2006.

12. Sánchez Garreta, José Salvador, Training. Aprendizaje y clasificación basados en

criterios de vecindad: métodos alternativos y análisis comparativo, tesis doctoral,

Universitat Jaume I, 1998.

13. Mease, D., A. J. Wyner y A. Buja, Boosted Classification Trees and Class

Probability/Quantile Estimation, Journal of Machine Learning Research, vol. 8, 2007.

14. Kukar, M. e I. Kononenko, Cost-Sensitive Learning with Neural Networks, XIII

European Conference on Artificial Intelligence, 1998.

15. Gopalakrishnan M., V. Sridhar y H. Krishnamurthy, ‚Some application of clustering

in the desing of neural networks‛, Patter Recognition Letters, vol. 16, núms. 59-65, 1995.

Page 394: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

380

16. Barandela, R y E. Gasca, ‚Decontamination of Training Samples for Supervised

Pattern Recognition Methods‛, en F. Ferri et al., Lecture Notes in Computer Science,

1876; Advances in Pattern Recognition, Springer-Verlag, Nueva York, 2000.

17. Wilson, D. L., ‚Asymptotic Properties of Nearest Neighbor Rules Using Edited Data

Sets‛, IEEE. on Systems, Man and Cybernetics, vol. 2, 1972, pp. 408-421.

18. S{nchez, J. S., F. Pla y F. J. Ferri, ‚Using the Nearest Centroid Neighbourhood

Concept for Editing Purpose‛, Proceedings VII Simposium Nacional de

Reconocimiento de formas y Análisis de Imágenes, núm. 1, 1997, pp. 175-180.

19. T. G. Dietterich, Ensamble Learning. The Handbook of Brain Theory and Neural

Networks, 2a. ed., MIT Press, Cambridge, Mass., 2002.

Page 395: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

381

Automatización del Proceso de Ensamble

utilizando Visión Artificial

Mario Peña Cabrera, H. Gómez N., R. Osorio C., Ismael López-Juárez, Oleg

Sergiyenko

Resumen. Desde que el primer robot manipulador en aplicaciones industriales fue

instalado para General Motors, la planeación y ejecución de sus movimientos ha sido

parte del desarrollo de los sistemas robóticos y ha involucrado a investigadores de

diferentes especialidades. La planificación y guía del movimiento en los robots es cada

vez más compleja, debido a la gran variedad de aplicaciones en las que éstos se

utilizan; desde tareas extremadamente repetitivas en las líneas tradicionales de

ensamble hasta la asistencia en los movimientos precisos de las operaciones

quirúrgicas. El artículo muestra un método novedoso basado en la integración de un

algoritmo de reconocimiento y una arquitectura neuronal para aplicaciones de

reconocimiento invariante de objetos, utilizando robots industriales autoadaptables que

realicen tareas de ensamble. El método utilizado en experimentaciones de laboratorio

es ahora presentado como una técnica robusta para el ensamble de piezas con robots

guiados por visión artificial. Los objetos nuevos son reconocidos en milésimas de

segundo y posteriormente clasificados en línea para realizar ensambles en tiempo real.

La arquitectura se entrena primero con pistas que representan objetos diferentes a los

cuales el robot, durante su aplicación, tratará de encontrar dentro de su espacio de

trabajo para formar su base de conocimientos previos (BCP). Esta información dispara

entonces el subsistema de aprendizaje en línea, basado en la red neuronal artificial

FuzzyARTMAP, y el nuevo vector representativo de la imagen se sobreimpone a las

pistas iniciales. El robot aprende a identificar tanto aquellos objetos que le son

familiares como los nuevos, de esta manera se integra un sistema robótico más

complejo con diferentes aplicaciones en manufactura inteligente. La propuesta

tecnológica para el reconocimiento invariante de objetos está basada en el uso de

formas canónicas dentro de la base primitiva de conocimiento y en la utilización de los

aspectos y principios de la Gestalt. De este modo, se construyen las piezas con esas

formas canónicas y se las agrupa de varias maneras, siguiendo el conocimiento a priori

y considerando las formas de agrupamiento como pistas. El artículo muestra el diseño

y los resultados obtenidos con el uso de la técnica descrita para reconocer piezas de

ensamble dentro de una celda de manufactura inteligente.

Sumario: 1 Introducción 2.1 Reconocimiento de objetos sin variante 2.2 Redes neuronales

artificiales 3 Manufactura inteligente 3.1 Ensamble 4. Sistema de visión 4

Metodología 4.1 Generación del vector descriptivo 5 Resultados experimentales

Page 396: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

382

5.1 Entrenamiento y reconocimiento en línea 6 Conclusiones y trabajo futuro.

Referencia

1 Introducción

Es deseable que los sistemas de visión actuales sean capaces de ver y percibir objetos e

imágenes de la manera más semejante a como lo hace el ser humano. Esto es cada vez

más necesario cuando se utilizan sistemas robóticos complejos en los cuales la

planificación y guía del movimiento se ha ido complicando debido a la gran variedad

de aplicaciones en las que los robots se utilizan.1 La planeación de los movimientos de

los robots, o bien, la guía en línea para la realización de un proceso de ensamble, se

utilizan de una u otra manera como la trayectoria o el curso planeado o calculado. El

curso o rumbo de un movimiento robótico se define como la búsqueda continua de

secuencias de movimiento sin colisiones entre un principio y una meta de movimiento

a realizar; en cambio, la planeación de una trayectoria tiene que ver también con el

historial o el plan programado de una configuración de secuencias de movimiento.2,3

Los sistemas en los cuales los robots tienen que compartir espacios comunes con otras

máquinas o incluso otros robots manipuladores son el resultado de las demandas

industriales en las que el tiempo, el espacio y la productividad están muy ligados entre

sí. Por ejemplo, tratándose de volúmenes de producción muy grandes y tiempos

prolongados del ciclo de vida de los productos, la planeación de las trayectorias de

movimiento de los robots que van a ser instalados en un proceso de manufactura de

algún producto nuevo se puede hacer ‚fuera de línea‛ y en un tiempo largo; sin

embargo, aun así, puede hacerse necesario el detener la producción de una línea de

manufactura, corroborar de cuando en cuando la exactitud de las trayectorias

planeadas y establecer algún ajuste para luego reestablecer la línea de producción.

Por otro lado, en sistemas en los que el volumen de producción es pequeño o mediano

—producción por lotes— y una sola celda de manufactura tiene que manufacturar una

variedad de productos, el proceso de planeación o cálculo de las trayectorias tiene que

ser muy eficiente para asegurar que el tiempo que la línea de producción esté fuera de

servicio no afecte el costo final de la producción del producto. De acuerdo con esto, la

utilización de metodologías y la creación de algoritmos debe darle más flexibilidad a

los sistemas no estructurados, permitiendo la planeación o c{lculo de trayectorias ‚en

línea‛ e incrementando consecuentemente la productividad de los sistemas. En este

sentido, se considera que la aplicación de técnicas de ‚inteligencia artificial‛ (soft

computing) mejora el desarrollo de la planeación global de las trayectorias de los

movimientos de los robots manipuladores industriales. En este enfoque del problema,

se considera el hecho de que los mismos robots manipuladores tienen que encontrar un

objetivo específico, definido como coordenadas en su área de trabajo, en lugar de llevar

a cabo una configuración de tareas fijas y repetitivas. En los dos últimos decenios, este

problema ha sido estudiado por muchos investigadores.

Page 397: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

383

Técnicas de soft computing‛ es el nombre que se le ha dado en la tecnología de la

información al conjunto de métodos que abarcan la ‚lógica difusa‛, las ‚redes

neuronales‛ y los ‚algoritmos genéticos‛ utilizados para resolver los problemas no

lineales que los métodos tradicionales no pueden resolver.

Los algoritmos genéticos fueron desarrollados por Holland y posteriormente

implementados por Goldberg. Un algoritmo genético es una estrategia de búsqueda

que imita la teoría de la evolución de la vida natural. La lógica difusa, propuesta

inicialmente por Zadhe, en 1965, e implementada por primera vez por Madmani, en

1974, es una extensión de la lógica Booleana que permite el procesamiento de

información vaga o difusa. Las redes neuronales artificiales pretenden simular la

manera como el cerebro humano interpreta y procesa la información. Los primeros

trabajos al respecto fueron presentados por McCulloch y Pitts, en 1943.

2 Visión artificial

El advenimiento de sistemas robóticos más complejos, en aplicaciones como

manufactura inteligente, ciencias de la salud y el espacio, han creado la demanda de

mejores sistemas de visión. Los sistemas de visión deben ser capaces de ver y percibir

objetos e imágenes de la manera muy parecida a como el ser humano ve y percibe. Las

ideas que han inspirado el proyecto y nos han otorgado un razonamiento para el

diseño de la metodología han sido tomadas de observar el comportamiento en bebés

humanos de entre tres meses y dos años, así como el comportamiento respecto de la

evolución del desarrollo mental en los humanos, reportado por Piaget. Al observar

cómo los bebés entienden una escena visual para asir un simple objeto o seguir una

trayectoria con la mirada, se encontró que existen dos factores que deben considerarse

como válidos para nuestro proyecto:

Hay un primer punto dentro de la escena en el cual todos los atributos y la

extracción de características se basan y éste parece ser el centro de masa —el área con

más peso dentro de la imagen.

Una vez que un objeto ha sido presentado para su visualización y aprendizaje, en

la siguiente ocasión en que se le enseña el objeto al bebé humano, éste busca pistas en la

escena utilizando datos y características previamente aprendidos.

Estas ideas nos han llevado a pensar en la posibilidad de obtener información fiable y

rápida con un análisis simple pero objetivo de lo que un objeto debe mostrar como la

información más adecuada, necesaria y primitiva para tener un conocimiento

sustancial y robusto de lo que se está viendo y memorizar los aspectos más importantes

de la escena —a los que hemos llamado ‚pistas‛. Las pistas pueden utilizarse para

recordar aspectos del objeto ya memorizados sin tener que obtener características más

detalladas. Por medio de las redes neuronales, es posible aprender habilidades para

manipular objetos que puedan ser usados por los robots manipuladores industriales.

De alguna manera, los seres humanos lo hacemos de ese modo cuando ya hemos visto

Page 398: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

384

y aprendido algo sobre el objeto, por lo tanto, creemos que aprendiendo formas

canónicas en el proceso inicial de conocimiento será posible reconstruir más tarde todo

el conocimiento acerca del objeto.

2.1 Reconocimiento de objetos sin variante

El reconocer un objeto utilizando un sistema de visión artificial involucra una gran

cantidad de cálculos y procesos matemáticos que tienen que ser codificados e

implementados y probados para su utilización en una aplicación real. Los sistemas de

visión y las tecnologías de estado sólido han evolucionado en forma paralela, es decir,

al tener computadoras más rápidas y sofisticadas, se han podido desarrollar e

implementar mejores y más complejos sistemas de visión con algoritmos más

complejos que anteriormente parecía que no llegarían a ser una realidad. Las ideas

básicas fueron establecidas con representaciones, arquitecturas y algoritmos que

llevaron al desarrollo de esta disciplina en la investigación. Una solución general al

problema de reconocimiento no existe todavía, la mayoría de los métodos clásicos de

reconocimiento de objetos utilizan análisis de formas y extracción de atributos

mensurables de imágenes digitales para alcanzar las soluciones. Las investigaciones

más recientes apuntan al uso de técnicas de inteligencia artificial para buscar las

soluciones al reconocimiento invariante de objetos utilizando la visión artificial. Las

redes neuronales artificiales son técnicas muy representativas para este propósito.

Nuestra propuesta de metodología para el reconocimiento invariante de objetos está

basada en el uso de formas canónicas dentro de la base primitiva de conocimiento.

Estas formas canónicas se pueden representar por un vector descriptivo que hemos

llamado ‚CFD&POSE‛, el cual contiene la información necesaria para llevar a cabo las

ideas que aquí se muestran: el diseño y los resultados obtenidos de la experimentación

con piezas de ensamble dentro de una celda de manufactura inteligente diseñada

alrededor de una arquitectura holónica donde cada componente de la celda es un

agente inteligente.

Al utilizar el modelo de red neuronal FuzzyARTMAP, se aprenden habilidades para

manipular objetos usados por robots manipuladores industriales, emulando de alguna

manera el comportamiento de los humanos.

El reconocimiento se establece al conformar un vector que asimila la información del

objeto con una dimensión fija de datos y basado en la secuencia geométrica de formas

canónicas dentro del proceso inicial de conocimiento, para más tarde hacer posible la

reconstrucción del conocimiento acerca del objeto.

Page 399: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

385

2.2 Redes neuronales artificiales

Existen diferentes tipos de redes neuronales artificiales (RNA). Para esta investigación

se utilizó la red FuzzyARTMAP. ART son las iniciales de Adaptive Resonance Theory, un

modelo bien establecido y asociado al funcionamiento cerebral; muy competitivo,

introducido como una teoría del proceso cognitivo del ser humano y desarrollado por

Stephen Grossberg en la Universidad de Boston. Grossberg resumió las situaciones

mencionadas anteriormente en lo que llamó ‚Stability-plasticity dilemma‛ , sugiriendo

que los modelos conexionistas deberían tener la posibilidad de adaptación y cambiar

entre sus estados plásticos y estables. Esto es, un sistema debe exhibir plasticidad para

acomodar la información nueva proveniente de eventos no familiares, pero también

debe permanecer en una condición estable si ocurre información familiar o irrelevante.

Este modelo de red se caracteriza por su capacidad de adquirir conocimiento

incremental y su estabilidad, y además, por su respuesta rápida al reconocimiento de

información.

3 Manufactura inteligente

Recientemente, se ha generalizado la idea de contar con celdas inteligentes de

manufactura que utilicen robots con capacidades sensoriales y algoritmos inteligentes

basadas en las últimas investigaciones y desarrollos de inteligencia artificial (IA), como

la lógica difusa y las redes neuronales. Con estas técnicas se simplifica el manejo de

modelos matemáticos complejos que requieren de bastante tiempo de cómputo para su

aplicación. El uso de sistemas multimodales que obtengan información de diferentes

modos sensoriales con el propósito de manufactura, nos hace pensar en sistemas más

robustos, autoadaptables y parecidos al comportamiento humano, los cuales

necesariamente mejorarían el desempeño y la flexibilidad en aplicaciones comunes con

robots manipuladores.

En los sistemas de manufactura, han sido utilizados diferentes sensores para realizar

tareas muy específicas y por separado, como, por ejemplo, guía de trayectorias para

soldar piezas, sistemas de visión para aplicaciones de inspección y control de calidad, y

sensores de fuerza-torque para realizar tareas de ensamble. La integración de robots

con capacidades sensoriales para realizar tareas de ensamble en una celda flexible de

manufactura es un tema de vanguardia en la investigación y desarrollo de sistemas de

manufactura inteligente. La mayoría de los usuarios y fabricantes que utilizan sistemas

automatizados en la fabricación han puesto su empeño en mejorar la precisión y

velocidad de los sistemas robotizados, pero a un lado de las habilidades cinemáticas de

un robot, sus capacidades sensoriales no han sido desarrolladas y son necesarias para

proveer al robot con un alto grado de flexibilidad y autonomía en sus tareas de

manufactura. Para lograr este objetivo es necesario cumplir con los requerimientos de

Page 400: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

386

un ambiente de producción cuyas características resulte un factor crucial en el proceso

de fabricación:

Incertidumbre en la posición de las herramientas o piezas de trabajo. Para solventar esto, se

utilizan partes y accesorios que garantizan posiciones fijas para realizar los ensambles,

pero resultan costosas, muy particularizadas y generalmente con necesidad de ajuste

en ciertos intervalos de tiempo de uso.

Operación de los manipuladores con piezas de trabajo que se mueven.

Evaluación de fuerzas de interacción y torques.

Entonces, se tiene la idea contar con robots autoadaptables, con capacidades sensoriales

y de aprendizaje de habilidades en la fabricación en línea. Para ello, se necesita una

integración de diferentes modos de percepción sensorial, de manera que el desempeño

se parezca al comportamiento humano en sus tareas de aprendizaje y ejecución en

procesos de manufactura orientados a tareas de ensamble.

El interés en desarrollar celdas inteligentes de manufactura con capacidades sensoriales

tiene énfasis en el uso de un sistema de visión.

3.1 Ensamble

El éxito de las operaciones de ensamble con robots industriales está prácticamente

basado en la exactitud del mismo robot y en la precisión del conocimiento de su medio

ambiente —por ejemplo, información de la geometría de las partes que se ensamblan y

su localización en el espacio de trabajo. Los robots manipuladores operan en

situaciones de tiempo real con un alto grado de incertidumbre, como ya se ha

mencionado, y requieren de sistemas de censado que compensen los errores

potenciales durante las operaciones de trabajo. Las incertidumbres provienen de una

variedad de factores, como errores de posicionamiento de los robots, desajuste de los

engranes, deflexión de los brazos, y en general, envejecimiento de los mecanismos. El

control de todos estos aspectos en un proceso de ensamble es realmente una tarea

difícil, pero si se tiene una estrategia más simple, es más conveniente, como sucede

cuando se utilizan robots guiados con visión artificial, en una tarea de ensamble en la

inserción denominada ‚peg-in-hole‛

4 Sistema de visión

Los sistemas de visión, hoy en día, son utilizados en aplicaciones como inspección,

control de calidad y tareas de ensamble; han sido adoptados ahora como tecnología

necesaria en las industrias modernas automatizadas. A continuación, se presenta un

método novedoso para este propósito y pruebas para llevar a cabo un proceso de

ensamble guiado por visión y utilizando para su experimentación piezas de aluminio

Page 401: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

387

con diferentes secciones geométricas denominadas circular, cuadrada y radicuadrada.

Estos componentes se muestran en la figura 1 y la operación peg-in-hole en la figura 2.

Fig. 1. Componentes de ensamble.

Fig. 2. Operación de ensamble peg-in-hole.

Fig. 3. Espacio de trabajo del sistema de visión.

camera

Radiused-Square Circular Square

15

25

1515

2512.5R 0

Units in mm

Page 402: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

388

El modo sensorial de visión proporciona al brazo-robot la información espacial en la

localización (POSE) y captura de partes (grasping). La figura 3 muestra el sistema de

visión, el cual está integrado por una cámara de televisión de alta velocidad, del tipo

progresiva, con sensor CCD/B&W, PULNIX 6710,10 colocada en un sistema de

posicionamiento X-Y en la parte superior de la celda de manufactura, lo que permite

tener escenas de ‚partes‛ en diferentes localidades dentro del área de trabajo. La

imagen es adquirida y procesada para obtener información confiable dentro de un

rango de iluminación considerable en tareas de manufactura en un ambiente industrial.

La imagen es procesada para obtener una imagen binaria sobre la cual se aplican

algoritmos que permiten transformar la forma en una colección ordenada de pares

numéricos, la cual es analizada y utilizada para obtener información de las

coordenadas del centroide y puntos importantes de la forma, lo que permite el cálculo

de la orientación del objeto para obtener el POSE.

5 Metodología

La metodología para el reconocimiento sin variante de objetos de ensamble está basada

en el uso de formas canónicas dentro de lo que se ha llamado ‚base de conocimiento

primitiva‛ (BCP), la cual se construye durante la fase de entrenamiento, y una vez

dentro del sistema, la idea es refinarla en línea. Para ilustrar la metodología es

conveniente considerar los componentes de ensamble representados en 2D, como en la

figura 4.

Fig. 4. Representación de piezas de ensamble en 2D.

Estas formas canónicas sirven como ‚pistas‛ insertadas inicialmente en la BPC y en la

que es posible analizar el proceso de agrupamiento. El conocimiento es adquirido al

presentar múltiples instancias del objeto en escena, como se muestra en la figura 5,

donde se da un ejemplo de una pieza circular cuyas vistas son ilustradas en diagramas

sucesivos. El siguiente paso es codificar la información de los objetos para tener un

vector descriptivo sin variante para la rotación, la traslación y la aplicación de la escala.

Page 403: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

389

Fig.. 5. Múltiples instancias de una pieza circular.

Teniendo un vector descriptivo como éste, es posible entrenar una red neuronal

artificial para tener una familia de vectores descriptivos generados en línea con el

sistema de visión (véase la figura 6).

Los pasos a seguir en la metodología del sistema de visión para el robot son:

Rápida adquisición de la escena visual de trabajo.

Encontrar la región de interés (ROI).

Cálculo del histograma de la imagen.

Búsqueda de piezas.

Cálculo del centroide.

Orientación de la pieza.

Cálculo de la función boundary object function (BOF).

Generación del vector descriptivo y normalización (CFD&POSE).

Procesamiento de información en la red neuronal.

Page 404: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

390

Fig. 6. Módulo CFD&POSE y red neuronal.

4.1 Generación del vector descriptivo

Una vez que la información ha sido procesada, se conforma un vector descriptivo como

entrada a la red neuronal. El vector se llama CFD&POSE y está formado por:

donde:

Di es la distancia del centroide al perímetro;

XC, YC son las coordenadas del centroide;

es el ángulo de orientación;

ID

Z

Y

X

D

D

D

D

POSECFD

c

c

n

3

2

1

]&[

Page 405: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

391

Z es la altura del objeto;

ID es un número codificado relacionado con la geometría de los componentes.

La función boundary object function (BOF) es la que describe cada pieza específica y

variará de acuerdo con la forma de cada pieza (véase la figura 7).

Fig.. 7. BOF: a) circulo, b) cuadrado, c) radicuadrado.

5 Resultados experimentales

5.1 Entrenamiento y reconocimiento en línea

Para verificar la realización y robustez de las tareas de ensamble con la red neuronal

artificial y esta metodología se hicieron pruebas con las piezas de ensamble y el sistema

de visión, en un trabajo experimental. En un principio, la red fue entrenada con 2 808

patrones diferentes para analizar la capacidad de aprendizaje y reconocimiento de las

piezas de trabajo. Los resultados relacionados con el porcentaje de reconocimiento y el

número de neuronas generadas se muestra en la figura 9. La gráfica muestra cómo el

sistema aprendió todos los patrones en tres épocas, creando solamente 32 neuronas

para clasificar 2 808 patrones. La figura 8 muestra el trabajo experimental con el robot.

El tiempo promedio para el entrenamiento fue de 4.42 ms. y para la prueba de 1.0 ms.

Un proceso de normalización se aplicó al vector descriptivo y el trabajo experimental se

redujo a solo 216 patrones de componentes del mismo tamaño, correspondientes a 72

cuadrados, 72 círculos y 72 radicuadrados.

Fig. 8. Trabajo experimental.

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1 15 29 43 57 71 85 99 113 127 141 155 169 183

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1 15 29 43 57 71 85 99 113 127 141 155 169 183

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1 15 29 43 57 71 85 99 113 127 141 155 169 183

a b

c

A B

C

Page 406: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

392

Fig. 9. Aprendizaje de la red neuronal.

Los valores de orientación fueron 0, 45, 90, 135, 180, 215, 270 y 315 grados. Con estos

patrones de entrenamiento, el sistema fue capaz de reconocer el 100% de las piezas

presentadas en línea, sin importar si eran de diferente tamaño o estaban en diferente

localidad y rotación y en diferentes condiciones de iluminación. Las piezas utilizadas

para entrenar la red neuronal se muestran en la figura 10. En la figura 11 se muestran

las gráficas para diferentes vectores descriptivos de cada pieza de ensamble y en

diferentes posiciones, tamaños y orientaciones.

Fig. 10. Piezas de ensamble para trabajo experimental.

Page 407: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

393

Fig. 11. Vectores descriptivos para piezas de ensamble en diferentes posiciones y

tamaños.

6 Conclusiones y trabajo futuro

Una metodología novedosa para el rápido reconocimiento de objetos y la estimación de

su posición se logró con éxito. Los resultados experimentales, con piezas de ensamble

en manufactura, muestran la metodología para el procesamiento de imágenes, los

cálculos del centroide y el perímetro en los componentes. Las pruebas se realizaron en

ambientes de manufactura reales. Los resultados confirman la factibilidad del método

para mandar información de ‚agarre‛ y morfología de las piezas a un robot, en tiempo

real. Se logró también el reconocimiento muy aceptable de los componentes de

ensamble y la identificación de piezas de trabajo, con éxito, utilizando un modelo de

red neuronal FuzzyARTMAP. El desempeño del modelo fue muy satisfactorio, con

tiempos de reconocimiento menores a 5 ms. y rangos de identificación del 100%. Las

medidas experimentales mostraron ±3 milímetros de error en la información enviada al

robot. El ángulo de orientación de las piezas pudo obtenerse hasta ±9 grados, lo cual es

bastante bueno para que el robot pueda asir las piezas.

Referencias

1. Tombropolous, R. Z., J. R. Adler et al., ‚Carabeamer : A Treatment Planner for a

Robotic Radiocirurgical System with General Kinematics, Medical Image Analysis, vol.

3, núm. 3, 1999, pp. 237-264.

2. Sugihara, K. y J. Smith, ‚Genetic Algorithms for Adaptive Motion Planning of

Autonomous Mobile Robots‛ (reporte ténico) University of Hawaii, Manoa, 1997.

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151 161 171 181

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151 161 171 181

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1 11 21 31 41 51 61 71 81 91 101 111 121 131 141 151 161 171 181

a

b

c

Page 408: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

394

3. Wise, D. K. y A. Bowyer, ‚A Survey of Global Configuration-Space Mapping

Techniques for a Single Robot in a Static Environment‛, International Journal of

Robotic Research, 2000, pp. 762-769.

4. Latombe, J. C., Robot Motion Planning, Kluwer Academic, Boston, 1991.

5. Hwang, Y. K. y N. Ahuja ‚Gross Motion Planning: A Survey‛, ACM Computing

Surveys, vol. 24, núm. 3, 1992, pp. 219-291.

6. Holland, J. H. Adaptation in Natural and Artificial Systems, University of

Michigan Press, Michigan, 1975.

7. Goldberg, D. E., ‚Computer-Aided Gas Pipeline Operation Using Genetic

Algorithms and Rule Learning‛, disertación doctoral, University of Michigan, 1983.

8. Wu, L., S. L. Oviatt y P. R. Cohen, ‚Multimodal Integration. A Statical View‛,

IEEE Transactions on Multimedia, vol. 1, núm. 4, 1999, pp. 334-341.

9. López-Juárez, I., On-Line Learning for Robotic Assembly Using Artificial Neural

Networks and Contact Force Sensing, tesis doctoral, Nothingham Trent University,

Inglaterra, 2000.

10. En internet (www.pulnix.com).

11. Peña, M., I. López-Ju{rez y R. Osorio, ‚Invariant Object Recognition Applied to

Machine Robot Vision‛, ponencia presentada en la XVII Conference of the Mexican

Society for Instrumentation, octubre de 2002. Sugihara, K. y J. Smith, ‚Genetic

Algorithms for Adaptive Motion Planning of Autonomous Mobile Robots‛ (reporte

ténico) University of Hawaii, Manoa, 1997.

12. Wise, D. K. y A. Bowyer, ‚A Survey of Global Configuration-Space Mapping

Techniques for a Single Robot in a Static Environment‛, International Journal of Robotic

Research, 2000, pp. 762-769. Latombe, J. C., Robot Motion Planning, Kluwer Academic,

Boston, 1991.

Page 409: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

Quality Measurement of Existing Color Metrics

using Hexagonal Color Fields

Yuriy Kotsarenko, Fernando Ramos

Abstract. In the area of colorimetry there are many color metrics developed, such

as those based on the CIELAB color space, which measure the perceptual

difference between two colors. However, in software applications the typical

images contain hundreds of different colors. In the case where many colors are

seen by human eye, the perceived result might be different than if looking at only

two of these colors at once. This work presents an alternative approach for

measuring the perceived quality of color metrics by comparing several

neighboring colors at once. The colors are arranged in a two dimensional board

using hexagonal shapes, for every new element its color is compared to all

currently available neighbors and the closest match is used. The board elements

are filled from the palette with specific color set. The overall result can be judged

visually on any monitor where output is sRGB compliant.

Keywords: color metric, perceptual quality, color neighbors, quality estimation.

Sumario:1 Introduction 2 Palette Exhaust on Hexagonal Field 3 The analysis of

resulting fields 4 Conclusions and future work 5 Referencias

1 Introduction In the software applications there are applications where several colors need to

be compared in order to determine the color that better matches the given

sample. For instance, in stereo vision the colors from two separate cameras are

compared to determine the visible depth. In image compression algorithms the

colors of neighboring pixels are compared to determine what information should

be discarded or preserved. Another example is color dithering – an approach,

where color pixels are accommodated in special way to improve the overall look

of the image. For instance, in Floyd-Steinberg dithering [1] and Riemersma

dithering [2] the color is compared to several existing matches and closest match

is used; the difference between original color and used match is calculated and

propagated to other pixels. In order to measure the difference between the given

Page 410: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

396

colors, each of them has to be specified in a common system, usually referred to

as color space. In computer applications it is very common to use RGB color

space. However, since RGB color space is rather subjective in terms of

specification, of which several exist (such as sRGB, see Rec. 709 [3]), several other

color spaces were developed that are also thought to be more perceptually

uniform (an important property for measuring color differences). The most

commonly used formal color spaces are CIE XYZ, CIELAB and CIELUV [4]. If the

original color is specified in RGB color space and that specification is known, the

color can be converted to CIE XYZ without losing precision through gamma

correction and linear transformation [5]. The transformation from CIE XYZ to

CIELAB and/or CIELUV is made through a series of transforming functions (see

[4] or [5]). Once the colors have been represented in CIELAB color space, several

color difference equations exist (see [6], [7], [8] and [9]). Alternatives to CIELAB

and CIELUV in terms of perceptual accuracy exist, such as DIN99 color space [10]

with its associated color difference formulas [11], ATD95 color space [12] and

HCL color space [13].

The aforementioned color spaces and their associated metrics have their strengths

and weaknesses (see [5] and [14]) in terms of quality and performance. In this

work the focus is made on the quality factor in practical applications – where

color metrics are used in typical software applications. There are recent works

that evaluate the quality of the different color metrics based on specific sample

data (see [6] and [15]). However, as much as scientific background is important

for a given color metric, its practical application’s strengths and weaknesses are

of high priority to a software engineer. The experiments described in this work

provide insight on how each color metric performs when working with colors

typically displayed on a standard computer display. In the reality the human eye

perceives a large variety of colors simultaneously and this work provides an

alternative approach for testing the existing colors metrics with three or more

colors at the same time.

2 Palette Exhaust on Hexagonal Field

In order to measure the quality performance of the given metric, a fixed palette of

colors is given. The color values were specified using two techniques – first

involved uniform distribution of red, green and blue values in sRGB color space

and second using random color generation using linear number distribution. The

Page 411: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

397

colors were extracted from the palette one by one depending on the quality

comparison described later on until all colors have been exhausted. The initial

color that was looked for on the palette is gray (CIELAB coordinates

corresponding to L*=50, a*=0 and b*=0). The different choice for the initial color

produces different results and middle gray was selected as a reasonable average

between the entire set of all possible colors.

The colors were filled on a hexagonal two-dimensional field. The hexagonal

shape of field cells was chosen over triangular or square shapes because it has the

largest entropy of all three. The different entropy levels are illustrated on the Fig.

.

Fig. 1. The entropy of triangular (a), square (b) and hexagonal (c) cell

shapes. The number of neighbors is marked with different colors to the

given red cell in the middle.

In the above figure it can be seen that the red cell has different number of

neighbors depending on the shape. In the last image the hexagonal cell has six

neighbors – the largest entropy that can be seamlessly fit on a two-dimensional

field. The largest entropy is important for the context of this work as it allows

measuring the visual difference between seven colors at once (one at the middle

and six neighbors). In the hexagonal field the order at which the cells are filled

with the colors from the source palette is important and affects the final result.

There is a finite but significantly large number of all possible ordering schemes

on two-dimensional field, starting from linear schemes (from left to right, from

top to bottom) to pseudo random ordering such as Hillbert Curve [16]. In this

work a radial ordering scheme was used – the initial cell was considered to be in

the middle and its neighbors were filled in clockwise manner until the entire field

has been filled or the colors from the source palette have been exhausted.

Page 412: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

398

3 The analysis of resulting fields

Once the hexagonal color field has been generated using the approach described

earlier, the resulting image was analyzed by several human observers with

healthy vision on the standard computer monitor that fully complies with sRGB

color standard under such environment conditions, where the external

illumination has little significance and can be neglected. It is important to note

that although there were very few human observers involved in the experiments

to be considered statistical evidence (for that matter, a more extensive study is

recommended in the future works) and due to the fact that human color

perception is rather subjective, the results should not be considered as statistics.

The statistical analysis is beyond the scope of this work.

Since the human color comparison is subjective to individual person each

observant was given a complete freedom in terms of metrics and time to observe

each of the generated images and then give each image a quality mark between 0

(unordered colors – all cells are different from their neighbors) and 100 (no

defects or ‚jumps‛ between neighboring colors). The first set of experimental

images is illustrated on the Fig.2.

Page 413: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

399

Fig.2. Experimental Image Set 1 (from left to right, top to bottom) using

CIELAB (a), CIELUV (b), HCL (c), DIN99 (d), CIEDE2000 (e) and ATD95

(f) color metrics with the reference palette (g).

The above set of images was generated with the source palette with 1280 random

colors on hexagonal field of dimensions 32x32. The experiments used the color

metrics based on CIELAB [4], CIELUV [17] and HCL [13], and color difference

formulae DIN99 [10], CIEDE2000 [9], and ATD95 [12]. The hexagonal field with

unsorted reference palette is shown in the last image (only the first 1024 colors

shown). The images were created by extracting colors from the original palette

and filling the destination grid, starting from the center. Each color from the

input palette is compared to the neighbor colors of the location where it will be

placed and the best match is selected.

It can be observed that the overall color distribution varies depending on the

chosen color metric, although the observed image is similar (looks like a series of

colored patches). The best color matching results appear closer to the center of

the image and become worse to the edges as the remaining color options left in

the source palette become sparse. The final score chart made by calculating the

average of the human observant scores is illustrated on the Fig..

Page 414: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

400

Fig.3. Average score for the different color metrics using the

experimental image set 1 as judged by 10 human observers.

Although it is difficult if not impossible to rule out the subjectivity of human

judgment by observing the experimental images, the chart on Fig. shows that

color metric based on ATD95 and DIN99 generated the best results when

comparing more than two colors at once. In this experiment the colors were

generated randomly, which resulted in some colors being very similar to each

other and some colors very different. Observing the results on the Fig. it can be

concluded that all the tested color metrics can detect similar colors in groups to a

different degree. The average score numbers cannot be used as an exact quality

measurement for each of the color metrics but they show which color metric

performed better than the rest.

The second experimental image set consisted of source palette with 1331 colors

distributed uniformly in sRGB color space with 11 levels for each component of

red, green and blue, with hexagonal field dimensions of 32x32. The results are

illustrated on Fig..

Page 415: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

401

Fig.4. Experimental Image Set 2 (from left to right, top to bottom) using

CIELAB (a), CIELUV (b), HCL (c), DIN99 (d), CIEDE2000 (e) and ATD95

(f) color metrics with the reference palette (g).

The peculiar property of this experimental set is that the difference between

colors in the source palette is relatively constant in sRGB color space, so there is

no such color pair where color difference is too small as in the previous

experimental set. In the previous set of images the color distribution was

somewhat similar with different color metrics, while in this set the distribution is

quite different for each color metric.

Fig.5. Average score for the different color metrics using the

experimental image set 2 as judged by 10 human observers.

In the chart on Fig. the average scores given by the jury are shown for the second

experimental set of images. It can be observed that the scores are generally lower

than in the previous experimental set with CIEDE2000 color metric’s generated

image being the best observed. Although the different color metrics are placed

Page 416: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

402

differently on the chart, the consensus from both experiments is that ATD95-

based color metric is better than DIN99 and CIELUV is better than CIELAB, with

the color metric based on HCL color space being the worst in both cases.

4 Conclusions and future work

In this work an alternative approach for measuring the perceived quality of

different color metrics has been presented where three or more colors are

compared at the same time as opposed to color pairs. The motivation behind this

is that the reality is filled with many different colors which are viewed

simultaneously by human eye. In the experiments, the colors were extracted from

a fixed color palette one by one and were placed on two-dimensional field with

hexagon-shaped cells. The colors from the palette were compared to all existing

neighbors on the field and the best match was selected. The resulting images

were presented to various human observes with healthy vision on a computer

display compliant with sRGB standard for the judgment. The average scores

provided by the jury were presented in this work, which indicate the tendency of

certain color metrics performing better than others when working with several

colors at the same time.

Since the experiments described in this work can hardly be considered definitive

for determining which metric performs better, further tests are required with

more extensive color sets and different filling strategies on the two-dimensional

field. In addition, triangular and square shaped fields with less entropy are to be

assessed as potential alternatives to hexagonal fields. The entropy can be further

increased by modeling the color cells each in three-dimensional fields where each

color can have a certain shape such as a pyramid or a cube, although these fields

can be more difficult to visualize and judge.

References 1. Floyd, Robert, and Louis Steinberg. "An Adaptive Algorithm for Spatial

Grey Scale." Proceedings of the Society of Information Display, 1976: 75-77.

2. Riemersma, Thiadmer. "A balanced dithering technique." C/C++ Users

Journal (CMP Media, Inc.) 16, no. 12 (December 1998): 51-58.

3. "Recommendation ITU-R BT.709-5." Parameter values for the HDTV

standards for production and international programme exchange.

International Telecommunication Union, 2008.

Page 417: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

403

4. Schanda, Janos. Colorimetry: Understanding the CIE system. Wiley

Interscience, 2007.

5. Poynton, Charles. Digital Video and HDTV Algorithms and Interfaces.

Morgan Kaufmann, 2003.

6. Melgosa, M., J. J. Quesada, and E. Hita. "Uniformity of some recent color

metrics tested with an accurate color-difference tolerance dataset." Applied

Optics (Optical Society of America) 33, no. 34 (1994): 8069-8077.

7. Luo, M. R., G. Cui, and B. Rigg. "The Development of the CIE 2000

Colour-Difference Formula: CIEDE2000." Color Research & Application 26,

no. 5 (2001): 340-350.

8. Imai, F. H., N. Tsumura, and Y. Miyake. "Perceptual color difference

metric for complex images based on Mahalanobis distance." Journal of

Electronic Imaging 10, no. 2 (2001): 385-393.

9. Sharma, Gaurav, Wencheng Wu, and Edul N. Dalal. "The CIEDE2000

Color-Difference Formula: Implementation Notes, Supplementary Test Data,

and Mathematical Observations." Color Research and Application 30, no. 1

(February 2005): 21-30.

10. Büring, Hendrik. "Eigenschaften des Farbenraumes nach DIN 6176

(DIN99-Formel) und seine Bedeutung für die industrielle Anwendung." 8.

Workshop Farbbildverarbeitung der German Color Group, October 2002: 11-

17.

11. Cui, G., M. R. Luo, B. Rigg, G. Roestler, and K. Witt. "Uniform Colour

Spaces Based on the DIN99 Colour-Difference Formula." Color Research &

Application 27, no. 4 (2002): 282-290.

12. Guth, Lee S. "Further Applications of the ATD Model for Color Vision."

Proc. SPIE (The International Society for Optical Engineering) 2414 (April

1995): 12-26.

13. Sarifuddin, M., and Rokia Missaoui. "A New Perceptually Uniform Color

Space with Associated Color Similarity Measure for Content-Based Image

and Video Retrieval." ACM SIGIR Workshop on Multimedia Information

Retrieval, Salvador, Brazil, 2005.

14. Granger, E. M. "Is CIE L*a*b* Good Enough for Desktop Publishing?"

Proceedings of SPIE, the International Society for Optical Engineering

(Society of Photo-Optical Instrumentation Engineers) 2170 (1994): 144-148.

15. Luo, Ronnier M., Guihua Cui, and Changjun Li. "Uniform Colour Spaces

Based on CIECAM02 Colour Appearance Model." Color Research &

Application (Wiley InterScience) 31, no. 4 (June 2006): 320-330.

Page 418: La Computadora, Herramienta Indispensable en Diversas Áreas del ...

404

16. Hilbert, David. "Ueber die stetige Abbildung einer Line auf ein

Flächenstück." Mathematische Annalen (Springer Berlin / Heidelberg) 38, no.

3 (September 1891): 459-460.

17. Carter, Robert C., and Ellen C. Carter. "CIE L*u*v* Color-Difference

Equations for Self-Luminous Displays." Color Research & Application, 1983:

252-253.