La lógica del ser humano es por mucho compleja y difícil de seguir, entendernos tan solo entre personas es algo que muchas veces no se puede conseguir. Tal es el hecho que las diferencias de raza, creencias, cultura y religión han creado una sociedad rica pero con tendencia a conflictos debido a la solución de ciertos problemas.
Para la computación siempre ha sido difícil describir esta lógica para poder ayudar a las personas. Desde sus inicios lenguajes como el binario, los lenguajes de programación, los intérpretes, los algoritmos en base computacional, entre muchos otros; han sido puestos a prueba a resolver un sin fin de problemas de los cuales el ser humano a veces se ha visto incapaz de solucionar por su propia cuenta. Ajustarnos a la computación hace muy cuadrado el límite de los problemas, más aún cuando estos involucran usuarios. La complejidad se dispara a tope cuando son cientos de miles los usuarios que interactuan.
Si además agregamos que el mundo contiene un sin fin de variables que nos son cuantificables a escala de una pequeña computadora, incluso de las más actuales, entonces nos vemos ante un universo que no comprendemos y que no podemos conquistar.
Para la computación siempre ha sido difícil describir esta lógica para poder ayudar a las personas. Desde sus inicios lenguajes como el binario, los lenguajes de programación, los intérpretes, los algoritmos en base computacional, entre muchos otros; han sido puestos a prueba a resolver un sin fin de problemas de los cuales el ser humano a veces se ha visto incapaz de solucionar por su propia cuenta. Ajustarnos a la computación hace muy cuadrado el límite de los problemas, más aún cuando estos involucran usuarios. La complejidad se dispara a tope cuando son cientos de miles los usuarios que interactuan.
Si además agregamos que el mundo contiene un sin fin de variables que nos son cuantificables a escala de una pequeña computadora, incluso de las más actuales, entonces nos vemos ante un universo que no comprendemos y que no podemos conquistar.
Describir tan sólo el cosmos sería imposible a partir de algoritmos, y más aún recrear todos estos eventos, explicando así la generación de todo, la vida, la razón, la existencia.
Pero es en donde todo este misticismo y complejidad se buscan resolver con nuevas ramas de la ciencia que permitan entendernos a nosotros mismo y al universo que nos rodea. Un pilar de esta nueva generación es la Inteligencia Artificial que cuenta con una gran colección de interpretaciones así como la tiene la física, la matemática de como entender el conocimiento.
Sobre todo esto se puede destacar un algoritmo que describe la lógica humana, y que no solo es capaz de entenderla sino que la utiliza para aprender de manera a como el ser humano concibe su entorno.
Es entonces que se puede entender que si el ser humano entiende algo como correcto entonces el algoritmo lo interpretará de la misma forma. En caso de lo contrario pueden escribirse un mar de temas existenciales, sobre la lógica universal y la lógica humana que ponen en entre dicho este algoritmo.
Para nosotros solo basta con entender todo el preámbulo y asombrarse de las maravillas que nos tiene preparado.
Sin importar si eres conocedor o no, si eres fanático o buscas un fundamento académico, te invitamos plenamente a entender este proceso que cuan menos es fascinante.
Pero es en donde todo este misticismo y complejidad se buscan resolver con nuevas ramas de la ciencia que permitan entendernos a nosotros mismo y al universo que nos rodea. Un pilar de esta nueva generación es la Inteligencia Artificial que cuenta con una gran colección de interpretaciones así como la tiene la física, la matemática de como entender el conocimiento.
Sobre todo esto se puede destacar un algoritmo que describe la lógica humana, y que no solo es capaz de entenderla sino que la utiliza para aprender de manera a como el ser humano concibe su entorno.
Es entonces que se puede entender que si el ser humano entiende algo como correcto entonces el algoritmo lo interpretará de la misma forma. En caso de lo contrario pueden escribirse un mar de temas existenciales, sobre la lógica universal y la lógica humana que ponen en entre dicho este algoritmo.
Para nosotros solo basta con entender todo el preámbulo y asombrarse de las maravillas que nos tiene preparado.
Sin importar si eres conocedor o no, si eres fanático o buscas un fundamento académico, te invitamos plenamente a entender este proceso que cuan menos es fascinante.
Lógica Difusa 101
La lógica difusa, como se ha venido mencionando permite interpretar un problema a la forma en la que lo entendemos los seres humanos.
Un ejemplo muy simple sería el siguiente:
Imagina que estas encerrado en un cuarto iluminado por el cual no hay salida alguna, frente a ti tienes 2 botones, el primero de ellos al ser oprimido genera que el cuarto empiece a calentarse. Por otro lado, el segundo botón al ser oprimido hace que el cuarto empiece a enfriarse. ¿De qué manera determinas cuando hace mucho frió? ¿ De qué manera determinas cuando hace mucho calor? ¿Cómo determinas que la temperatura del cuarto es la adecuada?
Si pensaste que se debe oprimir varias veces los botones y de ahí regular la temperatura del cuarto mediante técnicas de: muy caluroso, muy frió, templado, relativamente frió, justo, entonces acertaste.
La Lógica Difusa busca interpretar con valores relativos un problema y observar cuando pertenece más a un valor el estado actual.
El problema anterior parecerá sin mucho sentido, pero que pasa cuando nos damos cuenta que es la manera en que funcionan muchos aires acondicionados. ¿Alguna vez te lo habías preguntado? La lógica difusa no es propia de la Inteligencia Artificial, también se usa en teoría de control para problemas como el que hemos visto antes.
Un ejemplo muy simple sería el siguiente:
Imagina que estas encerrado en un cuarto iluminado por el cual no hay salida alguna, frente a ti tienes 2 botones, el primero de ellos al ser oprimido genera que el cuarto empiece a calentarse. Por otro lado, el segundo botón al ser oprimido hace que el cuarto empiece a enfriarse. ¿De qué manera determinas cuando hace mucho frió? ¿ De qué manera determinas cuando hace mucho calor? ¿Cómo determinas que la temperatura del cuarto es la adecuada?
Si pensaste que se debe oprimir varias veces los botones y de ahí regular la temperatura del cuarto mediante técnicas de: muy caluroso, muy frió, templado, relativamente frió, justo, entonces acertaste.
La Lógica Difusa busca interpretar con valores relativos un problema y observar cuando pertenece más a un valor el estado actual.
El problema anterior parecerá sin mucho sentido, pero que pasa cuando nos damos cuenta que es la manera en que funcionan muchos aires acondicionados. ¿Alguna vez te lo habías preguntado? La lógica difusa no es propia de la Inteligencia Artificial, también se usa en teoría de control para problemas como el que hemos visto antes.
la Información
Para poder describir el algoritmo de Lógica Difusa debemos centrarnos en la generación del sistema difuso, esto significa generar algo que interprete las instrucciones como nosotros las queremos en base a las reglas que se establecen, en el caso de nuestro problema quiere decir que en base a algo arbitrario como la temperatura del cuarto y la temperatura a la que está cambiando necesitamos convertir esos valores en las reglas que nosotros como lógica entendemos: cálido, frío, caliente.
Para entender el tema en un caso práctico les recomendamos este artículo http://www.seattlerobotics.org/encoder/mar98/fuz/flindex.html el cual explica a detalle el problema que acabamos de ver. El problema con el artículo es que está en inglés y algunos detalles son difíciles de entender, por lo que nuestra labor será hacer entender el concepto y llevarlo a la práctica.
Para entender el tema en un caso práctico les recomendamos este artículo http://www.seattlerobotics.org/encoder/mar98/fuz/flindex.html el cual explica a detalle el problema que acabamos de ver. El problema con el artículo es que está en inglés y algunos detalles son difíciles de entender, por lo que nuestra labor será hacer entender el concepto y llevarlo a la práctica.
El Algoritmo
El Sistema Difuso se compone de los siguientes elementos:
Reglas: Las reglas son el todo ya que sin ellas el problema no podría ser resuelto, y deben ser dadas del tipo:
SI algo ENTONCES resulta
Para nuestro caso se tendrían las siguientes reglas
SI el cuarto caliente ENTONCES enfriar
SI el cuarto templado ENTONCES no cambiar la temperatura
SI el cuarto frío ENTONCES calentar
Existen en total 9 posibles casos, pero para efectos demostrativos los dejaremos resumidos a estos 3.
Una vez obtenidas las reglas se debe entender que el sistema oscila entre el resultado teniendo una gran variedad y aproximaciones pero cada vez acercándose más a lo ideal.
Funciones de Membresía: Estas funciones matemáticas ya están dadas y vienen en una gran variedad de formas y colores.
Reglas: Las reglas son el todo ya que sin ellas el problema no podría ser resuelto, y deben ser dadas del tipo:
SI algo ENTONCES resulta
Para nuestro caso se tendrían las siguientes reglas
SI el cuarto caliente ENTONCES enfriar
SI el cuarto templado ENTONCES no cambiar la temperatura
SI el cuarto frío ENTONCES calentar
Existen en total 9 posibles casos, pero para efectos demostrativos los dejaremos resumidos a estos 3.
Una vez obtenidas las reglas se debe entender que el sistema oscila entre el resultado teniendo una gran variedad y aproximaciones pero cada vez acercándose más a lo ideal.
Funciones de Membresía: Estas funciones matemáticas ya están dadas y vienen en una gran variedad de formas y colores.
Cual utilizar o cual es mejor, depende del problema y no hay una solución igual para todos los casos, así que requiere de experimentación. Para nuestro problema utilizaremos la función triangular.
Estas funciones de membresía lo que dicen es que tanto pertenece un valor a cada función. Por ejemplo:
Si tenemos una temperatura de 20°C, donde nuestra temperatura ideal son unos 25°C. Se interpreta un punto en la gráfica y los triángulos atravesando. Como se puede ver en la imagen, estos triángulos se intersectan en algún punto, esto quiere decir que la temperatura puede ser tanto ideal como caliente al mismo tiempo. Lo que se debe determinar es dado estas dos a cual pertenece más. ¿Ahora hace más sentido el nombre?
Ahora solo basta ejecutar las fórmulas y obtener los valores para saber la pertenencia y en que grado.
Estas funciones de membresía lo que dicen es que tanto pertenece un valor a cada función. Por ejemplo:
Si tenemos una temperatura de 20°C, donde nuestra temperatura ideal son unos 25°C. Se interpreta un punto en la gráfica y los triángulos atravesando. Como se puede ver en la imagen, estos triángulos se intersectan en algún punto, esto quiere decir que la temperatura puede ser tanto ideal como caliente al mismo tiempo. Lo que se debe determinar es dado estas dos a cual pertenece más. ¿Ahora hace más sentido el nombre?
Ahora solo basta ejecutar las fórmulas y obtener los valores para saber la pertenencia y en que grado.
Defuzzification
Los valores obtenido son acertados, pero pertenecen a nuestro sistema lógico difuso y por tanto no son válidos al mundo real. Por lo que hay que convertirlos a un tipo de valor que nosotros queramos para terminar el ciclo del sistema.
Resultados
Como hemos visto el algoritmo es muy sencillo y aunque no hemos visto fórmulas directas estas pueden ser vistas en el artículo mostrado anteriormente y el sistema solo se adaptaría en reglas. Lo más complejo es definir muy bien el problema para que la lógica funcione correctamente. Así la manera de ver el mundo por medio de la lógica difusa da un fuerte control sobre el funcionamiento. Dos ejemplos son los que a continuación se presentan:
El robot mostrado sigue la línea de manera casi automática, esto en contraste con una programación más directa la cual hace más lento al robot para este problema.
El segundo ejemplo puede verse para todos los usuarios Android en la siguiente aplicación, la cual utiliza el acelerómetro del aparato para decir cuando está en una posición de equilibrio o no.
Te invitamos a descargar la aplicación y adentrarte a este interesante tema.
El segundo ejemplo puede verse para todos los usuarios Android en la siguiente aplicación, la cual utiliza el acelerómetro del aparato para decir cuando está en una posición de equilibrio o no.
Te invitamos a descargar la aplicación y adentrarte a este interesante tema.