Engineering Cyber-Physical Systems (CPS) is challenging, as these systems have to handle uncertainty and change during operation. A typical approach to deal with uncertainty is enhancing the system with self-adaptation capabilities. However, realizing self-adaptation in CPS, and consequently also in Cyber-Physical Production Systems (CPPS) as a member of the CPS family, is particularly challenging due to the specific characteristics of these systems, including the seamless integration of computational and physical components, the inherent heterogeneity and large-scale of such systems, and their open-endedness. In this chapter we survey CPS studies that apply the promising design strategy of combining different self-adaptation mechanisms across the technology stack of the system. Based on the survey results, we derive recurring adaptation patterns that structure and consolidate design knowledge. The patterns offer problem-solution pairs to engineers for the design of future CPS and CPPS with self-adaptation capabilities. Finally, the chapter outlines the potential of Collective Intelligence Systems for CPPS and their engineering based on the survey results.