The Snowblower Problem
Esther M. Arkin (1), Michael A. Bender (2), Joseph S. B. Mitchell (1),, Valentin Polishchuk (1) ((1) Department of Applied Mathematics and, Statistics, Stony Brook University, (2) Department of Computer Science, Stony, Brook University)

TL;DR
This paper introduces the snowblower problem (SBP), an optimization challenge related to milling and material handling, providing complexity analysis and approximation algorithms for various snow-throwing constraints.
Contribution
It formally defines SBP, proves its NP-completeness, and offers polynomial-time approximation algorithms tailored to different snow-throwing capabilities.
Findings
SBP is NP-complete in general.
Constant-factor approximation algorithms are developed for different throw directions.
Results apply to robotic vacuuming and warehouse carton rearrangement.
Abstract
We introduce the snowblower problem (SBP), a new optimization problem that is closely related to milling problems and to some material-handling problems. The objective in the SBP is to compute a short tour for the snowblower to follow to remove all the snow from a domain (driveway, sidewalk, etc.). When a snowblower passes over each region along the tour, it displaces snow into a nearby region. The constraint is that if the snow is piled too high, then the snowblower cannot clear the pile. We give an algorithmic study of the SBP. We show that in general, the problem is NP-complete, and we present polynomial-time approximation algorithms for removing snow under various assumptions about the operation of the snowblower. Most commercially-available snowblowers allow the user to control the direction in which the snow is thrown. We differentiate between the cases in which the snow can be…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
