add perturb_method