slides - Clemson University

advertisement
A Mathematical Formalism for AgentBased Modeling
22nd Mini-Conference on Discrete Mathematics and Algorithms
Clemson University
October 11, 2007
Reinhard Laubenbacher
Virginia Bioinformatics Institute
and Mathematics Department
Virginia Tech
Large-scale agent-based simulations
present several challenges:
• Code verification
• Parallel computation
• Analysis of dynamics
• Porting to different platforms
A rigorous formalism is needed to develop
non-heuristic approaches to these
challenges.
Existing formalisms for agent-based
simulations:
•
•
•
•
Cellular automata
Hopfield networks
Communicating finite state machines
Petri nets
Polynomial dynamical systems
Let k be a finite field and f1, … , fn  k[x1,…,xn]
f = (f1, … , fn) : kn → kn
is an n-dimensional polynomial dynamical
system over k.
Natural generalization of Boolean networks.
Fact: Every function kn → k can be represented by
a polynomial, so all finite dynamical systems kn
→ kn are polynomial dynamical systems.
Example.
k = F2. Let
f1 = x1+x2+x3+x4,
f2 = x1+x2,
f3 = x1 +x3,
f4 = x1+x4.
The dependency graph
Dynamics with parallel update:
Sequential variable update:
Let π=(a,b,c, …, x, y, z) be a permutation of
1, 2, … , n. Let
fπ = fz◦fy ◦ … ◦fb ◦fa: kn → kn.
Sequential update is motivated either by
features in the system to be modeled or in
the way a model simulation is computed.
General case: Use words in 1, … ,n rather
than permutations xxyaaaabzbz
Dynamics with sequential update (3 2 1 4):
Example
k = F3 = {0, 1, 2}, n = 3
f1 = x1x22+x3,
f2 = x2+x3,
f3 = x12+x22.
Dependency graph
(wiring diagram)
http://dvd.vbi.vt.edu
Stochastic systems:
• Choose random update order at each
update step
• Choose random local update function at
each step
Important for various applications, e.g.,
parallel computation, biochemical network
models, etc.
Questions
• How does the dependency graph topology
affect dynamics?
• How does the update order affect
dynamics?
• How does the function structure affect
dynamics?
• How does the probability distribution on
update orders affect dynamics?
Model
fM = (~R)  ( ~G )
fA = E  (L  B)
fB = M
fR = ~A
fL = P  E
fP = M
Hard to determine
(more information)
L
Network
topology
B
M
?
A
P
R
Easier to find
(less information)
Network
dynamics
Phase space obtained using Discrete Visualizer of Dynamics (dvd.vbi.vt.edu)
Terminology
- Positive-feedback network (PF): no odd parity directed cycles
(negative feedback loops).
- Distance to PF of a network: least number of changes in sign needed to
make it PF (to get rid of negative feedback loops).
Example:
G0
G1
G2
G0 is a PF network; PF distance is 0.
G1 is not a PF network; PF distance is 1.
G2 is not a PF network; PF distance is 2.
Distance to PF = “number of independent negative feedback loops”
Results (with A. Jarrah, E. Sontag, A. Veliz-Cuba)
Histograms for the slopes (for n=5)
99.98% have negative
slope for the number of
limit cycles
99.99% have positive
slope for the length of
limit cycles
As PF-distance increases: fewer and larger attractors
Definition. The update graph U(G) of a
system with dependency graph G has a
nodes the permutations of 1, … , n. Two
permutations are connected by an edge if
they differ by a transposition of two
adjacent elements and the corresponding
nodes in G are not connected by an edge.
Theorem (Barrett, Mortveit, Reidys). There
is a 1-1 correspondence between the set
of connected components of U(G) and the
set of acyclic orientations of G.
Theorem (B., M., R.). This provides a sharp
upper bound (for Boolean systems) for the
number of different systems one obtains
by varying the update order.
Theorem. (Garcia, Jarrah, L.) A similar
upper bound is also valid for update orders
given by general words.
Nested canalyzing functions
(joint work with A. Jarrah and B. Raposa, Physica D)
Nested canalyzing functions
A non-canalyzing Boolean network
f1 = x4
f2 = x4+x3
f3 = x2+x4
f4 = x2+x1+x3
A nested canalyzing Boolean network
g1 = x4
g2 = x4*x3
g3 = x2*x4
g4 = x2*x1*x3
Polynomial form of nested canalyzing Boolean functions
The vector space of Boolean polynomial functions
The variety of nested canalyzing functions
Corollary.
The ideal of relations defining the class of
nested canalyzing Boolean functions on n
variables forms an affine toric variety over
the algebraic closure of F2. The
irreducible components correspond to the
functions that are nested canalyzing with
respect to a given variable ordering.
Theorem. The family of nested canalyzing
functions is identical with the family of
unate cascade functions.
Download