Diseño de una arquitectura para un sistema neurodifuso ANFIS sobre un FPGA aplicado a la generación de funciones
En la presente tesis, se realizó el diseño de una arquitectura para un sistema neurodifuso ANFIS. Se tomó en consideración un sistema de orden cero de dos entradas y una salida, que cuenta con funciones de pertenencia triangulares en los antecedentes de las reglas difusas. Además, se tuvo en cuenta...
Autor Principal: | Block Saldaña, Henry José |
---|---|
Formato: | Tesis de Licenciatura |
Idioma: | Español |
Publicado: |
Pontificia Universidad Católica del Perú
2011
|
Materias: | |
Acceso en línea: |
http://tesis.pucp.edu.pe/repositorio/handle/123456789/515 |
Etiquetas: |
Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
|
Sumario: |
En la presente tesis, se realizó el diseño de una arquitectura para un sistema
neurodifuso ANFIS. Se tomó en consideración un sistema de orden cero de dos
entradas y una salida, que cuenta con funciones de pertenencia triangulares en los
antecedentes de las reglas difusas. Además, se tuvo en cuenta que el
entrenamiento del sistema es realizado fuera de línea (off-line), en MATLAB.
La arquitectura diseñada se dividió en cuatro bloques: Fuzzificador, Permutador,
Inferencia y Defuzzificador. Cada uno de estos bloques fue tratado como un
subsistema y descrito por separado para facilitar su diseño. Posteriormente, se
procedió a juntar los cuatro bloques, dando como resultado la arquitectura
propuesta para el sistema neurodifuso ANFIS. Esta arquitectura fue descrita de
manera modular y genérica mediante el lenguaje de descripción de hardware VHDL
y fue implementada en los FPGA Spartan-3 XC3S200 de la empresa Xilinx y
Cyclone II EP2C35 de la empresa Altera, utilizando las herramientas que se
encuentran dentro de los entornos de desarrollo ISE 11 y Quartus II 9.1,
respectivamente.
El sistema diseñado fue aplicado a la generación de funciones. Primero, se eligió
una función no lineal y se llevó a cabo el entrenamiento del sistema en MATLAB
para obtener los parámetros de los antecedentes y consecuentes de las reglas
difusas. Después, estos parámetros fueron convertidos a una representación
binaria en punto-fijo complemento a dos y almacenados en las memorias ROM del
código en VHDL. Finalmente, se realizaron simulaciones sobre los dos FPGA,
mencionados anteriormente, para verificar la operación del sistema y poder evaluar
su desempeño. Entre los resultados obtenidos, destaca que el tiempo requerido por
el sistema para calcular un valor de la función es menor a 10 s (trabajando a una
frecuencia de reloj de 50 MHz). Este valor es mucho menor al tiempo requerido por
la aplicación en MATLAB, el cual fue de alrededor de 100 ms. |
---|