Propostas atribuídas

DEI - FCTUC
Gerado a 2024-11-24 13:18:00 (Europe/Lisbon).
Voltar

Titulo Estágio

Genetic Programming in Graphic Processing Units with TensorFlow

Áreas de especialidade

Sistemas Inteligentes

Local do Estágio

Departamento de Engenharia Informática da Universidade de Coimbra

Enquadramento

Abordagens de programação genética (GP) baseadas em expressões são tipicamente implementadas para serem executadas em CPU. O processamento em GPU redefiniu os limites de processamento, tornando o cálculo de numérico muito mais rápido em comparação a abordagens implementadas e executadas em CPU. Como resultado, abordagens desenhadas para GPU tem vindo a emergir no domínio da aprendizagem computacional, surgindo implementações de diversos algoritmos em grande parte das frameworks e bibliotecas utilizadas na área. As abordagens em GPU têm a propriedade de efetuar cálculo vetorial e matricial de forma rápida e eficiente. Abordagens que possam ser vetorizadas, isto é, em que as partes cíclicas possam ser transformadas em operações de arrays, podem ser paralelizáveis em GPU. Assim, parte dos algoritmos evolucionários podem ser implementados de forma vetorial e, assim, serem processados em GPU.

Objetivo

- Implementação base de um algoritmo evolucionário, em particular programação genética (GP), podendo recorrer a técnicas como a vetorização para facilitar o processo de paralelização.
- Cálculo de operadores terminais e não terminais em GPU, tirando partido do modelo de grafos e de tensores do TensorFlow.
- Aplicação da biblioteca desenvolvida em duas tarefas distintas de GP. A primeira tarefa tem um carácter mais clássico e consistirá em regressão simbólica. A segunda tarefa será mais experimental e envolve a geração de imagem utilizando expressões matemáticas.
- Disseminação do trabalho desenvolvido em conferências da área e disponibilização do código resultante através de um repositório GIT que será proposta como módulo/contribuição para o TensorFlow.

Plano de Trabalhos - Semestre 1

1 - Realizar estado da arte de programação genética para regressão simbólica e geração de imagem;
2 - Experimentar abordagens existentes encontradas no estado da arte;
3 - Explorar TensorFlow, com foco no funcionamento da parte de GPU e identificação de oportunidades para possíveis contribuições;
4 - Escrita da proposta de tese.

Plano de Trabalhos - Semestre 2

1 - Desenvolvimento da abordagem;
2 - Testes em problemas de regressão simbólica;
3 - Testes no domínio dos sistemas generativos (imagem);
4 - Escrita da dissertação.

Condições

O trabalho será desenvolvido no laboratório de investigação Computational Design and Visualization (CMS / CISUC), onde haverá um acompanhamento regular por parte dos orientadores. O aluno terá acesso contínuo a uma sala de trabalho (F2.2), assim como recursos computacionais para desempenhar este trabalho.

Observações

O aluno deverá saber programar em Python.

Orientador

João Nuno Gonçalves Costa Cavaleiro Correia / Tiago Filipe dos Santos Martins
jncor@dei.uc.pt 📩