Decision Optimization

IBM® Decision Optimization for Watson Studio gives you access to IBM's industry-leading solution engines for mathematical programming and constraint programming. You can build Decision Optimization for Watson Studio models either with notebooks or by using the powerful Decision Optimization for Watson Studio model builder (Beta version). Here you can import, or create and edit models in Python, in OPL or with natural language expressions provided by the intelligent Modeling Assistant (Beta version). You can also deploy models with Watson Machine Learning.

Accessing Decision Optimization

Create an empty project, click Add to Project and choose Decision Optimization as the asset type. To create and run Decision Optimization models you must associate a Watson Machine Learning service instance with your project. This can be selected when you add Decision Optimization to your project: click Associate a Machine Learning service instance with your project in the New Decision Optimization experiment pane, select an Existing Service Instance from the list and click Select. Then reload the New Decision Optimization model page. Enter a Name and click Create. This opens the Decision Optimization model builder (Beta version) to create and edit models formulated with the Modeling Assistant, or in Python DOcplex, or in OPL.

Alternatively click Add to Project and choose Notebook as the asset type, to open and run Decision Optimization notebooks.

What is Decision Optimization?

People frequently use the term optimization to mean making something better. Although optimization often makes things better, it means a lot more than that: optimization means finding the most appropriate solution to a precisely defined situation. It is a sophisticated analytics technology, also called Prescriptive Analytics, which can explore a huge range of possible scenarios before suggesting the best way to respond to a present or future situation.

Decision optimization

  1. The situation is generally a business problem, such as planning, scheduling, pricing, inventory, or resource management.
  2. Whatever the problem is, resolving it starts with the optimization model, which is the mathematical formulation of the problem that can be interpreted and solved by an optimization engine. The optimization model specifies the relationships among the objectives, constraints, limitations, and choices that are involved in the decisions. But it is the input data that makes these relationships concrete. An optimization model for production planning, for example, can have the same form whether you are producing three products or a thousand. The optimization model plus the input data creates an instance of an optimization problem.
  3. Optimization engines (or solvers) apply mathematical algorithms to find a solution, a set of decisions that achieves the best values for the objectives and respects the constraints and limitations imposed. The optimization engine implements specialized algorithms that have been developed and tuned to efficiently solve a large variety of different problems. Decision Optimization uses the IBM CPLEX and CP Optimizer engines that have been proved powerful in solving real-world applications.
  4. The solution that emerges from the solver details the recommended values for all of the decisions that are represented in the model. Equally important are the metric values that represent the targets. These values measure the quality of the solution in terms of the business goals.
  5. All of this can be made available to business users via a complementary business application. Usually, the objective and solution values are summarized in tabular or graphical views that provide understanding and insight.

Learn more