A Survey of Laveling Algorithms