Generalized gradients generalize subdifferentials. Subdifferentials are defined globally, and rely on the simple geometry of convex functions. If in a neighborhood a linear subspace only touches the graph of a convex function without crossing it, then you know for a fact it won't cross the graph later. So the intuition between the subdifferential is that you take each linear subspace of that is strictly below the convex function, and slide it up until it touches it. The subdifferential tells you the relation between the slopes of linear subspaces, and the points on the graph where the linear subspace will touch without crossing. For a general non-convex function, a linear subspace that touches the graph at one point can cross it again at another point. So you need a definition that works locally, only in a small neighborhood of the point. The definition of generalized gradient gives you that. It's reasonably easy to find information online about it. For example, the page on [Clarke generalized derivative][1] at Encyclopedia of Mathematics gives a quick introduction. Clarke's book, <i>Optimization and nonsmooth analysis</i>, is nice. A more recent book reference is Rockafeller and Wets, <i>Variational analysis</i>, which thoroughly covers this and related topics. I quickly looked over the paper you link to, and I don't see why they need generalized gradients instead of just subdifferentials, though I didn't look too closely. [1]: https://www.encyclopediaofmath.org/index.php/Clarke_generalized_derivative