Combinatorial Auction Algorithm Selection for Cloud Resource Allocation Using Machine Learning

Demands for flexibility, efficiency and fine-grained control for the allocation of cloud resources have steered the research in this field towards market-inspired approaches. Combinatorial auctions can fulfill these demands, but their inherent \(\mathcal {NP}\)-hardness makes them impractical if an optimal solution is desired in a reasonable time. Various heuristic algorithms that yield good allocations fast have been proposed, but their performance and solution quality are highly dependent on the input. In this paper, we investigate which features of a problem instance are predictive of algorithm performance and quality, and propose an algorithm selection method that uses machine learning to find the best heuristic for each given input. We introduce a new cost model for the trade-off between execution time and solution quality, which enables quantitative algorithm comparison. Using feature-based classification to train the algorithm selection model, we can show that our approach outperforms the single best algorithm, as well as a random algorithm selection.

[1]  Noam Nisan,et al.  An efficient approximate allocation algorithm for combinatorial auctions , 2001, EC '01.

[2]  Daniel Grosu,et al.  Truthful Greedy Mechanisms for Dynamic Virtual Machine Provisioning and Allocation in Clouds , 2015, IEEE Transactions on Parallel and Distributed Systems.

[3]  Gabriel Zachmann,et al.  Approximate Algorithms for Double Combinatorial Auctions for Resource Allocation in Clouds: An Empirical Comparison , 2018, ICAART.

[4]  M. Bertocchi,et al.  Probabilistic and deterministic local search for solving the binary multiknapsack problem , 1995 .

[5]  Rocco De Nicola,et al.  Smart Contract Negotiation in Cloud Computing , 2017, 2017 IEEE 10th International Conference on Cloud Computing (CLOUD).

[6]  Jasbir S. Arora,et al.  Survey of multi-objective optimization methods for engineering , 2004 .

[7]  Lars Kotthoff,et al.  Algorithm Selection for Combinatorial Search Problems: A Survey , 2012, AI Mag..

[8]  Sven de Vries,et al.  Combinatorial Auctions: A Survey , 2003, INFORMS J. Comput..

[9]  Yoav Shoham,et al.  Multiagent Systems - Algorithmic, Game-Theoretic, and Logical Foundations , 2009 .

[10]  Daniel Grosu,et al.  Combinatorial Auction-Based Allocation of Virtual Machine Instances in Clouds , 2010, 2010 IEEE Second International Conference on Cloud Computing Technology and Science.

[11]  C. D. Gelatt,et al.  Optimization by Simulated Annealing , 1983, Science.

[12]  Kalyanmoy Deb,et al.  Multi-objective Optimization , 2014 .

[13]  Chita R. Das,et al.  Towards characterizing cloud backend workloads: insights from Google compute clusters , 2010, PERV.

[14]  Aaron Klein,et al.  Efficient and Robust Automated Machine Learning , 2015, NIPS.

[15]  Craig Boutilier,et al.  Solving Combinatorial Auctions Using Stochastic Local Search , 2000, AAAI/IAAI.

[16]  Haris Aziz,et al.  Multiagent systems: algorithmic, game-theoretic, and logical foundations by Y. Shoham and K. Leyton-Brown Cambridge University Press, 2008 , 2010, SIGA.

[17]  Yoav Shoham,et al.  Empirical hardness models: Methodology and a case study on combinatorial auctions , 2009, JACM.

[18]  Rajkumar Buyya,et al.  Market-Oriented Cloud Computing: Vision, Hype, and Reality for Delivering IT Services as Computing Utilities , 2008, 2008 10th IEEE International Conference on High Performance Computing and Communications.

[19]  J. Christopher Beck,et al.  Simple Rules for Low-Knowledge Algorithm Selection , 2004, CPAIOR.

[20]  Dirk Neumann,et al.  Trading grid services - a multi-attribute combinatorial approach , 2008, Eur. J. Oper. Res..

[21]  D. Lehmann,et al.  The Winner Determination Problem , 2003 .