Breaking the traditional: a survey of algorithmic mechanism design applied to economic and complex environments