“True” Randomness vs. “Pseudo” Randomness(pcg-random.org) |
“True” Randomness vs. “Pseudo” Randomness(pcg-random.org) |
I came up with this: Each of them select a different stock market index. On the same calendar trading day, they choose two digits past the decimal. When the market's close, compare the two digits of the closing price of their chosen index to the two digits they selected and then choose heirlooms in the order of closeness.
It worked quite well. They were on board because they could make two selections in determining their order: Market and digits. Two of them could choose the same two digits if they wanted and still have different scores. No complaints.
Not random, but seemed fair to all.
(The film "Force of Evil" is about a plot to nevertheless rig the outcome.)
Your idea combines what feels like a significant percentage of randomness while still having enough participation to rationalize buy-in.
It's tough to want to yield control of an important choice to a random number generator... though that's not an inaccurate description for this.
I like this as a perspective on "the illusion of choice". Part of me hates the phrase because I want to believe that I can take meaningful action.
---
[1] You can compensate for unequal economic situations by limiting the total amount that any one person can bid to a value that they can all afford.
I think it was avoiding trusting a third party.
The least significant bits of a bitcoin PoW hash behave pretty randomly. You could either bet on a fixed future block height, or on the first block past a given future timestamp...
From there on, it becomes a very conscious decision how many RNGs to manage in an engine. Unpredictable things, like UI or random animation choices and such tend to have their own RNG, so something like the AI or story-driving systems can have their own, more predictable RNG.
However, this again raises a tricky follow-up question: Do you persist the RNG state in the save file of a user? The answer here isn't as obvious as it seems, as it allows different kinds of save-game abuses. Re-initializing the RNG on load allows players to reload in order to get different results from actions. Persisting the RNG allows players to start testing and predicting actions after loading the game. It's a tricky question.
Another really interesting tangent to go on here as well is how the NES and similar old consoles handled randomness: They didn't really. The randomness was based on player inputs. This in turn gives raise to a great TAS technique: RNG manipulation. Carefully crafting input sequences can optimize the random results you get later, which results in entirely crazy runs.
It's a very interesting topic overall.
https://partofthething.com/thoughts/making-true-random-numbe...
Semi-related is this year's Nobel Prize for experiments showing Bell's Theorem is physically true. This rules out hidden variable theories.
“Arguably then, from a truly omniscient perspective, nothing, not even the physical world, is truly random—it is in the nature of causality that everything that happens has a chain of prior events that caused it. But in practice, for most real-world randomness, obtaining such an omniscient perspective is infeasible to the point of being impossible.”
And apparently he owns this network of forums and review sites that all funnel towards this scam. Very interesting... It's like as 100x worse than mattress reviews it looks like
I wonder if there is an actual legitimate roulette computer that exists (which is mentioned in this randomness article).
Maybe the scammer made this post on PCG-Random ...
Apparentl Claude Shannon was even involved in such a scheme. I'd take the article with a grain of salt, but it suggests it's possible.
edit: just a note that for years I wasn't even allowed to see or touch a PAR sheet. Literally, not even see or touch the things. They were securely locked up.
Much of a slot machine is "random" but to a point where the house never lost. If it were truly random not pseudo random there would be no way to control what was won or maybe nobody would win at all. Organized chaos really. And most of the time the slot is a 10 or even 20 year old barely functioning piece of junk. The machine has been paid off (so to speak) so any money it makes is pure profit.
The article touches on this briefly, but I think the distinction between cryptographic pseudorandomness and (unfortunately) "ordinary" pseudorandomness is important here. To get at the difference, we could say that you're allowed to look at everything inside the box, except specifically the bits of the secret seed. If there's still no way for you to distinguish the output from true randomness, other than the "brute force" strategy of trying every possible seed value, then this box gives you cryptographic randomness (i.e. it's a "CSPRNG"). Usually we'd also want to make the seed big enough that we don't have to worry about that brute force attack in practice, 256 bits as a rule of thumb.
> They would then use their spy-craft to combine their message with the random numbers (e.g., by numbering the letters of the alphabet and adding each successive letter of their message to each successive number from the table). They could then send that message knowing that if it was intercepted, it would be unreadable without a copy of their codebook
(I'm sure the author understands the following, but I think it's important to clairfy it anytime we touch on encryption.)
This sort of scenario is tricky if we don't make the "cryptographic vs ordinary" distinction above. There are lots of PRNGs that look random to us but whose output can be fully predictable to a computer program after a few observations. This isn't a rare corner case: most PRNGs have this issue unless they're speficially designed not to. For example, the Mersenne Twister algorithm used by Python's `random` module has this property, and I think the PCG algorithm that this article is about also has this property. If you use Python's `random.randbytes()` to generate your codebook, it's entirely possible and arguably likely that someone reading your encrypted messages will learn enough to predict every subsequent page of your codebook, which lets them easily decrypt all your messages after a certain point.
It leaves quantum randomness for a footnote, after spending many words saying that if you use a big enough permuted congruential generator, it's random enough for cryptographic use.
Technicality or practicality? This is one of those mathematician vs engineer topics. I'm reminded of this lkml thread from a few years back.
https://lwn.net/ml/netdev/CAHk-=wiSw7zYVUxiGT=_TPx1fqtNNYgu0...
Quantum random number generators should be empirically nondeterministic.
How would that be any different than atmospheric noise or die rolls? Are people's mouse movements and browser fingerprints that predictable, because last time I checked, people have a certain cadence by the way they move their mouse and the way they type, and browser fingerprinting yields very unique data which is hard to replicate and reproduce.
User mouse movements, maybe. But only while it's moving.
A person's timezone, OS version and type, language preferences, screen resolution, browser fingerprint etc... those don't change so often. So they're not really good sources of entropy.
I would really appreciate it if folks can point me to books/papers/articles/etc. which explain all of the above starting from first principles.
Also are there any courses one can pursue to study the above?
Super misleading statement, especially with the accompanying footnote. Quantum physics indicates there really is true randomness in the physical world, but let’s just ignore that, stick to Newtonian physics, and throw in a quick footnote to cover ourselves.
https://www.oreilly.com/library/view/the-art-of/978047050382...
This doesn’t make much sense. You don’t need to manipulate an RNG to ensure the house has an edge - and to my understanding this is generally not done in the big casino venues because it’s not even necessary. Because what you’re essentially suggesting is that machines purposely use poor quality PRNGs - which is absolutely not true. They have in the past unintentionally and have only been burned by it. Utilizing a PRNG does make auditing easier though. And it’s much easier to produce a reliable PRNG than find a reliable source of randomness that is not vulnerable to manipulation. (Having said that, mechanical real machines got by for years without any algorithmic RNG)
Games of chance that utilize effectively true randomness (since the behavior is unpredictable even to the house) have been around for millennia.
Another example is sports betting with a point spread. You bet $11 to win $10, on supposedly an 50-50 wager (the purpose of the point spread).
Slot machines work off the same principles. It's ok for the outcomes to be random, because the payouts are always less than the true probabilities.
“ The PCG family is designed with being difficult to predict in mind, and the default generators are not trivially predictable. But the primary design goal for most members of the PCG family is to be a fast statistically-good general purpose generator, and so by design they do not work quite as hard as most cryptographically secure generators.
“Most of the PCG output functions involve nonlinear operations and only reveal partial state, but as we saw from Knuth's truncated LCGs, that's no guarantee of that PCG generators can't be cracked.”
It was goofy, but satisfied them all without dissent. And it worked!
In other words the true randomness of quantum Events has been broadly accepted to reflect reality.
First you say that there can be no proof of anything about the physical world.
Then you tell about a Nobel prize for showing Bell's Theorem is physically true ...
> There can be no proof, in the mathematical sense, of anything about the physical world[...]
followed by:
> Semi-related is this year's Nobel Prize for experiments showing Bell's Theorem is physically true.
The first quote refers to "mathematical proof", the second to "physical proof". They are different categories.
Negative physical proofs is evidence showing that a particular model (assumption) about the physical world does not hold. Negative physical proofs are relatively straightforward. Take your model, make a prediction, and then show the prediction is untrue in the physical world. This is more or less how the Bell Inequality test was supposed to be.
Positive physical proofs (for example, prove that radioactive decay is random), is in general not "actually possible". We can only show that physical reality is sufficienty compatible with your model.
But that means we did not proof that the mathematical model is reality. There might be some weird edge case looming around the corner under which our model utterly fails to describe the physical world. Then we have to adjust the model or find a new one.