pub struct BiDij {}Expand description
Bidirectional Dijkstra’s algorithm (cost-aware).
Searches forward from the initial state and backward from the goal
simultaneously, expanding the side with the lowest g value.
Guarantees optimal (minimum-cost) plans.
§Examples
use miniplan::search::{BiDij, Planner};
let planner = BiDij::new();
assert_eq!(planner.name(), "bidij");Implementations§
Trait Implementations§
Source§impl Planner for BiDij
impl Planner for BiDij
Source§fn capabilities(&self) -> PlannerCapabilities
fn capabilities(&self) -> PlannerCapabilities
The capabilities this planner supports.
Source§fn solve(
&mut self,
task: &Task,
limits: &SearchLimits,
) -> Result<SearchOutcome, MiniplanError>
fn solve( &mut self, task: &Task, limits: &SearchLimits, ) -> Result<SearchOutcome, MiniplanError>
Solve the given
task within the specified limits.Auto Trait Implementations§
impl Freeze for BiDij
impl RefUnwindSafe for BiDij
impl Send for BiDij
impl Sync for BiDij
impl Unpin for BiDij
impl UnsafeUnpin for BiDij
impl UnwindSafe for BiDij
Blanket Implementations§
Source§impl<V, T, O> AcceptMut<V, T, O> for Twhere
V: VisitorMut<T, O>,
impl<V, T, O> AcceptMut<V, T, O> for Twhere
V: VisitorMut<T, O>,
fn accept_mut(&self, v: &mut V) -> O
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