2. Neural Network
• The artificial neural network (ANN), often simply called neural
network (NN), is a processing model loosely derived from biological
neurons.
• Neural networks are often used for classification problems or decision
making problems that do not have a simple or straightforward
algorithmic solution.
• The beauty of a neural network is its ability to learn an input to
output mapping from a set of training cases without explicit
programming, and then being able to generalize this mapping to
cases not seen previously.
• We concentrate on the topics relevant to mobile robots.
5. Three-layer NN
• For most practical applications, a single hidden layer is sufficient.
• Input layer (for example input from robot sensors)
• Hidden layer (connected to input and output layer)
• Output layer (for example output to robot actuators)
• In the standard three-layer network, the input layer is usually
simplified in the way that the input values are directly taken as
neuron activation. No activation function is called for input neurons.
6. Three-layer NN
The remaining questions for our standard three-layer NN type are:
1. How many neurons to use in each layer?
The number of neurons in the input and output layer are determined by the
application. (three PSD sensors as input, two motors as output
the network should have three input neurons and two output neurons ).
2. Which connections should be made between layer i and layer i + 1?
We simply connect every output from layer i to every input at layer i + 1. This
is called a “fully connected” neural network.
3. How are the weights determined?
The standard method is supervised learning, for example through error
backpropagation. The same task is repeatedly run by the NN and the
outcome judged by a supervisor.
8. Three-layer NN
• Errors made by the network are backpropagated from the output
layer via the hidden layer to the input layer, amending the weights of
each connection.
• Evolutionary algorithms provide another method for determining the
weights of a neural network. A genetic algorithm can be used to
evolve an optimal set of neuron weights.
9. Example
• The experimental setup for an NN that should drive a mobile robot collision-free
through a maze (for example left-wall following) with constant speed.
• Three sensor inputs + two motor outputs + chose six hidden neurons (3+6+2)
10. Example
• Let us calculate the output of an NN for a simpler case with 2 + 4 + 1
neurons.
13. Backpropagation
• A large number of different techniques exist for learning in neural
networks.
• These include supervised and unsupervised techniques.
• Classification networks a supervised off-line technique, can be
used to identify a certain situation from the network input and
produce a corresponding output signal.