Each ant is controlled by a neural network. The neural nets are trained in an unsupervised manner with the help of a genetic algorithm.
The genetic algorithm goes through all ants at each epoch and modifies the neural network of all ants. Performance of each neural net is measured based on the amount of food particles it collects. Check out the live demo here.