Posts

Showing posts from July, 2020

The invincible 20 year olds

Image
It is often said that people age 20 think of themselves as if they’re invincible. It’s an attribute most commonly given to young men in general.  The idea of immortality is one which comes up in mythology a lot and sometimes it comes up within scientific circles. Bacon spent his life in search of finding ways to become immortal until, in perhaps an ironic way, his search killed him. When immortality is spoken about the concept of ageing is often also brought up, Tithonus comes to mind. Solving the problem of ageing through does not lead to immortality, although it may seem to be that way. Each year you live your chance of dying that year increases. This is how the ageing process manifests itself in this side of the numbers, growing from a low of 0.01% age 5 up to almost 40% age 100. What if instead, this didn’t rise. What if every year you had the same chance of dyi

The twelve fold way

Image
I really struggle to remember the combinatorial rules. Do I need to use choose or do I need to use permute? How do I calculate each of them? Is this a case of stars and bars or is this something else? One of the things I want to add to my chatbot program is a way to ask which of the many systems should I be using? I did once try to build a javascript tool although I don’t think it ever really made itself into a useful state. I recently found a paper called “The twelvefold way” which explains all the different ways you put balls in boxes (or urns as is used in the paper). It really helped me to understand, at least a little better, how to calculate the different permutations of the problem. With this newfound understanding, I once again had a go at producing a program to calculate each, with a simple form-based input. One of the things that I wanted to extend this to doing was informing me of what the calculation method was. I really like the way google now lends a hand when you a

Picking apart Perlin noise from first Principles

Image
Although there are a lot of tutorials explaining the what and even the how of Perlin noise and the general class of algorithms; gradient noise, I have found none explaining the why behind the algorithm. Why does this algorithm work? In this post I aim to build up perlin noise from first principles, explaining why we add each element to the algorithm as we do. We will start by trying to make a surface, perhaps for a computer game world map. We are aiming for something that looks like a mountainous region. We don’t want to hand craft this landscape as we want it to go on forever, how can we procedurally generate this world? Given we want the surface to be random, we could start with that. However as you can see that doesn’t lead to the most pleasing of surfaces, in fact it wouldn’t be traversable in the game. Our problem is that there is no smoothness from one place to another. The lowest of points could be adjacent to the highest of points. What we want is for it

Popular posts from this blog

An exploration in number systems

Structural engineering with cardboard

The twelve fold way