…complex questions…

…complex systems…

…complex connections…

…complex problems …

# What does complex actually mean**?**

Whenever we present OPTANO, be it in talks with customers or on our websites, one word often comes up quite often: complex. Because that is exactly what our work is all about: We find the optimal solution to complex issues! But what actually makes a problem **complex**? This is a question we would like to answer here. However, we aren’t claiming to have found a general, comprehensive definition – we really just want to explain what we mean when we talk about complex problems.

## What constitutes complexity?

The simplest answer to whether a problem is complex or not would first be to ask: Can you easily find a solution and be sure that this solution is the best one? If this isn’t the case, then it is highly likely that you have a complex problem on your hands. Of course, there are obvious factors which can contribute to the complexity of a problem. We would like to clarify the individual aspects by using one example that we have confronted in many forms over the years: production planning.

### Complexity caused by size

When we talk about the size of a problem we really mean: How many possible solutions are there really (size of a solution space*)*?* *A problem isn’t complex if it provides so few solutions that you have a clear overview of them and can easily find the right one. Only when there are so many possibilities that it is difficult to compare them and weigh them up against one another, then you have a complex problem. Of course, mankind has always tended to make incorrect estimations of the number of alternative solutions and believes the problem is easier to solve than it actually is. For example: We want to put 10 jobs into an ordered sequence. The first solution is easy to find: The orders are processed in any sequence one after the other. However, since different set-up times arise because of the sequence of the jobs, we cannot consider every sequence to be as good as each other. For this simple task alone, which consists of just 10 elements with one decision each (namely their position in the sequence), there are already 3,628,000 possible solutions. Nowadays, the fastest computer needs less than one second to calculate all the solutions. That really isn’t a problem, you would say. But let’s imagine there are 30 instead of 10 jobs and these “only” need to be put in order. It doesn’t sound as if it is a great deal more – but it is: There are 265,252,859,812,191,000,000,000,000,000,000 possible sequences. Even the fastest computer would need 150 million years to evaluate all the possible sequences! Now it is obvious why experimenting isn’t such a good strategy after all.

To take our example of production planning – the more machines, different products and employees there are, the more complex the problem becomes as the possible solutions increase.

### Complexity caused by dependencies/inter-dependency

One of the most important aspects of evaluating complexity is the interdependency of the decisions on one another. This means that one change to a decision results in changes to all the other decisions. In this way, there is an entire chain of changes that need to be made and at worst, a small change invalidates the solution because there is no longer a valid solution to the other changes.

In this respect, production planning is a very complex problem because everything is connected somehow. If you bring forward the production of a certain product by one day for scheduling reasons, then the necessary resources and machines are not available at that time. You have to postpone the actual scheduled production. If other production plans are dependent on this one because the products are needed for it, then these also have to be postponed. And so an entire production plan has to be changed – and this occurs often.

### Complexity caused by restrictions

Restrictions make problems more complex because they reduce the number of possible solutions that are allowed. At first, you would think that this would make the problem less complex, yet many restrictions may also mean that there is no longer any solution to a problem.

One example of restrictions in production planning is the natural limitation of resources. If there were as many kinds of machines as there were orders, compiling a production plan would be far easier. You wouldn’t have to worry about whether or not the plan can be implemented with the machines available. Each machine would immediately process its own job. Industrial machines are, of course, usually very expensive and purchasing them has to be worth it. This is why the number of machines is limited and thus the resources which are available for the production. (This is also similar in the case of consumer goods).

### Complexity caused by conflicting goals

Too many cooks spoil the broth – and, unfortunately, so do too many conflicting goals. If there is only one goal, optimization is easier because you don’t have to weigh up the goals against one another and determine how much of the one goal can be dispensed with in favor of the other.

Examples of goals in production plans which can be conflicting:

- machines should be idle as little as possible
- production costs should be as low as possible
- delivery dates should be delayed as little as possible
- stock should be maintained at as low a level as possible

Diagram of the dependencies and influences of various goals

Determining whether one solution is better than the other is not a trivial matter. The goals have to be evaluated and you have to work out how much of a delay is acceptable to be able to maintain a smaller warehouse.

In several cases, all goals can be attributed to costs. But the effects cannot always be evaluated in monetary terms. For instance, how much damage is done to a customer’s image if delivery arrives too late?

### Complexity caused by change

Many problems are caused by constant change. This means that variables change again and again, new ones turn up or there are restrictions. This means that the problem needs to be solved fast so that you have a solution before all the framework conditions have changed yet again and the newly-found solution is perhaps invalid. In production planning there are always changes: a machine breaks down, a new order comes in, material is missing, etc. and the production plan has to adapt to the new circumstances each time. And all this during day-to-day operation! Optimization has to be rapid so that it can be implemented right away and can then change to the new production plan.

## Are your problems complex?

It really isn’t that easy to work out whether a problem is complex. Many problems don’t become complex until there is a combination of various factors – in many cases, even one factor is enough. However, complexity is not the only aspect to bear in mind when you choose optimization. There are several more factors that can help you to decide whether optimization can be deployed feasibly and profitably. For instance, whether there is enough relevant data at hand.

Autorin: Sabrina Geismann