当前位置: 首页 > 面试经验 >

零跑汽车- 强化学习算法工程师面经

优质
小牛编辑
231浏览
2023-03-28

零跑汽车- 强化学习算法工程师面经

因为投的比较晚,所以目前进行到一面,后面是主管面和HR 面。

一面(1小时20分钟):主要是聊项目和论文,撕了一道蒙特卡洛估计的题
  • 从论文的DDPG算法开始聊,TD3,SAC算法,应用场景,优缺点啥的
  • 聊王者荣耀比赛,从网络结构设计(特征工程、channel attention,self-attention,multi-head value estimation),奖励函数设计,算法设计(dual-clip PPO + NoisyNet, 此处对RL 中的探索方法展开了一下),训练流程设计(自对弈模型筛选、策略集成),聊完之后面试官已经比较满意了,后面就是随便聊了些跟CV相关的比赛和项目
  • 聊天池图像分割比赛,讲了一下我们上分技巧,伪标签+模型融合,顺便讲了一下为什么伪标签这种方法在比赛中屡试不爽
  • 聊另外一个项目,跟机器人抓取相关,介绍了一下整体方案,网络结构,问了一些项目中的难点怎么解决的
代码题: 从左至右 有 A,B,C,D,E 五个点,每次初始时刻智能体都在C点处,每次有0.5的概率往左,0.5的概率往右,到达A 点或者E点就结束,到达A 的话 获得 r = 1 的奖励,到达E获得 r = -1的奖励,否则 r =0. 试写一个强化学习环境 并且估计智能体到达A 点的概率

就是写个环境然后进行蒙特卡洛估计,代码如下,到达A 点的概率在0.5左右
class gameenv:
    def __init__(self):
        self.arr = ['A','B','C','D','E']
        self.state = 2

    def reset(self):
        self.state = 2

    def step(self, action):
        if action == 0:
            self.state = self.state-1
        elif action==1:
            self.state = self.state+1
        if self.arr[self.state] =='A':
            done = True
            r = 1
        elif self.arr[self.state] =='E':
            done = True
            r = -1
        else:
            done = False
            r = 0
        return self.state, r, done



反问业务:预研部门,然后用RL 做路径点规划,感觉有点像goal-conditioned 的任务,只不过每个目标点有约束。


二面(10min):刚吃完晚饭,直接一个电话call 过来,没有提前预约,问了一些业务问题和八股
  • 怎么用RL 做路径规划?尝试给出一个具体的方案
  • 深拷贝和浅拷贝
  • 动态规划和分治的区别        

#强化学习##自动驾驶##零跑汽车#
 类似资料: