示例#1
0
import numpy as np
from matplotlib import rcParams
from utils import Saver, TestUtils

from matplotlib import rcParams

rcParams['font.family'] = 'sans-serif'
rcParams['font.sans-serif'] = ['Tahoma']
rcParams['font.size'] = 16

saver = Saver()
test_utils = TestUtils()

q_learner = saver.load_from_pickle("results/q_learner_example.pickle")
lr_learner = saver.load_from_pickle("results/low_rank_learner_example.pickle")

steps_q_large = saver.load_from_pickle("results/exp_1_q_learning_steps.pickle")
rewards_q_large = saver.load_from_pickle(
    "results/exp_1_q_learning_rewards.pickle")
final_mean_reward_q_large = saver.load_from_pickle(
    "results/exp_1_q_learning_final_reward.pickle")

steps_q_small = saver.load_from_pickle("results/exp_2_q_learning_steps.pickle")
rewards_q_small = saver.load_from_pickle(
    "results/exp_2_q_learning_rewards.pickle")
final_mean_reward_q_small = saver.load_from_pickle(
    "results/exp_2_q_learning_final_reward.pickle")

steps_lr = saver.load_from_pickle("results/exp_1_lr_learning_steps.pickle")
rewards_lr = saver.load_from_pickle("results/exp_1_lr_learning_rewards.pickle")
final_mean_reward_lr = saver.load_from_pickle(
示例#2
0
from matplotlib import rcParams
import matplotlib.pyplot as plt
from utils import Saver
import numpy as np

saver = Saver()

rcParams['font.family'] = 'sans-serif'
rcParams['font.sans-serif'] = ['Tahoma']
rcParams['font.size'] = 16

rewards_dqn_light = saver.load_from_pickle("results/rewards_1_layer_2000_light.pck")
steps_dqn_light = saver.load_from_pickle("results/steps_1_layer_2000_light.pck")

rewards_dqn_large = saver.load_from_pickle("results/rewards_1_layer_2000_large.pck")
steps_dqn_large = saver.load_from_pickle("results/steps_1_layer_2000_large.pck")

rewards_lr = saver.load_from_pickle("results/rewards_k_2.pck")
steps_lr = saver.load_from_pickle("results/steps_k_2.pck")

rewards_lr_norm = saver.load_from_pickle("results/rewards_k_2_norm.pck")
steps_lr_norm = saver.load_from_pickle("results/steps_k_2_norm.pck")

median_rewards_dqn_light = np.median(rewards_dqn_light, axis=0)
median_steps_dqn_light = np.median(steps_dqn_light, axis=0)

median_rewards_dqn_large = np.median(rewards_dqn_large, axis=0)
median_steps_dqn_large = np.median(steps_dqn_large, axis=0)

median_reward_lr = np.median(rewards_lr, axis=0)
median_steps_lr = np.median(steps_lr, axis=0)
示例#3
0
from matplotlib import rcParams
from utils import Saver, TestUtils

saver = Saver()
test_utils = TestUtils()

rcParams['font.family'] = 'sans-serif'
rcParams['font.sans-serif'] = ['Tahoma']
rcParams['font.size'] = 16

medians_q_learning = saver.load_from_pickle(
    "results/q_learning_medians.pickle")
stds_q_learning = saver.load_from_pickle("results/q_learning_stds.pickle")
frob_errors_q_learning = saver.load_from_pickle(
    "results/q_learning_frob_errors.pickle")

colors = ['b', 'r', 'g', 'y']
epsilons = sorted([float(epsilon) for epsilon in medians_q_learning.keys()])

medians_lr_learning = saver.load_from_pickle(
    "results/lr_learning_medians.pickle")
stds_lr_learning = saver.load_from_pickle("results/lr_learning_stds.pickle")
frob_errors_lr_learning = saver.load_from_pickle(
    "results/lr_learning_frob_errors.pickle")

test_utils.plot_smoothed_steps(medians_q=medians_q_learning,
                               medians_lr=medians_lr_learning,
                               epsilons=epsilons,
                               colors=colors)

test_utils.plot_sfe(epsilons=epsilons,
示例#4
0
import json
import numpy as np
from utils import LowRankLearning, Saver, TestUtils, get_env

parameters_file = "experiments/exp_lr_learning.json"
env = get_env()
saver = Saver()
test_utils = TestUtils()
Q_optimal = saver.load_from_pickle("results/Q_optimal.pickle")

with open(parameters_file) as j:
    parameters = json.loads(j.read())

medians = {}
standard_devs = {}
frob_errors = {}

for epsilon in parameters["epsilons"]:

    medians_temp = []
    standard_devs_temp = []
    frob_errors_temp = []

    for i in range(parameters["n_simulations"]):
        lr_learner = LowRankLearning(
            env=env,
            episodes=parameters["episodes"],
            max_steps=parameters["max_steps"],
            epsilon=epsilon,
            gamma=parameters["gamma"],
            k=parameters["k"],