Adaptive BPM