A-1rule-half人工智慧半尺寸电脑鼠走迷宫竞赛规则
- 格式:pdf
- 大小:3.95 MB
- 文档页数:5
小型机器人走迷宫(地面循迹)一、场地场地组成:竞赛场地由10×10块正方形模块组成,每块模块为20cm×20cm。
模块表面底色刷白色油漆,底色上利用黑色压光油漆绘出轨迹,所有模块包括如下5种:a) b) c) d) e)1:只有3号对管检测到黑线(如a),180度转弯2: 只有3号和6好对管检测到黑线(如b),直走3: 只要当左边三个对管(1&2&3号)都检测到黑线(如c, d, e,),左转90度。
4:右边三对管(3&4&5号)都检测到黑线,6号没检测到黑线(如c),右转90度。
5:右边三对管(3&4&5号)都检测到黑线,6号也检测到黑线(如d),直走。
注:6号对管位置稍靠前,前后位置差大于黑线宽。
所有模块包括出发(终止)区、转折区和中间赛道。
出发(终止)区为竞赛的起点和终点,转折区为竞赛单程的终点,这两个区域均采用a)类模块。
赛场中间赛道可采用以上任意一类模块。
转折点、终点采用a)类模块,并在轨迹所对的底边安装一个到位碰撞开关。
二、比赛用小型机器人竞赛所使用的小型机器人长宽不应大于20cm×20cm,其它结构、控制方式、运动方式不做要求。
三、比赛过程准备:机器人停放在出发区,面向出口;启动:出发区利用喇叭发出一声短促的“滴”声作为启动指令,机器人收到声音后立即启动,同时计时系统开始计时;正向穿越迷宫:机器人自主循迹,搜索达到转折点的路径,到达转折点须碰撞到位开关;返回终点:比赛终点即出发区,机器人从转折点折返,以正程搜索的最短路径返回出发区并碰撞终点到位开关,计时系统停止计时。
四、胜负判决比赛以机器人在迷宫中往返所需总时间为判决依据,用时短者获胜。
五、违规机器人必须沿地面轨迹行驶,若直接穿越白色地面从某地面轨迹进入另一轨迹则视为违规;机器人脱离2m×2m的赛场则视为违规。
发生违规的机器人应退回起点,重新开始,但用时累计。
走迷宫游戏规则迷宫游戏是一种古老而经典的游戏,它考验着玩家的智力和耐心。
在迷宫游戏中,玩家需要在错综复杂的迷宫中找到出口,并尽可能快地脱离迷宫。
下面是迷宫游戏的规则和玩法。
1. 游戏准备在开始游戏之前,需要准备一个迷宫地图和一个游戏棋子。
迷宫地图是一个由通道和墙壁组成的图形,玩家需要在其中寻找出口。
游戏棋子则是用来表示玩家在迷宫中的位置,通常是一个小标志物或者棋子。
2. 游戏目标玩家的目标是在迷宫中找到出口,并尽可能快地脱离迷宫。
出口通常位于迷宫的某个角落或者边缘,玩家需要通过移动游戏棋子来找到出口并脱离迷宫。
3. 游戏规则玩家需要按照以下规则进行游戏:- 每次只能向上、下、左、右四个方向移动一格,不能斜向移动。
- 不能穿墙而过,只能沿着通道移动。
- 不能在同一个位置停留两次,每次移动都必须前进一步。
- 如果走入了死胡同,需要返回到上一个位置重新选择路径。
- 如果玩家找到了出口,则游戏结束,记录下用时。
4. 游戏技巧在玩迷宫游戏时,有一些技巧可以帮助玩家更快地找到出口:- 观察整个迷宫地图,找出可能的路径和死胡同。
- 从出发点开始,尝试不同的路径,找出最有效的前进方向。
- 在移动棋子时,不要盲目前进,要考虑每一步的后果。
- 如果迷宫地图比较复杂,可以先在纸上绘制一张简单的地图,用来辅助寻找出口。
5. 游戏结束当玩家找到出口并成功脱离迷宫时,游戏结束。
玩家可以记录下自己的用时,并与其他玩家进行比较,看看谁能在最短的时间内找到出口。
迷宫游戏是一种考验智力和耐心的经典游戏,它不仅能锻炼玩家的思维能力,还能提高玩家的观察力和逻辑思维能力。
希望以上规则和技巧能帮助玩家更好地玩迷宫游戏,并享受其中的乐趣。
一种电脑鼠走迷宫算法作者:周杰来源:《电脑知识与技术》2018年第03期摘要:该文通过对电脑鼠走迷宫算法的研究,提出了一种电脑鼠走迷宫算法,该算法引用了斜线K和Z用以更新期望坐标,并将迷宫分割为多个部分,以斜线K上的点为起点坐标,下一条斜线K上的点为期望终点坐标,找到起点坐标和终点坐标的最优解,以局部最优,引出全局最优找到最佳路径,并与传统走迷宫算法进行比较,提高了迷宫搜索效率。
关键词:迷宫;斜线;局部最优;最佳路径中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2018)03-0053-031 概述电脑鼠是一种机电一体化装置,是由单片机、传感器、机电运动部件组成的一种能在迷宫行走的小型机器人可以通过预先设定的算法,探索迷宫,可以找到一条从预设的起点到终点的最佳路径,运行环境是由一个16X16正方形单元格所组成的迷宫,其中单元格的大小为18cmX18cm,文献[1][2]给出了电脑鼠走迷宫的相关规则,每一个单元格有相应的挡板组成,电脑鼠的目的是在最短的时间内找到出口,在整个电脑鼠中最重要的是硬件的可靠性和算法的优劣,在当今单片机迅速发展的时代,硬件稳定性上已经趋于稳定,本文主要研究和设计搜索迷宫算法,并提出了一种电脑鼠搜索迷宫的算法。
2 迷宫环境建模电脑鼠不具有思维能力,它只能按照我们设定的算法运行,因此需要模拟现场运行环境[6][7].构建一个16X16的迷宫,迷宫的水平方向为Y轴,垂直方向为X轴,第一个坐标为(1,1),那么依次下去最上角的坐标为(16,16)。
迷宫构建图,如图1 所示,迷宫内的挡板信息未知。
假设起点为(1,1)终点为(16,16),现在规定,X方向为地理北,Y方向为地理南,如图2所示。
对于当前坐标,和下一步目标,两个坐标的差值比如(X1,Y1)-(X2,Y2)。
(1,0)表示电脑鼠向北前进一步。
其中差值(0,1)表示向东前进一步,(-1,0)表示向南前进一步,(0,-1)表示向西前进一步。
电脑鼠走迷宫智能算法的研究与优化王艺宁;蒋涵;王博;于娜【摘要】电脑鼠(Micromouse)是智能机电鼠的简称,实际上是一个由微处理器控制的,集感知、判断、行走功能于一体,能够自动寻找最佳路径到达目的地的微型机器人.该文简要分析了电脑鼠的硬件组成和工作原理,在此基础上重点对电脑鼠软件部分的探测策略模块、等高图制作模块、冲刺模块进行了分析研究与优化,并通过大量实验进行了验证.实验结果表明优化后的算法能够在一定程度上有效地提高电脑鼠走迷宫的运行速度、减少电脑鼠的搜索时间.【期刊名称】《科技创新导报》【年(卷),期】2015(000)032【总页数】3页(P129-130,132)【关键词】电脑鼠;嵌入式系统;智能算法;搜索法则【作者】王艺宁;蒋涵;王博;于娜【作者单位】天津农学院计算机与信息工程学院天津 300384;天津农学院计算机与信息工程学院天津 300384;天津农学院计算机与信息工程学院天津 300384;天津农学院计算机与信息工程学院天津 300384【正文语种】中文【中图分类】TP36该文以TQD-Micromouse-JZ电脑鼠为研究对象,以电脑鼠走迷宫比赛为背景。
电脑鼠车体采用四轮驱动结构,内核控制器采用32位ARM Cortex-M3 STM32,控制和检测红外传感器;微控制器根据检测到的传感信号,控制电机驱动电路,调整行走,按照载入搜索算法进行迷宫的探测,寻找最短路径,最终实现从起点到终点的冲刺。
该部分主要研究的是TQD-Micromouse-JZ电脑鼠的硬件设计,针对电源模块、微控制器单元模块、传感器模块和直流电机控制模块[1]四个模块进行研究。
其中ARM Cortex-M3 STM32内核控制器是电脑鼠的核心,通过检测传感器信号,结合载入的搜索算法,控制直流电机,从而实现电脑鼠在迷宫中的行走。
电脑鼠的软件部分主要用来检测迷宫环境,传送控制信号给相应的硬件模块,对在迷宫中行走的电脑鼠进行制导与导航[2]。
项目编号:31SZDYKC-090601 全国大学生电子设计竞赛项目名称:电脑鼠走迷宫学生班级:1104班学生姓名:王忆文所在系(部):通信工程系指导教师:摘要“电脑鼠”是使用嵌入式微控制器、传感器和机电运动部件构成的一种微型机器人,可以在“迷宫”中自动记忆和选择路径,快速地达到所设定的目的地。
电脑鼠走迷宫竞赛是一项具有一定难度、富有挑战性和趣味性的比赛。
能力。
通过系统分析、硬件设计、软件设计、整合电路设计、汇编语言、C语言专业知识解决问题的综合应用能力,激发我们对电脑鼠的研究兴趣。
创新点是提出了对电脑鼠电源电路、传感器电路的改进方案。
给出了电机控制算法、用于纠正姿态的算法、传感器驱动算法、连续转弯算法、迷宫信息采集算法以及迷宫搜索与迷宫最短路径算法等算法模块。
关键词:嵌入式系统,电脑鼠,智能算法ABSTRACT"Computer mouse" is the use of embedded microcontrollers, sensors and electromechanical moving parts consisting of a micro-robot maze memory and automatically select the path to reach the set destination. Computer Mouse Maze Competition is a certain degree of difficulty, challenging and fun game.completion of the research program circuit board testing, knowledge and technical skills in the school curriculum learning algorithm, data query and retrieval, project management, integration cultivate awareness of scientific and technological innovation and hands-on design capabilities. System analysis, hardware design, software design, integrated circuit design, assembly language, C language application of knowledge in the development of SCM culture integrated application skills, stimulate our interest in the study of computer mouse use our expertise to solve the problem.The innovation of the computer mouse power circuit, sensor circuit improvement program. Motor control algorithm, the algorithm used to correct posture, the sensor-driven algorithm, continuous turning algorithm, the maze information collection algorithms, and maze search maze shortest path algorithm, algorithm module.Keywords:Embedded System,Micromouse,Intellegent Algorithm目录摘要 (2)第一章前言 (2)1.1项目背景 (2)1.2项目介绍第三章电脑鼠硬件与软件 (2)第二章电脑鼠硬件及软件 (4)2.1电脑鼠的硬件 (4)2.1.1 电脑鼠硬件组成 (4)2.1.2电脑鼠基本动作 (6)2.2电脑鼠软件 (7)2.2.1等高图制作模块 (9)2.2.2冲刺模块 (10)2.2.3转弯模块 (10)2.2.4搜索模块 (11)2.2.5迷宫地图相对方向与绝对方向的建立 (11)2.2.6墙壁资料存储 (13)2.2.7电脑鼠搜索策略第四章问题总结及改进 (14)第三章问题总结及改进 (15)总结 (19)参考文献 (20)第一章前言所谓“电脑鼠”,英文名叫做MicroMouse,是使用嵌入式微控制器、传感器和机电运动部件构成的一种智能行走装置的俗称。
人工智能_奥赛罗棋B y QQ:231469242欢迎共同爱好者交流,并改进代码奉承开源精神,公开源码。
我赢了电脑(低级人工智能),computerMove()算法需要不断改进测试中注意:走棋格式64 或55等等两个连接数字,但必须要吃对方子,否则电脑会提示无效走棋黑白棋,又叫反棋(Reversi)、奥赛罗棋(Othello)、苹果棋或翻转棋。
黑白棋在西方和日本很流行。
游戏通过相互翻转对方的棋子,最后以棋盘上谁的棋子多来判断胜负。
它的游戏规则简单,因此上手很容易,但是它的变化又非常复杂。
有一种说法是:只需要几分钟学会它,却需要一生的时间去精通它。
黑白棋是19世纪末英国人发明的。
直到上个世纪70年代日本人长谷川五郎将其进行发展和推广,借用莎士比亚名剧奥赛罗(othello)为这个游戏重新命名(日语“オセロ”),也就是现在大家玩的黑白棋。
为何借用莎士比亚名剧呢?是因为奥赛罗是莎士比亚一个名剧的男主角。
他是一个黑人,妻子是白人,因受小人挑拨,怀疑妻子不忠一直情海翻波,最终亲手把妻子杀死。
后来真相大白,奥赛罗懊悔不已,自杀而死。
黑白棋就是借用这个黑人白人斗争的故事而命名。
游戏规则黑白棋的棋盘是一个有8*8方格的棋盘。
下棋时将棋下在空格中间,而不是像围棋一样下在交叉点上。
开始时在棋盘正中有两白两黑四个棋子交叉放置,黑棋总是先下子。
下子的方法把自己颜色的棋子放在棋盘的空格上,而当自己放下的棋子在横、竖、斜八个方向内有一个自己的棋子,则被夹在中间的全部翻转会成为自己的棋子。
并且,只有在可以翻转棋子的地方才可以下子。
棋规1.棋局开始时黑棋位于e4和d5,白棋位于d4和e5,如图1-3所示。
2.黑方先行,双方交替下棋。
3.一步合法的棋步包括:在一个空格新落下一个棋子,并且翻转对手一个或多个棋子。
4.新落下的棋子与棋盘上已有的同色棋子间,对方被夹住的所有棋子都要翻转过来。
可以是横着夹,竖着夹,或是斜着夹。
夹住的位置上必须全部是对手的棋子,不能有空格。
问题描述迷宫图从入口到出口有若干条通路,求从入口到出口最短路径的走法图迷宫示意图设计原理图为一简单迷宫示意图的平面坐标表示。
以平面坐标图来表示迷宫的通路时,问题的状态以所处的坐标位置来表示,即综合数据库定义为{(x, y) | 1< 4},则迷宫问题归结为求解从(1,1)到(4, 4)的最短路径。
迷宫走法规定为向东、南、西、北前进一步,由此可得规则集简化形式如下。
右移R1: if(x, y) then (x+1, y)如果当前在(x, y)点,则向右移动一步下移R2: if(x, y) then (x,y -1)如果当前在(x, y)点,则向下移动一步左移R1:if(x, y) then (x -1,y)如果当前在(x, y)点,则向左移动一步上移R2: if(x, y) then (x, y+1)如果当前在(x, y)点,则向上移动一步给出其状态空间如图所示2图2. 1状态空间图(4,3)(4,4<为求得最佳路径,可使用A*算法。
A算法f函数定义f(n) = g(n) + h(n)设:每一步的耗散值为1 (单位耗散值) 定义:g(n) = d(n)从初始节点s到当前节点n 的搜索深度h(n) = | X g—X n | + | Y g—Y n | 当前节点n与目标节点间的坐标距离其中:(X g, Y0目标节点g坐标(X n, Yi )当前节点n坐标显然满足:h( n) £(h)OPEN表节点排序⑴按照f值升序排列⑵如果f值相同,则深度优先A*算法的搜索过程如下:1、O PEN= (s), f(s)=g(s)+h(s)2、LOOP if OPEN= ( ) then EXIT(FAIL)3、n J FIRST(OPEN)4、i f GOAL(n) THEN EXIT(SUCCESS)5、R EMOVE(n,OPE,ADD(n,CLOSED)6、{m i I J EXPAND(n)①计算f(n,m i)=g(n,m)+h(m i),(自s过n, m i到目标节点的耗散值)②ADD(m,OPEN)标记m j到n的指针(m j不在OPEN和CLOSE中)③if f(n,m k) v f(m k) then f(m k) J f(n,m,标记m k到n 的指针(m k在OPEN 中)④ if f(n,m i ) v f(m i ) then f(m i ) J f(n,m i ),标记 m i 到 n 的指针(m i 在 CLOSE 中)ADD(m,OPEN)把 m i 放回至U OPEN 中7、 O PEN 中的节点按照f 值升序排列8、 G O LOOPf =5+3^8 (1,4) (3f =6+2=8(4;3〉 f =7+l=P (4f=8+0=8 国N2 A*搜窒空间图则其搜索结果如图所示(1,1 )图迷宫搜索结果示意图A *算法的搜索图示如图所示返回迷宫问题 (1,1) I =<十 h=0+6^6f =1+5=6f =2-^4=6 C2,2)f =4+4=8_fx+ 2出口三、详细设计(1)数据结构设计①为了在程序中表示迷宫图,定义了一个6*6的二维整型数组int Maze[7][7]={{3,1,3,1,3,0,3},{0,4,1,4,1,4,1},{3,1,3,0,3,1,3},{1,4,1,4,1,4,1},{3,0,3,1,3,0,3},{1,4,1,4,1,4,1}, {3,0,3,1,3,1,3}};其中数字3代表坐标点,1代表两个坐标点之间存在路径,0代表两个坐标点之间不存在路径,数字4没有意义。
北京赛区2009全国“电脑鼠走迷宫”竞赛规则补充说明1.计时方法电脑鼠在规定的十五分钟内可运行任意次。
每一次的成绩都由迷宫时间、运行时间和碰触奖惩三部分组成,取多次运行中最短排障时间作为最终成绩。
根据《IEEE电脑鼠走迷宫竞赛规则》中对于迷宫时间的定义“从电脑鼠的第一次激活到每次运行开始,这段期间所花费的时间称为迷宫时间”,具体计时方法如下:例1:信息记录在《比赛计时表例1》并自动计算假设电脑鼠第一次启动后(计时员统一起表)经过100秒到达迷宫终点(计时员掐表记录第一个时间点),那么第一次运行时间Y1=100秒,运行过程中没有发生碰触,奖励10秒。
由于是第一次运行没有迷宫时间即M1=0,因此第一次排障时间是:P1=100 – 10 = 90(秒)电脑鼠离开终点后又花费了140秒时间用于搜索迷宫信息并回到起点自动180度回转(计时员掐表记录第二个时间点),后根据找出的最短路径以最快速度冲刺到终点(计时员掐表记录第三个时间点),耗时20秒,那么第二次运行时间Y2=20秒,迷宫时间是之前的运行时间100秒加上后续搜索迷宫的140秒,即M2=240秒。
没有发生碰触,那么第二次排障时间是:P2=240/30 + 20 – 10 = 18(秒)这只电脑鼠经过25秒回到起点,此时操作员将电脑鼠拿起除去车轮上的灰尘或是进行其他操作耗费30秒,记为第一次碰触。
再次放回迷宫(计时员掐表记录第四个时间点),后以最快速度从起点冲向终点(计时员掐表记录第五个时间点),此次耗费时间19秒,那么第三次的运行时间Y3=19秒,而此次的迷宫时间包括之前的所有时间,包括第二次的迷宫时间240秒,第二次的运行时间20秒,回到起点的25秒和除尘等操作耗去的30秒,此次的迷宫时间M3=315秒,碰触一次,没有奖惩,那么第三次运行成绩为:P3=315/30 + 19= 29.5(秒)如果此时向裁判请求结束比赛那么取三次最好成绩18秒作为最终成绩。
机器人迷宫挑战赛规则(小学组 A)一、概述•美国加州一对夫妇在一条小路的地下发现了一个古老陶罐,陶罐装满了稀有的古钱币,后来他们又发现了5个装满古钱币的陶罐。
初步估计这6个陶罐里所有的古钱币有着很高的收藏价值。
在1849年,美国加州发现了金矿,这使得美国东海岸的淘金者纷纷闯入。
•你现在就是其中的淘金者,聪明勇敢的你,需要制作一台遥控机器人,自行操控这台机器人进入古老的地下迷宫,并找到宝藏,而且要在规定的时间内离开迷宫。
二、机器人规格要求1.机器人的外形尺寸,是指机器人在比赛过程中所有部位展开后测得的最大尺寸。
不得超过30cm、宽30cm、高30cm。
2.机器人的重量不限。
3.比赛中“机器”的性能与“人”的能力呈现较大差距,为充分考察选手的实际能力与真实水平,要求比赛机器人使用的马达不得超过2个,电池电压不得超过7v。
4.机器人需要使用“凤凰EQ机器人-小学组A竞赛套装”,每支队伍最多使用两套竞赛套装,竞赛时机器人仅允许使用一台主机。
5.任何对机器人主控器、电机、电池等电子元件的改造都是违规的,如果发生以上情况,则取消竞赛资格。
6.竞赛顺序由组委会预先抽签决定。
三、队伍组成1.每支队伍人数为2人,其中一人为队长。
每位参赛队员应能够在团队中发挥作用,并获得最大化的学习与竞赛经验。
2.在机器人搭建、调试过程中,队员间可以互相合作完成。
但竞赛中的操作、决断,应当由队长一人完成。
但为了使更多队员获得锻炼机会,每轮竞赛的队长可以更换。
3.竞赛期间遇到的任何结构与技术上的问题应当由学生自主解决,不得有教练员协助与参与;不可通过手机、对讲机向教练员进行求助,教练员不允许进入竞赛场地,组委会将组织人员在赛场内外巡视,一经发现将取消参赛资格。
4.参赛队伍在参赛中途短暂离场,需要向裁判申请,不得携带机器人零件出入赛场。
四、竞赛1.参赛队抽签决定出场顺序,进行竞赛。
赛前会有1小时的制作时间,机器人需要携带散件入场。
竞赛有2轮,第一轮竞赛完毕,由本组另一位选手进行第二轮竞赛。
电脑⿏⾛迷宫电脑⿏⾛迷宫算法改进及仿真测试(部分)2.3.5 迷宫算法改进迷宫最优路径是指从迷宫的⼊⼝到达迷宫出⼝的最短通路。
传统求解迷宫路径问题的算法⼤多采⽤⼴度优先搜索(BFS)或深度优先搜索(DFS)。
由于需要全迷宫搜索,随着迷宫规模的增⼤和复杂性的增加,上述两种算法的空间和时间复杂性将呈指数增加。
针对以上问题,本论⽂对传统算法进⾏优化改进讨论,核⼼思想是利⽤已经探索得知的迷宫信息排除不包含最短路径信息的迷宫格,不予探索。
1、单⾏、单列死点的死胡同排除算法该算法核⼼内容是进⾏数据补全,减少电脑⿏进⼊“死胡同”的次数。
其实迷宫单元的信息并不是只有访问过才能够得到,通过推断的⽅法也是可以得到的。
利⽤某个单元四周的⽅格的信息,就可以推断出此单元的信息,⽽并不需要每⼀个单元都进⾏访问。
如果⼀个迷宫单元三个⽅向有挡板,并且当该迷宫格不是终点时,那么电脑⿏进⼊该迷宫格后必然返回,这对于寻找最短路径信息⽆⽤,此时将该迷宫格第四个⽅向⼀同标记,亦即将迷宫格封闭,不让电脑⿏进⼊该迷宫格,以达到缩短探索时间的⽬的。
如图2.10中圆圈区域,当其四周搜索过时,电脑⿏不应对此区域进⾏访问。
图2.10 死胡同实例根据电脑⿏迷宫特性,迷宫四周的挡板是肯定存在的,可先进⾏预先处理。
⽽且终点四个单元的周围的⼋块挡板有且仅有⼀个是不存在的。
当电脑⿏到达终点,在明确哪个挡板不存在的同时,⽆论其它挡板是否进⾏探测过,都可将它视为挡板存在。
2、多⾏、多列死点的死区域排除算法传统搜索算法中电脑⿏从当前单元移动到下⼀单元的依据是有⽆挡板的存在及是否访问过,⽽未考虑从下⼀单元是否可以在不经过当前单元的情况下到达终点。
形象的说,此种搜索只着眼于当前电脑⿏的移动,⽽不考虑实际效果。
当电脑⿏不能从下⼀单元在不经过当前单元到达终点时,电脑⿏的运⾏就做了“⽆⽤功”,这对于迷宫搜索的执⾏效率产⽣很⼤的副作⽤。
如图2.11所⽰,⽅形区域内即是这种情况,也就是死区域。
东南大学第二届IEEE标准电脑鼠走迷宫竞赛电脑鼠原理及其应用机电动力试验平台第二届IEEE标准电脑鼠走迷宫竞赛论文东南大学第二届IEEE标准电脑鼠走迷宫竞赛电脑鼠原理及其应用机电动力试验平台目录一.软件程序框图 (3)二.参赛软件研发过程 (4)三.软硬件调试过程 (4)四.各组员分工 (4)五.体会心得 (5)附录 (6)参考书目 (9)软件程序框图东南大学第二届IEEE标准电脑鼠走迷宫竞赛电脑鼠原理及其应用机电动力试验平台参赛软件研发过程在void main()函数中,采用压栈的方式进行电脑鼠搜索,数组uint8 GmcCrossway[MAZETYPE*MAZETYPE]用于暂存未走过支路坐标。
数组uint8 GucMapBlock[MAZETYPE][MAZETYPE]记录每个点的地图信息,初始化为0x00。
函数void mouseGoahead(int8 cNBlock)、void mazeSearch(void)、void mouseTurnleft(void)、东南大学第二届IEEE标准电脑鼠走迷宫竞赛电脑鼠原理及其应用机电动力试验平台void mouseTurnright(void)、void mouseTurnback(void)和void objectGoTo(int8 cXdst, int8 cYdst)控制电脑鼠的运动状态。
void mapStepEdit(int8 cX, int8 cY)为制作等高图函数,它把记录等高值的数组uint8 GucMapStep[MAZETYPE][MAZETYPE](初始化为0xff)赋值。
当电脑鼠搜索时无方向可走时就按照这个等高图的信息退回上个点,冲刺时也是一样的道理。
另外,为了缩短转弯时间,并且保证电脑鼠的稳定性,采取转弯时整步,直走时半步。
我们在Mouse_Drive.c文件中,加入全局变量int8 maincheck,初始化为0(其中0为不转弯,1为转弯)。
电脑鼠算法优化分析作者:李彤来源:《河南科技》2017年第03期摘要:电脑鼠是由微处理器控制的集感知、判断、行走功能于一体的小型机器人,其可以在“迷宫”中自动感知并记忆迷宫地图,以最快的速度到达目的地。
基于此,针对电脑鼠算法进行优化分析。
关键词:电脑鼠算法;微处理器控制;路径选择法则;自动搜索中图分类号:TP242 文献标识码:A 文章编号:1003-5168(2017)02-0024-021电脑鼠算法概述电脑鼠走迷宫可采用全迷宫探索策略,即将迷宫所有单元均搜索一次,从中找出最佳行走路径。
这种策略需要有足够的时间或探测次数,但在IEEE竞赛规则中每场竞赛只有15min,因此是不可能的。
另一种方法是部分迷宫探索策略,即在有限的时间或探测次数下,只探测迷宫的一部分,从中找出次最佳的路径,显然只能采用这种策略。
2迷宫信息的存储因为迷宫分为16×16=256个方格,所以很直观地可以想到用一个二维矩阵来存储一个迷宫的信息,矩阵中的每一个元素用于存储地图中一个方格的信息,矩阵每个元素可以定义成Byte 型,只用其中的4位就可以存储方格四面的挡板信息。
要获取某一个方格单个方向的挡板信息,只需做一个简单的运算看结果是否为0即可。
2.1数据的存储方式绝对方向和相对方向的变换:假设数值0、1、2、3分别表示绝对方向的上、右、下、左,那么就用0、1、2、3中的其中一个数值来表示当前小车车头朝向的方向,当然这个数值是动态变化的,其实转化的规则相当简单,右转方向数值加1,左转方向数值加3,后转方向数值加2,当然可能有越界的情况。
所以,得出的方向数值再进行模运算对4取余数得出的结果,就是转弯后小车的车头所面向的方向的数值。
通过矩阵可以找到当前的小车方向和转弯后的小车方向的对应关系,得出的相对方向和绝对方向的转换公式如下所示:转弯后的绝对方向=(转弯前的绝对方向+转弯数值)%4小车的车头方向一般是用一个全局变量来存储的,方便在转弯的函数中进行修改,避免C 语言中一些作用域的问题。
第1頁
人工智慧半尺寸電腦鼠走迷宮之競賽規則
目的
本競賽的主要目的在要求參賽選手設計並製作一個可以在迷宮方格與牆面規格皆為古典
電腦鼠迷宮一半的場地中,以最短時間內找到任意指定之迷宮終點的機器人。所有參加本競
賽的機器人都稱為「半尺寸電腦鼠」。負責將該「半尺寸電腦鼠」放置於場地,並讓「半尺
寸電腦鼠」開始動作的人稱為「操作員」。
迷宮的規定
1. 迷宮牆壁壁面的顏色為白色,頂部為紅色。迷宮中電腦鼠行進的地面是以表面塗有黑色去
光澤塗料的木材製成。迷宮牆壁壁面與頂部的塗料必須能反射紅外線的投射,而行進地面
的塗料則必須吸收紅外線的投射。
2. 電腦鼠迷宮是由多個9cm×9cm的單位正方格所組成。迷宮中可以包含最多的單位正方
格數為32×32格。沿著9cm×9cm的單位正方格四周所構建的迷宮牆壁,高度是2.5cm,
厚度則是0.6cm(參考圖1)。
第2頁
第3頁
2. 迷宮的組成架構ㄧ但揭露給所有的參賽者知道時,操作員就不能再對電腦鼠輸入任何的資
訊。也不可以在比賽進行中,藉由開關等裝置修正、或消去部分的迷宮相關資訊。
S
1032547698111013121514171619182120232224
1
0
3
2
5
4
7
6
9
8
11
10
13
12
15
14
17
16
19
18
21
20
23
22
25
24
27
26
29
28
31
30
x
y
G
圖2 半尺寸電腦鼠迷宮競賽範例。半尺寸電腦鼠離開迷宮起點後的前方為y軸的方向,右手
邊則為x軸的方向。因此迷宮終點的入口處在 (x18, y13)。
3. 電腦鼠在迷宮中每一次的探索都是由起點開始,再回到起點時停止至少兩秒鐘後結束,或
者是經由裁判的允許結束該次的探索。
第4頁
4. 如果電腦鼠返回到起點後,要自動地再開始進行下一次的探索,必須在起點的位置停止2
秒以上。
5. 電腦鼠在迷宮的探索過程中,參賽者不得碰觸電腦鼠,除非有大會裁判長的指示,獲得到
現場裁判的允許。如果電腦鼠有明顯的故障,大會裁判長得接受參賽者的請求中止電腦鼠
該次在迷宮中的探索。但參賽者如果是以其他的理由提出中止電腦鼠探索的請求時,必須
是在消去全部記憶的迷宮資訊條件下,才能獲得許可。
6. 每一次的競賽中,電腦鼠探索迷宮的時間限制,都會在比賽前決定,最多是15分鐘。在
指定的時間內,電腦鼠最多只能探索迷宮5次。
7. 電腦鼠只有在離地板2.5cm以內的部分全部進入終點區域時,才能被認可完成迷宮的探
索。然而電腦鼠的運動時間則是由起點位置的感測器感應到電腦鼠起算,直到迷宮中點區
域入口的感測器感應到同一隻電腦鼠為止的這一段時間。
8. 迷宮所在位置的亮度、溫度與溼度與一般的室內環境是相同的,參賽者不得要求調整場地
的亮度。
9. 比賽的大會裁判長,如果認為必要,有權要求參賽者針對他(她)的電腦鼠提出說明。大會
的裁判長同樣有權要求中止電腦鼠在迷宮中的探索、宣告參賽者失去資格,或是給予參賽
者其他必要的指示。
10. 比賽進行中,參賽者不得載入程式至電腦鼠中,或是更換唯讀記憶體。參賽者也不可以利
用連接到電腦鼠上的與電腦鼠本體無關的發展工具或是控制盒給予電腦鼠有關程式執行
的指示。
11. 參賽者可以在比賽進行中,利用膠帶等工具去除粘著在輪胎上的灰塵或碎片,但不得使用
溶劑等物品來增加摩擦力。
12. 電腦鼠在每一次的迷宮探索過程中,都可以持續搜索迷宮的結構,即使前幾次的探索已經
到達過終點。在這一個情形下,當次探索運動時間的計算是紀錄由起點出發後電腦鼠第一
次到到達迷宮終點的時間。
13. 假使電腦鼠回到起點後,在兩秒鐘內就開始進行下一次的探索,雖然被認定已經開始另一
次的探索,但卻是一次無效的探索。
14. 參賽者不得因調整或其他目的將電腦鼠放置在迷宮起點以外的方格中,除非是電腦鼠自行
在探索過程中到達。
第5頁
15. 迷宮是以一般的工作精度製作,因此會有某種程度尺寸上的誤差。同時,為了讓迷宮在組
裝與收納上更有彈性,除了在迷宮牆及地板的銜接處會有大約1mm左右的間隙外,也可
能會有褪色、變色與污漬等不一致性存在。
16. 水平照射的紅外線感測器是架設在離迷宮地面大約0.5cm的高度上。 迷宮起點的感測器
是裝設在迷宮起點與下一個迷宮方格的交界上。
17. 迷宮終點區域內迷宮牆壁的內壁面為紅色。而且迷宮終點的計時器是裝設在迷宮終點區域
的入口處。