Working on SMPSO