ELIFE-ASU / Neet

Simulating and analyzing dynamical network models
https://neet.readthedocs.io/en/stable
Other
4 stars 10 forks source link

Extended-Time Sensitivity #108

Open bcdaniels opened 6 years ago

dglmoore commented 5 years ago

@bcdaniels Do you have a reference for this? Should we split this issue into two:

  1. Higher-order sensitivity
  2. Avalanche size distributions
dglmoore commented 5 years ago

Actually, it looks like you've already split it up (#123)

bcdaniels commented 5 years ago

No clear reference here—we probably need to think a bit about the math. But my guess is that this will be related to the "Derrida curve" as seen in, e.g.,

dglmoore commented 4 years ago

Description

Compute the sensitivity based on state differences after t time steps. The current implementation of SensitivityMixin.sensitivity and SensitivityMixin.average_sensitivity implicitly use t = 1.

Proposed API

Modify the neet.boolean.sensitivity.SensitivityMixin methods sensitivity and average_sensitivity to accept a timesteps parameter.

class SensitivityMixin(object);
    def sensitivity(state, timesteps=1, transitions=None):
        pass

    def average_sensitivity(timesteps=1, transitions=None):
        pass

Example Usage

from neet.boolean.examples import s_pombe
s_pombe.sensitivity([0, 0, 1, 0, 0, 1, 0, 0, 1], timesteps=4)
s_pombe.average_sensitivity(timesteps=4)

Reference

Balleza, Enrique, Elena R. Alvarez-Buylla, Alvaro Chaos, Stuart Kauffman, Ilya Shmulevich, and Maximino Aldana. “Critical Dynamics in Genetic Regulatory Networks: Examples from Four Kingdoms.” PLoS ONE 3, no. 6 (2008). doi:10.1371/journal.pone.0002456.