Abstractions within Abstractions

Computational Thinking, Creativity, Education, MSU MAET

Just as with patterning, algorithms are closely tied to the idea of abstraction, since they are themselves abstractions for problem solving. It is in fact the discovery of patterns in information that allows for the creation of algorithms that can tackle a variety of similar problems. Wing (2010) succinctly states that “an algorithm is an abstraction of a process that takes inputs, executes a sequence of steps, and produces outputs to satisfy a desired goal”.

For instance, a union-find algorithm can be used to find if two points are connected, such as in this image:


This method of finding a solution can be used in situations as diverse as computer network connectivity, examining social networks, dealing with electrical conductivity , or in games like Go (“Union-Find Algorithms”). Although these can look different on the surface, abstracting allows us to view them in a way where a common thread can be found and the union-find algorithm can then be used.

Data used in algorithms can also be abstract. One example can be found in facial recognition software, found in applications as diverse as airport security and unlocking smartphones. Just like the maze like structures used in union-find algorithms, facial recognition algorithms like Eigenface or Fisherface use an abstract representation of individual’s faces to compare to a given image to see if a match can be found. This is often an average of 10+ pictures taken of a person under different lighting situations or with different expressions.


The result of creating average faces can be quite fascinating. Collin Spears explored the average face from around the world by superimposing many images of people from the same country and found that to look average is to be quite beautiful. Activities related to facial averages can be found at the University of Glasgow’s FaceResearch site.

My task is rather challenging, as I will need to find a way to abstract an abstraction using two different media. I also want to continue to find new ways to perceive algorithms, so will explore media I have not used before.


Union-Find Algorithms. [PDF document] . Retrieved from Princeton Computer Science Department website: https://www.cs.princeton.edu/~rs/AlgsDS07/01UnionFind.pdf

Wing, J. M. (2010). Computational Thinking: What and why? Link Magazine.


Leave a Reply

Your email address will not be published. Required fields are marked *