diff --git a/julia_code/BellmanResidualMinimization.jl b/julia_code/BellmanResidualMinimization.jl index 125838c..2ee4111 100644 --- a/julia_code/BellmanResidualMinimization.jl +++ b/julia_code/BellmanResidualMinimization.jl @@ -218,7 +218,7 @@ function Ξ( bellman_residuals = value((s,d)) - payoff_fn(s,d,a,econ_params) - econ_params.β*value((s′,d′)) maximization_condition = - payoff_fn(s,d,a,econ_params) - econ_params.β*value((s′,d′)) - return bellman_residuals.^2 - maximization_condition + return sum([bellman_residuals.^2 maximization_condition]) end # ╔═╡ a20959be-65e4-4b69-9521-503bc59f0854 @@ -229,27 +229,33 @@ end # ╔═╡ dff642d9-ec5a-4fed-a059-6c07760a3a58 #loss function -loss(s,d) = Flux.mse(Ξ(s,d,bm,em,payoff1),0) +loss(s,d) = Ξ(s,d,bm,em,payoff1) + +# ╔═╡ 20c777b5-4295-4478-8f53-b18cd409c8ae +s1 = ones(N_constellations) + +# ╔═╡ 1d65707c-6333-4252-ace6-bad47146ba06 +d1 = ones(N_debris) + +# ╔═╡ 43b99708-0052-4b78-886c-92ac2b532f29 +Ξ(s1,d1,bm,em,payoff1) + +# ╔═╡ 39433c1a-c3ac-45b0-b1bf-ff2d42ca9cbb + # ╔═╡ 6bf8d29a-7990-4e91-86e6-d9894ed3db27 #optimizer ADAM = Flux.Optimise.ADAM() # ╔═╡ 74f5fde3-0593-46fc-a688-f1db7ab28c64 -for i in 1:10 - #print loss under certain conditions - #loss(s1,d1) - - - for epoch in 1:200 - #train the policy funciton - Flux.Optimise.train!(loss, params(policy), data, ADAM) +for epoch in 1:200 + #train the policy funciton + Flux.Optimise.train!(loss, params(policy), data, ADAM) - #Sweep through the value functions:w - - #Train the value functions - Flux.Optimise.train!(loss, params(value), data, ADAM) - end + #Sweep through the value functions:w + + #Train the value functions + Flux.Optimise.train!(loss, params(value), data, ADAM) end # ╔═╡ 02f3fe78-e7a7-453f-9ddf-acddf08d8676 @@ -849,6 +855,10 @@ uuid = "3f19e933-33d8-53b3-aaab-bd5110c3b7a0" # ╠═41271ab4-1ec7-431f-9efb-0f7c3da2d8b4 # ╠═a20959be-65e4-4b69-9521-503bc59f0854 # ╠═dff642d9-ec5a-4fed-a059-6c07760a3a58 +# ╠═20c777b5-4295-4478-8f53-b18cd409c8ae +# ╠═1d65707c-6333-4252-ace6-bad47146ba06 +# ╠═43b99708-0052-4b78-886c-92ac2b532f29 +# ╠═39433c1a-c3ac-45b0-b1bf-ff2d42ca9cbb # ╠═6bf8d29a-7990-4e91-86e6-d9894ed3db27 # ╠═74f5fde3-0593-46fc-a688-f1db7ab28c64 # ╠═02f3fe78-e7a7-453f-9ddf-acddf08d8676