Humboldt Universitt Zu Berlin Boolean Networks Edda Klipp
Humboldt. Universität Zu Berlin Boolean Networks Edda Klipp Humboldt University Berlin SS 2009 Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin One Network, Different Models A A B B transcription + gene a translation gene b repression activation + C D gene protein gene c Directed graphs gene d Bayesian network a b a c d p(xa) p(xb) p(xc|xa, xb), p(xd|xc), V = {a, b, c, d} E = {(a, c, +), (b, c, +), (c, b, -), (c, d, -), (d, b, +)} Boolean network b a b c d a(t+1) = a(t) b(t+1) = (not c(t)) and d(t) c(t+1) = a(t) and b(t) d(t+1) = not c(t) Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Simplification of Gene Expression Regulation Protein Transcription Factor m. RNA Gene B C D Edda Klipp, Humboldt-Universität zu Berlin E F G
Humboldt. Universität Zu Berlin Boolean Network Boolean network is - a directed graph G(V, E) characterized by - the number of nodes („genes“): N - the number of inputs per node (regulatory interactions): k A B E D C G F N=7, k. A=0, k. B=1, k. C=2, … in-degrees Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Boolean Logic Boolean models are discrete (in state and time) and deterministic. (George Boole, 1815 -1864) Each gene can assume one of two states: expressed („ 1“) or not expressed („ 0“) Background: Not enough information for more detailed description Increasing complexity and computational effort for more specific models Replacement of continuous functions (e. g. Hill function) by step function Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Boolean Network Boolean networks have always a finite number of possible states: 2 N and, therefore, a finite number of state transitions: A B E D C N=7, 27 states, F G theoretically possible state transition Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Dynamics of Boolean Network. S The dynamics are described by rules: „if input value/s at time t is/are. . , then output value at t+1 is. . “ A A(t) B B(t+1) Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Boolean Models: Truth functions A B A(t) B(t+1) in output 0 1 0 0 p rule 0 0 1 1 0 p not p 1 2 1 1 3 Edda Klipp, Humboldt-Universität zu Berlin B(t+1) = not (A(t)) rule 2
Humboldt. Universität Zu Berlin Dynamics of Boolean Networks with k=1 A B C D Linear chain A fixed (no input). Rules 0 and 3 not considered (since independence of input). A(t) B(t+1) C(t+2) D(t+3) The system reaches a steady state after N-1 time steps. Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Dynamics of Boolean Networks with k=1 A A B B C D Ring Again: Rules 0 and 3 not considered (since independence of input). A(t+1)=B(t) B(t+1)=A(t) Both rule 1 AB 00 00 00 AB 10 01 10 AB 01 10 01 AB 11 11 11 A(t+1)=not B(t) B(t+1)=A(t) Both rule 1 AB 00 10 11 01 00 AB 10 11 01 00 10 AB 01 00 10 11 01 AB 11 01 00 10 11 Edda Klipp, Humboldt-Universität zu Berlin Fixpoint or cycle of length 2 depending on initial conditions Cycle of length 4 independent of initial conditions.
Humboldt. Universität Zu Berlin Attractor The trajectory connects the successive states for increasing time. An attractor is a region of a dynamical system's state space that the system can enter but not leave, and which contains no smaller such region (a special trajectory). Fixpoint – cycle of length 1 Cycles of length L Basin of attraction: is the surrounding region in state space such that all trajectories starting in that region end up in the attractor. Bifurcation: appearance of a boarder separating two basins of attraction. Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Boolean Models: Truth functions k=2 A C(t+1) = not (A(t)) and B(t) rule 4 C B input output pq p=A(t), q=B(t) Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Example Network Current state 000 001 010 011 100 101 110 111 Three genes X, Y, and Z Y X Z Rules 000 X(t+1) = X(t) and Y(t) Y(t+1) = X(t) or Y(t) Z(t+1) = X(t) or (not Y(t) and Z(t)) 100 Edda Klipp, Humboldt-Universität zu Berlin 001 101 010 110 Next state 000 001 010 011 111
Humboldt. Universität Zu Berlin Example Network Y X 000 Z 100 - The number of accessible states is finite, 001 101 010 110 011 111 . - Cyclic trajectories are possible. - Not every state must be approachable from every other state. - The successor state is unique, the predecessor state is not unique. Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Example Network as Boolean Model A A B B transcription + gene a translation gene b repression activation + C D gene protein gene c Boolean network a b c d gene d a(t+1) = a(t) b(t+1) = (not c(t)) and d(t) c(t+1) = a(t) and b(t) d(t+1) = not c(t) Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Example Network as Boolean Model Boolean network a b c d a(t+1) = a(t) b(t+1) = (not c(t)) and d(t) c(t+1) = a(t) and b(t) 0000 0001 0010 0011 0100 0101 0110 0111 0001 0101 0000 1000 1001 1010 1011 1100 1101 1110 1111 1001 1101 1000 1011 1111 1010 d(t+1) = not c(t) Steady state: 0101 Cycle: 1000 1001 1111 1010 1000 Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Naïve Reconstruction of Boolean Models If it is known -the number of vertices, N, and -the number of inputs per vertex, k, -As well as a sufficient set of successive states, one can reconstruct the network List - List for each vertex all possible input combinations - List all respective outputs Experiments: - Delete after every “experiment” all “wrong” entries of the list Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Naïve Reconstruction of Boolean Models Input A B rule 00 01 10 11 Output 00 01 00 00 00 01 02 01 01 00 00 A(A), B(A) 03 10 11 01 00 00 01 10 11 12 01 01 10 10 13 01 01 11 11 20 10 10 00 00 21 10 10 01 01 22 11 11 00 00 23 11 11 01 01 30 10 10 31 10 10 11 11 32 11 11 10 10 33 11 11 Input A B rule 00 01 10 11 Output 00 01 00 00 00 01 02 01 00 A(B), B(B) 03 10 11 01 00 00 01 10 11 12 01 10 13 01 11 20 10 00 21 10 01 22 11 00 23 11 01 30 10 10 31 10 11 32 11 10 33 11 11 Input A B rule 00 01 10 11 Output 00 01 00 00 00 01 02 01 00 A(A), B(B) 03 10 11 01 00 00 01 01 10 10 01 10 11 12 01 00 11 10 13 01 01 11 11 20 10 10 00 00 21 10 11 00 01 22 11 10 01 00 23 11 11 01 01 30 10 10 31 10 11 32 11 10 33 11 11 Input A B rule 00 01 10 11 Output 00 01 00 00 00 01 02 01 01 00 00 A(B), B(A) 03 10 11 01 00 00 01 10 10 01 01 10 11 12 01 11 00 10 13 01 11 20 10 00 21 10 00 11 01 22 11 01 10 00 23 11 01 30 10 10 31 10 10 11 11 32 11 11 10 10 33 11 11 Edda Klipp, Humboldt-Universität zu Berlin A B N=2, k=1 In 0 1 rule out 0011 0101 0123 2 A B 1 “Experimente…. ” In AB 00 01 10 11 Out AB 01 11 00 10
Humboldt. Universität Zu Berlin Random Boolean Networks If the rules for updating states are unknown select rules randomly Rule 0 Rule 2 Rule 1 N nodes ½ p. N (N-1) edges Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Kauffman’s NK Boolean Networks An NK automaton is an autonomous random network of N Boolean logic elements. Each element has K inputs and one output. The signals at inputs and outputs take binary (0 or 1) values. The Boolean elements of the network and the connections between elements are chosen in a random manner. There are no external inputs to the network. The number of elements N is assumed to be large. S. A. Kauffman, 1969, J Theor Biol. Metabolic Stability and Epigenesis in Randomly Constructed Genetic Nets S. A. Kauffman. The Origins of Order: Self-Organization and Selection in Evolution, Oxford University Press, New York, 1993. S. A. Kauffman, 2003, PNAS, Random Boolean Network Models and the Yeast Transcriptional Network Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Kauffman’s NK Boolean Networks An automaton operates in discrete time. The set of the output signals of the Boolean elements at a given moment of time characterizes a current state of an automaton. During an automaton operation, the sequence of states converges to a cyclic attractor. The states of an attractor can be considered as a "program" of an automaton operation. The number of attractors M and the typical attractor length L are important characteristics of NK automata. Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Kauffman’s Boolean Network Fundamental question: require metabolic stability and epigenesis the genetic regulatory circuits to be precisely constructed? ? Has fortunate evolutionary history selected only nets of highly ordered circuits which alone insure metabolic stability; Or are stability and epigenesis, even in nets of randomly interconnected regulatory circuits, to be expected as the probable consequence of as yet unknown mathematical laws? Are living things more akin to precisely programmed automata selected by evolution, or to randomly assembled automata…? Note: cellular differentiation despite identical sets of genes Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Kauffman’s Boolean Network Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Further Properties K connections: 22 K Boolean input functions Nets are free of external inputs. Once, connections and rules are selected, they remain constant and the time evolution is deterministic. Earlier work by Walker and Ashby (1965): same Boolean functions for all genes: Choice of Boolean function affects length of cycles: “and” yields short cycles, “exclusive or” yields cycles of immense length Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Further Properties: Cycles State of the net: Row listing the present value of all N elements (0 or 1) Finite number of states (2 N) as system passes along a sequence of states from an arbitrary initial state, it must eventually re-enter a state previously passed a cycle Cycle length: number of states on a re-enterant cycle of behavior Cycle of length 1 – equilibrial state Transient (or run-in) length: number of state between initial states and entering the cycle Confluent: set of states leading to or being part of a cycle Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Further Properties: Number of Cycles Such a net must contain at least one cycle, it may have more. Their number can be counted just be releasing the net from different initial states No state can diverge on to two different states, no state can be on two different cycles Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Further Properties: Number of Cycles (a) A net of three binary elements, each of which receives inputs from the other two. The Boolean function assigned to each element is shown beside the element. (b) All possible states of the 3 -element net are shown in the left 3 x 8 matrix below T. The subsequent state of the net at time T+ 1, shown in the matrix on the right, is derived from the inputs and functions shown in (a). (c) A kimatograph showing the sequence of state transitions leading into a state cycle of length 3. All states lie on one confluent. There are three run-ins to the single state cycle. Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Example: Net with N=10 Periodic attractor (yellow) and basin of attraction (cyan) Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Example: Net with N=10 The entire state space of an RBN with 10 nodes. Note: Self connections do not appear so a period-1 attractor appears to have no outputs although each network state must have exactly one output. Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Further Properties: Distance compares two states of the net Can be defined as the number of genes with different values in two states. For example N=5: state (00000) and state (00111) differ in the value of three elements This is used as measure of dissimilarity between - subsequent states on a transient - subsequent states on a cycle - cycles Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Totally Connected Nets, K=N Is like random mapping of a finite set of numbers into itself. Expected length of cycle is E. g. net with N=200 2200 states expected cycle length 2100 ~ 1030 Compare to Hubbel’s age of the universe: 1023 If every transition would take only a second…. Such networks are biologically impossible Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin One Connected Nets, K=1 Either one cycle of length N Or a number of disconnected cycles for the full systems state cycles lengths are lowest common multiples of the individual loop lenghts the state cycle length becomes easily very large Again biologically not feasible Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Two Connected Nets, K=2 Kauffman studied networks of N= 15, 50, 64, …, 400, 1024, . . , 8191 Nets of 1000 elements possess 21000~10300 states 16 Boolean functions Study of cycle length (surprisingly short) Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Two Connected Nets, K=2: Cycle Length (a) A histogram of the lengths of state cycles in nets of 400 binary elements which used all 16 Boolean functions of two variables equiprobably. The distribution is skewed toward short cycles. (b) A histogram of the lengths of state cycles in nets of 400 binary elements which used neither tautology nor contradiction, but used the remaining 14 Boolean functions of 2 variables equiprobably. The distribution is skewed toward short cycles. Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Two Connected Nets, K=2: Cycle Length Log median cycle length as a function of log N, in nets using all 16 Boolean functions of two inputs (all Boolean functions used), and in nets disallowing these two functions (tautology and contradiction not used). The asymptotic slopes are about 0. 3 and 0. 6. Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin K=2: Transient Lengths A scattergram of run-in length and cycle length in nets of 400 binary elements using neither tautology nor contradiction. Run-in length appears uncorelated with cycle length. A log/log plot was used merely to accommodate the data. Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin K=2: Number of Cycles A histogram of the number of cycles per net in nets of 400 elements using neither tautology nor contradiction, but the remaining Boolean functions of two inputs equiprobably. The median is 10 cycles per net. The distribution is skewed toward few cycles. Expected number of cycles: Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin K=2: Activity After release from an arbitrary initial state: Number of elements changing their state per state transition decreases Example: net of 100 elements first step: about 0. 4 N elements change exponential decay of this number minimum activity 0 to 0. 25 N On a cycle: 0 to 35 of 100 elements change most genes are constant during a cycle Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Noise One unit of noise may be introduced by arbitrarily changing the value of a single gene for one time moment. The system may return to the cycle perturbed or run into a different cycle. In a net of size N there are just N states which differ from any state in the value of just one gene Consider a net with several cycles: By perturbing all states on each cycle (distance 1) one obtains a matrix listing all cycles and how often they are reached from another one. By dividing all cells by the rows totals transition probabilities The matrix is a Markov chain. Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Noise: for the Example Boolean network a b c d Cycle 1 0000 0001 0101 0010 0000 0011 0000 0100 0001 0101 0110 0000 0111 0000 a(t+1) = a(t) b(t+1) = (not c(t)) and d(t) c(t+1) = a(t) and b(t) d(t+1) = not c(t) Transition Matrix Cycle 2 1000 1001 1101 1010 1000 1011 1000 1100 1011 1101 1111 1110 1010 1111 1010 Steady state: 0101 C 2 C 1 ¾ ¼ C 2 ¼ ¾ Edda Klipp, Humboldt-Universität zu Berlin Cycle: 1000 1001 1111 1010 1000
Humboldt. Universität Zu Berlin Noise (a) A matrix listing the 30 cycles of one net and the total number of times one unit of perturbation shifted the net from each cycle to each cycle. The system generally returns to the cycle perturbed. Division of the value in each cell of the matrix by the total of its row yields the matrix of transition probabilities between modes of behavior which constitute a Markov chain. The transition probabilities between cycles may be asymmetric. (b) Transitions between cycles in the net shown in (a). The solid arrows are the most probable transition to a cycle other than the cycle perturbed, the dotted arrows are the second most probable. The remaining transitions are not shown. Cycles 2, 7, 5 and 15 form an ergodic set into which the remaining cycles flow. If all the transitions between cycles are included, the ergodic set of cycles becomes: 1, 2, 3, 5, 6, 12, 13, 15, 16. The remainder are transient cycles leading into this single ergodic set-. Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Noise The total number of cycles reached from each cycle after it was perturbed in all possible ways by one unit of noise correlated with the number of cycles in the net being perturbed. The data is from nets using neither tautology nor contradiction, with N = 191, and 400. Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Application to Cell Cycle Logarithm of cell replication time in minutes against logarithm of estimated number of genes for various single cell organisms and cell types. Solid lines: connects medium replication times of bacteria, protozoa, chicken, mouse, dog, and man. Edda Klipp, Humboldt-Universität zu Berlin
Humboldt. Universität Zu Berlin Application to Cellular Differentiation The logarithm of the number of cell types is plotted against the logarithm of the estimated number of genes per cell, and the logarithm of the median number of state cycles is plotted against logarithm N. The observed and theoretical slopes are about 0. 5. Scale: 2 x lo 6 genes per cell = 6 x 10 -12 g DNA per cell. Edda Klipp, Humboldt-Universität zu Berlin
- Slides: 44