https://9lib.net/document/eqoo4lkq-piecewise-constant-fitting-noisy-ramped-signals-particle-optimization.html