Distributed Computing with Adaptive Heuristics

advertisement
Distributed Computing
with Adaptive Heuristics
Aaron D. Jaggard
Rutgers/Colgate
Michael Schapira
Princeton
Rebecca N. Wright
Rutgers
Innovations in Computer Science
09 January 2011
Partially supported by NSF
This Talk
• Identify new aspects of the boundary
between game theory and distributed
computing
• Look at some initial results
• Identify various avenues for future work
Background Areas
nodes interacting in an
asynchronous environment
simple, myopic rules of behavior;
convergence in synchronized
environment
Motivation
Many real-world settings involve both simple,
myopic behavior and asynchronicity
– Network protocols
• Routing
• Congestion control
• ...
– Asynchronous circuits
Research Agenda
new questions
in game theory
and economics
novel
applications in
distributed
computing
(fictitious play, regret
minimization,…)
(congestion control,
asynchronous
circuits,…)
Goal: Explore dynamics of
adaptive heuristics when
asynchrony is allowed
Understanding when Dynamics
Converge: A Simple Example
• Two stable states (pure Nash equilibria)
Bach
Stravinsky
Bach
Stravinsky
(5,4)
(1,1)
(0,0)
(4,5)
Understanding when Dynamics
Converge: A Simple Example
• If either player is activated alone, the system
converge
Bach
Stravinsky
Bach
Stravinsky
(5,4)
(1,1)
(0,0)
(4,5)
Understanding when Dynamics
Converge: A Simple Example
• Without control over who is activated, the
system might not converge
Bach
Stravinsky
Bach
Stravinsky
(5,4)
(1,1)
(0,0)
(4,5)
Basic Model
• n nodes (the players)
• Node i has action space Ai
• Each node i has a reaction function
fi: A1 x A2 x ...x An→Ai that determines i’s next
action based on other current actions
– No dependence on own action
Dynamics
• Infinite sequence of discrete timesteps t = 1, …
• Schedule s:{1,…} → 2[n] determines which set
of players is activated at time t.
– Fair schedules
• Start at an initial state; at each time step t, let
the nodes in s(t) react using their reaction
functions
Convergence
• The players’ action profile a=(a1,…, an) is a
stable state if fi(a) = ai for every i.
• The system is convergent if the dynamics
always converge (for all initial states and all
fair schedules)
Two High-Level Questions
• What classes of systems are guaranteed (or
cannot be guaranteed) to always converge to
a stable state?
• How hard is it to determine whether a system
always converges to a stable state?
Basic Result
Theorem: If the system has multiple stable
states, then the system is not convergent. (I.e.,
there is some initial state and some schedule
that diverge.)
• Actually, can strengthen this:
– Allow some history-dependence
– Allow randomness in reaction functions
Revisiting Our Example
Bach
Stravinsky
Bach
Stravinsky
(5,4)
(1,1)
(0,0)
(4,5)
A Few Words About the Proof
• Inspired by approach to FLP result on
impossibility of resilient consensus
Applications
• Interdomain routing
• Congestion control
• Best-reply dynamics in general games
• Diffusion of technologies in social networks
• Asynchronous circuits
• …
Communication Complexity
Theorem: Determining whether a system of n
nodes, each with two actions, is convergent
may require Ω(2n) bits.
– Even if all reaction functions are deterministic,
and do not depend on history or own action
• Uses a reduction from SET DISJOINTNESS.
– Constructed system has a unique stable state
Computational Complexity
Theorem: Determining whether a system of n
nodes, each with deterministic and historyless
reaction function, is convergent is PSPACEcomplete.
• So, difficult even if the reaction functions are
succinctly represented (so that they could be
transmitted quickly)
• Under complexity assumptions, no short
witnesses (in general) of being convergent
Scheduling
Bach
Stravinsky
Bach
Stravinsky
(5,4)
(1,1)
(0,0)
(4,5)
Question: Does randomness help?
Scheduling
Question: Does randomness help?
Answer: No. Divergence may not only be
possible, but overwhelmingly likely.
• Issues of r-fairness
Open Questions
• What are the convergence guarantees and
impossibility results
– For other heuristics
– For other notions of convergence
– For other notions of equilibrium
• We’ve taken first steps in the context of
regret-minimizing dynamics
Other Open Questions
• Variations in information
– Outdated information
– Knowledge only of own utility function (uncoupled
dynamics)
• Lots of others
Summary
• Simple behaviors show up in lots of settings
– Important to understand dynamic behavior when
asynchrony is allowed
• Initial results on the impossibility of
guaranteeing convergence
• Lots of open questions
– What can we say about the dynamic behavior in
other natural asynchronous settings?
Download