美文网首页
复杂领读-第9章遗传算法

复杂领读-第9章遗传算法

作者: 小雨读书写作 | 来源:发表于2018-02-26 20:32 被阅读49次
一、选择的重要性。

我每天都面临很多的选择,选择的好坏,直接影响到未来的结果跟成效。

在面临同样的问题时候,我们总能做出同样的选择,但这样的选择不一定是最优的。更差一点的情况是更常见的情况,就是即使已经是重复发生,我们依然会焦头烂额,不知道怎么去做。

那怎样才能更好的做出更优的选择呢。

有的人说了,当你成熟了,你自然会懂了,随着时间的推移,你接触到的多了,思考的多了,你的选择自然也更优化了。人的一辈子时间有限,但是是人类发展呢我们发现人类的发展速度是越来越快了

我们人一辈子时间是有限的,怎么能更快的发展呢?当今时代信息这么多,我们怎么更好的利用这样的信息呢?我们只通过一个人来进行抉择,当然就没有那么优化了,所以在智能算法出现之后,给我们一个很好的契机。

二、遗传算法的讲解

遗传算法,正是这样一种,基于自然进化论的优胜劣汰方法。

遗传算法(Genetic Algorithm, GA)是近几年发展起来的一种崭新的全局优化算法。1975年霍兰德(Holland)教授在其著作《自然和人工系统的适用中》提出了GA算法的思构想,它借用了仿真生物遗传学和自然选择 机理,通过自然选择、遗传、变异等作用机制,实现各个个体的适应性的提高。从某种程度上说遗传算法是对生物进化过程进行的数学方式仿真。

这一点体现了自然界中"物竞天择、适者生存"进化过程。与自然界相似,遗传算法对求解问题的本身一无所知,它所需要的仅是对算法所产生的每个染色体 进行评价,把问题的解表示成染色体,并基于适应值来选择染色体,使适应性好的染色体有更多的繁殖机会。在算法中也即是以二进制编码的串。并且,在执行遗传 算法之前,给出一群染色体,也即是假设解。然后,把这些假设解置于问题的“环境”中,也即一个适应度函数中来评价。并按适者生存的原则,从中选择出较适应 环境的染色体进行复制, 淘汰低适应度的个体,再通过交叉,变异过程产生更适应环境的新一代染色体群。对这个新种群进行下一轮进化,至到最适合环境的值。

遗传算法已用于求解带有应用前景的一些问题,例如遗传程序设计、函数优化、排序问题、人工神经网络、分类系统、计算机图像处理和机器人运动规划等。

从算法中最重要的组成部分,要有目标函数、初始值、预定的迭代次数、迭代的策略。

三、例子

书中例子:一个扫地机器人,如何在限定的步数内得到更高的分数。评分规则,扣分项,撞墙,无效动作。加分项,捡到一个垃圾。简单的理解就是,多捡垃圾,少撞墙,这就是他的目标。他的得分呢就是在这个规则,评分规则下的目标函数。

电影例子:上面的讲解可能是过于学术化,难于理解。相信有些朋友看过前几年的《明日边缘》这个电影,在电影中,阿汤哥为了寻找并打败敌人的方法死了几百次。

阿汤哥每次的死亡后,满血复活就是一次迭代。每次死亡都会给他带来一定的经验。他更可以通过一支测试来判断他策略的有效性。通过300多次的死亡,最终达成了他消灭最后大boss的使命。

四、带来新的启发

1.明确目标

我们俩一定要了解,优化算法的前提是有一个明确的目标。这个目标一定要明确,就当你明确了方向,嗯,在这个方向上专心专注,这样才有可能成功。

这个目标一定是要可以量化的,可以进行检测,可以进行回顾的,如果你的目标,非常的模糊,不具象。那当我们完成一次,事件或者试验后,我们就没有办法衡量,它通往目标之间的差距。

2.良好的初始值

跟着你,我们一定要看到良好的初始值是很必要的。我们有个好的开始,那么我们得到优化结果,或者说中秋节过的速度多快。反正我们日常的学习生活中如何找到一个良好的初始值呢?认为,读一本,经典的书,是非常,有效的,特别是在那些,嗯一个领域中,经久不衰,长期的经典书目,比如说在读书方法中,如何阅读一本书,就是这样一本,经典书目,比如说在管理学中。卓有成效的管理者,就是必备必看的英文书目。在完成这些经典的书目及阅读后,我们自身就有了一定的基础就一定的。

3.初期不怕失败

在书中,我们也看到扫地机器人的例子,在前十次的迭代中,他的得分甚至是负分。你怎么说?在初期我们如果没有,有好的办法,失败是在所难免的。笑脸常是敢于尝试,而不是在前试了几次之后就认为自己是。天赋不足,先天缺陷。

4.不断迭代

当我们明确目标,设置了初始的,有了良好的开始后。我们要做的是加速我们的迭代,不断的迭代,在跌宕中优化,在迭代中完善。每一次错误都是我们在未来的一个良好好的经验。那如何提醒一个迭代呢,怎么开始玩谍战呢?我们建议的就是总结反思,法师真是一个极大的力气我们当我们固定时间反思后,我们可以反思哪些做得好,哪些做得不好,做得好的,我们可以继承,做得不好的,我们一定要回避,当我们不断的完善后,那我们可能进入一个两个平台。

5.加速迭代

所谓加速迭代就是门把一件事情才分成很多具体的小步骤,我们把迭代的时间缩短,把迭代的成本降低,当一件事情,犯错后的后果很小时我们就应该去尝试不断的尝试,在不断尝试中吸取经验积累知识。

另一方面我们要找到一个好的,老师。三个导师可以找我们及时对我们提升周边进行检验。

然后让我们在这个不确定的时代确定的成长。小步迭代,快速成长,成为一个超级个体。

相关文章

网友评论

      本文标题:复杂领读-第9章遗传算法

      本文链接:https://www.haomeiwen.com/subject/bupzzxtx.html