A Computer Scientist’s View of Life, the Universe, and Everything (1999)
arxiv.org
arxiv.org
Loved that line.
I do not understand this main point of the article. Perhaps someone can explain?
"On the other hand, computing just one particular universe’s evolution (with, say, one particular instance of noise), without computing the others, tends to be very expensive, because almost all individual universes are incompressible, as has been shown above. More is less!"
It seems the point is that the program to compute all universes is short, while the program to compute one particular universe is long. But surely runtime is greater in the former?
> Time. The Great Programmer does not worry about computation time. Nobody presses Him.
This is comparable to the metaphor of Indra's Net, as described by Alan Watts:
>"Imagine a multidimensional spider's web in the early morning covered with dew drops. And every dew drop contains the reflection of all the other dew drops. And, in each reflected dew drop, the reflections of all the other dew drops in that reflection. And so ad infinitum. That is the Buddhist conception of the universe in an image."
I'm taking a shot in the dark, but our state is "finite" and given the current state, there are infinitely many universes which are computable from the current state?
> "Ultimate Cognition a la Godel" http://www.brainmaster.com/software/pubs/math/Godel%20machin...
Interesting points, especially to follow up the recent 'is matter conscious?' article on HN.
Schmidhuber often seems to be more of a philosopher who happens to have made significant practical contributions to machine learning. The 'Great Programmer' is intentionally tongue-and-cheek, but for the agnostics out there, it's worth considering that regardless of what creator/process/fundamental mathematical requirement (if any) is responsible for the existence of our universe, it is unlikely that life on Earth (or perhaps in general) is relevant to It.
I love philosophy, but let's actually spend our time and energy asking questions that do have meaning, because any small meaning to us is more important than trying to do a task we are likely so ill equipped for that has no meaning to us.
I can't help but read titles like this piece and link it back to the anti-political and "above it all" attitudes that technical folk often take, believing that if they just eliminate meaning, emotion, all things that humans complicate pure logic with, and apply logic in the right way that somehow it will do some good. It doesn't matter if any of this is right or wrong - it has no relevant meaning to humans. Without meaning, it's a truly pointless task.
Completely unintuitive, isn't it? Empirically, we happen to be very good on it.
Agreed. However, should there be an afterlife, then it had better not be found lest it suffer my eternal wrath.
This seems wrong to me. There exists no general algorithm to find the shortest program to compute arbitrary data, but we can surely find specific shortest programs to compute arbitrary data.
(And that's probably a very difficult question, considering you had to acquire the concept of symbolism, numbers and relationships)
Likewise, our brains are engines, converting energy from one form to another, and hence governed by thermodynamics. Again, that fact may or may not be useful for investigating properties of the brain we care about.
Our brains are also matter, meat, networks, made of atoms, and squishy. These are all facts, they may or may not be useful.
We use metaphors to help understand things we lack a literal explanation for, or the full explanation is complex and ongoing (neuroscience, biology, chemistry).
That would be what the scientific method is about.
Couple this with the fact that you can not create an algorithm that can arbitrarily compress any given input string, and then for any given computer you can find input strings that requires more state to represent than said computer can contain. Even if you allow for output over time, for any given such computer you can find an input string that is sufficiently incompressible that finding the shortest possible representation requires more intermediate state than the computer can contain, and that can be true even if a sufficiently large computer will make it possible to find patterns that makes the data very compressible.
In fact, that is what the article is pointing out: The universe may be a lot more regular than it appears, but it is possible that we may never be able to determine what the patterns are because it may be impossible to hold or compute over enough state to be able to determine what the patterns are in a way that lets us identify the patterns.
It is also possible that it turns out to be possible to easily create such a minimal program, but the article also points out that the vast majority of possible universes are incompressible.
For us to be able to compute the most compact description of our universe we 1) need to be in a compressible universe (or the description will subsume the totality of the universe itself), 2) need to be in one where the shortest possible description can be computed with the intermediate states possible to contain within the observable universe.
As the article points out, without additional knowledge of what type of universe we are in, the odds are firmly against us in that respect.
https://scrollto.com/life-a-universe-simulation/
Send an email to the address listed in my profile if you'd like to be a part of the project.
Why Turing completeness? In particular, you're not going to be able to realize the execution of an arbitrary Turing machine, so why not restrict to a subset you can actually compute and do your modeling in that non-complete framework?
I don't think you can complete the torus in x, y, t (as there's no way to close the time dimensionl, so why not use a structure that is dimensionally symmetric? Similarly, hexagonal prism tiling is strange -- why not a tiling that is x, y, t symmetric?
Do you actually even want it to be "imperative" time, where you're stepping the simulation in clock cycles? Why not look for 3D universes that satisfy a set of constraints? (This might let you use a symmetric torus.)
I sort of get the lack of boundary, but why not simulate that in an "infinite" space rather than a closed one? Wouldn't this allow a more tractable simulation?
Why conservation laws? How do you plan to enact them?
If you have a discussion page, it might work better to talk about it there, since I think some of these questions get fairly involved.
2) The hexagonal tessellation on the torus is just the space. Not time. Time is the standard cellular automata clock ticks, where at t+1, every cell gets replaced with a new value, atomically. Every cell's new value depends upon its 6 immediate neighbors, and itself. This is not only parallelizable but also preserves locality.
3) 3D universes can come later. They are much more complex. This universe will be built iteratively. If 2d doesn't peel out, or it seems like 3d will improve it in some way, then it's not out of the question.
4) An infinite space without gravity has issues with conservation laws. A particle can fly off into space, never interact, and basically be "lost" as an outlier. With respect to our universe, the possible topologies are infinite euclidean plane, like you mention, or a boundaryless topology so large, that it appears flat at small scales. The torus isn't being used now anyhow. Since I restarted the project, I ended up going with a flat hexagonal tessellation that wraps at the edges like an Asteroids game. It's much simpler for now.
5) Conservation laws are necessary. In our universe, the speed of light is the speed of causality - its the speed of information movement. Yet the same thing that moves at the maximum speed of the universe, also provides the potential to keep things stable and at rest. This duality between stationary and moving information is why computation can happen. Too chaotic, and computation is easy to do, but results hard to retain. Too simple, and computation is hard to do, but results easy to retain. One needs a medium ground between these two. In any case, conservation laws make sure that no information storage is lost or gained - and that is effectively conservation of energy. It keeps computation requirements linear with the initial abstraction of mass the universe is started with.
Comments are welcome on the blog post. I will be putting up a github repository shortly but the code is changing very rapidly at the moment due to design decisions, so I don't wish to put it up yet -- it would just be a disservice to those interested.
2,3) Your structure is 2+1D, which is a kind of 3D. Comments about 3D objects were talking about spacetime regions, not space region.
2b) Do you want locality? I'm not convinced spatial locality is how our universe operates. Also, non-locality in Minecraft interacting with the update engine is what caused a lot of seemingly non-deterministic effects. I guess it makes simulating easier, though.
4) Asteroids is a torus, just a flat torus. I had actually assumed that's what you meant in the first place. (Also, you left out hyperbolic spaces.)
2) Yes, basically a flat torus. Not the most beautiful topology.
3) Yes, I think locality is the right approach at least for starting out. This project is iterative so nothing is set in stone.
Thank you for the questions and comments. I guess I left quite a bit out. And right now, I'm in the middle of a lot of design decisions regarding fusion and decay. It's not easy to build a universe, even a simple one.
"In our universe, the speed of light is the speed of causality" In your simulation the step function is causality. I would not be too concerned if the simulator was not strict in conservation. As a matter of fact, the interesting parts of our universe have the property that they are in the middle of an entropy flow.
Just some random advice, maybe you don't find it useful, but I would not focus too much on these things ...
Indeed and that is probably best to focus on. Conservation, should serve that goal first. And I think you will see that as you implement things you can let go of strict versions.
Would really want to see a simulator that allows for self copying, but does not provide that copying mechanism directly.
I think the golden information principles for emergent life are easier to find than biological ones, but of course the requirements of space, time, etc are much larger when ones' simulation is at a lower level of abstraction. It really is a question of level of emergent behavior versus level of base behavior. Even QM can be emergent from deterministic automata. [1]
I would suggest it needs to be a simulation in which self-organisation is possible. But also catalyzation and self-catalyzation (autocatalysis)[1]. From there it is a small step to self-copying and thus ... evolution.
I would suggest forgetting about reproduction and focusing on principles of information storage and movement. Computation is really the cornerstone of reproduction. In any large enough space that allows computation, computers will pop up that copy themselves. By chance. They will then dominate if their resource requirements allow them to. That's the ticket. Emergent reproduction.
I don't think you mean the first, as that is not too interesting to your goal. The latter is unlikely. How many possible configurations are there, and how many of those can compute? Let alone compute + copy? The universe will end before a random such entity appears.
Gravity causes matter to self organise into globes with disks. Charged molecules + surface tension causes crystallisation. Organic molecules support self-catylization.
From such organising principles there is a change self-copying arises before the universe ends. Or your EC2 budget ;)
You are assuming this universe ends. In a type of heat death or singularity (choose your poison.) Not if gravity isn't part of the dynamics. And even then, the universe could be a cyclic one. [1]
Most likely EC2 is not the right approach. I have worked with Cuda and OpenCL and buying a bunch of beefy Teslas or the new Titans would be more cost effective.
Redstone in minecraft supports compute, but is not fully independent. That is, the "laws of physics" of minecraft include special rules for redstone.
RNA polymerase is fully independent, the "laws of physics" do not have special rules for RNA.
So that last thing is the interesting bit in your effort, correct?
Now you seem to hope that the second level compute comes about randomly. But for that to do anything before the end of time, the ration between:
random states that compute / all possible random states
must be reasonable. And even then, one could argue that how those random states come about should be such that it is nothing special in the "laws of physics", or it is still "cheating".What I am trying to point out, in our universe, the big bang was a shitload of energy in low entropy state. Due to gravity it started self organising. And due to many other self organising effects, we got to self copying ...
Fully independent? Nothing is fully independent of the universe it resides in.
Cheating doesnt mean much. Cheating is making AI from the top-down if thats the case. Because its the extreme opposite end of emergence. And plenty of work is being done on that now. So if you manage to get life by "cheating", fuck it. It's life. It's a milestone.
There's other ways to avoid total chaos besides gravity. There's just got to be a delicate balance of stability of structure yet the ability to destroy structure and extract potential in order to compute, ie make new structure.
Yes, it's an ambitious thing.. But its a question of whether life is a product of information and computation, or a product of more specific principles. Who really knows.
"Fully independent? Nothing is fully independent of the universe it resides in."
Indeed. But there are levels of independence. That is, do the laws of the simulation: 1) merely provide an environment in which there can be turing completeness. or 2) is some aspect of that turing completeness explicit in those laws. Again, redstone(2) vs RNA(1).
And in a similar vain, 3) is the world initialised with some low entropy state and merely lets that run. Or 4) is the simulator constantly randomly generating states?
If you can manage 1 and 3, that would be amazing. Anything less, might still be great, or nothing special. It will really depend on the exact nature of the simulation.
And I would wager that 1 and 3 can only be reached by simulating some sort of entropy flow that causes self-organisation + self-catalysation.
But maybe a much more compute rich universe as you seem to be planning (?) might work. You should surely try if you have ideas. My comments are by no means meant to discourage you!
---
Note that from the perspective of entropy, there are 4 levels of organisation:
a) direct, the structure is the end result of high entropy (for gravity this is globes)
b) indrect, the structure is caused by the flow, but are not the end result (for gravity this is disks, but meandering rivers, crystals or organic molecules are other examples)
c) self-catalysation, (by lack of better term) like indirect, but the structure grows more than linear because more structure creates more structure[1]
d) self-copying, like self-catalysation, but in discrete space/time steps
Somewhere after (c) you would get self selection of the faster/better copiers ... which might lead to what falls squarely in a recognisable definition of life.
[1] https://en.wikipedia.org/wiki/Autocatalytic_set
---
"But its a question of whether life is a product of information and computation, or a product of more specific principles. Who really knows."
That is an interesting saying. What would be more specific principles? And maybe looking at life from the perspective of information and computation is not the most useful?
(That is why I said turing completeness is not so important to focus on, most simulations like we are talking about here are trivially turing complete.)
"Who really knows" :) our universe is surely 1 and 3, and life is at least 3 emergent system steps away from its most fundamental laws.
Consciousness is a hard problem.
> Since every change has a cause, the origin of the chain of causes and effects must be a cause without cause (first cause), which is a primary source of motion without motion.
The thought is logical, but there are also cosmological theories that do not presuppose the existence of a "first unmoved mover".
- https://en.wikipedia.org/wiki/Big_Bounce
- https://en.wikipedia.org/wiki/Loop_quantum_gravity
- https://en.wikipedia.org/wiki/Carlo_Rovelli
- https://en.wikipedia.org/wiki/Conformal_cyclic_cosmology
In the oscillating models, the universe follows infinite, or indefinite, self-sustaining cycles.
The time may emerge only in a thermodynamic or statistical context.
A sequence of events could "simply" only imply a correlation of adjacent quantum energy states.
Here it is: http://imgur.com/a/wGdGz