网易互娱强化学习面经

上周面完了互娱的三面,今天稍微空闲下来写一写面经,顺便许愿一个意向书。
整体来说互娱面试难度适中,对算法的理解需要较为深刻,并且要求算法代码有自己上过手(看别人源码也行,但必须要看懂实现细节),只要基础比较扎实的话通常是可以有三轮面试机会的,下面我大概总结一下整个流程。

一面
一面主要分为两个部分:询问项目 + 算法基础
项目部分:
因为针对于多智能体和单智能体我自己分别写了两款游戏环境用于验证一些主流的单/多智能体的RL算法,因此这一次面试中面试官在项目部分主要问的是游戏-算法的架构设计:
1. 整个系统的设计模式是什么样的?游戏端和算法端是如何进行数据通信的?游戏端内部如何响应算法的决策行为?算法模块如何接收游戏端发送来的状态数据?
2. 游戏中都涉及到了哪些决策行为,是连续的还是离散的?
3. 这两款游戏为什么就适合验证单/多智能体算法?
4. 如果现在有一个游戏,但它原本设计的时候并不是为了强化学习而设计的,那么想要打通游戏与算法的通信管道应该怎么做?
算法基础部分:
1. 你说你用到了算法库中实现了PG/DQN/PPO,那你分别介绍一下这三个算法吧。(建议:每一个算法从设计初衷开始介绍,算法提出是为了解决什么问题,怎么解决的这些问题,最后讲一讲代码是怎么实现的)
2. 你说PPO中用到的Importance Sampling,但同样作为Off-Policy的DQN为什么不需要做Importance Sampling?(从更新公式和策略模型方向回答)
3. 你说的PPO中的Surrogate Clip具体Clip的是什么,为什么要做Clip?(从Importance Sampling的原理反推出分布差异不能过大的这一局限性)
4. 说一说AC吧。(介绍AC的设计初衷和代码实现)
5. 你说actor的更新是受到critic的指导的,那具体是如何进行指导的?(从variance和baseline这两个方面回答)

二面
二面和一面流程差不多,主要分为两个部分:询问项目 + 算法基础 + 算法题
感觉每一轮面试官都比较关注项目,都会问一些项目相关的问题:
1. 训练的时候你的游戏是分布式部署的还是独立部署的?
2. 游戏端有设计wrapper吗,具体有哪些功能?
3. 支持并行化学习吗?
4. 看到你提到说游戏是支持self-play的,如何支持的?训练效果怎么样?
算法基础部分:
1. 聊一聊GAE吧。(从设计初衷到计算公式最后代码实现讲一讲)
2. 如果我的Replay Buffer中现在只有128个steps,但一直到第128个steps都没有遇到terminal state,此时我应该如何计算GAE?(用伪状态值代替)
3. 你用MADDPG是如何解决离散行为控制的?(连续变量离散化)
4. 游戏中很可能在某些状态下出现某些行为此时不能被采取的情况,这种情况下该怎么办?(QMIX中如何实现和PPO中如何实现)
算法题:
1. 找连续数组中缺失的一个数。

三面
三面是主管面试,主要针对项目进行提问,前面两面项目都问的比较粗略,三面问的会很细节:
1. 单/多智能体的游戏剧本是什么?
2. 游戏中有几类Agent,规模是多大?
3. Agent的行为/观测是什么?
4. 游戏端设计了哪些模块,如何和算法模块进行数据通信的?
5. 介绍一下训练出来的模型效果?
6. 将算法用到游戏中做了哪些工作?(部署流程 + sparse reward情况下如何解决)
7. 在算法训练中有哪些创新点?
8. 单智能体游戏中为什么PPO效果最好?多智能体游戏中为什么QMIX效果最好?
9. Self-Play相关。
10. 你有什么想问我们的问题。

总的来说互娱的面试体验还是很不错的,不管最后能不能拿到意向书都是一次收获很大的经历。从面试中可以看出来面试官很在意你对算法的理解,是否有系统的、连贯的知识体系(比如从PG推到AC再推到PPO再推到COMA),在代码层面会关注你是否有自己亲自去上手算法代码,而不只是git clone,要熟悉游戏和算法之间的工作流程,对游戏环境和算法环境都要有一定的了解。

以上就是本次面经分享的全部内容,希望可以帮到大家,共勉。

#面经##网易互娱##校招##算法工程师#
全部评论
楼主你好,请问你是实习、校招还是社招?岗位是什么?开发的话,是Java方向还是C++方向?或者其他语言方向~
点赞
送花
回复 分享
发布于 2020-08-17 12:54
校招,校招,校招,2021年毕业,统招大学本科及以上! 负责微博客户端功能设计和研发:Android,iOS ,前端。 海量hc,轻松拿offer!!!简历请发到:dangguo@staff.weibo.com
点赞
送花
回复 分享
发布于 2020-08-17 12:55
秋招专场
校招火热招聘中
官网直投
老哥是提前批吗 我也强化学习 没有自己搞过qmix和coma,只写过maddpg,ddqn,ppo,td3和sac。qmix和coma是老哥简历里面的项目才会问吗😂我后来multiagent直接用sac做了……看了老哥的面经,感觉自己还要看的更细点
点赞
送花
回复 分享
发布于 2020-08-20 20:57
老哥有收到互娱offer吗
点赞
送花
回复 分享
发布于 2020-08-27 22:10
强化学习的超级大佬了!
点赞
送花
回复 分享
发布于 2020-08-31 22:42
大佬是硕士生还是博士生呀,tql..
点赞
送花
回复 分享
发布于 2020-09-01 00:29
大佬,用GAE处理被打断轨迹那条,用伪状态值代替是怎么操作呀😯
点赞
送花
回复 分享
发布于 2022-05-29 15:15
MADDPG用gumbel softmax
点赞
送花
回复 分享
发布于 2022-07-26 15:41

相关推荐

#25届网易互娱暑实进度# 这两天在牛客上看各位的面经,感觉我这边的面试强度莫名其妙的大(然后下面再稍微写一下二面里一些其他比较重要的问题,仅供各位参考 #网易互娱# 1、说出火影手游战斗系统的优秀点答:我觉得成功的点主要是技能释放方面和秘卷通灵这两个方向。一个是一件出招,玩家不用像传统的格斗游戏搓很多指令进行出招,双方都可以一键出招可以提高整体的博弈性;另一个秘卷通灵说是各种通灵秘卷的范围及其功能对游戏整体的博弈深度上升,如何去骗出来对方的这些秘卷通灵或者利用秘卷通灵更好的提供自己起手的机会,很高的增加了游戏整体的对战深度和博弈追问:那你有玩过其他的横版格斗手游吗答:也是魔方家的,上个月进行内测的海贼追问:你觉得火影和海贼谁更好,为什么答:我个人觉得海贼更好,一个是海贼的三种角色类型给游戏的上限提升了不少,并且每个角色都有着属于自己的打法,另一个是海贼对角色们都有着属于自己的机制,并不是像海贼那样简单的两个技能一个大招然后再叠个被动,他们都有着属于自己的玩法和机制,极大的提升了玩家对一个角色的理解和挖掘2、多人合作模式能参考什么游戏,参考该游戏的什么点答:我觉得可以参考双人成行,尤其两个角色视角双方玩家都能看清楚的双方视角。这样快速能简化沟通,根据对方的下一步行为进行操作。例如锤子钉子那关科迪可以根据小梅的屏幕和下一步操作进行投掷钉子和召回钉子的操作,极大简化了沟通成本。3、你自己的游戏是如何将计量表这个系统做出差异的答:这个计量条相当于玩家的资源管理系统,玩家需要使用相应的化合物给自己打开道路,这时对计量条对玩家而言是一个非常重要的资源管理,避免自己卡关第一个面试官问我的问题能参考点也就这些了,剩下的基本上都是以我项目为基础拷打。在第一个面试官结束之前他问了一个策划面试里面最经典的问题4、为什么想试着去做游戏答:想做出玩家感动自己满意的游戏出来。因为小时候玩nds接触到了宝可梦马里奥和星之卡比,感觉很厉害,所以想尝试着去做一款这种玩家感动自己自豪满意的游戏接下来说一下第二个面试官,这个面试官主要问了两个问题,应该是ARPG角色设计,一个是手机端和电脑端之间的操作保证原汁原味。第二个我答烂了,而且到现在不知道该咋说,第一个基本上就是参考火影的青年长门和不风来进行回答hr很常规,因为字数限制就不细写了现在看来好多问题都是压力,希望能过
点赞 评论 收藏
分享
#25届网易互娱暑实进度# 一面:两个面试官,都是浏览了一下我的简历开始问相关游戏,时间有点久了,可能记得不全。第一个问只狼,第二个问DOTA2:1.为啥喜欢只狼?答核心机制上的创新,同时继承魂类种种优点。2.追问核心机制上有什么缺点?(因为我提了一下)防御没什么成本,玩家可以在攻击前无限试错抖刀。以防反为基础的核心机制削弱玩家进攻主动性,限制游玩方式。3.设计两把武器去改善这一缺点。强霸体减伤的大刀,需要控制走位和身法在周边游击的长枪。4.这两把武器对应的敌人类型忘记答什么了,大概提到了水生凛和罗伯特爸爸这两个BOSS5.设计一个BOSS去让玩家使用到包括原版武器的三把武器设计了一个仙峰寺的武僧,一阶段短距离投技为主,二阶段快节奏平A为主,三阶段大佛远距离攻击和前两阶段攻击手段结合。6.三把武器做一个pvp模式,如何让三把武器上场率趋于一致阿巴阿巴阿巴乱答了一些,因为感觉这个问题和前面的问题其实挺相似,主要围绕石头剪刀布的互相克制关系答的。然后第二个面试官:1.DOTA2最近IG打得很鳖,游戏节奏怎么提速?答新版本已经提供了现成改善方案,然后分析了节奏慢的背后原因。2.如果让你重新设计地图,怎么改善节奏问题,让我回答得越详细越好。还能怎么滴,改呗,改肉山位置,改资源分布,改传送门,改肉山掉落,改塔防机制等等等等……后面还问了啥就忘了。然后第一个面试官又说我有些问题要补充,问完了之后第二个面试官又说我还有些问题要补充,完了之后第一个面试官又补充了一些问题(他自己说完都笑了。)最后反问:1.项目组不固定2.对我个人的改善意见反问我你觉得呢我说我有的时候表达还是有点语序混乱,语言组织能力可以继续提高第一个面试官说这很正常,面试都会有点,他觉得我没什么问题,继续保持。(这里我结合面试气氛就知道面评应该不错)第一段面试差不多就这样,很丝滑很愉快。
点赞 评论 收藏
分享
12 57 评论
分享
牛客网
牛客企业服务