TD(1步)-》n-steps learning-》MC(全局) 使用权重(1-λ)λn−1求一个平均的G_t summary: MC方法,估计Value(state) Expection(V) TD one-step 看下一步估计 n-steps 估计 TD-lambda 加权估计 model free prediction model 预测出每一个状态的value, Policy 是强化学习的目的,只有value(s)是不够的 ...
# n-steps TD 算法实现# value: 输入状态价值函数# n: 输入n步的值# alpha: 定义步长deftemporal_difference(value,n,alpha):# 初始化状态位置state=START_STATE# 定义一个列表存储states和rewardsstates=[state]rewards=[0]# 进行时间跟踪time=0# 是定时间初始为无限T=float('inf')whileTrue:# 进一个时间...
zeros( (len(steps), len(alphas)) ) for run in range(runs): for step_i, n in enumerate(steps): for alpha_i, alpha in enumerate(alphas): value = n_step_TD_prediction(env, n, alpha, num_of_episode, gamma) errors[step_i, alpha_i] += np.sqrt(np.sum(np.power(value - TRUE_...
self.steps +=1 # 隔一定步数 更新目标网络 ifself.steps % self.update_rate ==0: self.target_q_net.load_state_dict(self.q_net.state_dict()) # 更新epsilon值 使得探索时间衰减 ifself.epsilon > self.epsilon_min: self.epsilon *= self.epsilon_decay deftrain(self,env,episodes): steps = [...
steps_count=2:产生的轨迹长度。 vectorized=False:如果设成True,环境需要是一个OpenAI Universe的向量化环境。我们会在第16章详细讨论这类环境。 这个类提供了标准的Python迭代器接口,所以可以直接通过迭代它来获得子轨迹: 每次迭代,ExperienceSource都返回智能体在与环境交互时的轨迹。这可能看起来很简单,但是在示例的...