遗传算法(Genetic Algorithm): 1. generate a bunch of solutions 2. 算子:选择算子(selection): Roulette Wheel Selection(轮盘赌): 1. 适应性越强概率越大,随机选择父母 2. Use accumulation of probability and bisect e.g. probability [0.25,0.25,0.5], accumulation [0.25,0.5,1], when using bisect —0—0.25—1—0.5—2—[prabablility bigger->interval of accumulation is bigger-> has more chance to be choosen] Tournament Selection(锦标赛):1. random choose n 个个体,选出其中最好的 Linear(Exp) Ranking Selection: 排序,按照顺序线性(exp)确定probablility 交叉算子:uniform crossover: 变换father和mother的一些位 中间重组(浮点数):取father和mother的随机中间数 变异算子:flipbit: 异或(二进制),随机替换(实数) 3. 编码二进制:range=(a,b), eps = 精度 ->int((x-b)/eps)转为二进制(编码位数: log((b-a)/eps) ) !4. 遗产算法的编码非常重要?:要保证交叉算子起作用,即亲代可以强强联合,不然就和变异算子没有差别了