我们提出了一种沉浸式环境中感觉运动控制的方法。我们的方法利用高维感应流和低维测量流。这些流的同时结构提供了丰富的监控信号,可以通过与环境相互作用来训练感觉运动控制模型。该模型使用监督学习技术进行培训,但没有外部监督。它学会在一个复杂的三维环境中,根据原始的感觉输入采取行动。所提出的公式使得学习在训练时没有固定的目标,而在测试时追求动态变化的目标。我们基于经典的第一人称游戏Doom在三维模拟中进行了大量实验。结果表明,所提出的方法优于复杂的先验公式,特别是在具有挑战性的任务上。他的结果还表明,训练模型成功地在环境和目标中推广。使用这种方法训练的模型赢得了Visual Doom AI Competition 中的 Full Deathmatch track,并且是在以前从未见过的环境中。
方法
Model
在本方法中观察状态可以分为两个变量: ot=⟨st,mt⟩ ,其中 st 是原始的图像输入, mt 是一些测量指标,如子弹数、血量。 不同的未来状态与当前测量的差分可以表示为: f=⟨mt+τ1−mt,…,mt+τn−mt⟩ 。设任何目标 g可以用函数 u(f;g) 表达:
u(f;g)=g⊤f 目标即不同测量指标的权重,如生命值权重为1,其它为0.5。
为了预测未来的测量值,我们使用一个函数近似:
pta=F(ot,a,g;θ) 然后选择函数 u 最大的动作执行:
at=a∈Aargmaxg⊤F(ot,a,g;θ) 很显然,这里的测量值就类似于标准强化学习里面的回报
Training
目标函数被定义为:
L(θ)=i=1∑N∥F(oi,ai,gi;θ)−fi∥2 我们评估了两种训练方法:
ARCHITECTURE
这里使用了类似于Dueling的网络结构,首先通过卷积网络、全连接网络得到 s,m,g 。然后预测一个 E
作为未来测量值的期望, A 为动作优势值,并且归一化成均值0。这样做的好处是让网络更容易学习预测,可以参考Dueling DQN。
Ai(j)=Ai(j)−w1k=1∑wAk(j) p=⟨pa1,…,paw⟩=⟨A1(j)+E(j),…,Aw(j)+E(j)⟩ 实验
固定场景
与目标无关的训练