domingo, junio 10, 2007

Sistemas complejos (II). Aproximándonos a la solución.

(Tiempo de lectura: 2min20seg)


En ateriores entregas de esta apasionante saga… venga va, en serio, en el post anterior se habló de la complejidad de determinados sistemas y de la dificultad para modelarlos. Sin embargo hay técnicas que nos ayudan a extraer la descripción matemática de los sistemas complejos, o al menos emularla con un conjunto arreglos.

Estos sistemas son los llamados aproximadores universales, ¿qué es esto? Pues son unos aparatos matemáticos que nos ayudan a definir un sistema que a priori no es conocido o es demasiado complejo para modelar. Los principales son los sistemas borrosos, los sistemas neuronales y los algoritmos genéticos.

Los dos primeros han evolucionado juntos,.. de hecho, una vez obtenido un sistema borroso se puede pasar a una red neuronal y viceversa. La forma de ajustarlos es la misma, más o menos, trabajan a partir de aproximaciones recursivas… expliquemos esto.

Una red neuronal es capaz de tomar el comportamiento de algo, es como el primo tonto que no deja de imitarte y te saca de quicio, podemos colocar una red para aproximar cosas tan dispares como el comportamiento de la gente, por ejemplo al usar el canal de telefonía móvil o un sistema biológico, como una colonia de coral. Las redes neuronales fueron denominadas así por la creencia inicial de que el cerebro humano funciona así,… y a grandes rasgos, es parecido. Tienen un periodo inicial de entrenamiento, en el que las pobres dan más fallos que una escopeta de feria,… están un tiempo funcionando con un error que nosotros establecemos y al cabo de mucho tiempo… las pobres envejecen y vuelven a fallar. Hay que reiniciarlas… o matarlas, cruel ¿no?.

Las redes se componen de nodos y cada uno aporta su granito de arena al resultado final, puede ser mayor aportación o menor, si la red ve que tiene un error muy grande varía los nodos de la zona dónde hay un error grande subiendo o bajando su aportación y vuelve a evaluar. Como veis si somos capaces de dejar una red neuronal un tiempo entrenándose seremos capaces de tener un modelo que imita el sistema y puede predecir qué pasa.

Los sistemas borrosos se basan en las verdades a medias, en una respuesta a medias que pueden interpretar,.. son como las novias,.. te dicen un sí a medias, y luego tú evalúas… son usados para emular sistemas que no tienen franjas establecidas. La lógica borrosa no implica un sí o un no en las soluciones, sino que trabaja con porcentajes de partencia y compone una solución a partir de un conjunto de pertenencias.

Quedan los algoritmos genéticos. Son sistemas que evolucionan a partir de una solución obtenida aleatoriamente. Una vez evaluada se hace una selección natural de las mejores soluciones, esto es las mas aproximadas y las peores se desechan. Las seleccionadas son “entrecruzadas” entre sí… la idea es un tanto holocáustica,.. pero en este campo,.. y sólo en este, da buenos resultados. En la imágen se puede ver el diagrama de fase de un sistema con un algoritmo genético. Vemos como desde distintos puntos viaja a la situación de reposo (estable), la central.

Estos sistemas tienen problemas, no son tan bonitos como se pintan, pueden no converger hacia una solución y pueden ser un tanto lentos para aproximar un resultado. En sistemas complejos son buenos porque ese tiempo puede ser inferior a un análisis clásico del sistema. También son usados para sistemas simples cuándo no tenemos conocimiento de modelo físico.

Por último decir que en robótica y automática son a veces usados para sistemas de decisión en el primer caso y para imitar sistemas y controlarlos en el segundo caso. El límite por ahora es el procesamiento. Es un campo en el que se está investigando y no sabemos hasta dónde llegará,… imaginad en un futuro próximo una máquina que sea capaz de aprender día a día a cómo hacer mejor su trabajo, a sistemas de seguridad que aprendan cuál es el comportamiento de un posible intruso… las posibilidades son grandes, pero también los riesgos… un error puede hacer que la máquina aprenda de manera errónea y comience a divergir cada vez más… es como la vida misma, pero da mas miedo, es… un valle inexplicable.


Un saludo.

5 Comments:

Egon.Net dijo...

Muy interesante... Siempre había querido saber algo sobre el tema. ¿Habrá tercera parte?

Genesis dijo...

Gracias!, pues en principio no hay planeado nada, aunque se puede hacer otro, relacionado con las teorías del caos y de "el libre albedrío"...

En fin,.. a ver que dice la gente en los comentarios.

Un abrazo Ger!

Anónimo dijo...

Anda que no me peleé yo con los algoritmos genéticos en bioinformática, jajaja.

Parece simple, pero la cantidad de variaciones que se pueden tener en cuenta para conseguir un buen resultado es muy grande, a lo que dices de escoger siempre los mejores, las mas aproximadas, no siempre es bueno.

Siempre tenemos que tener en cuenta que esas mejores soluciones nos acerquen a una "buena" solución, pero metiendo un pequeño porcentaje de casos que no son mejores podemos conseguir otra mejor.

Por no hablar de meter mutaciones y demás que eso es un tema aparte, jeje.

Las redes neuronales las traté en Inteligencia Artificial y me parecieron también muy interesantes.

Luis Felipe dijo...

Genial macho, muy buenas las comparaciones de redes neuronales y sistemas borrosos con primos y novias, ayudan a entender cómo funcionan, pero de ahí a manejarse con estos trastos...

Genesis dijo...

Hidalgo, es cierto que no se puede encorsetar un algoritmo genético sólo a los valores de menor error, ello hace que llegue un punto en que no evolucione. Lo de las mutaciones es algo similar,.. produce diversidad y puede hacer converger más rápido,.. pero si abusamos de estos dos métodos podemos hacer que nuestro algoritmo no sea más que una búsqueda aleatoria de la solución. En cualquier caso no he usado nunca algoritmos genéticos, sólo conozco la teoría. He usado más los otros dos aproximadores... de hecho una de las pocas asignaturas que me quedan es de control borroso... :P

Luis,.. jeje, es buena comparación si, aunque es como tú dices,... jamás llegas a entender exactamente como funcionan estos jodidos trastos!