Mastering algorithms – the story behind the gray box

The OPTANO Algorithm Tuner 2.0 with gray box optimization has now been released and can be downloaded free of charge. One of those who played a big role in its success is Robin Kemminer, who worked as a developer on the project and also wrote his Master thesis on the subject.

In an interview, Robin told us about his work and experience as a student worker in the project:

Hello Robin. First of all, congratulations on being awarded your Master Degree! Your Master thesis Offline Gray Box Algorithm Configuration is based on the joint Graybox Optimization project between OPTANO and Paderborn University in which you were very much involved. How did you come to  join the project?

Hi Alisa, thank you! Well, I started working on the project very much by chance. I was doing my master degree in Data Science and had originally planned to work as an assistant at the University in Bielefeld under Professor Dr. Kevin Tierney in the Decision and Operation Technologies department. During his lectures he would occasionally invite some guest speakers to talk about optimization and Operations Research, in practice or from a business point of view. Among those invited was Dr. Jens Peter Kempkes, Managing Director at OPTANO. I enjoyed his talk, approached him after the lecture and we had an interesting discussion. Shortly after that, both Professor Tierney and Dr. Kempkes had an exciting proposition:  OPTANO was looking for somebody to join the Graybox project team and they thought I would be the ideal candidate.  I decided to take up their offer and … here I am!

What exactly is the OPTANO Algorithm Tuner and, more to the point, what is Graybox configuration which was, I believe, the actual topic of your thesis?

Anybody who is familiar with how algorithms work know that they have very long run-times – sometimes you can spend weeks finding a suitable configuration for your specific algorithm and problem. In a nutshell, the Algorithm Tuner uses an evolutionary machine learning process and mathematical optimization in order to retune your algorithms again and again until they run as fast and efficiently as they can possibly get.
The Tuner was already well in progress before I joined the team. My job was to assist in making the Tuner work even better by applying the graybox approach which is a highly innovative alternative to the traditional blackbox.

So what is the difference between the black box and the gray box?

Typically, when configuring your target algorithm, you need to evaluate multiple runs with different configurations of this algorithm. With the blackbox you can only consider the final result of a target algorithm run. This means that the evaluation will keep running until completion time, even though it may be a sub-optimal configuration. The Graybox, on the other hand, allows you to identify sub-optimal configurations by providing intermediate target results at runtime. The moment it establishes that the configuration isn’t optimal, it will automatically stop the runtime. In the end, only the most optimal configurations will cross the finish line because the Tuner only focuses on promising configurations.

The OPTANO Algorithm Tuner is open-source and available for download immediately, free-of-charge at NuGet or GitHub. Why not try it out today?

And this saves a lot of time, I guess?

It certainly does. And not just time, but also resources. This is valuable for any business where the time factor is critical – for example, if you have scheduling problems. The OAT with the graybox approach and other improvements is overall 8 times faster than the previous version . And, of course, there is always room for improvement.

It sounds rather fascinating!

It is, yes. It was actually a completely new subject area for me. I’d never heard of an Algorithm Tuner before I started at OPTANO and didn’t really know what to expect at first, but the more I learned, the more interesting I found it.

What aspects of your work did you particularly like?

Mainly the fact that I was able to work closely with experts in the field of optimization and OR and learn from them. It was great to exchange ideas with them and to know that they took mine seriously. We had an endless number of ideas, believe me, and  being able to experiment with them to see if they can work in practice was a lot of fun. Another aspect of the work that I found fascinating was making a breakthrough and finding solutions to really complex problems.

You mentioned earlier that it was an entirely new field for you. What challenges did you encounter along the way?

I admit, it was certainly a very steep learning curve for me which was rather challenging – but still a lot of fun. I had the feeling I was learning something new every day. (laughing). The first thing I had to learn was how to program in C#, which is a language I’d never learnt but which is standard practice here at OPTANO. I have to say, though, the other team members were really supportive. Jannick Lange and Britta Heymann, the actual masterminds behind the OAT, were a great help, as was Dr. Kempkes. They didn’t see my lack of experience in this particular field as detrimental. Quite the contrary, everybody was willing to help as best as possible.

The OPTANO Algorithm Tuner 2.0 with the graybox alternative has now been released and the project is over. What are you proud of, personally?

I’m proud that the project has been a success and is actively being promoted and deployed – it hasn’t just been put into a drawer and forgotten about, so to speak .

And on a personal level… well, I’m naturally very proud of what I’ve achieved since I joined the team in October 2019: I’ve learnt so many new things, gained so much experience. And basically, it’s just a great feeling to know that I have actively contributed towards something worthwhile, something that people can really make use of.

You’ve chosen to stay on at OPTANO as a full-time employee, which obviously means that you like working here?

Definitely. It’s not just the work itself. OPTANO has a fantastic working climate. During my time as a student assistant, I never once had the feeling that I was “just a student”.  “Flat hierarchies” aren’t merely theory at OPTANO, it really does practice them. Everybody is equal, everybody’s opinion is worth something. That’s important.

What I also really appreciate is that I was a part of the team from day one.  I was only in the office a couple of days a week when I started in October 2019 and then, when the pandemic set in, we all started to work from home. Apart from the others in the graybox project, I hadn’t really had the opportunity to properly get to know anybody else in the team. Yet, even so, I was always made to feel welcome when I joined in the virtual lunch dates or games evenings that some of the colleagues initiated which was great.

What is your position at OPTANO now and will you continue to be working on the Tuner?

I’m now a full-time Analytics Software Engineer and I’m working on a new project which involves optimization. The Tuner project was all about how to make optimization better. This time, I will be doing the optimization myself and I really am looking forward to it.

Thank you, Robin, for finding the time to do this interview with me. It was very interesting talking to you and it’s good to have you on board the OPTANO team. All the best!

Thank you very much.

Does this sound interesting?

We are always looking for student workers who would like to support us in our work. If you’re an out-of-the-box thinker with initiative and drive, then we would love to hear from you! Why not take a look at our current vacancies and see if there is something there for you?

Also interesting…