pub struct IterativeDeepeningSearch { /* private fields */ }Expand description
Iterative deepening search implementation
Implementations§
Source§impl IterativeDeepeningSearch
impl IterativeDeepeningSearch
Sourcepub fn new(max_depth: usize, kb: KnowledgeBase) -> Self
pub fn new(max_depth: usize, kb: KnowledgeBase) -> Self
Create a new iterative deepening search
Sourcepub fn new_with_engine(
max_depth: usize,
kb: KnowledgeBase,
engine: Option<Arc<Mutex<IncrementalEngine>>>,
) -> Self
pub fn new_with_engine( max_depth: usize, kb: KnowledgeBase, engine: Option<Arc<Mutex<IncrementalEngine>>>, ) -> Self
Create with optional IncrementalEngine for TMS integration
Sourcepub fn search_with_execution(
&mut self,
root_goal: &mut Goal,
facts: &mut Facts,
kb: &KnowledgeBase,
) -> SearchResult
pub fn search_with_execution( &mut self, root_goal: &mut Goal, facts: &mut Facts, kb: &KnowledgeBase, ) -> SearchResult
Search with execution: probe with increasing depth using non-executing DFS, then run a final executing DFS at the discovered depth to mutate facts.
Sourcepub fn search(&mut self, root_goal: &mut Goal, facts: &Facts) -> SearchResult
pub fn search(&mut self, root_goal: &mut Goal, facts: &Facts) -> SearchResult
Non-executing search using iterative deepening (probes only)
Auto Trait Implementations§
impl Freeze for IterativeDeepeningSearch
impl RefUnwindSafe for IterativeDeepeningSearch
impl Send for IterativeDeepeningSearch
impl Sync for IterativeDeepeningSearch
impl Unpin for IterativeDeepeningSearch
impl UnwindSafe for IterativeDeepeningSearch
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