技术标签: 机器学习 TensorFlow 人工智能 凯拉斯 加强学习
我正在尝试制作双DQN算法来学习玩游戏2048游戏。如果您想检查代码,我的实现可在GitHub中获得。 ((https://github.com/codetiger/machinelearning-2048)
我的代码在基本级别之后没有学习。它无法达到超过256瓦。我的一些预测在下面。
我无法通过我的方法识别问题。想对此有所了解。
我的伪代码在这里。
for e in range(EPISODES):
gameEnv.Reset()
state = gameEnv.GetFlatGrid()
state = np.reshape(state, [1, state_size])
reward = 0.0
prevMaxNumber = 0
while True:
action = agent.get_action(state)
(moveScore, isValid) = gameEnv.Move(action + 1)
next_state = gameEnv.GetFlatGrid()
next_state = np.reshape(next_state, [1, state_size])
if isValid:
# Reward for step score
reward += moveScore
# Reward for New Max Number
if gameEnv.GetMaxNumber() > prevMaxNumber:
reward += 10.0
prevMaxNumber = gameEnv.GetMaxNumber()
gameEnv.AddNewNumber()
else:
reward = -50.0
done = gameEnv.CheckGameOver()
if done:
reward = -100.0
agent.append_sample(state, action, reward, next_state, done)
agent.train_model()
state = next_state
if done:
agent.update_target_model()
我的两分钱,
RL算法不会随机学习。我建议您看一下“萨顿和巴托(第二版)”,以详细描述各种算法。话虽如此,我不认为您链接的GIT代码会带来您的期望(为什么要使用ES模块?您是否使用进化算法训练网络?)。您可能想从这样的简单,稳定的实现开始 https://yanpanlau.github.io/2016/07/10/flappybird-keras.html.
2048可能是一个简单的Q网络学习的困难游戏,因为它需要长期计划。对于DQN来说,学习玩控制/即时动作游戏(例如Pong或Breakout)要容易得多,但在需要一些计划的游戏(例如Pacman)上做得不好。
基于Androidstudio的2048小游戏的设计与实现 目录 1、 需求分析 1 1.1 背景与意义 1 1.1.1 手机应用市场发展现状 1 1.1.2 国内外现状 1 1.1.3 设计此游戏的意义 2 1.2 系统需求分析 2 1.2.1 系统功能需求分析 2 1.2.2 游戏的基本规则 3 2 、系统分析与设计 4 2.1 系统流程设计 4 2.2 系统模块设计 5 2.2.1 菜单设计...
自定义类加载器 我们如果需要自定义类加载器,只需要继承ClassLoader类,并覆盖掉findClass方法即可。 自定义文件类加载器 自定义网络类加载器 热部署类加载器 当我们调用loadClass方法加载类时,会采用双亲委派模式,即如果类已经被加载,就从缓存中获取,不会重新加载。如果同一个class被同一个类加载器多次加载,则会报错。因此,我们要实现热...
用户界面测试 1 、导航测试 导航直观 Web系统的主要部分可通过主页存取 Web系统不需要站点地图、搜索引擎或其他的导航帮助 Web应用系统的页面结构、导航、菜单、连接的风格一致 2 、图形测试 图形有明确的用途 所有页面字体的风格一致。 背景颜色与字体颜色和前景颜色相搭配。 图片的大小减小到 30k 以下 文字回绕正确 3 、内容测试 Web应用系统提供的信息是正确的 信息无语法或拼写错误 可...
实验环境: 建站环境:Windows操作系统,基于ECS部署LAMP环境,阿里云资源, Web服务器:Apache,关联的数据库:MySQ PHP:Drupal 8 要求的PHP版本為7.0.33的版本 实验内容和要求:基于ECS部署LAMP环境搭建Drupal网站,drupal是一个好用且功能强大的内容管理系统(CMS),通常也被称为是内容管理框架(CMF),由来自全世界各地的开发人员共同开发和...
禁止start page启动 1、方法1:User Preferences Editor中设置 2、方法2:env文件中修改 电路精灵是什么? 1、方法1:User Preferences Editor中设置 输入 page 点击Search按钮,勾选allegro_no_startpage。点OK搞定。 2、方法2:env文件中修改 打开home里的env文件。 添加 set allegro_n...
在很久没有使用虚拟机之后,我发现才用了一天的神级骚操作,为了给自己长点记性,先写下来再说 第一篇 虚拟机硬盘故障问题 分配空间20G结果当前大小130G是怎么肥四!!! 最后经过探讨,一致得出 我的虚拟机太迷了。。。估计是s001那个文件出了什么爆炸性问题吧 亏自己还进行了图三的一系列操作。。。 给的建议都是:你重装吧(说出来都是泪) 如果有大佬能告知是啥情况也好。。。 不过(划重点敲黑板) 除开...
基本一直点击下一步就可以了 此版本的可视化工具无法安装 双击安装包 点击 next next下一步 选择安装方式 选择目录 正式安装 这个为可视化工具,但是安装不了,选择了会卡在 80%(其实已经功能安装完成,就是没有可视化工具) 检测是否安装成功 cmd 输入 mongo 出现错误信息 解决地址...
1.FTP - authentication 追踪流TCP直接查看明文 2.TELNET - authentication 追踪流TCP 明文 3.ETHERNET - frame 先hex解码,再base64解码...
搜索这个名字,你能读到和这家店有关的一些故事,据说老板娘是从上海搬来福州的,因为怀念小时候所吃到的上海家常菜,再加上父母的愿望,因此开了这样一家店。店面位于居民区中,并不太显眼,坐在店内,都能听到外面小区中的孩子玩耍的喊声。附近是有一所市级中学十八中,这家店也是深受中学生青睐的地方。菜品味道清淡,很有微博上一些博主所描述的「妈妈味道」的感觉。选一个假期,和另一半逛累了,就在这个地方吃一顿家常菜,这...
(1)直接在环境变量中删除配置的相关路径 path的值: 删除配置的Oracle变量,如下所示: (2)执行java -version命令后报错 按提示更改注册表的相关键值: 重新打开一个cmd,执行java -version,命令正常执行: ...
I am new in python, Here I want to create dataproc cluster using http request. I am following below dataproc documentation where they mentioned in REST API section. see below https://cloud.google.com/...
I am using AddStringWithValue method in ASP.NET using C# My HTML code is My C# code for the method is: The problem is, it is giving red underline under email and password. Shouldn't we identify them w...
I'm trying to apply this css: this works well, the problem is that the web app can set a class on the body called white-content, if the white-content class is setted, then I can't see the text of h2, ...
So I am struggling with some logic for collision detection in my game. I have a grid of tiles(images), all representative of a value in a 2D array, so the location of tile N would be (column m, row n)...
Im trying to order a list on multiple parameters.. for example, one value descending, second value ascending, third value descending. is there a way like this to do it? (i know is incorrect) people = ...