Multivariable generalized predictive control using an improved particle swarm optimization algorithm