linyiLYi / snake-ai

An AI agent that beats the classic game "Snake".
Apache License 2.0
1.61k stars 359 forks source link

固定随机种子训练 #15

Closed lovoio closed 1 year ago

lovoio commented 1 year ago

看了林亦视频里固定随机种子中的代码,我加了fix_seed,垃圾显卡训练了22个小时,训练完还是吃不完所有食物,再次比对reset方法,发现里面

//少了
self.non_snake
// 多了
self.food_list

有大佬或者作者补全这块代码吗

lang07123 commented 1 year ago

train_cnn.py

    # Generate a list of random seeds for each environment.
    seed_set = set()
    while len(seed_set) < NUM_ENV:
        seed_set.add(random.randint(0, 1e9))

给游戏注入seed的代码在这里, 你把set 里面全放一样的数字就行了.比如

seed_set.add(123456)
lang07123 commented 1 year ago

还有你可能会意错作者的意思了, 作者的意思也不是训练完就可以吃完所有食物 ... 你可以运行一下 hamiltonian_agent.py 你大概就理解了

lovoio commented 1 year ago

还有你可能会意错作者的意思了, 作者的意思也不是训练完就可以吃完所有食物 ... 你可以运行一下 hamiltonian_agent.py 你大概就理解了

也对,只是看作者固定随机种子能吃完全部,我固定后最多吃到8-9百分,第一反应是检查代码。同样是深度学习,咱家的小蛇蛇一败涂地