pub struct Node {
pub root: bool,
pub parent: *mut Node,
pub children: HashMap<(usize, usize), Vec<Node>>,
pub times_visited: u32,
pub instructions: StateInstructions,
pub s1_choice: u8,
pub s2_choice: u8,
pub s1_options: Option<Vec<MoveNode>>,
pub s2_options: Option<Vec<MoveNode>>,
}Fields§
§root: bool§parent: *mut Node§children: HashMap<(usize, usize), Vec<Node>>§times_visited: u32§instructions: StateInstructions§s1_choice: u8§s2_choice: u8§s1_options: Option<Vec<MoveNode>>§s2_options: Option<Vec<MoveNode>>Implementations§
Source§impl Node
impl Node
pub fn maximize_ucb_for_side(&self, side_map: &[MoveNode]) -> usize
pub unsafe fn selection( &mut self, state: &mut State, ) -> (*mut Node, usize, usize)
pub unsafe fn expand( &mut self, state: &mut State, s1_move_index: usize, s2_move_index: usize, ) -> *mut Node
pub unsafe fn backpropagate(&mut self, score: f32, state: &mut State)
pub fn rollout(&mut self, state: &mut State, root_eval: &f32) -> f32
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Node
impl RefUnwindSafe for Node
impl !Send for Node
impl !Sync for Node
impl Unpin for Node
impl UnwindSafe for Node
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more