gta5自动驾驶怎么关闭(游戏自动驾驶玩法秘籍)
mxj 发布:2023-09-02 15:30:52 463
项目作者:Iker Garciacutea S2/]
机器心脏报告
参与:浣熊X
使用深度学习作为“插件”,本文将教你如何用PyTorch在GTA 5中训练一个自动驾驶模型。
最新一代侠盗猎车手GTA 5就是这样一款游戏,它包含了一个由故事驱动的高度自由化的世界,以至于游戏上线后,很多人会在通关后(或者没有任何剧情的情况下)尝试很多非常规的玩法。调整游戏中的身体参数,做一个守法的“好人”,甚至在游戏中学会侧身停车,帮你拿到驾照。
对于AI开发者来说,GTA 5有一个巨大的虚拟世界,我们可以在其中驾驶。那么为什么不能用来训练自动驾驶呢?在新冠肺炎疫情期间,我们花越来越多的时间玩游戏,这导致了大胆的想法。
项目介绍
这是一个在《侠盗猎车手v》中使用深度神经网络和监督学习实现自动驾驶的开源项目,该项目用PyTorch编写,使用Nvidia的Apex扩展库,支持混合精度训练和推理,速度最多提升约2倍。经过训练,模型的驾驶策略是模仿玩GTA的人的操作,不会遵守游戏中的交通规则。比如地板油穿过街道,避开其他车辆和行人。当游戏中设定了目标点后,训练好的模型就可以自主行驶到相应的目标点。
项目地址:
该项目采用人工标记的数据来训练深度神经网络,即它记录游戏中的画面已经播放时的键盘操作,然后用这个数据集来训练神经网络模型。
这里需要指出的是,这个项目只是用GTA V作为自动驾驶的例子,理论上可以用在任何驾驶类的电子游戏中。下图是使用训练好的模型自动驾驶的效果。
这个技术比玩家更稳定?
总体框架
此前,试图在电子游戏中实现自动驾驶的模型大多包含深度卷积神经网络(通常是Inception或Resnet)。这些模型将单个图像作为输入。看到这样的图像,你会有什么反应?
你可能认为最好的选择是刹车,以避开图中蓝色和灰色的车辆。但是如果两辆车都停下来让你先过马路呢?如果你现在真的在倒车呢?你现在的速度和其他车辆的速度是否允许你在不发生碰撞的情况下过马路?单一图像无法为自动驾驶汽车提供足够的信息。我们需要更多的信息,这就是为什么这个项目使用一系列图像作为输入。以0.1秒的间隔捕捉五个连续的图像为模型提供了关于其自身、其他车辆和环境的更多信息。
T.E.D.D. 1104由深度卷积神经网络(Resnet)和递归神经网络(LSTM)组成。CNN将上述连续五张图片作为输入,并为其生成相应的矢量表示。这些表示然后将被发送到RNN,它将为整个序列输入生成唯一的向量表示。最后,通过一个全连接的网络,将上述序列输出并输入到计算机键盘上相应的按键。整体结构如下图所示。
如何使用
这个项目包含了所有用于生成训练数据、进行模型训练以及使用训练好的模型在游戏中自动驾驶的文件。整个项目都是用Python 3写的。笔者只在Windows 10系统下测试过。毕竟大多数人玩的都是Win 10操作系统下的PC游戏,Linux和Mac上的游戏还是比较少的。
依赖环境
运行该项目需要安装的依赖环境如下:
Pytorch
火炬传递
Nvidia Apex(仅适用于FP16培训)
numpy
cupy(可选,但强烈推荐用于训练模型,与numpy相比,数据预处理速度提高了10倍)
cv2 (opencv-python)
glob
h5py
json
win32api (PythonWin) -应该默认安装在最新的Python版本中(建议安装Python 3.7)
生成训练数据集
首先将游戏设置为桌面模式,分辨率为1600x900,将游戏窗口移动到桌面左上角,如下图所示:
运行下面的代码,开始玩游戏:
python generate _ data . py-save _ dir tedd 1007 \ training _ data
程序将自动捕捉屏幕并生成用于训练的样本。这些文档将被保存为“training_dataX.npz”。重新运行上述代码时,不用担心原来的数据集被覆盖,程序会自动检测该数据集文件是否已经存在于目录中。使用Q+E停止收集数据。
培训模式
使用以下代码为模型定型:
python train.py - train_new
-train _ dir tedd 1007 \ training _ data \ train
-dev _ dir tedd 1007 \ training _ data \ dev
-test _ dir tedd 1007 \ training _ data \ test
-output _ dir tedd 1007 \型号
-批量大小10
-次数5
- fp16
其中,- fp16允许我们使用混合精度训练(要求显卡支持半精度浮点运算,如RTX 2000、RTX泰坦、泰坦V、Tesla V100等。),并使用Nvidia的Apex扩展库:
https://github.com/NVIDIA/apex.训练模型需要消耗大量内存,项目作者将批量设置为15在RTX 2080上训练。
使用以下代码从保存的检查点继续训练:
python train . py-continue _ training
-train _ dir tedd 1007 \ training _ data \ train
-dev _ dir tedd 1007 \ training _ data \ dev
-test _ dir tedd 1007 \ training _ data \ test
-output _ dir tedd 1007 \型号
-批量大小10
-次数5
-check point _ path tedd 1007 \ check point \ epoch 1 check point . pt
运行模式
训练结束后,我们可以看到AI是如何“驾驶”的。使用以下命令运行模型:
python run _ tedd 1104 . py-model _ dir D:\ GTAV-AI \ models-show _ current _ control-fp16
如果读者的GPU有张量核(如RTX 2000、RTX泰坦、泰坦V、特斯拉V100等。),推荐使用- fp16,可以提高推理速度2倍左右,只消耗一半的内存。
GTA 5中车辆的手感和极品飞车之类的游戏不一样,我们这些手残的人难免会碰壁。自从学了人工智能,一切似乎都有了希望。
版权说明:如非注明,本站文章均为 零度游戏网 原创,转载请注明出处和附带本文链接;
相关推荐
- 09-18gta5什么武器最厉害(公认伤害最高的武器)
- 09-03gta5摩托车秘籍大全(必备侠盗猎车手5游戏攻略)
- 09-03gta5单机版怎么赚钱(游戏赚钱的10大攻略)
- 09-03gta5怎么装mod锁钩枪(侠盗猎车手5游戏下载)
- 09-03gta5飞机降落怎么减速(详解飞机任务的操作技巧)
- 09-02gta5封号机制是什么原因(最常见的11种封号原因)
- 09-02gta5赛车任务怎么过(游戏任务玩法攻略)
- 09-02gta5漂移技巧全攻略(免费分享这些漂移技巧)
- 09-02正版gta5怎么安装mod(免费教你侠盗猎车手5安装mod)
- 09-02gta5最好的车是什么(公认最好操作的3款车)
- 推荐资讯
-
- 09-24dnf罗莉安的花戒绝版了吗(罗莉安的花戒属性怎么样)
- 11-04镇魂街破晓怎么开启省电模式-开启省电模式方法
- 11-04光遇魔法工坊在哪里-魔法工坊位置
- 11-04破雪刃怎么转职-转职攻略
- 11-04鸣潮椿声骸怎么选择-椿声骸词条选择攻略
- 11-04龙族卡塞尔之门怎么更换队伍-更换队伍方法
- 11-04寂静岭2重制版结局是什么-结局大全
- 09-28tbc燃烧王座副本怎么过(燃烧王座boss流程详解)
- 11-04归龙潮沉浮聆长歌任务怎么做-沉浮聆长歌任务攻略
- 11-04崩坏星穹铁道2.6绳索与棍棒成就怎么达成-2.6绳索与棍棒成就达成攻略
- 最近发表
- 热门文章
- 标签列表
- 随机文章