Template Struct Predicate_Fwd2D

Struct Documentation

template<int D, typename FT>
struct Predicate_Fwd2D

Implementation of the voxel-intersection predicate in planar robots.

Support the k-k’-dynamic-gap. That is, if out of k measurements, k’ measured the given environment’s map, then the localization is guaranteed to return the ground truth location. Is also robust under small measurement errors.

Template Parameters:
  • D – C-Space dimension. Should be at least 3 (X,Y,rotation)

  • FT – Field type. Usually double.

Public Functions

inline Predicate_Fwd2D(std::shared_ptr<Environment<D, FT>> env, std::vector<Configuration<D, FT>> odometry, std::vector<FT> measurements, double kk_prime_ratio, double error_bound)

Constructor gets all needed information beforehand.

Parameters:
  • env

  • odometry – List of configurations that represent the robot’s odometry.

  • measurements – List of corresponding measurements to each odometry.

  • kk_prime_ratio – The ratio between k’ (good measurements) and k (total measurements).

  • error_bound – An upper bound on the measurement error.

inline bool operator()(Voxel<D, FT> v)
inline bool verify(Voxel<D, FT> v)
inline Voxel<D, FT> forward(FT d, Configuration<D, FT> g, Voxel<D, FT> v)

F_dg(V), as described in the paper.

Note

This helper method is public for testing/examples

inline Configuration<D, FT> odometryAction(Configuration<D, FT> q, Configuration<D, FT> g)

The action of the odometry on the configuration space.

Note

This helper method is public for testing/examples

inline void updateIteration(int iter)