|dc.description.abstract||In the artificial intelligence subfield of multi-agent systems, there are many applications for algorithms which optimally allocate a set of resources among many available tasks which demand those resources. In this thesis we present a distributed algorithm to solve this problem which adapts well to dynamic task arrivals, where new work arises at short notice. This algorithm builds on prior work which focused on finding the optimal allocation in a closed environment with a fixed number of tasks. Our algorithm is designed to leverage preemption if it is available, revoking resource allocations to tasks in progress if new opportunities arise which those resources are better suited to handle. However, interrupting tasks in progress is rarely without cost, and our algorithm both respects these costs and may reserve resources to avoid unnecessary costs from hasty allocation.
Our multi-agent model assigns a task agent to each task which must be completed and a proxy agent to each resource which is available. These proxy agents are responsible for allocating the resource they manage, while task agents are responsible for learning about their environment and planning out which resources to request for their task. The distributed nature of our model makes it easy to dynamically introduce new tasks with associated task agents. Preemption occurs when a task agent approaches a proxy agent with a sufficiently compelling need that the proxy agent determines the newcomer derives more benefit from the proxy agent's resource than the task agent currently using that resource. We compare to other multi-agent resource allocation frameworks which permit preemption under more conservative assumptions, and show through simulation that our planning and learning techniques allow for improved allocations through more permissive preemption. Our simulations present a medical application which models fallible human resources, though the techniques used are applicable to other domains such as computer scheduling.
We then revisit the model with a focus on opportunity cost, introducing resource reservation as an alternative method to preemption for addressing expected future changes in the task allocation environment. Simulations help identify the scenarios where opportunity cost is a significant concern. The model is then further expanded to account for switching costs, where interrupting tasks in progress is worse than simply delaying tasks, and the logical extreme where resource allocation is irrevocable thus encouraging careful decisions about where to commit resources.
This thesis makes three primary contributions to multi-agent resource allocation. The first is an improved distributed resource allocation framework which uses Transfer-of-Control strategies and learning to rapidly find good allocations in a dynamic environment. The second is a discussion of the importance of opportunity cost in resource allocation, accompanied by a simple "dummy agent" implementation which validates the use of resource reservation to address scenarios vulnerable to opportunity cost. Finally, the effectiveness of this resource allocation framework with reservation is extended to environments where preemption is costly or impossible.||en