• Q0_915999
    了解作者
  • 766.2KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-04-04 02:54
    上传日期
深度强化学习 项目:训练AI如何玩蛇 介绍 该项目的目标是开发一个AI Bot,该Bot能够学习如何从头开始玩流行的游戏Snake。 为了做到这一点,我实现了深度强化学习算法。 该方法包括为系统提供与其状态相关的参数,并根据其操作给出正面或负面的奖励。 没有给出有关游戏的规则,并且最初Bot没有有关其需要做什么的信息。 该系统的目标是弄清楚并制定出最大化分数或奖励的策略。 我们将了解深度Q学习算法如何学习如何玩蛇,如何在最多5分钟的训练后获得50分并显示出坚实的策略。 安装 此项目需要安装了pygame库的Python 3.6以及具有Tensorflow后端的Keras。 git clone git@github.com:maurock/snake-ga.git 跑 要运行游戏,请在snake-ga文件夹中执行: python snakeClass . py - - display =
Snake-master.zip
  • Snake-master
  • img
  • training.gif
    1.7MB
  • snakeBody.png
    114B
  • notraining.gif
    576.7KB
  • background.png
    4.5KB
  • food2.png
    286B
  • weights
  • weights.hdf5
    202.5KB
  • .gitattributes
    66B
  • requirements.txt
    1.1KB
  • DQN.py
    5.6KB
  • snakeClass.py
    9.6KB
  • README.md
    2KB
  • .gitignore
    30B
内容介绍
# Deep Reinforcement Learning ## Project: Train AI how to play Snake ## Introduction The goal of this project is to develop an AI Bot able to learn how to play the popular game Snake from scratch. In order to do it, I implemented a Deep Reinforcement Learning algorithm. This approach consists in giving the system parameters related to its state, and a positive or negative reward based on its actions. No rules about the game are given, and initially the Bot has no information on what it needs to do. The goal for the system is to figure it out and elaborate a strategy to maximize the score - or the reward. We are going to see how a Deep Q-Learning algorithm learns how to play snake, scoring up to 50 points and showing a solid strategy after only 5 minutes of training. ## Install This project requires Python 3.6 with the pygame library installed, as well as Keras with Tensorflow backend. ```bash git clone git@github.com:maurock/snake-ga.git ``` ## Run To run the game, executes in the snake-ga folder: ```python python snakeClass.py --display=True --speed=50 ``` Arguments description: - --display - Type bool, default True, display or not game view - --speed - Type integer, default 50, game speed This will run and show the agent. The default configuration loads the file *weights/weights.hdf5* and runs a test. The Deep neural network can be customized in the file snakeClass.py modifying the dictionary *params* in the function *define_parameters()* To train the agent, set in the file snakeClass.py: - params['load_weights'] = False - params['train'] = True In snakeClass.py you can set argument *--display*=False and *--speed*=0, if you do not want to see the game running. This speeds up the training phase. ## For Mac users It seems there is a OSX specific problem, since many users cannot see the game running. To fix this problem, in update_screen(), add this line. ``` def update_screen(): pygame.display.update() <br> pygame.event.get() # <--- Add this line ### ```
评论
    相关推荐
    • mr.tumbleweed:pygame中的原始游戏
      如何运行: git clone cd tumble_my_weed python3 tumble_my_weed.py 怎么玩: 移动并用箭头键跳避免风滚草在屏幕上移动 游戏照片: 计划的更新: 由于代码是脚本,因此我目前有很多全局变量,但这将在下次更新中...
    • Bullfrog:我的pygame项目
      这是我的第一个pygame项目。 它最初是蛙跳克隆。 现在,这是Frogger和Alien Invasion之间的奇怪混合。 有2个等级和2个敌人类型。 如果您更改它们并按设置菜单中的保存按钮,游戏将记录并保存您的高分和音量设置。 ...
    • Lumhos比赛
      策谟contient plusieurs兽疫JEUX既成事实AVEC LA图书出版的Pygame等编译AVEC cx_Freeze。 路西欧 Des petite lucioles qui s'agitent devant l'écran。 整整一整天,埃勒斯·苏吉特汽车之声。 评论çmarche吗? ...
    • Chess_Python:这是使用libpy pygame在python中实现的国际象棋游戏
      这是使用pygame库以python实现的国际象棋游戏 动机 我想为我的计算机科学课创建一个python项目,该项目应该先进但对我自己而言是可行的。 我个人非常喜欢国际象棋,因此我问一些高年级的学生,是否可以进行编码,...
    • pygameterraria2:我不知道如何更新git repo :
      pygameterraria2:我不知道如何更新git repo :
    • pygame-practice-EjikeI:pygame-practice-EjikeI由GitHub Classroom创建
      Pygame入门 我上传了一个非常小的文件,名为minimal.py 。 您可以将此文件用作模板来开始使用Pygame。 我想一起看一下事件,文本,形状和图像。 您将创建其他文件并将其提交。
    • Chess_Python:这是使用libpy pygame在python中实现的国际象棋游戏
      这是使用libpy pygame在python中实现的国际象棋游戏 动机 我想为我的计算机科学课创建一个python项目,该项目应该先进但对我自己而言是可行的。我个人非常喜欢国际象棋,因此我问一些高年级的学生,是否可以进行编码...
    • 超级道奇-PygamePyGame制作的2017年学校项目
      超级道奇! 《超级道奇》是我于2017年为11年级计算机科学总结编写的一款游戏,如今却无法反映我的代码。 仅将其上传到github进行存储,...需要Pygame 2.0才能运行。 以zip格式下载,只需单击SuperDodger.py即可尝试。
    • Magirror:基于Pygame的树莓派魔镜
      Magirror——基于pygame的树莓派魔镜 原创项目,求Star! 首先,为什么要用pygame? ——GitHub上已经有一个MagicMirror的项目了,star数也很高。我去试着装了一下,无奈环境配了好几天都没弄好,毕竟作者是外国人,...
    • Pygame_Demo
      这是Gitpod的代码学院学生模板。 我们已经预装了您入门所需的所有工具。 您可以安全地删除此README.md文件,或为您自己的项目进行更改。 不过,请至少阅读一次! 它包含有关Gitpod和我们使用的扩展的一些重要信息。...