This seems to be more simply all the data about the physical orientations and positions of neurons in a fly's nervous system.
I'd guess there is still humongous amounts of data missing that would be necessary for a simulation:
- the exact biological and chemical makeup of each neuron
- the biological and chemical environment in which those neurons exist
- the exact physics that govern the biological and chemical reactions happening in and around the neurons (and the ability to accurately simulate those physics)
- maybe most importantly, even if we have all those above (i.e. the ability to fully and accurately simulate biological systems as complex as individual cells), we may still missing the electro-chemical activation "state" of the neurons that allows the fly to operate as a cohesive whole. (as if we had all of the hardware of a computer, but none of the software)
The GP asked about "a fly simulation that works", and I think we won't need anything similar to your proposed demands. I'd wager that we can approach this decently well with a "basic" mathematical model run at discrete steps on the order of 0.1ms.
I suppose that we'll hit a big wall once we reach simulation time frames which involves changes in protein expression, but I think we'll have a decent simulation of what a "static" fly long before the end of the decade.
You don't necessarily need to understand something to a deep degree in order to simulate it. Ptolemy created a very accurate simulation of the solar system with a wildly poor understanding of how things moved, just because the system was simple and very consistent.
Simulating a fly is obviously a much larger task, but "we can't possibly simulate it unless we understand X" seems to me a misguided criticism.
Sure, hopefully there are many details which we could ignore, like we can ignore what the planets are made of. But from what we know about how nature works, I suspect a lot of little details are going to matter.
Flies are pretty highly optimised, and nature is happy to optimise all the way down to the single-molecule level. In fact there has to be a good reason to do something at the whole-neuron level, as this is vastly more expensive than doing it with a molecular machine. That reason is often speed, as electrical impulses give fast long-distance communication. But if you can do some of the computation with a molecular machine before sending that fast signal, why wouldn't you do this? So I'd bet that the hardware is customised many different ways invisible to this kind of scanning.
In principle I agree with you, but unfortunately we already know from other research that specific neuro-transmitters have specific effects on observable thought processes. Some neurons also sometimes 'broadcast' neuro transmitters by releasing them in an area around them, not just through direct synapses.
To me it would be highly surprising if these effects were not absolutely necessary to the brain's working.
It seems to me that fundamentally people assume that simulating a neuron is vastly, vastly simpler than simulating a bacterium. Ok, you can assume that. But what gives you confidence in that? Do you think that simulating a bacterium is less complex than simulating a fly, or about the same?
It all depends on what questions you want to answer with your simulation. If what you care about is where in the room the thing will be after 10 seconds at a resolution of 1 cubic centimeter, then yes, simulating a bacterium is vastly simpler.
the fact is that the connections and knowledge about the proteins are probably enough. consider: when something as complicated as a human brain is completely disrupted (with severe hypothermia, general anesthesia, a strong seizure) the "stuff" of their intellectual identity is preserved if the insult is removed. Therefore, it's extremely accurate to say that "we have everything we need" if the structure and protein expression within that structure is known.
"Here we (the FlyEM project at Janelia and collaborators at Google) summarize new methods and present the complete circuitry of a large fraction of the brain of a much more complex animal, the fruit fly Drosophila melanogaster."[1]
This doesn't touch the totality of the brain and says nothing of the CNS or PNS.
A long way at that level. See OpenWorm [1], which is still struggling to simulate C. elegans, a nematode. It's close to the simplest organism with a nervous system. Fully mapped, 302 neurons. They have the wiring diagram, but not the weights.
That project needs more money, and the Human Brain Project[2] needs less money. The Human Brain Project was an effort to understand the human brain in ten years. This is year seven.
Grinding up from the bottom is a thankless task, but necessary. It's bad for your career in some ways. Years ago, Rod Brooks was promoting Cog, an attempt to get to human-level AI in one big jump. (It failed.) I asked him "You did a good robot insect. Why not try for a mouse next." He answered "Because I don't want to go down in history as the builder of the world's best robotic mouse" In the end, he went down in history as the inventor of the first production robotic vacuum cleaner, the Roomba.
This is a classic problem with AI as a field. People keep thinking that they're one big idea away from general artificial intelligence. Hubris. I've seen four cycles of that in my lifetime. There's definite progress, but it's very slow.
Computationally? Think something like "NP hard", except the "verifier" function isn't even plausibly cheap either.
Experimentally from the real thing? I'm not even sure we know how many new pieces of technology we'd need.
It's not even clear that "the weights" are the only variable we're still needing. Even in the pure-computer-science conceptualization of neural networks, things like the activation functions matter; so, it's not unreasonable to suppose there are similar important features to track in biological systems... and whatever those are, we probably aren't getting them captured in a purely geographic connectivity scan.
Doesn't it really depend on how you define the weights? If you can't answer that question, you'll have no idea what to look for. For example, I understand that FIB-SEM microscopy can currently sample the chemical makeup of the voxels where the synapses lie. Those should be the answer to this question, if we agree that the neurotransmitter type and density are the weights. However, if you define the weights as the type and quality of dendrites that lead up to the synapse, you'll get a different answer. Perhaps a better answer to the question is that we are still studying what the weights should be, and having a complete connectome will make it much easier to test the different theories.
Not an original comment, but people occasionally point out that neurons like other cells are descended from self-sufficient life-forms that do all tasks all by themselves, so it would be weird if they were as simple as the mathematical concept we want to assign to them. If a neuron is not itself intelligent in some sense, how does a single cell "decide" what to do?
Currently the process involves experimentally recording activation and trying to replicate that. It’s not as easy as it sounds, though. Organic neurons don’t have floating-point weight values, nor do neural maps propagate in the feed-forward way that makes ANNs efficient on computers.
The best approximations use Spiking Neural Networks [1] and comparatively little research is done there. And again, this is just a different propagation strategy that looks more similar to how organic brains fire. It’s not a fully accurate simulation of the complex chemical ion channels found in the real thing.
I'm going to paraphrase something I heard from a neuroscientist and a computer scientist in a discussion once:
Spiking neural networks (of which brains are an example of) are a special case of mathematics called a petri network. We know how to run those mathematically, so in principle there's nothing stopping us from running a brain now. And yes, computers are definitely powerful enough to run some brains, as OpenWorm has demonstrated. You can try that for yourself, if you have the ability to run docker containers and a modest video card for the computations. It's even available on Docker Hub...
To run the emulation of a spiking neural network, you need three things:
1. A map of all the connections in that network (it's Adjacency List, or connectome)
2. A listing of all the rules that the nodes of the network execute
3. A computer powerful enough to execute those rules
And that's it. Sounds simple on paper, but in practice, we are still working on our ability to scan large biological networks.
*
The fly connectome here gives the first part of the process; we still need the ruleset for the individual neurons to calculate what they do correctly. There's been quite a bit of work on this part of the problem, looking into the field of optogenetic, and neural staining (brainbow) will give you a fair idea of the progress. Also, the Allen Labs in Seattle has been doing some outstanding work categorizing the different neurons, and the rules by which they operate. According to what I've seen of their work, it may be possible to get by with a (really sophisticated) combination of a lookup table and calculation to determine spiking rules, but I am not a specialist in that area, so take my observations with a sufficient dose of salt.
correct me if I'm wrong, but I thought this map isn't at the high level. It is a map of every single neuron connection for this region of the fly's brain. As low-level as it gets.
Sure. But the question was - is every brain the same. I would say it’s similar, but not identical.
Kind of like the first human genome sequenced. It’s just one humans DNA, but any give human has very similar DNA. Small differences matter greatly though.
I highly recommend this lecture by Jeff Lichtman, where he describes the machine they've built to slice the brain and the software they have written to visualize and make sense of this vast amount of data:
38 comments
[ 3.0 ms ] story [ 23.3 ms ] threadA very nice intro into how these structures could give rise to actual behaviours.
[1] https://www.goodreads.com/book/show/483485.Vehicles
Screw it. I won't view the pictures.
I'd guess there is still humongous amounts of data missing that would be necessary for a simulation:
- the exact biological and chemical makeup of each neuron
- the biological and chemical environment in which those neurons exist
- the exact physics that govern the biological and chemical reactions happening in and around the neurons (and the ability to accurately simulate those physics)
- maybe most importantly, even if we have all those above (i.e. the ability to fully and accurately simulate biological systems as complex as individual cells), we may still missing the electro-chemical activation "state" of the neurons that allows the fly to operate as a cohesive whole. (as if we had all of the hardware of a computer, but none of the software)
I suppose that we'll hit a big wall once we reach simulation time frames which involves changes in protein expression, but I think we'll have a decent simulation of what a "static" fly long before the end of the decade.
Simulating a fly is obviously a much larger task, but "we can't possibly simulate it unless we understand X" seems to me a misguided criticism.
Flies are pretty highly optimised, and nature is happy to optimise all the way down to the single-molecule level. In fact there has to be a good reason to do something at the whole-neuron level, as this is vastly more expensive than doing it with a molecular machine. That reason is often speed, as electrical impulses give fast long-distance communication. But if you can do some of the computation with a molecular machine before sending that fast signal, why wouldn't you do this? So I'd bet that the hardware is customised many different ways invisible to this kind of scanning.
To me it would be highly surprising if these effects were not absolutely necessary to the brain's working.
"Here we (the FlyEM project at Janelia and collaborators at Google) summarize new methods and present the complete circuitry of a large fraction of the brain of a much more complex animal, the fruit fly Drosophila melanogaster."[1]
This doesn't touch the totality of the brain and says nothing of the CNS or PNS.
[1]https://www.biorxiv.org/content/10.1101/2020.01.21.911859v1
That project needs more money, and the Human Brain Project[2] needs less money. The Human Brain Project was an effort to understand the human brain in ten years. This is year seven.
Grinding up from the bottom is a thankless task, but necessary. It's bad for your career in some ways. Years ago, Rod Brooks was promoting Cog, an attempt to get to human-level AI in one big jump. (It failed.) I asked him "You did a good robot insect. Why not try for a mouse next." He answered "Because I don't want to go down in history as the builder of the world's best robotic mouse" In the end, he went down in history as the inventor of the first production robotic vacuum cleaner, the Roomba.
This is a classic problem with AI as a field. People keep thinking that they're one big idea away from general artificial intelligence. Hubris. I've seen four cycles of that in my lifetime. There's definite progress, but it's very slow.
[1] http://openworm.org/ [2] https://www.humanbrainproject.eu/en/
Experimentally from the real thing? I'm not even sure we know how many new pieces of technology we'd need.
It's not even clear that "the weights" are the only variable we're still needing. Even in the pure-computer-science conceptualization of neural networks, things like the activation functions matter; so, it's not unreasonable to suppose there are similar important features to track in biological systems... and whatever those are, we probably aren't getting them captured in a purely geographic connectivity scan.
The best approximations use Spiking Neural Networks [1] and comparatively little research is done there. And again, this is just a different propagation strategy that looks more similar to how organic brains fire. It’s not a fully accurate simulation of the complex chemical ion channels found in the real thing.
[1]: https://en.wikipedia.org/wiki/Spiking_neural_network
Not sure if you downplay this or not, but that's nothing to scoff at.
Spiking neural networks (of which brains are an example of) are a special case of mathematics called a petri network. We know how to run those mathematically, so in principle there's nothing stopping us from running a brain now. And yes, computers are definitely powerful enough to run some brains, as OpenWorm has demonstrated. You can try that for yourself, if you have the ability to run docker containers and a modest video card for the computations. It's even available on Docker Hub...
To run the emulation of a spiking neural network, you need three things:
1. A map of all the connections in that network (it's Adjacency List, or connectome)
2. A listing of all the rules that the nodes of the network execute
3. A computer powerful enough to execute those rules
And that's it. Sounds simple on paper, but in practice, we are still working on our ability to scan large biological networks. *
The fly connectome here gives the first part of the process; we still need the ruleset for the individual neurons to calculate what they do correctly. There's been quite a bit of work on this part of the problem, looking into the field of optogenetic, and neural staining (brainbow) will give you a fair idea of the progress. Also, the Allen Labs in Seattle has been doing some outstanding work categorizing the different neurons, and the rules by which they operate. According to what I've seen of their work, it may be possible to get by with a (really sophisticated) combination of a lookup table and calculation to determine spiking rules, but I am not a specialist in that area, so take my observations with a sufficient dose of salt.
Or does it vary between individuals?
Kind of like the first human genome sequenced. It’s just one humans DNA, but any give human has very similar DNA. Small differences matter greatly though.
https://www.youtube.com/watch?v=2QVy0n_rdBI