(笔注: 这一章里,涉及到魔法原理的部分,其实是计算机科学里的启发式搜索。是真实有用的计算机知识...)
“吶,是小希米尔妹妹吗?今天不去上晚自习吗?”
久看着进来的学生,随口招呼道。
“今天的课听不懂啊。”蓝发女孩子穿着镶白边的女式蓝色校服,这款式上的线条充满了优美的力感,让艾尔拉斯有几分眼熟。她继续说道,“我感觉自己是不是不适合学魔法。”
似乎是斯拉普蒂国旧式陆军装的改版。原版的军装非常漂亮,衬出一身英气的同时,也很能体现不同性别的体态美,同时也很适合运动,曾经确实很适合作战。
不过在艾尔拉斯出生前,斯拉普蒂国就已经改用了新的军装,那是长袍的款式,类似于魔法骑士的服装。
在正常情况下,长袍并不适合近战单位作战,运动性能也不好,但附魔资源多起来之后,这些劣势就变得无足轻重了。
艾尔拉斯之所以眼熟这款式,还是因为见得多了。
斯拉普蒂国每年的各种庆典上依然会有人着此装亮相,并且,由于这套款式流行的时间超过千年,不少冒险时遭遇的遗迹里也常能见到。
“小妹妹是学生啊?想吃点什么?”艾尔拉斯迎了上去。
“我...高中一年级,是学生...随便什么都可以,只要是菠萝的...”这一迎把希米尔吓了一跳,说话都不利索了。
艾尔拉斯一个大叔,身高一米八左右,此刻一副笑脸,虽然面相还挺英俊,但过于社会人的气息,让希米尔觉得有点唐突。
“你...你是谁啊?”希米尔反应过来后,问向艾尔拉斯。
“他啊,一个外地人,家乡基本和原始人部落差不多,历史什么的都不知道...哦,除了第491代风语奏者,劳纶-斯拉普蒂,”久也没看他俩,自顾地开始制作甜品,一边吐槽艾尔拉斯,“小希米尔,那我今天给你做菠萝烤饼吧。”
“好的,谢谢久姐姐!...”希米尔有点畏惧地望向艾尔拉斯,回应了久。
骗人的吧,原始人?这个大叔看起来好社会啊。
希米尔她开学时,雪纷领主来过她的学校致辞,也有一种类似的感觉。
这些男人,看起来都有点自信,想法让人捉摸不透,公然地混淆了礼节表现和情绪体现。
这样的人面带微笑迎接你,看似礼貌,但他们却可能是爸爸说的坏家伙,可能冷酷无情,心里想着鄙视着自己的智商和情商,还可能是诱拐少女的罪犯。嗯...说起来爸爸也是坏家伙。
“诶,小妹妹别这么看着我啊,叔叔是好人。来,你先坐下,”艾尔拉斯把希米尔引到一张桌子上,“你先等会儿吧,老板娘动作很快的...”
“我知道...”
“喂,艾尔,甜品这边刚开始运作,还要十分钟才能上餐。”久听到他的话,一边操作着,一边无心地回复着。
也不管“艾尔”这个简称了,今天第一天工作,不能给老板娘留下太不好的印象吧。艾尔拉斯随即开始向希米尔找话题,“妹妹是魔法课听不懂吗?是什么魔法课啊?”
希米尔觉得很稀奇,这个男人居然这样找话题... 感觉他不像是懂魔法的样子啊,否则为什么会在甜品店帮工呢?不对,似乎又有那种会魔法的人的气质。
根本不像个普通的店小二啊。
“唔,是自动魔法的课程,今天老师讲了启发式魔法,我听得很晕...”希米尔觉得,说出细节,这个顶多对魔法一知半解的店小二,应该会认识到自己的自讨没趣,然后知难而退吧。
可惜啊少女,他懂,他太懂了。
“启发式魔法?应该还好吧。是例子没理解吗?”艾尔拉斯追问道。
少女有点吃惊,小嘴微张了一下,随即平复过来,“嗯,就是蚁群搜索魔法的应用...其实就是一个例子,对一种给定的魔力性质,在周围找出其突出的位置。比如,探测周围火元素含量丰富的位置。”
“诶,这是一个很经典很有趣的例子啊,”艾尔拉斯比划着,“蚁群搜索魔法是对蚁群搜索的魔法模拟。你知道蚂蚁是怎么找到食物集中的位置的吗?”
“啊,课上有提过一点点。蚂蚁走过的地方会留下某种叫信息素的炼金成分,而体外的信息素会随着时间挥发。又因为蚂蚁们偏好向信息素多的地方移动,最后就可以由信息素构成一条通往食物的较短路径。”少女觉得有点好玩,一个店小二,居然知道这些接近中阶的魔法知识。果然,该说不愧是久姐姐招的人嘛。
“大致正确,但还是不对,”艾尔拉斯竖起两手的食指,将他们靠拢,然后又分开,“你的描述里指出了重要的两个点,这很好。第一点,蚂蚁向信息素多的地方靠近,第二点,则是达到食物的较短路径是由蚂蚁们的信息素指示的。但是你没有指出这两点是如何联系的。这个知识书上一定是有的,但你下意识的描述只会包含你理解的部分。你之所以对那个示例魔法的原理疑惑,正是因为你没有弄懂这两点之间的联系。”
“哇,大叔,你有点东西诶。”希米尔有些惊喜地呼道。
“小妹妹别急,听叔叔慢慢讲啊。”很有意思地,艾尔拉斯久违地回忆起了一点点青年时期在学院中的小事,露出温和的微笑,“实际上魔法蚂蚁和实际的蚂蚁也有些许不同,我记得这是书本上没有的知识。也不能怪出教材的人,他们的观点太高,事情太多,反而抓不住问题之所以是问题的地方。”
“原理很简单,蚂蚁们一开始随机地从巢穴出发,并不知道食物在哪里。”
“而当一只蚂蚁找到食物,带着食物往回走的时候,他会大概随着原路回去,并留下比来的时候更多的信息素。这一点,在蚁群搜索魔法中没有直接地体现,我们之后再讨论。”
“现在指出很重要的一点,因为上述原因,当找到食物的蚂蚁回到巢穴时,他的路径上的信息素,会比没找到食物的蚂蚁多,或者说浓。能理解吗?”
“啊... 能...啊!我懂了!然后蚂蚁们就会向信息素多的那条路径靠过去,随着时间的推移,找到食物的蚂蚁们,它们路径上的信息素就越来越多!”,希米尔若有所思,“我之前就是不理解,为什么找到食物的蚂蚁的路径上的信息素会更浓,原来是回巢穴的路上做的。”
“是的,这是书上没有的部分。然后,希米尔小妹妹,我考考你,你知道为什么最后蚂蚁们会找出一条理论上是最短的路径吗?”
“嗯嗯!这个我理解!因为信息素会随着时间增长而挥发!一只小蚂蚁,在短的路径走的时间更短,信息素浓度就下降得慢;相对的,小蚂蚁在长的路径上走的时间也更长,这么长时间里,信息素挥发得多,浓度下降得也就更快!”希米尔兴奋地回应,“那么最后,短路径的信息素更浓,蚂蚁们就会靠过来,随着时间的增长,更短的路径逐渐胜过更长的路径,理论上,就可以达到最短的路径!”
“不错哟!”艾尔拉斯说道。他发现,希米尔其实是知道这个魔法步骤的。她之所以觉得疑惑,不理解,乃至构造不了魔法式,都是因为她觉得自己没有真正理解这个问题。
其实这是一个很有天分的孩子,但在学生时代,这一点不容易突出。因为在智力相近的情况下,理解问题的学生总是会慢半拍去思考,脱颖而出的则更多是善于模仿记忆的学生,“然后我们来讨论,魔法的部分吧。”
“嗯嗯,好的大叔!”
“魔法和现实的差异在于,需要考虑计算量。不考虑并行魔法的情况下,每一只蚂蚁的每一次移动,都需要消耗一定的时间进行魔法计算。如果完全模仿现实的蚁群,当然准度会很好,但是你不会希望为了探测一下附近哪里火元素多,就站在原地施法一整天吧。所以,蚁群搜索魔法的实现要点,就是去掉多余的蚂蚁移动。”
“这一步的处理,其实可以导出两种不同的蚁群搜索魔法,我先说第一个。”
“我们可以为每一只魔法蚂蚁记录它经过的路径,当它到达食物之前,我们不在路径上留下信息素;直到一只魔法蚂蚁到达食物后,我们再在它的走过的路径上,施加信息素。随后,它不需要返回,可以直接销毁。这是第一种魔法,其实效果也是最好的。”
“啊,艾尔大叔,我理解,这个好好懂的!但书上不是这种魔法诶!”希米尔叫到,少女已经完全被艾尔拉斯的知识征服了。
“是的,因为这个魔法需要一种叫做‘栈’的结构来存储蚂蚁走过的路径。目前你们应该还没有学到它,所以不会教。”
希米尔点头像是小鸡啄米,很是可爱,“那第二种魔法呢?”
“第二种就很简单了,魔法蚂蚁不需要记录它们经过的路径,但它们行走时会留下信息素,也会记住它们还能走的最远路程。一只魔法蚂蚁达到食物的时候,就会死去,不需要再回到巢穴。但它留下的信息素还在,会有新的蚂蚁被吸引过来。”
“啊啊!就是这个魔法步骤!不过总觉得,第二种魔法没有第一种魔法清晰呢,”希米尔顿了顿,悲伤地说,“假如很多的蚂蚁都在失败的途中死去了,信息素会不会乱掉呢,然后...然后蚂蚁们向乱掉的信息素移动,最后,大家根本找不到食物在哪儿...”
艾尔拉斯忽然感觉心里被触动了,他看着表情悲伤的希米尔,摸了摸她的头,“小希米尔放心哦,大叔向你保证,就算是第二种魔法,小蚂蚁们经过很久的努力,也能找到食物在哪儿!”
是的啊,艾尔拉斯脸上的神情充满说服力,他坚信并且确认了,就算某个理想的道路上布满了过来人的失败轨迹,最后的最后,也一定能够剥云见日。
他心中忽然想到了对第二种蚁群搜索魔法的改进(笔注:有读者看的话,我可以写出来,我也很有兴趣去写一下代码实现)。
“好的,大叔!”从艾尔拉斯的表情和话语中,希米尔找到了勇气,露出了开心的笑容。
“诶,说起来,自己一个甜品店店员怎么在给学生补习魔法啊?”艾尔拉斯无奈地想。
“嗨,小希米尔,菠萝烤饼做好啦!”
此时,笑容明媚的和服少女带着香气四溢的金黄色烤饼来到了桌前。