It boils down to three fundamentals: demand, supply, and interactions

Image for post
Image for post
Credit: jamesteohart —

Turing Patterns and the Remarkable Mathematical Similarities Across Nature

Image for post
Image for post
Animals Wallpapers HD

We decided to take a walk today in a nearby church which has a small lake, full of ducks, geese, and turtles. Our kids love animals, and even imitate dogs and ducks. At the lake, we noticed the turtles have interesting patterns on their shells — it was hard to tell whether they were different species of turtles or just variations. Patterns in nature have always fascinated me and I decided to share some information on how a class of mathematical partial differential equations known as Reaction-Diffusion Systems, can help us understand the origin of these patterns.

In 1952, Alan Turing (yes The Alan Turing, the same one who invented modern computing!) made a bold hypothesis on the origin of morphogenesis (the processes by which spatial order is created in developing organisms). In his paper “The Chemical Basis of Morphogenesis,” Turing hypothesized that chemicals known as morphogens are generated, that react and diffuse leading to the emergence of coherent patterns. The first 2 sentences of his paper…

Ever been stuck in traffic and thought — if others drove better I wouldn’t be here? German physicists Kai Nagel and Michael Schreckenberg came up with a fundamental breakthrough in understanding and modeling the emergence of traffic jams. It turns out, traffic jams are not isolated events, in fact, they are extremely predictable.

Image for post
Image for post
Simulation of Nagel-Schrekenberg model of traffic at density 0.35 and p=0.3. Colors indicate vehicle speed | Skanda Vivek

In the Nagel-Schrekenberg model, cars are simulated as discrete objects on a grid of cells. At every time step, vehicle positions are updated according to 4 simple rules:

  1. Speed limit: All vehicles drive at speeds between 0 and the speed limit. In the original paper the speed limit is ‘5’, so vehicles drive between 0 and 5.
  2. Acceleration to speed limit: At every time step, vehicle speeds are updated to their current speed +1, as long as it is below the speed limit.
  3. Slowing down if too close to the vehicle in front: If a vehicle is going to crash into the vehicle in front given its current speed, it is slowed down so as to not crash. For example, say at time t, a vehicle is 3 cells away from the vehicle in front of it and its current velocity is 4. The velocity of the vehicle is slowed down to 2 so that it moves only a distance 2 cells from time t to time t+1, so as to not overlap with the vehicle in front (not cause an accident). …


Skanda Vivek

Professor, Data scientist , Entrepreneur at the Cyber-Physical Interface — As seen in Forbes, BBC, ArsTechnica…

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store