← Voltar aos projetos

Algoritmos genéticos em C e CUDA

Uma série de implementações de referência de algoritmos genéticos em C e CUDA, do 'hello world' ao problema do Robby.

Sobre

Computação evolutiva é o assunto que me trouxe de volta à universidade e que eu continuo estudando por conta própria. Ao longo dos anos fui publicando as implementações de referência que escrevi para estudar, quase todas em C puro com uma contraparte em CUDA.

A ideia é que cada repositório seja pequeno o bastante para ser lido de ponta a ponta, e que o par C/CUDA deixe claro o que muda de verdade quando o mesmo algoritmo passa a rodar na GPU.

O que tem

  • simpleHelloGA e cuHelloGA — o menor algoritmo genético útil, em C e em CUDA, bom ponto de partida para estudo
  • robbyga e cuRobby — o problema do Robby, o robô coletor de latas de Complexity: A Guided Tour, da Melanie Mitchell
  • mastermindGA — resolvendo Mastermind com um GA
  • cga e cuCGA — autômatos celulares, o tema do meu mestrado
  • cuda_snippets — trechos curtos de CUDA
  • cuAutotools — um template Autotools para projetos CUDA no Linux, porque configurar isso do zero toda vez é chato