November 29, 2005

Decorating the Mandelbrot Exterior

Another little fractal hack done while I should have been doing other things.

The Mandelbrot set is usually colored by using the number n of iterations it takes to leave the circle |zn-1|≤2 and using that number as a index in a color lookup table. But it is surprisingly simple to get a continous coloring instead by using the formula μ = n + 1 - log (log |zn|) / log 2. This can produce beautiful images such as the one on the right.

But even more fun is to use μ and arg(zn) to look up a point in an image and color the pixel in the Mandelbrot image accordingly. I got inspired by Bugman's work and tried my hand on some variations on my own.

First I tried out the famous fractal hand Soviet poster by Gustav Klucis, to make a truly socialist Mandelbrot set.

As an aside, it is interesting to consider that the whole image of a hand composed of little hands seem to have a natural opposite in the 'hand with fingers made of hands' image (c.f. bush robots, Zapatopi.net and an old cover of Extropy Magazine). One represents the wills of the many channeled into the will of the avant-garde, the other the ability of one individual to manipulate many things.

Of course, one can go Mondrian on the M-set too:

Poor Mondrian, the lines are getting both curved and fractal.

Finally, I started to experiment with tesselations of the exterior. I was not that happy with the results (especially since I found Bugman's Escher-reptiles hard to outdo), but it led me to construct a puzzle:

The pieces get a rather fun shape, with two nubbins on one side. The basic pattern consists of each double side connecting to two pieces half as large as the first one. Had the pieces all had the same shape this would have filled a 1x2 rectangle with the far edge covered with an infinite number of nubbins. But in this setting the pieces get stretched in nicely nonlinear ways and they stretch out far enough to reach the M-set border.

In fact, each piece is unique (I think). Size determines which the concentric ring the piece is located in. Even better, the inner and outer edges have continous curve segments that ought to force a particular continuation (since they are degree 2^n implicit curves and we have an entire curve segment, not just a finite number of points). This seems to be enough to guarantee uniqueness of position unless there are pairs of curves that behave identically in several places. The reflected corresponding piece on the other side of the real axis can be distinguished by the direction of the nubbin. Not quite a proof, but I believe it.

Hence one could actually (modulo physical intractability) make a puzzle with uncolored pieces that, when laid together, produces a Mandelbrot-shaped hole and has just an unique solution.

Posted by Anders3 at 03:49 PM | Comments (680)

November 25, 2005

Kleinian Spheres

Last year I got Indra's Pearls: The Vision of Felix Klein by David Mumford, Caroline Series & David Wright as a Christmas present. A wonderful book about the fractals, topologies and groups generated by Kleinian groups in the complex plane.

But what about generalising these wonderful fractals to three dimensions? Leaving out the richness of the full Möbius transformation and just looking at inversions in spheres produces some neat images.

I placed 8 unit spheres on the corners (±K,±K,±K) of a side 2K cube. Then I just iterated a point being inverted by a randomly selected sphere (if the point is xn and the sphere center is c, xn+1=c+(xn-c)/||xn-c||2 ). The result is a family of nice attractors.

For K increasing from 0.7 to 1.0 in steps of 0.05 we get the following images (click to enlarge):

Here I used a simple z-buffer algorithm in Matlab, assuming a surface normal directed away from the origin and changing the luminosity proportional to the logarithm of the number of points falling inside a pixel, which made the shadow side a bit more interesting. One has to do a bit of trickery to get the points into the narrow regions by often inverting through adjacent pairs of spheres (the method used in Indra's Pearls is a depth first search instead).

When K=1, the spheres just touch each other. A circle through the corners of a cube face will be invariant under inversion through the four corner spheres, since it intersects each of the spheres at right angles. Hence these circles are part of the invariant set, and form a kind of cuboctahedron. But the three circles not belonging to a particular sphere will be mapped onto smaller circles inside the triangular face, tangent to the nearby circles. And so on. We get an Apollonian gasket.

This corresponds to the 2D case where the generating circles are tangent to each other. See Pat's inversion applet for an interactive demonstration.

For smaller K the invariant circles are no longer tangent to each other and produce a more complex attractor structure where the big circle images lie inside a mass of other circles. As K is changed the inversions may cause them to be mapped across each other, producing messier attractor setss. Here I'm not sure whether they correspond to an union of gaskets or form a dense set (that does not correspond to a discrete group). When K approaches 1/sqrt(3) the attractor definitely seems to become a dense covering of the sphere meeting the other spheres othogonally. For smaller K yet, the attractor appears to be the entire space R3, with a high density of points close to the origin but no structure.

For large K we get a Schottky group of separated points, similar to a Cantor or a Fatou set.

One can do the same thing with an octahedral arrangement of spheres, this time for K=1.25:

I only know one other generalisation of Klein fractals to 3D, the paper Sphairahedral Approach to Parameterize Visible Three Dimensional Quasi-Fuchsian Fractals by Kazushi Ahara & Yoshiaki Araki (they also have a website about crystal models). They create a polygonalized representation by by building up the fractal from "sphairahedra", polyhedra with spherical polygon faces and corners meeting in mutual tangents. They produce amazing results, but can only handle positive measure fractals.

Knots and Links


One can also use other things than polyhedra for sphere centers. One interesting choice is to use a knot. According to a theorem by Maskit (I think, see Topology of Kleinian Groups in Several Dimensions by Michael Kapovich) the invariant set of a family of a quasi-Fuchsian group is either topologically equivalent to a circle or to a wild knot. A tame knot is a knot which can be turned into a polygon with a finite number of corners through a smooth transformation - wild knots cannot.

If one places spheres tangent to each other as a chain along the length of a knot, then there will be some kind of invariant set running through them. But for each sphere the set on its outside will be knotted, and hence mapped to a small knot on its inside. Hence the big knot will produce smaller knots along the set, and these knots will in turn be reflected in the other spheres and so on. In the end, we get a wild knot.


(While making this entry I found Peter Liepa's wild knot page with the same idea, and an interactive java3d model)

This trick is general and can be applied to any knot. The problem is to arrange the spheres so that they are all tangent. Normal parametrisations of knots produce an uneven distribution of spheres; some careful adjustment is needed.

One can also start out by two linked circles ("necklaces") of spheres. The subgroup generated by the inversions of one circle will of course leave the linking circle invariant. But that circle will be mapped to a smaller linked circle surrounding the invariant circle of a sphere on the opposite necklace. This way both circles become mapped to an infinity of smaller circles linked to the main invariant circles - and of course, each of these small circles will carry their own links. This is a wild link rather than a wild knot.

Posted by Anders3 at 03:24 PM | Comments (432)

November 04, 2005

Accelerating Towards the Main Sequence

This is a book that acts like a stimulant. It makes you want to read faster. Much faster. You will want to spawn Google searches and have them reintegrate knowledge directly into your head.

Accelerando is a family saga, stretching over four generations of the intensely divergent Macx family (and their partners, enemies and their pet AI cat). Usually this emphasizes continuity and slow development. Each chapter corresponds to roughly one decade of the extremely dynamic 21st century. The inability of each generation to understand the next mirrors the inability of humanity as a whole to understand its posthuman offspring. The result range from the tragic to hilarious to wonderfully bizarre. If you thought child rearing today was problematic, just wait until it can be massively parallelized.

Many of the chapters work as legal suspense stories: how do the characters get out of their current mess legally/economically/politically? There is very little traditional physical violence or”we must escape before this place blows up” suspense, but much thinking has gone into intricate (and often absurd) legal trickery. The solutions are usually even more lateral, although some are obvious enough that Stross even leave them happening off-stage, rushing onwards to the next grand idea.

In the second half of the novel many of the characters are, by the standards of their society, extremely poor. This doesn’t stop them from envisioning and implementing plans that would have astounded their ancestors in previous chapters. To some extent Stross solves the perspective problem of depicting extremely advanced or post-Singularity societies by looking at them from the perspective of unusually conservative and human members - although these characters are from our perspective almost posthuman and rich and powerful beyond belief. As a literary way around the Singularity it works, although suspension of disbelief gets a bit stretched - does everybody live this interesting lives? My guess is that they do.

I recall participating in the thread on the extropians list that at least partially spawned the first chapter, and many references in the novel are clearly informed by the best parts of the transhumanist canon. Robin Hanson’s economical analysis of upload economies, Hans Moravec’s Pigs in Cyberspace, Robert Bradbury’s M-Brain papers, Alexander Chislenko’s functional soups, Nick Bostrom’s analysis of whether human consciousness has any chance in a posthuman world, Stross own Scratch Monkey and many other sources. The drawback is that many references are rather internal (how many know what the Thompson trick is?); verisimilitude is enhanced but the unoriented reader will miss out many subtle detail. On the other hand, the amount of infodumps is already large – more would have imploded the text.

The Main Sequence

In many ways Accelerando describes the transhumanist ”standard model” of the 90’s. A takeoff with wearable computers, smart drugs and networked business models. An acceleration using genetic modifiations, implants, nanotechnology and AI. Then a singularity of uploading, posthumans, superintelligence and the dysonification of the solar system. And after that some sort of galactic future.

Several characters even mention”the main sequence of civilization development”, suggesting that this is indeed the most likely path for a technological civilization to take (and that eventually, once/if we get more examples, we can start treating them statistically. There are many similarities here to Karl Schroeder’s Permanence, although that novel suggests another (equally worrying) answer to the Fermi paradox.

The big problem is of course how deterministic this main sequence is. Accelerando suggests that it is indeed very probable, if not the only possibility. And given the discoveries the characters make this is bad news for human-like intellects, even if the M-Brains would not see it that way. Permanence questions the long-term stability of intelligence, Accelerando questions the long-term stability of individuality.

The culprit here seems to be bandwidth: as long as intelligence is trapped inside small solar systems (due to the long delays between them compared to the speed of information processing locally) competition will eventually make thinking matter absorb unthinking and less thinking matter, squeezing out the traditional human-level intellects. In Stross model there doesn’t seem to be room for such low-level processes in the highly efficient M-Brains themselves, so they get squeezed out into interstellar space. Linking the M-Brains with wormholes doesn’t solve the problem since the bandwidth is still too limited, but adds in a culturally homogenizing factor that makes the M-Brains even less appealing.

The question is how likely this homogenization is. What societies can sustain entities of different levels of complexity at the same time? In the Orion’s Arm setting, we instead assumed that rich and powerful societies would instead be organized like ecosystems, with many more simple agents/citizens than the high order superintellects (who fed on/outsourced the complexity generated by the lesser beings). Stross doesn’t contradict this, but the issue remains off-stage. He just assumes that there will not really be room for human-like entities inside the system (except as a by-product of history simulations). As a research question this is interesting: is it possible to design an evolutionarily stable society that retains many previous kinds of beings? My intuitive guess is that it would require some form of relatively fast expansion (economic and/or spatial) – as soon as it slows down competition will tend to outcompete older models. But fast expansion runs into the risk of evolving into merely expansion for its own sake (c.f. Burning the Cosmic Commons), also reducing complexity. Is there some kind of regulatory mechanism we can set up to balance these forces to maximize diversity?


Where is transhumanism now?

In many ways post-911 transhumanism is far less ambitious than the sketching of radical posthuman visions we did in the 90’s. It is much more directed towards the practical here-and-now of politics. Transhumanist causes in biotechnology, nanotechnology, morphological freedom and computing have become nearly mainstream issues, and the fight against political opponents takes centre stage. To a large extent this is good: we get to focus on constructing convincing and practical ethical/political arguments, and the existence of a debate with the opposition forces improvement. There was no opposition to speculating about physical eschatology in the 90’s, making these speculations rather loose. But the risk is that current transhumanism has problem bridging the here-and-now and the long-term visions, especially since too little effort may have been spent in the calm-before-the-storm 90’s on building better transhumanist philosophies. We have to build them today, and there is not much time.

The Fractal

The image is the argument of the Nth iterate of
wn+1=(.425+1.1*i*wn)tanh(wn)
The central part becomes a stable "M-brain" surrounded with a network of other M-brain blobs, while spiral crenelations spread out into the spaces left behind.

Posted by Anders3 at 10:29 AM | Comments (854)