
Abstract:
Perpetua is a generative art project, a computer program which designs and renders weavings using a simulated floor loom. When seeded with a random number, the program generates instructions to dress the loom, invents a treadling pattern, and produces a carefully textured image. Perpetua weavings are inspired by ancient feminist archetypes, contemporary painters, and possible future alien patterns.
Weaving is an ancient generative art, and therefore an important precursor to today’s generative digital art. Moreover, weaving is mathy—weaving can be understood as an elaborate matrix multiplication calculated one thread at a time. Finally, weavers’ invention of the punch card-programmed Jacquard loom inspired the design of early proto-computers.
These three declarations broaden our cultural assumptions about who weaves, who makes generative art, and what kinds of skills and interests are essential to these artists. The gender-coding blurs.
0/ Scope
Weaving is a relevant subject for long-form generative art for several reasons. Most importantly, weaving itself is an ancient generative art form. Moreover, weavers invented proto-computational weaving machines which then inspired modern computers. Weavers are the mothers of computers, and computers were born to weave. We will describe the way a multi-shaft loom works in order to show that weaving is a math problem: matrix multiplication laboriously calculated in threads.
Our own digital weaving project, called Perpetua, is a programmed simulation of a loom that can produce innumerable weaving designs. Perpetua has four ‘archetypes,’ which are four different tunings of our algorithm to produce distinct kinds of images.
Finally we will explore how Perpetua blurs gendered assumptions our society holds about who weaves, who programs computers, and what kinds of skills and interests draw people to these two pursuits.
1/ Weaving is a Generative Art
Philip Galanter, professor of generative art at Texas A&M University, describes his field as follows:
Generative art refers to any art practice where the artist uses a system, such as a set of natural language rules, a computer program, a machine, or other procedural invention, which is set into motion with some degree of autonomy contributing to or resulting in a completed work of art.[1]
To connect weaving to this definition, consider the multi-shaft floor loom, a machine which allows weavers to interlace threads to produce an almost limitless variety of fabrics. A weaver’s choices are interconnected and systematic. Once the weaver designs her pattern, weaving fabric is the procedural execution of a carefully planned algorithm.
As long as humans have been around, and across geographies, we invent weaving and looms. In part, this is because weaving is an efficient and durable way to make cloth. But weaving also provides very satisfying constraints within which human creativity can flourish.
2/ Weaving As Proto-Computing
To weave is to make a series of choices about whether a horizontal weft thread goes over or under a vertical warp thread. This simple over/under question is a binary decision, which iterates into a cohesive visual pattern through an algorithmic processes in the mind of a weaver. Weavers, like coders, can arrive at nearly infinite combinations of up/down, on/off, 0/1—but constrain their work to stay on the manifold of desired outputs. Weavers have yet to exhaust the complex possibilities of the over/under question, insisting upon patterns so dense and intricate that new machines were needed to weave them.
In the early nineteenth century, weavers invented an ‘add on’ device for looms that could be programmed using punch cards. With a Jacquard loom, the color and path of every thread is individually controlled, and therefore any image can be woven. These looms mechanize a weaving process that would otherwise be prohibitively laborious, facilitating mass-produced textiles with complex patterns and images.
Charles Babbage, the designer of a programmable proto-computer, was not just inspired by weaving, he was obsessed with it. (One of Babbage’s most prized possessions was a woven portrait of Joseph Marie Jacquard himself.)[2] Babbage copied Jacquard’s use of punch cards to store information in his Analytical Engine. Computers and looms continued to share this programming mechanism for over a century.
3/ Computers Design Weavings
Equipped with the aforementioned mechanized looms, weavers focused their effort on design, and computerized looms became their laborers. It is therefore elegant to return our computational powers to the very ancient problem of weaving, and give computers the means to design tapestries. In our project, Perpetua, the computer generates a weaving design and selects the colors, threading, treadling, and tie up for a multi-shaft loom.
4/ A Digital Loom
The Jacquard technique feels truly limitless, but once one can weave any possible image, the essence of what makes a good weaving—as opposed to just a good image that happens to be woven—gets muddied. When translated back into the digital sphere, the Jacquard loom’s overwhelming abundance of choices remains.
Unlike a Jacquard loom, a multi-shaft floor loom introduces useful constraints. Floor looms can also be operated by a human, without the assistance of a computer. We enjoy the elegance of weavings designed by computers and potentially fabricated by humans. The evolution of weaving comes full circle; computers and humans swap roles.
5/ Weaving As Matrix Multiplication
A multi-shaft loom holds vertical warp threads in tension so that a weaver can lift and lower them in different combinations. The temporary space created between raised and lowered warp threads is called a shed. The horizontal weft thread passes through that shed for each horizontal line of the textile.
Most floor looms have four, eight or sixteen shafts (also called harnesses) that can lift and lower groups of warp threads. As we add more shafts, the possible shed combinations we have to choose from expands very quickly.
Instructions for weaving a fabric can be communicated as a ‘weaving draft.’ This notation describes precisely how a loom is configured along with the series of steps that must be followed to produce a weaving.
Figure 1. Example of a weaving draft, courtesy of the authors.
A weaving draft looks like this. The three instructional sections are called the threading (top bar), the tie-up (upper right corner), and the treadling (right side column). The bottom left part of the image is called the drawdown, and that’s an approximate preview of what your weaving will look like.
Each section of the tie-up can be described as a binary matrix—a matrix made up of just zeros and ones.
- Threading: The threading matrix describes which warp threads should be threaded through each harness. Dressing a loom is very time-consuming because so many individual threads need to be directed through the correct heddles. Each thread must pass through just one heddle on one harness, so each column of the threading matrix needs to have a 1 in exactly one row, and all the other rows of that column are zeroes.
- Treadling: Floor looms have pedals that allow the weaver to lift and lower various combinations of harnesses (groups of warp threads.) The treadling matrix is instructions about the order in which a weaver should press floor pedals to raise different harnesses. Put differently, the treadling matrix describes the route each weft thread will take as it passes over and under warp threads.
- Tie-up: The tie-up matrix describes which harnesses should be lifted by each pedal. It has a row for every harness and a column for every pedal. Each pedal is tied to multiple harnesses, and multiple pedals can lift the same harness.
So by following the instructions in a weaving draft, a weaver is carrying out a laborious physical matrix multiplication, one thread at a time. Computers can multiply matrices much more quickly.
A mathematical description of the matrix multiplication fabric formula looks like:
F = R · UT · H
where R is the treadling, U is the tie-up and UT indicates the transpose of the tie-up matrix, H is the threading, and F is the fabric drawdown.[3] The mathematical structures of these matrices can be studied deeply. For example, deciding which ones can even be physically woven leads to many mathematical treasure hunts.[4] [5] [6] [7] The patterns that emerge from these matrices also have surprising harmonics and lovely formal structure.[8]
6/ Perpetua, An Imaginary Loom
Our computer program, Perpetua, takes just one input (a random seed number) and proceeds through a series of instructions, supplying randomly generated values at various moments, to create an artwork. In 2022, we released Perpetua as an edition of 796 NFT outputs on the ArtBlocks platform. It can be described as a long-form generative artwork. That term was coined in 2021 by generative artist Tyler Hobbs in his essay ‘The Rise of Long Form Generative Art.’ He states:
The artist creates a generative script that is written to the Ethereum blockchain, making it permanent, immutable, and verifiable. Next, the artist specifies how many iterations will be available to be minted by the script… When a collector mints an iteration (i.e. they make a purchase), the script is run to generate a new output, and that output is wrapped in an NFT and transferred directly to the collector. Nobody, including the collector, the platform, or the artist, knows precisely what will be generated when the script is run, so the full range of outputs is a surprise to everyone.[9]
Each Perpetua image is the product of the three binary matrices from a weaving draft (the treadling, tie-up, and threading). This kind of design schematic anchors our work in traditional weaving patterns and symbols. However, we can simulate a loom with over a hundred shafts. Such a loom would be impossible for a human to operate because our legs just aren’t strong enough to lift so many shafts simultaneously, but the GPU renders the 128 shaft weaving in milliseconds. A computer allows Perpetua to not just connect to ancient technology, but to simultaneously project into futuristic and alien iterations of weaving.
Many variables can be adjusted to build a weaving composition. The weaving draft matrices can be offset, repeated, flipped, rotated, nested. We can vary the color and number of the threads. We can choose the texture of the thread. Optimizing the possible range of each of these variables creates a series of compositions that are individually compelling but obviously belong together in a series. We tried to define a set of weaving rules that balances willful artistic choices with random computer choices—we want to exert just enough control to generate a cohesive set of compelling images while allowing for widely varied output.
Our project follows one set of rules to define and generate threading and treadling matrices, and another set of rules to generate tie-up matrices. To design threading and treadling, we add some random variables to functions that graph diagonal lines, ascending and descending zig-zags, exponential curves, Gauss and Laplace bumps, B-splines, “jittered” curves, and random walks.
7/ Illustrated Tie-ups
Weaving is a very human endeavor, something reinvented across time and place. It has the obvious functional purposes of providing shelter, nets, filters, sails, clothes, and vessels, but it also quickly emerges as an art form in its own right. It is a way of preserving stories and beliefs, of signaling wealth, cultural affiliation or political status.
To give Perpetua some capacity for cultural encoding, we embedded illustrations in four of our tie-up matrices. These look like ascii art in the code block. They interact with threading and treadling matrices to fuel a huge range of outputs, many of which are unrecognizable mutations of their source. Here is an example of how our drawing of a spider is encoded into a binary tie-up matrix and then incorporated into a weaving:
Figure 2. Drawing of a spider (after Lousie Bourgeois) and corresponding binary tie-up matrix, courtesy of the authors.
Figure 3. Generative weaving created from an illustrated tie-up (spider), courtesy of the authors.
Figure 4. Generative weaving created from an algorithmic tie-up (Rule 54), courtesy of the authors.
Figure 5. Generative weaving created from an algorithmic tie-up (Twill), courtesy of the authors.
We chose four different images for our illustrated tie-ups: a spider, a geometric wave, a snake, and a crescent moon. Each of these images carries many associations and interpretations over the time and space of human history.
Spiders are the original weavers. Many cultures have spider-weaver myths. In Greek mythology, for example, Arachne is transformed into a spider after defeating Athena in a weaving competition. Arachne’s tapestry reproaches the gods for their misuse of humans, making her a great role model for subversive weaving. The form of the spider in our tie-up is inspired by artist Louise Bourgeois’ sculpture entitled ‘Maman’ or ‘mother’. To Bourgeois, the spider is protective and clever, traits she associates with her mother. The spider in Perpetua can appear as a marching army or matriarch, as a sharp and toothy abstraction or a delicate spindly architecture. It can menace, or dance, or appear as a webby asemic scrawling.
The wave was modeled after the Greek meander, which is formed from one continuous line folding back on itself. It is a familiar motif in ancient fabrics from many places, and looks uncanny reproduced through a generated lens. Sometimes it looks like a rippling surface, and others like a geometric blueprint.
The snake is a line like a thread. A snake’s path follows a weaver’s shuttle: undulating under and over warp threads. Snakes weave their way into human mythologies (Nuwa of Chinese mythology, Meretseger of ancient Egypt, Medusa of ancient Greece, and infinitely more). They have appeared in creation myths. Symbolically they are associated with healing, transformation, protection, wisdom, treachery, and fertility. In Greek mythology, having your ears or eyes licked by a snake was thought to bestow the gift of “second sight” or “second hearing” associated with prophecy. In Perpetua, they loop and stretch across the weaving, like long brush marks with an eye, sometimes even two-headed. Or else they appear in their full circle ouroboros form.
Finally, we included the crescent moon. The moon is often a symbol for transformation, femininity, cycles and tides. It is a force that acts on our world even when it can’t be seen. Like the moon, weaving achieves aesthetics and strength from repeated motions and patterns. Woven into Perpetua, it often appears kaleidoscopic as if seen through a fractured telescope.
8/ Algorithmic Tie-ups
Each of the four algorithmically generated tie-ups is a mini-program within the program. (A play within a play.) Instead of defining a small, static illustration as the seed of a larger pattern, the algorithmic tie-ups create a new randomly generated nucleus from which greater complexity can arise.
- ‘Twill’ creates repeating patterns that are offset by a consistent number of threads in every row. A sturdy weave with familiar diagonal patterns often emerges.
- ‘Random Bits’ instructs every loom pedal to lift a different combination of roughly half the harnesses. A chaotic cousin of twill, instructs every loom pedal to lift a different combination of roughly half the harnesses.
- ‘Rule 54’ is a cellular automaton. It starts with a sprinkling of ‘seed’ cells that affect neighboring grid cells according to a set of simple iterative rules. The resulting weaves can be blocky or elaborate, blooming into circuit designs or the blocky fractals of a non-human sentience.
- ‘Maze’ is a little program that generates little mazes. These maze tie-ups are then stretched and copied throughout the drawdown, which acts like a tiled magnification of the generated kernel.
9/ Conclusion
In her book On Weaving, Anni Albers describes the way an artist or designer might seek to escape her own particular aesthetic sensibility in order to arrive at a more powerful artwork:
He feels himself to be only an intermediary who is trying to help the not-yet-existent turn into reality. Standing between the actual and that which may be, the conscientious designer, as I see it, seeks to forego his own identity in order to be able more impartially to interpret the potential.[10]
We like to believe that Albers would approve of the Perpetua weaving generator. Would she be fascinated by its ability to explore thousands or hundreds of thousands of designs so impartially, and so quickly?
A ‘good’ generative artwork should be both tightly interwoven with art history and also conceptually coherent. Now that we have completed this artwork, we strongly appreciate the technical skill involved in programming long form generative artworks with consistently strong outputs. We feel hopeful that this medium won’t always be so siloed and separate from the rest of contemporary art and art criticism.
One goal of our artwork is to blur our society’s gendered assumptions about weaving and programming. If weavers have been multiplying matrices and inventing computers all along, their work doesn’t fit as neatly into the ‘feminine’ realm. If programmers, inventors, and mathematicians facilitate the production of weaving designs, their work also becomes less traditionally ‘masculine.’ Perhaps future artists can more easily imagine themselves in roles that contradict gendered social assumptions about their skills and preferences.
Perpetua is documented on the website http://perpetua.punchcardcollective.com/
[1] Galanter, Philip. What is Generative Art? Complexity Theory as a Context for Art Theory. Paper originally presented at GA2003 – 6th Generative Art Conference, Milan Polytechnic, Italy (2003). https://www.philipgalanter.com/downloads/ga2003_paper.pdf.
[2] Babbage, Charles. 1968. Passages from the Life of a Philosopher. N.p.: Dawsons.
[3] Wells, Anne. “A Mathematical Weaver’s Notes and Guide to: Shaft Weaving and Graph Design By Olivier Masson and Francois Roussel.” The University of Arizona’s On-Line Digital Archive of Documents on Weaving and Related Topics (2000). https://www2.cs.arizona.edu/patterns/weaving/webdocs.html.
[4] Grünbaum, Branko, and G. C. Shephard. “Isonemal Fabrics.” The American Mathematical Monthly: The Official Journal of the Mathematical Association of America 95 (1988): 5–30.
[5] See also: Hoskins, Janet Anne. Isonemal Arrays and Textile Computer Graphics [microform]. Thesis (Ph.D.)–University of Manitoba (1985).
[6] See also: Hoskins, W. D., and R. S. D. Thomas. “Conditions for Isonemal Arrays on a Cartesian Grid.” Linear Algebra and Its Applications 57 (February 1984): 87–103.
[7] See also: Pedersen, Jean J. “Some Isonemal Fabrics on Polyhedral Surfaces.” In The Geometric Vein (1981): 99–122.
[8] Wells, Anne. “A Mathematical Weaver’s Notes…”
[9] Hobbs, Tyler. “The Rise of Long-Form Generative Art.” TylerHobbs (Artist’s Website). August 6, 2021. https://tylerxhobbs.com/essays/2021/the-rise-of-long-form-generative-art.
[10] Cirauqui, Manuel, T`ai Smith, Anni Albers, and Nicholas F. Weber. On Weaving: New Expanded Edition. Edited by Manuel Cirauqui and T`ai Smith. (Princeton University Press: 2017).
Cite this article
Blazejack, Annie, Peter Boyer, Geddes Levenson, and Alex Rubinsteyn. “Perpetua: A Generative Digital Weaving Project with a Loom Simulator.” Journal of Black Mountain College Studies 15 (2024). https://www.blackmountaincollege.org/journal/volume-15/blazejack.