What have things like bargaining and auctions got to do with things like resource allocation and cloud orchestration? In this talk, Nadia will demonstrate how we can use Game Theory to better grasp the range of concepts involved in the cloud computing space.
3. “Real life consists of bluffing, of little tactics of
deception, of asking yourself what is the other man
going to think I mean to do. And that is what games
are about in my theory.”
–John von Neumann
4. WHAT IS A GAME?
• There are at least 2 players
• Each player has a set of strategies based on the
information they have and the actions they can take
• There are payoffs to each player for every
possible outcome
8. We can use Bargaining Theory to think about how
resources should be allocated within the cloud and
amongst users.
9. HOW CAN WE MODEL THIS?
• The players are the computers
• Each computer has a different processing rate, x
(jobs/sec)
• The actions of each computer are represented by how
many incoming jobs they accept, y
• The payoff to each computer is represented by their load
10. THE PROBLEM
Let’s take a large distributed system of 2 computers…
x1 = 5 jobs/sec
x2 = 2 jobs/sec
T = 4 jobs/sec
12. THE PROBLEM
!
!
We want to distribute the jobs in such a way that
optimally minimises execution time.
!
13. THE PROBLEM
Given a simple queuing system we want to minimise
the following function with respect to y:
1
(xi- yi)
Computer i’s job processing rate Rate of jobs arriving at computer i
14. THE SOLUTION
Total processing power in the system
n
Number of jobs to send to computer i
yi = xi -
Σxj - T
Computer i’s job processing rate
Total arrival rate of jobs to the system
Number of machines in the system
16. A NASH BARGAINING SOLUTION
• Approaching the problem like this leads us to a
Nash Bargaining Solution
• We can use the results to develop algorithms that
dynamically distribute loads
17. !
!
What were our assumptions and
constraints?
18. TO TAKE AWAY
• Game Theory can help you break down complex
problems
• Start basic and build in more realistic assumptions
• There are lots of interesting ways Game Theory
applies to the cloud space
19. FURTHER READING:
LOAD BALANCING IN DISTRIBUTED SYSTEMS:
A GAME THEORETIC APPROACH
Daniel Grosu
and
THINKING STRATEGICALLY: THE COMPETITIVE EDGE IN BUSINESS,
POLITICS, AND EVERYDAY LIFE
Avinash Dixit & Barry Nalebuff