Improved particle swarm optimization for maximum power point tracking in photovoltaic module arrays