def generate_genes(self, max_genes, max_conds, seed): ''' Randomly generate a variable size chromosome. ''' random.seed(seed) self.default_class = random.randint(0, 9) for i in range(random.randint(1, max_genes)): gene = Gene() gene.generate_conditions(max_conds, random.random()) if self.one_vs_all != -1: gene.hand_class = self.one_vs_all self.genes.append(gene)
def insertion(self, max_genes, max_conds, insertion_rate, seed): ''' Mutation Function Randomly inserts genes into the chromosome. ''' random.seed(seed) for i in range(max_genes): if random.random() < (insertion_rate): gene = Gene() gene.generate_conditions(max_conds, random.random()) if self.one_vs_all != -1: gene.hand_class = self.one_vs_all self.genes.append(gene)