  For robust and efficient detection of change points, we introduce a novel
methodology MUSCLE (multiscale quantile segmentation controlling local error)
that partitions serial data into multiple segments, each sharing a common
quantile. It leverages multiple tests for quantile changes over different
scales and locations, and variational estimation. Unlike the often adopted
global error control, MUSCLE focuses on local errors defined on individual
segments, significantly improving detection power in finding change points.
Meanwhile, due to the built-in model complexity penalty, it enjoys the finite
sample guarantee that its false discovery rate (or the expected proportion of
falsely detected change points) is upper bounded by its unique tuning
parameter. Further, we obtain the consistency and the localisation error rates
in estimating change points, under mild signal-to-noise-ratio conditions. Both
match (up to log factors) the minimax optimality results in the Gaussian setup.
All theories hold under the only distributional assumption of serial
independence. Incorporating the wavelet tree data structure, we develop an
efficient dynamic programming algorithm for computing MUSCLE. Extensive
simulations as well as real data applications in electrophysiology and
geophysics demonstrate its competitiveness and effectiveness. An implementation
via R package muscle is available from GitHub.
