  Frequency-resolved optical gating (FROG) is a popular technique for complete
characterization of ultrashort laser pulses. The acquired data in FROG, called
FROG trace, is the Fourier magnitude of the product of the unknown pulse with a
time-shifted version of itself, for several different shifts. To estimate the
pulse from the FROG trace, we propose an algorithm that minimizes a smoothed
non-convex least-squares objective function. The method consists of two steps.
First, we approximate the pulse by an iterative spectral algorithm. Then, the
attained initialization is refined based upon a sequence of block stochastic
gradient iterations. The algorithm is theoretically simple, numerically
scalable, and easy-to-implement. Empirically, our approach outperforms the
state-of-the-art when the FROG trace is incomplete, that is, when only few
shifts are recorded. Simulations also suggest that the proposed algorithm
exhibits similar computational cost compared to a state-of-the-art technique
for both complete and incomplete data. In addition, we prove that in the
vicinity of the true solution, the algorithm converges to a critical point. A
Matlab implementation is publicly available at
https://github.com/samuelpinilla/FROG.
