SciELO - Scientific Electronic Library Online

 
vol.4 número2Composición, abundancia y diversidad de larvas y juveniles de peces asociados a las raíces de los mangles, en el estuario de la comuna Palmar - provincia de Santa Elena.Análisis del ciclo de vida como herramienta para la evaluación del comportamiento ambiental de un proceso. Caso de estudio central eléctrica de fuel oil 110 kv en la provincia de Granma - Cuba índice de autoresíndice de materiabúsqueda de artículos
Home Pagelista alfabética de revistas  

Servicios Personalizados

Revista

Articulo

Indicadores

Links relacionados

Compartir


Revista Científica y Tecnológica UPSE (RCTU)

versión On-line ISSN 1390-7697versión impresa ISSN 1390-7638

RCTU vol.4 no.2 La libertad ene./jun. 2017

https://doi.org/10.26423/rctu.v4i2.270 

Artículo De Investigación

Control de Velocidad de un auto empleando Sistemas Difusos

Speed control of a car using Fuzzy Systems

Edwin Fernando Mejía Peñafiel1 

Alberto Leopoldo Arellano Aucancela1 

Geovanny Vallejo1 

1 Facultad de Informática y Electrónica, Escuela Superior Politécnica de Chimborazo, Riobamba, Ecuador


Resumen

En los últimos años la inteligencia artificial ha ido aumentando su nivel en cuanto a investigación se refiere, los sistemas difusos se han venido consolidando como una herramienta útil para modelar sistemas complejos y no lineales. Las técnicas de la inteligencia artificial se han convertido en una herramienta fundamental para abordar problemas complejos incluyendo el área de control automático. A diferencia de la lógica tradicional que solo utiliza dos valores de verdadero o falso, la lógica difusa permite definir valores intermedios en un intento por aplicar un modo de pensamiento similar al del ser humano. En esta situación los sistemas expertos tienen mucho que ver con lo que significa inferir conocimiento, utilizando las famosas reglas de inferencia o también conocidas como reglas de producción, dentro de la lógica difusa se utilizará el método de inferencia de Mandani que hace uso de las reglas Si X Entonces Y, si premisa entonces conclusión. En este artículo se ha desarrollado un algoritmo difuso para controlar la velocidad de un auto y evitar que el mismo choque cuando el conductor sufre cualquier alteración de su cuerpo, el prototipo recoge información de su entorno para la toma de decisiones, se presenta un modelo como prototipo a seguir en este caso para la construcción, se hace un análisis de los diferentes dispositivos y se presentan los conceptos.

Palabras clave: Inteligencia Artificial; Sistemas Difusos; Lógica difusa; Inferencia de Mandani; Reglas de Inferencia; Algoritmo Difuso

Abstract

In recent years artificial intelligence has been increasing its level in terms of research, diffuse systems have been consolidated as a useful tool for modeling complex and non-linear systems. Artificial intelligence techniques have become a fundamental tool for addressing complex problems including the automtic control area. Unlike traditional logic that uses only two values of true or false, fuzzy logic allows defining intermediate values in an attempt to apply a mode of thinking similar to that of the human being. In this situation, the expert systems have much to do with what it means to infer knowledge, using the famous rules of inference or also known as rules of production, within the fuzzy logic will be used the method of inference of Mandani that makes use of the rules If X Then Y, if premise then conclusion. In this article we have developed a diffuse algorithm to control the speed of a car and prevent the same shock when the driver suffers any alteration of his body, the prototype collects information from its environment for decisión making, a model is presented as Prototype to follow in this case for the construction, is made an analysis of the different devices and the concepts are presented.

Keywords: Artificial Intelligence; Fuzzy Systems; Fuzzy Logic; Inference Mandani; Inference Rules; Fuzzy Algorithm

INTRODUCCIÓN

Los primeros estudios que se realizaron tienen su consecuencia por los años 60´s, el ingeniero Lotfy A. Zadeh en el año 1965 fue quien hizo estos estudios con el principio de incompatibilidad: “Conforme la complejidad de un sistema aumenta, nuestra capacidad para ser precisos y construir instrucciones sobre un comportamiento disminuye hasta el umbral más allá del cual, la precisión y el significado son características excluyentes” [1].

La aplicación del nuevo principio ha dado lugar a un abundante material teórico denominado “Matemática Difusa”; y a toda una tecnología de aplicación en las más diversas ramas [2].

“Los conjuntos difusos y la lógica difusa, que son el fundamento de los sistemas difusos, han sido desarrollados buscando modelar la forma como el cerebro manipula información inexacta e imprecisa” [3].

La gran oportunidad surgida con el auge de Lógica Difusa, es “la formalización del pensamiento lógico dialéctico, la aplicación de las matemáticas para lograrlo; uniendo la tradición clásica aristotélica, continuada y transformada en el seno de la comunidad matemática, con la Lógica Dialéctica” [3].

Esta oportunidad se potencia con el auge del paradigma de la Teoría de la Complejidad, que privilegia la no linealidad, la irreversibilidad y el no determinismo, en esferas que recorren todo el universo científico [2].

Los Sistemas Expertos son pioneros en la idea de obtener modelos partiendo de expresiones verbales, de manera que los decisores humanos pueden aplicar su experiencia esencial en problemas concretos. La representación del conocimiento sobre la base de la Lógica es aquí protagónica. En los últimos tiempos se ha desarrollado una disciplina matemático-informática llamada Soft-Computing o Inteligencia Computacional, [3]. Entre los fundamentos de esta disciplina está la Lógica Difusa [4 - 6].

Para entender las razones de utilizar la lógica difusa como método rector [7]; para evaluar la sostenibilidad de un auto en cuanto a su velocidad es necesario estudiar este tipo de lógica.

La lógica difusa [8][9], se desarrolla a partir del concepto de conjunto difuso [4][10]. Dado que un conjunto difuso es aquel que no presenta fronteras claramente definidas y puede contener elementos con un grado parcial de pertenencia [11], a diferencia de los conjuntos clásicos los cuales incluyen completamente o excluyen completamente un elemento determinado, por ejemplo, X debe estar en el conjunto A o en su complemento, el conjunto NOT-A, es decir o en uno o en otro.

Algunas de sus características generales son:

  • Es conceptualmente fácil de entender.

  • Es flexible.

  • Tolera datos imprecisos.

  • Puede modelar funciones no lineales de cualquier complejidad.

  • Utiliza al máximo la experiencia de los expertos.

  • Puede combinarse con las técnicas convencionales de control.

  • Está basada en el lenguaje natural.

En este artículo se ha revisado una de las técnicas de inteligencia artificial que es la lógica difusa, los sistemas difusos, la importancia en el desarrollo de sistemas automáticos en el complejo mundo del automovilismo, se describe cuáles son los dispositivos más comunes, así como los que aumentan los costos a la reparación y que consumen mucho tiempo en términos de desarrollo de este tipo de aplicaciones, así como también las medidas de éxito que se pueden adoptar.

MATERIALES Y MÉTODOS

En esta investigación se desarrolló un análisis de dispositivos que se van usar para la captura de los datos, para la automatización en sí, los cuales pueden resultar complejos, principalmente si el entorno de trabajo es desconocido para el equipo de investigadores, y depende mucho de las personas que participen en el mismo. Por la complejidad que todo esto puede implicar, la lógica difusa ha trabajado desde hace años en desarrollar algoritmos que permitan hacer este proceso de una forma más eficiente y precisa. [5]

En muchos sentidos, y retornando a la línea de la fusión de tecnologías, merece la pena recordar el inmenso trabajo que se desarrolla en sistemas neuro - borrosos, los cuáles pueden aprovechar la capacidad de aprendizaje que deberían tener sistemas de este tipo. Por otro lado, la equivalencia que se establece en ciertos modelos neuronales y borrosos [6] puede ser empleada para extraer las reglas que una red neuronal ha encontrado el entrenamiento eliminando uno de los grandes problemas que tienen este tipo de técnica de Inteligencia Artificial que es operación en forma de caja negra. Por todo ello la combinación de redes neuronales y sistemas borrosos es un campo de intenso trabajo en la actualidad [7-9] del que ambas técnicas se benefician.

En el campo de automatización con sistemas de tiempo real destaca el control de un helicóptero por órdenes pronunciadas de viva voz [10], y el control con derrapaje controlado de un modelo de coche de carreras de [11]. Dentro del sector de automóvil existen grandes números de patentes sobre sistemas de frenado, y cambios de marcha automáticos.

Lógica Difusa

El concepto de Lógica difusa fue concebido por Lofti A. Zaded [8], profesor de la Universidad de California en Berkeley, quien inconforme con los conjuntos clásicos (crisp sets) que sólo permiten dos opciones, la pertenencia o no de un elemento a dicho conjunto, la presentó como una forma de procesar información permitiendo pertenencias parciales a unos conjuntos, que en contraposición a los clásicos los denominó conjunto difuso (fuzzy sets). Este concepto fue expuesto por Zadeh en un artículo del año 1965, hoy clásico en laliteratura de la lógica difusa denominado “Fuzzy Sets” y que fue publicado en la revista Information and Control. El mismo Zadeh publica en 1971 el artículo, “Quantitative Fuzzy Semantics”, en donde introduce los elementos formales que acabarían componiendo el cuerpo de la doctrina de la lógica difusa y sus aplicaciones tal como se conoce en la actualidad.

“La lógica difusa trata de copiar la forma en que los humanos toman decisiones. Aunque se baraja información imprecisa, esta lógica es en cierto modo muy precisa: se puede aparcar un coche en muy poco espacio sin darle sin darle al de atrás. Suena a paradoja, pero es así.”

Sistemas Difusos

Un sistema basado en reglas difusas (SBRD) está formado por:

  • Base de conocimiento: Consiste de 2 componentes: Base de datos: Contienen la definición lingüística de las variables tanto de entrada como de salida. Define la semántica de cada variable lingüística.

  • Base de reglas: Combinan uno o más conjuntos difusos de entrada, llamados antecedentes o predicados, y se les asocia un conjunto difuso de salida llamado consecuente. Ejemplo: if predicado (antecedente) then conclusión (consecuente). Los predicados se pueden asociar mediante conectores lógicos AND, OR o NOT, esto permite relaciones entre antecedentes y consecuentes.

  • Motor de inferencia: Tambien llamado máquina de inferencia, permite calcular las variables de salida a partir de las variables de entrada difusa.

Además, se debe tener entradas y salidas de acuerdo a los hechos o predicados y reglas de inferencia usados, incluye una interfaz de fuzzificación y una interfaz de defuzzificación.

Método de Mamdani

En un sistema difuso tipo Mamdani se distinguenlas siguientes partes:

Fuzzificador

La entrada de un sistema de lógica difusa tipo Mamdani normalmente es un valor numérico proveniente, de un sensor; para que este valor pueda ser procesado por el sistema difuso se necesita convertirlo a un "lenguaje" que el mecanismo de inferencia pueda procesar. Esta es la función del fuzzificador, que toma los valores numéricos provenientes del exterior y los convierte en valores "difusos" que pueden ser procesados por el mecanismo de inferencia. Estos valores difusos son los niveles de pertenencia de los valores de entrada a los diferentes conjuntos difusos en los cuales se ha dividido el universo de las diferentes variables de entrada al sistema. [8]

Por ejemplo, en la figura 1, los valores difusos de la variable lingüística o variable difusa “Movimiento” podría ser BAJO, MEDIO y ALTO; estos argumentos se conocen como valores difusos, cada uno de ellos está modelado por su propia función de pertenencia en la figura 2.

Fig.1. Variable lingüística 

Fig.2. Conjunto difusa Movimiento 

Mecanismo de inferencia difusa

Teniendo los diferentes niveles de pertenencia arrojados por el fuzzificador, los mismos deben ser procesados para generar una salida difusa. La tarea del sistema de inferencia es tomar los niveles de pertenencia y apoyado en la base de reglas generar la salida del sistema difuso. [10]

Base de Reglas Difusas

La base de reglas es la manera que tiene el sistema difuso de guardar el conocimiento lingüístico [11] que le permite resolver el problema para el cual ha sido diseñado. Estas reglas son del tipo IF-THEN. Una regla de la base de reglas o base de conocimiento tiene dos partes, el antecedente y el consecuente como se observa en el siguiente ejemplo:

Si el volante no tiene ningún movimiento

entonces activar la señal de parada o parqueo.

IF volante = sin movimiento Then activar parqueo

Modelo Estándar de automatización con lógica difusa

Fig.3. Modelo estándar con lógica difusa 

El modelo a usar será el que proporciona el sistema de reglas difusas para poder emprender con el proyecto.

Algoritmo Propuesto

Para este algoritmo utilizaremos la figura 4 en la cual se muestra como estará los dispositivos conectados entre sí.

La idea principal de este algoritmo es dar solución cuando una persona que está en el volante de un auto pueda salvarse y salvar a su familia o a los pasajeros con los cuáles viaja.

El proceso de la toma de decisiones por parte del sistema difuso depende de los sensores y especialmente de la máquina de inferencia que toma sus decisiones basadas en la base de conocimiento donde se encuentran los predicados y las reglas de inferencia.

Fig.4. Reglas de inferencia y algoritmo propuesto 

Los sistemas difusos necesitan ordenar su estructura lógica en el núcleo de inferencia difusa. Aquí encontramos el Fuzzyficador, mecanismo de inferencia que evalúa las reglas y el defuzzificador como indica la figura 4.

Las variables que ingresan son valores no difusos, siendo estas señales eléctricas provenientes de los sensores. Las entradas ingresan al bloque Fuzzyficador, en él se encuentran todos los distintos conjuntos difusos que se encargan en transformar los valores no difusos en difusos. Luego ingresan al mecanismo de inferencia donde evaluará las relaciones conjunto difuso entrada con sus correspondientes salidas mediante sentencias if then. Finalmente, ingresa al defuzzificador el cual se encarga de transformar el valor difuso en un no difuso, utilizándose una función de membresía para tal fin. En la base de conocimiento están las funciones de pertenencia (usa fuzzificador), listado de reglas mecanismo de inferencia) y funciones de membresía (usa defuzzificador).

Ahora, pues bien, para poder encadenar las reglas de inferencia se necesita de los operadores lógicos los cuales se utilizan de la siguiente manera:

C(x) = Min[A(x), B(x)] siendo la coma (,) un AND

C(x) = Max[A(x); B(x)] siendo el punto y coma (;) un OR

Siendo A(x) y B(x) conjuntos de entrada difusos.

Estas son las operaciones que podemos realizar con los predicados uniéndoles en diferentes reglas y con su correspondiente forma de encadenamiento hacia adelante.

Algoritmo del Mamdani FLC (Fuzzy Logic Controller):

  • Usar el valor del predicado (antecedente - if) de cada una de las reglas.

  • Determinar la coclusión (consecuente - then) de cada una de las reglas.

  • Agregar todos los outputs de las reglas para obtener el output de todo el sistema (funciones de pertenencia difusa), también se llama determinar el grado de disparo de todas las reglas (degree of firing).

  • Defuzificar la salida para obtener un valor no difuso, se puede usar varios métodos como el COA (Centroid of Area) o el MOM (Mean of Max).

En forma discreta:

Ejemplo de defuzificacion usando el centroide:

En forma discreta con 10 muestras:

RESULTADOS Y DISCUSIÓN

Para comprobar el correcto funcionamiento del controlador difuso diseñado y programado en el PLC, todo esto se realizó en MATLAB utilizando la herramienta Fuzzy Logic Toolbox. Esta herramienta permite elegir el método de inferencia, el método de defuzificación, define los conjuntos de entrada y salida e incorporar las reglas que definen el comportamiento del control como se muestra en la figura 5.

Fig.5. Herramienta Toolbox de MATLAB 

En la figura 5. Se observa las tres variables de entrada que permiten realizar las reglas de inferencia entre los hechos que ocurren en el mundo real de un automóvil y la salida, la cual se obtiene un caso al momento de inferir las reglas que cada una tiene. Los resultados se dan por movimiento de la cabeza que realice el chofer del auto, en la Tabla 1 se muestra estos resultados:

Tabla 1 Rangos de movimiento del chofer 

Tabla 2 Rangos de movimiento del volante 

De acuerdo con la tabla 1 y 2 se pueden realizar las siguientes reglas:

R1: Si el chofer=bajo y movimiento del volante = bajo entonces frenado = medio - alto y acelerador = medio

R2: Si el chofer = medio y movimiento del volante = bajo entonces frenado = bajo - medio y acelerador = bajo

R3: Si el chofer = alto y movimiento del volante = bajo entonces frenado = alto y acelerador = bajo.

Lo que nos indica que debemos insertar más predicados o hechos para los cuales tengamos una cantidad de reglas que infieran la totalidad de lo que ocurre en el mundo exterior, por supuesto los dispositivos usados también se deben cambiar como sensores o una red de sensores.

Discusión

La toma de decisiones la debe generar el sistema difuso planteado para presencia o ausencia de una señal en el motor de inferencia, en el caso planteado que es la de una persona que puede sufrir cualquier tipo de alteraciones en el momento que está conduciendo, resulta muy beneficioso utilizar esto.

La dimensión del tiempo en cuanto a respuesta del sistema esta medido en segundos. El sistema difuso aplicado mejora en gran medida y da una ayuda a la sociedad con la aplicación del sistema de inferencia, especialmente cuando tenemos mayor cantidad de sensores, dado que amerita mayor cantidad de reglas de inferencia y mayor capacidad de adaptación de la máquina de inferencia difusa. Los sistemas difusos están dando resultado en la prevención de la seguridad de un auto cuando tienen este tipo de problemas, con la altísima responsabilidad de verificar también si la señal que llega y la que sale del sistema es la correcta.

Hay que prever que los automóviles tienen una dimensión, las camionetas, las busetas, los buses, camiones y tráileres tienen otras; por eso se tomó la situación sólo para automóviles.

Sin embargo, en el desarrollo de automatizaciones tradicionales, los profesionales y expertos en procesos consideran a la ingeniería de requisitos como una fase de relevancia crucial en el proceso de desarrollo. Es bien sabido que los errores más comunes y que consumen mucho tiempo, así como los más caros a la reparación, son los errores que surgen de la ingeniería inadecuada de requisitos. Por lo tanto, aunque la relevancia de Ingeniería de Requisitos es bien conocida, estas técnicas deben ser estudiadas más ampliamente en la comunidad de Ingeniería Electrónica y además de software. [7]

En este sentido muy profundo del desarrollo de la automatización en sentido industrial los nuevos modelos de procesamiento y control vistos, junto con otros de relativa novedad, se engloban en la denominada Soft Computing.

CONCLUSIONES

Los sistemas difusos son un enfoque de ingeniería, automática y controles relativamente nuevos con algunas expectativas y desafíos que se abordarán en los próximos años dentro de la inteligencia artificial para salvar vidas humanas y en general de seres vivos.

Como se ha comentado en este documento, hay algunas propuestas concretas y muchos dispositivos hacer usados y plataformas que, de alguna manera lograrían esa visión general y relevancia para implementar este algoritmo.

El algoritmo propuesto sobre Sistemas Difusos es el resultado de nuestra experiencia sobre investigación en el área a lo largo de esta última década, que hemos diseñado y desarrollado varios dispositivos electrónicos, herramientas y aplicaciones del mundo real siguiendo un estándar. Además, el mismo podría ayudar a otros a tener una visión y una mejor comprensión de lo que son sistemas difusos y sus conceptos claves y terminología.

Se ha dado una breve introducción a la lógica difusa partiendo de la lógica binaria, sistema difuso, reglas de inferencia difusa y terminando con los dispositivos electrónicos básicos a utilizar.

Sin dejar de lado las reglas de inferencia, motor de inferencia y base de conocimiento realizado para este prototipo, basado en 1(5 voltios) positivo y -1(0 voltios) negativo.

El uso de los sensores y del Arduino es de gran ayuda para este tipo de proyectos, pero hay que saber escogerlos, al momento de realizarlo en la realidad.

En un próximo trabajo se estará mostrando las simulaciones realizadas con ejemplos prácticos y los tiempos que se demoran cada uno de los autos en pasar de un estado activo a uno inactivo. Así como también estaremos presentando el algoritmo usado en este proyecto.

REFERENCIAS

Piedrafita R (2000) Ingeniería de la Automatización, Alfaomega. [ Links ]

Espín R (2004) El Paradigma de la Lógica Difusa: Oportunidades para la Ciencia, Instituto Superior Politecnico Jose Antonio Echeverría, Haban - Cuba. [ Links ]

Verdegay J.L. (2005). Una revisión de las metodologías que integran la Soft computing. Actas del Simposio sobre Lógica Fuzzy y Soft Computing LFSC 2005 (EUSFLAT).151-156. [ Links ]

Zadeh L. A. (1965). Fuzzy Sets, Information and Control, 8, 338-353. [ Links ]

Dubois D. and Prade H (1980). Fuzzy Sets and Systems: Theory and Applications. Academic Press Inc, N. York. [ Links ]

Lindley D. (1994). En: Wright G., and P. Ayton (eds.) Subjective Probability, Wiley & Sons, Chichester. [ Links ]

Cassel-Gintz, M. A., Liidike M., K. B., Petschel- Held, G., Reuswig F., Pliich, M. and Lamme, G (2003) "Fuzzy logic based global assessment of the marginality of agricultural land use", Climate Research, (8): 135-150. [ Links ]

Zadeh L. A.(1978) "Fuzzy sets as a basis for a theory of possibility", Fuzzy Sets and Systems, (1): 3-28. [ Links ]

Yoshinari., Y and Pedrycz W. , K. H.(1993) "Construction of fuzzy models through clustering techniques", Fuzzy Sets and Systems , (54): 157- 165. [ Links ]

Zimmermann, H. J.(1985) Fuzzy sets and its applications, Publications Kluwer Nijhoff, Dordrecht, Southern Holland. [ Links ]

Kaufmann, A. and Gil Aluja, J(1993) Introducción de la teoría de los subconjuntos borrosos a la gestión de las empresas, Editorial Milladoiro, España. [ Links ]

Recibido: Diciembre de 2016; Aprobado: Abril de 2017

Creative Commons License Este es un artículo publicado en acceso abierto bajo una licencia Creative Commons