Many Data Scientists overuse ML and neglect techniques from Mathematical Optimisation, though it’s (a) great to your profession and (b) easy to learn, even for a non-Mathmo (like me)
![Towards Data Science](https://miro.medium.com/v2/resize:fill:48:48/1*CJe3891yB1A1mzMdqemkdg.jpeg)
Do you would like my hot tackle the state of Data Science in 2024? Here it’s:
Data Scientists are too obsessive about machine learning.
To someone with a hammer, every problem looks like a nail; to the fashionable Data Scientist, every problem apparently looks like a machine learning problem. We’ve turn into so good at translating problems into the language of analytics and ML that we sometimes forget there are other data-scientific approaches on the market. And this can be a massive shame.
In this text, I’ll introduce one other branch of Data Science — Mathematical Optimisation (specifically, Constraint Programming)— and show how it might add value to your profession as a Data Scientist.
When you’ve not got a powerful Maths background, please don’t be postpone by the name. I didn’t study Maths at university either (I studied Geography), but I discovered it surprisingly easy to start with Mathematical Optimisation techniques due to Google’s open-source Python library OR-Tools
, which I’ll introduce on this beginner-friendly article.
If you should expand your Data Science toolkit and learn this high-demand skill, sit down and buckle up!
Optimisation is a collection of techniques for “find[ing] the most effective solution to an issue out of a really large set of possible solutions” (source: Google Developers).
Sometimes, meaning finding the optimal solution to an issue; at other times, it just means finding all of the feasible solutions. There are numerous situations where you’ll encounter a majority of these problems, for instance:
- Imagine that you just’re working within the Data Science team at your local Amazon warehouse. There are 100 packages to deliver, 3 delivery drivers, and all of the deliveries should be made inside a 2-hour window. That is an example of an optimisation problem, where you have to…