在这个学期,有接触过机器学习的一些基本思想,也尝试着弄个手写识别的Demo,虽然算法不是很高级,但也从中了解到机器学习是怎么一回事,其实也就是那么一回事,最重要的是想清楚机器学习有什么用。
这个暑假,偶然的发现了粒子算法这个新鲜的名词,百度了一波,是这么一回事:【粒子群算法(Particle Swarm Optimization,简称PSO),或称粒子群优化,是属于人工智能算法,公元1995年由肯尼迪(Kennedy)与埃伯哈特(Eberhart)(1995)两位学者所提出,这两位学者借由观察鸟类族群觅食的讯息传递所得到的一个启发,粒子群算法的理论基础是以单一粒子来做为鸟类族群之中的单一个体,于算法中赋予该粒子(个体)拥有记忆性,并能够透过与粒子群体中的其他粒子之间的互动而寻求到最适解。因此在粒子群算法的基础理论可以理解,任一个体(粒子)皆可用有自身移动过程中所产生的记忆与经验,当个体移动的同时,能依造自身的经验与记忆来学习调整自身的移动方向,由于在粒子群算法中,多个粒子是同时移动的,且同时以自身经验与其他粒子所提供的经验进行比对找寻最适当的解,并使自己处于最适解中,该粒子群算法的特性使得粒子不单单受自身演化的影响,同时会对群体间的演化拥有学习性、记忆性,并使粒子本身达到最佳调整。】 但我们看到这样的解释的时候,也许会不知其所云,有的人就会自己吓自己,觉得这东西深不可测,但其实也就是那么回事。我们要懂得提取关键信息,然后用我们自己的语言去定义它。
我们姑且拿蚂蚁比作粒子,我们都知道蚂蚁是没有领袖的,也就是没有人指挥他们应该去哪里找食物的,他们也不知道食物在哪里,只能自己去找,那蚂蚁是怎么去找的呢?科学家也真是通过研究蚂蚁的这种觅食行为提出了群体智能的概念。
如果只有一只蚂蚁出去找食物,那么凭它一个人的力量,只能找到巢附近很小范围的食物, 效率很低。但当蚂蚁的数量多到一定的程度后,并且蚂蚁之间能通讯,大家就能分头去找,但有一只蚂蚁找到后就会通知其他的蚂蚁,其余的蚂蚁就跟随着找到的蚂蚁一起去寻找,这样效率就提高了不少了。
这种算法是怎么实现的呢?
初探粒子群算法
最新推荐文章于 2024-09-04 17:23:36 发布