人工智能电脑鼠搜迷宫实验.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
北京科技大学实验报告 学院:自动化学院 专业:智能科学学技术 班级: 姓名: 学号: 实验日期:2017年11月6日 实验名称:人工智能电脑鼠搜迷宫实验 实验目的:掌握电脑鼠的基本操作及智能搜索算法操作。 实验仪器:KEIL MDK、电脑鼠、J-Link、VS 实验原理:所谓“电脑鼠”,英文名叫做Micromouse,是一种具有人工智能的轮式机器人,是由嵌入式微控制器、传感器和机电运动部件构成的一种智能行走装置的俗称。当电脑鼠放入起点,按下启动键之后,他就必须自行决定搜索法则并且在迷宫中前进,转弯,记忆迷宫墙壁资料,计算最短路径,搜索终点等功能。电脑鼠更结合了机械、电机、电子、控制、光学、程序设计和人工智能等多方面的科技知识。本实验中,通过红外传感器检测电脑鼠所处位置状态,通过智能算法保存地图并实现地图的搜索,通过pid等控制算法控制电机,达到电脑鼠搜索迷宫并计算最短路径等功能。 实验内容与步骤: 实验内容 1)KEIL MDK的安装 2)电脑鼠硬件的检查及调整 3)智能搜索算法的编写 4)算法的调试与优化 5)实验结果 实验步骤 (一)KEIL MDK的安装 1双击运行 Ke i l MDK 4.12 安装程序,出现软件安装界面,如图所示: 2点击Next,勾选安装协议; 3选择安装路径,建议安装在 C 盘,运行速度快些 4 填入用户信息,个人用户随意填入即可; ?? 点击 Next 就进入实质的安装过程了,Wait for a Whle… 5点击 Finish,Keil MDK 就完成安装了,可以发现桌面上生成了名为“Keil uVis ion4”的可执行文件快捷方式。 (二)检查和调整电脑鼠的硬件 1.电机检查:在电脑鼠程序文件中找到Motor.c文件,直接为两侧电机赋相同的速度值,用G-link连接电脑鼠和电脑,传入程序,打开电脑鼠放在地面上,如果电脑鼠能正常直线行进,即证明两侧电机正常工作。如果有电机有问题,拆下原来的电机换新的再次进行电机检查即可。 2.传感器检查:用G-link连接电脑鼠和电脑,打开传感器查询模式,用手逐渐靠近每一个传感器,如果相应的传感器值由小变大,那么此传感器工作正常。且每个传感器在手指位于相同距离时,回传的传感器值近似相等即证明传感器都正常工作,如果有传感器有问题,拆下原来的传感器换新的再次进行传感器检查即可。 传感器回传值查询界面 (三)智能搜索算法的编写 在含底层驱动的程序的基础上加上算法,实现智能搜索,把电脑鼠变成一只真正的智能的老鼠。 1.常见的算法形式 右手法则 电脑鼠在前进的方向上存在两条和两条以上的支路时,优先考虑向右转,其次向前,最后才考虑向左。 左手法则 与右手法则相似,只不过是优先考虑左转,其次是向前,最后才考虑向右。 右手法则示意图 右手法则示意图 左手法则示意图 求心法则 求心法则就是每当电脑鼠有至少两个方向可以选择时,则优先转向离中心点最近的方向前进。 如何确定哪个方向更能接近目标呢?如图 5-4 所示,把迷宫可以分为四个对等的区域(1、2、3、4)。可以观察出,在区域 1? 中,电脑鼠向右和向上运动更能接近中心。在区域 2? 中电脑鼠向左和向上更能接近中心。同样还可以很容易观察出区域 3 和区域 4 最容易接近中心的方向。 求心法则示意图迷宫分区示意图 求心法则示意图 迷宫分区示意图 如果电脑鼠可供选择前进的方向包含了两个都有可能是离迷宫中心最近的方向,优先选择可以直线前进的反向,其次选择只用转90度的方向前进。 如果可前进的方向都是远离中心的方向时,优先选择直线运行方向,其次选择转弯 90度的方向。其搜索示意图如图所示。 寻找最优路径的算法 等高图算法 首先开辟一块8×8的二维数组空间(MapStep[8][8]),其中每一个元素代表迷宫中的一个方格,用以计算后储存各方格至起点的最短路径步数(所谓步数即为路径中经过的方格数)。 当起点坐标处标识为 1 时,可以直接达到的相邻方格均为 2,再远的方格的等高值依次递增。这样距离越远的地方等高值越大。 以此类推,直到当前坐标没有可前进方向,且堆栈中没有未处理完的分岔点时结束。最终可以得到等高图。等高图的数字即为步数,也就代表其相对应的位置,由于电脑鼠转弯要浪费一定时间,为了寻找一条最优的路径(也就是能最快达到的路径),可以给转弯点加权。可以假设权值为1。即经过转弯前进的坐标等高值是由当前等高值加 2 得到的。具体的加权值可以根据自己电脑鼠转弯性能来决定。 冲刺算法 在搜索方案上,当电脑鼠处于搜索阶段时,电脑鼠速度较慢,以便准确获取迷宫信息;处于冲刺阶段时,电脑鼠已知迷宫信息,所以速度很快。为了保险起见,本设计的搜索方案是:首先慢

文档评论(0)

jyr0221 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档