Optimization Introduction First-order methods Second-order methods Stochastic gradient descent Constrained optimization Proximal gradient method Bound optimization