Cam ring curve optimization for radial hydraulic motor based on seagull algorithm