This paper aims to present an improved version of a typical particle swarm optimization (PSO) algorithm, such that the global maximum power point (MPP) on a P-V characteristic curve with multiple peaks can be located in an efficient and precise manner for a photovoltaic module array. A series of instrumental measurements are conducted on variously configured arrays built with SANYO HIP2717 PV modules, either unshaded, partially shaded, or malfunctioning, as the building blocks. There appear two, triple and quadruple peaks on the corresponding P-V characteristic curves. Subsequently, the tracking performance comparisons, made by some practical experiments, indicate the superiority of this improved MPP tracking algorithm over the typical one.