A generalization of gradient for non-smooth functions, allowing optimization when standard derivatives don't exist.