I’ve worked for 15 years in the small world of optimization. I have, as many of my colleagues do, a mathematical background. I probably couldn’t have developed the solver by myself (I wasn’t interested in a developer position anyway) but my logical mind always loved the power or doing things in an optimal manner and I decided to become a quality engineer of optimization solutions.
It has been challenging : finding a better solution than the machine … find the bug ! And finally the satisfaction of helping people to benefit from a strong and efficient software. I became more and more a perfectionist over the years, doing this job but I was missing something key : the real user had needs I could guess about, but how to find out? One day I decided to go outside of the development team to gather input from real customers. It is satisfying to have good software but even more satisfying when you meet your users’ needs.
I’m now Offering Manager for a suite of products (IBM Decision Optimization). I’ve realized that many people don’t understand what optimization is or how to benefit from it. Some professionals of course have known for years that optimization is a strong differentiator for their businesses, and a good way to improve industrial processes or save time on a schedule (manufacturing and logistics companies understand this already). When I talk to new people and ask why they just don’t use optimization to help their business, the answer if often the same : we don’t really understand the benefit, nor the use case for this.
I had to explain my job in my son’s school (he’s 9) and happily they almost all understood this simple example!
Take the number of gifts you’ll have to put in your car when visit your family for Christmas. The presents will be squares, rectangles… and you want to put all of them in the car. Let’s translate that into an optimization problem :
Objective can be for instance : minimize the free space in my car (to be able to put all the gifts), or maximize the number of cars I can put in my car (if I can’t take all of them)
– the dimensions of my car are g x h x j
– The dimension of gift #1 is w x y x z
– And a constraint of course for each gift.
You understand the idea? Great! You can do the same with whatever problem where you need to make a decision (you could of course just put all the gifts in the car however they fit, but you would have to try several combinations to find a solution (if you have a lot of gifts). The optimization engine, given that you define the constraints will try the options for you and provide you with the appropriate solution (one of them that matches your constraints, and meets your goal, if several exist).
This simple example is not business oriented, but basically it’s similar to domains where you make a decision (schedule of tasks, resource allocation, logistics, route, …) based on constraints, given that you are able to identify your goal (of course we can help you with that 😉 )
To sum up, optimization doesn’t need to be demonstrated as everyone is naturally trying to make optimal decisions. But most of the time, you just don’t realize you are optimizing your decision. Now, and that is all the difficulty, just think about the hardest decision you make within your day, what has a strong impact on your revenue (or your costs), and what decision makes you doubt? And you’ll identify where you need to apply optimization…