  We solve the problem of minimizing the number of critical points among all
functions on a surface within a prescribed distance {\delta} from a given input
function. The result is achieved by establishing a connection between discrete
Morse theory and persistent homology. Our method completely removes homological
noise with persistence less than 2{\delta}, constructively proving the
tightness of a lower bound on the number of critical points given by the
stability theorem of persistent homology in dimension two for any input
function. We also show that an optimal solution can be computed in linear time
after persistence pairs have been computed.
