// the find
onlytailei/CppRobotics
cpp implementation of robotics algorithms including localization, mapping, SLAM, path planning and control
A C++ port of the well-known PythonRobotics project, covering EKF/particle filter localization, path planning (A*, RRT, DWA, Frenet), and LQR/MPC control. Aimed at robotics students and engineers who want reference implementations they can actually profile and integrate into C++ systems without a Python bridge. Not a production library — it's a learning resource with runnable demos.
The algorithm selection is solid and covers the canonical curriculum: EKF, particle filter, A*, RRT/RRT*, DWA, Frenet frame, LQR, MPC — everything you'd hit in a mobile robotics course or early research prototype. MPC is wired up to CppAD/IPOPT, which is the real convex optimizer, not a toy approximation. The devcontainer setup is a genuine convenience — cmake + OpenCV + Eigen environments are notoriously painful to reproduce. GIF visualizations in the README make it immediately clear what each algorithm is doing without running anything.
Last commit was March 2024 and the table of contents lists several algorithms (histogram filter, Gaussian grid map, FastSLAM 1.0, drone trajectory, rocket landing) with no corresponding source files — they're placeholders that were never implemented. The codebase is a collection of standalone .cpp files with no shared abstractions; you can't compose algorithms or swap a planner without copy-pasting code. No tests anywhere — correctness is verified only by eyeballing the visualization output. The IPOPT dependency install story is a link to a Udacity CarND repo from 2017, which is not inspiring for a production dependency chain.