Implementation of Coverage Path Planning Based on Modified NSGA-II and Kalman Filter on GoPiGo3 Robot
##plugins.themes.bootstrap3.article.main##
Abstract
Coverage path planning (CPP) is essential in mobile robot tasks such as cleaning and exploration, where paths must balance area coverage, path length, number of turns, and energy consumption. This work presents a complete framework, from multi-objective CPP using a modified NSGA-II to real-world deployment on a GoPiGo3 differential-drive robot. Pareto-optimal paths are generated to address conflicting objectives, while an adaptive Kalman filter and PD controllers ensure accurate localization and control. IMU noise variances are derived from power spectral density analysis, and odometry noise is modeled based on slip detection. PD gains are auto-tuned using a two-stage Ziegler-Nichols method followed by L-BFGS-B optimization. The full system is implemented on a Raspberry Pi 3B+, running at 10 Hz with cycle times around 30 milliseconds and under 5 MB RAM usage in Python. Ablation studies (full system vs. odometry-only; full system vs. no PD) highlight the impact of each module. Kalman filter covariance evolution shows increasing confidence over time. Real-world experiments conducted in indoor kitchen and living room layouts demonstrate 100% coverage, 15–30% energy savings compared to a hybrid genetic algorithm, and 20–30% better coverage than spiral-STC. The results validate the framework’s ability to translate optimized plans into robust physical execution.
##plugins.themes.bootstrap3.article.details##

This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
https://orcid.org/0000-0002-5938-0138