Choreographing An Algorithm — Part 2

Baby Steps

Morgan Fogarty
Jul 5, 2018 · 2 min read

In a previous blog post, I outlined my project of attaching movements to algorithm solutions, with the intention of ultimately being able to solve an algorithm using movements alone.

Time to choose an algorithm!

I’d like a dynamic algorithm that has a lot of substance to which I can attach movements.

After scouring through my algorithm books and thinking about past algorithms I’ve solved, I have turned to Google. Google has introduced me to Dynamic Programming!

Dynamic Programming is a method of simplifying a complicated problem by breaking it down into simpler sub-problems, then solving the sub-problems recursively. (That’s also part of my endeavor with this choreography project, so let’s lean into that meta space).

The algorithm I’ll be tackling is the Longest Common Subsequence.

So, what’s a subsequence?

Given two sequences, a subsequence is a sequence that appears in the same relative order as another, but not necessarily contiguously.

Input and Output of a common subsequence.

Finding a subsequence is one thing. Finding the longest subsequence is another. I’m going to pause here and think of how my body movements can map to the general idea of finding a subsequence within two larger sequences.

Here are my initial thoughts:

  • Play with body halving. Two sides of the body moving separately but with a few similar motifs. Each movement represents a character in the sequences. For example, the letter “A” in one of the sequences could be represented in movement as a quick elbow jab away from the body.
  • Continue phrase until the subsequence movements are larger and more dramatic and the other characters in the sequence become smaller and fade away.
  • We’re left with only the subsequence(the output).

This will not solve the algorithm. This will establish what exactly is happening in a Longest Common Subsequence algorithm. This is the pseudo code/talking out part of the coding session.

I’ll go work on some movement patterns based on my initial thoughts and based on the input listed above.

Stay tuned for the next post which will include video of my work thus far!

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store