A hybrid self-optimizing simulated annealing and particle swarm optimization approach for PMSM parameter optimization