An Immune Optimization Algorithm for the Division-of-labor Problems using an Immune Cell-cooperation and Co-evolutionary Phenomenon