Universidad Complutense de Madrid
E-Prints Complutense

Implementación de un algoritmo genético paralelo sobre hardware gráfico de última generación



Último año

Pedraz Sánchez, Juan Carlos y Córdoba González, Carmen (2005) Implementación de un algoritmo genético paralelo sobre hardware gráfico de última generación. [Trabajo de curso]

Vista previa

URL Oficial: http://www.dacya.ucm.es/hidalgo/


Genetic algorithms (GAs) are optimization techniques which imitate the way that nature selects the best individuals (the best adaptation to the environment) to create descendants which are more highly adapted. The first step is to generate a random initial population, where each individual is represented by a character chain like a chromosome and with the greatest diversity, so that this population has the widest range of characteristics. Each individual represents a solution for the targeted problem. Then, each individual is evaluated using a fitness function, which indicates the quality of each individual. Finally, the best-adapted individuals are selected to generate a new population, whose average will be nearer to the desired solution. This new population is created making use of three operators: selection, crossover and mutation.One of the major aspects of GA is their ability to be parallelised. Indeed, because natural evolution deals with an entire population and not only with particular individuals, it is a remarkably highly parallel process.
Nowadays computer systems incorporate powerful graphic cards that are commonly idle during a normal execution process of most of the optimization algorithms. Modern graphic cards use a pipelined streaming architecture to perform a significant part of the rendering process. Two stages in the pipelined process are programmable in current graphics hardware. The vertex engine is used to perform transformations on the vertex attributes (normal, position, color, texture, ...). On the other hand, the fragment engine is used to transform the fragments that form the different polygons. Both engines are extremely parallel, processing several elements in parallel and making extensive use of SIMD units.
In this work we have presented a parallel implementation of a GA using a GPU. We have implemented not only three well know benchmarks problems with excellent Speed-up results, but also a novel implementation of an algorithm for solving defectives problems proposed in the literature.

Tipo de documento:Trabajo de curso
Palabras clave:Algoritmos Genéticos; Tarjeta Gráfica; GPU; Problemas defectivos
Materias:Ciencias > Informática > Hardware
Código ID:5865
Depositado:28 Aug 2006
Última Modificación:06 Feb 2014 07:46

Descargas en el último año

Sólo personal del repositorio: página de control del artículo