Sitemap

Natural Computing Introduction

3 min readOct 4, 2017

--

The first lecture of this module ran as an insightful overview of the branches and possible applications of natural computing. I am particularly interested by the creative possibilities of swarm intelligence and evolutionary algorithms, which led to further research of that area after the session.

I read an interesting paper, ‘Swarm Intelligence and Weak Artificial Creativity’, by John Mark Bishop and Mohammad Majid al-Rifaie. The paper discusses creativity in its definition, freedom versus constraint, and how this can relate to exploration and exploitation in swarm intelligence algorithms. Two algorithms were used, both together and separately in the experiment, Particle Swarm Optimisation (PSO) and Stochastic Diffusion Search (SDS). PSO is based upon the behaviour of birds flocking and focuses on exploitation, whereas SDS mimics the foraging behaviour of a particular species of ant and focuses more so on exploration.

The algorithms were designed to take input as a series of points of a simple line drawing. The goal was to then output a “creative” representation of the input, similar to the way that each artist has a unique and personal style. The outputs were contrasted against a system of random agents that lacked the feature of exploitation present in PSO. The PSO and SDS combination resulted in a unique representation of said input, whereas the random agents produced a noisier rendition. When the range for randomness increased, the result was almost indistinguishable from the input. The paper was an interesting presentation as to how exploitation and exploration in swarm intelligence algorithms can mimic the ideology of creativity. The paper left myself wondering how these components in swarm intelligence have been utilised to create aesthetic and auditory artwork and how I myself could map them.

Press enter or click to view image in full size
Result of PSO and SDS swarm. Image from ‘Swarm Intelligence and Weak Artificial Creativity’ paper.

We were also asked to research the ‘No Free Lunch’ theorem. The theorem roughly corresponds to the saying “One size does not fit all” for optimisation of algorithms. It states that no one general-purpose algorithm works best for all problems in terms of speed, complexity, and accuracy.

Get Becky Johnson’s stories in your inbox

Join Medium for free to get updates from this writer.

This theorem relates to other areas of computing such as classification within machine learning. I had been introduced to this concept over the summer when watching the Kadenze course, ‘Machine Learning for Musicians and Artists’ by Rebecca Fiebrink. She discussed how the theorem relates specifically to machine learning classification and regression in supervised learning.

Classification methods such as nearest-neighbour, decision tree, polynomial curves, and so on each have their own benefits as to being picked as a classification model. However, it depends on factors such as the problem that the person wishes to solve and the training data that they are using in regards to which model to pick.

I created a simple classifier in openFrameworks after watching this section of the course to understand how such a system works using the nearest neighbour algorithm. After the lecture, I adapted it to include a simple decision stump model to illustrate the ‘No Free Lunch’ theorem.

As shown, there are two classes — red and blue. When plotting the first training points, they were aligned uniformly along the x axis. This meant that there would be no conflict when using the decision stump method as to what the threshold is for classification. However, when “overlapping” the training data, the decision stump method is not effective in determining an accurate classification as it bases this on a single threshold. The nearest neighbour method produces effective classification boundaries as it designates thresholds based on unique distances between points. The decision stump could be adapted to a decision tree to improve its accuracy by increasing the number of thresholds for this particular training dataset. In this scenario, the training data was too complex to use a simple decision stump model whereas the nearest neighbour implementation was successful.

--

--

Becky Johnson
Becky Johnson

Written by Becky Johnson

Third year Creative Computing student at Goldsmiths, University of London.