第五章电脑鼠控制策略与算法研究

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第五章蚁群算法在迷宫电脑鼠中的应用

5.1 引言

许多智能问题,如下棋游戏、战略决策、机器人路径规划等都可以转化为寻找迷宫最优路径问题。传统解决迷宫最优路径问题的算法通常会随着迷宫规模的增大、复杂性的增加,算法的空间和时间复杂性呈指数增加,从而很难用于求解大规模的问题实例。从蚁群觅食过程中能够发现蚁巢与食物源之间的最短路径受到启发,并利用该过程与著名的旅行商问题( Traveling Salesman Problem, TSP)之间的相似性,意大利学者M. Dorigo等人提出了一种新型的模拟进化算法---蚁群算法[1,2]。对TSP问题的求解结果显示,蚁群算法具有极强的鲁棒性和发现较好解的能力,但同时也存在一些缺陷,如收敛速度慢、易出现停滞现象等[2]。目前,蚁群算法已在组合优化、计算机网络路由、连续函数优化、机器人路径规划、数据挖掘、电网优化等领域取得了突出的成就[2-5],实践证明该算法是一种解决优化问题特别是组合优化问题的有力工具。

5.2 迷宫的基本信息及常用迷宫搜寻策略

5.2.1 迷宫的基本信息

从比赛规则中得知,迷宫是由一个个18cm×18cm大小的方格组成的,迷宫大小为16×16,即行列各有16个方格。若将三维迷宫转化成二维图形,迷宫可用图5.1表示.

图 5.1 迷宫行列与坐标对应关系

5.2.2 常用搜寻法则和策略

5.2.2.1迷宫搜寻法则

设定搜寻法则和策略是为了电脑鼠可以以最快的方式找到终点,到达目标后随即从所走过的路径中找出一条可行路径返回起点,然后再做冲刺,直达目的;法则的设定很重要,它可以使电脑鼠不多走冤枉路,可节省很多时间而制胜。

每一只电脑鼠到达一方格时它最多有三个方向可前进,最少则因为三面都有墙,没有可以前进的方向;当遇到二个以上的可选择方向时,由于不同场合需要而有不同优先搜寻的方向顺序,常见的法则有以下几种:

①右手法则:遇叉路时,以右边为优先前进方向,然后直线方向,左边方向;

②左手法则:遇叉路时,以左边为优先前进方向,然后直线方向,右边方向;

③中左法则:与右手法则相似,不过方向选择顺序改为直线优先,然后左边,右边;

④中右法则:遇叉路时,以直线为优先前进方向,然后右边方向,左边方向;

⑤求心法则:遇叉路时,以距中心最短的那个方向优先,然后依次选择。

⑥乱数法则:以电脑鼠的随机值作为下一前进方向。

5.2.2.2迷宫搜寻策略

迷宫搜寻模式有全迷宫搜寻策略和部分迷宫搜寻策略两种:

①全迷宫搜寻策略:电脑鼠以任一搜寻法则前进到达终点后,电脑鼠会反身继续前进,然后以原设定的搜寻法则,时时检查未走过的路,直到每一方格都搜寻过后,才回起点。

②部分迷宫搜寻策略:电脑鼠以任一搜寻法则前进到达终点后,电脑鼠将沿原路线返回起点,不再进行其它搜寻。

如果比赛规则不计算搜寻时间,可采用全迷宫搜寻策略,待地毯式的搜寻过所有方格后,再计算最佳路径,作最后的冲刺,冲刺成绩一定相当不错。由于新制国际比赛规则加入搜寻时间的成绩计量,因此我们必须考虑部分迷宫搜寻策略,甚至还可能须考虑加入求心法

则,截路径功能等更智慧的法则来协助;此时找到的路径可能不是最佳路径,但保证花的时间最短。

5.2.3 迷宫问题经典算法

求解迷宫问题,经典算法有深度优先搜索和广度优先搜索两种。

①深度优先搜索(DFS):从入口出发,顺着某一方向向前探索,若能走通,则继续往前走;否则沿原路退回(回溯),换一个方向再继续探索.直至所有可能的通路都探索到为止。如果恰好某一步探索到出口,则就找到了从入口到出口的路径。为了保证在任何位置上都能沿原路退回,防止死循环,需要使用堆栈来保存大量记录。而要求解迷宫最短路径,则必须用深度优先搜索出所有到达出口的路径,通过比较得到最短距离的路径.这样也必然要求增加数据空间来保存搜索过程中当前最短路径.增加了空间复杂度。

②广度优先搜索(BFS):从入口出发,离开入口后依次访问与当前位置邻接的单元格(上下左右方向),然后分别从这些相邻单元格出发依次访问它们的邻接格,并使“先被访问的单元格的邻接格‘先于’后被访问的单元格的邻接格”被访问,直至访问到迷宫出口,则找到了迷宫问题的最优解,即迷宫最短路径。该算法的显著特点是“层层推进”,探索点会随着探索的深入急剧增加,相应地,需要大量的空间用来保存探索过程的记录.空间复杂度大。

与此同时,上述两种算法都比较抽象复杂,编程实现容易出现问题.调试比较困难,因此在本篇论文中提出了一种新的容易理解和调试的算法,该算法复杂度较低,求解较大规模的迷宫问题也有不俗的表现。

5.3蚁群算法在迷宫电脑鼠中的应用

5.3.1 蚁群算法的基本知识

5.3.1.1 蚂蚁的基本习性

蚂蚁是最古老的社会昆虫之一,它的个体结构和行为虽简单,但是由这些简单个体构成的蚂蚁群体,却表现出高度结构化的社会组织.蚂蚁王国俨然是一个小小“社会”。这里,有专司产卵的后蚁;有为数众多的从事觅食打猎、兴建屋穴、抚育后代的工蚁;有负责守卫门户、对敌作战的兵蚁;还有专备后蚁招婿纳赘的雄蚁等等.

蚂蚁是社会性昆虫,组成社会的三要素之一就是社会成员除有组织、有分工之外,还有相互的通讯和信息传递。研究表明,蚁群有着奇妙的信息系统,其中包括视觉信号、声音通讯和更为独特的无声语育,即包括化学物质不同的组合、触角信号和身体动作在内的多个征集系统,来策动其他个体.蚂蚁特有的控制自身环境的能力,是在高级形式的社会性行为及不断进化过程中获得的。

5.3.1.2蚂蚁的觅食策略

觅食行为是蚁群一个重要而有趣的行为.据昆虫学家的观察和研究,发现蚂蚁有能力在没有任何可见提示下找出从蚁穴到食物源的最短路径,并且能随环境变化适应性地搜索新的路径,产生新的选择.虽然单个蚂蚁的行为极其简单,但由大量的蚂蚁个体组成蚂蚁群体却表现出极其复杂的行为,能够完成复杂的任务。[1]

生物学家和仿生学家经过大量的细致观察研究发现,蚂蚁在觅食走过的路径上释放一种妈蚁特有的分泌物--信息激素(Pheromone).蚂蚁个体之间正是通过这种信息激素进行信息传递,从而能相互协作,完成复杂任务.在一定范围内蚂蚁能够察觉到这种信息激素并指导它的行为,当一些路径通过的蚂蚁越多,则留下的信息激素轨迹(trail )也就越多,招致后来更多的蚂蚁选择该路径的概率也越高,于是越发增加了该路径的信息素强度.这种选择过程称之为蚂蚁的自催化过程,形成一种正反馈机制,可理解为增强型学习系统.蚂蚁最终可以发现最短路径.

自然界中蚁群的自组织行为引起了昆虫学家的注

意.Deuuu-bourg等通过“双桥实验”对蚁群的觅食行为进行了研究如图5.2所示,对称双桥(两座桥的长度相同)A、B将蚁巢与食物源分开,蚂蚁从蚁巢自由地向食物源移动.实验结果显示,在初始阶段出现一段时间的震荡(由于某些随机因素,使通过某座桥上的蚂蚁数急剧增多或减少)后,蚂蚁趋向于走同一条路径. 在该实验中,绝大部分蚂蚁选择A桥.

在实验初期,A, B两座桥上都没有外激素存在,蚂蚁将以相同的概率选择A、B两座桥,故此时蚂蚁在两座桥上留下的外激素量相等.经过一段时间后,由于随机波动致使大部分蚂蚁选择A桥(也有可能为B桥),因此更多的外激素将会留在A桥上,致使A桥对后来的

相关文档
最新文档