On 09.03.2022 11:46, Klaus Kassner wrote:
> Am 08.03.2022 um 18:24 schrieb Janis Papanagnou:
>> On 08.03.2022 17:41, Klaus Kassner wrote:
>>> Am 08.03.2022 um 16:33 schrieb Janis Papanagnou:
>>>> On 08.03.2022 08:37, Klaus Kassner wrote:
>>>>> Am 07.03.2022 um 21:04 schrieb Isidore Ducasse:
>>>>>> I had the feeling after reading the wiki that in NH36 the "moves per
>>>>>> turn" are not any more deterministic ?
>>>>> They were not fully deterministic even before (when you were
>>>>> burdened or
>>>>> worse). In any case, all my experience refers to pre-NH3.6 games.
>>>> As far as I see they are deterministic in NH-343. The point is that
>>>> the various speeds have to be mapped onto a discretized scale, with
>>>> the effect that, depending on the speed of the participants, you
>>>> will occasionally get a "free turn" (sort of) if you are faster, or
>>>> suffer from an additional attack if the foe is faster.
>>> Yes, I think they are deterministic in a technical sense. (But that is
>>> true for pseudorandom numbers, too.)
>> But pseudo-random numbers are nothing but a hypothesis here. I was
>> speaking about determinism without making any assumptions on the
>> random number generator. Whether the RNG used by NH is a PRNG or a
>> "real" RNG, there's just no RNG involved in this case.
> But there is randomness without random number generators. [...]
In Nethack? (Mind, only that is what we were talking about here!)
> You have
> randomness whenever your knowledge is insufficient to determine the
> outcome uniquely.
For Nethack, you can obtain that knowledge, though.
> You can then assign probabilities to the different
> possible outcomes.
Which is an unnecessary step if you just take the knowledge that is
>>> I thought that when you are burdened, you lose moves randomly, but I may
>>> be wrong in that, technically speaking.
>> You can count your moves; for example: step, step, step, free turn,
>> step, step, step, free turn, etc. - completely deterministic..
> Yes. This is what I was not sure about.
>> Being burdened will in NH-343 reduce the speed by a constant factor
>> that depends on the strictly quantified grade of your burden.
> O.k. So it is deterministic within the program, but random in practice,
> as the player cannot really do the calculations in his head. But he can
> know probabilities.
Why are you assuming that? If you know the underlying algorithms you
can simply determine it. And if you don't know the algorithm (by Wiki,
source code, or whatever) you can do the experiment on the fly; "step,
step, step, one-quare-space-gained" - remember? It suffices that you
know that there's no RNG involved and the experiment will provide you
the actual deltas. That's also what I do; I'm not doing calculations,
I am testing the delta once and apply it subsequently, and I do that
>>> In practice, moves per turn are *not* deterministic in the *standard
>>> sense* of randomness: you do not have sufficiently detailed knowledge of
>>> the deterministic mechanism and this creates (apparent) randomness.
>> There is no randomness here. (And that's all what has to be said.)
> There is. Have you ever thought about the meaning of randomness?
As a computer scientist and big fan of physics; of course I did.
Why do you doubt that? (Because I pointed out that the algorithm
in this context is not RNG-controlled but deterministic?)
>>> (This is by far the most frequent way randomness appears outside of
>>> quantum mechanics, which is the only physical theory with "true"
>> (Irrelevant here.)
> No. Because there is no randomness in the sense that you seem to assign
> to it outside of quantum mechanics.
> But there is randomness in the standard sense: sufficiently chaotic
> dynamics, and lack of knowledge to determine a unique outcome.
But that isn't the case here with the movement-scales. - Why do you
think it is?
For our given case, Nethack, we have algorithmic implementations for
some functions that are highly triggered by a RNG, and others that are
not, but are deterministic, like the one we are talking about here.
Whether other functions - off-topic here! - are truly random or not I
cannot tell. It could be that the various random functions in Nethack
rely on a PRNG algorithm, or it could rely on an RNG provided by the
operating system. In the latter case that could be retrieved from a
device that either relies on an OS-library algorithm that actually is
again a PRNG, or it can rely on some quantum effects of HW-circuits.
Here, for example, is a quote from my OS'es description, obtained by
the command 'man urandom':
random, urandom - kernel random number source devices
The random number generator gathers environmental noise from
device drivers and other sources into an entropy pool. The
generator also keeps an estimate of the number of bits of noise
in the entropy pool. From this entropy pool random numbers are
(Most of the expanded elaborations are (IMO) not contributing to the
concrete topic we had here, and they are known to me. So I skip most
of it. Continuing here...)
> Obviously, the decision of whether something is random or not depends on
> the precise notion of randomness. What I was saying and where we seem to
> disagree is that in all but one cases (i.e. quantum mechanics)
> randomness is an expression of lack of knowledge while the true dynamics
> is always deterministic.
Erm, no. That's not where we disagree. It appears to me that we disagree
that we could not tell what the RNG in an actual Nethack implementation
actually is. And we disagree in that it has any relevance in the given
case, where there's no dispute necessary what randomness actually is,
because there isn't any (neither a PRNG, nor an "unknown mechnics" RNG,
nor a RNG based on quantum mechanics effects), in the given case.
> So if you accept only "true" randomness as
> random, then saying there is no randomness here is an empty statement,
> because there is *never* randomness (as we excluded quantum mechanics).
I didn't exclude it. (Actually I assumed that the "noise" (that is above
mentioned in the man-page) would be a quantum effect. - I admit I may be
wrong with that assumption, since I haven't examined or read about what
physical effects generates the noise in the HW-circuits of that device.
I seem to recall to have heard, though, that this noise stems from a
quantum effect. If you know differently I'm curious to hear from you.)
But as said; whatever you consider random, the only relevant factor is
the determinism, so disputes about true randomness or about grades of
randomness is irrelevant. We have none here. (Not even the "randomness
by lack of knowledge", because an individual _personal decision_ to not
inform oneself can (IMO) not be a normative factor for the _term_.)
> But if you take the point of view of physics that randomness in practice
> comes from lack of knowledge, then of course there is randomness -- for
> the player -- in the way the number of moves per turn is determined,
> even in NH3.4x.
So for someone who has inspected the source code or informed himself
from the Wiki it's non-random and for others, uninformed folks, it's
random? - If that's what you are saying then this definition makes no
sense to me; it's certainly of no use here.
We spoke about the profane topic whether we can determine the free turns
or not - yes, we can! -, and whether the algorithm is deterministic or
not - yes, it is!
> No RNG is involved, but the algorithm is complex enough
> for the player not to be able to do the calculations
A calculation is unnecessary (as initially explained).
> (unless he is unburdened, then the calculations may be simple enough),
Yet still unnecessary.
> so he must rely on probability statements.
Nope, that is not necessary.
> In the case of NH3.6x, an RNG is involved
> which increases the complexity and makes it more random in the sense
> that now even with step counting and a calculator at hand, the player
> cannot determine the number of moves uniquely that he will get on his
> next turn.
> But of course, with the right numerical equipment and
> knowledge of the internal initialization procedures of NH, you could
> determine this number uniquely (essentially you could write a program
> that, given the right input, predicts exactly what the game will do next).
You can work with probabilities. But whether you can deterministically
predict the result would still depend on whether the implemented RNG
function relies on a device that gets its entropy from quantum effects
and emits truly random numbers or not.
> To state it succinctly, randomness is in the eye of the beholder. Except
> in quantum mechanics.
Fine. Here, with this statement, we have finally reached agreement. :-)