To build Decision Optimization models, you can create Python notebooks with DOcplex, a native Python API for Decision Optimization, or use the Decision Optimization experiment UI that has more benefits and features.
Different ways to use Decision Optimization
Depending on your skills and expertise, you can use Decision Optimization, in the following different ways.
- • Python notebooks
- You can create Python notebooks with DOcplex, a native Python API for Decision
Optimization. See DOcplex. You need Operational Research (OR) modeling expertise to create variables,
objectives, and constraints to represent your problem.
For more information about supported Python environments, see Decision Optimization notebooks.
- • Decision Optimization experiment UI
- The experiment UI facilitates workflow and provides many other features. See Decision Optimization experiment UI advantages.
- • Java models
- You can use the watsonx.ai Runtime REST API to deploy and run Java models. For more information, see Decision Optimization Java models.
- • Batch deployment
- For more information about deployment with watsonx.ai Runtime, see Decision Optimization.
For a step-by-step guide to build, solve and deploy a Decision Optimization model, by using the user interface, see the Quick start tutorial with video.
Decision Optimization experiment UI advantages
The following table highlights how you can perform different functions both with and without the Decision Optimization experiment UI. Jupyter notebooks in this table are notebooks without the Decision Optimization experiment UI. As you can see, you have more advantages when you use the Decision Optimization experiment UI.
Task | Jupyter notebook (without the Decision Optimization experiment UI) | Decision Optimization experiment UI (4 types of models) | |||
---|---|---|---|---|---|
Python | OPL models | CPLEX and CPO models | Modeling Assistant | ||
Manage data |
Import data from Projects. |
Import data from Projects and edit data in the Prepare data view . See Preparing input data. |
Import data from Projects and edit data in the Prepare data view . See Preparing input data. |
Import data from Projects and edit data in the Prepare data view . See Preparing input data. Relationships in your data are intelligently deduced. |
|
Formulate and run optimization models |
Create a model formulation from scratch in a Python notebook. using the DOcplex API. With notebooks individual cells can be run interactively, which facilitates debugging. |
Create a model formulation from scratch in Python. Import and view a model formulation from a notebook or file. Edit the imported Python model directly. Export your model as a notebook. With notebooks individual cells can be run interactively, which facilitates debugging. |
Create a model formulation from scratch in OPL. Import and view a model formulation from an OPL file. Edit the imported OPL model directly. |
Create a model formulation from scratch in CPLEX or CPO. Import a CPLEX or CPO model file (.lp, .mps, and .cpo files). Edit .lp, .mps, and .cpo files. Run model and download solution file. |
Create a model formulation from scratch by selecting from the proposed options expressed in natural language. Import and view a Modeling Assistant model formulation from a scenario. Edit the imported model directly. |
Create and compare multiple scenarios |
Write Python code to handle scenario management. |
Create and manage scenarios to compare different instances of model, data, and solutions. See Scenarios in a Decision Optimization experiment. |
|||
Create and share reports |
Create reports in your notebooks by using Python data visualization tools. |
Rapidly create reports in the Visualization view by using widgets, pages, and a JSON editor. See Visualization view in a Decision Optimization experiment. Download your report as a JSON file to share with your team. |
|||
Deploy a model |
Deploy notebooks by using watsonx.ai Runtime REST API or Python client. |
Select the scenario that you want to save ready for promotion to the deployment space. See Deploying a Decision Optimization model by using the user interface. Deploy your Decision Optimization prescriptive model and associated common data once, and then submit job requests to this deployment with only the related transactional data. You can deploy models by using the watsonx.ai Runtime REST API or by using the watsonx.ai Runtime Python client. See watsonx.ai Runtime REST API and watsonx.ai Runtime Python client. |