The representation of the genotypes is uniform across the three kinds of patterns and is composed as a tuple of three elements: a variable length bit string, representing the actual data, a length field which represents the actual length of the bit string and a modulo field, which divides the bit string into sub sets of bits of the same length.
An uniform genotype representation allows to breed all the three different populations with a single genetic algorithm, reducing the amount of code needed to construct the entire system and encouraging modularity: if we want a new type of instrument or genre in our game we don’t need to rewrite the entire system, instead we can just construct appropriate phenotypes and relative initial populations.