由于本人是研究AI的,尤其是AI的强化学习方向,有时候就会对一些小游戏环境的实现有几分兴趣,因为刚看了有关reinforcement learning解决maze游戏的论文,于是就突发奇想的对这个maze迷宫的实现有些想了解了。

迷宫其实就是在一个表格上画线,然后构成的从某点到另一个点的一个通路的环境:

具体的迷宫的样子:

我们可以用一个0、1组成的二维矩阵来表示一个类似上图的迷宫环境:

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 0 1 0 0 0 1 0 0 1 0 1 1 0 0 0 0 0 0 1

1 0 0 0 1 0 1 1 0 1 0 0 1 0 1 1 0 1 1 1

1 0 1 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 1

1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 1 0 1 0 1

1 0 1 0 1 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1

1 0 1 0 0 0 1 1 1 1 0 1 1 0 1 0 1 0 0 1

1 0 0 0 1 0 1 0 0 1 0 0 0 0 1 0 0 0 1 1

1 0 1 1 1 0 1 0 0 1 1 1 0 0 1 0 1 0 1 1

1 0 1 0 0 0 1 1 0 0 0 1 0 1 1 0 1 1 1 1

1 0 1 0 1 1 0 0 0 1 1 0 0 0 1 0 0 0 0 1

1 0 1 0 1 0 1 1 0 0 1 0 0 0 1 1 1 0 0 1

1 0 1 0 1 0 0 0 0 1 0 0 1 0 0 0 0 0 1 1

1 0 1 0 1 1 1 1 0 1 0 1 1 0 1 0 1 1 1 1

1 0 1 0 0 0 1 0 0 1 1 0 0 0 1 0 1 0 0 1

1 0 1 1 1 0 1 0 0 0 0 0 1 0 1 0 0 0 1 1

1 0 0 0 1 0 1 1 1 1 0 1 0 0 1 0 1 0 1 1

1 1 1 0 1 0 0 0 0 1 0 1 1 0 1 0 1 0 0 1

1 1 1 0 0 0 1 1 0 0 0 1 0 0 0 0 1 0 0 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

其中,我们可以把1当做是黑格,而0视作为白格,黑格我们认为是不可以通行的地方,也就是迷宫的墙壁,而白格则为可通行的地方。

python语言下的迷宫游戏的实现猜想的更多相关文章

  1. Python语言下图像的操作方法总结

    本章主要讲解 图像的读取方式.灰度化操作.图像转化为矩阵的方法 假设 strImgPath是图像的路径, img对象将图片读入到内存中 读取图像的第一种方式:skImage from skimage ...

  2. 【Python基础学习一】在OSX系统下搭建Python语言集成开发环境 附激活码

    Python是一门简单易学,功能强大的编程语言.它具有高效的高级数据结构和简单而有效的面向对象编程方法.Python优雅的语法和动态类型以及其解释性的性质,使它在许多领域和大多数平台成为编写脚本和快速 ...

  3. c语言迷宫游戏的实现

    // // main.c // 迷宫游戏代码实现 // #include <stdio.h> #define ROW 6 //宏定义行 #define COL 6 //宏定义列 /** * ...

  4. 解决python语言在cmd下中文乱码的问题

    解决python语言在cmd下中文乱码的问题: a = "再见!"print (a.decode('utf-8').encode('gbk')) #解决在cmd下中文乱码的问题

  5. selenium webdriver从安装到使用(python语言),显示等待和隐性等待用法,切换窗口或者frame,弹框处理,下拉菜单处理,模拟鼠标键盘操作等

    selenium的用法 selenium2.0主要包含selenium IDE 和selenium webDriver,IDE有点类似QTP和LoadRunner的录制功能,就是firefox浏览器的 ...

  6. 用Java语言编写的迷宫小游戏软件

    可查看本项目的github 源码链接,撒娇打滚求 star 哦~~ღ( ´・ᴗ・ ` )比心 本仓库代码是经过 eclipse 编译运行过的,一般情况下将本仓库代码下载下来之后,使用 eclipse ...

  7. 如何系统地自学一门Python 语言(转)

    转自:http://www.phpxs.com/post/4521 零基础情况下,学一门语言充实下自己,Python,简洁.优美.容易使用,是一个很好的选择.那么如何系统地自学Python呢? 有的人 ...

  8. python语言的优点和缺点

    python作为一门高级编程语言,它的诞生虽然很偶然,但是它得到程序员的喜爱却是必然之路. 龟叔给Python的定位是"优雅"."明确"."简单&qu ...

  9. Python语言在企业级应用上的十大谬误

    英文原文:https://www.paypal-engineering.com/2014/12/10/10-myths-of-enterprise-python/ 翻译原文:http://www.os ...

  10. 用webgl打造自己的3D迷宫游戏

    用webgl打造自己的3D迷宫游戏 2016/09/19 · JavaScript · WebGL 原文出处: AlloyTeam    背景:前段时间自己居然迷路了,有感而发就想到写一个可以让人迷路 ...

随机推荐

  1. LeetCode 208. Implement Trie (Prefix Tree) 实现 Trie (前缀树)(C++/Java)

    题目: Implement a trie with insert, search, and startsWith methods. Example: Trie trie = new Trie(); t ...

  2. 笔记本重装系统后重装OFFICE(预装的,赠送的)

    笔记本重装系统后重装OFFICE(预装的,赠送的) 1.首先用edge打开bing搜索微软账号,谷歌浏览器也行就是登录微软账号多了一步 2.进去后点击服务和订阅那一栏,然后可以看到自己已购买的产品.再 ...

  3. 20 套监控平台统一成 1 套 Flashcat,国泰君安监控选型提效之路

    author:宋庆羽-国泰君安期货 运维工作最重要的就是维护系统的稳定性,其中监控是保证系统稳定性很重要的一环.通过监控可以了解系统的运行状态,及时发现问题和系统隐患,有助于一线人员快速解决问题,提高 ...

  4. WPF/C#:程序关闭的三种模式

    ShutdownMode枚举类型介绍 ShutdownMode是一个枚举类型,它定义了WPF应用程序的关闭方式.这个枚举类型有三个成员: OnLastWindowClose:当最后一个窗口关闭或者调用 ...

  5. python selenium使用无头模式执行用例

    什么是无头模式? Headless Browser模式是浏览器的无界面状态,即在不打开浏览器界面的情况下使用浏览器. 该模式的好处如下: 1)可以加快web自动化测试的执行时间,对于web自动化测试, ...

  6. Linux 内核:设备驱动模型(5)平台设备驱动

    Linux 内核:设备驱动模型(5)平台设备驱动 背景 我们已经大概熟悉了Linux Device Driver Model:知道了流程大概是怎么样的,为了加深对LDDM框架的理解,我们继续来看pla ...

  7. Java进阶:HashMap底层原理(通俗易懂篇)

    1.底层结构 Java 7及之前版本 在Java 7及之前的版本中,HashMap的底层数据结构主要是数组加链表.具体实现如下: 数组:HashMap的核心是一个Entry数组(Entry<K, ...

  8. OpenWrt中的LuCi和Lua一些总结

    Lua.LuCi Lua是一种小巧的脚本语言,和Python一样,Lua脚本的运行需要Lua解释器: UCI(Unified Configuration Interface)是OpenWrt实现所有系 ...

  9. 汇编语言--cpu的工作原理(寄存器)--手稿

    03

  10. 容器技术Docker知识精讲【形成知识体系篇】

    作者的经验分享,包括很多实战过程和总结,为着手系统化学习Docker容器的朋友提供. 环境要求 Linux操作系统(Centos),建议在虚拟机VMware或VirtualBox下安装Centos D ...