Gradient Ascent Pulse Engineering