1
0
Fork 0
mirror of https://gitlab.rlp.net/mobitar/ReCo.jl.git synced 2025-09-02 09:02:35 +00:00

Added reward discount analysis

This commit is contained in:
Mo8it 2022-01-30 02:28:34 +01:00
parent a57bebbcb7
commit b5767f0104
4 changed files with 65 additions and 11 deletions

View file

@ -160,7 +160,7 @@ function plot_radial_distributions(;
max_g = maximum(maximum.(gs))
ax = Axis(
fig[1:2, 1:2];
fig[1, 1];
xticks=0:(2 * particle_radius):floor(Int64, max_lower_radius),
yticks=0:ceil(Int64, max_g),
xlabel=L"r / d",

View file

@ -0,0 +1,49 @@
using CairoMakie
using LaTeXStrings: @L_str
using ReCo: ReCo
includet("../src/Visualization/common_CairoMakie.jl")
function run_reward_discount_analysis()
γs = 0.0:0.2:1.0
n_γs = length(γs)
γ_rewards = Vector{Vector{Float64}}(undef, n_γs)
Threads.@threads for γ_ind in 1:n_γs
γ = γs[γ_ind]
env_helper = ReCo.run_rl(;
EnvType=ReCo.OriginEnv,
n_episodes=500,
episode_duration=8.0,
n_particles=200,
update_actions_at=0.08,
ϵ_stable=0.00001,
process_dir="reward_discount_analysis/$γ_ind",
reward_discount=γ,
)
rewards = env_helper.shared.hook.rewards
γ_rewards[γ_ind] = rewards
end
init_cairomakie!()
fig = gen_figure()
ax = Axis(fig[1, 1]; xlabel="Episode", ylabel="Reward")
rewards_plots = []
for (rewards_ind, rewards) in enumerate(γ_rewards)
rewards_plot = lines!(ax, 1:length(rewards), rewards)
push!(rewards_plots, rewards_plot)
end
Legend(fig[1, 2], rewards_plots, [L"\gamma = %$γ" for γ in γs])
set_gaps!(fig)
save_fig("reward_discount_analysis.pdf", fig)
return nothing
end