cf7503086ed2d754920b28a6e28e468e0917bd92 algorithms-17-00200.pdf