Control strategies for cleaning robots in domestic applications: A comprehensive review