Discover How You Can Boost Your Mathematical Optimization Modeling Skills With Python
Author: Pano Santos, PhD
When addressing a mathematical optimization problem, operations research (OR) specialists and data scientists must make critical decisions about:
- Which mathematical optimization solver – commercial or open source – to use.
- Which proprietary modeling language (such as GAMS or AMPL) or programming language (such as C, C++, C#, Java, Python, VB, MATLAB or R) to use to build the mathematical optimization model of their real-world business problem.
If you are one of the many commercial and academic users out there who has decided to utilize the Gurobi Optimizer (the world’s fastest and most powerful mathematical optimization solver) to tackle your business problems, you have a lot of options in terms of modeling and programming languages – as the Gurobi Optimizer provides interfaces for most of the commonly used languages.
Among our current commercial and academic users, however, there is one language that is by far the most popular: Python. Indeed, 72% of our commercial users and 75% of our academic users utilize Python*, and one of the main reasons that they choose to use this modeling language is the Gurobi Python API.
Easily and Effectively Build Mathematical Optimization Models Using Python
The Gurobi Python API provides a robust, user-friendly modeling and development environment that allows you to:
- Exploit all the power and flexibility of Python to express your business problems as mathematical optimization models.
- Access and use the latest, cutting-edge features of the Gurobi Optimizer such as piecewise-linear (PWL) constraints and logical constraints. It typically takes a few months for these new features to become available in other modeling languages.
- Fully leverage the capabilities of the Gurobi Optimizer to generate optimal solutions to your business problems.
To showcase the flexibility, power, and ease-of-use of the Gurobi Python API, we have created a rich archive of Gurobi Jupyter Notebook Modeling Examples.
These modeling examples (which are coded using the Gurobi Python API and implemented with Jupyter Notebooks) will:
- Show you how mathematical optimization can be applied across various industries to address a wide array of real-world business problems.
- Teach you how to easily and effectively build mathematical optimization models using Python.
- Demonstrate how you can utilize all the features of the Gurobi Python API modeling objects such as adding decision variables, building linear expressions, adding constraints, and adding an objective function.
No matter which level you are at as a modeler or which industry you are in, these Gurobi Jupyter Notebook Modeling Examples will help you sharpen and expand your modeling skills with Python – so that you can more effectively develop and deploy mathematical optimization applications in your organization.
Getting Started with the Gurobi Jupyter Notebook Modeling Examples
There are a few simple steps that you can follow to get started using our Jupyter Notebook Modeling Examples:
- Determine which level – introductory, beginner, intermediate, or advanced – is right for you. We have Jupyter Notebook Modeling Examples for users at all levels. If you are new to mathematical optimization, but have a background in quantitative methods and some modeling skills, you can start at the introductory level with our tutorial on mathematical optimization modeling.
- Identify which Jupyter Notebook Modeling Example is most relevant to the industry you are in or most closely resembles the business problem you are trying to address with mathematical optimization. Our selection of Jupyter Notebook Modeling Examples contains examples from a wide variety of industries including manufacturing, financial services, energy and utilities, telecommunications, and oil & gas as well as examples that have relevance across various industries such as marketing campaign optimization and supply network design.
- Choose the Jupyter Notebook Modeling Example that is right for you.
- Download a Gurobi license (if you don’t already have one installed). Commercial users can get a free, full-featured, commercial evaluation license for 30 days while academic users at recognized degree-granting institutions can get a free academic license.
- Access and explore the Jupyter Notebook Modeling Example that you selected and discover how you can:
- Improve your mathematical optimization modeling skills with Python and learn how to utilize all the features and capitalize on all the capabilities of the Gurobi Optimizer.
- Adapt the Jupyter Notebook Modeling Example to address the problems that you are facing in your business environment today. Indeed, you can customize the example by changing the data and adding decision variables, objective functions, and constraints – thereby developing a model that could potentially be used in your real-world business environment.
Exploring our archive of Jupyter Notebook Modeling Examples can provide tremendous benefits for you (by enhancing your modeling capabilities with Python) and your organization (by building a model that could be deployed in a real-world mathematical optimization application). So what are you waiting for?
*Gurobi Commercial and Academic Surveys, 2020