pub struct ConformalSippConfig {
pub width: i32,
pub height: i32,
pub obstacle_map: Vec<Vec<bool>>,
pub predicted_obstacles: Vec<PredictedObstacleTrajectory>,
pub calibration_errors_by_time: Vec<Vec<f64>>,
pub time_horizon: u64,
pub required_confidence: f64,
pub obstacle_radius: f64,
pub allow_diagonal: bool,
}Expand description
Configuration for CP-SIPP over a discrete grid and finite time horizon.
calibration_errors_by_time[t] contains historical nonconformity scores for
prediction horizon t. A grid cell is safe at time t when the empirical
confidence induced by its distance to the nearest predicted obstacle is at
least required_confidence.
Fields§
§width: i32§height: i32§obstacle_map: Vec<Vec<bool>>Static obstacle map: true means blocked.
predicted_obstacles: Vec<PredictedObstacleTrajectory>Predicted obstacle centers indexed by discrete time.
calibration_errors_by_time: Vec<Vec<f64>>Historical prediction errors for each discrete time.
time_horizon: u64Last discrete time that may appear in a plan.
required_confidence: f64Required empirical confidence in [0, 1].
obstacle_radius: f64Base footprint radius added to prediction error margins.
allow_diagonal: boolWhether to allow diagonal (8-connected) movement.
Trait Implementations§
Source§impl Clone for ConformalSippConfig
impl Clone for ConformalSippConfig
Source§fn clone(&self) -> ConformalSippConfig
fn clone(&self) -> ConformalSippConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ConformalSippConfig
impl RefUnwindSafe for ConformalSippConfig
impl Send for ConformalSippConfig
impl Sync for ConformalSippConfig
impl Unpin for ConformalSippConfig
impl UnsafeUnpin for ConformalSippConfig
impl UnwindSafe for ConformalSippConfig
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.