CS 507: Introduction to Optimization in Computing and Machine Learning