Skip to main content
Log in

A qualitative assessment of \(\alpha \)Rby in the perspective of the supervisory control theory

  • Regular Paper
  • Published:
International Journal on Software Tools for Technology Transfer Aims and scope Submit manuscript

Abstract

It becomes more and more evident today that SAT-solving approaches have the potential to verify properties and synthesize supervisors of controlled systems described with a high level of abstraction. Such approaches can be particularly appropriate when engineers give more importance to decentralized, hierarchical, and parameterized control paradigms than to centralized ones in the design of systems composed of multiple small agents. One advantage of declarative programming languages, such as relational logic, in specifying control problems, including their underlying properties and reasoning methods, is their proximity to the mathematical objects used in the formulation of the theory itself, which allows for implementing new fragments of it faster. The disadvantage is, however, that SAT-solving approaches do not lend themselves to efficient calculations of auxiliary objects involved in some control problems, even if they can be described with the logic at hand. In some cases, the latter is not sufficiently powerful to express the entire solution logically. Such difficulties can be circumvented with \(\alpha {\textsc {Rby}}\), a fusion of Alloy and Ruby. Based on earlier experiments conducted with Alloy, this paper provides a qualitative assessment of \(\alpha {\textsc {Rby}}\) and reports on the results of new experiments with two fragments of the supervisory control theory: state-based control and decentralized control.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23
Fig. 24
Fig. 25
Fig. 26
Fig. 27
Fig. 28

Similar content being viewed by others

Notes

  1. https://github.com/maximerouthier/arby/.

  2. http://rstdenis.espaceweb.usherbrooke.ca/en/downloads/Alloy-models/ and http://rstdenis.espaceweb.usherbrooke.ca/en/downloads/aRby-programs/.

  3. The notation \(\delta (x, \sigma )!\) means that \(\delta (x, \sigma )\) is defined.

  4. The expression \(t \le s\) denotes that t is a prefix of s.

  5. \(\alpha {\textsc {Rby}}\) with SAT solver SAT4j was run on a 3.5 Ghz Intel Quad-Core i7 processor with 16GB of memory under Linux Ubuntu.

  6. An inaccuracy was discovered in [40]. The captions of Figs. 18 and 19 must be swapped.

  7. The symbol # denotes the size of a sequence s.

  8. DSML is the abbreviation for Domain-Specific Modeling Language.

References

  1. Åkesson, K., Fabian, M., Flordal, H., Malik, R.: Supremica—an integrated environment for verification, synthesis and simulation of discrete event systems. In: 2006 8th International Workshop on Discrete Event Systems (WODES), pp. 384–385 (2006)

  2. Åkesson, K., Fabian, M., Flordal, H., Vahidi, A.: Supremica—a tool for verification and synthesis of discrete event supervisors. In: 11th Mediterranean Conference on Control and Automation (MED) (2003)

  3. Bagheri, H., Tang, C., Sullivan, K.: TradeMaker: automated dynamic analysis of synthesized tradespaces. In: 36th International Conference on Software Engineering (ICSE), pp. 106–116 (2014)

  4. Bagheri, H., Sullivan, K.: Model-driven synthesis of formally precise, stylized software architectures. Form. Asp. Comput. 28(3), 441–467 (2016)

    Article  MathSciNet  Google Scholar 

  5. Barati, M., St-Denis, R.: Behavior composition meets supervisory control. In: 2015 IEEE International Conference on Systems, Man, and Cybernetics (SMC), pp. 115–120 (2015)

  6. Cassandras, C.G., Lafortune, S.: Introduction to Discrete Event Systems, 2nd edn. Springer, New York (2008)

    Book  MATH  Google Scholar 

  7. Claessen, K., Een, N., Sheeran, M., Sörensson, N., Voronov, A., Åkesson, K.: SAT-solving in practice, with a tutorial example from supervisory control. Discrete Event Dyn. Syst. Theory Appl. 19(4), 495–524 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  8. Côté, D., Fraikin, B., Frappier, M., St-Denis, R.: A SAT-based approach for the construction of reusable control system components. In: Salaün, G., Schätz, B. (eds.) FMICS 2011. LNCS 6959, pp. 52–67. Springer, Berlin (2011)

    Google Scholar 

  9. Côté, D., Embe Jiague, M., St-Denis, R.: Systems-theoretic view of component-based software development. In: Barbosa, L.S., Lumpe, M. (eds.) FACS 2010. LNCS 6921, pp. 163–181. Springer, Berlin (2012)

    Google Scholar 

  10. Côté, D., St-Denis, R.: Component-based method for the modeling and control of modular production systems. IEEE Trans. Control Syst. Technol. 21(5), 1570–1585 (2013)

    Article  Google Scholar 

  11. Demirezen, Z., Mernick, M., Gray, J., Bryant, B.: Verification of DSMLs using graph transformation: a case study with Alloy. In: 6th International Workshop on Model-Driven Engineering, Verification and Validation (MoDeVVa), Article No. 3 (2009)

  12. Flanagan, D., Matsumoto, Y.: The Ruby Programming Language. O’Reilly, Cambridge (2008)

    Google Scholar 

  13. Fraikin, B., Frappier, M., St-Denis, R.: Modeling the supervisory control theory with Alloy. In: Derrick, J., et al. (eds.) ABZ 2012. LNCS 7316, pp. 94–107. Springer, Berlin (2012)

    Google Scholar 

  14. Fraikin, B., Frappier, M., St-Denis, R.: Supervisory control theory with Alloy. Sci. Comput. Program. 94, 217–237 (2014)

    Article  Google Scholar 

  15. Gomes, C.P., Kautz, H., Sabharwal, A., Selman, B.: Satisfiability solvers. In: van Harmelen, F., Lifschitz, V., Porter, B. (eds.) Handbook of Knowledge Representation, Chapter 2, pp. 89–134. Elsevier, Amsterdam (2008)

    Chapter  Google Scholar 

  16. Jackson, D.: Software Abstractions: Logic, Language, and Analysis, Revised Edition. MIT Press, Cambridge (2012)

    Google Scholar 

  17. Khoury, J., Abdallah, C.T., Heileman, G.L.: Towards formalizing network architectural descriptions. In: Frappier, M., et al. (eds.) ABZ 2010. LNCS 5977, pp. 132–145. Springer, Berlin (2010)

    Google Scholar 

  18. Kim, J.S., Garlan, D.: Analyzing architectural styles. J. Syst. Softw. 83(7), 1216–1235 (2010)

    Article  Google Scholar 

  19. Kumar, R., Takai, S.: Inference-based ambiguity management in decentralized decision-making: decentralized control of discrete event systems. IEEE Trans. Autom. Control 52(10), 1783–1794 (2007)

    Article  MathSciNet  MATH  Google Scholar 

  20. Leduc, R.J.: Hierarchical Interface-Based Supervisory Control. Doctoral thesis, Graduate Department of Electrical and Computer Engineering, University of Toronto (2003)

  21. Leuschel, M., Butler, M.: ProB: an automated analysis toolset for the B method. Softw. Tools Technol. Transf. 10(2), 185–203 (2008)

    Article  Google Scholar 

  22. Liao, H., Wang, Y., Stanley, J., Lafortune, S., Reveliotis, S., Kelly, T., Mahlke, S.: Eliminating concurrency bugs in multithreaded software: a new approach based on discrete-event control. IEEE Trans. Control Syst. Technol. 21(6), 2067–2082 (2013)

    Article  Google Scholar 

  23. Maoz, S., Ringert, J.O., Rumpe, B.: Synthesis of component and connector models from crosscutting structural views. In: 9th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium of the Foundations of Software Engineering (ESEC/FSE), pp. 444–454 (2013)

  24. Ma, C., Wonham, W.M.: Nonblocking Supervisory Control of State Tree Structure. LNCIS, vol. 317. Springer, Heidelberg (2005)

    MATH  Google Scholar 

  25. Milicevic, A., Near, J.P., Kang, E., Jackson, D.: Alloy*: a general-purpose higher-order relational constraint solver. In: 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering (ICSE), vol. 1, pp. 609–619 (2015)

  26. Milicevic, A., Efrati, I., Jackson, D.: \(\alpha \)Rby–an embedding of alloy in Ruby. In: Ait Ameur, Y., Schewe, K.-D. (eds.) ABZ 2014. LNCS 8477, pp. 56–71. Springer, Berlin (2014)

    Google Scholar 

  27. Ramadge, P.J.G., Wonham, W.M.: The control of discrete event systems. Proc. IEEE 77(1), 81–98 (1989)

    Article  Google Scholar 

  28. Ricker, L., Lafortune, S., Genc, S.: DESUMA: a tool integrating GIDDES and UMDES. In: 2006 8th International Workshop on Discrete Event Systems (WODES), pp. 392–393 (2006)

  29. Sanchez, A., Reza, J., Douriet, J., Gonzalez, R.: A comparison of synthesis tools for supervisory controllers. In: 2003 European Control Conference (ECC), pp. 600–605 (2003)

  30. Shayman, M.A., Kumar, R.: Supervisory control of nondeterministic systems with driven events via prioritized synchronization and trajectory models. SIAM J. Control Optim. 33(2), 469–497 (1995)

    Article  MathSciNet  MATH  Google Scholar 

  31. Torlak, E., Bodik, R.: Growing solver-aided languages with Rosette. In: 2013 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming & Software, pp. 135–152 (2013)

  32. Torlak, E., Jackson, D.: Kodkod: a relational model finder. In: Grumberg, O., Huth, M. (eds.) TACAS 2007. LNCS 4424, pp. 632–647. Springer, Berlin (2007)

    Google Scholar 

  33. Tronci, E.: Automatic synthesis of controllers from formal specifications. In: Second International Conference on Formal Engineering Methods (ICFEM), pp. 134–143 (1998)

  34. Tronci, E.: Formally modeling a metal processing plant and its closed loop specifications. In: 4th IEEE International Symposium on High-Assurance Systems Engineering (HASE), pp. 151–158 (1999)

  35. Tronci, E.: On computing optimal controllers for finite state systems. In: 36th IEEE Conference on Decision and Control (CDC), vol. 4, pp. 3592–3593 (1997)

  36. Wang, Xi., Ray, A., Phoba, S., Liu, J.: J-DES: a graphical interactive package for analysis and synthesis of discrete event systems. In: 2003 American Control Conference (ACC), vol. 4, pp. 3405–3410 (2003)

  37. Wonham, W.M.: Supervisory Control of Discrete-Event System. Electrical & Computer Engineering, University of Toronto, Technical Report ECE 1636F/1637S (2013)

  38. Yadav, N., Felli, P., De Giacomo, G., Sardina, S.: Supremal realizability of behaviors with uncontrollable exogenous events. In: 23rd International Joint Conference on Artificial Intelligence (IJCAI), pp. 1176–1182 (2013)

  39. Yoo, T.-S., Lafortune, S.: A general architecture for decentralized supervisory control of discrete-event systems. Discrete Event Dyn. Syst. Theory Appl. 12(3), 335–377 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  40. Yoo, T.-S., Lafortune, S.: Decentralized supervisory control with conditional decisions: supervisor existence. IEEE Trans. Autom. Control 49(11), 1886–1904 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  41. Zhang, Z., Wonham, W.M.: STCT: an efficient algorithm for supervisory control design. In: Caillaud, B., et al. (eds.) Synthesis and Control of Discrete Event Systems, pp. 77–100. Kluwer Academic Publisher, Boston (2002)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Richard St-Denis.

Additional information

The authors would like to thank the Natural Sciences and Engineering Research Council of Canada (NSERC) for financial support. They are grateful to Aleksandar Milicevic for his prompt and valuable answers to numerous requests about \(\alpha {\textsc {Rby}}\). They would also like to thank the reviewers for their valuable comments and suggestions.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Routhier, M., St-Denis, R. A qualitative assessment of \(\alpha \)Rby in the perspective of the supervisory control theory. Int J Softw Tools Technol Transfer 21, 121–141 (2019). https://doi.org/10.1007/s10009-017-0461-6

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10009-017-0461-6

Keywords

Navigation