Sunday, January 05, 2020

[etserisd] Random tree in a growing sphere

Root node at center surrounded by equally spaced concentric circles.  First concentric circle of radius 1.  Its circumference is approximately 6, so put 6 child nodes on the circle all connected to the center root node.

Second circle radius 2, circumference approximately 13.  Put 13 nodes on it, each node connected independently randomly to 1 of the 6 parents of the first circle.

Repeat for larger circles.  Each node on a circle uniformly randomly chooses a parent from among the nodes in the previous (inner) circle.

Graph layout problem: arrange the nodes on each circle nicely.  Edges shouldn't cross.  Nodes on a circle should be well separated.  Edges between parents and children should be short.  Color nodes to be able to tell how related they are: most recent common ancestor.  Reuse colors if a subtree dies out.

Repeat for 3D: concentric spheres.  On a given sphere, descendants of a common ancestor will probably clump geographically.

Simpler "1D" version: do it on a strip (or tube).  The number of nodes (population) stays constant between generations.

Population of a circle or sphere does not have to be proportional to circumference or surface area.  Maybe permit exponential growth.  It could be interpreted as a sequence of constant sized spheres over time with increasing population density.

No comments :