拆书《复杂》
易拉罐清扫机器人的遗传算法。
工作原理,基础内容同遗传算法(一),这里具体实例的工作原理。
1.生成初始群体。初始群体有200个随机个体(策略)。
每个个体策略有243个“基因”。每个基因是一个介于0和6之间的数字,代表一次动作(0=向北移动,1=向南移动,2=向东移动,3=向西移动,4=不动,5=捡拾罐子,6=随机移动)。在初始群体中,基因都随机设定。程序中用一个伪随机数发生器来进行各种随机选择。
重复后面的步骤1000次。
2.计算群体中每个个体的适应度。在程序中,是通过让罗比执行100次不同的清扫任务来确定策略的适应度。每次将罗比置于位置(0,0),随机撒一些易拉罐(每个格子至多1个易拉罐,格子有易拉罐的概率是50%)。然后让罗比根据策略在每次任务中执行200个动作。罗比的得分就是策略执行各任务的分数。策略的适应度是执行100次任务的平均得分,每次的罐子分部都不一样。
3.进化。让当前群体进化,产生下一代群体。













网友评论