Utilize este identificador para referenciar este registo: https://hdl.handle.net/10316/93895
Título: Genetic Programming in Graphic Processing Units with TensorFlow
Outros títulos: Programação Genética em Unidades de Processamento Gráfico com TensorFlow
Autor: Baeta, Francisco José Rodrigues
Orientador: Correia, João Nuno Gonçalves Costa Cavaleiro
Martins, Tiago Filipe dos Santos
Palavras-chave: GP-GPU; Programação Genética; TensorFlow; Vetorização; Arte Evolucionária; GP-GPU; Genetic Programming; TensorFlow; Vectorization; Evolutionary Art
Data: 11-Nov-2020
Título da revista, periódico, livro ou evento: Genetic Programming in Graphic Processing Units with TensorFlow
Local de edição ou do evento: DEI-FCTUC
Resumo: Inspirada pela natureza, a Programação Genética (GP) constitui um método automático de resolução de problemas que otimiza soluções através da evolução de um conjunto de programas de computador [39]. Este processo de otimização, apesar de computacionalmente dispendioso, é também extremamente paralelizável. Ao longo dos anos, vários modelos de programação foram aplicados a GP de modo a aproveitar este potencial de paralelização. Mais especificamente, foi demonstrado que a vetorização de dados relativos à avaliação de aptidão dos indivíduos em GP beneficia do uso de processadores com capacidades de paralelização como as Unidades de Processamento Gráfico (GPUs).No presente trabalho recorremos à plataforma TensorFlow para investigar as vantagens da aplicação deste método de vetorização a vários problemas de GP, assim como para analisar ganhos de desempenho da GPU sobre o CPU. Para este propósito, foi desenvolvido um motor de GP independente, TensorGP, assim como um ambiente de testes com o objetivo de extrair resultados comparativos entre diversas abordagens tanto vetorizadas como iterativas.Problemas de regressão simbólica e evolução de imagens foram usados para validar o correto funcionamento das funcionalidades implementadas. Os resultados experimentais obtidos demonstram que tirando partido do modelo de execução do TensorFlow para a vetorização de domínios de avaliação extensos, ganhos de desempanho até duas ordens de grandeza são alcançáveis em GPU comparativamente com o CPU. Para além do mais, testes exploratórios realizados no âmbito de arte evolucionária comprovam a viabilidade do motor para efeitos de produção artística.
Genetic Programming (GP) is an automatic problem-solving technique inspired by nature, that optimizes solutions through the evolution of a population of computer programs. This process of optimization, although computationally expensive, is also classified as “embarrassingly parallel”. For many years researchers attempted to exploit this tendency towards concurrency by employing various types of parallel programming paradigms. Particularly, vectorization of fitness evaluation data points was shown to benefit from the use of commercially available parallel architectures such as the Graphics Processing Unit (GPU), to speed up many GP related systems.In this work, we take advantage of the TensorFlow framework to investigate the benefits of applying this data vectorization method to different scenarios and determine respective GPU performance gains over a Central Processing Unit (CPU). For this purpose, an independent GP engine was developed, TensorGP, along with a testing suite to extract comparative results across different iterative and vectorized approaches.Symbolic regression problems and expression-based image evolution were used to validate system functionality. Our performance benchmarks demonstrate that by exploiting the TensorFlow execution model, performance gains of up to two orders of magnitude can be achieved on the GPU when compared to the CPU, for the vectorization of large problem domains. Furthermore, exploratory experimentation in the context of evolutionary art illustrates the engine’s feasibility towards artistic production.
Descrição: Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia
URI: https://hdl.handle.net/10316/93895
Direitos: openAccess
Aparece nas coleções:UC - Dissertações de Mestrado

Ficheiros deste registo:
Ficheiro Descrição TamanhoFormato
FranciscoBaeta.pdf67.54 MBAdobe PDFVer/Abrir
Mostrar registo em formato completo

Visualizações de página

157
Visto em 16/abr/2024

Downloads

53
Visto em 16/abr/2024

Google ScholarTM

Verificar


Este registo está protegido por Licença Creative Commons Creative Commons