## 1 Introduction
Simulators interfaced via FMI still need a so-called co-simulation master that coordinates and synchronizes the data exchange between them. Several co-simulation frameworks exist already that provide such a master algorithm, often in combination with their own interfaces and further capabilities. The standard high-level architecture (HLA) [5] provides the basis for some frameworks like the CPS wind tunnel [6]. Similarly, the multi-paradigm simulation environment Ptolemy II [7] is also sometimes employed in co-simulation (e.g., [8]). Newer frameworks involve the tool DACCOSIM [9] for distributed, FMI-based simulation, the agent-based framework MECSYCO [10], and the OpSim system [11] related to the simulation message bus (SMB) [12] concept. The focus of this paper lies on the open-source co-simulation framework mosaik ([[http://mosaik.offis.de/](http://mosaik.offis.de/)]([http://mosaik.offis.de/](http://mosaik.offis.de/))) that is used in its current form since 2014. Comparing or even ranking co-simulation frameworks against each other is a challenging task since the diversity of possible application cases in the CPES domain requires or favors different framework features in different situations. Some attempts at framework classification and comparison can be found in [13; 14]. Another, simplified approach to assess frameworks is given by the three attributes performance, flexibility and usability. All three points are important for a good framework, but practical experience suggests that no single one can be maximized without at least one of the other attributes decreasing. The authors thus suggest that the mentioned co-simulation frameworks fill different niches depending on the employed simulators, modeled systems, research goals, and target user group. The mosaik framework is focused on providing high usability and flexibility. It is thus most suitable for users that regularly need to set up different co-simulation experiments and probably work in interdisciplinary teams to conduct tests with a focus on multi-domain interactions. Furthermore, the framework has been created with users in mind that are not necessarily co-simulation experts. This is reflected by the core features of mosaik as well as additional modules and processes that help users, among other things, to plan their co-simulation experiments or assess their output accuracy. These modules tackle the challenges associated with the combination of tools and knowledge across different domains, as indicated above. One of the major purposes of the original mosaik design has been the evaluation of new forms of ICT solutions based on multi-agent systems (MAS) [15]. In general, MAS provide the possibility to model components and their interactions in different domains. Example application areas are social sciences with the evolution of societies [16] or pedestrian behaviour in transportation studies [17]. But also in the domain of energy systems, MAS have become popular [18]. They can be used as control mechanisms reaching from local to coordinated optimization and thus allow for distributed control with different objectives, e.g., scheduling for market optimization or grid stability and therefore provide more flexibility and scalability. Thus, MAS solutions are especially beneficial regarding the growing complexity in CPES. Due to the strong link between the MAS approach and mosaik, the framework is integrated with features for the development of distributed ICT solutions. This aspect of the testing environment is elucidated further below. This paper makes a case for test environments that go beyond basic co-simulation frameworks, but in fact integrate toolchains for the realization of more mature and complex validation experiments. This is done by presenting the current state of the mosaik environment, including the core framework as well as its extended functionalities and associated tools.