Photo courtesy of Douglas McKenna
Douglas McKenna is a mathematician, computer scientist, and software engineer. On Tuesday afternoon, he gave a talk titled, “The Art of Hamiltonian Motifs: Generalized Hilbert Curves with Linear, Self-Similar, Fractal, or Space-Filling Boundaries.” McKenna received degrees from Yale University, and has been creating mathematical and fractal art both with a computer and by hand since the 1970s. He contributed illustrations to Benoit Mandelbrot’s book The Fractal Geometry of Nature, and his drawings have been featured in Smithsonian Magazine. He regularly contributes to the Bridges Conference on Connections Between Art and Mathematics, and is writing a book on space-filling curves, one of the subjects of his art.
This interview has been edited for length and clarity.
How do art and computer science fit together for you?
Computer science teaches you about precision. And it teaches you the habit of making sure you’ve covered all possibilities, because when you don’t cover all the possibilities, your program crashes or has bugs. It’s a fundamentally mathematical skill; you have to do the same thing in mathematics. I’m interested in these patterns, which can be very complicated visually.
I learned most of my computer science from a professor named Alan Perlis — who was the first Turing Award recipient, which is sort of the computer science Nobel Prize — and he worked on the first Fortran compiler in the ’50s, and he was one of the main fathers or progenitors of the ALGOL language, which was in the ’60s. [The language] C was sort of an offshoot of ALGOL, and Pascal too. So when I used all that computer science, I wanted to draw all these pictures, and I wanted them to be accurate. Otherwise it was just too tedious, because they have zillions of little motifs in them in different orientations.
I actually bought a little Hewlett-Packard pen plotter in the ’70s, and for a lot of money back then. I wrote all of the drivers for it, and got an account, and wrote my own language that was kind of like C. The only way you could operate this thing was through Fortran, and Fortran was a language that at that time could not do what’s called recursive subroutines. Recursion is a very fundamental aspect of everything in computer science — you just learn it. [Stack-based recursion is] so useful in lots of ways. And so, I wrote this language that allowed me to program Fortran recursively, because recursive algorithms are great for doing fractals, and especially space-filling curves. They’re all basically a recursive structure.
Drivers are all about bits and bytes, and you have to know everything down to the hardware level to do it, and that’s how I got this plotter working. So, I would do the outlines of a space-filling curve, or create a tile and draw that. I created a system that I brought with me eventually to IBM. And then I would take these, and I would sit at my kitchen table with India ink and a nib pen, and I’d color them in by hand. There were no algorithms for coloring the insides of polygons, especially complex, convoluted polygons. I just did it by hand.
On your website Mathemaesthetics, you write about tension between symmetry and asymmetry, Platonic beauty, and aesthetic. Could you talk about what these concepts mean to you and how they impact your art?
I’m interested in asymmetry in math. I think in a good piece of art — even a mathematical piece of art — there’s got to be a tension between symmetry and asymmetry, because if you’re just celebrating symmetry, it’s not really good art. You could celebrate asymmetry and it might not be good art either. I’m interested in some constrained combinatorial space where you can play and choose, and sometimes you can discover things — and this is where I’m most satisfied — that to the average person [are] indistinguishable from a piece of art. I’ve found some patterns like that that I’m really happy with, and one of them’s on [Oberlin Professor of Mathematics] Bob [Bosch’s] door there. That’s actually a mathematical discovery, it’s a tile, but then I colored it in interesting ways, and played with it, and it can be parametrized. Yeah, it’s a very pristine object, but if you look at that you don’t understand that. You look at it and you say, “Oh, it’s somebody having a good time and playing with color and structure, and it’s certainly not anything that I’ve ever seen before.” And bingo, that’s kind of satisfying.
There’s another issue, which is the issue between texture and structure. The interesting thing about space-filling curves, and a lot of fractals, is that the texture and the structure have the same form, especially if they’re self-similar. There’s an interesting tension there as well. Are you celebrating texture or are you celebrating structure? That’s a big argument that happens in the mathematical art world a lot.
You also sell scarves with some of your designs on them. How did you get started making these?
Well, these designs that I am interested in, people have always been saying, “Hey, that’d be great on a fabric.” [Some] of these scarves are generalized Peano curves, and this one is based on a curve I discovered in 2004. So, I jumped in and decided to see what I could do about making some scarves. I have this dictionary of patterns with millions of patterns in [it], where I’ve enumerated them using backtracking search techniques. You can only choose a few, so I chose one that was low resolution, and then some that are a little higher resolution, and one is based on this pattern that I’ve created a piece of art out of and exhibited. This is actually a mathematical discovery as well as a great pattern. It’s a wonderful pattern because it’s a space-filling curve that’s related to another fractal called a Sierpinski Gasket. It’s as fundamental as the original Peano curve in some sense.
So, I did it all in PostScript, and I smoothed the curves out. I studied up on the fashion industry and figured out what the colors were … a couple years ago. I had a person I knew in China who knew a good silk factory to work with, so I manufactured a bunch. My daughter is a website designer, so she set up a website. I’ve sold them at various places, you know, the [National] Museum of Math in New York City, some conferences, and we sell them off the website.
One of the designs … my sister made into a quilt, so I actually sleep under a space-filling curve. And I have a space-filling curve in my shower, so I shower next to a space-filling curve. So, yeah, when all you have is a hammer, everything looks like a nail.
What do you see as some future directions for your art?
More fabric probably; I have a lot of other things that I’m working on. I like print art because you put it on the wall and everybody sees it, kind of enjoys it or is curious about it. There’s still an area of space-filling curves that I haven’t explored very well, and there may be patterns there that are really cool. Maybe there’s a discovery to be made there. And this is just in two dimensions — I’m not very good at three dimensional stuff, I just don’t visualize it as well as some people.
Space-filling curves are fundamentally related to tiling designs in two dimensions. I can create really cool tiling designs that are based on off-the-shelf square 2-inch tiles in two colors. You can lay them out in really incredible large designs, and I’d love to do that at some point. I’ve only done that in a couple bathrooms, mostly [for] my family.
I have more to publish on my discoveries, which I haven’t done yet. What I’m going to show today is sort of a monograph on trying to classify this one corner of the world of space-filling curves that are related to the Hilbert curve.
What advice would you have for younger people interested in making math art?
Don’t be afraid to make a mistake, don’t be afraid to demonstrate your ignorance. Have fun, play. You can make mathematical art with a pencil and a ruler on a white sheet of paper; I was doing that when I was a kid. You know, there are lots of little simple patterns that will teach you mathematical principles that you never really would have thought about, they’re just all what we sort of intuit.
You can take a pen and just do a loop-da-loop scribble all over a paper, and then start coloring, just color. Or put a different cross-hatch pattern in each contiguous area. And then you learn that there’s a sort of evenness to it, where each intersection has a diagonally opposite area that has got the same polarity. It’s got an inside and an outside. You’re basically teaching yourself the even-odd fill rule for PostScript, or the Jordan Curve Theorem. So, have fun that way. If you have the time, teach yourself how to computer program. Teach yourself geometry, and how to graph things in x-y coordinates, and how to draw, and go at it. Have fun.
Learn about symmetry, and enjoy it. Don’t get mixed up between it and art. Learn a lot about color; color is very important for all kinds of art. Art is ultimately about playing and exploring in a relaxed way — it doesn’t matter what medium it is.