Programming strategies

Neural Network

As the author of the world first computer generated sculpture Robert Mallary said back in the 70’s:

Cyberneticians generally make a distinction between artificial intelligence, in which a computer is programmed to perform logical or perceptual operations in the manner it can best perform them using its own natural machine “language,” and simulated intelligence, in which the programmer uses the computer to imitate the ways he believes these operations take place inside The human head.

In this sense, we are also thinking in two different strategies to deal with our robots’ behavior:

a) “Artificial intelligence”: design a neural network model with inputs (sensor data) and outputs (motor signals) and use simulated data to train the network and reach the goals, with the help of the available tools (Neuroduino, ArduinoANN, FANNtool). An interesting example of this strategy is the neural network controlled RC car.


b) “Simullated intelligence”: this is the usual way – to design a set of states and transition paths between them, and program those on the specific hardware. There are also several tools that help designing state transition diagram, most time using the Unified Modelling Language (,

Flattr this!