更新算法模版

This commit is contained in:
johnjim0816
2022-11-06 12:15:36 +08:00
parent 466a17707f
commit dc78698262
256 changed files with 17282 additions and 10229 deletions

View File

@@ -0,0 +1,19 @@
general_cfg:
algo_name: Sarsa
device: cpu
env_name: CliffWalking-v0
mode: test
load_checkpoint: true
load_path: Train_CliffWalking-v0_Sarsa_20221030-021146
max_steps: 200
save_fig: true
seed: 1
show_fig: false
test_eps: 20
train_eps: 400
algo_cfg:
epsilon_decay: 300
epsilon_end: 0.01
epsilon_start: 0.95
gamma: 0.95
lr: 0.1

View File

@@ -0,0 +1,19 @@
general_cfg:
algo_name: Sarsa
device: cpu
env_name: CliffWalking-v0
mode: train
load_checkpoint: false
load_path: Train_CartPole-v1_DQN_20221026-054757
max_steps: 200
save_fig: true
seed: 1
show_fig: false
test_eps: 20
train_eps: 800
algo_cfg:
epsilon_decay: 300
epsilon_end: 0.01
epsilon_start: 0.95
gamma: 0.95
lr: 0.1

View File

@@ -0,0 +1,19 @@
general_cfg:
algo_name: Sarsa
device: cpu
env_name: Racetrack-v0
mode: test
load_checkpoint: true
load_path: Train_Racetrack-v0_Sarsa_20221030-021315
max_steps: 200
save_fig: true
seed: 10
show_fig: false
test_eps: 20
train_eps: 400
algo_cfg:
epsilon_decay: 200
epsilon_end: 0.01
epsilon_start: 0.9
gamma: 0.99
lr: 0.1

View File

@@ -0,0 +1,19 @@
general_cfg:
algo_name: Sarsa
device: cpu
env_name: Racetrack-v0
mode: train
load_checkpoint: false
load_path: Train_CartPole-v1_DQN_20221026-054757
max_steps: 200
save_fig: true
seed: 10
show_fig: false
test_eps: 20
train_eps: 400
algo_cfg:
epsilon_decay: 200
epsilon_end: 0.01
epsilon_start: 0.9
gamma: 0.99
lr: 0.1

View File

@@ -0,0 +1,35 @@
#!/usr/bin/env python
# coding=utf-8
'''
Author: JiangJi
Email: johnjim0816@gmail.com
Date: 2022-10-30 01:23:07
LastEditor: JiangJi
LastEditTime: 2022-10-30 02:01:54
Discription: default parameters of QLearning
'''
from common.config import GeneralConfig,AlgoConfig
class GeneralConfigSarsa(GeneralConfig):
def __init__(self) -> None:
self.env_name = "CliffWalking-v0" # name of environment
self.algo_name = "Sarsa" # name of algorithm
self.mode = "train" # train or test
self.seed = 1 # random seed
self.device = "cpu" # device to use
self.train_eps = 400 # number of episodes for training
self.test_eps = 20 # number of episodes for testing
self.max_steps = 200 # max steps for each episode
self.load_checkpoint = False
self.load_path = "tasks" # path to load model
self.show_fig = False # show figure or not
self.save_fig = True # save figure or not
class AlgoConfigSarsa(AlgoConfig):
def __init__(self) -> None:
# set epsilon_start=epsilon_end can obtain fixed epsilon=epsilon_end
self.epsilon_start = 0.95 # epsilon start value
self.epsilon_end = 0.01 # epsilon end value
self.epsilon_decay = 300 # epsilon decay rate
self.gamma = 0.90 # discount factor
self.lr = 0.1 # learning rate