lunes, 27 de febrero de 2012

Algoritmos genéticos masivamente paralelos

Según Beyer, en el artículo escrito el año 2001 acerca de la “teoría de las estrategias de la evolución”, las estrategias evolutivas son métodos computacionales que trabajan con una población de individuos que pertenecen al dominio de los números reales, que mediante los procesos de mutación y de recombinación evolucionan para alcanzar el óptimo de la función objetivo. Entre los años 1965 y 1973 Rechenberg las introdujo como método para optimizar parámetros reales para ciertos dispositivos. La misma idea fue desarrollada poco después por Schwefel entre los años 1975 a 1977. El campo de las estrategias evolutivas ha permanecido como un área de investigación activa, cuyo desarrollo se produce en su mayor parte, de modo independiente al de los algoritmos genéticos. En palabras de Michalewicz, en el libro escrito el año 1996 acerca de “Programa evolutivo = Algoritmo genético + Estructura de datos”, la programación evolutiva es prácticamente una variación de los algoritmos genéticos, donde lo que cambia es la representación de los individuos. En el caso de la programación evolutiva los individuos son tripletas cuyos valores representan estados de un autómata finito. Cada terna está formada por el valor del estado actual, un símbolo del alfabeto utilizado y el valor del nuevo estado. Fogel, Owens y Walsh fueron los creadores en 1966 de la programación evolutiva, una técnica en la cual los candidatos a soluciones a tareas determinadas son representados por máquinas de estados finitos, cuyos diagramas de estados de transición evolucionaban mediante mutación aleatoria, seleccionándose el que mejor se aproximara a la meta.

La primera mención del término algoritmo genético y la primera publicación sobre una aplicación del mismo, se deben al investigador Bagley en la disertación presentada el año 1967 sobre “el comportamiento de los sistemas adaptativos que emplean algoritmos genéticos y correlacionales.” Bagley diseñó algoritmos genéticos para buscar conjuntos de parámetros en funciones de evaluación de juegos, y los comparó con los algoritmos de correlación, procedimientos de aprendizaje modelados después de los algoritmos de pesos variantes de ese periodo. Sin embargo el que es considerado como el creador de los algoritmos genéticos es el gran investigador John Holland a partir de su libro escrito el año 1975 titulado “Adaptación en sistemas naturales y artificiales”. En contraste con las estrategias evolutivas y la programación evolutiva, el propósito original de Holland no era diseñar algoritmos para resolver problemas concretos, sino estudiar, de un modo formal, el fenómeno de la adaptación tal y como ocurre en la naturaleza, y desarrollar vías para extrapolar esos mecanismos de adaptación natural a los sistemas computacionales. En el libro de Holland se presenta el algoritmo genético como una abstracción de la evolución biológica, y se proporciona el entramado teórico para la adaptación bajo el algoritmo genético. El algoritmo genético de Holland es un método para desplazarse, de una población de cromosomas, representado por bits a una nueva población, utilizando un sistema similar a la selección natural junto con los operadores de apareamiento, mutación e inversión inspirados en la genética. En este primitivo algoritmo, cada cromosoma consta de genes, y cada uno de ellos es una muestra de un alelo particular, cero o uno.

Holland adapta los operadores de selección, apareamiento, mutación e inversión a su algoritmo genético: (1) Selección. Este operador escoge entre los cromosomas de la población aquellos con capacidad de reproducción, y entre estos, los que sean más compatibles, producirán más descendencia que el resto. (2) Apareamiento. Este operador extrae partes de dos cromosomas, imitando la combinación biológica de dos cromosomas aislados. (3) Mutación. Operador que se encarga de cambiar, de modo aleatorio, los valores del alelo en algunas localizaciones del cromosoma. (4) Inversión. Este operador invierte el orden de una sección contigua del cromosoma, recolocando por tanto el orden en el que se almacenan los genes. La mayor innovación de Holland fue la de introducir un algoritmo basado en poblaciones con apareamientos, mutaciones e inversiones. Es más, Holland fue el primero en intentar colocar la computación evolutiva sobre una base teórica firme. Hasta hace poco, esta base teórica, fundamentada en la noción de esquemas, es la estructura sobre la que se edificaron la mayoría de los trabajos teóricos sobre algoritmos genéticos.

Sin embargo según los investigadores Alba y Cotta, en el tutorial escrito el año 2003 sobre “computación evolucionaría”, los algoritmos genéticos secuenciales suelen presentar las siguientes tres desventajas: (1) Para mantener grandes poblaciones de individuos se necesita mucha memoria y puede tornarse ineficiente abordar problemas con estos requerimientos de manera secuencial. (2) Al afrontar problemas complejos, la evaluación de la función de adaptabilidad puede ser muy costosa en tiempo de cómputo y el lapso demandado por una ejecución completa de un algoritmo genético podría ser inaceptable. (3) Los algoritmos genéticos secuenciales pueden converger prematuramente hacia valores subóptimos. Una solución para contrarrestar estos tres problemas consiste en paralelizar la ejecución de los algoritmos genéticos. Un algoritmo genético que utiliza más de un procesador para llevar a cabo su ejecución, es llamado algoritmo genético paralelo. Además de las mejoras en el rendimiento de los sistemas paralelos respecto de sus pares secuenciales, pueden lograrse beneficios adicionales referentes a la calidad de las soluciones.

En la tesis de doctorado del investigador Alba, escrita el año 1999 sobre “Análisis y Diseño de Algoritmos Genéticos Paralelos Distribuidos”, se menciona que antes de realizar la paralelización de un algoritmo, de cualquier tipo, es imprescindible realizar una primera fase de estudio acerca de los elementos del algoritmo que son susceptibles de paralelizarse. En el caso de los algoritmos genéticos resulta evidente que la evaluación de la adecuación de los individuos es una tarea cuya paralelización no afecta al comportamiento del algoritmo. Sin embargo, el operador de selección sí debe ser aplicado de forma global a toda la población si se quiere que el comportamiento del algoritmo siga siendo el mismo que el de la versión secuencial. Esta primera aproximación para la paralelización de los algoritmos genéticos dará lugar a un conjunto de algoritmos que recibirán el nombre de algoritmos maestro-esclavo. La otra gran aproximación a la paralelización de los algoritmos genéticos consiste en dividir la población inicial en subpoblaciones de mayor o menor tamaño que se comuniquen de alguna manera. Este sistema de paralelización es el que más éxito ha obtenido en comparación con su equivalente secuencial. Además de las mejoras de rendimiento debidas a la subdivisión del problema se ha demostrado que el hecho de considerar subpoblaciones que evolucionan independientemente suele, por lo general, ayudar en el proceso de búsqueda. Este tipo de algoritmos se dice que da lugar a especies o nichos de individuos separados. Dentro de esta segunda aproximación se pueden distinguir entre algoritmos de grano grueso y algoritmos de grano fino. La diferencia entre ambos es el tamaño de las poblaciones, que suele ser mayor en los primeros, y la forma en que los individuos interactúan los unos con los otros.

En el artículo de Gordon y Whitley, escrito el año 1993 y relacionado con “algoritmos genéticos paralelos y seriales como optimizadores de funciones”, se propone una clasificación de algoritmo genético paralelo que reconoce tres categorías: (1) Algoritmo genético paralelo de población global, una versión del modelo maestro-esclavo que utiliza selección por torneo y sus versiones elitistas para simplificar el paralelismo. (2) Algoritmo genético paralelo con modelo de islas y migración, similar a los modelos de Gorges-Schleuter, descrito en el articulo “paralelismo explicito de algoritmos genéticos a través de estructuras poblacionales”. (3) Algoritmos genéticos masivamente paralelos o algoritmos genéticos celulares, que asignan un número bajo de individuos por elemento de procesamiento. En este modelo, cada individuo se procesa en paralelo en cada generación y el apareamiento está limitado a un deme, o vecindad, del individuo. Usualmente la topología de conexión y la estructura de los demes es fija, y se corresponde con la topología de conexión de los elemento de procesamiento en la super computadora. La denominación celular se justifica por comportarse el algoritmo genético paralelo como un tipo particular de autómata celular.

Según Michalewicz, en la obra citada párrafos arriba, los algoritmos genéticos masivamente paralelos se caracterizan por asignar, en el caso ideal, un procesador a cada individuo. Es por esto que en general se utiliza en arquitecturas con un gran número de procesadores y alguna topología de interconexión entre ellos, tal como anillo, grilla, hipercubo, etc. Durante la ejecución del algoritmo un individuo puede solamente competir y aparearse con sus vecinos, los cuales se encuentran definidos según la topología de interconexión. El investigador Baluja, en el artículo escrito el año 1992 denominado “algoritmo genético paralelo masivamente distribuido”, modificó los algoritmos genéticos masivamente paralelos, introduciendo poblaciones estructuradas con solapamiento, que permiten la transferencia gradual de información genética sin la introducción súbita de cromosomas. Para el diseño de su modelo de algoritmo genético paralelo masivamente distribuido, Baluja analizó estructuras de las poblaciones y tamaños de las secciones solapadas, indicando que debe lograrse un compromiso entre la lentitud de propagación de soluciones para áreas de solapamiento pequeñas y la desviación de la idea de poblaciones múltiples al crecer las áreas y acercarse a un modelo panmíctico, en el que todos los individuos tienen la misma probabilidad de aparearse y el apareamiento es al azar.

Referencias Bibliográficas
  • Alba Enrique (1999) Análisis y Diseño de Algoritmos Genéticos Paralelos Distribuidos. Tesis de Doctorado, Universidad de Málaga.
  • Alba, E., Cotta, C. (2003) Tutorial on evolutionary computation. Disponible en http://www.lcc.uma.es/~ccottap/semEC/ec.html [Consulta: Marzo 2006]
  • Bagley, J.D. (1967) The behavior of adaptive systems which employ genetic and correlation algorithms. Dissertation Abstracts International. 1967. Vol. 28 No.12.
  • Baluja S. (1992) A Massively Distributed Parallel Genetic Algorithm. CMU-CS-92-196R, Carnegie Mellon.
  • Beyer, H.G. (2001) The Theory of Evolution Strategies. Natural Computing Series. Springer, Berlin.
  • Gordon V. & Whitley D. (1993) Serial and Parallel Genetic Algorithms as Function Optimizers. Proceedings of the Fifth International Conference on Genetic Algorithms, pp. 177-183, 1993.
  • Gorges-Schleuter M. (1990) Explicit parallelism of genetic algorithms through population structures. Proceedings of 1st PPSN'90, pp. 150-159.
  • Holland, J. (1975) Adaptation in Natural and Artificial Systems. Ann Arbor, MI: The University of Michigan Press. • Michalewicz, Zbigniew (1996) Genetic Algorithms + Data Structures = Evolution Programs. Springer-Verlag, 1996.
Guillermo Choque Aspiazu
http://www.eldiario.net/
Febrero 27 de 2012

lunes, 20 de febrero de 2012

Poder computacional de las redes neuronales

En los escritos realizados por el científico español Santiago Ramón y Cajal, acerca del cerebro hacia el año 1899, el cerebro es un órgano de menos de un kilogramo y medio de peso y con más de cien mil millones de células, cada una de las cuales establece como media un millar de conexiones con sus vecinas, a través de múltiples prolongaciones, de un diámetro inferior a una diezmilésima de milímetro y que pueden llegar a medir más de un metro de longitud. Y todo este complejo entramado da como resultado la capacidad de un ser biológico como puede ser un humano de razonar, sentir, aprender, escapar de una casa en llamas o llegado el caso entrar en ella para salvar a otra persona, emocionarse, comunicarse con sus semejantes o quizá uno de los rasgos, junto con el del lenguaje, más distintivos del ser humano: la capacidad de ser conscientes de uno mismo y de su propia muerte.

Así, en una neurona se puede distinguir un cuerpo celular o soma, que actúa como centro metabólico de la célula, y dos tipos de prolongaciones, unas generalmente más largas llamadas axones y otras más cortas y numerosas, en forma de ramificaciones llamadas dendritas. Además de las neuronas, y mucho más numerosas que éstas, existen otro tipo de células nerviosas llamadas células glía. Su función no es la de transmitir impulsos nerviosos, sino la de envolver a las neuronas proporcionándoles aislamiento eléctrico, servir como soporte físico que permita el crecimiento de éstas, la captación de neurotransmisores y actuar como barrera para protegerlas de los elementos tóxicos de la sangre.

Ramón y Cajal formuló dos hipótesis fundamentales para el desarrollo de lo que luego se conoció como neurociencia. La primera era que existían lo que él llamaba “ondas nerviosas” que viajaban desde las dendritas al cuerpo neuronal, y de éste al axón, y la otra era que las neuronas se comunicaban entre sí por contigüidad y no por continuidad a través de unas conexiones especializadas llamadas sinapsis. Fue a comienzos del siglo veinte cuando se pudo registrar la entrada de señales eléctricas que viajaban a través del axón a gran velocidad, y se supo que estos impulsos eléctricos que se llamaron potenciales de acción o impulsos nerviosos los usaba el sistema nervioso para la transmisión de información. Estos potenciales pueden repetirse dentro de una misma célula, llegando a frecuencias de mil segundos, y ésta información es función de la intensidad de la señal eléctrica y de la frecuencia de disparo, por ejemplo se comprobó que a mayor intensidad de un estímulo se correspondía una mayor frecuencia de impulsos nerviosos dentro de la neurona registrada.

El artículo de McCulloch y Pitts, escrito el año 1943 acerca de “un cálculo lógico de las ideas inmanentes en la actividad neuronal”, se considera como el punto de arranque de la investigación en redes neuronales; este trabajo introdujo también la teoría de autómatas finitos como modelo computacional. McCulloch y Pitts propusieron un modelo simplificado de la actividad nerviosa real en el que cada neurona de una red neuronal podía activarse o desactivarse en función de lo que hicieran las neuronas conectadas a ella. Debido a que una neurona solo podía estar activada o desactivada, la capacidad computacional de la red completa se define en términos del conjunto de predicados lógicos que es capaz de calcular. En este artículo, McCulloch y Pitts toman como objeto de estudio al cálculo realizado por las neuronas, es decir, no se ocupan de los aspectos fisiológicos y morfológicos de las neuronas, a pesar de que McCulloch tiene una serie de artículos donde estudia los aspectos fisiológicos de las neuronas, sino que se abocan a estudiar las características y capacidades computacionales del modelo que proponen, caracterizándolo como un dispositivo lógico; es decir, el área en la que se desarrolla este artículo es la lógica. De esta forma, el modelo neuronal es planteado a través de un modelo matemático. Esto se puede verificar fácilmente a partir de las referencias que ocupan, las cuales todas caen dentro de la lógica matemática. Esto trae como consecuencia que el lenguaje que ocupan para las descripciones de las características de su neurona sea totalmente matemático, siguiendo un gran formalismo en sus demostraciones y con una notación poco común, lo que hace muy complejo el entender los planteamientos del artículo.

Unos años después, el investigador Kleene, en el articulo escrito el año 1956 acerca de la “representación de eventos en redes de nervios y autómatas finitos”, reformuló algunos de estos resultados e introdujo una notación más compacta y general. En su artículo se define el concepto de expresión regular, denominado evento regular al interior del artículo, tan importante para la teoría de lenguajes actual y sus aplicaciones. A partir de ahí, el campo de las redes neuronales y el de la teoría de lenguajes comienzan a tomar caminos separados. De hecho, el segundo acaparó una creciente atención desde entonces hasta nuestros días, mientras que el primero quedó prácticamente olvidado a raíz del trabajo realizado por Minsky y Papert, el año 1969 acerca de los “perceptrones: una introducción a la geometría computacional”, salvo algunos trabajos aislados, las redes neuronales quedaron relegadas a un segundo plano hasta la llegada de los años ochenta.

Según Pérez Ortiz, en el trabajo de grado escrito el año 2002 acerca de “modelos predictivos basados en redes neuronales recurrentes de tiempo discreto”, las redes neuronales destacan por su estructura fácilmente paralelizable y por su elevada capacidad de generalización, o la capacidad de producir salidas correctas para entradas no vistas durante el entrenamiento. Otras propiedades interesantes son: (1) No linealidad. Una red neuronal puede ser lineal o no lineal. Esta última característica es muy importante, especialmente si se intenta modelar sistemas generados mediante pautas no lineales. (2) Adaptabilidad. Las redes neuronales son capaces de reajustar sus pesos para adaptarse a cambios en el entorno. Esto es especialmente útil cuando el entorno que suministra los datos de entrada es no estacionario, es decir, algunas de sus propiedades varían con el tiempo. (3) Tolerancia ante fallos. Una red neuronal es tolerante ante fallos en el sentido de que los posibles fallos operacionales en partes de la red solo afectan débilmente al rendimiento de esta. Esta propiedad es debida a la naturaleza distribuida de la información almacenada o procesada en la red neuronal.

El poder computacional de una única neurona es bastante limitado. Si se considera una neurona con función de activación escalón, este poder de computación puede estudiarse desde dos puntos de vista equivalentes: el de la clasificación y el de la representación lógica. (1) Clasificación. Dado un conjunto de P vectores de entrada, cada uno de n componentes, clasificados como pertenecientes a una de entre dos clases, una neurona puede, mediante la asignación correcta de valores a sus pesos y a su sesgo, clasificarlos de manera correcta únicamente si se cumple la condición de separabilidad lineal: los conjuntos de vectores pertenecientes a cada clase deben ser separables por un hiperplano en el espacio P-dimensional. (2) Representación lógica. La fracción de funciones lógicas de n variables que pueden representarse mediante una neurona con función de activación escalón decrece con n. Por ejemplo, cuando n tiene en valor de uno, las cuatro posibles funciones: identidad, negación, siempre cierto y siempre falso son computables a través de una neurona. Sin embargo, cuando n tiene el valor dos ya existen dos funciones no computables, la o exclusiva y su negación.

Según Hopcroft y Ullman, en el libro escrito el año 1979 titulado “Introducción a la teoría de autómatas, lenguajes y computación”, las limitaciones anteriores se cumplen independientemente de la función de activación utilizada. Si se interconecta un conjunto de neuronas formando una red de manera que la salida de algunas de ellas sea entrada de otras y se utilizan funciones de activación no lineales, pueden superarse estas limitaciones y las redes neuronales resultantes son capaces de emular la máquina universal de Turing y de computar, por tanto, cualquier función computable. La salida de algunas de esas neuronas se convierte en la salida de la red neuronal y al resto de neuronas se las denomina unidades ocultas o de estado. El problema que surge entonces es cómo determinar el valor de los pesos y sesgos de la red para calcular de manera efectiva una función determinada. Dado que el espacio de exploración puede ser enorme, se hace necesario el uso de heurísticas a través de algoritmos de entrenamiento, que no siempre logran dar con una solución adecuada.

Finalmente es destacable que las redes multicapa se forman por un conjunto de redes de capa simple en cascada unidas por pesos, donde la salida de una capa es la entrada de la siguiente capa. Generalmente son capaces de aprender funciones que una red de capa simple no puede aprender, por lo que ofrecen mejores capacidades computacionales. Para que este incremento en poder computacional sea tal, tiene que existir una función de activación no lineal entre las capas, por lo que generalmente se utiliza una función de activación sigmoidea en detrimento de la lineal o umbral. La función usada para la capa de salida es la lineal. La elección de las funciones de las capas ocultas y de salida, es el resultado de diversas pruebas realizadas.

Referencias Bibliográficas
  • Hopcroft, J. E. y J. D. Ullman (1979) Introduction to automata theory, languages and computation, Addison-Wesley.
  • Kleene, S. C. (1956) Representation of events in nerve nets and finite automata, en C. E. Shannon y J. McCarthy, coordinadores, Automata studies, Princeton University Press.
  • Minsky, M. & Papert, S. (1969). Perceptrons: An Introduction to Computational Geometry, MIT Press
  • McCulloch W. S. y Pitts W. (1943) A logical calculus of the ideas immanent in neurons activity, Bull. Math. Biophys., 5, 115-133.
  • Pérez Ortiz Juan Antonio (2002) Modelos predictivos basados en redes neuronales recurrentes de tiempo discreto. Memoria presentada para optar al grado de doctor. Universidad de Alicante, Departamento de Lenguajes y Sistemas Informáticos.
  • Ramón y Cajal, Santiago (1899) Textura del Sistema Nervioso del Hombre y de los Vertebrados. Editorial N. Moya.
Guillermo Choque Aspiazu
http://www.eldiario.net
Febrero 20 de 2012

lunes, 13 de febrero de 2012

Planificación difusa de la producción

La precisión requerida en modelos y productos de ingeniería se traduce en que la producción y el desarrollo requieren altos costos y largos tiempos. Según el investigador Matta, en el artículo publicado el año 2005 sobre “diseño de sistemas de manufactura avanzados”, una mayor precisión implica un mayor costo. Al considerarse la utilización de la lógica difusa para un determinado problema, un ingeniero o científico debería reflexionar sobre la necesidad de aprovechar la tolerancia de la imprecisión dado que la alta precisión conlleva altos costos y, en algunas ocasiones, intratabilidad en los problemas. Por su parte el investigador Ross menciona que, en el libro publicado el año 2004 acerca de “aplicaciones de la lógica difusa con ingeniería”, mientras los sistemas difusos son mostrados como aproximaciones universales de funciones algebraicas, este no es el atributo que los hace valiosos para la comprensión de nuevos o sofisticados problemas. Por el contrario, el principal beneficio de la teoría de conjuntos difusos es la aproximación al comportamiento de sistemas donde las funciones analíticas o relaciones numéricas no existen. Por lo tanto, los conjuntos difusos tienen un alto potencial para entender muchos sistemas que carecen de formulaciones analíticas.

Los sistemas complejos pueden ser sistemas que no han sido analizados, pueden ser sistemas relacionados con la condición humana tales como los sistemas biológicos o médicos, o pueden ser sociales, económicos o sistemas políticos, en los cuales la gran variedad de variables de entrada y salidas podrían no ser siempre capturadas analíticamente o controladas en algún sentido convencional. Además, las relaciones entre las causas y efectos de estos sistemas generalmente no son entendidas, pero generalmente sí pueden ser observadas.

Según los investigadores Klir y Yuan, en el libro publicado el año 1995 sobre “conjuntos difusos y lógica difusa”, la lógica difusa ha sido largamente estudiada en los últimos años; el modelado de sistemas complejos con bastante precisión, es una de las ventajas que ofrece la lógica difusa, esta incorpora vaguedad e imparcialidad en la representación y resolución de los modelos. El estudio del arte que se realiza está enfocado a la aplicabilidad de la lógica difusa sobre problemas en la planificación de la producción. Según los investigadores Narasimhan y sus colegas, en el libro escrito el año 1996 sobre “planeación de la producción y control de inventarios”, desarrollar una planificación de la producción conlleva a la especificación paralela de los niveles de producción, inventario y capacidad sobre un horizonte de planificación determinado con el propósito de disminuir los costos totales producidos por el plan de producción.

Respecto a la lógica difusa y sus aplicaciones referidas a la cadena de suministro, Torabi menciona, en su tesis de grado elaborada el año 2007 sobre “programación posibilística interactiva”, que el objetivo vital de la gestión de la cadena de suministro es el control de flujo de materiales entre proveedores, industrias, almacenes y usuarios de forma eficaz y al menor costo. El trabajo elaborado por Torabi fue orientado a la creación de un modelo que integra los distintos niveles de la cadena de suministros considerando múltiples proveedores, un fabricante y diversos centros de distribución; tomando en cuenta que la demanda del mercado, costo/periodo y niveles de capacidad son variables imprecisas; esta incertidumbre en la propuesta académica se manejo utilizando números difusos triangulares para representar la vaguedad en cada parámetro. En el trabajo mencionado se consideraron dos objetivos significativos y contrarios para el modelo de gestión de la cadena de suministros: Minimizar el costo total de la logística y maximizar los costos totales de la compra.

En relación con la teoría de los conjuntos difusos aplicada a modelos de cantidad económica de pedido, Kaj-Mikael Björk escribe en el año 2008 un artículo relacionado con “una solución analítica al problema de la cuantificación económica difusa”, en el cual menciona que la cantidad económica de pedido busca encontrar la cantidad de pedido que minimice el costo total del inventario de la compañía. Un modelo de cantidad económica de pedido simple parte de una situación en que tanto la demanda como los tiempos de suministros y los costos unitarios se conocen con certeza; los modelos de cantidad económica de pedido se basan en una política de revisión continua del inventario y se asume que este puede ser supervisado en cualquier instante en el tiempo. Björk plantea un modelo para la determinación de la cantidad económica de pedido utilizando Backorder o pedidos diferidos; en dicho modelo la demanda y los Leed Times son parámetros difusos; dichas incertidumbres se manejan con números triangulares difusos; una aplicación concreta que inspiró a Björk para realizar esta investigación se encuentra en la penalización que existe en las cadenas de suministro de papel fino en los países nórdicos. Los propósitos del trabajo hecho por el investigador son tres: demostrar que el modelo de cantidad económica de pedido con Backorder, demanda y Leed Times difusos es convexo; resolver el problema de optimización; y por último, la solución de este nuevo enfoque se compara con trabajos anteriores mediante un ejemplo aplicado a la industria de la producción de papel fino en los países nórdicos.

Por otra parte, la planeación agregada de la producción, establece la mejor manera de satisfacer la demanda prevista a un mediano plazo, a menudo de tres a dieciocho meses, mediante la determinación de horas extraordinarias, capacidad de producción, niveles de inventario, cantidad de mano de obra, la subcontratación, niveles de pedidos retrasados, y otras variables controlables. Respecto a la teoría de los conjuntos difusos y sus aplicaciones referidas a la planeación agregada de la producción, el artículo que desarrolla Wang el año 2004, sobre “la aplicación de la programación lineal posibilística a la planeación agregada de la producción”, presenta un novedoso e interactivo modelo de programación lineal probabilística para solucionar un problema de planeación agregada multi-producto con incertidumbre en la demanda prevista, gastos de funcionamiento y capacidad; la propuesta del investigador es tratar de minimizar los costos totales relacionados con los niveles de inventario, mano de obra, horas extras, subcontratación, retrasos de pedidos, equipo y capacidad de almacenaje; el desarrollo del articulo se centra en determinar un modelo de planeación agregada de la producción que satisfaga la demanda prevista ajustando la cantidad de horas extras, la capacidad de producción, los niveles de inventario, la cantidad de mano de obra, la subcontratación, los niveles de pedidos diferidos y otras variables controlables. El planteamiento utiliza un modelo de costo total de la planificación agregada de la producción como la función objetivo. Los costos totales se establecieron como la suma de los costos de producción más los costos de los cambios en los niveles de mano de obra durante el horizonte de planificación; el modelo propuesto está sujeto a restricciones de manejo de inventario, capacidad de producción, restricciones en la capacidad de la máquina y el espacio de almacenamiento.

La planificación de requerimientos de materiales es una técnica computarizada de gestión stocks y de programación de la producción que, partiendo del programa maestro de producción, deduce la cantidad requerida de las diferentes materias primas y componentes necesarios en cada periodo de tiempo del horizonte de planeación. En relación con la teoría de los conjuntos difusos y sus aplicaciones referidas a la planificación de requerimientos de materiales, los investigadores Mula, Poler y García a través de su artículo escrito el año 2005, demuestran la utilidad e importancia del modelado de planificación de requerimientos de materiales con restricciones flexibles; la principal contribución de los investigadores fue en el terreno de la investigación y aplicación práctica de un modelo de programación flexible, acompañada de experimentos con datos reales. La metodología que siguieron al elaborar este artículo fue la siguiente: primero proponen un modelo de programación matemática, llamado MRPDet para la planificación de la producción con restricciones de capacidad en un sistema de planificación de requerimientos de materiales, este sigue una estructura determinística; seguidamente se amplía en tres modelos de programación difusa para la planificación de la producción con restricciones difusas; luego de esto se evalúa el comportamiento de los modelos propuestos, utilizando datos reales proporcionados por un fabricante de asientos para automóviles. Es de importancia aclarar que el objetivo de los investigadores al diseñar los modelos de lógica difusa para la planificación de la producción, no es sustituir a los modelos deterministas, sino por el contrario, proporcionar una sólida y eficaz alternativa para la aplicación en entornos con condiciones de incertidumbre en los que el uso de modelos deterministas no es muy realista.

Finalmente las soluciones de planificación de recursos de la empresa tratan de llevar a cabo la racionalización y la integración entre procesos operativos y flujo de información dentro de la empresa, con el objetivo de obtener sinergias entre los recursos que forman parte de la misma. En relación con la teoría de los conjuntos difusos aplicada la planificación de recursos de la empresa, Sánchez en su artículo publicado en 2009 sobre “un modelo difuso para evaluar la idoneidad de la instalación de un sistema de planificación de recursos empresariales”, afirma la importancia de una planificación de recursos empresariales en las organizaciones para integrar adecuadamente la información de los diferentes departamentos de la organización, teniendo presente que la planificación de recursos empresariales no es igual de efectiva en todas las empresas porque depende de las características propias de cada organización. El objetivo de estos autores fue presentar un modelo de evaluación difusa que gestione los diferentes parámetros de una empresa para tomar una decisión acerca de si es conveniente instalar un sistema de planificación de recursos empresariales

Referencias Bibliográficas
  • Björk, Kaj-Mikael (2008) An analytical solution to a fuzzy economic order quantity problem. Department of Technology, Akademi University, Joukahaisenkatu 3-5A, FI-20520, Turku, Finland.
  • Klir G.J y Yuan B. (1995) Fuzzy Sets end Fuzzy Logic, Theory and Applications. Vol. 1, New Jersey: Prentice Hall PTR 1995, pp. 390- 417.
  • Matta A. (2005) Design of advanced manufacturing systems. Vol 1, Netherlands, Springer, pp. 1- 13.
  • Mula, Josefa; Poler, Raúl y García, José P. (2005) Evaluación de Sistemas para la Planificación y Control de la Producción pp. 19-34. Disponible en línea: http://www.scielo.cl/scielo.php?script=sci_arttext&pid=S0718-07642006000100004&lng=es&nrm=iso [Acceso: Diciembre 2012]
  • Narasimhan, Seetharama L., McLeavey Dennis W. y Billington M. (1996). Planeación de la producción y control de inventarios. 2 ed. México: Prentice Hall. 716 p.
  • Ross T. (2004) Fuzzy logic with engineering applications. John Wiley and Sons, New York.
  • Sanchez P.J. (2009) A fuzzy model to evaluate the suitability of installing an enterprise resource planning system. Dept. of Computer Science, University of Jaén, Spain.
  • Torabi S. (2007) An interactive possibilistic programming approach for multiple objective supply chain master planning. Department of Industrial Engineering, Faculty of Engineering, University of Tehran, Tehran, Iran.
  • Wang Reay-Chen (2005) Applying possibilistic linear programming to aggregate production planning. Department of Industrial Management, Tung Nan Institute of Technology, 152 Pei Shen Rd., Sec. 3, Taipei 222, Taiwán.
Guillermo Choque Aspiazu
http://www.eldiario.net/
Febrero 13 de 2012

lunes, 6 de febrero de 2012

Comercio electrónico con agentes

El comercio electrónico engloba todas las características contenidas en el comercio tradicional entre las cuales se pueden mencionar ofertas y promociones, negociación, entrega de productos, reclamaciones, etc. Además de desarrollar estas características adquiere otras más por el hecho de desarrollarse por medios electrónicos. También se puede señalar que gracias a los contactos mediante las redes digitales es posible estar presente en un punto de venta, una transacción o en el lugar de un cliente remoto. Los investigadores Kalokota y Whinston, en el libro escrito el año 1997 sobre “comercio electrónico”, definen el comercio electrónico como: “Una metodología moderna de hacer negocios que tiene en cuenta las necesidades de las organizaciones, comerciantes y clientes con el fin de reducir costos mientras se mejora la calidad de los bienes y servicios y se aumenta la velocidad de distribución de estos bienes y servicios. El término también se aplica al uso de las redes de computadoras para buscar y recoger información que ayude a personas y corporaciones en el proceso de toma de decisiones.”

De acuerdo con la Organización Mundial de Comercio, el comercio electrónico es definido como “la distribución, comercialización, venta o entrega de bienes y servicios por medios electrónicos”. Esta definición incluye el comercio de bienes físicos a través de plataformas electrónicas así como el comercio de bienes intangibles, como pueden ser los basados en información. Los investigadores Bloch, Pigneur y Segev en el artículo publicado el año 2005 sobre “en las vías del comercio electrónico” mencionan que, se observa que esta conceptualización es bastante restrictiva al considerar el comercio electrónico como un mecanismo de venta directa y no tener en cuenta los beneficios a nivel de marketing que aporta Internet como vía de comunicación bidireccional e interactiva con el consumidor. Según Schneider, en el libro escrito el año 2004 sobre “comercio electrónico: la segunda ola”, algunas personas encuentran útil categorizar el comercio electrónico por los tipos de entidades que participan en las transacciones o en los procesos del negocio. Las cinco categorías generales del comercio electrónico son: negocio-a-consumidor, negocio-a-negocio, procesos de negocio, consumidor-a-consumidor y negocio-a-gobierno. Las categorías que se utilizan comúnmente son: (1) Compras del consumidor en la Web, a menudo llamadas negocio-a-consumidor, (2) Transacciones conducidas entre los negocios en la Web, llamadas a menudo negocio-a-negocio. (3) Transacciones y procesos de negocio que las compañías, gobiernos y otras organizaciones emprenden en Internet para apoyar las actividades de venta y compra.

Según los investigadores Botti y Julian, en el artículo sobre “agentes inteligentes” escrito el año 2000, la inteligencia artificial puede aplicarse a una gran cantidad de áreas o campos donde sea requerido el intelecto humano. Sostienen que uno de los paradigmas más interesantes de esta disciplina es el denominado paradigma de agentes. Este paradigma aborda el desarrollo de entidades que puedan actuar de forma autónoma y razonada conocidas como agentes inteligentes. Los investigadores y desarrolladores del área han generado múltiples definiciones para estas entidades, cada uno de ellos teniendo en cuenta sus propias necesidades o experiencias. Algunos ejemplos de estas definiciones son: entidad que percibe y actúa sobre un entorno, definición proporcionada en el libro “inteligencia artificial: un enfoque moderno” escrito el año 1995 por Russell y Norvig; sistema cuyo comportamiento se determina como resultado de un proceso de razonamiento basado en sus aptitudes, definición realizada en el libro “agentes inteligentes: teoría y práctica” escrito el año 1995 por Wooldridge y Jennings.

A pesar del avance sobre la temática persisten en el tema tanto lagunas conceptuales como de desarrollo, por lo que no es extraño que todavía ninguna de las definiciones haya sido aceptada plenamente por la comunidad científica. Tampoco existe acuerdo en las propiedades que debe esgrimir un agente, algunas de ellas son, en la propuesta realizada por Nwana el año 1996 en una revisión sobre “agentes de software”: continuidad temporal, autonomía, sociabilidad, racionalidad, reactividad, pro-actividad, adaptabilidad, movilidad, veracidad y benevolencia. Tal como afirman Botti y Julián, en la obra citada párrafos arriba, no existe consenso sobre el grado de importancia de cada una de estas propiedades, si bien se coincide en la opinión de que sirven para diferenciar a los agentes de meros programas software.

Debido a que los autores no evalúan las mismas características de las que los agentes deben ser poseedores, es que se obtienen distintas taxonomías para ellos. Así, existen agentes autónomos, agentes colaborativos, agentes de interfaz, agentes reactivos, agentes híbridos, agentes astutos, y otros tipos, producto de la combinación de dos o más de estas categorías citadas. Cabe resaltar que las aplicaciones basadas en agentes son numerosas, tanto como la variedad de áreas en donde están siendo empleados: control de procesos, producción, operaciones comerciales, gestión de información, comercio electrónico, monitorización, mediación, aplicaciones médicas, entretenimiento, etc. Desde el punto de vista de Villarreal, en el artículo publicado el año 2003 sobre “agentes inteligentes en educación”, los agentes han comenzado a aplicarse como una alternativa real de apoyo a los procesos de enseñanza aprendizaje. Los agentes de software se han popularizado en los últimos años. Han sido utilizados para innumerables situaciones. Recientemente, las capacidades de los agentes han sido aplicadas en el comercio electrónico, prometiendo una revolución en la forma de conducir las transacciones.

El comercio electrónico incluye una variedad de tareas como son: seguridad, mecanismos de pago, catalogo, promociones y compras por mencionar algunas. La tecnología de agentes puede aplicarse algunas de estas tareas donde es deseable que los sistemas que desarrollen estas tareas posean un comportamiento personalizado, continuo y semiautónomo. Los agentes pueden automatizar la búsqueda de un producto en las mejores condiciones de venta mediante numerosos vendedores simultáneamente. El uso de los agentes ayuda al cliente a disminuir su búsqueda a través de múltiples tiendas en línea y aumenta la posibilidad de adquirir un mayor número de ofertas. Los agentes realizan comparaciones en línea más eficientes que las realizadas convencionalmente. Algunos otros agentes desarrollados en sistemas de comercio electrónico, sugieren al cliente productos basados en las preferencias de otros clientes con gustos similares.

Según Paola Ramírez, en el trabajo de tesis escrito el año 2004 sobre “diseño y construcción de un portal de agentes de compra para comercio electrónico”, la ayuda que proporcionan los agentes en las negociaciones comerciales es profunda. Algunas de las investigaciones relacionadas con el uso de agentes en el comercio electrónico, indican que estos agentes mejoraron las ganancias obtenidas en los mercados electrónicos que los implementaron. Además de las ventajas obtenidas para los portales de comercio electrónico, los usuarios que utilizan sistemas de comercio electrónico basados en agentes obtienen un sentimiento de confianza y satisfacción al percibir que obtuvieron mejores resultados en su búsqueda que los obtenidos por ellos mismos.

Con el objeto de mostrar las ventajas que proporcionan los agentes en sistemas de comercio electrónico, Ramírez en la obra descrita, plantea el siguiente ejemplo. Actualmente, es posible establecer compras de productos vía Internet. Esta compra se completa cuando el cliente recibe los productos en su hogar. Los clientes encuentran en estas compras grandes ventajas, los productos de su preferencia llegan a su hogar sin que exista la necesidad de ir por ellos. Además de ello, pueden realizar sus compras a la hora de su preferencia ya que no hay restricciones en cuanto a los horarios que este tipo de tiendas virtuales ofrece. Los vendedores reducen notablemente los costos que implica alquilar un local.

Pese a que las ventajas son grandes, aún existen ciertas desventajas. Los clientes se ven en la necesidad de ir comparando precios en las diferentes tiendas virtuales o en su defecto buscar las mejores ofertas. Ésta es una tarea que aunque puede ahorrar dinero también puede ser demasiado retardada. Aparte de estos problemas se pueden presentar otros más. En algunas ocasiones los clientes desconocen las direcciones de las tiendas virtuales donde pueden adquirir los productos. Los clientes normalmente realizan sus compras a la hora en que la red está demasiado saturada, logrando con ello un grado de lentitud en la búsqueda de productos. Aunado a ello, cada tienda virtual dispone de su propia interfaz con el usuario complicando sumamente el acceso.

Referencias Bibliográficas
  • Bloch, M.; Pigneur, Y. y Segev, A. (1998) On the Road of Electronic Commerce: A Business Value Framework, Gaining Competitive Advantage and Some Research Issues, Business Week, Jan. 29, 1998.
  • Botti, V. y Julián, V. (2000) Agentes inteligentes: el siguiente paso de la Inteligencia Artificial, Novatica, Vol. 145, 2000, pp. 95-99.
  • Kalokota, R. y Whinston, A.B. (1997) Electronic Commerce. A manager’s guide, Addison-Wesley, Reading, MA.
  • Nwana, H. (1996) Software Agents: an overview, The Knowledge Review, Vol. 11 (3), 1996, pp. 205-244.
  • Ramírez, Paola (2004) Diseño y construcción de un portal de agentes de compra para comercio electrónico. Tesis de grado del Centro de Investigación y de Estudios Avanzados del Instituto Politécnico Nacional. México D.F.
  • Russell, S. y Norvig, P. (1995) Artificial Intelligence: A Modern Approach, Englewood Cliffs, Prentice Hall, 1995.
  • Schneider, G.P. (2004) Electronic Commerce: The Second Wave, 5° Edición, Editorial Thomson.
  • Villarreal, Farah G. (2003) Agentes Inteligentes en Educación, EDUTEC, Revista electrónica de Tecnología Educativa, Universidad de Santiago de Chile, 2003.
  • Wooldridge, M. y Jennings, N. (1995) Intelligent Agents: Theory and Practice, The Knowledge Engineering Review, Vol. 10 (2), 1995, pp. 115-152.
 
Guillermo Choque Aspiazu
http://www.eldiario.net/
Febrero 6 de 2012