An Adaptive Bacterial Foraging Optimization Algorithm with Lifecycle and Social Learning. (14th November 2012)