这篇文章介绍如何训练官方的一个例子3dball。

确保在此之前已经安装好训练环境可以参考下面的文章。

https://www.cnblogs.com/pojdd/p/9804322.html

游戏打包的官方说明文档

https://github.com/Unity-Technologies/ml-agents/blob/master/docs/Learning-Environment-Executable.md

https://github.com/Unity-Technologies/ml-agents/blob/master/docs/Basic-Guide.md#play-an-example-environment-using-pretrained-model

打开官方的实例工程ml-agents\UnitySDK

这个工程是和插件项目在一起的

下载链接https://github.com/Unity-Technologies/ml-agents/

双击打开3dball路径是Assets/ML-Agents/Examples/3DBall/

1.打包游戏前的配置

  1. 打开Player Settings (菜单: Edit > Project Settings > Player).
  2. 在Resolution and Presentation下:
    • 确保 Run in Background 是勾选上的.
    • 确保  Display Resolution Dialog 设置成 Disabled.
  3. 打开 Build Settings 窗口(菜单:File > Build Settings).
  4. 选择 target platform.
  5. If any scenes are shown in the Scenes in Build list, make sure that the 3DBall Scene is the only one checked. (If the list is empty, than only the current scene is included in the build).
  6. Click Build:
    • In the File dialog, navigate to your ML-Agents directory.
    • Assign a file name and click Save.
    • (For Windows)With Unity 2018.1, it will ask you to select a folder instead of a file name. Create a subfolder within the ML-Agents folder and select that folder to build. In the following steps you will refer to this subfolder's name as env_name.

2.开启外部训练

打开Anaconda Prompt

输入

activate ml-agents
激活之前搭建好的环境

转到ml-agents目录下

输入

mlagents-learn ../config/trainer_config.yaml --env=3DBall --run-id=firstRun --train
--env=指的是你的游戏文件的路径,游戏程序不加后缀名
--run-id=是每次训练后打印的分割,可以自定义
--train告诉 learn.py 运行训练session(而不是inference会话)

图中已经开始训练了。博主的GPU是GTX950M的,支持GPU加速。如何是n卡是不能加速的,这时候只能用cpu跑了,这样会慢不少。

训练好之后就可以在当前目录找到models文件夹

图中的bytes就是训练好的模型

要想在unity中使用内部模式加载这个模型需要加上一个宏

ENABLE_TENSORFLOW

在playsetting中


使用ML-Agents Toolkit(0.5)训练游戏ai之游戏打包的更多相关文章

  1. 使用ML-Agents Toolkit(0.5)训练游戏ai之环境搭建

    ML-Agents toolkit目前已经更新到0.5版本了. 要想使用这个Unity插件训练人工智能需要如下软件 1.Anaconda指的是一个开源的Python发行版本,主要是让你的训练环境与其它 ...

  2. 游戏AI之初步介绍(0)

    目录 游戏AI是什么? 游戏AI和理论AI 智能的假象 (更新)游戏AI和机器学习 介绍一些游戏AI 4X游戏AI <求生之路>系列 角色扮演/沙盒游戏中的NPC 游戏AI 需要学些什么? ...

  3. 如何建立一个完整的游戏AI

    http://blog.friskit.me/2012/04/how-to-build-a-perfect-game-ai/ 人工智能(Artificial Intelligence)在游戏中使用已经 ...

  4. 王亮:游戏AI探索之旅——从alphago到moba游戏

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由云加社区技术沙龙 发表于云+社区专栏 演讲嘉宾:王亮,腾讯AI高级研究员.2013年加入腾讯,从事大数据预测以及游戏AI研发工作.目前 ...

  5. 微软发布ML.NET 1.0

    原文地址:https://devblogs.microsoft.com/dotnet/announcing-ml-net-1-0/ 我们很高兴地宣布今天发布ML.NET 1.0.  ML.NET是一个 ...

  6. 关于ML.NET v1.0 的发布说明

    今天,我们很高兴宣布发布 ML.NET 1.0.ML.NET 是一个免费的.跨平台的开源机器学习框架,旨在将机器学习(ML)的强大功能引入.NET 应用程序. ML.NET GitHub:https: ...

  7. 4、Cocos2dx 3.0三,找一个小游戏开发Hello World 分析

    尊重开发人员的劳动成果.转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27186557 Hello World 分析 打开新 ...

  8. 关于ML.NET v1.0 RC的发布说明

    ML.NET是面向.NET开发人员的开源和跨平台机器学习框架(Windows,Linux,macOS).使用ML.NET,开发人员可以利用他们现有的工具和技能组,通过为情感分析,推荐,图像分类等常见场 ...

  9. 【Unity】1.0 第1章 Unity—3D游戏开发和虚拟现实应用开发的首选

    分类:Unity.C#.VS2015 创建日期:2016-03-23 一.简介 Unity是跨平台2D.3D游戏和虚拟现实高级应用程序的专业开发引擎,是由Unity Technologies公司研制的 ...

随机推荐

  1. Java Web系列:Spring Boot 基础 Spring Security基本使用

    @OneToOne or @ManyToOne Caused by: org.hibernate.AnnotationException: @OneToOne or @ManyToOne on com ...

  2. Java8 的一些新特性总结

    目前Java8已经发布很多个版本了,对于Java8中的新特性虽然有各位大神进行jdk8的英文特性文档翻译,但都太官方化语言,对照几篇翻译本人对新特性文档做一下总结,以帮助我和各位不了解Java8新特性 ...

  3. 改善C#程序的建议6:在线程同步中使用信号量

    原文:改善C#程序的建议6:在线程同步中使用信号量 所谓线程同步,就是多个线程之间在某个对象上执行等待(也可理解为锁定该对象),直到该对象被解除锁定.C#中对象的类型分为引用类型和值类型.CLR在这两 ...

  4. 为何只能在其关联的线程内启动timer?(Qt会检查一致性,否则就不执行)

    为何只能在其关联的线程内启动timer? 在QTimer源码分析(以Windows下实现为例) 一文中,我们谈到: QTimer的是通过QObject的timerEvent()实现的,开启和关闭定时器 ...

  5. Rendering in Delphi using TCanvas (FMX)

    BY CRAIG CHAPMAN · PUBLISHED 2015-08-05 · UPDATED 2015-08-20   I have a customer with an application ...

  6. 关于C中可变长参数

    前言 可变长参数指函数的参数个数在调用时才能确定的函数参数.基本上各种语言都支持可变长参数,在特定情形下,可变长参数使用起来非常方便.c语言中函数可变长参数使用“...”来表示,同时可变长参数只能位于 ...

  7. delphi如何输出当前堆栈

    想实现,输出当前运行的堆栈,有会的吗?给点思路 方法很多,参考: https://bitbucket.org/shadow_cs/delphi-leakcheck/ 的 https://bitbuck ...

  8. baiduMap试手《办理进京证和市区警察查询进京证的地址浏览》

    没用过baidu的map api其实挺简单,申请一个key,然后根据坐标在地图上生成对象,看了官方的dome多少知道有些什么功能了,没什么可说的直接贴效果. <!DOCTYPE html> ...

  9. python合并多个文件

    import os filelist=os.listdir('/root/Music') for item in filelist: print item newfile=open('/root/Mu ...

  10. 基于 ZooKeeper 搭建 Spark 高可用集群

    一.集群规划 二.前置条件 三.Spark集群搭建         3.1 下载解压         3.2 配置环境变量         3.3 集群配置         3.4 安装包分发 四.启 ...