Ten Years of Self-adaptive Systems: From Dynamic Ensembles to Collective Adaptive Systems