A Finite State Dance Machine

To cover a lot of ground in dance class, focus on the number of dance moves explored rather than the distance travelled. In dance, I think of the distance between two positions in terms of the number of moves I make rather than my displacement. A complicated sequence of steps is conceptually longer than a basic promenade that travels the same physical distance. A dance can look like a single chain of moves where each chainlink is a specific action, but what you’re really witnessing is a path through a network of all possible moves for a chosen dance style. The structure of dance starts to take shape when we model dance as a finite state machine.

At first, dance looked like a continuous blur of motion, but, over time, I learned to discretize the blur into individual moves. As my vocabulary of dance moves grew, so did my ability to recognize the words of a kinaesthetic poem. The challenge of dancing is not merely knowing the moves, but understanding how to string them together elegantly. The difficultly of this task had not dawned on me until I reflected on one of the most valuable dance tutorials I’ve ever attended.

It was a quiet Friday evening at the University of Waterloo when I attended one of the UW Breaker’s style development workshops. Most students had left campus for the weekend, but the breakers had gathered for a workshop before the weekly dance session. Today’s lesson? How to keep it fresh.

In hip-hop, being fresh means having novel moves and style. Freshness is respected on the dance floor because it’s a show of skill and creativity. To keep one’s dance looking fresh, the guest teacher gave us seemingly simple advice: “always know three ways in and three ways out”. For any given position, you should know three ways to get into and out of said position. As we randomly picked positions and played with this rule, we soon realized it wasn’t easy to come up with new moves. We spent the entirety of the class inventing, drilling, and discussing ways to transition between positions. As the tiring practise session drew to a close, we sat down and reflected.

During the reflection, one of my classmates mentioned that dance looked like a jigsaw puzzle to him. Not all pieces fit together, but there were particular pieces that just clicked together. For him, there was a particular sense of accomplishment in “solving a dance”. As I grappled with this mode of thinking, the puzzle I visualized faintly resembled some planar graph diagrams I’ve seen in a graph theory course. That’s when it hit me: dancing can be thought of as a graph.

six_step_fsm

In a dance graph, nodes represent individual moves and the edges represent the transitions between them. Typical nodes are positions and named moves that can be distinctly identified. Edges are movements you make to get to another node. Edges are bidirectional only if you can transition back to the previous position using the same action, but this property is not guaranteed. Some edges are one-way because they cannot be done in reverse. For example, one cannot reverse knee drop because of the power required to overcome gravity on the way up. You must find another edge to transition back to a standing position. A dance can be thought of as a traversal of this graph where the resulting path is the performance you witness. 

There appear to be an infinite number of nodes to visit, but, in practise, dancers only work with the subset defined by their school of dance. Within the context of a dance style, there are exists a finite set of valid moves. Membership in this set is sometimes strictly defined like for specific styles in International Standard Ballroom, whereas umbrella categories like hip-hop can contain many sub-styles that are all loosely related by family resemblance. When a dance move happens out of context, like doing a Charleston during a waltz, the invalid move looks very out of place. Without exploring dance taxonomy, we will assume that boundaries exist and that they outline the finite set of moves we want to examine. By narrowing down the universe of valid states a dancer can be in, it makes it feasible to model a dance as a finite state machine.

The topology of a dance graph is shaped by physical constraints and stylistic rules. Some dance nodes form clusters because they’re physically easy to transition between. For example, toprock and floorwork are two large clusters that naturally form in breakdancing because of the energy required to transition between standing and ground positions. Certain dances styles, like ballet, have foundational positions that act as central nodes in the graph. There can also be relatively sparse graphs like in Foxtrot where the style dictates a specific sequence of moves to perform. Each dance style has a unique graph, but so does every dancer trained in the same style.

Dances are unique on a personal level. Though moves are heavily shaped by teachers and peers, dancers must ultimately adapt the dance into movements that best fit their body composition. Height, musculature, centre of gravity, and many additional factors affect how dancers go about executing moves. It is through a combination of external influences and bodily factors that a personal style is created. A personal dance graph encompasses the moves one knows and the sequences one is likely to perform.

Mapping out your dance graph is helpful for introspection into your style. The shape of the graph can tell you a lot about how one dances and areas to focus on. If you notice your dance graph has several poorly connect clusters, you can focus on learning moves to bridge these clusters together. You can also figure out how many steps it takes to reach your signature move from anywhere in the graph. For example, I can traverse the path below, catalog my moves, and then experiment with different shortcuts between these moves. This knowledge is especially useful when your school of dance prizes novelty.

In breakdancing, originality is highly valued. If you are caught copying someone else’s moves, your opponent will call you out with the biting gesture. Accusations of plagiarism are injurious to one’s standing in battle and are thus taken very seriously. Furthermore, if you repeat moves within the same battle, opponents will use the counting fingers gesture to signal how many times they’ve seen you repeat said move. Not only should you not plagiarize other people, but copying yourself makes you unoriginal. With this context in mind, the dance graph framework becomes particularly useful for generating unique paths.

To keep it fresh, mathematically speaking, dancers need to keep traversing unique paths in their dance graph. You can increase the number of unique paths by learning new moves, but a more effective approach is to learn additional transitions between moves you already know. The rationale behind the three ways in and out rule is that it makes your existing graph more connected. Nodes get more edges connecting to other nodes that also receive more edges. If you strictly obey the three ways in and out rule, Menger’s theorem states that you should be able to dance three unique paths between two arbitrary nodes in your graph. I suspect that dance graphs also have some interesting planarity and colouring properties, but I will leave that experimentation as exercise for the reader. The most important exercise for you to complete, though, is to pick positions you know and apply the three ways in and out rule.

three_ways

As you challenge yourself to find three ways in and out of positions, you will realize that it also helps with style development. When you run out of moves to satisfy the challenge, you start to invent your own moves. This is how your personal style develops. The benefits extend beyond just knowing new moves. Over time, you start to develop hunches about how to find the next puzzle piece. Your approach to making new moves is an integral part of a unique style. However, this advice has limited use for other schools of dance which may have more rigid stylistic rules.

Not all dance genres are as freeform as hip-hop. Some dances dictate specific move sequences to perform. The nature of the dance is reflected in the interesting shapes their graphs take. Through my brief exposure to other styles, I would like to speculate on what some other dance graphs might look like.

If you are a dancer, I would like to see what your dance graphs look like!

As with any abstraction, modelling dance as a finite state machine is reductive. There is much nuance that this model does not capture. For example, it makes no distinction between a move that is performed with an aggressive style and the same move performed in a tight, controlled style. Some forms might not even be describable using a graphical model. One could introduce additional properties, but I will save such complexity for another post.

Dancing is a creative endeavour whose beauty is not just visual, but structural. The structure of your dance is undoubtedly shaped by the move graph you are exploring so it’s important to curate it. As the possibility space of all viable moves collapses into a single timeline, you may notice that some paths are more worn than others. To keep things fresh, try to explore the lesser known paths or, better yet, forge new ones. There is a lot of novelty hiding between the ideas you have not yet connected.

2 thoughts on “A Finite State Dance Machine

  1. Wow… that’s truly fascinating! I had never looked at dance from such a mathematical approach before. I would love to see each traditional style applied to a graph. I bet you could derive from the graph alone, how that dance is intended to be appreciate even.

    If I had to make assumptions, I would argue that break dance and ballet would share very similar graphs, as they both have many transitional steps (6 step vs pas de bourree) which are a means to end, the end being often a very showy and impressive move, like a flip or a great leap. However, I would argue that some forms of modern dance have no rules for what even defines dance, and therefore you could argue that an infinite number of possibilities exist from each point in a graph to each other point.

    What would be truly fascinating from here, is if one could apply a machine learning algorithm to a dance competition , and not only see what moves are most commonly traversed on the graph, but also which path’s lead to the largest amount of applause. Is it just original pathways? If so, you could build an entire routine purely on the paths not taken. : )

    Very interesting read!

    Like

    1. Indeed, applying a ML algorithm would be a great way to see what kinds of paths are generated, although it would be another workout (no pun intended) normalizing applause numerically across multiple dance competitions – perhaps multiple factors involved, whether that be novelty (like you have mentioned here) or dependent on other things as well.

      Aside from obtaining new and interesting dance moves, it would just be fun to see what kinds of moves the algorithm would make for comedic purposes.

      It’d also be neat exploring the overlap between different styles in the context of these clusters of moves, or even exploring how different styles are actually quite similar in terms of how they look as graphs. I would bet a lot of styles are actually quite similar in this context (of course how they look in real life could be totally different).

      Anyways, that was a great read.

      Like

Leave a comment