Advertisement

Applying supervisory control synthesis to priced featured automata and energy problems

  • Davide BasileEmail author
Foundations for Mastering Change Quantitative Variability Modelling and Analysis

Abstract

Software Product Line Engineering (SPLE) promotes extensive reuse of common aspects in developing new software components. Supervisory Control Theory (SCT) is a methodology to automatically synthesise a controller enforcing given safety requirements. The interplay between SPLE and SCT has recently received attention in the research community. This paper formally tackles the problem of synthesising a most permissive controller (mpc) enforcing a given requirement for a software product line (SPL). Generally, the number of products of an SPL can be exponential in the number of features, and an mpc should be synthesised for every product. To overcome this problem, the product line structure is exploited to synthesise, in the best case, a number of controllers that are linear in the number of features of the SPL. The SPL is formalised as a (Priced) Featured Automaton ((P)FA), whilst the mpc synthesis is formalised by modelling both the plant and the requirement as Extended Finite-state Automata (EFA), where quantitative aspects can be seamlessly integrated. The contributions are: (i) a formal mapping from FA to EFA; (ii) a mapping of energy problems onto synthesis of EFA; (iii) three-valued logic and partial-order reduction are used to greatly reduce the number of mpcs required. Contribution (iii) holds for a wide range of other objectives, not only energy problems. Both EFA and PFA are endowed with tools implementing algorithms that have been studied for more than a decade and both are adopted in industry. These results pave the way to reuse algorithms and tools that have been separately developed in SPLE and SCT research areas.

Keywords

Extended finite automata Featured automata Featured transition systems Priced featured automata Energy problems Controller Synthesis 

Notes

Acknowledgements

The author would like to thank Maurice ter Beek for many useful discussions and the unknown reviewers for the useful comments.

References

  1. 1.
    Asarin, E., Maler, O., Pnueli, A., Sifakis, J.: Controller synthesis for timed automata. IFAC Proc. Vols. 31(18), 447–452 (1998).  https://doi.org/10.1016/S1474-6670(17)42032-5 CrossRefGoogle Scholar
  2. 2.
    Basile, D., ter Beek, M., Di Giandomenico, F., Gnesi, S.: Orchestration of dynamic service product lines with featured modal contract automata. In: SPLC, pp. 117–122. ACM (2017).  https://doi.org/10.1145/3109729.3109741
  3. 3.
    Basile, D., ter Beek, M.H., Legay, A., Traonouez, L.: Orchestration synthesis for real-time service contracts. In: Verification and Evaluation of Computer and Communication Systems—12th International Conference, VECoS 2018, Grenoble, France, September 26–28, 2018, Proceedings, pp. 31–47 (2018)Google Scholar
  4. 4.
    Basile, D., Beek, M.H.T., Gnesi, S.: Modelling and analysis with featured modal contract automata. In: Proceedings of the 22nd International Systems and Software Product Line Conference—Volume 2, SPLC’18, pp. 11–16. ACM, New York (2018)Google Scholar
  5. 5.
    Basile, D., Degano, P., Ferrari, G.: Automata for specifying and orchestrating service contracts. Log. Methods Comput. Sci. 12(4:6), 1–51 (2016).  https://doi.org/10.2168/LMCS-12(4:6)2016 MathSciNetCrossRefzbMATHGoogle Scholar
  6. 6.
    Basile, D., Di Giandomenico, F., Gnesi, S.: FMCAT: supporting dynamic service-based product lines. In: SPLC, pp. 3–8. ACM (2017).  https://doi.org/10.1145/3109729.3109760
  7. 7.
    Batory, D.: Feature models, grammars, and propositional formulas. In: Obbink, J., Pohl, K. (eds.) Proceedings 9th International Software Product Lines Conference (SPLC’05), LNCS, vol. 3714, pp. 7–20. Springer (2005).  https://doi.org/10.1007/11554844_3 CrossRefGoogle Scholar
  8. 8.
    Benavides, D., Segura, S., Ruiz-Cortes, A.: Automated analysis of feature models 20 years later: a literature review. Inf. Syst. 35(6), 615–636 (2010).  https://doi.org/10.1016/j.is.2010.01.001. http://www.sciencedirect.com/science/article/pii/S0306437910000025 CrossRefGoogle Scholar
  9. 9.
    Bouyer, P., Fahrenberg, U., Larsen, K.G., Markey, N., Srba, J.: Infinite runs in weighted timed automata with energy constraints. In: Cassez, F., Jard, C. (eds.) Formal Modeling and Analysis of Timed Systems, pp. 33–47. Springer, Berlin (2008)CrossRefGoogle Scholar
  10. 10.
    Cassandras, C., Lafortune, S.: Introduction to Discrete Event Systems. Springer, New York (2006).  https://doi.org/10.1007/978-0-387-68612-7 CrossRefzbMATHGoogle Scholar
  11. 11.
    Chatterjee, K., Doyen, L.: Energy parity games. In: Abramsky, S., Gavoille, C., Kirchner, C., Meyer auf der Heide, F., Spirakis, P.G. (eds.) Automata, Languages and Programming, pp. 599–610. Springer, Berlin (2010)CrossRefGoogle Scholar
  12. 12.
    Chen, Y., Lin, F.: Modeling of discrete event systems using finite state machines with parameters. In: Proceedings of the 2000 IEEE International Conference on Control Applications, pp. 941–946. IEEE (2000)Google Scholar
  13. 13.
    Classen, A., Cordy, M., Schobbens, P.Y., Heymans, P., Legay, A., Raskin, J.F.: Featured transition systems: foundations for verifying variability-intensive systems and their application to LTL model checking. IEEE Trans. Softw. Eng. 39(8), 1069–1089 (2013).  https://doi.org/10.1109/TSE.2012.86 CrossRefGoogle Scholar
  14. 14.
    Classen, A., Heymans, P., Schobbens, P., Legay, A.: Symbolic model checking of software product lines. In: Proceedings of the 33rd International Conference on Software Engineering, ICSE’11, pp. 321–330. ACM, New York (2011).  https://doi.org/10.1145/1985793.1985838
  15. 15.
    Classen, A., Heymans, P., Schobbens, P., Legay, A., Raskin, J.: Model checking lots of systems: efficient verification of temporal properties in software product lines. In: Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering—Volume 1, ICSE’10, pp. 335–344. ACM, New York (2010).  https://doi.org/10.1145/1806799.1806850
  16. 16.
    Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns. Addison-Wesley, Boston (2001)Google Scholar
  17. 17.
    Cordy, M., Classen, A., Heymans, P., Schobbens, P., Legay, A.: Provelines: A product line of verifiers for software product lines. In: Proceedings of the 17th International Software Product Line Conference Co-located Workshops, pp. 141–146. ACM (2013)Google Scholar
  18. 18.
    Cordy, M., Davril, J., Greenyer, J., Gressi, E., Heymans, P.: All-at-once-synthesis of controllers from scenario-based product line specifications. In: Proceedings of the 19th International Conference on Software Product Line, pp. 26–35. ACM (2015)Google Scholar
  19. 19.
    Fahrenberg, U., Legay, A.: Featured weighted automata. In: 5th IEEE/ACM International FME Workshop on Formal Methods in Software Engineering, FormaliSE@ICSE 2017, Buenos Aires, Argentina, May 27, 2017, pp. 51–57 (2017).  https://doi.org/10.1109/FormaliSE.2017.2
  20. 20.
    Mannion, M.: Using first-order logic for product line model validation. In: G. Chastek (ed.) Proceedings 2nd International Software Product Lines Conference (SPLC’02), LNCS, vol. 2379, pp. 176–187. Springer (2002).  https://doi.org/10.1007/3-540-45652-X_11 CrossRefGoogle Scholar
  21. 21.
    Meinicke, J., Thüm, T., Schröter, R., Benduhn, F., Leich, T., Saake, G.: Mastering Software Variability with FeatureIDE. Springer, Cham (2017).  https://doi.org/10.1007/978-3-319-61443-4 CrossRefGoogle Scholar
  22. 22.
    Olaechea, R., Fahrenberg, U., Atlee, J.M., Legay, A.: Long-term average cost in featured transition systems. In: Proceedings of the 20th International Systems and Software Product Line Conference, SPLC’16, pp. 109–118. ACM, New York (2016).  https://doi.org/10.1145/2934466.2934473
  23. 23.
    Ouedraogo, L., Kumar, R., Malik, R., Akesson, K.: Nonblocking and safe control of discrete-event systems modeled as extended finite automata. IEEE Trans. Autom. Sci. Eng. 8(3), 560–569 (2011)CrossRefGoogle Scholar
  24. 24.
    Parnas, D.L.: On the design and development of program families. IEEE Trans. Softw. Eng. SE–2(1), 1–9 (1976).  https://doi.org/10.1109/TSE.1976.233797 CrossRefzbMATHGoogle Scholar
  25. 25.
    Pnueli, O.M.A., Sifakis, J.: On the synthesis of discrete controllers for timed systems. In: Mayr, E., Puech, C. (eds.) Proceedings 12th Annual Symposium on Theoretical Aspects of Computer Science (STACS’95), LNCS, vol. 900, pp. 229–242. Springer (1995).  https://doi.org/10.1007/3-540-59042-0_76 CrossRefGoogle Scholar
  26. 26.
    Ramadge, P., Wonham, W.: Supervisory control of a class of discrete event processes. SIAM J. Control Optim. 25(1), 206–230 (1987).  https://doi.org/10.1137/0325013 MathSciNetCrossRefzbMATHGoogle Scholar
  27. 27.
    Skoldstam, M., Akesson, K., Fabian, M.: Modeling of discrete event systems using finite automata with variables. In: 46th IEEE Conference on Decision and Control, 2007, pp. 3387–3392. IEEE (2007)Google Scholar
  28. 28.
    ter Beek, M., Fantechi, A., Gnesi, S., Mazzanti, F.: Modelling and analysing variability in product families: model checking of modal transition systems with variability constraints. J. Log. Algebr. Methods Program. 85(2), 287–315 (2016).  https://doi.org/10.1016/j.jlamp.2015.11.006 MathSciNetCrossRefzbMATHGoogle Scholar
  29. 29.
    ter Beek, M., Reniers, M., de Vink, E.: Supervisory controller synthesis for product lines using CIF 3. In: Margaria, T., Steffen, B. (eds.) Proceedings 7th International Symposium on Leveraging Applications of Formal Methods, Verification and Validation: Foundational Techniques (ISoLA’16), LNCS, vol. 9952, pp. 856–873. Springer (2016).  https://doi.org/10.1007/978-3-319-47166-2_59 CrossRefGoogle Scholar
  30. 30.
    ter Beek, M.H., Legay, A., Lluch Lafuente, A., Vandin, A.: A framework for quantitative modeling and analysis of highly (re)configurable systems. IEEE Trans. Softw. Eng. (2018).  https://doi.org/10.1109/TSE.2018.2853726
  31. 31.
    ter Beek, M.H., de Vink, E.P., Willemse, T.A.C.: Family-based model checking with mCRL2. In: International Conference on Fundamental Approaches to Software Engineering, pp. 387–405. Springer (2017)Google Scholar
  32. 32.
    van Beek, D., Fokkink, W., Hendriks, D., Hofkamp, A., Markovski, J., van de Mortel-Fronczak, J., Reniers, M.: CIF 3: model-based engineering of supervisory controllers. In: Ábrahám, E., Havelund, K. (eds.) Proceedings 20th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS’14), LNCS, vol. 8413, pp. 575–580. Springer (2014).  https://doi.org/10.1007/978-3-642-54862-8_48 CrossRefGoogle Scholar

Copyright information

© Springer-Verlag GmbH Germany, part of Springer Nature 2019

Authors and Affiliations

  1. 1.Department of Statistics, Computer Science, ApplicationsUniversity of FlorenceFlorenceItaly
  2. 2.ISTI CNR PisaPisaItaly

Personalised recommendations