Humans saw birds flying in the sky and wished to do the same. That desire is what inspired the invention of the airplane. We studied the aerodynamics involved when a bird flew and used that knowledge to build a plane. When we wanted to conquer the seas, we observed the whales and built a submarine. Sometimes, the complex problems we face every day can be solved by being inspired by Mother Nature.
In this article, we’ll look at a case study of how my team at Accubits Technologies helped a Dubai based logistics company by building a solution that was inspired by nature to solve one of the most daunting problems they were facing – resource allocation. This logistics company had hundreds of clients, carrier trucks, vans, minivans, delivery routes, laborers, shipping containers etc. Each day, the logistics managers at this company start their day with a bunch of papers and plans, working hard to allocate the right combination of resources for each task at hand. Assigning the right number of human resources, vehicles and other resources ensure the maximum profit for the company. However, no matter how hard they tried, they ended up either over-allocating or under-allocating the resources which means a loss for the company.
Reach out to us today, discuss with our experts!
Resource allocation is the process of assigning and managing the assets of an organization in a manner that supports the organization’s strategic goals. It involves balancing the competing needs and priorities for determining the most effective course of action to maximize the effective use of limited resources and gain the best return on investment. However, this is a process we humans do with a great degree of inefficiency. With resource planning, the best choice we have is to go with the instinct to select a combination of resources which makes enough sense. We follow the same old-school practice of forcing combinations and assuming one among those is the best combination. But there is always a better option; one that is more efficient and cost-effective.
What stops us is that we don’t have the processing power to evaluate all possible combinations because those number are in the millions. Even a computer program with straight-forward logic implementation would take hours to calculate the optimal combination. There are mainly two major issues with the traditional modes of resource planning. One is the limit on the capacity that each resource can handle at a particular time, and the other is the restriction on the availability of resources at peak times. Traditional methods would involve a manager who decides how many vehicles or delivery personnel are required to fulfill orders. The process becomes all the more cumbersome as there is no prior planning on the capacity that each resource can carry so much so that a slight change in any of the parameters shakes up the entire plan. This problem statement that was presented to us was both challenging and interesting. Nearly everyone in this world faces this problem but there are no reliable solutions yet. Maybe a problem is not thought of as a problem if everyone faces the same thing.
So I put on the sunglasses that played the recorded mission details and the lady asked, “Do you choose to accept the mission?”. I didn’t even have to answer; I looked pensively off the cliff that I climbed with my bare hands, and tossed the sunglasses and watched it self-destruct. Yes, I am being overly dramatic here; but I did look pensively at a picture of a sunset and decided that I was going to solve this problem.
Whatever solution I came up with should take into account all parameters like available resources, routes, and timelines and prepare an optimal plan for doing the job. The major objective was to reduce waiting time, cut costs, and prevent any immediate losses for the company. Addressing these common issues would enhance the service levels of the company, and thereby, meet customer needs more comprehensively. The overall costs associated with logistics could be reduced to a considerable degree if an optimized resource allocation procedure is followed.
Just like any other living organism in this world, the way we are today is a result of evolution through billions of years. Always producing a better life form to thrive in the ever-changing environment. The problem statement I detailed above is analogous to the evolution of living organisms. There are limited resources available in nature and its availability is changing from time to time. There is a mechanism called genetic combinations which produces the best outcomes in life forms to fit with the environment. Simply put, evolution works like this – “Out of what is the best today, build something better tomorrow”. There is something so fundamental about nature and evolution can be used to solve this problem of resource allocation.
There is a class of algorithms in computer science called the evolutionary algorithms which are inspired by how evolution happens in nature. Within the evolutionary algorithms, a metaheuristic inspired by the process of natural selection is called a genetic algorithm. This is what we chose to solve the problem at hand. Genetic algorithms are commonly used to generate high-quality solutions to optimization and search problems by relying on bio-inspired operators such as mutation, crossover, and selection. It has the capacity to select the resources judiciously, striking a balance between over-burdening and idle time and thereby, providing an ideal solution to combinatorial problems with multiple objectives.
To find the best combination of resources, the system has to compute the efficiency of every combination and find the best from it. But, this would take more time than what businesses can afford to spare. So we need a way to find the best combination without having to evaluate each and every combination. To do so the system begins by creating a random initial combination. Following that, the system creates a sequence of new combinations and at each step, it uses the individuals in the current generation to create the next population. This is similar to what happens with evolution: ut of what is the best today, build something better tomorrow.
Reach out to us today, discuss with our experts!
The system follows the above process for a definite duration of time, which is the stopping criteria we’ve assigned, to identify the combination of maximum fitness score.
The client has integrated our solution into their system and as usual, we followed up every month after that to check how our solution is performing. The feedback from the managers showed that the efficiency of the whole logistics set-up had improved after integrating our solution. The reports showed a huge drop in the statistics related to the under and over-allocation of resources, which resulted in more orders being fulfilled in a shorter span of time and that translated into bigger profits for the company.