A logical constraint-based approach to infer and explore diversity and composition in Thresholded Boolean Automaton Networks Quoc-Trung Vuong1, Roselyne Chauvin2, Sergiu Ivanov3, Nicolas Glade1, Laurent Trilling1 1.TIMC-IMAG, CNRS UMR5525, Univ. Grenoble, France / 2.Radboud Univ. Netherland / 3.IBISC Lab. Univ. Evry val d’Essonne, France
[email protected] /
[email protected]
What's a TBAN ? A
The new state is computed by ν =H (∑ j ∈[1. . D ] w ij ν (t ) i
Thresholded
Boolean
composed
of
1
to
−Θi )
and H (ν)=1 if ν > 0 , 0 otherwise
Automaton
Network is a graph of interactions G=(W,Θ)
(t−1) j
wi1
n1
D
n2
nodes. At a given time, a node ni
wi2 wi3
n3
is active or not. Its Boolean state
the state of node ni at time t ν ∈{0,1 } Θi ∈[−( D+1) , D+1] the threshold of activation of ni w ij ∈[−D , D] the weight of interaction of nj on ni (t ) i
Θi
ni
with
wij
is updated by comparing the sum of
nj
inputs (arcs of weight wij) to its
The dynamics of TBAN always tend to
threshold of activation (Θi).
stationary states (fixed points or limit
TBAN are mainly used in two fields:
cycles). The stationary states or even
- In biology, to model biological regulatory networks.
time patterns on specific nodes could
- In computer sciences, to design artificial neural networks.
match observed behaviors : cell types, oscillators .
Yielding the set of non-redundant TBAN with a specific behavior
Particular behaviors (stationary states viewed on one or several nodes) can be obtained by using particular TBAN having specific initial conditions. Given a number of nodes, many different TBAN can display such behaviors. All may correspond to different “strategies” (in a natural system) to behave in a same way. Such collections of TBAN contain very similar networks as well as very different ones. A challenge would be to study their diversity and the different manners they work, as evolutionists and naturalists do with living species.
To do this, it is necessary to yield the - complete - set of non-redundant TBAN with a specific behavior. Here, we focus on a specific time pattern played by at least one node (ex: (10011)* played on at least node n 1) for at least one initialization.
Results
Methodology: brute force
Number of solutions (#) and
or logic in action ?
computation times for size 3 networks (10011)*
* Brute force : enumeration and simulation of
at
least
one
initialization
* Logic in action : expected TBAN are logical
Perspectives : studying how TBAN are related together in a horizontal or a
models of a – logical – specification.
vertical way. The horizontal analysis of network evolution consists in comparing
different TBAN belonging to a set, i.e. of same size and same function (ex: a
ASP (Answer Set Programming, a logical
TBAN capable of a specific behavior like playing a time pattern). A vertical
programming technology) implementation to
analysis
get the required TBAN.
would
be
to
understand
how
TBAN
can
be
composed
from
more
elementary ones (i.e. to find the rules to split or merge logical functions and adapt the parameters), or can be obtained by folding/unfolding of nodes.
1) To get the consistent TBAN from about the dynamics (time pattern) and the
on
sequence
node for at least a specific
all possible TBAN of size D
constraints defining logically both the knowledge
playing
s t Se
Folding / Unfolding
structure of a TBAN. 2) To get the set of non-redundant TBAN:
First: elimination of non-canonical TBAN. network in its equivalent class with parameters nearer to 0. Second: elimination of TBAN equivalent by
label permutation (2 steps). - Building a spanning tree to order nodes. Most redundant networks are eliminated.
- Some others cannot be eliminated due to
an ambiguous ordering. Then, a more costly process called unification is applied.
Composition / Decomposition
A canonical TBAN is such that there is no other
n1: 1001110011... n2: 1000110001… n3: 1100011000...
s e d o n et 3 s
n1: n2: n3: n4:
1001110011... 1000110001… 1100011000… 1100011000...
s e d o n et 4 s
?
n 1: n 2: n 3: n 4: n 5:
1001110011... 1100111001… 1110011100… 1000110001... 1100011000...
s e d o n et 5 s
How to fold big TBAN into smaller ones and maintain the function ? Conversely, how to expand small TBAN ? How to combine two TBAN to
Two equivalent TBAN by permutation. One
of them is eliminated
using a spanning tree.
n1: 1001100100... n2: 1100110011…
Two equivalent TBAN
by permutation. Ambiguity is
solved by unification process.
n1: 1000111000... n2: 1100011100… n3: 1110001110...
obtain a specific function ? How to predict the sets of TBAN pairs that can be combined in this way ?