A small-population based binary PSO approach for unit commitment problem