Complutense University Library

Estudio e implementación de reconocedores de secuencias mediante hardware evolutivo

Urbón Aguado, Alberto (2009) Estudio e implementación de reconocedores de secuencias mediante hardware evolutivo. [Trabajo Fin de Máster]

[img]
Preview
PDF
3MB
View download statistics for this eprint

==>>> Export to other formats

Abstract

El Hardware Evolutivo es un esquema de diseño automático de sistemas hardware inspirado en la naturaleza. Los circuitos son codificados como cromosomas de un algoritmo evolutivo, son posteriormente cargados a hardware reconfigurable y evaluados para obtener su aptitud o fitness, según la cual son clasificados. Como campo de investigación es relativamente reciente, pues nació a principios de los noventa, siendo ya en 1993 cuando se publicaron las primeras investigaciones sobre la materia. Surgió de la conjunción de dos campos claramente diferenciados, por una parte, de la aplicación de las teorías darwinistas provenientes del estudio de la propia Naturaleza en la informática mediante los algoritmos genéticos, y por otra, del desarrollo del hardware reconfigurable para fines comerciales, principalmente mediante dispositivos tales como las FPGA (Field Programmable Gate Array). Éstos son, básicamente, chips VLSI (Very Large Scale of Integration) que contienen una gran cantidad de lógica reconfigurable y programable por el usuario.
Mediante este trabajo de investigación se ha querido principalmente desarrollar un sistema funcional a través del uso de estas técnicas y teorías.
Partiendo de las ideas de otros autores duchos en la materia, ya que el sistema se basa en VRCs (Virtual Reconfigurable Circuit), esta investigación trata el
desarrollo y la implementación un sistema secuencial usual como es un reconocedor de patrones. Como característica fundamental, cabe destacar que se trata de un diseño evolutivo, por lo que es el propio sistema el que busca una implementación válida. Ésta búsqueda se realiza a partir de una serie de restricciones y una arquitectura base impuestas de antemano. El sistema es lo suficientemente claro como para que se trate de un primer paso en la materia, pero al mismo tiempo novedoso y vanguardista pues hasta ahora la mayoría de los desarrollos publicados
han sido sistemas combinacionales.
La metodología de desarrollo llevada a cabo ha estado siempre guiada por la generalidad, es por ello que nos hayamos decantado por un co-diseño HW-SW. Por una parte, su núcleo esta formado por una serie de módulos hardware que se
ejecutan a gran velocidad, aspecto necesario en este tipo de sistemas. Por otra parte, el poder programar a cierto nivel de abstracción nos ha permitido desarrollar el corazón de la evolución en lenguaje C, fácilmente intercambiable y/o modificable sin perder prestaciones, pues es ejecutado en un soft-core de alto rendimiento como es el MicroBlaze de Xilinx.
[ASBTRACT]
Evolvable hardware is a circuit automatic design scheme inspired directly by Nature. Circuits are coded as chromosomes of a genetic algorithm which are afterwards uploaded to a reconfigurable logic device and thus assessed in order to obtain its fitness value, by means of which they are classified. It is considered a quite recent researching field, since it was born in the early nineties, and actually the first related publications date of 1993. The field emerged when some authors combined two clearly different ideas, one coming from genetic algorithms, considered as the application in computing of the Darwinist laws, and the other by the striking development of the reconfigurable hardware for commercial purposes,
above all by means of FPGAs (Field Programmable Gate Array). These devices are, basically, VLSI chips (Very Large Scale of Integration) that are made of a huge amount
of logic ready to be programmed and reconfigured by the developer. The goal of this research is a hands-on study of the field by the development of a fully functional system, always bearing in mind the use of these techniques and theories. Starting off from the ideas of other experienced authors, the system we have developed is based in VRCs (Virtual Reconfigurable Circuit), and it has the functionality of an usual pattern recognizer. As a main feature, it has to be pointed out that it is an evolvable design, i.e. it looks for a valid implementation by itself. This process is carried out assuming a set of constraints and a reconfigurable architecture prepared in advance. The system is clear enough to be considered as a first step in
the field, but likewise original and state-of-the-art since up to now almost all systems developed by these techniques have been combinational. Throughout the research, we have always been focused towards generality and thus, the decision was to choose a Hw-Sw co-design. On the one hand, its core is based on a series of hardware modules which are rapidly executed, a necessary characteristic in this sort of systems. On the other hand, the fact of being able to
program at high level allowed us to perform the main part of the evolution in a powerful language as C. That entails an ease in the modifications and improvements, and the avoidance of loosing much performance since this code is executed in a highperformance soft-core as Xilinx MicroBlaze.


Item Type:Trabajo Fin de Máster
Additional Information:

Máster en Investigación en Informática, Facultad de Informática, Departamento de Arquitectura de Computadores y Automática, curso 2008-2009

Directors:
DirectorsDirector email
Lanchares Dávila, Juan
Uncontrolled Keywords:Hardware Evolutivo, Computación Evolutiva, Algoritmos Genéticos, Componentes Evolutivos, Diseño Automático, Evolución Intrínseca, Hardware Reconfigurable, FPGA, VRC,Evolvable Hardware, Genetic Algorithms, Evolvable Computing, Evolvable Components, Automatic Design, Intrinsic Evolution, Reconfigurable Hardware, FPGA, VRC
Subjects:Sciences > Computer science > Artificial intelligence
ID Code:9872
Deposited On:01 Feb 2010 09:58
Last Modified:06 Feb 2014 08:33

Repository Staff Only: item control page