There are several good review papers written on this topic [12,13,14,15,16,17,18,19,20].