R/attractor_FBN.R
searchForAttractors.Rd
A function to find all possible FBM (Fundamental Boolean models) attractors
An object of FBNNetwork
A list of initial states, the row names of each state must be matched with the genes
a list of genes which index order must match with the current state
A type of Boolean network update schema chosen from synchronous, asynchronous and time step based
It is a vector of genes that are marked as On
It is a vector of genes that are marked as Off
The maximum timesteps that the system will try to search.
Attractor objects
Chen et al.(2018), Front. Physiol., 25 September 2018, (Front. Physiol.)
Mussel, Hopfensitz et al. 2010, BoolNet - an R package for generation, reconstruction and analysis of Boolean networks
data('ExampleNetwork')
initialStates <- generateAllCombinationBinary(ExampleNetwork$genes)
trainingseries <- genereateBoolNetTimeseries(ExampleNetwork,
initialStates,
43,
type='synchronous')
cube<-constructFBNCube(target_genes = ExampleNetwork$genes,
conditional_genes = ExampleNetwork$genes,
timeseriesCube = trainingseries,
maxK = 4,
temporal = 1,
useParallel = FALSE)
NETWORK2 <- mineFBNNetwork(cube,ExampleNetwork$genes)
## find attractor with type = synchronous
attractor <- searchForAttractors(NETWORK2,
initialStates,
ExampleNetwork$genes)
print(attractor)
#> Discovered Attractors via Fundamental Boolean Model :
#> Genes are encoded in the following order::
#> Gene1 Gene2 Gene3 Gene4 Gene5:
#>
#> Attractor 1 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 0 0 0 0 1 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 2 is a complex attractor consisting of 4 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 1 0 0 0 0 |
#> | |
#> 1 0 0 0 1 |
#> | |
#> 1 1 0 0 1 |
#> | |
#> 1 1 0 0 0 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 3 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 0 0 1 1 1 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 4 is a complex attractor consisting of 5 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 1 0 1 1 1 |
#> | |
#> 1 0 1 0 1 |
#> | |
#> 1 1 1 0 1 |
#> | |
#> 1 1 1 0 0 |
#> | |
#> 1 0 1 1 0 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
FBNNetwork.Graph.DrawAttractor(NETWORK2,attractor,3)
## find attractor with type = asynchronous
attractor <- searchForAttractors(NETWORK2,
initialStates,
type = 'asynchronous',
ExampleNetwork$genes)
print(attractor)
#> Discovered Attractors via Fundamental Boolean Model :
#> Genes are encoded in the following order::
#> Gene1 Gene2 Gene3 Gene4 Gene5:
#>
#> Attractor 1 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 0 0 0 0 0 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 2 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 1 0 0 0 0 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 3 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 0 0 1 0 0 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 4 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 1 0 1 0 0 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 5 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 0 0 0 1 0 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 6 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 1 0 0 1 0 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 7 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 0 0 1 1 0 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 8 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 1 0 1 1 0 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 9 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 0 0 0 0 1 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 10 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 1 1 0 0 1 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 11 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 0 0 1 0 1 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 12 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 1 1 1 0 1 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 13 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 0 0 0 1 1 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 14 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 1 0 0 1 1 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 15 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 0 0 1 1 1 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
#> Attractor 16 is a simple attractor consisting of 1 state(s):
#>
#> | --< - - - - - |
#> v ^
#> 1 0 1 1 1 |
#> | |
#> v ^
#> | - - - - - >-- |
#>
#>
FBNNetwork.Graph.DrawAttractor(NETWORK2,attractor,3)