##### Authors: A. Tamer Ünal and Z. Caner Taşkın

At its core, every supply chain planning and scheduling problem is essentially an optimization problem – as its solution lies in finding a way to optimize the flow and delivery of goods and services from supplier to customer.

But what exactly is an optimization problem? Fundamentally, every optimization problem consists of three components:

**Decision variables**: these are the values we want to calculate. For example, production quantities, inventory quantities, or transport shipment quantities.**Constraints:**these are the elements in the supply chain that limit or restrict the decision variables in some way. Some constraints are related to technical limitations. For example, the capacity of a machine may be a production constraint and the capacity of a truck or train may be a logistical constraint. There can also be managerial constraints. For example, a company may not want to invest more than a certain amount on a particular channel. There can be legal constraints and personnel constraints as well. Generally speaking, constraints act as limitations for the decision variables.**Objective functions:**these are the Key Performance Indicators (KPIs) that we would like to improve upon. For example, your company may want to minimize costs, maximize profits, or increase customer satisfaction.

### What is the role of solvers?

To determine the solution to these supply chain optimization problems, we must be able to calculate the values of the decision variables while taking constraints into account. This should give us the optimal performance. Mathematically speaking, we can model these optimization problems as mathematical problems. Theoretically, these problems can be solved by using standard techniques – which are called optimization techniques.

Solvers are generic applications designed to solve generic optimization problems by using standard techniques. For example, some of our models are called Mixed Integer Programming (MIP) models, which are frequently used to solve supply chain planning problems. There are solvers that implement certain well-known algorithms to solve these Mixed Integer Programming models. These solvers are called optimization solvers.

### What are different types of solvers?

Some optimization problems are so complex that the standard optimization techniques, which are provided by these standard solvers, are not up to the task of generating solutions. In this instance, we need to have additional capabilities to define heuristics, which are non-optimal algorithms. Heuristics are able to quickly produce good (but not necessarily optimal) solutions for a problem. There are even heuristic solvers – such as LocalSolver – providing this kind of functionality as well.

**Flexible solution you need for your organization: ICRON**

ICRON has its own internal solvers that can handle detailed scheduling problems for capacity and material calculations and to support algorithm modelling internally. There are also solvers that solve statistical models like R. If you have, for example, a regression model that you want to find the parameters of, then you can use the R system to generate the generic solution for that generic mathematical statistical model. But these solvers are typically employed either for standard mathematical problems without any specific detail regarding the supply chain or scheduling problems. ICRON utilizes these solvers to solve the underlying mathematical problems that occur, while solving the actual business problem within the supply chain and scheduling domain.

Is it unique to be able to interact with different solvers? Not really, as there are modelling applications for optimization – so called modelers like GAMS or AMPL – which can do this. ICRON is unique in that it provides access to all these different types of solvers: statistical solvers, optimization solvers, and heuristics engines.

In other words, ICRON is solver independent, which is a unique feature among supply chain optimization software solutions. ICRON can use different solvers – for example, CPLEX or Gurobi – as optimization solvers.

One of the key strengths of the ICRON system is its flexibility – it is designed to allow users to access and deploy any relevant solver that’s available on the market. With ICRON, the solver becomes an embedded part of the solution, as the system is not confined to a specific solver paradigm or solution type.

ICRON is flexible enough to be able to integrate any type of solver and utilize any paradigm to solve a given problem optimally. This is important because for S&OP you can use a MIP solver, for scheduling you need a scheduling engine, and if you are dealing with logistics problems, then you need a specialized solver for that.

If you would like to see ICRON in action, please contact us. If you have enjoyed this blog, you can find more content that you might enjoy here.