Implementations of Gradient-Based Optimization Methods