View Single Post
Old 09-19-2018, 09:28 AM   #1047
ericthered
Hero of Democracy
 
ericthered's Avatar
 
Join Date: Mar 2012
Location: far from the ocean
Default Re: Catalog of the Weird Parallels

Quote:
Originally Posted by Fred Brackin View Post
For an 80 year old to become a 7 year old (at least 2 7 year olds) would require multiple and improbable steps. The average person would fission only about every 25 years.

Ok, the math on this is weird enough to be interesting.



A human has a "Half-Life" of about 34 years*: about every 34 years, they will split. The average time between splits is actually a touch longer: about 50 years**.



The 80 year old turned 7 year old is probably going to happen, especially given enough time. The hardest step is actually that first split: people will still continue to die, particularly at first, and an 80 year old will have a very good chance of dying of old age before he splits. I'm going to use a 9 year old for the next set of numbers to make the math easy: the raw chance of a given branch of an 80 year old becoming 9 is (.02)^4, or 1 in 6.25 million. This paper claims their were 70 million folks over 80 years old, so it happens, but rarely. But this doesn't consider multiple branches. The chance of a given 80 year old making one copy of himself that's 9 within 4 years is more complicated to determine, but essentially you can use double the probability at each step past the first, so there is likely 8 times more people than the raw branch method would indicate. That's still only 80 or so people in the first 4 years, world-wide.



Of course, as the population ages, more and more 7 year olds will have 80 years of experience. After 80 years, every 7 year old will be 80 or more.



At a certain point, the population gets young enough that people die at a lower rate, but there is a limit to that. With a long enough time, you may get an increase in lifespan as those who live longer have a higher chance of reproduction.



I ran a simple simulation and found out some interesting things:
  • the youngest children quickly cease to exist. I ran 800 people for 5 years and had exactly 1 four year old. Teenagers do seem to be pretty common though.
  • People continue to die of old age. The ratio seems to vary with average age of death. if the average is 70 people 1 death happens for every 2.5 splits, at average age 80 they die with every 3.5 splits.
  • The meat of the curve happens between 20 and 50. Which is a nice and productive range of life to be in, I think. That takes a long time to kick in though.
The Code is below. Its javascript.

Code:
var ages = [];
var deaths = 0;
var splits =0;
for(var i = 0;i<100;i++){
    ages[i]=i<=80?10:0;
}
function countPeople(ages){
    return ages.reduce((a,b)=>a+b);
}
function ageOfIndex(ages,index){
    var sofar = 0;
    for(var i =0;i<ages.length;i++){
        sofar+=ages[i];
        if(sofar>=index)return i;
    }
    return -1;
}
function runYear(ages){
    var count = countPeople(ages);
    var toSplit = 0;
    for(var i=0;i<count;i++)
    {
        if(Math.random()<=.02)toSplit++;
    }
    for(var i =0;i<toSplit;i++){
        var index = Math.floor(Math.random()*count);
        var age = ageOfIndex(ages,index);
        ages[age]-=1;
        ages[Math.floor(age/2)]+=1;
        ages[Math.ceil(age/2)]+=1;
        splits++;
    }
    for(var i =ages.length-1;i>=0;i--)
        ages[i+1]=ages[i];
    ages[0]=0;
    for(var i=70;i<ages.length;i++){
        //*
        for(var j = ages[i];j>0;j--)
            //if(Math.random()*30 < i-70)
            if(i>80)
            {
                ages[i]--;
                deaths++;
            }
            //*/
        if(i>100) delete ages[i];
        ages.length=101;
    }
    if(countPeople(ages)>5000){
        for(var i=0;i<ages.length;i++)
            if(Math.random()>.5)ages[i]=Math.ceil(ages[i]/2);
            else Math.floor(ages[i]/2);
    }
}
for(var i=0;i<5;i++)runYear(ages);



*Log(0.5)/Log(0.98)
** 34*LN(2) = 49.05
__________________
Be helpful, not pedantic

Worlds Beyond Earth -- my blog

Check out the PbP forum! If you don't see a game you'd like, ask me about making one!
ericthered is online now   Reply With Quote