August 10, 2014

## On positivism

An entertaining rage from a well known philosopher:

The controversial question whether philosophy exists, or has any right to exist, is almost as old as philosophy itself. Time and again an entirely new philosophical movement arises which finally unmasks the old philosophical problems as pseudo-problems, and which confronts the wicked nonsense of philosophy with the good sense of meaningful, positive, empirical, science. And time and again do the despised defenders of “traditional philosophy” try to explain to the leaders of the latest positivistic assault that the main problem of philosophy is the critical analysis of the appeal to the authority of “experience” – precisely that “experience” which every latest discoverer of positivism is, as ever, artlessly taking for granted. To such objections, however, the positivist only replies with a shrug: they mean nothing to him, since they do not belong to empirical science, which alone is meaningful. “Experience” for him is a programme, not a problem (unless it is studied by empirical psychology)

(Karl Popper, The Logic of Scientific Discovery, English version published 1959)

See also, countless much more recent “science wars” articles, Brian Cox and Robin Ince, David Colquhoun, and my personal favourite science wars piece.

February 7, 2014

## Cubes: A Virtual Reality Experience

I’ve been developing virtual reality software for a science communication project, but as a side-line I have made “Cubes”: a dreamlike virtual space inhabited by melodic, self-organising and responsive cubes where you fly around and interact by just looking (and a the two mouse buttons to slow down or reset the scene). There is also a version that does not require a virtual reality headset – it’s not a cool, but still kind of fun.

I’m going to submit this to Oculus-Share, but for now you can download both the Oculus and Non-Oculus version here.

February 6, 2014

## GPU fun: bifurcation plots

So it’s quite easy to make hi-res plots of map functions with a GPU. The result is cool and science fictiony:

(click image for higher res) Continue reading

January 29, 2014

## Voronoi tessellation on the surface of a sphere (python code)

Today I needed to do perform a Voronoi tessellation. If I have a set of points on a surface, this is the way of splitting a surface up into areas that are closest to each of the points. Like this:

The blue points are the set of points I started with, and the black lines show the edges of the Voronoi tessellation. Doing a planar tessellation is quite simple, but I wanted to do it on the surface of a sphere. It’s conceptually quite simple, but the algorithm was really annoying to debug. So to save other people the same frustrations, I thought I’d post my python class.

January 5, 2014

## More weird properties of chaos: non-mixing

We’ve done “chaos is not randomnessbefore. Here’s another interesting property to do with mixing.

Mixing is a property of dynamical systems whereby the state of the system in the distant future cannot be predicted from its initial state (or any given state a long way in the past). This is pretty much the same as the kind of mixing you get when you put milk in a cup of tea and swirl it around: obviously when you first put the milk in, it stays roughly where you put it, but after time it spreads out evenly. The even spread of the milk will be the same no matter where you put the milk in originally. More formally, if

$P(x_0)$

is a “distribution” or density function of where the “particles” of milk are when you have just put them in the tea, and

$P ( x_t )$

is the distribution after $t$ seconds. “Mixing” is formally defined as

$\lim_{t \to \infty} P(x_0, x_t) = P(x_0)P(x_t)$

You don’t have to think about these distributions as probability distributions, but I find it easier if you do. For those that know probability, it is obvious that what the above is saying is that the distribution of milk after a long time is probabilistically independent of its distribution at the start.

In cups of tea, this happens (mostly) because of the “random” Brownian motion of the milk (possibly enhanced by someone swirling it with a spoon).

October 14, 2013

## Small, far away

Can you tell the difference between small and far away?

It’s funny because it should be obvious, but actually distinguishing between small and far away based on visual information is slightly tricky to explain.

October 1, 2013

## 3D printed bee colour spaces

Think3DPrint3D has generously donated 3D printer time and plastic filament to the unusual task of rendering the usually intangible concept of honeybee colour spaces into real, physical, matter!

The Spaces

The first two spaces we printed were chosen by me, in part because I think they are theoretically interesting, and in other part, because unlike some other colour spaces they are finite sized, 3D objects.

October 1, 2013

## Intuitive example of expectation maximization

I’ve been looking at the Expectation-Maximization (EM) algorithm, which is a really interesting tool for estimating parameters in multivariate models with latent (i.e. unobserved) variables. However, I found it quite hard to understand it from the formal definitions and explanations on Wikipedia. Even the more “intuitive” examples I found left me scratching my head a bit, mostly because I think they are a bit too complicated to get an intuition of what’s going on. So here I will run through the simplest possible example I can think of.

September 25, 2013

## Rotation matrix from one vector to another in n-dimensions

Sometimes you need to find a rotation matrix that rotates one vector to face in the direction of another. Here’s some code to do it for vectors of arbitrary dimension. The code is at the bottom of the post.

August 23, 2013

## Irrationality and Experience

Why should we care if someone else is being irrational? and in what way can we know that this is actually the case?

The idea of rationality is often thought of as a consistency within a collection of behaviours or beliefs. For example, if I think it is absolutely wrong to eat meat, I should think it is wrong to eat beef. As beef is a meat it would be irrational for me to think it was wrong to meat but also have the belief that it is OK to eat beef. Similarly, it would be irrational to think that eating meat was abolutely wrong, and then eat a plate of steak. To be rational, my behaviour should also match what I think.

How do we know when we are being irrational? Asking about the rationality of other people seems easier at first. When we observe others, we can spot things that they ought not be doing if they were rational. For example, they might claim to be vegetarian whilst eating a steak. According to most people, I would say, what they are doing is inconsistent. But this doesn’t mean that they do not have a perfectly consistent way of thinking that accounts for their actions and it is us, the majority, who have failed to grasp it. How do you know that someone else is being irrational, not you yourself?