News for hackers. Stuff that matters.
Re:A Computer Scientist’s View of Life, the Universe, and Ev... by goldenkey on Wednesday April 12, 2017 @12:41AM (#14094810)
I'm actually working on a project that explores the concept of information storage / movement duality to create life.

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.

Re:A Computer Scientist’s View of Life, the Universe, and Ev... by SomeStupidPoint on Wednesday April 12, 2017 @01:22AM (#14094997)
I have some (radically) different opinions on what would make for a useful simulation, and questions about decisions you made -- would you be open to discussing the project in abstract with people who didn't necessarily want to join yours, but have a general interest in the topic?
Re:A Computer Scientist’s View of Life, the Universe, and Ev... by goldenkey on Wednesday April 12, 2017 @01:48AM (#14095092)
Sure, what questions do you have?
Re:A Computer Scientist’s View of Life, the Universe, and Ev... by SomeStupidPoint on Wednesday April 12, 2017 @02:10AM (#14095201)
In no particular order:

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.

Re:A Computer Scientist’s View of Life, the Universe, and Ev... by goldenkey on Wednesday April 12, 2017 @03:05AM (#14095433)
1) Turing completeness is necessary for intelligent life. The Church-Turing [1] thesis initially defined turing machines in terms of what a person could do with endless paper and pencils. Effectively, we are turing machines that consume energy in order to remain stable, compute, and reproduce. We of course, are possibly more than that -- but turing completeness is a base property that seems like it should be met. With the right information storage/movement principles, any calculation should be possible, which would trivially realize turing completeness without it being contrived -- it would be natural emergence.

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.

[1] https://en.wikipedia.org/wiki/Church–Turing_thesis

Re:A Computer Scientist’s View of Life, the Universe, and Ev... by ozy on Wednesday April 12, 2017 @04:37AM (#14095859)
"Turing completeness is necessary for intelligent life." Sure, but it would be extremely difficult to write a simulator with "interesting feedback" that is not turing complete ...

"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 ...

Re:A Computer Scientist’s View of Life, the Universe, and Ev... by goldenkey on Wednesday April 12, 2017 @07:33AM (#14096653)
Conversion between states means nothing if the states can multiply endlessly. There needs to be conservation to prevent "something for nothing."
Re:A Computer Scientist’s View of Life, the Universe, and Ev... by ozy on Wednesday April 12, 2017 @11:52AM (#14098874)
There is quite some room between that and strict conservation of "energy".
Re:A Computer Scientist’s View of Life, the Universe, and Ev... by goldenkey on Wednesday April 12, 2017 @02:03PM (#14100126)
Energy is an abstraction dealing with information states. So one has to first define what is the instigator of state change..and what its state is. The whole thing is a self referential nightmare if you don't conserve. Any kind of constant bias will take hold if vast compute cycles pass. But I dont necessarily disagree with psuedo randomness like hidden cyclic variables and other types of statistic macroscopi conservation without strict micro conservation.
Re:A Computer Scientist’s View of Life, the Universe, and Ev... by ozy on Tuesday April 18, 2017 @04:13AM (#14137190)
"whole thing is a self referential nightmare if you don't conserve"

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.

Re:A Computer Scientist’s View of Life, the Universe, and Ev... by SomeStupidPoint on Wednesday April 12, 2017 @04:24AM (#14095798)
1) But we don't have arbitrary amounts of paper or time.

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.)

Re:A Computer Scientist’s View of Life, the Universe, and Ev... by goldenkey on Wednesday April 12, 2017 @04:36AM (#14095855)
We don't but neither do universal simulations. Maybe I should have said finite-state turing machines. With a vast enough universe, the finite # of states won't matter much when it comes to producing life. What fraction of the information in the universe are our bodies, or if you go down further to simpler smaller species, the fraction gets smaller. It's tiny.

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.

Re:A Computer Scientist’s View of Life, the Universe, and Ev... by ozy on Wednesday April 12, 2017 @02:59AM (#14095407)
I like your project. I've done a life simulator myself: http://leverlabs.io/blog20160714/

Would really want to see a simulator that allows for self copying, but does not provide that copying mechanism directly.

Re:A Computer Scientist’s View of Life, the Universe, and Ev... by goldenkey on Wednesday April 12, 2017 @03:12AM (#14095468)
That's really cool. I see how you sort of built in decay through age.

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]

[1] https://arxiv.org/abs/1405.1548

Re:A Computer Scientist’s View of Life, the Universe, and Ev... by ozy on Wednesday April 12, 2017 @04:24AM (#14095796)
I have tried a few approaches at not having the simulator provide the copying function. But so far no luck. Do you have any concrete ideas?

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.

[1] https://en.wikipedia.org/wiki/Autocatalysis

Re:A Computer Scientist’s View of Life, the Universe, and Ev... by goldenkey on Wednesday April 12, 2017 @04:29AM (#14095822)
Reproduction for RNA/DNA and cells, and later multicellular life, is an emergent property of some heavy-handed universal laws.

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.

Re:A Computer Scientist’s View of Life, the Universe, and Ev... by ozy on Wednesday April 12, 2017 @04:46AM (#14095899)
"computers will pop up that copy themselves" That is interesting idea. But do they pop up because the simulator provides the compute? Or because the simulator allows for the construction of structures that can compute?

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 ;)

Re:A Computer Scientist’s View of Life, the Universe, and Ev... by goldenkey on Wednesday April 12, 2017 @05:46AM (#14096143)
Yes both. The sim provides the dynamics that allow for computers to exist. At a basic level, even simple phenomena are computations. RNA polymerase performs a computation when it copies. And we can go really low level, pretty much everything is a computation - of course, not all computations are equivalently great for life.

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.

[1] https://en.m.wikipedia.org/wiki/Cyclic_model

Re:A Computer Scientist’s View of Life, the Universe, and Ev... by ozy on Wednesday April 12, 2017 @06:30AM (#14096336)
Every simulator of any kind can be described as "compute". The question is, can the simulated environment itself support a new level of compute? And if so, how independent is that compute?

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 ...

Re:A Computer Scientist’s View of Life, the Universe, and Ev... by goldenkey on Wednesday April 12, 2017 @07:25AM (#14096611)
I am well aware. The simulation runs on a turing machine..a computer. That's different from turing completeness. Turing-completeness means a turing machine can be built inside of the simulation.

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.

Re:A Computer Scientist’s View of Life, the Universe, and Ev... by ozy on Wednesday April 12, 2017 @11:40AM (#14098744)
We are talking past each other because we are focused on slightly different things.

"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.

Re:A Computer Scientist’s View of Life, the Universe, and Ev... by goldenkey on Wednesday April 12, 2017 @01:56PM (#14100037)
Thanks for that link. And the breakdown. I agree with everything you say here. You have a great handle on the task at hand. Perhaps you'd like to exchange ideas / collaborate? Can you shoot me an email at andy at scrollto.com ?
Re:A Computer Scientist’s View of Life, the Universe, and Ev... by lightlazer on Wednesday April 12, 2017 @06:54AM (#14096461)
So you are going to try build the Autoverse in Permutation City? https://en.wikipedia.org/wiki/Permutation_City
Re:A Computer Scientist’s View of Life, the Universe, and Ev... by goldenkey on Wednesday April 12, 2017 @07:29AM (#14096635)
In some respects but consciousness is unknown with regard to it. I am defining life as intelligent computing machines that remain stable through consumption of their environment. Whether or not the life created is conscious is a deep question.

Consciousness is a hard problem.

https://en.wikipedia.org/wiki/Hard_problem_of_consciousness