Diseño de una arquitectura para un sistema neurodifuso ANFIS sobre un FPGA aplicado a la generación de funciones

Descripción del Articulo

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...

Descripción completa

Detalles Bibliográficos
Autor: Block Saldaña, Henry José
Formato: tesis de grado
Fecha de Publicación:2010
Institución:Pontificia Universidad Católica del Perú
Repositorio:PUCP-Tesis
Lenguaje:español
OAI Identifier:oai:tesis.pucp.edu.pe:20.500.12404/515
Enlace del recurso:http://hdl.handle.net/20.500.12404/515
Nivel de acceso:acceso abierto
Materia:Arquitectura de computadoras
Redes neuronales (Computación)
Sistemas de reconocimiento de patrones
VHDL (Lenguaje de descripción de hardware)
https://purl.org/pe-repo/ocde/ford#2.02.01
Descripción
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.
Nota importante:
La información contenida en este registro es de entera responsabilidad de la institución que gestiona el repositorio institucional donde esta contenido este documento o set de datos. El CONCYTEC no se hace responsable por los contenidos (publicaciones y/o datos) accesibles a través del Repositorio Nacional Digital de Ciencia, Tecnología e Innovación de Acceso Abierto (ALICIA).