This commit is contained in:
		| @@ -124,7 +124,6 @@ async fn get_move(request: Json<Request>) -> response::Json<Response> { | ||||
|         let request = request.clone(); | ||||
|         let board = board.clone(); | ||||
|         let mut rng = SmallRng::from_os_rng(); | ||||
|         let actions = actions.clone(); | ||||
|         tokio::task::spawn_blocking(move || { | ||||
|             let mut mcts_managers: Vec<_> = (0..request.board.snakes.len()) | ||||
|                 .map(|id| MctsManager::new(u8::try_from(id).unwrap())) | ||||
| @@ -153,16 +152,6 @@ async fn get_move(request: Json<Request>) -> response::Json<Response> { | ||||
|                 } | ||||
|             } | ||||
|             let my_mcts_manager = mcts_managers.into_iter().nth(usize::from(id)).unwrap(); | ||||
|             for action in actions { | ||||
|                 let score = my_mcts_manager.base.next[usize::from(action)] | ||||
|                     .as_ref() | ||||
|                     .map(|info| info.score as f32 / info.played as f32); | ||||
|                 if let Some(score) = score { | ||||
|                     info!("{action:?} -> {score}"); | ||||
|                 } else { | ||||
|                     info!("{action:?} -> None"); | ||||
|                 } | ||||
|             } | ||||
|  | ||||
|             let actions = my_mcts_manager.base.next.map(|action| { | ||||
|                 action.map_or(0.0, |action| action.score as f32 / action.played as f32) | ||||
| @@ -171,7 +160,7 @@ async fn get_move(request: Json<Request>) -> response::Json<Response> { | ||||
|             (actions, my_mcts_manager.base.played) | ||||
|         }) | ||||
|     }); | ||||
|     let (actions, played) = join_all(action_futures).await.into_iter().fold( | ||||
|     let (scores, played) = join_all(action_futures).await.into_iter().fold( | ||||
|         ([0.0; 4], 0), | ||||
|         |(mut total, mut games), actions| { | ||||
|             if let Ok((actions, new_games)) = actions { | ||||
| @@ -183,7 +172,11 @@ async fn get_move(request: Json<Request>) -> response::Json<Response> { | ||||
|             (total, games) | ||||
|         }, | ||||
|     ); | ||||
|     let action = actions | ||||
|     for action in actions { | ||||
|         let score = scores[usize::from(action)]; | ||||
|         info!("{action:?} -> {score}"); | ||||
|     } | ||||
|     let action = scores | ||||
|         .into_iter() | ||||
|         .enumerate() | ||||
|         .max_by_key(|(_, score)| FloatOrd(*score)) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user