The calculation of scattering amplitudes has been playing a very important role in the physics of the LHC. In particular, more accuracy is required to compare our theoretical predictions with the experiments. In this talk, we review the features of a new approach to the integrand reduction of scattering amplitudes, adaptive integrand decomposition, and discuss the mathematica package that performs the automation of this algorithm. Similarly, we describe its interface with the various codes that generate integration-by-parts identities. In the last part of the talk, we present non-trivial examples for the reduction of one- and two-loop scattering amplitudes.