数理仙途:初入仙门 第十七章 蚁群算法
乔闵有些犹豫,解决数千个点的TSP问题,只有一种方法,或者说一类方法。但这种方法,乔闵有些犹豫要不要告知叶水心,因为这方法,可以算是乔闵的底牌了,它不是一个算法,而是一个算法群,这算法群,共同构成了整个现代数学算法!这个算法就是--演化算法!
其实,和叶水心的熟识,只有短短几月,但这短短的几月,却彼此交心。所谓白首如新倾盖如故,情谊的深厚与否,时间并非核心要素!
同时,乔闵也明显的感觉到,叶水心也已经到了将自己视为生死相托的人了,这不是莫名其妙的三大人生错觉啥的。
乔闵做了决定了。他一脸正色的说道:“水心,我确实有方法让你百脉贯通,而且可保证不会比你家族的法门差,但是,这方法,可谓是我的最大的底牌之一,所以我希望,未经过我允许,你不要将这方法传给别人,包括你的亲人!”
叶水心立刻明白了,此事真的是事关重大,自己无比看中的关联开关问题的问题之道,乔闵眼中不值一提。而连乔闵也重视的问题之道,那会是何等精深!
“我叶水心向天道起誓,今日乔闵所传授的算法之道,未经乔闵允许,我绝对不会传授给任何人,包括我的亲人,如违此誓,就让我…”
“行了,可以了!”乔闵打断道:“我来教你怎么解决吧,该用什么方法呢?嗯…”
演化算法是一个算法群,包括非常多的算法,经典的包括蚁群算法,粒子群算法,遗传算法,差分演化算法,分布估计算法等,每个算法都能解决这类问题,但其核心思想却相差极大。
该选择哪种算法呢?乔闵仔细思索了一下后说“我教你蚁群算法吧来解决这个问题吧。”
“假设有一群蚂蚁,在蚂蚁巢附近寻找食物,当它们寻找食物的时候,会沿途洒落信息素,其他蚂蚁可根据信息素快速寻找到食物。而信息素会随着时间逐步消散……”
(有兴趣的同学可以查阅蚁群算法求解TSP问题,不再继续列举了,篇幅太啰嗦,这毕竟是小说不是学术论文!)
足足花费了一整天时间,叶水心才明白这一问题之道。当弄懂整个过程的她,惊讶的无以复加。
蚁群算法,是种模仿蚂蚁觅食行为的算法,这种算法,面对复杂问题,不是追求一蹴而就,而是迭代式改进,一步步地缓慢改进。借助于一种称之为信息素的设定,让后面的蚂蚁可以依据各路信息素的浓度决定前行的路径,但又不至于完全被信息素限制而失去对未知决策空间的探索,充分发挥了群体智能特性。
一直以来,叶水心都觉得乔闵很智慧,但即使智慧近妖,也不可能智慧到如此程度,这种问题之道,简直如同神明,不,在叶水心心中,这个比喻实在是太抬举神明了!
而且,这问题之道,竟然不是只针对这个问题的问题之道,竟然是一种普适之道!叶水心可以明白,这种求解框架,非常容易用来求解多种类型的问题,以叶水心的眼光,她可以看明白,这个算法之道如果在大陆上流传出去,将代表上千万极品灵石的价值!
然而,乔闵竟然无条件的将这么珍贵的问题之道告知自己,他并不是不知道这个问题之道的价值,虽然可能有所低估。之前乔闵眼中的一闪而过的挣扎自己也看到了,但他依然将这个交给了自己。
如果是别人,或许会认为乔闵这是为了出去,但叶水心并不这么想,她甚至相信,不依靠自己,乔闵或许也有自己一人出去的方法,元婴期的阵法而已,真的能困得住乔闵吗?未必然,只是没把乔闵逼急了罢了,或者,白云瑶和自己才是他离开的拖累。
想至此,叶水心眼中几丝光芒闪烁,仿佛是做了什么决定一样,不过很快隐去不见。
然后,叶水心意识沉入心神之中,以神识模拟蚁群算法的运行。
当开始时,一次百脉贯通需要五个时辰才能完成,然后反复迭代,当蚁群算法运行100代时,最优的一次百脉贯通的时间已经降低到两个半时辰,随着次数的增加,能优化的空间也逐步减小,到一千次迭代时,百脉贯通时间已经减少为一个半时辰,最终,以叶水心的修为,也只能支持心神运转三千次迭代,百脉贯通的时间降低为90分钟。(时辰,一盏茶,一炷香之类的计时系统有时候很不好使,我混用了,在此说明下)
叶水心心神之力耗尽,不过不要紧,蚁群算法是一种记录当前所有状态后,可以重新从当前位置启动的算法,然后叶水心通过冥想恢复神魂之力,当恢复完毕后继续演化。
当叶水心迭代到5万次时,百脉贯通的时间降低为75分钟。根据家族文献记载,而星云九变的是否强大,有几个重要关节点,而百脉贯通的时间,是一个重要的决定因素之一,每快一丝,对未来都是巨大的助益。
时间还足够,手环内的魔兽还可以坚持一个月,这一个月,叶水心全力推演,而白云瑶也在趁机消化自己吸收的庞大元气,乔闵外挂时间到了,只好重新走悟之道,偶尔和白云瑶对战一下,锻炼自己的实战能力。
魔兽肉已经告罄了,这一月,蚁群算法迭代了十六万次,将百脉贯通的时间降低为58分钟,叶水心眼中闪过一丝遗憾,如果再给自己一年时间,自己的百脉贯通时间能降低到50分钟,这8分钟的差距,绝对值得自己花费一年时间,甚至花费两年时间也是值得的。
只不过,如果不是在这个特殊环境里,除非自己和乔闵结为伴侣,否则,乔闵不可能会把自己的立身之道随意告诉自己的。
不过,58分钟内便实现百脉贯通,自己之前完全不敢想象的。家族中记载的修习星云九变的人,最快速度是165分钟,一位修为通天的老祖,不过在千年前陨落了,然而和自己差别,不可道以里记!
在这个关节点上,自己已经远远领先了,达到了前无古人的状态!何止前无古人啊,已经强大到古人今人已经完全无法望其项背的程度了。
蚁群算法,竟强大如斯!