Abstract
System-of-systems (SoS) architecting is an important and difficult problem. Modeling and optimization are practically essential to develop a quality solution. However, modeling and optimization are highly specialized fields in their own rights and can easily become an obstacle to the architecting effort. SoS Explorer is a tool designed to mitigate this difficulty by providing a structured, yet flexible approach. Moreover, SoS explorer provides interactive visualization as well as a number of optimizers. Interactive visualization allows the architect to perform “what-if” analysis while the optimizers provide solutions that can act as initial architectures and demonstrate the optimal trade-space. The utility of this approach is demonstrated with a notional 22-system toy problem.
Access provided by CONRICYT-eBooks. Download conference paper PDF
Similar content being viewed by others
Keywords
1 Introduction
System of systems (SoS) are important to the functioning of modern society . They define infrastructures such as transportation, energy, and healthcare. They are used to achieve specific needs such as military missions as well as future plans for an intelligent transportation system or smart cities. As important as they are, SoS architecting remains a difficult problem due to the interplay of a large number of variables. Modeling can greatly benefit this effort; however, modeling is itself a difficult task. Deciding upon a modeling approach and implementing it along with the requisite models is not trivial and can consume significant time and resources. A tool for SoS architecting that already implements a flexible modeling approach can allow the architect to model the SoS while eliminating much of the difficulty. SoS Explorer is designed to be such a tool.
One way in which SoS Explorer provides value is by structuring the SoS architecting modeling effort. This structure helps to direct the model development and to allow the tool to run and interpret the results allowing for interactive visualization, optimization, and negotiation. Interactive visualization allows the architect to perform “what-if” analysis via a graphical representation of the SoS architecture. Optimization methods give the architect a set of optimal architectures on which to base the final solution. The negotiation models provide insights into how the SoS may be affected by management decisions regarding resource allocation.
2 SoS Explorer
The SoS Explorer tool consists of four major components : problem definition, evaluation, optimization, and solutions. The graphical user interface is shown in Fig. 14.1 to illustrate how this is laid-out in the SoS Explorer. The purpose of this layout is to guide the architect through the steps of defining an architecture using this approach.
The purpose of the problem-definition section is to define a meta-architecture. The meta-architecture describes how individual architectures (or architecture instances) are composed. The meta-architecture allows for description of the problem to be entered and for the systems available for the SoS to be defined in terms of their characteristics, capabilities, and feasible interfaces. These are described in the SoS model.
The evaluation section is where the key performance measures (KPMs) are defined. These are referred to as objectives in deference to how they are used in optimization. The objectives are calculated based on the characteristics, capabilities, and feasible interfaces of the systems and interfaces selected in a given architecture. Therefore, the objectives define the modeling required for the SoS. The SoS Explorer allows the objectives to be calculated using the following languages: Python, MATLAB, or F#. An overall objective can also be defined that takes the other objectives as arguments. Its purpose is to enable single-objective optimization. For each objective, there is a “delta” as well as a calculated value. The delta shows the difference in the values between architectures or when an architecture is modified.
The optimization section allows the architect to choose an algorithm with which to find optimal architectures (solutions) and its termination criteria. There are two multiple-objective algorithms and one single-objective algorithm from which to choose. The algorithms can be tuned by modifying their parameters from the “Parameters” menu. The termination criteria are a combination of maximum number of evaluations and the point of detection of convergence. This is selected from the drop-down box. Negotiation modeling is planned but not yet implemented.
The solution (architecture instance) section represents the architecture solutions visually. These solutions are maintained as a set and may be paged through, added to, and modified. The architect can interact with the solutions by right-clicking on systems or interfaces and by left-clicking to create new interfaces. The problem and its solutions may then be saved as an Excel-format file.
3 SoS Model
A model should be as simple as possible for the purpose at hand and, at the same time, should not artificially restrict the problem being modeled. There are two key components of every SoS: systems and interfaces [1]. Therefore, systems and interfaces will be the basis for the SoS model. Keeping it simple, systems can either participate in the SoS or not. An interface either exists between two systems or it does not. Regarding the individual systems, they are characterized by the following: characteristics, capabilities, and feasible interfaces.
For the system model , characteristics are real-valued quantities and can represent items such as the cost of the system, the cost of implementing an interface with another system, performance measures, time to complete, etc. Capabilities are Boolean and represent individual capabilities of each system. These are sometimes referred to as the “little C” capability which contributes to the desired overall or the “big C” capability required by the SoS. The feasible interfaces are also Boolean and indicate whether it is possible to implement or have an interface between two systems.
The purpose of the system models is to estimate key performance measures (KPMs) for the SoS. The KPMs are used as the objectives while using an optimization method as well as to provide feedback on changes made interactively to an architecture. The only system characteristics, capabilities, and interfaces that need to be considered are those that affect the KPMs used to measure the performance of the SoS.
4 Optimization
The solution space of possible SoS architectures cannot be assumed to have a definable gradient because there is no reason for changes in architecture to produce continuous, let alone smooth, changes in their evaluation. Therefore, a non-gradient method must be employed for optimization. Evolutionary algorithms (EAs) are popular, actively researched non-gradient methods that can be readily applied to selection problems such as the given SoS model where systems and interfaces are selected to participate in the SoS. Using EAs to optimize the SoS architecture, the architecture must be represented as a chromosome. This is straightforward as each system’s participation and each specified interface can be represented as a Boolean value. Therefore, the chromosome can be defined by (n 2 + n)/2 bits for undirected interfaces and n 2 bits for directed interfaces as shown in Fig. 14.2.
SoS Explorer supports both single- and multiple-objective optimizations. The user-defined objectives, O i , are of the form O i : M Char , M Cap , M Feas , C ↦ ℝ , 1 ≤ i ≤ N, where M Char ∈ ℝ n × a is the characteristics matrix, M Cap ∈ {T, F}n × b is the capabilities matrix, M Feas ∈ {T, F}n × n is the interface-feasibility matrix, C ∈ ℝ ℓ is the chromosome, N is the number of objectives, n is the number of systems, a is the number of characteristics, b is the number of capabilities, and ℓ is the number of bits in the chromosome. For single-objective optimization, another function, O Overall, of the form O Overall : O 1 , O 2 , ⋯ , O N ↦ ℝ needs to be defined by the user.
The multiple-objective EAs included with the SoS Explorer are NSGA-III [2] and MOEA-DM [3]. Both of these are, more specifically, many-objective optimization (MaOP ) algorithms . The typical SoS tends to have four or more objectives which creates issues for standard multi-objective approaches using Pareto dominance [4]. The many-objective approaches employ other criteria outside Pareto dominance to overcome these issues. The SoS Explorer comes with one single-objective EA—Simple SOGA that is a plain multi-modal EA using single-point crossover and bit-flip mutation [5].
5 Demonstration
To demonstrate the use of the SoS Explorer, an example problem is presented. The problem is a notional intelligence, surveillance, and reconnaissance (ISR) problem consisting of 22 systems [6]. Each selected system contributes one or more of the following capabilities : electro-optical/infra-red (EO/IR), synthetic aperture radar (SAR), exploitation, command and control (C2), and communication. The SoS must have all of these capabilities to be feasible. The individual systems are characterized by interface development cost, operational cost, performance, and development time. The KPMs (objectives) are performance, affordability, flexibility, and robustness. The objectives are modeled by Eqs. 14.1, 14.2, 14.3, and 14.4 respectively.
where S i , I ij , Perf i , Ops Cost i , I/F Cost i , Cap ij , and δ represent the ith system’s participation, the interface between the ith and jth systems, ith system’s performance, ith system’s operational cost, ith system’s interface cost, ith system’s jth capability, and the performance boost provided by each implemented interface, respectively. When using an optimization algorithm, feasibility may be encouraged using a penalty function. The penalty function used in this case is
where ρ is the penalty for each missing capability in the SoS. The penalty is added to each objective, and ρ is chosen such that the penalty for infeasible solutions outweighs the actual objective.
To solve this problem in the SoS Explorer, the following steps may be performed:
-
1.
Enter the information for the meta-architecture: systems, characteristics, capabilities, and feasible interfaces.
-
2.
Enter the names of the objectives.
-
3.
Create the code templates in the desired languages using “File → Create Python/MATLAB/F# Files.”
-
4.
Modify the resulting source files to implement the objective functions.
Step 1 is shown in Fig. 14.3 and steps 2–3 are shown in Fig. 14.4.
Now the ISR problem is modeled and architecture work can begin. A reasonable starting point would be to generate optimal solutions using one of the supplied methods. The results using Simple SOGA are shown in Fig. 14.5. To generate the set of optimal solutions, select an algorithm, termination criteria, and click on the “Optimize” button. The progress bar shows how much longer the calculation has to finish.
The individual solutions returned by the optimization algorithm can be accessed by paging through using the left and right arrows in the lower right-hand corner. The values in the objectives show the architecture’s assessment while the deltas show how the current architecture’s assessment changed from the previous architecture’s. Furthermore, any architecture may by modified by hand through the visual representation. By changing the systems’ participation and their interfaces, the architect can perform “what-if” analysis and design a custom solution using the feedback provided in the evaluation section.
6 Conclusion
The SoS Explorer allows an architect to model, optimize, and visualize SoS architectures. The architect is provided a framework in which simple models allow architectures to be manipulated and evaluated. Optimization algorithms are provided that find candidate solutions for the architect. The architect can then compare and interact with these solutions to gain an understanding of the solution trade space. With this information, the architect can create a final solution while the feedback provided by the real-time architecture evaluation helps in guiding the design.
7 Future Work
A negotiation model is planned for the SoS Explorer but has not yet been implemented. The negotiation model could allow for competitive, semi-cooperative, and cooperative negotiation between the systems and a managing authority. A method such as chromosome fixing could be employed to enforce feasibility and provide constraints. Significant performance gains could be obtained by removing infeasible interfaces from the search space defined by the chromosome. If certain systems are required by the SoS, there should be a column where those systems could be so marked, and these systems should also be removed from the search space.
References
Pape L, Giammarco K, Colombi J, Dagli C, Kilicay-Ergin N, Rebovich G (2013) A fuzzy evaluation method for system of systems meta-architectures. Procedia Comput Sci 16:245–254
Deb K, Jain H (2014) An Evolutionary many-objective optimization algorithm using reference-point-based Nondominated sorting approach, part I: solving problems with box constraints. IEEE Trans Evol Comput 18(4):577–601
Curry D, Tauritz D, Dagli C Many-objective evolutionary algorithm for decision makers. In preparation
Farina M, Amato P (2002) On the optimal solution definition for many-criteria optimization problems. In Fuzzy Information Processing Society, Proceedings NAFIPS 2002 Annual Meeting of the North American, pp 233–238
Eiben AE, Smith JE (2003) Introduction to Evolutionary Computing, ser. Natural computing. Springer, Berlin/Heidelberg
Dagli C et al (2015) Flexible and intelligent learning architectures for SoS (FILA-SoS), Volume 1 – Integrated Model Structure. Technical Report SERC-2015-TR-021-4, February
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Appendix A. Python Source Code
Appendix A. Python Source Code
The full Python code used in the ISR example for the “Performance” objective is listed below. Due to space constraints, the other objectives are not listed but follow similarly from their definitions. The code in lines 1–85 was automatically generated by SoS Explorer requiring only lines 86–103 (implementing Eq. 14.1) to be written by the user.
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG
About this paper
Cite this paper
Curry, D.M., Dagli, C.H. (2018). SoS Explorer: A Tool for System-of-Systems Architecting. In: Madni, A., Boehm, B., Ghanem, R., Erwin, D., Wheaton, M. (eds) Disciplinary Convergence in Systems Engineering Research. Springer, Cham. https://doi.org/10.1007/978-3-319-62217-0_14
Download citation
DOI: https://doi.org/10.1007/978-3-319-62217-0_14
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-62216-3
Online ISBN: 978-3-319-62217-0
eBook Packages: EngineeringEngineering (R0)