
Discover how optimization underpins data science by finding best parameter values for regression, classification, clustering, and time series models.
Explore how optimization customizes data science models, adjusting regression loss, adding constraints like lasso, ridge, and elasticnet, and directly selecting a best subset of features with binary variables.
Develop an optimization model to minimize jet fuel cost across four cities and learn balance constraints that link purchase, takeoff, and landing fuel for a coherent ground and air segment.
Learn to model airline fuel optimization with recursive looking constraints in data science, linking takeoff, landing, and purchases while respecting tank capacity and safety margins.
Explore how non-negativity constraints shape optimization in a jet fuel purchasing model, showing why some variables can be negative and why bounds must be specified.
Learn how variable substitution with extra variables simplifies a jet-fuel optimization model, replacing y with z plus x. Preserve non-negativity constraints and let solver substitution handle size.
Explore how to turn vague English descriptions into mathematical optimization models for data science, including objectives, constraints, and data-driven iterative discovery with predictive and probabilistic models.
Explore efficient quadratic modeling by introducing an auxiliary variable z to represent the sum, then minimize z^2; compare two formulations and extend to quadratic constraints to speed up Gurobi optimization.
Read data from files to make optimization models reusable across different days and scenarios. Use the same Gurobi model for many cyclic routes by swapping data files.
Learn to model optimization for diamond procurement, detect infeasibility from strict equalities, and debug by adjusting data and constraints to reveal cheaper supplier mixes.
Learn how to use optimization models to analyze sensitivity and answer what-if questions, minimizing costs while meeting demand and evaluating capacity upgrades in chemical production.
Classify optimization models by their math, from linear programs to mixed integer and non-convex quadratically constrained programs, and learn how solvers like Gurobi handle large and complex instances.
Understand how optimization models start from an initial solution and iteratively improve via an improving direction and step size, like gradient boosting and Newton's method, with branching and multiple starts.
Welcome to Introduction to Optimization Through the Lens of Data Science!
This free 4-part course was developed to help teach data scientists how to add optimization to their toolbox and when to use it in their advanced problem-solving. We will cover a comprehensive introduction to optimization, when optimization is the best tool to solve a problem, and how to translate real-life problems into optimization.
We will introduce you to world-class tools to help you problem solve, and provide everything from basic hands-on exercises to more advanced full real-world use cases to reinforce all new concepts of prescriptive analytics as you learn them. We look forward to having you learn optimization (and gurobipy) with expertise from Dr. Joel Sokol and the team of Ph.D. experts from Gurobi Optimization, who helped develop this comprehensive introduction to mathematical optimization.
In part 2, you will dive deeper into the relationship between optimization and data science. Work with more complex constraints, understand model reusability, analyze sensitivity, and understand infeasibility. Classify types of optimization problems and see how they are solved at a high level.
Hands-on Exercises:
Please check the resource section of many of the lectures to find self-assessments in the form of exercise files and solution files. You will also notice we have data and code files available to help you work your way through these practice exercises.