Principles of soft computing - Sivanandam, S N (Wiley, 2011)