Skip to content

Elitism Mode

Kilik Kuo edited this page Apr 21, 2017 · 2 revisions

Idea

The OpenCLGA model is designed to be distributed. Considering the computing performance among CPU/GPU devices vary inevitably, furthermore, the best result of each generation from different devices differ a lot. It's possible to collect the top N x M(worker devices) chromosomes from all workers, sort them, and pick best N chromosomes from these elites and then update them back to all workers for the next iteration. By doing so, we're able to speed up the convergence process among all workers.

Simple Diagram

Dive into the code

...