When the PV array cascaded by multiple PV cells is partially covered, multiple local peak values may appear on the photovoltaic characteristics curve. In this case, the MPPT algorithm based on single peak will likely fail. In response to this situation, this paper proposes a kind of multiple-peak –value MPPT algorithm in which a gradient algorithm and perturbation observation algorithm are combined. The method begins with a search for the first power point by the gradient algorithm, and the power point as the starting point of the perturbation observation algorithm for searching local maximum power point; followed by a scanning of the curve using this local maximum power point; ends with a implementation of the global maximum power point. Compared with other multimodal MPPT algorithm, the proposed algorithm is characterized by not only easy programming and implementation, but also fast searching with tracking speed and strong anti-interference ability.