Machine learning has been widely used in many areas such as computer vision, search engines, speech recognition, robotics, recommender systems, bioinformatics, social networks, and finance. It has become an important tool in prediction and data analysis. This course provides a comprehensive overview of important optimization models for machine learning. It also systematically provides a theoretical and computational study on various optimization methods for solving these models and more general problems.