METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor...

17
METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOS 1,2 METAHEURISTICS AND SOLVING COMPLEX PROBLEMS Carlos Eduardo Maldonado 3,4 RESUMEN No todos los problemas son complejos. Las metaheurísticas son herramientas adecuadas para la resolución de problemas complejos, lo cual implica, de entrada, poder identi- car la naturaleza de los mismos. Este artículo presenta y discute las metaheurísticas como una de las metodologías especí cas en el estudio de los fenómenos de complejidad creciente y deende la idea de que su función es la de resolver problemas complejos. Para ello se recorren cuatro pasos, así: en primer lugar, se identi ca la naturaleza de los problemas, en segundo término, se elabora una presentación sumaria de las metaheurís- ticas; posteriormente, se introduce una visión de los temas de optimización; nalmente, se discute la teoría de la complejidad computacional con la intención de precisar que son las ciencias de la complejidad. Al nal se extraen algunas conclusiones. Palabras clave: Ciencias de la complejidad, método, metodología, heurísticas, optimización, toma de decisiones. ABSTRACT Not every problem is complex. Metaheuristics stand out as the adequate rods for solving complex problems. is entails, from the outset, the capacity to identify the very nature of such problems. is paper presents and discusses metaheuristics as specic methodologies in the study of increasingly complex phenomena, and claims that the function of metaheu- ristics consists in solving complex problems. In order to do that, four steps are followed, thus: rstly the very nature of complex problems are identied; secondly, a general view of metaheuristics is set out; thirdly, a view of optimization is introduced; and fourthly, the theory of computational complexity is discussed aiming at clarifying furthermore what the sciences of complexity are all about. At the end some conclusions are drawn. Key Words: Sciences of complexity, method, methodology, heuristics, optimization, decision making. 1 Recibido: 16 de mayo de 2016. Aceptado: 20 de junio de 2016. 2 Este artículo se debe citar así: Maldonado, Carlos E. “Metaheuristicas y resolución de problemas complejos”. Rev. Colomb. Filos. Cienc. 16.33 (2016): 169-185. 3 Profesor Titular de la Facultad de Ciencia Política y Gobierno de la Universidad del Rosario. Correo electrónico: [email protected] 4 Bogotá (Colombia).

Transcript of METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor...

Page 1: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

Maldonado, Carlos Eduardo

METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOS1,2

METAHEURISTICS AND SOLVING COMPLEX PROBLEMS

Carlos Eduardo Maldonado3,4

RESUMEN

No todos los problemas son complejos. Las metaheurísticas son herramientas adecuadas para la resolución de problemas complejos, lo cual implica, de entrada, poder identi-ficar la naturaleza de los mismos. Este artículo presenta y discute las metaheurísticas como una de las metodologías específicas en el estudio de los fenómenos de complejidad creciente y defiende la idea de que su función es la de resolver problemas complejos. Para ello se recorren cuatro pasos, así: en primer lugar, se identifica la naturaleza de los problemas, en segundo término, se elabora una presentación sumaria de las metaheurís-ticas; posteriormente, se introduce una visión de los temas de optimización; finalmente, se discute la teoría de la complejidad computacional con la intención de precisar que son las ciencias de la complejidad. Al final se extraen algunas conclusiones.

Palabras clave: Ciencias de la complejidad, método, metodología, heurísticas, optimización, toma de decisiones.

ABSTRACT

Not every problem is complex. Metaheuristics stand out as the adequate rods for solving complex problems. This entails, from the outset, the capacity to identify the very nature of such problems. This paper presents and discusses metaheuristics as specific methodologies in the study of increasingly complex phenomena, and claims that the function of metaheu-ristics consists in solving complex problems. In order to do that, four steps are followed, thus: firstly the very nature of complex problems are identified; secondly, a general view of metaheuristics is set out; thirdly, a view of optimization is introduced; and fourthly, the theory of computational complexity is discussed aiming at clarifying furthermore what the sciences of complexity are all about. At the end some conclusions are drawn.

Key Words: Sciences of complexity, method, methodology, heuristics, optimization, decision making.

1 Recibido: 16 de mayo de 2016. Aceptado: 20 de junio de 2016.2 Este artículo se debe citar así: Maldonado, Carlos E. “Metaheuristicas y resolución de problemas complejos”.

Rev. Colomb. Filos. Cienc. 16.33 (2016): 169-185.3 Profesor Titular de la Facultad de Ciencia Política y Gobierno de la Universidad del Rosario. Correo

electrónico: [email protected] Bogotá (Colombia).

Page 2: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

170 Revista Colombiana de Filosofía de la Ciencia 16.33 (2016 julio-diciembre): 169-185

Maldonado, Carlos Eduardo

1. INTRODUCCIÓN

Digamos, a título de discusión, que si bien el pensamiento complejo (esto es, Morin y los morinianos) dispone de El método –a saber, la obra principal de E. Morin compuesta por seis libros con el mismo título pero con dife-rente subtítulo cada uno–, las ciencias de la complejidad se componen de y articulan, en contraste, a la vez, en un pluralismo metodológico. Más exacta-mente, en ciencias de la complejidad no existe un único (o principal) método sino, mejor aún, una diversidad de metodologías, acordes todas con los desa-rrollos, teóricos y prácticos, de la investigación de punta en el mundo. El problema de “el método” en ciencias de la complejidad no puede ser resuelto sin, entre otras cosas (Maldonado 2011), atravesar por, y elucidar, el sentido de las metaheurísticas.Pues bien, las metaheurísticas constituyen uno de los conjuntos de las metodologías en el trabajo y la investigación con fenómenos, sistemas y comportamientos caracterizados por no-linealidad, autoorganización, comple-jidad creciente, emergencia y otras propiedades semejantes y conocidas.Este artículo se propone presentar y discutir las metaheurísticas tomando como hilo conductor un motivo serio que habitualmente pasa desapercibido por una buena parte de la comunidad de complejólogos y de expertos de temas como la metodología de la investigación científica, a saber: distinguir qué clase de problemas son complejos –en el sentido técnico de la palabra- y cuáles no. Sobre la base de este hilo conductor, se trata aquí de trabajar sumariamente las relaciones de diferencia entre la heurística en general y las metaheurísticas, para lo cual el estudio de los temas y problemas de optimiza-ción se hace indispensable.Las ciencias de la complejidad son ciencia de punta, cuyo método, como gustaba decir a R. García (2006) es la interdisciplinariedad. Solo que, en rigor, se trata de una expresión genérica y bien intencionada pero de escaso valor metodológico y científico. Los temas y problemas de metaheurísticas hacen referencia directamente a los temas y problemas relativos a optimización.

2. LA NATURALEZA DE LOS PROBLEMAS COMPLEJOS

La heurística, en el sentido corriente actual de la palabra, fue introducida por I. Lakatos en el contexto de la discusión entre Kuhn y Popper acerca de los criterios de demarcación de la ciencia (Stadler 2010) –discusión en la que el mismo Lakatos participa con argumentos propios y originales logrando

Page 3: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

171

Metaheurísticas y resolución de problemas complejos

distanciarse de sus dos amigos y colegas–. Hay que decir que el concepto mismo de “criterios de demarcación” es acuñado genéricamente por la Escuela de Viena, como un esfuerzo de distinción entre el idealismo neokantiano, el idealismo neohegeliano y los neotomismos de la época y la ciencia. Esto es, de manera puntual, se trata de distinguir a la ciencia de la metafísica. Las conse-cuencias subsiguientes de ese trabajo son conocidas en la historia de la ciencia y la filosofía de la ciencia (Reisch 2009).Específicamente, el concepto de heurística aparece en el contexto de la diferen-ciación entre los “programas de investigación científicos” y los “programas de investigación metafísicos”. Es a Lakatos a quien debemos, de manera frontal, el reconocimiento de que la ciencia trata con problemas, y que lo propio de la investigación científica consiste en desarrollar eso: unos criterios de iden-tificación y solución de un problema dado. Eso exactamente es la heurística (Michalewicz & Fogel 2000).Así, la noción de “problema” viene a remplazar, de manera radical, a la concep-ción clásica según la cual la ciencia se caracterizaba por que tenía “objetos”, una expresión que hoy en día resulta arcaica y equivocada. En otras palabras, debe quedar en claro que la ciencia actual ya no se define por “objetos”, sino por los problemas de que se ocupa.Como quiera que sea, dicho en término clásico, puede decirse que lo propio de la filosofía consistió siempre en formular preguntas y problemas. Por ejemplo: “¿Qué es el hombre?”, “¿de dónde venimos?”, “¿hacia dónde vamos?”, “¿qué es la libertad?”, y muchos otros semejantes. Sin embargo, cuando un problema: a) tiene una solución, o bien: b) puede tener una solución, esa solución no es filosófica; es, además y fundamentalmente, científica. De esta suerte, lo propio de la ciencia consiste en resolver problemas.Este esquema tradicional ha sufrido con el tiempo numerosas y profundas transformaciones. Quizás la más importante es el hecho de que, muy recien-temente, la filosofía ha aprendido a responder preguntas, y la ciencia, a su vez, ha aprendido a concebir problemas – adicionalmente. De hecho, sin lugar a dudas, los más apasionantes, los más importantes, los más difíciles problemas hoy en día son esencialmente formulados por científicos que tienen un espí-ritu o una sensibilidad filosófica.En rigor, las metaheurísticas nacen en el marco del desarrollo de las cien-cias de la computación, y muy específicamente en el estudio de problemas de optimización (Doerner et al. 2007). Por consiguiente, las matemáticas aplicadas constituyen aquí el basamento de las metaheurísticas y el hilo conductor de las mismas son los algoritmos – justamente en la resolución

Page 4: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

172 Revista Colombiana de Filosofía de la Ciencia 16.33 (2016 julio-diciembre): 169-185

Maldonado, Carlos Eduardo

de problemas (Maniezzo et al. 2009). Desde un punto de vista un poco más técnico, las metaheurísticas constituyen el ADN de la teoría computacional de la complejidad.Ahora bien, la teoría computacional de la complejidad constituye una de las ramas de la teoría de la computación consistente en estudiar e identificar los problemas computacionales de acuerdo con su dificultad. Históricamente, quizás el primero y más importante de los problemas computacionales –o de optimización- es el famoso problema del vendedor viajero, formulado origi-nariamente hacia los años 1930. El núcleo mitocondrial, si cabe la expresión, de todos los problemas teóricos de la computación pivotan en torno a la capa-cidad computacional de la máquina de Turing (TM), y en términos lógicos, alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice que es complejo en correspondencia con el tiempo necesario de computación del mismo o de su resolución, o bien, igualmente, según la longitud de un lenguaje computacional –esto es, la expresividad del lenguaje- para formularlo y resolverlo.En otras palabras, la complejidad de un problema se corresponde con la complejidad computacional del mismo. Así las cosas, en la base de las meta-heurísticas se encuentra lo que podemos concebir quizás como la columna vertebral de los trabajos sobre complejidad, a saber: los problemas P versus NP (Maldonado 2013).

3. UNA PRIMERA VISIÓN DE LAS METAHEURÍSTICAS

Mientras que la heurística –un concepto desarrollado originariamente, en tiempos recientes, por I. Lakatos–, hace referencia a la búsqueda de una solu-ción a un problema en términos exactos, las metaheurísticas no trabajan con un problema y la búsqueda de su solución. Por el contrario, trabajan con conjuntos de problemas en la búsqueda de espacios de solución. Pero, adicional-mente, desplazan la búsqueda de soluciones exactas o precisas, para enfocarse en soluciones aproximadas que, paradójicamente, por lo menos a simple punto de vista, son más precisas y exactas que las primeras.Las metaheurísticas tienen la ventaja de ser exploratorias y abiertas, no restrictivas ni axiomáticas (Chen et al. 2015). Esta cualidad representa una alternativa particularmente apropiada para buscar la convergencia entre la abstracción, los modelos construidos de futuro y los planes centrados en la lógica tradicional. Pero con ello, al mismo tiempo y de forma creciente, en el trabajo con lógicas no-clásicas.

Page 5: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

173

Metaheurísticas y resolución de problemas complejos

Las metaheurísticas operan mediante algoritmos, salvo que no son algoritmos de orden común, son especiales; básicamente porque no se rigen por un patrón predictivo, ni causal ni tampoco organizado; más bien es aleatorio: el algoritmo adquiere su “forma óptima” a través de itinerancias o pruebas que aproximan la solución, por ejemplo mediante métodos de búsqueda basados en gradientes (Kuo & Zulvia 2015). Los algoritmos más conocidos en meta-heurística son, los algoritmos genéticos, la búsqueda tabú, ACO (algoritmo de colonia de hormigas, por sus siglas en ingles), recocido simulado (simulated annealing) PSO (partículas de optimización de enjambre, por sus siglas en ingles), y en forma común sirven para el mismo propósito general, tratar de recorrer el espacio de soluciones sin quedar “atrapados” en una zona.Los algoritmos metaheurísticos, se basan en la combinación de algoritmos heurísticos con otro tipo de técnicas; para entenderlo mejor, es necesario hacer mención de los algoritmos heurísticos. De forma general, “heurística” deriva del griego heuriskein, que significa “encontrar” o “descubrir”, y en un esquema tradi-cional binario o de árboles de decisión ofrece solo uno o ambos objetivos, que no garantizan la solución óptima pero sí buenas soluciones; al igual que el método de búsqueda local, llega a ser una búsqueda ciega, es predictivo, se mueve hacia la vecindad; ahora bien, en esta búsqueda, se corre el riesgo de quedar atrapados en óptimos locales, razón por la cual se consideran mejores los algoritmos metaheu-rísticos; siendo estos menos “lógicos”, resultan a la postre más efectivos.A continuación se presentan algunos de los algoritmos más comunes en meta-heurísticas. Sin embargo, el objetivo de este texto no es el de ser exhaustivos en esta presentación sino el de mostrar el aire, el carácter o las actitudes gene-rales que implican estas técnicas de cara al estudio de problemas complejos. En otras palabras, se trata de señalar en qué consiste pensar, de cara a los problemas complejos, de manera compleja, justamente.

3.1. Algoritmo búsqueda tabú, con memoria

Desarrollado originariamente a partir de 1987 por F. Glover (1987), se basa en la aplicación de estrategias basadas en procedimientos de aprendizaje, mediante el uso de memoria selectiva y la búsqueda inteligente; la primera, se enfoca en recordar únicamente las características importantes del camino, como su evolución y estructura; la segunda, es una exploración inteligente, basada en la información recogida durante la búsqueda. En la práctica esto funciona mediante la inclusión de la lista tabú (por ejemplo evitando repetir las soluciones ya probadas), en un programa de computador que realiza la búsqueda de las soluciones optimas, alejándose de los óptimos locales.

Page 6: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

174 Revista Colombiana de Filosofía de la Ciencia 16.33 (2016 julio-diciembre): 169-185

Maldonado, Carlos Eduardo

Cada ciclo de búsqueda, es una iteración, que por supuesto, inicia de una probable solución que parece óptima; por ejemplo, reducir el número de errores de puntería de un arma automatizada de precisión, que requiere una calibración especial, o apuntar una antena satelital; incluso, reducir los costos de operación en un proceso industrial, como fabricación de baterías de radio o municiones. Siempre habrá un valor proporcionado por los parámetros estándar, considerado como óptimo. A partir de estos valores, se inician las iteraciones, mediante el algoritmo tabú, que evitará encontrar soluciones del mismo valor o de valores mayores.

3.2. Algoritmo genético

Desarrollados originariamente por J. Holland (1995), los algoritmos genéticos son algoritmos con la capacidad de aprender, que constituye el rasgo más determinante en la evolución de cualquier sistema vivo o que exhiba vida.A diferencia del algoritmo tabú, el algoritmo genético no es un método de búsqueda local. Esta técnica de búsqueda usa una población de soluciones que son manipuladas independientemente. Este algoritmo fue construido con base en los principios de la teoría de la evolución de Ch. Darwin. Desde su intro-ducción, esta técnica de búsqueda ha sido usada en una variedad de disciplinas y hay investigaciones sustanciales para identificar su aplicación práctica. “Las poblaciones”, son listas que surgen del principio de la supervivencia del más capaz; cuando el algoritmo se inicia, una población es creada aleatoriamente; usando la población existente, una nueva generación es creada usando opera-dores genéticos, tales como, cruce, mutación y reproducción. Idealmente, a medida que el algoritmo progresa, las soluciones van mejorando y las soluciones óptimas, pueden alcanzarse a lo largo del tiempo (cf. Connor & Shah 2014).El nombre de algoritmo genético, no quiere decir que incorpore, células o ADN, como podría pensarse, sino, lo que significa es que se basa en el lenguaje biológico, y más específicamente evolutivo, en sus conceptos y lógicas, para emular su comportamiento, salvo que en un entorno distinto: el virtual.

3.3. Algoritmo GRASP. Procedimientos de búsqueda miopes, aleatorizados y adaptativos

Creado por Feo, T y M, Resende en 1995 (Feo & Resende 1995), como una heurística probabilística para un grupo de problemas computacionales cubiertos, el algoritmo GRASP se basa en la premisa de que soluciones iniciales diversas y de buena calidad juegan un papel importante en el éxito de métodos locales de búsqueda. Cada iteración consta de dos fases: la cons-

Page 7: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

175

Metaheurísticas y resolución de problemas complejos

trucción de una solución factible y la búsqueda local para localización de un mínimo local en el entorno de la solución construida.A este algoritmo corresponde una secuencia, así: primero se obtiene una solu-ción y el algoritmo puede correr entonces a la fase dos, que es aproximada, rastrea un espacio local de configuración, aplica en lógica, diseño de redes, horarios, entre otros y apunta entonces a una solución.

3.4. Algoritmo Scatter Search. Búsqueda dispersa

Diseñado por Glover en 1977 (Glover 1977), empezó a usarse en la década de los 90 del siglo xx. Se trata de un método evolutivo, al igual que GRASP, que trabaja con poblaciones de solución mediante la exploración sistemática sobre una serie de buenas soluciones (conjunto de referencia), combinación de dos o más soluciones del conjunto de referencia, elección de pesos apropiados de la combinación; combinaciones convexas y no convexas, distribución “dispersa” de los puntos. Se diferencia de los algoritmos genéticos, básicamente porque se trabaja con un conjunto limitado de soluciones, y se aplica un proceso de mejora a las soluciones obtenidas mediante combinaciones.Pese al lenguaje ciertamente técnico, en realidad las metaheurísticas y sus algoritmos pueden ser utilizados e implementados por personas sin una cualificación matemática de alto nivel, y no implican, en absoluto un reduc-cionismo de tipo matemático o computacional en el trabajo con complejidad (como una mirada externa o acaso superficial pudiera creerlo). Al respecto, vale recabar sencillamente que el computador y la computación son herra-mientas culturales. Asimismo, en la mayoría de los casos, las metaheurísticas aplicadas a problemas sociales, políticos y organizativos aportan conceptos, lógicas, analogías y enfoques que permiten ser empleadas a la medida, según la naturaleza y circunstancias propias del problema. Esto quiere decir que, no en todos los casos, será necesario o posible aplicar o emplear un algoritmo a un problema general o específico.

4. OPTIMIZACIÓN: UNA VISIÓN SUMARIA

Los temas y problemas de optimización son fundamentales en ciencia como en la vida cotidiana, y conciernen por igual a científicos, ingenieros, empre-sarios, estrategas, tomadores de decisión en cualquier ámbito y momento, por ejemplo. El proceso puede ser sintetizado, grosso modo, de la siguiente manera:

1. Se formula o identifica un problema;

Page 8: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

176 Revista Colombiana de Filosofía de la Ciencia 16.33 (2016 julio-diciembre): 169-185

Maldonado, Carlos Eduardo

2. Se construye un modelo para el problema. Este modelo puede ser matemático, lógico, o computacional;

3. Se optimiza el problema, de suerte que se busca una “buena” solución;

4. Se implementa la solución

Pues bien, un problema de optimización consiste en hallar las soluciones facti-bles o posibles a un problema y las funciones de las soluciones. Así, el objetivo fundamental consiste en encontrar el óptimo global de las soluciones. De manera general, los modelos de optimización incorporan: modelos de programación matemática, optimización combinatoria, modelos de restricción (o constric-tivos), y modelos analíticos. Los primeros se dividen en programación continua, íntegra y mixta, y se articulan como modelos lineales o no-lineales (Talbi 2009).La dificultad radica en que numerosos problemas de optimización son no-tratables. Ello implica la distinción entre problemas decidibles y problemas indecidibles – un tema que se remonta a Hilbert, Turing y Gödel. Un problema se dice que es decidible si puede ser compresible, y por el contrario, se dice que es indecidible cuando no existe ningún algoritmo de solución dados recursos, tiempo y espacio ilimitados. De manera “práctica”, el foco de la atención se ha concentrado tradicionalmente en la complejidad de los problemas decidibles.Digamos, de manera puntual que la complejidad de un problema es equiva-lente a la complejidad del mejor algoritmo para resolver el problema. Así las cosas, un problema se dice que es tratable –esto es, fácil–, si existe (o se puede crear) un algoritmo en un tiempo polinomial. Por el contrario, un problema se dice que es intratable –o sea, difícil–, si no existe (y no se puede desarrollar) un algoritmo en un tiempo polinomial que pueda resolver el problema. En una palabra: no todos los problemas son complejos (y por derivación, no todos los sistemas y no todas las cosas son complejas). Pues bien, un tiempo poli-nomial es fácilmente comprnesible a través, por ejemplo, de los cronogramas; es el tiempo que se entiende y gestiona en términos de horas, días, semanas, meses y años, de tal suerte que se busca una solución al problema dividiéndolo en unidades de tiempo “real”.

5. LA COMPLEJIDAD DE LA RESOLUCIÓN DE PROBLEMAS

La complejidad de la resolución de un problema ha sufrido un cambio drástico gracias a los desarrollos de la computación, y concomitante con los trabajos en torno a optimización, gracias también a los problemas de complejidad combi-natoria y los más recientes desarrollos tanto en matemáticas como en lógica.

Page 9: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

177

Metaheurísticas y resolución de problemas complejos

Esquema 1: giro en la complejidad de la resolución de un problema

Fuente: Maldonado y Gómez (2011b)Como se aprecia, la distinción fundamental entre la ciencia clásica y las cien-cias de la complejidad estriba en el hecho de que anteriormente se buscaban soluciones precisas a los problemas, con todo y el reconocimiento de que el o los modelos tenían o podrían tener falencias y ser solamente aproximados. Por el contrario, en el marco del trabajo con fenómenos y sistemas de complejidad creciente se desarrollan modelos precisos y se apunta a soluciones aproxi-madas, las cuales, paradójicamente son mucho más exactas o viables que los que la ciencia y los enfoques normales pretendían o podían.Ahora bien, se impone una observación puntual. Tanto en la expresión “ciencia e ingeniería tradicionales”, como “ciencias de la complejidad e ingeniería de sistemas complejos” es preciso incluir todos los campos de trabajo e investi-gación, en el sentido más amplio e incluyente que trabajan o se encuadran en los planos correspondientes; esto es, los estudios militares y políticos, todos los trabajos sobre táctica y estrategia, la administración, y la mayoría de las ciencias sociales, pero también los temas relativos a la educación, aspectos económicos, y dimensiones de gestión en cualquier acepción de la palabra. Ahora, con respecto a la ingeniería de sistemas complejos véase (Braha et al. 2006; Maldonado & Gómez 2011a).

Ciencia e ingeniería

Tradicionales Precisa

Problema à Modelo aproximado à Solución

Precisa

Ciencias de la complejidad e ingeniería de sistemas

Complejos

Problema à Modelo aproximado à Solución

Aproximadas

Page 10: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

178 Revista Colombiana de Filosofía de la Ciencia 16.33 (2016 julio-diciembre): 169-185

Maldonado, Carlos Eduardo

Pues bien, existen, genéricamente hablando, dos clases de metaheurísticas: las orientadas a soluciones singulares, y aquellas dirigidas a conjuntos de soluciones. En este segundo caso se habla, en propiedad, de metaheurísticas basadas en poblaciones.

Estas dos clases se subdividen en las metaheurísticas paralelas (Alba 2005) y distribuidas, y las metaheurísticas híbridas (Blum et al. 2008). Adicional-mente, se encuentran las hiperheurísticas, y en estrecha relación con ellas las metaheurísticas multinivel y las autodaptativas (Cotta 2008). Asimismo, muy recientemente, se ha desarrollado también metaheurísticas híbridas basadas en descomposición (Raidl 2015), además de la metaheurística basada en gradientes. Digámoslo de manera franca: las metaheurísticas constituyen un campo vívido de investigación cuyo nutriente primero consiste justamente en la comprensión de lo que es propiamente un problema complejo y en los esfuerzos de solución de esta clase de problemas. Este campo vívido es investigación en proceso.

Como quiera que sea, la idea de base no es difícil: se trata de múltiples herra-mientas metodológicas de abordaje y solución de problemas complejos, y cada cual se usa en función del problema o conjunto de problemas que interesen al investigador, al científico, o al tomador de decisiones, por ejemplo.

Si bien podría hacerse una elucidación puntual de en qué consiste cada una de la metaheurísticas mencionadas, lo importante aquí es atender al hecho de que existe, manifiestamente, un pluralismo metodológico en cuanto a las metaheurísticas. Y que este pluralismo constituye una de las fortalezas de las ciencias de la complejidad conjuntamente con la teoría de la complejidad computacional. Muy frecuentemente, los problemas de optimización son problemas complejos (Alba et al. 2009).

Sin embargo, son posibles otros modos de clasificación de las metaheurís-ticas. Así, por ejemplo, si se inspiran en la naturaleza o no (Lewis 2009) –y más específicamente, si son bio-inspirados, o no–; según si hacen uso de memoria o no; de acuerdo a si son deterministas o estocásticos, o si son iterativos o ambiciosos.

El esquema 2 ilustra el mapa general de la metaheurísticas:

Page 11: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

179

Metaheurísticas y resolución de problemas complejos

Esquema 2: mapa de las metaheurísticas

Fuente: Maldonado y Gómez (2011b)De manera general, las metaheurísticas implican estrechamente campos de trabajo e investigación tales como la inteligencia computacional, los temas relativos a optimización numérica, algoritmos evolutivos, computación evolu-tiva, y en su horizonte, los sistemas y problemas no-algorítmicos. Maldonado y Gómez (2014) denominan a esta última clase como hypercomputación, y el modelo de base es el estudio de los sistemas vivos; más exactamente, el estudio de la forma como los sistemas vivos procesan información; esto es, resuelven problemas.

Métodos Clásicos

Heurísticas

Hiper heurísticas

Aprendizaje de máquina

Computación no convencional

Metaehurísticas híbridas

Configuración

Instandar Módulos

Problema estructural

Afinar Párametros

Problema paramétrico

Personalización de metaheurísticas

Metaehurísticas multinivel

Metaehurísticas auto-adaptivas

Afinamiento de metaehurísticas

Metaehurísticas paralelas y distribuidas

Metaehurísticas

Page 12: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

180 Revista Colombiana de Filosofía de la Ciencia 16.33 (2016 julio-diciembre): 169-185

Maldonado, Carlos Eduardo

6. LA TEORÍA COMPUTACIONAL DE LA COMPLEJIDAD

Ahora bien, debe quedar en claro que en el trabajo con metaheurísticas el tema de base son algoritmos aproximados, no algoritmos exactos. Ello permite no solamente hablar sino incluso trabajar con problemas de optimización en condiciones de incertidumbre; así por ejemplo, en la elaboración de mapas, en problemas de temporalidad, o de rutas. Todos son temas específicos que señalan en una dirección más puntual hacia uno de los sentidos de las cien-cias de la complejidad, lo cual, por decirlo menos, permite comprender que la complejidad es más que una epistemología y que una jerga (que se expresa en términos como emergencia, no-linealidad, autoorganización, y otros). Las ciencias de la complejidad son ciencia en sentido estricto (strenge Wissenshaft).Pues bien, la forma de considerar los problemas complejos es mediante la clasificación de las clases de complejidad de los problemas de decisión. La clasificación más general son los problemas P versus NP (Fortnow 2013). El esquema 3 presenta esta clasificación:

Esquema 3: Clases de problemas P y NP

PROBLEMAS NP

PROBLEMAS P

NP - COMPLETO

Fuente: http://3.bp.blogspot.com/-jS3ISuY5feA/Th4br02PiuI/AAAAAA-AAAJ4/wV_O88Fm8is/s1600/P_NP_y_NP-completo.png

Page 13: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

181

Metaheurísticas y resolución de problemas complejos

Pero una presentación más completa es la que corresponde al esquema 4:

Esquema 4: Visión compleja de las clases de problemas complejos

Fuente: http://www.cse.psu.edu/~sxr48/cmpsc464/ Complexity-classes-diagram.jpgLa explicación del esquema 4, sin embargo, debe quedar aquí de lado por su carácter técnico y por el tema mismo de este artículo, aunque otras represen-taciones son posibles y se emplean en la bibliografía sobre los problemas P versus NP. El anterior esquema sencillamente tiene la función de señalar en la dirección de la complejización de lo que es muy específicamente un problema complejo, y que merece un espacio propio aparte (este constituye el objeto de otro trabajo en el que me ocupo actualmente, y el eje de una de las investiga-ciones que adelanto en la actualidad).Como quiera que sea, las metaheurísticas (SA, GA, PSO, etc.) se emplean generalmente para resolver grandes problemas de manera aproximada, o bien próximos o cercanos a una optimalidad (Alba et al. 2009). Sin embargo, es preciso señalar que la eficiencia de las metaheurísticas ha sido calificada por lo general como impráctica para abordar proyectos del mundo real, incluso algunas reglas heurísticas incorporadas, especialmente para problemas combi-natorios de gran escala.

Page 14: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

182 Revista Colombiana de Filosofía de la Ciencia 16.33 (2016 julio-diciembre): 169-185

Maldonado, Carlos Eduardo

7. CONCLUSIONES

Los tratamientos, abordajes y, por así decirlo, los cortes sobre las metaheurís-ticas son variadas y ricas en la bibliografía sobre el tema. Aquí, sencillamente he querido tomar como hilo conductor el que me parece que es el núcleo central de todos los tratamientos, a saber: la distinción de problemas en complejos y no complejos, y entonces el trabajo con los primeros, que es lo que verdadera-mente interesa a la comunidad de complejólogos. Y más sensiblemente, a los más acuciantes retos, problemas y desafíos del mundo actual.Para decirlo de manera franca y directa, a los complejólogos no nos interesan los conjuntos de problemas que no son complejos. Para ello existen numerosas técnicas, métodos y aproximaciones exitosas, muchas de ellas lineales y maxi-mizadoras. Así las cosas, la base primera de trabajo en complejidad consiste en identificar si un problema es o no complejo, pues como queda dicho, no todos los problemas lo son. Es más, y de manera muy exacta, la gran mayoría de los problemas no son complejos. Y sin embargo, los más cruciales o sensibles de todos los problemas son, sin la menor duda, los complejos; esto es aquellos que pueden ser llamados clara y distintamente como problemas complejos.Esta es, sin lugar a dudas, la distinción más radical de todas entre el llamado “pensamiento complejo” y las ciencias de la complejidad; se trata del criterio de demarcación según el cual una teoría que explica todas las cosas no explica nada. En otras palabras, las ciencias de la complejidad no se ocupan ni de problemas simples, ni tampoco complicados. Y cuando se ocupa de problemas complejos dispone de un pluralismo metodológico. Una faceta de este plura-lismo estudiado en este artículo son las metaheurísticas.Desde luego que existen aspectos bastante más técnicos –conceptual, mate-mática, computacionalmente hablando, por ejemplo–, en el estudio de las metaheurísticas. El propósito de este artículo ha consistido en mostrar de qué manera se trabaja con problemas complejos; o, lo que es equivalente, ha sido el de señalar en la dirección propia de la resolución de problemas complejos.Como se sigue de una mirada reflexiva, ya dependería de cada problema el empleo de una metaheurística determinada, o de determinadas técnicas. Así, por ejemplo, en función de las dimensiones del problema, de la identificación de puntos y estados críticos, de los recursos disponibles, del tiempo con que se cuenta, y demás.Quedan abiertos varios problemas que más o menos de manera directa podrían interpelar a los investigadores. Así, por ejemplo, ¿existe alguna meto-dología o marco que facilite resolver de manera aproximada grandes problemas

Page 15: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

183

Metaheurísticas y resolución de problemas complejos

NP-duros? ¿Podemos hallar todos los puntos críticos de un problema y si es así cómo? ¿Cómo medir la distancia mínima y promedio entre óptimos locales en un espacio de búsqueda continuo? Si disponemos de la información nece-saria o pertinente, podemos entonces hacer algunas cosas interesantes a fin de explotar ese conocimiento con vistas a mejorar el desempeño de algunas técnicas de investigación o de búsqueda. Los métodos basados en hacer clus-ters para medir la distancia mínima o promedio entre óptimos locales es altamente inconsistente, y esto tiene un gran efecto sobre el desempeño global de nuestros métodos. Y otra manera consiste en la elaboración de mapas –por ejemplo mapas cuadráticos–, que permiten manifiestamente una resolución de problemas en términos dinámicos y procesos de tomas de decisión en-proceso. En fin, se trata de un conjunto de problemas, retos, desafíos y dimensiones frente a los cuales la capacidad investigativa de los científicos, por ejemplo, resulta determinante.Al fin y al cabo, asistimos a un mundo y época en la que los riesgos están globalmente interrelacionados. Un motivo serio para la complejidad; la complejidad y sus métodos (Helbing 2013).Finalmente, hay que tener en cuenta un hecho elemental en ciencia e investi-gación: es el problema el que determina el método – que debemos o podemos emplear–. Y no al revés. Pues bien, esto aplica también para el caso de las metaheurísticas. O de los demás métodos y metodologías en ciencias de la complejidad.Al fin y al cabo vivimos en un mundo alta y crecientemente complejo, en tiempos y con dinámicas de altas fluctuaciones y turbulencias, todo lo cual demanda comprender muy bien, identificar adecuadamente los tipos de problemas que emergen. Después de todo, todo el sentido de la ciencia no es otro que el de la formulación de problemas y la búsqueda de solución de los mismos. Pues bien, las ciencias de la complejidad contribuyen a este panorama de forma activa mediante un conjunto de herramientas que les son propias y que ayudan, dicho en passant, a demarcar a la ciencia general o normal de las ciencias de punta que son las ciencias de la complejidad. Digámoslo de manera sucinta: no es suficiente con identificar un problema. Es necesario, además, establecer si se trata de un problema complejo o no. Si el problema es complejo, nos encontramos entonces de frente con temas y problemas de optimización, y con ellos, entonces, con la importancia y el significado de las metaheurísticas. Un área en pleno desarrollo. Y en el horizonte de los problemas de optimi-zación, con el tema mismo de la teoría de la complejidad computacional que puede ser llamada como la columna vertebral de todos los estudios y trabajos sobre complejidad.

Page 16: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

184 Revista Colombiana de Filosofía de la Ciencia 16.33 (2016 julio-diciembre): 169-185

Maldonado, Carlos Eduardo

TRABAJOS CITADOS

Alba, E., (Ed.). Parallel Metaheuristics. A New Class of Algorithms. New Jersey: Wiley & Sons, 2005.

Alba, E., Blum, C., Isasi, P., León, C., Gómez, J. A. Optimization Techniques for Solving Complex Problems. New Jersey: Wiley & Sons, 2009.

Blum, C., Blesa, M. J., Blesa A., Sampels, M., (Eds.). Hybrid Metaheuristics: An Emerging Approach to Optimization. Berlin: Springer Verlag, 2008.

Braha, D., Minai, A. A., Bar-Yam, Y. Complex Engineered Systems. Science Meets Technology. Springer Verlag. 2006.

Chen, X., Kong, Y., Dand, L., Ye, X. “Exact and Metaheuristic Approaches for a Bi-Objective School Bus Scheduling Problem” PlosOne July 15 (2015): 1-20.

Connor, A. M., and Shah, A. “Resource allocation using metaheuristic Search” En Wyld, D. C., et al. (Eds.): CCSIT, SIPP, AISC, PDCTA, NLP, (2014): 353–364.

Cotta, C., Sevaux, M., Sörensen, K., (Eds.) Adaptive and Multilevel Metaheu-ristics. Springer Verlag, 2008.

Doerner, K., et al., (Eds.). Metaheuristics: Progress in Complex Systems Optimi-zation. Springer Verlag, 2007.

Doerner, K. F., Gendreau, M., Greistorfer, P., Gutjahr, W. J., Hartl, R. F., Reinmann, M., (Eds.). Metaheuristics. Progress in Complex Systems Optimi-zation. Springer Verlag, 2007.

Feo, T. A., & Resende, M. G. C. “Greedy randomized adaptive search prce-dures” Journal of Global Optimization, 6 (1995):109-133.

Fortnow, L. The Golden Ticket: P, NP, and the Search for the Impossible. Prin-ceton, NJ: Princeton University Press, 2013.

García, R. Sistemas complejos. Conceptos, métodos y fundamentación epistemoló-gica de la investigación interdisciplinaria. Barcelona: Gedisa, 2006.

Glover, F. “Tabu Search Methods in Artificial Intelligence and Operations Research” ORSA Artificial Intelligence Vol. 1, No. 2, 6 (1987).

Glover, F. “Heuristics for integer programming using surrogate constraints” Decision Sciences Vol. 8, issue 1, January (1977): 156-166.

Helbing, D. “Globally networked risks and how to respond” Nature Vol. 497, 2 de mayo (2013): 51-59.

Page 17: METAHEURÍSTICAS Y RESOLUCIÓN DE PROBLEMAS COMPLEJOScinfopec.com.mx/doc/cem-0024.pdf · alrededor de la tesis Church-Turing (ChT-thesis) (Syropoulos 2008). Así, un problema se dice

185

Metaheurísticas y resolución de problemas complejos

Holland, J. Hiddel Order. How Adaptation Builds Complexity. Perseus Books, 1995.

Kuo, R. J., Zulvia, F. E. “The gradient evolution algorithm: a new metaheu-ristic” Information Sciences Vol. 316 (20 septiembre) (2015): 246-265.

Lewis, A., Mostaghim, S., Randal, M., (Eds.) Biologically-Inspired Optimisa-tion Methods: Parallel Systems and Applications. Springer Verlag, 2009.

Maniezzo, V., Stützle, T., VoB, S. Metaheuristics: Hybridizing Metaheuristics and Mathematical Programming. Springer Verlag, 2009.

Maldonado, C. E. “Matemática aplicada y herramientas de la complejidad” En Londoño, G., Vera, J., Montealegre, M., (Eds.), Memorias del I Seminario de Matemática Aplicada. Neiva: Ed. Universidad Surcolombiana-Facultad de Ciencias Exactas y Naturales, 2011: 9-26.

_____.“Un problema fundamental de la investigación: los problemas P vs. NP” Revista Logos, Ciencia y Tecnología Vol. 4, No. 2, Enero-Junio (2013): 10-20.

Maldonado, C E., Gómez-Cruz, N. “The complexification of engineering” Complexity, Vol. 17, No. 4, (2011a): 8-15.

_____.El mundo de las ciencias de la complejidad. Bogotá: Ed. Universidad del Rosario, 2011b.

_____.“Biological Hypercomputation: A New Research Problem in Complexity Theory” Complexity (2014): DOI 10.1002/cplx.21535

Michalewicz, Z., Fogel, D. B. How to Solve It: Modern Heuristics. Springer Verlag, 2000.

Raidl, G. R. “Decomposition based hybrid metaheuristics” European Journal of Operational Research, Vol. 244, Issue 1, (July) (2015): 66-76.

Reisch, G. A. Cómo la Guerra fría transformó la filosofía de la ciencia. Hacia las heladas laderas de la lógica. Bernal: Universidad Nacional de Quilmes, 2009.

Stadler, F. El círculo de Viena. Empirismo lógico, ciencia, cultura y política. México, D. F.: F. C. E., 2010.

Syropoulos, A. Hypercomputation. Computing Beyond the Church-Turing Barrier. Springer Verlag, 2008.

Talbi, E.-G. Metaheuristics. From Deign to Implementation. Wily & Sons, 2009.