Surface hopping algorithms are popular tools to study dynamics of the
quantum-classical mixed systems. In this paper, we propose a surface hopping
algorithm in diabatic representations, based on time dependent perturbation
theory and semiclassical analysis. The algorithm can be viewed as a Monte Carlo
sampling algorithm on the semiclassical path space for piecewise deterministic
path with stochastic jumps between the energy surfaces. The algorithm is
validated numerically and it shows good performance in both weak coupling and
avoided crossing regimes.