存档

文章标签 ‘仿生学’
11月
02

生命游戏&兰顿蚂蚁

最近在这里看到看到了一个开源的软件——Golly,这个主要就是研究生命游戏的,正所谓:科研软件!!【这个还有IOS上的应用】

这个说起来我想起来本科曾经用C++和opencv画过兰顿蚂蚁。。。

生命游戏,其实就是一个元胞自动机,或者叫细胞自动机(元胞自动机的第一次接触还是在本科看一位师兄写的前一届的数模论文上面看到的,用元胞自动机来分析病毒的感染问题!当时觉得很有意思,专门去接触过一下下。。),回到正题,生命游戏,名为游戏,其实就是一个零玩家的“游戏”,维基百科曰:

The “game” is a zero-player game

什么意思呢?就是说,这个游戏的结局只取决于“游戏”初始化的状况而已;起始,决定结局!那为什么叫做游戏呢?这能说这个起名字的人对这个游戏,爱得深沉!!嘛~其实这个东西还真的挺好玩的,变化太多,乐趣无穷~

简单介绍一下这个所谓的生命游戏吧,这个游戏其实就是模拟一个二维世界中的点的变化,在一个二维世界中,初始化所有点的状况,每个点只有两种状态:死,或者活!然后下一时刻,每个点的状况只取决于上一时刻这个点周围八个点的状态而已,具体如下:

  1. 周围(指周围八个点)如果只有少于等于一个点的状态是活,那么这个点下一时刻变成!可以认为是人口太少导致的。
  2. 周围如果有两个点是活的,那么下一时刻状态不变
  3. 如果有超过三个是活着的,那么下一时刻这个点会变成的状态,可以认为是竞争!
  4. 如果一个点是的,但是周围恰好有且仅有三个是活的,那么下一时刻这个点会变成的,原因可以理解为再生。

嗯,就是这样一个简单的规则,但是却可以变化出无穷的好玩的东西来。 阅读全文…

分类: Note 标签: ,
7月
16

粒子群优化(Particle Swarm Optimization, PSO)

今天突然开始发闲了,因为老板好像出差了,然后今天下午原计划是去另一个校区搞一些比较重要的事情的,但是我问那边老师下午在么?他在1点50分才回我短信说。。。2点之前他会在的。。。然后下午突然就觉得好空虚,没事干了。。

好吧,所以,今天继续上来补一篇比较简单的算法文吧,应该没什么人会看不懂的吧。。。估计。。。

RT所示,叫做粒子群优化,因为我一直管叫PSO,中文名在我脑海中的印象一直是“粒子XX算法”,我今天才突然意识到,原来有优化这两个字的,然后我就在想,这个叫做“优化”的算法都那么简单了,那么那个叫做“粒子算法”的东西是有多简单啊。。。然后查了一下,好吧,没有“粒子算法”这么一说,或者说,“粒子算法”就是“粒子群优化算法”本身。。。

可能有人听过蚁群算法,觉得粒子群算法会不会跟蚁群算法差不多,其实。。不是差得多不多的问题,完全就是两个东西,生态一点的说法,蚁群算法是模拟蚂蚁找回家的路这种最优路径问题,但是粒子群模拟的是鸟类找最适合栖息地的过程,虽说都是找最优解的问题,但是你敢说鸟类的做法可以放到蚂蚁身上?算了,过阵子我有空就再搞一篇蚁群算法的吧。。。这里姑且先开这个坑。。。 阅读全文…