This commit is contained in:
narawat lamaiin
2024-08-20 20:18:10 +07:00
parent 997cc904dd
commit c33d69b00c

View File

@@ -203,14 +203,17 @@ end
""" """
function expand(node::MCTSNode, transition::Function, transitionargs::NamedTuple; function expand(node::MCTSNode, transition::Function, transitionargs::NamedTuple;
totalsample::Integer=3) totalsample::Integer=3)
results = Any[]
# not use Any[] because I want to preserve result order
results = Vector{Any}(undef, totalsample)
@sync for i in 1:totalsample @sync for i in 1:totalsample
@spawn begin @spawn begin
results[i] = transition(deepcopy(node.state), deepcopy(transitionargs)) result = transition(deepcopy(node.state), deepcopy(transitionargs))
results[i] = result
end end
println("--> sampling $i")
end end
for result in results for result in results
newNodeKey::AbstractString = result[:newNodeKey] newNodeKey::AbstractString = result[:newNodeKey]
newstate::AbstractDict = result[:newstate] newstate::AbstractDict = result[:newstate]