沿墙法分为:左手法和右手法。
沿墙法直观易懂,便于实现,算是“解迷宫算法”的入门,尤其当实现了直观动画演示后,即便小学生花一些工夫,也能上手。
沿墙法对于一些小规模的迷宫,比如:大疆无人机穿越迷宫比赛小学组中的3×4,中学组中的5×5……还是比较友好的。
兴之所至,突发奇想,想测试一下沿墙法的能耐,便做了一个8×8的迷宫,便已然发现这种算法的低效了,想想国际解迷宫大赛中的16×16共256个单元格的迷宫,“沿墙法”必是被玩剩和淘汰掉的!无奈,其他的算法实在太难……
下面是7组测试视频:
(1)连续围墙_左手法:共转向52次,前进52格,返回路径20格
(2)连续围墙_右手法:共转向94次,前进76格,返回路径20格
可见:同样的迷宫,采用左手法和右手法的搜寻效率不见得一致,有些迷宫和初始条件有利于左手法,有些迷宫和初始条件有利于右手法。
(3)存在独立围墙_左手法:进入死循环,任务失败
(4)存在独立围墙_右手法:共转向84次,前进68格,返回路径22格
可见:沿墙法适用于”连续围墙“迷宫,若一个迷宫中的围墙存在”孤岛“,则必然会让左手法或右手法陷入窘境。
(5)随机宝藏位置_右手法:共转向99次,前进87格,返回路径35格
(6)随机起点终点_左手法:共转向122次,前进114格,返回路径26格
(7)随机起点终点_右手法:共转向91次,前进76格,返回路径36格
本文可以作为解迷宫算法的兴趣入门,权作投石问路。
Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved