  Resource allocation and task prioritisation are key problem domains in the
fields of autonomous vehicles, networking, and cloud computing. The challenge
in developing efficient and robust algorithms comes from the dynamic nature of
these systems, with many components communicating and interacting in complex
ways. The multi-group resource allocation optimisation (MG-RAO) algorithm we
present uses multiple function approximations of resource demand over time,
alongside reinforcement learning techniques, to develop a novel method of
optimising resource allocation in these multi-agent systems. This method is
applicable where there are competing demands for shared resources, or in task
prioritisation problems. Evaluation is carried out in a simulated environment
containing multiple competing agents. We compare the new algorithm to an
approach where child agents distribute their resources uniformly across all the
tasks they can be allocated. We also contrast the performance of the algorithm
where resource allocation is modelled separately for groups of agents, as to
being modelled jointly over all agents. The MG-RAO algorithm shows a 23 - 28%
improvement over fixed resource allocation in the simulated environments.
Results also show that, in a volatile system, using the MG-RAO algorithm
configured so that child agents model resource allocation for all agents as a
whole has 46.5% of the performance of when it is set to model multiple groups
of agents. These results demonstrate the ability of the algorithm to solve
resource allocation problems in multi-agent systems and to perform well in
dynamic environments.
