This project is aimed at providing a basic understanding of optimal control problems and development of numerical techniques for solving those of a piecewise linear-quadratic nature. Because many optimal control problems involve non-smooth functions, the investigation will be partially directed towards furthering theoretical developments in generalized gradient theory.