Open slarson opened 8 years ago
I'm going to try to start this over the weekend.
It seems any connection from neuron A to B (of any number of connections) means that it is considered neighboring to that neuron in this model. What kind of conductance do the gap junctions have? I see in their methods section that they left them in as included in the connections but took out 25 neurons - listed as removed are the pharyngeal ring neurons, AIBL, AIYL, and SMDVL. I will look into generating the same results so we can compare ours and also compare to the paper.
I'm having a lot of errors with PyOpenWorm though, ran a lot of the examples and test_bgp.py basically reported blank data:
STARTING WITH AVAL
STARTING WITH PVCL
NEURONS
NEIGHBORS of PVCL
NEURONS and their RECEPTORS
Then gap_junctions.py caused an error:
Traceback (most recent call last):
File "gap_junctions.py", line 12, in <module>
aval = net.aneuron('AVAL')
AttributeError: 'NoneType' object has no attribute 'aneuron'
Several other problems like having to run PyOpenWorm code with "sudo" because the database is apparently installed in the wrong spot. But the gap_junctions.py error shows that it's also something else going on and I just cloned and reinstalled PyOpenWorm from Github (and the earlier pip package did the same thing)
I've been able to get a preliminary vectorized version of the algorithm in the Linow et. al paper we have been looking at. The original code was written by @lukeczapla. Check out the notebook. Note these timeseries are already clustered.
Running it on a particular p probability yields this image, in which you can clearly discern some patterns. If you zoom in you can see the individual neurons. Whether this compares strongly to the empirical datasets is a good question – we'll need to ask the question of what the similarities actually mean.
Time runs across
Neurons run down
Yellow = Refractory
Red = Excited
Blue = Susceptible
Play around with this, maybe run some analysis on it. We aren't so far from reproducing the diagrams in the paper.
This paper http://arxiv.org/pdf/1510.05033v1.pdf, Dynamic Information Routing in Complex Networks could be relevant to us in building the analysis pipeline.
Just thinking about this model, it struck me that different clusterings might belie the fact that similar computations are happening in this simulated network.
The other side is that the same network connectivity can give rise to different dynamics under different model parameters – of course, we know this. Going forward, I think while our model should remain focused (and simple), it should mimic the degree of complexity in the real C Elegans nervous system. From how I understand it, there are many layers of interactions between neurons – we could model C Elegans nervous system as a a multilayered network, each layer superimposed above the others and describing a particular side to dynamics. Starting from direct interactions between neurons, we can go on to the complexities of different neurotransmitters used, and then start thinking about plasticity, and finally about neuromodulators (which @lukeczapla mentioned in his post on the Better Comparison issue).
Excellent work.
As we discussed today, the question is can we combine the two pieces that have been built? Can we feed the results of the simpler model into the pipeline for taking PCA and plotting dynamics to see if we can observe "Limited Sustained Activation" or "Criticality" (equivalent to the global periodic rhythm in the Kato et al., paper) in our simpler model? If not, what is the simplest model where we can observe this?
Once we have plugged these together, these references may help us in modifications to the simpler model to get the kind of activity out that we are looking for:
Following on this paper, it may make sense to try to build a simpler dynamics model just to see if we can generate similar plots mapping topology to dynamics.
The candidate is the S-E-R model described in this paper.
cc: @theideasmith @lukeczapla