Supervised learning : Hebb learning rule doubts

(A) In this book "Introduction to Neural Network using Matlab 6.0 - S. N. Sivanandam, S. N Deepa" http://books.google.ca/books?id=jJTN8RPgyXgC&printsec=frontcover#v=onepage&q=genetic&f=false, it is mentioned that Hebb is a supervised learning algorithm in Page21. Later, under Learning Techniques, Chapter 3, Section 3.3 Hebbian is categorized under Unsupervised learning. This is confusing !!

(B) Again in this impelementation NN Hebb Learning, there is a target vector and the weight is updated by cross-multiplying the transpose of the input with the target (Did not quite understand).

(C) In matlab

learnh calculates the weight change dW for a given neuron from the neuron's input P, output A, and learning rate LR according to the Hebb learning rule:

dw = lr*a*p'


This equation shows that Hebb is an unsupervised algorithm So, my questions are

(Q1) Is Hebb supervised or unsupervised learning algorithm?

(Q2) What is the correct equation?

(Q3) Can somebody provide a simple code for Hebb learning?

(Q4) What are the other supervised learning algorithm?

(Q5) Does evolutionary algorithm for learning like Genetic algorithm, particle swarm fall under supervised? Thank you