Keskeiset käsitteet
This paper presents efficient algorithms for computing the terminal configurations of sandpile instances on various graph structures, including trees, paths, cliques, and general graphs. The key ideas are to directly compute the number of firings at each vertex instead of simulating individual events, and to leverage data structures like splittable binary search trees to accelerate the computation.
Tiivistelmä
The paper focuses on the sandpile prediction problem, which is to determine whether a given sandpile instance terminates and compute its terminal configuration.
For structured graphs:
- On trees, the authors propose an O(n log n) time algorithm that computes the firing number at each vertex, improving upon the previous best O(n log^5 n) time algorithm.
- On paths, the authors achieve a linear time algorithm by leveraging the Dynamic Finger Theorem.
- On cliques, the authors provide a linear time algorithm as well.
For general graphs:
- The authors first analyze the performance of simulation-based approaches, showing that they can be significantly improved by considering the generalized sandpile model with sinks.
- They propose a new simulation-based algorithm that achieves a logarithmic dependency on the total number of chips, improving over the previous polynomial dependency.
- The authors also provide a reduction scheme that decomposes the input graph into smaller subgraphs, enabling the application of specialized algorithms on the subgraphs.
Overall, the paper presents a comprehensive set of techniques to efficiently solve the sandpile prediction problem on various graph structures.