python随机种子seed的作用(强化学习常用到)

先上代码

import math
import gym
from gym import spaces, logger
from gym.utils import seeding
import numpy as np

class CartPoleEnv(gym.Env):
    def __init__(self):
        super().__init__()
    
        self.seed()
    
    def seed(self, seed=None):   #seed设置为任意整数后,随机值固定,如果设置随机值固定
        self.np_random, seed = seeding.np_random(seed)
        return [seed]



    def reset(self):
        self.state = self.np_random.uniform(low=-0.05, high=0.05, size=(4,))
        self.steps_beyond_done = None
        return np.array(self.state)


env=CartPoleEnv()
print(env.reset())

输出结果:【每次都会不一样】

[ 0.0322836  -0.04638474  0.01553654  0.04217918]

[-0.04618838  0.04793247  0.01464823 -0.02379606]

#seed设置为任意整数后,随机值固定,如果设置随机值固定

如果随便设置seed=常数

seed=1 结果都是一样

你可能感兴趣的:(#,强化学习相关技巧(调参,画图等),python,人工智能,强化学习,ddpg,maddpg)