Learning Resources for Decision Optimization using IBM CPLEX

Decision Optimization (aka mathematical optimization techniques) has been around for quite some time and providing value for strategic to operational business problems. With the advancement and growth in adoption of Data and AI, availability of data, and faith in data science; use of decision optimization has been gaining even more traction to operationalize on the insights uncovered from predictive models.

Predictive and Prescriptive (Decision Optimization) Analytics working together

Modeling approaches for Optimization (only considering IBM CPLEX)

Optimization models for CPLEX can be built using variety of languages/APIs (OPL, Python, Java, C, C#.. etc). Here, we will primarily cover resources for model building using Python, OPL (Optimization Programming Language), and natural language assisted model building approach available in DO4WS (Decision Optimization for Watson Studio).

Basic comparison between Optimization modeling approaches using OPL and Python

1. Decision Optimization (CPLEX) in Watson Studio

Watson Studio is IBM’s leading Datascience and Machine Learning development platform.

A. Using Decision Optimization for Watson Studio (DO4WS) model builder experience

Here are some of the resources to get an overview, product tour / demo and samples for Decision Optimization for Watson Studio (DO4WS) model builder experience.

DO4WS project assets available on GitHub

B. Using Python Notebooks in DO4WS (Watson Studio Public cloud):

Login to your Watson Studio account ( or sign up for a free account). https://www.ibm.com/cloud/watson-studio

CPLEX Python notebook samples available on Watson Studio

2. Build CPLEX optimization model using Python API

Optimization modeling with python can be tried either on Watson Studio, or one can also use any local python development environment like PyCharm or Jupyter notebooks etc. To test it locally, CPLEX solver should be installed on your local computer. This can be done by either installing CPLEX Optimization Studio Community edition (https://www.ibm.com/products/ilog-cplex-optimization-studio) or get a formal full version trial from IBM or use the self-serve development subscription available at https://www.ibm.com/products/ilog-cplex-optimization-studio/pricing

More samples on Github:

Here is a collection of some sample CPLEX models in python: https://github.com/IBMDecisionOptimization/docplex-examples

3. Model with OPL using CPLEX Optimization Studio (COS):

Install CPLEX Optimization Studio developer edition or free community edition.

OPL model in CPLEX Optimization Studio
OPL sample models available in CPLEX Optimization Studio

Data Science and Optimization @ IBM