pga算法