Unity OTC参赛全纪录 | 1.搭建环境
你好,我是郑洪智,你的技术探路者。
洪流学堂公众号回复OTC
,关注比赛全纪录。
一直对AI很感兴趣,去年就参加了Unity的ML-Agents Challenge,今年Unity的AI比赛再次升级,手痒痒,就召集了一个小伙伴和我一起参加。
这个比赛很简单,就是用AI训练一个模型,来玩一个Unity出的爬塔的游戏,爬的越高得分越高。
今天先来熟悉下整个比赛,将环境搭建好。
比赛主页链接:
https://www.aicrowd.com/challenges/unity-obstacle-tower-challenge
整个环境的搭建都在这个Git库中:
https://github.com/Unity-Technologies/obstacle-tower-challenge
下面我们开始一步一步搭建这个环境。
1.clone版本库
使用git clone这个版本库:
https://github.com/Unity-Technologies/obstacle-tower-challenge
2. 安装python依赖包
在版本库的目录中,执行:
pip install -r requirements.txt
这台机子之前换了硬盘,python竟然没了,重装python。
python安装
开始安装了3.7.2,鄙人喜欢用最新的,安装前就隐隐的不安,感觉要出事,果然安装requirements的时候提示:
mlagents-envs requires Python '>=3.5,<=3.7' but the running Python is 3.7.2
再回去下载3.6的版本,再执行:
pip install -r requirements.txt
一定要安装3.5或3.6的python
3. 下载游戏程序
https://github.com/Unity-Technologies/obstacle-tower-env#download-the-environment
将游戏程序放在目录里,目录结构是这样的(windows):
│ .gitignore
│ aicrowd.json
│ apt.txt
│ banner.png
│ build.sh
│ env.sh
│ LICENSE
│ README.md
│ requirements.txt
│ run.py
│ run.sh
│
└─ObstacleTower
│ obstacletower.exe
│ UnityCrashHandler64.exe
│ UnityPlayer.dll
│
├─MonoBleedingEdge
└─ObstacleTower_Data
4.直接运行
python run.py
运行没啥效果,因为还没写任何训练的代码:
还需要读读论文,看看整个系统应该使用什么样的模型比较好。
5.注册GCP(略过,明天再搞)
Unity在这里给Google Cloud Platform打了个广告,可以在谷歌云平台上训练模型,初始有$300免费的额度,注册的过程中遇到了一些小问题,先略过,后面再回来看问题是什么。
6.如何提交成绩
具体文档在这
https://github.com/Unity-Technologies/obstacle-tower-challenge#submission
,我把过程再记录一下。
1)创建版本库
需要在https://gitlab.aicrowd.com上面创建一个私有版本库。
如果你是使用HTTP访问,需要创建一个Token来访问,不能直接用账号密码。创建Token的时候需要注意一定要选择api这一项,否则后面会出现无法上传代码的问题(别问我怎么知道,我也是刚从坑里爬出来):
创建的Token一定要记下来,因为忘记了只能重新创建,无法找回来了。
2)版本库结构
上传的版本库至少要包含两个文件,一个是:
aicrowd.json
{
"challenge_id" : "unity-obstacle-tower-challenge-2019",
"grader_id": "unity-obstacle-tower-challenge-2019",
"authors" : ["aicrowd-user"],
"description" : "Random Obstacle Tower agent",
"gpu": false
}
其中authors表示作者,也就是参赛者;
gpu表示是否需要gpu参与模型的评估。
还有一个是
代码入口
评估的时候会使用根目录的run.sh文件来执行代码,所以根目录一定要有一个run.sh文件。
3)上传代码
正常commit,push代码即可
但是如果需要参与模型评估的话,需要push tag来触发评估。
git tag -am "v0.1" v0.1
git push origin master
git push origin v0.1
push tag后你可以在这个地址看到评估的结果:
gitlab.aicrowd.com/<YOUR_AICROWD_USER_NAME>/obstacle-tower-challenge/issues
总结
今天将整个环境搭建好了,流程大概梳理清楚了,下一步就得看论文了。
洪流学堂公众号回复OTC
,关注比赛全纪录。