>I mentioned that a digital computer cannot simulate even a simple reality, since there are too many molecules to keep track of, far greater than the capabilities of any digital computer. We need a quantum computer to simulate quantum reality, and hence, once again, the weather is the smallest object that can simulate the weather. Therefore, I don’t think we live in a simulation, unless the simulation is the universe itself. -Dr.Michio Kaku
Imagine the warehouse-size computer that is needed to simulate a bacterium here on Earth. Computers are dusty, and dust contains bacteria, so if you're a bacterium, then it's more likely that you're one of the billions of bacteria in the dust on the computer, than the bacterium being simulated by the computer. The same reasoning should hold for other worlds.
I would think this would apply to the individual molecule tracking requirement above as well.
Is the richness you describe in your comment implicitly constrained to that which exists physically perhaps?
Then you created a richer simulated world.
We don't have dragons on earth, but I can simulate dragons.
In the sense that this simulation exist in our world, you are right that the simulating world will then always be "richer" because it contains the simulation.
But if I could enter the simulated world, I could ride dragons. I can't ride dragons in "our" world, so in that sense it is clear that we can simulate things that do not have a concrete existence in our own world, and I to me at least that would make the simulated world "richer" in that respect by making things possible in the simulation that requires you to be in the simulation for it to be possible.
Similarly, we can clearly simulate something with more detail - e.g. we could simulate a world where our elementary particles can be subdivided endlessly, if we choose to. In the simulating world this would "just" be a simulation, but in the simulated world it would be that worlds reality.
There is even no reason why, with sufficient resources and time dilation, it would not be possible for the simulating world to simulate a world equivalent to the simulating world, so it could well be turtles all the way down.
Additionally your fidelity is backwards. Thre fact that the simulation is simpler than the real world means we can fit many more people/entities in it - because the computer doesn't have to simulate at full fidelity.
If we don't know the "real" rules, how can we make any proposition? At best we might argue that our world is inconsistent, but we cannot say that's any more or less likely than a simulation (who says the world has to make any sense?).
The only semi-useful simulation arguments have to assume the "real" world is sorta like our world or at least functioning according to math. But that returns us to the simulation cost problem.
A simulation is also indistinguishable from the real thing from the inside, or it wouldn't be a faithful simulation.
Given enough energy, we ourself could snap a universe into existence as well by clapping our hands?
If we want to create a realistic simulation, we only need to simulate things with sufficient fidelity to convince observers.
That basically means:
- Only things that have been observed needs to gain some form of persistence
- Each simulated entity should have error margins that account for their continued existence, or their allowable location and other factors. Once an error margin for an aspect of a simulated entity exceeds the factors of the pseudo-random instantiation of that entity or class of entities, you do not need to explicitly retain or simulate the state of that entity. E.g. you don't need to retain the state of an "NPC human" longer than ~120 years at most; most you can discard much sooner; most details you never need to generate in the first place because it is not known to the entity that observes it.
- Over time, perturb the simulation back towards the outcome of a static generator function that takes time as a parameter, to wipe out state and simulation. That is, "undo" all changes the "players" in the simulation do in as plausible way as possible.
Do that, and you only need to simulate the "players" you want to simulate and those entities closest in time and space to them most of the time. There'll be a "halo" of other entities that slowly reverts to the baseline simulation.
I keep wanting to use this approach as a simulation basis for a game, in fact.
E.g. consider Elite: When you leave a starsystem, all the ships in it despawns. If you go straight back, it breaks immersion. The approach above applied to it would instead record a cone from the last known position of each ship that grows over time by likely speeds and directions. As more and more of the larger end of the cone expands outside the starsystem, you increase the chance that they despawn. If you return rapidly, you find ships have moved a believable distance.
Or Minecraft: Currently mobs despawn outside of a given area, and simulation only runs within a certain number of chunks from the player. But most things stay exactly as they were. As such all player modifications must be saved. But for many things you can create functions that makes the world more dynamic with less simulation. E.g. if trees slowly grow and age and fall down, and rot, and new trees grow, then that means that the longer since a player has been in a given chunk, the more of the players modifications can be discarded and replaced by a generator function with time as one of the parameter.
We've pruned simulations since some of the earliest generative games.
To address the quote: We don't need to simulate the weather in its full apparent complexity, as long as the observed aspects of the weather falls within parameters that makes them plausible but sufficiently unpredictable.
For most detail of the weather, that just means it needs to conform to the overall parameters. E.g. you don't need to simulate raindrops that "player" sees; just the overall volume of rain in the overall area if it is near a "player". Even less detail if further away.
You may say, thousands are observing a game on twitch perhaps even if different camera angles of different players in a multiplayer game.
But, the observers of the real universe are of far greater magnitude and I often feel this game assets based reasoning fails to account the scale of our Universe due Earth Bias.
The simulation would still be a complicated program beyond our ability to understand, but there are information-theoretic reasons to believe it's of a finite complexity, of a size that a more intelligent being might find perfectly manageable.
Human sensoriums are information-theoretically bounded to be quite a bit smaller than you may think. People often don't really "get" how information works. It doesn't matter than the particle accelerator has numbers on a screen that claim it's collecting petabytes of data per second... you aren't collecting petabytes of data per second. All you ever see is a tiny slice of that thing's output, bounded by the amount the screen can carry and you can perceive. A minimal simulation of the accelerator's output is a great deal smaller than the actual data it is collecting. The bare minimum information necessary to simulate your sensorium is not really all that much, on the order of something that could fit on a modern Wifi signal, and not ever necessarily the latest standards. While we have no idea how to write a program that could simulate it as if a universe was behind it for that cheap, that doesn't mean no entity in the multiverse does.
The game analogy is a bit deceptive in that it invites you to imagine it all works exactly like modern games, but you have to imagine something wildly more sophisticated, and while not necessarily "unbounded" in resources, certainly a great deal more blessed than any current computer cluster we have.
How do you know?
How many "players" or "observers" are there? How do you know that?
How large a proportion of our universe do they observe?
The reality is that we do not know. We don't know if there's even a single "player" or "observer" over time, because for what we know there could be that only brief disconnected "slices" of time are ever simulated for single observers - we never directly observe the past and present at the same time; we only "know" the past from our memory in the present, and we have no way of knowing if that memory is an accurate representation of anything. Nor do we have a way of knowing if our sensory input is an accurate representation of anything.
But from what we can tell, we are not special. We are made of the same energy and matter as everything else and our awareness of the world doesn't seem to be unique either. If there is no privileged "player", then you cannot make the kinds of optimizations you're talking about because any given arrangement of matter and/or energy is potentially aware.
What's the point of a simulation pretending to simulate a complex system when it could have just implemented a simpler system in the first place?
Also, What is "observable"? If you mean "what people [well, simulation subjects] might look at", recall that people do take past data of weather, including data that's not collected at the time (e.g. tree ring data).
Assuming that the simulation can't examine future actions of the simulated people (if you could, why bother with a simulation?), it would need to simulate pretty deeply too, to be "plausible" with everything they might collect in the future. It isn't clear at all that a good simplification exists that would do that more cheaply.
Why are you assuming the simpler system would achieve the goal of the simulation? If the intent is to see how a "player" responds to an environment that is a realistic reproduction of a given environment, then placing them in a simulation that isn't a realistic reproduction may be insufficient.
> Also, What is "observable"? If you mean "what people [well, simulation subjects] might look at", recall that people do take past data of weather, including data that's not collected at the time (e.g. tree ring data).
The only "observable" data that complicates things are data that has been affected by "players", and where the effect has been observed by them and may be remembered by them. Anything that has not been affected by "players" can, assuming a simulation that consists of a deterministic base parameterised by time with a layer of "player modifications", be generated purely from the simulation. Anything that has been affected by "players" requires you to record those changes and alter the simulation based on those recorded differences.
Recording those changes has a significant "cost" because if they have knock on effects you also need to account for those knock on effects.
But as long as you store that state, you can still recreate any past state.
(consider here Minecraft as a gross simplification: If I chop down a tree, but leave a stump, and then walk outside of the chunks the simulation runs, and walk back again, I still expect to see the stump; this requires storing state where you otherwise could have re-generated the chunk purely from the seeds of the simulator - the ability to minimize that state is what has the potential to make a complex simulation viable)
What I was getting at was that a way of optimizing away most of that stored state is to keep track of when you can plausibly perturb what should be pseudo-random values in the simulation to "nudge" things back towards the base outcome of the simulator. When you can, you can then throw away saved state going forwards from that point in the simulation.
(e.g. add decay and growth, and the changing environment means you can bit by bit throw away state where throwing it away can be justified by the passage of time altering the environment)
The recording of things like weather data has no impact on that. You're not changing what the weather was. You're reducing the cost of recording aberrations from the baseline simulation to cut the cost of simulation going forwards.
In a chaotic quantum system, everything has an influence, including the butterfly 2000km from where you are sitting now.
We can't 'just implement the parts mattering to the players', because the butterfly could cause a storm in your location a month from now, and we can't know whether it does or does not without actually computing it.
So if the system is modeling all the butterflies, you have a simulation cost problem. If it not modeling the butterflies, than the system does not truly implement 'the weather', but a simpler system, in which point it would have been easier to simulate a simpler system with less noise.
"The only "observable" data that complicates things are data that has been affected by "players", and where the effect has been observed by them and may be remembered by them."
Lets look at the example of past data. Quite a lot of it is not by "players" (lets assume humans are the "players" here). Tree ring data, geological formations... How does our simulation deal with that?
A) Calculate everything in advance. That's not very promising.
B) Calculate everything the 'players' may care about in advance.
In some systems, that's equivalent to A. Even in other systems, the players pick their own motivation and tests. If the simulation is of any worth, we may not know in advance what tests they chose, so that's not promising either.
C) When the players are somewhere, calculate the past of anything they might be examined by them.
That would require enormous amounts of state or massive calculation. Calculating the past of quantum systems can be as complicated as approach A.
D) Read the players' mind and just give them what they want (why not? It's not outside the scope of a full simulation).
There are some coordination issues here (what if different players expect different things? or if player has a flaw in the original calculation?), but that seems manageable. Even more so if we are allowed to rewrite the players' mind. Of course, that means there'll never be a proof of the simulation since it will be prevented/rewritten immediately...
E) Don't bother with consistency, lie to the players all the time and hope they could rationalize everything. I'd have expected the world to be weirder and more inconsistent than it is in that case.
Because a central aspect of quantum mechanics is that we can not possibly predict what "should" have happened, then it follows that as long as the simulated outcome does not introduce predictability that shouldn't be there, a generated outcome is impossible to distinguish from a real one.
But that does of course not matter, because we have nothing to compare it against, so we don't know what the outcome "should" have been.
If we are in a simulation, then quantum mechanics could very well simply be the simulators attempt at an information barrier to prevent "obvious" patterns that would make it easy to discern that we're in a simulator, as well as a barrier that provides a lower limit for what the simulator needs to be able to simulate.
But there is another problem with this argument:
> So if the system is modeling all the butterflies, you have a simulation cost problem. If it not modeling the butterflies, than the system does not truly implement 'the weather', but a simpler system, in which point it would have been easier to simulate a simpler system with less noise.
This argument rests on the assumption that a "simpler system" that would be "easier to simulate" would have less noise. That's a shaky assumption in itself.
But we tend to interpret "clean" data as artificial, and simple mechanisms also makes it easier to spot inconsistencies. If we are the way we are because we are simulations of entities outside "our" universe, then it would be clear that if said entities don't want us to realize we're in a simulation, then we would want to create simulations that look noisy.
At the same time, if the intent is to simulate the world the "outside" entities live in, then there is no way to avoid noise if these systems are noisy in their world.
Luckily that does not mean the noise needs to be perfect, and apparent/pseudo-random "noise" is cheap and easy to generate from very small functions. We're getting pretty good at using noise to generate terrain simulations that are looking increasingly plausible from small inputs, for example. It is in fact a significantly simpler approach vs. trying to model everything perfectly, because noise can hide a lot of imperfections and generate very complex-looking features from deceptively simple inputs.
And again what you need to remember is that we don't have a basis for comparison. We don't have pictures of the "outside world" to compare to in order to look for flaws in the simulation. If we are in a simulation, then for what we know the simulation is really awful and full of flaws, but close enough for the purposes of those running it.
> Lets look at the example of past data. Quite a lot of it is not by "players" (lets assume humans are the "players" here). Tree ring data, geological formations... How does our simulation deal with that?
You're missing:
F) Use an approach at least as old as Elite: Layered generation (Elite uses a pseudo rng, but it doesn't need to be), and generate values dependent on the higher level simulation to "drill down" to generate the state at any given point in time. You can make this just as consistent as you want, because at each level if you want you can use contiguous functions that makes it appear like reasonable causal chains. If you have to mix in "player aberrations" you need to actually simulate those steps and save the results, which is why you then want to keep track of a timeline for how rapidly you can perturb out the player aberrations), but everything else can be thrown away and recalculated depending on what is cost effective.
You want geological formations? Use a generator function that returns the placements of tectonic plates and other geological features at time t, and a given position. This is no different from how e.g. Minecraft generates terrains other than adding a time parameter to allow for things like tectonic shift and erosion and the like to be layered into the generator.
You want tree rings? Look up the landscape data for the current chunk, run a generator function that returns the trees in that chunk, and their data, look up the tree the player has felled, record the aberration and generate the data for the felled tree. Plenty of game engines already e.g. gives you different amounts of resources for felling trees of different size; this is not a hard problem. And increasingly the believability of environmental simulators is a multi-billion dollar business already today. Now keep in mind that for the purposes of the simulation argument, for the odds to be heavily in favour of a simulation only at least two simulations of this place and time needs to be run before the heath death of the universe. That's a lot of time.
But a lot of the perceived complexity of that also rests on the assumption of a world roughly like how we perceive it: billions of people etc. But without knowing how many "players" there are vs "NPCs", it's impossible to estimate the complexity of the simulation. Most of us only ever see a tiny part of the world, and meet a tiny number of people, and interact deeply with a much smaller number of people. If it's all a simulation, you don't know how much it is actually simulating.
Maybe you're alone in here. Maybe I am. Maybe you didn't exist before you read this comment. Maybe you won't exist after you read it.
Although I'm a VR developer, I can't believe it's "all turtles all the way down" :@)
Actually I've been working on a theory to define randomness from complete uncertainty, without the "fair coin" metaphor based on constructivism, which is deterministic.
UDASSA (http://fennetic.net/irc/finney.org/~hal/udassa/) is the closest thing I've seen to a believable idea about how reality could come from nothing. It's basically a more specific version of the mathematical universe hypothesis.
>Actually I've been working on a theory to define randomness from complete uncertainty
If you're trying to make a deterministic theory of physics and eschew randomness from the world, then you're going to run into big problems from quantum mechanics. The idea that results from random quantum interactions comes from hard-to-measure factors in the world that we just happen to be uncertain about is called a hidden variable theory, and Bell's Theorem shows that those theories are incompatible with the principle of locality. Though there is one popular local and deterministic interpretation of quantum mechanics that avoids this issue: the Many-Worlds Interpretation. I wrote a post in another thread recently that's relevant: https://news.ycombinator.com/item?id=22845499.
The speed of light has always struck me as one of the more constant, arbitrary, and yet vital pieces of data we know about our universe. Suitable for debugging whatever kind of reality is is that we find ourselves inhabiting.
As always if simulating universes is possible then the probability we're in level 0 tends to 0.
"Eventually in the progress of a technologically advanced society, occasionally after some sort of limited access to hyperspace, more usually after theoretical work, it was realized that the soap bubble was not alone. The expanding universe lay inside a larger one, which in turn was entirely enclosed by a bubble of space-time with a still greater diameter. The same applied within the universe you happened to find yourself on/in; there were smaller, younger universes inside it, nested within like layers of paper round a much-wrapped spherical present."
"In the very centre of all the concentric, inflating universes lay the place they had each originated from, where every now and again a cosmic fireball blinked into existence, detonating once more to produce another universe, its successive outpourings of creation like the explosions of some vast combustion engine, and the universes its pulsing exhaust."
"There was more; complications in seven dimensions and beyond that involved a giant torus on which the 3-D universe could be described as a circle, contained and containing other nested tori, with further implications of whole populations of such meta-Realities… but the implications of multiple, concentric, sequential universes was generally considered enough to be going on with for the moment."