A148.206.53.84/tesiuami/UAM LOTE 5/UAM21223.pdf · te trabajo se muestran algunos de los métodos...

14
' Cienciíis Bisicíis e Ingeniería //- e&@o+w&&f / PROYECTO TERMINAL: MÉTODOS HEURÍSTICOS DE OFTIMIZACIÓN 1 ROSA IRMA HERNÁNDEZ DURÁN Matrícula: 9 1320875 A.SESOR 1 - - ,/ I _--- Dr. Sergio G. deÍoc Cobos Silva.

Transcript of A148.206.53.84/tesiuami/UAM LOTE 5/UAM21223.pdf · te trabajo se muestran algunos de los métodos...

' Cienciíis Bisicíis e Ingeniería

//- e&@o+w&&f

/ PROYECTO TERMINAL:

MÉTODOS HEURÍSTICOS DE OFTIMIZACIÓN

1 ROSA IRMA HERNÁNDEZ DURÁN Matrícula: 9 1320875

A.SESOR

1- -

,/ I _--- Dr. Sergio G. deÍoc Cobos Silva.

REVISTA DE EDUCACIÓN EN CIENCIAS BÁSICAS E INGENIERíA

$9.00 3a. Época Número 31, Enero-Marzo 1999.

* Análisis del cultivo comercial de la langosta.

eo8 de optimimeión.

* Introducción a la teoría del aprendizaje significativo.

* Newton y las leyes de Kepler.

* ¿Es atribuible a Galileo el principio de inercia?.

* Psiloturn, la planta que otro poco y no existe.

* Sobre la hipotenusa y otros asuntos.

* Hongos micorrizógenos

fisy\ UNIVERSIDAD AUTONOMA METROPOLITANA Caw abisna a l l i a r n ~

Métodos heurísticos de optimizaciofi

IgguqHernández m y Sergio G. de los Gobos Silva. 4Estudiante de Licenciatura en Computación, Depto. Ingeniería Eléctrica, UAM-I

Resumen Hoy en &a existen una gran variedad de problemas de op tunissción mmbinatona que son de alta complejidad, ea- to debido a que encontrar su solución óptima o cerea na a ella es dificil, sobre todo tomando en cuenta que lo que se busca ea una rápida solución utilizando una cantidad adecuada de r e c u m computacionales. En ea- te trabajo se muestran algunos de los métodos de prw gramsáón estocástica en optimización, que se caracte- rizan por dar una "buena solución" ante dichos proble- mas. Algunos de los métodos que se presentan en ea- te trabajo son: la Búsqueda Tabú, Algoritmos Genéticos y las Redea Neurondes, que han demostrtido su eficien- cia y que son de los máp utilizados en el atado del Ar- te.

PdabrM claves: Optimización Combinatcria, Búsque- da Tabú, Algoritmos Genéticos, Redes Neuronalea.

Abstract Them exists a great variety of highly complex problems in combinatorial optimization, for which closed analy- tical solutions are difficult or imposible to obtain. Hrr wera heuristics programming methods such as: Tabu Search, Genetic Algorithms or Neural Networks, have proven to be very useful in finding fait and economi- cai fairly "good solutions", and are a mmmou camp* nent of the state of the art methods for solving such kind of problems. In this article, a review and a descrip tion of such methods is presented.

Keys HP&: Combinatorid Optimizatiou, Tabu Search, Genetic Algorithms and Ndural Networks.

introducción Cuando escucha el término de Inwtigación de Ope- raciones, ¿qué le viene a la mente? ... ¿sólo mod+ los matemáticas?, pxaciones y dcdos? S i em- barga, no son sólo matemáticas. Quizá pase por al- to uno de sus objetivoa generales: la optimizaaeidn, sí la optimizaeión de recursos.

La optimización es importante, ya que actualmente se p-ta una gran variedad de problemas de opti- mizaCión. Muchos de estos problemas implican situa- ciones d e s y prácticas, como son los problemas de localka&n de plantas, deptas, de inversión de por- tafolios, de transporte, dmiio de chips, y manteni- miento de sistemas entre algunos. En donde lo que se busca primordialmente es minimizar costos pa- ra el uso eficiente de recursos cada vez más esca-

. .

5

508, o para maximizar utilidades o beneficios. Sin em- bargo, muchos de estos problemas son muy comple- jos y no existen métodos eficientes y rápidos para en- contrar una solución óptima. Debido a esto han sur- gido procedimientos o técnicas heurísticasl que han demostrado ser lo suficientemente eficientes y capa- ces de entregar una "buena solución" como se verá más adelante.

En este trabajo se tiene como uno de los objeti- vos el presentar aigunas de las bases y características de algunos métodos heurísticos (métodos de progra- mación estocástica en optimización), los cuales han mostrado ser actualmente una gran herramienta pa- ra cumplir con el punto más importante de la Inves- tigación de Operaciones, la optimización de recur- sos cada vez & escasos. El presente trabajo se es- tructura de la siguiente manera: en la Sección 1 se explica en general la eficiencia de los métodos heurísticos, así como el por qué se dice que propor- cionan una "buena solución"; en la Sección 2 se plan- tean de manera general los problemas de optimi- zación combinatoria; en la Sección 3 se proporcio- na una introducción a la Búsqueda Tabú; en la See- c i h 4 se da una descripción de los elementos priri- cipales sobre los Algoritmos Genéticos, y finalmen- te en la Sección 5 se habla sobre el tema de Re- des Neuronaies.

1. Metodos e5cientes y solucionen óptimas Los métodos beuristicos son eficientes pero. ¿respecto a qué recursos?, existen recursos ta- les como tiempo de ejecución y espacio de al- macenamiento. Fato es un punto a favor de los métodos heurística, debido a que aigunos pro- blemas complejos de optimización combinato- ria no pueden resolverse de maneraexacta usan- do tiempo y espacio de computadora razona- bles como se podrá ver más adelante. Aún a p e sar de que actualmente se cuenta con supercom- putadoras de alta velocidad capaces de di millones o hasta billones de instrucciones por se- gundo, ante problemas de optimización el qus rer generar todas las aiternatim posibles por

lHeurfstica proviene de la palabra griega euristiken que significa entontrar.

. ."

~

--”

6 Contac tos 31, 5-16 (19991

medio de este tipo de computadora no sería fac- tible ni eñciente (si no lo cree, continúe leyen- do). Para entender mejor esto, suponga el pro- blema de la “mochila”, el cual parte del he- cho de que cuando se sale de excursión, la can- tidad de utensilios que se puede empacar en la mochila, queda determinado por la capaci- dad de la mochila, el volumen de los utensi- lios (objetos) y el valor intrínseco que éstos tie- nen para el excursionista; por lo tanto, el pro- blema consiste en llenar la mochila con el con- junto de objetos má4 valiosos que maximicen la utilidad de éstos durante la excursión, sin exce- der los límites físicos de la mochila. En términos matemáticos el problema en cuestión se formu- la como:

donde: ui = es el valor del objeto i,

i= l,Z,. . . ,n; z, = es la capacidad o volumen

del objeto i , i= 1,2,. . . ,n; KT = es la capacidad o volumen

de la mochila en general Ahora bien, suponga que se cuenta con n = 50 objetoe, esto implicaría que la computadora tendría que analizar más de 800 billones (billón = 10”) de combinaciones, examinar todas estas posibles combmaciones le l l e w í a mucho tiem- po a la computadora, ahora bien si aumenta- mos 8610 en dos la cantidad de los objetos, es de- cir, 52 objetm la computadora tendría que ana- lizar más de 4503 billones de combinaciones. O sea, eon s610 un pequeño aumento en la canti- dad de Ice objetos, la diferencia en el número de combinaciones aumenta de manera notable, en este ULSO aumentaría en más 3600 billones de c m n b i o n e s . iimaginéae! Esto sí que im- plicaría poca eficiencia, ya que aparte de anali- zar todas las posibles combinaciones y ver cuáles son las que no rebasan el espacio de la mochi- la KT, todavía se tendría que analizar cuáles son las que contienen los objetos de más valor pa- ra el excurSonista, esto lógicamente aumentaría el tiempo de ejeeución, y ítodavía faltaría ver qué hay en cuanto ai espacio de dmputo! Por lo tanto, se puede deck que uno de los proble- mas a los que se enfrentan los algoritmos exac- toe, por ejemplo, los de enumeración son el tiem- po y espacio (ante conjuntos no tan grandes de dementoe) ya que se tendrían que generar en forma secuencial todas las posibles combina-

ciones, y aparte analizar todas estas combina- ciones generadas. Es por esto, que la altemati- va ante desventajas como &Stas son los métodos heurísticos, que tienen la ventaja de optimizar el tiempo y espacio de cómputo. También se mencionó que los métodos heurísti- cos producen o entregan una “buena solución” ante problemas complejos de optúnización com- binatoria. Por “buena solución”, se entenderáen adelante que la solución obtenida está relativil- mente cercana a la óptima, sino es que se tra- ta de la solución óptima propiamente dicho. La pregunta ahora es: jcómo se puede &- rn que los métodos heuríaticos en rea- lidad producen una “buena solucián”, si no se conoce la solución óptima? Clam, si se conociera la solución óptima, utilizando r e cursos de manera razonable (tiempo y espacio) no habría por qué usar métodos heuristicas. La respuesta a la anterior pregunta es la siguien- te: hay problemas de optimieación ya conoci- dos para los cuales existen algoritmos rápidos y eficientes que permiten conocer las soluciones óptimas de dichos problemas. Pues bien, con ba- se en algunos de estos problemas para los cua- les ya se con- su solución óptima o la me- jor reportada en la iiteratura, se les aplican los métodos heuristicas, dando como resultado una solución muy cercana a la óptima en la ma- yoría de los caws si no es que en muchas oca- siones se igualan. Y todo esto se logra con sólo analizar un pequeño subconjunto del conjun- to total de combinaciones posibles de solucio- nes factibles. Esto indica que los problemas son resneltoa de manera “inteligente” mediante los métodos heuriaticas.

2. Planteamiento general de un problema de optimización combinatoria Se ha heebo mención que los métodos heurísticos dan solución a los problemas de optimización combinatoria pero, jcuál es la forma de éstos? Los problemas de optimización se dividen en problemas de optimización con variables con- tinuas y problemas de optimización con varia- bles discretas, llamados pmblemw de optamaza- caón combinatoria. En estos Últimos, la solución se busca sobre un conjunto h i t o o infinito nu- merable. El problema de o p t i i a c i ó n combinatoria se puede representar de la siguiente forma:

P = Minimizar C(z)

t a l q u e z E X c R”

Métodos heurísticos ide optimización. Rosa Irma Hernández D. u Sergio G. de los Cobos S. 7

donde: X denota el conjunto finito

(o a lo m& numerable) de todas las soluciones factibles. es la función objetivo, o costo. C

Como se nota la formulación para estos proble- mas es sencilla, sin embargo resolverlos y en- contrar la solución óptima puede que no lo sea, tal como lo apunta Gutiérrez Andrade (1991), “Una característica recurrente en los problemas de optimización combinatoria es el hecho de que son muy “fáciles” de entender y de enunciar, p e ro generalmente son “difíciles” de resolver”. En el caso de minimización, el problema consiste en encontrar zapt tal que cumpla con:

C ( Z O P t ) 5 C(z),Vz E x A la solución xopt se le llama una solución g i o balmente óptima, en donde la función objeti- vo (costo óptimo) es Cop, = C(z.,,), además X,,, denota el conjunto de soluciones óptimas que son totalmente “cercanas” a la solución g b balmente óptima zOpf.

Ahora bien, los métodos heurísticos pueden ire- solver problemas del tipo P, que buscan encon- trar una solución z E Xopt. Dichos métodos se caracterizan a través de movimientos que per- miten pasar de una solución factible a otra s o lución factible, tal que los movimientos perte- nezcan a X (conjunto de soluciones factibles).

Haciendo un poco de historia, se puede mencio- nar que las ideas básicas de la Búsqueda Tabú fueron hechas por Fred Glover (1986) y por Pie- rre Hansen (1986). Pero, ¿qué es la Búsqueda Tabú? La Búsqueda Tabú es un mét.odo heurístico de “alto nivel“, que se usa para resolver problemas de optimiza- Uón de gran escala. Se dice que de “alto nivel”, ya que esta disenado para guiar a otros métodos a que “escapen” de la optimalidad local, y así poder continuar con la búsqueda para mejorar ese óptimo local encontrado. La Búsqueda Tabú ha demostrado ser un método ”inteligente”, al obtener las mejores soluciones en una gran va- riedad de problemas prácticos. Es importante hacer notar que ya en la década de los años ochenta, el Committee on N M De- cade of Opemtions Research (Condor (1988)) calificaba a la Búsqueda Tabú, junto con la técnica del Fkcocido Simulado y los Algorit- mos Genéticos como “extremadamente promi-

3. U n a introducción a la búsqueda ‘hbú

sorios” para el tratamiento futuro de aplicacio nes prácticas. Actualmente, se ha demoatrado que dichos métodos en realidad han cumplido con su papel en aplicaciones reales y prácticas.

O

Puntop

Figura 1. Región Factible y solución inicial

El algoritmo de la búsqueda tabú consiste bá- sicamente en: A partir de una solución facti- ble inicial (ver Figura 1) de un problema de o p timización combinatoria, bay que moverse pa- so a paso hacia una solución que proporcione el valor mínimo de la función objetivo C(z). Ca- da solución factible se puede representar como un punto p en alguna región espacial, además se define una vecindad N(p) (ver Figura 2) pa- ra cada punto p, que consta de soluciones facti- bles que son “cercanas” a p en algún sentida

Vecindad N(p)

Figura 2. Conjunto vecindad del punto p .

El paso básico del algoritmo de la búsqueda tabú es que una vez que se tiene la solución ini- cial factible, y se generó el conjunto de solu- ciones N(p), entonces se escoge al mejor veci- no generado de p que viene a ser p*, el cual es el nuevo punto a partir, ya sea que C y ) ten- ga o no una mejor solución que C@). Y así su- cesivamente.

Ahora bien, uno de los objetivos de la búsqueda tabú consiste en inducir la exploración hacia nuevas regiones, para encontrar nuevas soliicio- ne8 de alta calidad. Otro de su8 objetivos, es el de evitar casos de ciclado, impidiendo así que los movimientos hacia nuevas soluciones nos regre- sen al mismo óptimo local del cual se pudo ha- ber partido o a un punto de alguna iteración an- terior. Esto se logra gracias a una de las carac- terísticas más notables de la búsqueda tabú, que es la construcción de una lista tabú T de mo- vimientos. Dicha lista consiste en aquellos mo- vimientos que no son permitidos (movimientos tabúes) en la presente iteración. (Ver Figur,a 3). Todo esto es precisamente con el fin de evitar ciclos.

unto Tabú

I I

Figura 3. Movimiento Tabú Algo que se debe mencionar es que la preven- ción de ciclos no es la última meta del proceso de búsqueda, ya que se pueden presentar c a o s , en donde una buena trayectoria de búsqueda re- sultará al revisitar una solución encontrada an- tes, esto lleva a que la clasificación de tabú de un movimiento pueda elimúiarse, por lo tanto, un movimiento tabú permanece corno tal, sólo du- rante un cierto número de iteraciones, de for- ma tal que esto implica que T es una lista cídica donde para cada movimiento s -+ S* el mo- vimiento opuesto so -t s será un movimien- to no permitido que se adiciona al final de la lis- ta T , donde el movimiento más viejo en T se elimina.

Como se nota, la búsqueda tabú cuenta con ele- mentos para poder encontrar una "buena solu- ción", la de restringir la búsqueda a ciertos pun- tas, mediante la dasi6caci6n de tabú (probibi- doe) y la de quitar la etiqueta de tabú a mo- vimientos que mejoren la solución previamen- te encontrada. El criterio que permite dicha eli- minación es denominado criterio de aspiración. Es así como las restricciones tabúea y el crite- rio de aspiración de la búsqueda tabú, juegan un papel dual en la restrición y guía del proce-

so de búsqueda. Con base en lo anterior es importante enfatizar los siguientes puntos:

La lista T de los movimientos tabú, er la que proporciona una búsqueda restringida, esto lleva a que las soluciones generadas dependan criticamente de la composición y la manera en que se actualiza la lista T. La búsqueda tabú no hace referencia a la condición de optimalidad local, a excep ción de aquellos casos cuando el óptimo local es mejor que la solución previamen- te encontrada. Un mejor movimiento se elige en cada paso.

Un punto importante de la búsqueda tabú es la construcción de una lista tabú T de movimien- tos que no son permitidos en cada iteración (mo- vimiento tabú). El principal objetivo de esta lis- ta es excluir los movimientos a los puntos de ite- raciones anteriores. Ahora bien, ¿cuál debe ser el tamaño ideal de esta l i ta? Lo que se debe te- ner en cuenta de este parámetro es que si la lon- gitud es demasiada pequefía, seguro ocurrirá el cidado, es decir, se regresará a movúnientcnr an- teriores, sin embargo, si ea demasiado grande, restringirá la búsqueda para poder salir de luciones localea. Por tanto, una faceta impor- tante de la búsqueda tabú es la habilidad pa- ra localizar un rango robusto de longitudes de la lista tabú mediante pruebas empíricas preli- minares.para identificar, para una c l e de prc- blemas, los tipos de atributos y de restriccie nes tabú que son realizados de manera efectiva. Otro elemento importante en la búsqueda tabú es el criterio d e nivel de aspiraci6n, cuya fi-

tabú de un movimiento se elimine y se selec- cione como mejor movimiento, esto si se pue- de obtener una mejor solución que la alcanza- da hasta el momento, o s e a este criterio de as- piración da una oportunidad para eliminar la elasieación de 1 tabú y permiten que el método de la búsqueda tabú alcance sus mejores nive les de realización. S,& apunta Laguna et al. (lw), aigUnos de los criterios de aspiración son: "(a) Aspiraci6n por default: si todos los movimientos posibles son clasificados como'tabú, entonm el movi- miento "menos tabú" es seleccionado. (b) As- piración por objetivo: una aspiración de movi- miento es satisfecha, permitiendo que un mo- vimiento z sea un candidato para seleccionar-

nalidad es la de permitir que la condición de 1

I

~

t

I

I

I

il

Y I

I

I

1

I

I

1

I

I

I f

1

li

Métodos heurísticos de optimización. Rosa Inna Hernandez D. v Serpio U. de 108 Gobos S. 9

se, si C(z) < mejor costo. (c) Aspiración por di- rección de búsqueda: un atributo de aspiración es satisfecho, si la dirección proporciona un me- joramiento y el actual movimiento es un movi- miento de mejora”. Intensificación y diversificación Si en alguna iteración ya no existieran puntos admisibles, se tendrían que utilizar las fases de intensificación y la diversificación. La fase in- tensificación proporciona una forma simple pa- ra dirigir la búsqueda alrededor de la mejor * lución o conjunto de mejores soluciones. Exis- te en l a búsqueda una matriz de frecuencias que es la que registra la “historia” del procedimien- to y que da información en cuanto a las regiones que no se han visitado, y es utilizada para for- mar la función de memoria de término largo, la cual permite la diversificación de la búsqueda; es decir, ea posible dirigir la búsqueda “más cerca- na” ó “más alejada” en las regiones exploradas. Para aplicaciones reales, tales como un proble- ma de calendarización y una aplicación en cuan- to a selección de rutas, puede consultar a De los Cob- (1997) y Pérez S. et al. (1996). respecti- vamente.

4. Una introducción a los Algori tmos Genéticos Por el siglo XIX. se introdujo una teoría que re- volucionó al mundo: la teoría de la evolución del británico Charles Darwin. En ésta, Darwin aiirmaba que las especies naturales van evoh- cionando para adaptarse a su medio ambien- te, con el criterio de que los individuos que me- jor se adapten a los cambios de su entorno son

’ los que tendrán mayor probabilidad de sobre- vivir hasta la edad adulta y procrear, hacien- do que sus genes pasen a la siguiente generb ción cuando se reproduzcan. Pero, ¿qué tiene que ver está teoría con los métodos heurísticos? Si la naturaleza es <:a- paz de ir optimizando las características de wn individuo perfeccionando sus genes para adap tame mejor a s u medio, ¿por qué no se pue- de crear una población digital que se optinii- ce para adaptarse mejor a la función objetivo que se plantee y a la cual se le quiera dar so- lución? Es qui: donde entran los Algoritmos Genéticos. Orígenes La idea de los algoritmos genéticos, surgió de modo independiente en dos frentes, uno de éstos fue en los Estados Unidos, donde en los anos se- senta el profesor John Holland de la Universi- dad de Michigan, sabiendo de la importancia de

la selección natural, desarrolló una técnica que permitió incorporarla en un programa de com- putadora; en donde su objetivo era lograr que las computadoras aprendieran por sí mismas. Su técnica se llamó “planes reproductivos” pe- ro, tras una de sus publicaciones por 1975. di- cha técnica se him popular bajo el nombre de al- goritmos genéticos. De modo independiente, el alemán Rechenberg introdujo la idea de la Estrategias Evolutiws. fie precisamente en 1964. cuando Rechenberg empezó con su primer experimento para imitar el método de la evolución biológica. Claro está que desde aquellos años sesenta hasta la fecha. muchas otras personas han contribuido de modo notable al desarrollo de estas ideas. Actualmente la comunidad científica está mos- trando gran interés en esta técnica en búsqueda basada en la teoría de la evolución de Darwin, y que se conoce como algoritmos genéticos. Es- ta técnica tiene como base los criterios de selec- ción que utiliza la naturaleza, éstos hacen que los individuos que mejor se adapten a los cam- bios de su entorno sean los que sobrevivan, ac- tualmente los científicos saben que estos cam- bios se efectúan en los genes del individuo (uni- dad básica de codificación de cada uno de los atributos de un ser vivo), y que sus atributos más deseables, es decir aquellos que le perrni- ten adaptarse mejor a su entorno, son lay que se transmiten ‘a sus descendientes. Entonces cómo se define lo que es un algor& mo genético: “Es un algoritmo matemático ai- tamente paralelo que transforma un conjunto de objetos matemáticos individuales con res- pecto al tiempo usando operaciones modeladas de acuerdo al principio darwiniano de reproduc- ción y supervivencia del más apto, y tras haber- se presentado de forma natural una serie de ope raciones genéticas de entre las que se destaca la recombinación sexual. Cada uno de estos obje- tos matemáticos suele ser una cadena de cara.. teres (letras o números) de longitud física que se ajusta al modelo de las cadenas de cromo= mas, y se les asocia con una cierta función ma- temática que refleja su aptitud.” (John Koza 1992).

En términos generales se puede decir que los algoritmos genéticos son técnicas de búsqueda aleatoria que imitan los procesos observados en la evolución natural. Tienen como base que a partir de soluciones iniciales (padres) se genr- ran nuevas soluciones (hijos), empleando meca- nismos que se aplican en la genética. La mejor descendencia de las soluciones padres se retie-

s. L

c

10 Contactos 31, 5-16 (1999)

nen para una nueva generación, por lo que se f e menta la supervivencia de los más aptos, la me- jor de todas las descendencias se registra y es el candidato propuesto por el método para una so- lución óptima.

Componentes básicos

Un algoritmo genético b&im tiene tres operade res: reproducción, cruzamiento y mutación. La reproducción consiste en el apareamiento alea- torio de dos individuos tomados de un conjun- to de soluciones, para crear una o más descen- dencias. El cruzamiento consiste en el cambio de genes (tipo de información y sua atributos) si- guiendo el modelo de reprodueeión biológica, t e man en cuenta que la descendencia tenga un me- joramiento en relación con sus padres. La muta- ción consiste en introducir un elemento aleato- rio, muchas veces con la finalidad de que al cam- biar un gene no se den los resultados espera- dos, además la mutaci6n diversifica el espacio de búsqueda aleatoria y protege de la pérdida de material genético que pueda darse en la re- producción y el cruzamiento. Aplicaciones

La aplicación más común de los algoritmos genétieos, y donde ban mostrado ser muy efi- cientes y confiables, es en la solución de pre blemas de optimización combinatoria, y en par- ticular en los problemas de secuenciación. Éstos aparecen frecuentemente en muchas ciencias aplicadas. Por ejemplo, el problema del agen- te viajero, los problemas de rutas, el problema de la mochila, el problema del coloreo de gra- fos, el problema de planificación de tareas, en- tre otros.

S i embargo, es importante hacer notar que an- tea de usaf el método de los algoritmos genéticos para algún problema en particular, se deben to- mar en cuenta las siguientes características del mismo:

Lo recomendable ea que el problema cuen- te con un espacio de búsqueda disereto, es decir debe de estar delimitado dentro <le un cierto rango, no importando si este es- pacio de posibles soluciones es muy gran- de. Aunque, también funciona para espa- cios de búsqueda continuos, pero preferen- temente cuando exista un rango de solu- ciones relativamente pequeños.

Debe poder% definir una funcidn de apti- tud (función objetivo del problema de op- timizaeión a resolver) que indique qué tan buena o mala es una cierta solución, de tal

forma que permita que las "buenas" solu- ciones se propaguen con mayor rapidez. Las soluciones de! problema deben codi- ficarse de una forma que resulte relativa- mente fácil de implementar en la computa- dora. Dentro de las codificaciones, la más común y más sencilla de implementar es la de cadenas biarias que es la que pro- puso John Holland, aunque se han utiliza- do también números reales y letras.

Funcionamiento El funcionamiento de un algoritmo genético se puede mostrar con el siguiente fragmento de pseudoddigo: inicia

¡ S O ; generapoblaci6niniua1(Pi); seleccionaindividuos de Pi; cruzaindividuosseleccionados de Pi; mutaindividuos de Pi; Repite

i:=i+l; genera-poblacibn (Pi) usando Pi-1; seleccionaindividuos de Pi; uuzaindividuos-seleionados de Pi; mutaindividuos de Pi;

Hasta que encuentrw una "buena soluci6n" termina

Primero, se genera aleatoriamente una pobla- ción inicial, que estará formada por un conjun- to de cromwmas (comúnmente es una cade- na de bit,s.de longitud 6ja). Como segundo pa- so se hace una selección de individuos de es- ta población, un método simple para hacer di- cha selección, ea el usado por Goldberg, D.E. (1989). Este método es el de la ruleta, y eonsis- te en crear una ruleta en la que cada mom- ma tiene asignado un valor proporcional a su a p titud. Por ejemplo, suponga que se tiene una po- blación de 5 cromosomas cuyas aptitudes est& dadas por los valores y porcentajes que se mu- tran en la Tabla 1. Con los porcentajes de la tabla se puede ehbe rar una ruleta como se muestra en la Figura 4.

Esta ruleta se gira n veces para determinar qué individuos se seleccionarán. Lógicamente, como a los individuos más aptos se les asignó un &a mayor de la ruleta, se espera que se lea seleccio- ne más veces que los menos aptos. Una vez realizada la selección, el siguiente pa- so es la reproducción o cruza de los indivi- duos seleccionados. En este paso, los selecciona-

i

No. de cromosoma 1 2 3 4 5

Total

Métodos h e m o s de optimización. Rosa Inna Hernánder D. y Sergio G. de los Gobos S. 11

Cadena de bits Aptitud % del total 11010110 70 5 100001 11 154 11 00110100 448 32 01110010 516 37 11110110 210 15

1400 100.0

3 3T

*I"

3T

\ i, I!%

Figura 4 . Ruleta de aptitudes

dos (sobrevivientes) intercambian material crc- mosómico (bits) y sus descendientes formarán la población de la siguiente generación.

Existen formas comunes de reproducción como son las siguientes: uso de un punto único de cruza y uso de dos puntos de cruza. Con el uso de un solo punto de cruza entre dos individuos, cada pareja de cromosomas da ori- gen a dos descendientes para la siguiente gene- ración, el punto de cruza puede ser cualguie- ra de los dos extremos de la cadena, en cuyo ca- so no se realiza la cruza.

Con el uso de dos puntos de cruza entre dos in- dividuos, en este caso se mantienen los genes de los extremos, y se intercambian los del centro, aquí también existe la posibilidad de que uno o ambos puntos de cruza se encuentren los de la cadena, en cuyo caso se hará una cruza usan- do un solo punto, o ninguna cruza según corres- ponda. El siguiente paso, es el operador llamado rnu- tación, el cual realiza un cambio uno de,los ge- nes (un bit) de un cromosoma elegido aleatc- riamente, en este caso un bit se sustituye por su complemento (un uno cambia en cero y vice- versa). La mutación permite la introducción de nuevo material cromosómico en la población ge-

nerada con la cruza.

Generalmente la cruza y la mutación se mane- ja dentro de la implementación del algoritmo genético como un porcentaje que indica con qué frecuencia se efectuará, en el caso de la cruza es- to significa que no todas las parejas de cromose mas se cruzarán, que habrá algunas de ellas que pasarán intactas a la siguiente generación, has- ta que una pareja mejor la desplace. Cabe hacer notar que la frecuencia con que se efectúa la cru- za es mucho mayor que la mutación, ya que ésta sólo se realiza de manera esporádica.

¿Cuándo se debe detener el algoritmo genético? Generalmente, se ejecuta el algoritmo duran- te un número máximo de generaciones o cuan- do la población se haya hecho estable, es de- cir, cuando la mayoría de los individuos ten- gan una aptitud similar.

Para un problema de optimización a solucie nar con un algoritmo genético, se puede con- sultar la página de internet de Coello, en donde se muestran resultados interesantes, dado que se logra encontrar la solución óptima con un "buen" tiempo.

5. Redes Neuronales ¿Reconocimiento de patrones y optimización? Sí, éstas tan sólo son dos de las aplicaciones de las redes neuronales artificiales. Por ejemplo, ¿se imagina las consecuencias que habría si le hi- cieran un diagnóstico médico, en el que le di- gan que tiene un tipo de cáncer benigno cuan- do la realidad lo que tiene es un cáncer malig- no? ¿O se imagina lo que pasaría en el cam- po de batalla, si en un combate aéreo se quisie- ra destruir a las naves enemigas, y al identificar- las (reconocerlas) y apuntar a ellas no se trata- ra del enemigo si no de una nave aliada? Pues bien, he aquí la importancia del reconocimiento de patrones, claro junto con la optimización, pa- ra así poder obtener los mejores resultados. Pe- ro, veamos de dónde surgieron y en qué consis- ten las redes neuronales artificiales.

. "1 12 . . ContactoS 31, 5-16 (1999)

~ ~

En 1936, Alan Turing fi.., diar el modelo humano 1: :: el mundo de la computa<:¡<, nea establecieron los fuwi pukión N e ~ ~ ~ i a l fueroi. men McCulloch, y el m a x &tos proporuon.aron en i!i de c6mo trabajaban las net, delaron una red neuronal cuitos eléctricos;. En 196: desarroll6 el modelo de ui mada el Perceptrón que ti:

n e d , y que! se usa h<: n d o r de patrones. Eii rofal Hoff, desarrollaron i nai, llamada ADALINE q blema real que consistía P heas telefónicse.

Hoy en día, se iiiguen re j a e investigaciones nales, así como el hecho de I i i! ' iay y surgen p re dnetos nuevos tanto harda i omlo software! so- bre todo para la sirnulack

Bases de las redes Neuroi i, fi.

Uno de las 6rgasos más p'. ras mnocidos p r el hombre es el cerebro no, por ejemplo un pequeno niño es eaLizsr de mane ra k ü acciones que or mucho a ia c& pacidad de la computado,,,. ii i . í s sofistieada. re- conocimiento de docenas .: * (:.,ras y objetos ded de diferentes ángulos y en 1 h : i entes condiciones (luz, etc.). Pues bien, l a ' 4 t 3 neuronales arti- ficiales en cuanto al asp+- I &rico y modela, do están inspiradas en la .X I ctura y funciona- miento del cerebro, donib ai neurona es ell ele- mento fundamental. El i o humano co& te de un gran número dt ' I?II ronas, interw>nec- tadas masivamente, se cala . i l l que como prome dio hay del orden de die;', ' >I1 ;ones de neuronas en el cerebro humano c<o U I promedio de mi- les de mnexiones por ca&. 111 la. La neurona es una célula vira y en genu i1:, :onsta de un cuer- po celular, del que sale,, o:: las, una que ea la rama principal llamada i~' 61 , y otras m6u cor- tas, h a d a s dendritas. '"/ !r Figura 5. Se puede mencionar quv I N neurona eat$ for- madapor trea partes: SCI ' uerpo ceidar, su8 ea- tructuras de entradas (l i la , Iendritaa) y nu ea- tructura de siida (el axtir. I. . ilgo imporb~te de las neuronas es que tienett I L capacidad de cc- municanie, ato se puedt. d~i!.~cr¡bu en t&minos generales de la siguient,t icianera: el cuerpo celular y las dendritas r<c¡)en Wes dejen- trada, estas seeales 8011. ~ ~ i b m a d a s e integrtk das por el cuerpo celiil.3.1, i ue da como read-

1 1 ¡mero en estu- 1 I a forma de ver ! ,y iorii bien, quip

s : , : tos de la coin- : I rofisiólogo U'*

o Walter Pitts, I . la teoría acerca

!I L s y ademb m e , , ! I ) e mediante cir- :.:ink Rossenbuuit ? i neuronal, Ila-

I 1 o& antigua id 1 1 día como' mx-

Figura 5. htructura de una neuronas.

tad0 que se emitan seríales (eléaiieas) de s%

üda. El ax6n es el encargado de transportar las señales (eléctricas) de salida a los termbw 1- duicns, que se encargan a su m de distri- buir las d e s recibidas a un nuevo conjunto de newonas; la Seaal que se transmite entre los ter- minales ax6nicns de una U ~ U ~ O M y las deudri- tas de las newonas siguientea ea de tipo qUimico. Cabe mencionar también a los punt08 de cone xi& con otras neuronas, llamados suiapsis, que tienen la función de recepior y ea& beaüak dos entre los terminales aX6nieos y las deudri- tas de la neurona siguiente, por lo tanto se pue de decir que las Senales electro-quimicas se P- pagan por las neuronas desde sus Sinapeis ha- cia otras neuronas. Algo que se debe hacer nc- tar ea el hecho de que una D~UIOM recibe infor- maci6n de otras miles de neuronas, y a su m envk información a mile de neuronas msS. Fxisten dos t i p de sinapsis: las Sinapeis aci- tadoras y las sinapis inhibidmas. Casi todas las neuronas reciben entradas procedentes de am- bas &apsis, es decir, en cadainstante aipunas

reposo; la suma de l a efectos excitadmes e inhi- bidorea determinarán si la neurona será o no es- tim&&qedecir,siemituáonoimp~ya qué velocidad. DefiniQ6n

Las redes neuronales artificiales soll modelas computarizados que intentan reproducir el aun- portamiento del cerebro, dicha modela funae

neuronas estarán activas y otras se hallaren en

13 Métodos heurísticos de optimización. Rosa Irma Hemández D. y Sergio G. de los Cobos S.

nan bajo procesamiento paralelo y adapttitivo. Por lo tanto, se podrían definir a las redes neu- ronales artificiales como un sistema de computa- ción formado por un gran número de elementos simples, elementos de proceso muy interconec- tad-, los cuales procesan información por me- dio de su estado dinámico como respuesta a en- tradas externas [Hecht-Niesen 1988a]. Cabe mencionar que en las redes neuroriales biológicas, las neuronas corresponden a los ele- mentos simple,s de proceso mencionados en la definición anterior. En cuanto a la construcción de redes neurona- les artificiales, éstas pueden ser construidas con hardware especial (sobre todo con base en pro- cesamiento paralelo) o simuladas en computa- doras normales. Sin embargo, actualmente el hardware especial no es lo que más se usa., si- no más bien lo más común es bacer simulación de redes neuronales, por medio de computado- ras digitales. Aplicaciones Las redes neuronales pueden utilizarse en. un gran número y variedad de aplicaciones, tan- to comerciales como militares. Entre las prin- cipales aplicaciones son para el reconocimien- to de patrones y para el procesado de señales. Sin embargo han encontrado gran éxito en apli- caciones como la visión artificial, en el procesa- do de señales e imágenes, reconocimiento del ha- bla y de caracteres, sistemas expertos, análisis de imágenes médicas, control remoto, control de robots, inspección industrial, y exploración científica. En general, las aplicaciones de las redes neuronales se pueden clasificar en: aso- ciación y clasificación, regeneración de patro- nes, regresión y generdización, y optimización. A continuación se mencionan de manera bre- ve dos de estas clasificaciones que se conside- ran importantes. Asociación y clasificación: Aquí la idea es que los patrones de entrada estáticos deben ser cla- sificados, este trabajo lo hará una red neuro- nal, la cual debe ser entrenada para que cuan- do se le presente una versión distorsionada li- geramente del patrón base, pueda reconocerla correctamente sin problemas, por ejemplo, de- be ser capaz de recuperar una señal "limpia" de ambientes o canales ruidosos. En muchos p r e blemas de clasificación, la cuestión a solucionar es la recuperación de información, esto'es, re- cuperar el patrón original, dada una informa- ción parcial del patrón deseado. Optimización: Las redes neuronales son una he- rramienta también para la optirnización de a,pli-

caciones, que normalmente implican la búsqueda del mínimo absoluto de una función de energía. Hablando en términos de disciplinas específicas, por ejemplo, en una empresa las aplicaciones consisten en la optimización de plazas y hora- rios en líneas de vuelo, en la explotación de una base de datos, reconocimiento de caracteres e- critos. etc. E n finanzas, las aplicaciones consis- ten en la identificación de falsificaciones, inter- pretación de firmas, etc. En el medio ambien- te, analizar tendencias y patrones, previsión de tiempo, etc. En medicina, predicción de reaciio- nes adversas a los medicamentos, diagnósticos de tratamiento a partir de síntomas y/o dr <In- tos analíticos, monitorización en cirugía, etc. En el aspecto militar, Clasificación de las señales de radar, creación de armas inteligentes. optiniiza- ción del uso de recursos escasos. reconocimien- to y seguimiento en el tiro al blanco. Las redes neuronales se usan como filtros para la eliminación de ruidos , desórdenes en señales, por ejemplo, la red backpmpagation (propaga- ción hacía atrás) se usa a menudo para obte- ner una versión de ruido- reducido a partir de una señal de entrada, y la red MADALINE SP

ha usado por décadas para mejorar la transmi- sión telefónica comercial. Otra aplicación interesante es la segmentación de datos, que es una tarea muy solicitada, 50 bre todo en imágenes, señales de variación tem- poral, por ejemplo, datos sísmicos. Actualmen- te existen numerosas aproximaciones de redes neuronales habilitadas para segmentación de imágenes, la mayoría de los cuales presentan una capacidad superior en comparación con al- guno de los más complejos algoritmos de seg- mentación. Como se puede notar las redes neuronales arti- ficiales tienen infinidad de aplicaciones, por ul- timo se comenta una de ellas a la que ya se le han aplicado diferentes tipos de redes neure nales con prometedores resultados: la compre sión de datos. Esta aplicación es importante en áreas donde se producen, se transmiten y al- macenan enormes cantidades de datos. tales c e mo la medicina. Por tal razón, se busca aplicar y desarrollar la metodología de compresión de da- tos, ya que el costo de los dispositivos de alma- cenamiento masivo es elevado. De todas las aplicaciones mencionadas se puede ver que tienen hechos en común; la mayoría con- sisten en realizar un reconocimiento de patre nes: buscar un patrón en una serie de patrones, clasificar patrones, completar una señal a par- tir de valores parciales o reconstruir el patrón

g .#<

14 ContactoS 31, 5-16 (1999)

correcto partiendo de uno distorsionado. Componentes de una red neuronal artificial Hiera y Martinez, (1995) apuntan que los com- ponentes básicos generales de toda red neuro- nal artificial son los siguientes:

“Unidades de procesamiento (neurona q- tificial) Estado de activación de cada neurona. Patrón de conectividad entre neuronas. Regla de propagación. Función de salida o transferencia. Regla de activación. Regla de aprendizaje”

A continuación se describirá de manera breve en qué consisten estos componentes. Unidades de pn>cesomiento.- Cualquier modelo de red neu- ronal consta de unidades elementales de pro- ceso: las neuronas. El trabajo de una neuro- na consiste en recibir las entradas de las neu- rona vecinas y calcular un valor de salida, el cuai es enviado a todas las neuronas restan- tes. Generalmente, se pueden encontrar tres ti- p de neuronas. Neumnod de entmda: aque- üas que reciben estimulos externos, relacions das con el aparato sensorial u otros sectores del sistema, que tomarán la información de entra- da. Neuronas ocultas: la información de entra- da se transmite a estas unidades ocultas que se ocupan de su procesado. Es en la sinapsis y neu- roma ocultas donde se genera cualquier tipo de representación interna de la información recibi- da. El nombre de neurona oculta se debe a que no tienen ninguna relación directa con la infor- mación de entrada ni con la de salida. Neuro- nod de salido: estas unidades reciben la infor- mación una vez que ha sido procesada, su mi- sión principal es enviar la señal (respuesta) hie- ra del sistema. El atado de activación- Todas las neuronas que componen la red se hallan en cierto estado en un tiempo t, se puede decir que hay dos posi- bles estados de activación: reposo y excitado, y a cada uno de los cualea se les designa un va- lor (continuo o discreto). Los estados de acti- vación que tendrán cada una de las neuronas dependerá en parte de la señal que envía ca- da una de las neuronas vecinas. También se pu- de decir que la señal que envía cada neurona a sua neuronas vecinas depende de su propio es- tado de activacih I;tinciÓn de salido o de tmn.sferencia.- Entre Las neuronas que forman una red neuronal artifi- cial existe un conjunto de conexiones que unen

unas neuronas con otras. Cada neurona envía vu señal a las neuronas con las que se encuen- tra conectada. Por lo tanto, la función de sali- da lo que hace es transformar el estado actuai de activación (de una neurona) en una Send de di- da. En algunas redes esta señal de salida es igual al estado de activación de la neurona, en cu- yo c a ~ ~ la función de salida, es la función iden- tidad. Existen otros tipos de funciones de sa- lida, como lo son: la función lineal, sigmoidal, etc. Para más detalle acerca de éstas ver (Hile- ra y Martinez, 1995).

Regla de propagación.- Esta regla tiene que ver con la manera en que se combinan todos los va- lores de entrada (los valores de salida de sus neuronas vecinas) a una neurona con los pe- sos de las conexiones que llegan a esa neuro- na. En términos más claros se puede decir: que todas las conexiones que unen a las neuronas en una red neuronal tienen asociado un peso, que es el que finalmente hace que la red adquie- ra conocimiento. Ahora bien, si se considera co- rno y. el valor de salida de la neurona i en un tiempo ti dado; y como wdj el peso de la co- nexión (sinapsis) entre la neurona i y j , enton- ces se puede decir que la entrada neta En que re- cibe la neurona j en el tiempo tj es la suma del producto de cada señal individual por el va- lor de la sinapsis que conecta a ambas neuro- nas

Reg10 de activación.- Esta regla consiste en com- binar el valor total de las entradas con el esta- do actual de la neurona, para que se produz- ca un nuevo estado de activación de la neuro- na. Dado el estado actual de activación de una neurona ai(t) de la neurona i y la entrada to- tal que Uega a eiia, el estado de activaci6n si- guienteai(t+l) delaneuronai, seobtieneapii- cando la regia de activan6n.

Regla de aprmduaje.- (Hilera y Martinez, 1995) dice “Biológicamente, se suele aceptar que la in- formación memorizada en el cerebro está más relacionada con los valores sinápticos de las co- nexiones entre las neuronas que con ellas mis- mas; es decir, el conocimiento se encuentra en las sinapsis”. Pues bien, en el caso de las re- des neuronales artificiales se puede deck io mis- mo, ya que como se mencionó anteriormente, las pesos que tienen asociados las conexiones son los que hacen que La red adquiera conocimien- to. En sí, se puede de& que la red aprende mo-

15 Métodos heurísticos de optimización. Roda I m a .Hernández D. y Sergio G. de los Cobas S.

dificando los valores de los pesos de las conexie nes de la red misma.

Formas de aprendizaje

El proceso de aprendizaje de una red neuronal consiste en modificar los pesos de las conexio- nes en respuesta a una información de entra- da. Estas modificaciones que se producen con- sisten en la destrucción, modificación y creak- ción de conexiones entre las neuronas, por ejem- plo la creación de una nueva conexión impii: ca que el peso de la misma pasa a tener un va.- lor distinto de cero, de la misma forma la des- trucción de una conexión sucede cuando el pe? so pasa a ser cero. Algo importante que se puede decir es que la red ha aprendido cuando los pesos de las conexiones permanecen estables. Los criterios que se siguen para modificar los pe- sos se conoce como regla de aprendizaje de l,a red. Por lo general, se manejan dos tipos de re- glas: con aprendizaje supervisado y aprendiza; j e no supervisado. La diferencia principal en- tre las redes que manejan aprendizaje supervi- sado y las que no lo manejan, consiste en la existencia o no de un agente externo, un su- pervisor que controle el proceso de aprendiza; je a la red. El proceso de aprendizaje supervisado, se ca- racteriza porque se realiza mediante un entre- namiento controlado por un supervisor, que es el que determina la respuesta que debería ge- nerar la red a partir de una entrada de infor- mación. el supervisor verifica la respuesta (sa- lida) de la red y en caso de que no coincida con lo deseado, se proceden a modificar los pe- sos de las conexiones. Las redes con aprendizaje no supervisado no re- quieren la influencia externa de un supervisor para ajustar los pesos de las conexiones, por lo tanto, la red no recibe ninguna información ex- terna que le indique si la respuesta que generó es o no correcta. Lo que deben de hacer estas re- des es autoorganizarse, es decir, deben encon- trar las características, regularidades, correla. ciones o categorías que se puedan establecer en.. tre los datos de mtrada. En algunos casos la salida representa el grado de familiaridad en.. tre la información de entrada y las entradas.que se ban mostrado antes. POI último, se puede comentar de manera bre. ve acerca de este proceso de aprendizaje: pri-. mero la red empieza a trabajar con un conjun-. to de muestras, en donde dichas muestras de.. ben reflejar todas las condiciones de entrada

que están asociadas con la salida deseada. Pos- teriormente, “se le adiestra”. y una vez adies- trada se le pone a trabajar para reconocer, cla- sificar, etc., nueva información.

Bibliografia

1. CONDOR (Committee on the Next Decade of Operation Research), Operations Research: The Next Decade. Opemtions Research, 36. 1988.

2. De los Cobos Silva Sergio. La t6cnica de la búsqueda Tabú y sus aplicaciones, Ingenieria. LV11[ 4 1, 247-256,1997.

3. De los Cobos Silva S., González S.F. y Aceves G. R., Formas Inteligentes de Resolver Problemas Difíciles, üniversidad Michoacana, [ 12 1.44-64, 1994.

4. Glover F. Future Paths for Integer Progran- ming and Links to Artificial Intelligence. Com- puters and Operations Research, 533-549.1986.

5. Goldberg,D.E.. Genetic Algorithms in Search, Optimization and Machine Learning. Addison Wesley Publishing Company, 1989, p.412.

6. Gutiérrez Andrade )A. A., La técnica del remci- do simulado y sus aplicaciones, Tesis de Docto- rado, DEPFI-Universidad Nacional Autónoma de México. Ciudad Universitaria. México.1991

7. Hansen P., The steepest Ascent Mildest Des- cendent Heuristic for Combinatorial Progran- ming. Congress on Numerical Methods in Com- binatorial Optimization, Capri, Italia, 1986.

8. Hilera José y Martinez Victor. Redes Neumna- les Artificiales. Fundamentos, modelos y apli- caciones. Addison-Wesley Iberoamericana, Es- paña, 1995, p.9,45-68.

reuista/soluciones/Nf ‘i/CoelloZ.html

10. Koza, J,R., Genetic Programming of Computer.$ by Means of Natural Seletion. The MIT Press, 1992, p. 819

11. Laguna M., Barnes J. W. and Glover F., Ta- bu Search for a Single Machine Scheduling Pm- blem. Technical report Ijuly), Advanced Know- ledge Systems Group of U. s., West Advanced Technologies, 1991.

12. Pérez S., De los Cobos S., Ordorica M. y Gu- tiérrez A,. Métodos heun’sticos de optimización en la gran industria nacional. Reporte de inves- tigación, de CBI, UAM-Iztapalapa, 1996.

9. http://www.fciencias.unam.mz/

16 - ContactoS S1 5-16 (1999)

13. Ponte de M i Sentí, E., Algoritmos Genetic03 y su aplicnción a pmblemac de ~ecuenciación. Tesis Doctoral, instituto de Cibernética Ma- temática y Física, Centro de inteligencia Artifi- cial, La Habana Cuba, 1997.