It's not easy to predict what they want and when they want it.
Over the last few decades, researchers have come up with a number of modern-day problems the daily demands our lives place on them. But when an allocation made at one time affects subsequent allocations, the problem becomes dynamic, and the passing of time must be considered as part of the equation.
 What might the 3.5% rule of revolutions do?
• How to transform society's view of time
• Why the internet is breaking up
Search problems are collectively known as dynamic resource allocation problems.
Whether you are waiting for a taxi or a car on the road, the list of dynamic resource allocation problems and their everyday applications is "almost endless "according to Warren Powell, an engineer at Princeton University who has been investigating these problems since the 1
But dynamic resource allocation are not just concerned with giving people what they want when they want it. They also want to be able to tackle some of the world's most fundamental and complex issues, including climate change, as they help us allocate our planet's scarce and depleted resources into the most efficient ways possible.
But let's first look at a simplified
Imagine you're cooking a roast dinner for your family of four. You opt for beef with all the trimmings, safe in the knowledge that it's a firm family favorite. You're invited to join friends and family.
They want to be essential for tackling some of the world's most fundamental and complex issues, including climate change
This is a trivial example of a dynamic resource allocation problem. For starters, the parameters affecting demand change both in the short and long term. There's no way you've predicted your daughter's new dietary requirements, your partner's tardy arrival or your son's extra guests as you were prepping this meal.
to-day basis. You may need to feed two or 20 people at each sitting. From meal to meal, you have no idea who you want, or what they want.
The actions of the individuals in this scenario also have an effect on the future state of the system
"All [dynamic resource allocation]"
"All [dynamic resource allocation] examples are to be modified, which are highly variable says Eiko Yoneki, a senior researcher at the University of Cambridge's Computer Laboratory. "One change triggers another change, and if you want to control the system with accurate decisions."
What's more, as more people or meal options come into your kitchen, things are complicated further. You now have more ways to allocate different meals to different people.
This is exactly what a large hospital may ask for. The same applies when trying to treat these patients. The medicines they require, which themselves have a limited shelf life, and the equipment needed for diagnosis and treatment change constantly. Limited resources like MRI scanners, doctors and nurses need to be allocated too.
The problem is that most existing methods rely on historical data to make predictions. This method does not scale very well for such systems and can not cope with even the smallest changes. If a change does occur, they go back to square one and start working out a solution all over again. Research problems are becoming computationally intractable, even for a small number of people and resources.
Dynamic resource allocation problems so arise from a range of different scenarios and each one has its own specific issues ,
"Modern computer systems are complex, and many configuration parameters need to be tuned, including resource allocation such as memory," for example, "Yoneki is investigating the implications of this." computation capacity, communication capability, and any input to the systems, "she says.
Mobile phone networks and cloud computing are reliant on solving these problems too
So, the computer you are reading this article on is almost certainly wrestling with some dynamic resource allocation issues at this very moment. Mobile phone networks and cloud computing are also reliant upon solving these problems.
For example, UPS developed its On-Road Integrated Optimization and Navigation (Orion) system to optimize its delivery routes using advanced algorithms. The systems struggles in complex urban environments.
Supply chains are another "problem that is never going to go away," says Powell, because of the Complex nature of today's products. For example, if you want to make a standard smartphone on the globe, it all comes together in a specific order on the factory floor.
Our energy supplies are increasingly complex, relying on unpredictable renewables such as wind and solar. The outputs of these sources can fluctuate wildly, as can be demanded for energy at any given time.
In 1965, "The cost of energy can fluctuate too much – five times a week." allocation problem in one form or another. "Powell, supply chain, supply failures, and the behavior of people are all issues." Says Powell. This is an important point. "
This problem is so rich that there are at least 15 distinct research communities working on this problem from different perspectives." The diversity of dynamic resource allocation problems there is a need for industry-wide standardization of the different computational techniques and methods used to tackle it. Powell is one of those trying to bring together disparate communities working on dynamic resource allocation problems. "Our approach does not replace any prior work," he says.
Advances in machine learning are offering new hacks of tackling dynamic resource allocation problems
A rich set of operational management tools have been completed to improve their performance in a range of ways. However, "high dimensionality" – where many different parametres need to be taken into account – and uncertainty "remains a challenge", according to Powell.
Advances in machine learning are offering new hopes of tackling dynamic resource allocation problems. An artificial intelligence technique called deep reinforcement learning allows an algorithm to learn what to do by interacting with the environment. The algorithm is designed to be used without human intervention by being rewarded for performing correctly and penalized for performing incorrectly.
Deep reinforcement learning recently enabled the AlphaGo program from Google's DeepMind to defeat the world champion in Go. The system started off knowing nothing about the game of Go, then played against itself to train and optimize its performance.
Yoneki and her team have been working on creating a viable alternative to human-generated heuristics for performance tuning in computer systems using deep reinforcement learning. They were previously computationally intractable.
Systems employing this approach have already been used to optimize system performance in areas including resource management, device payment optimization and data center cooling. Yoneki says
A team of researchers at artificial intelligence startup called Prowler.io, based at Cambridge in the UK, is also using its own machine learning approach to tackle dynamic resource allocation problems. Its algorithms provide incentives to induce a specific behavior in the system.
As our populations continue to Yoneki
"Use of reinforcement learning."
"The use of reinforcement learning What does it mean to do so? "he says says.
"The research on this topic is progressing rapidly."
We're still trying to tackle the complexity and randomness of nature real world. And as we continue to grow our hunger for on-demand services, the complexity of dynamic resource allocation problems and their impact on our day-to-day lives will only intensify.
And if we do not start to address dynamic resource allocation problems now, we do not just struggle to get dinner on the table –
Join one million fans by liking us on  Facebook or follow us on Twitter or Instagram .
If you liked this story, sign up for the weekly bbc.com features newsletter called "If You Only Read 6 Things This Week." A handpicked selection of stories from BBC's Future, Culture, Capital, and Travel. .