明确概念
Traditional genetic algorithm: 自然选择流程
Interactive selection: 在传统算法的基础上结合用户交互
Ecosystem simulation: 在Interactive selection基础上再进一步添加环境变量
Natural selection: Heredity(继承), Variation(多样性), Selection(自然选择)
text(c, x, y): char, x coordinate,y coordinate
明确功能
1.通过模拟自然选择将字符串不断进化
-最优秀的基因获得遗传权利,和目标相比较(mating pool)
-父系母系基因重组(midpoint)
-基因变异(mutation)
-成为下一代基因
功能设计
类:DNA
属性:genes
方法:fitness, crossover, mutation
伪代码
setup(){
}
draw(){
}
class DNA{
定义属性
DNA(){}
定义方法
}
正式代码
见:
Processing/The_evolution_of_code at master · JoeyQiang/Processing · GitHub
代码优化
1.基因和外表关联,显示出来
2.用户交互影响基因