Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

On Modularity in Reactive Control Architectures, with an Application to Formal Verification

Published: 11 April 2022 Publication History
  • Get Citation Alerts
  • Abstract

    Modularity is a central principle throughout the design process for cyber-physical systems. Modularity reduces complexity and increases reuse of behavior. In this article we pose and answer the following question: how can we identify independent “modules” within the structure of reactive control architectures? To this end, we propose a graph-structured control architecture we call a decision structure and show how it generalizes some reactive control architectures that are popular in Artificial Intelligence (AI) and robotics, specifically Teleo-Reactive programs (TRs), Decision Trees (DTs), Behavior Trees (BTs), and Generalised Behavior Trees (k-BTs). Inspired by the definition of a module in graph theory [16] we define modules in decision structures and show how each decision structure possesses a canonical decomposition into its modules, which can be found in polynomial time. We establish intuitive connections between our proposed modularity and modularity in structured programming. In BTs, k-BTs, and DTs the modules we propose are in a one-to-one correspondence with their subtrees. We show we can naturally characterize each of the BTs, k-BTs, DTs, and TRs by properties of their module decomposition. This allows us to recognize which decision structures are equivalent to each of these architectures in quadratic time. Following McCabe [26], we define a complexity measure called essential complexity on decision structures, which measures the degree to which they can be decomposed into simpler modules. We characterize the k-BTs as the decision structures of unit-essential complexity. Our proposed concept of modules extends to formal verification, under any verification scheme capable of verifying a decision structure. Namely, we prove that a modification to a module within a decision structure has no greater flow-on effects than a modification to an individual action within that structure. This enables verification on modules to be done locally and hierarchically, where structures can be verified and then repeatedly locally modified, with modules replaced by modules while preserving correctness. To illustrate the findings, we present an example of a solar-powered drone completing a reconnaissance-based mission using a decision structure. We use a Linear Temporal Logic-based verification scheme to verify the correctness of this structure and then show how one can repeatedly modify modules while preserving its correctness, and this can be verified by considering only those modules that have been modified.

    References

    [1]
    J. Andrew Bagnell, Felipe Cavalcanti, Lei Cui, Thomas Galluzzo, Martial Hebert, Moslem Kazemi, Matthew Klingensmith, Jacqueline Libby, Tian Yu Liu, Nancy Pollard, et al. 2012. An integrated system for autonomous robotics manipulation. In IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2955–2962.
    [2]
    Christel Baier and Joost-Pieter Katoen. 2008. Principles of Model Checking. MIT Press.
    [3]
    Claude Berge. 2001. The Theory of Graphs. Courier Corporation.
    [4]
    Oliver Biggar and Mohammad Zamani. 2020. A framework for formal verification of behavior trees with linear temporal logic. IEEE Robotics and Automation Letters 5, 2 (2020), 2341–2348.
    [5]
    Oliver Biggar, Mohammad Zamani, and Iman Shames. 2020. A principled analysis of Behavior Trees and their generalisations. arxiv:cs.AI/2008.11906.
    [6]
    Oliver Biggar, Mohammad Zamani, and Iman Shames. 2021. An expressiveness hierarchy of behavior trees and related architectures. IEEE Robotics and Automation Letters 6, 3 (2021), 5397–5404.
    [7]
    Corrado Böhm and Giuseppe Jacopini. 1966. Flow diagrams, turing machines and languages with only two formation rules. Communications of the ACM 9, 5 (1966), 366–371.
    [8]
    Joseph Cavanagh. 2018. Sequential Logic: Analysis and Synthesis. CRC Press.
    [9]
    Michele Colledanchise and Lorenzo Natale. 2018. Improving the parallel execution of behavior trees. In Proceedings of International Conference on Intelligent Robots and Systems. IEEE/RSJ, 7103–7110.
    [10]
    Michele Colledanchise and Petter Ögren. 2017. How behavior trees modularize hybrid control systems and generalize sequential behavior compositions, the subsumption architecture, and decision trees. IEEE Transactions on Robotics 33, 2 (2017), 372–389.
    [11]
    Michele Colledanchise and Petter Ögren. 2018. Behavior Trees in Robotics and Al: An Introduction. CRC Press.
    [12]
    Ole-Johan Dahl, Edsger Wybe Dijkstra, and Charles Antony Richard Hoare. 1972. Structured Programming. Academic Press Ltd.
    [13]
    Edsger W. Dijkstra. 1968. Letters to the editor: Go to statement considered harmful. Communications of the ACM 11, 3 (1968), 147–148.
    [14]
    Edsger Wybe Dijkstra. 1970. Notes on structured programming. Technical University Eindhoven.
    [15]
    Alexandre Duret-Lutz, Alexandre Lewkowicz, Amaury Fauchille, Thibaud Michaud, Etienne Renault, and Laurent Xu. 2016. Spot 2.0 — A framework for LTL and \(\omega\) -automata manipulation. In Proceedings of the 14th International Symposium on Automated Technology for Verification and Analysis (ATVA’16) (Lecture Notes in Computer Science), Vol. 9938. Springer, 122–129.
    [16]
    Tibor Gallai. 1967. Transitiv orientierbare graphen. Acta Mathematica Academiae Scientiarum Hungarica 18, 1–2 (1967), 25–66.
    [17]
    Blake Hannaford. 2019. Hidden Markov models derived from behavior trees. arXiv preprint arXiv:1907.10029 (2019).
    [18]
    John E. Hopcroft, Rajeev Motwani, and Jeffrey D. Ullman. 2001. Introduction to automata theory, languages, and computation. ACM Sigact News 32, 1 (2001), 60–65.
    [19]
    Matteo Iovino, Edvards Scukins, Jonathan Styrud, Petter Ögren, and Christian Smith. 2020. A survey of behavior trees in robotics and AI. arXiv preprint arXiv:2005.05842 (2020).
    [20]
    D. Isla. 2015. Handling complexity in the Halo 2 AI, 2005. http://www.gamasutra.com/gdc2005/features/20050311/isla_01.shtml. [21.1. 2010]
    [21]
    Andreas Klöckner. 2016. Behavior Trees for Mission Management of High-altitude Pseudo-satellites. Dr. Hut.
    [22]
    S. Rao Kosaraju. 1974. Analysis of structured programs. Journal of Computer and System Sciences. 9, 3 (1974), 232–255.
    [23]
    Edward A. Lee. 2002. Embedded software. In Advances in Computers, Vol. 56. Elsevier, 55–95.
    [24]
    Chris Martens, Eric Butler, and Joseph C. Osborn. 2018. A resourceful reframing of behavior trees. arXiv preprint arXiv:1803.09099 (2018).
    [25]
    Alejandro Marzinotto, Michele Colledanchise, Christian Smith, and Petter Ögren. 2014. Towards a unified behavior trees framework for robot control. In Proceedings of International Conference on Robotics and Automation. IEEE, 5420–5427.
    [26]
    Thomas J. McCabe. 1976. A complexity measure. IEEE Transactions on Software Engineering4 (1976), 308–320.
    [27]
    Ross M. McConnell and Jeremy P. Spinrad. 1999. Modular decomposition and transitive orientation. Discrete Mathematics 201, 1–3 (1999), 189–241.
    [28]
    Nils Nilsson. 1993. Teleo-reactive programs for agent control. Journal of Artificial Intelligence Research 1 (1993), 139–158.
    [29]
    Petter Ogren. 2012. Increasing modularity of UAV control systems using computer game behavior trees. In AIAA Guidance, Navigation, and Control Conference. 4458.
    [30]
    Amir Pnueli. 1977. The temporal logic of programs. In 18th Annual Symposium on Foundations of Computer Science (SFCS’77). IEEE, 46–57.
    [31]
    Paulo Tabuada. 2009. Verification and Control of Hybrid Systems: A Symbolic Approach. Springer Science & Business Media.
    [32]
    Arthur Henry Watson, Dolores R. Wallace, and Thomas J. McCabe. 1996. Structured Testing: A Testing Methodology Using the Cyclomatic Complexity Metric, Vol. 500. US Department of Commerce, Technology Administration, National Institute of Standards and Technology.
    [33]
    Jan C. Willems. 2007. The behavioral approach to open and interconnected systems. IEEE Control Systems Magazine 27, 6 (2007), 46–99.

    Cited By

    View all
    • (2024)Improving the Performance of Learned Controllers in Behavior Trees Using Value Function Estimates at Switching BoundariesIEEE Robotics and Automation Letters10.1109/LRA.2024.33824779:5(4647-4654)Online publication date: May-2024
    • (2024)BeBOP - Combining Reactive Planning and Bayesian Optimization to Solve Robotic Manipulation Tasks2024 IEEE International Conference on Robotics and Automation (ICRA)10.1109/ICRA57147.2024.10611468(16459-16466)Online publication date: 13-May-2024
    • (2023)Improving the Performance of Backward Chained Behavior Trees that use Reinforcement Learning2023 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)10.1109/IROS55552.2023.10342319(1572-1579)Online publication date: 1-Oct-2023
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Transactions on Cyber-Physical Systems
    ACM Transactions on Cyber-Physical Systems  Volume 6, Issue 2
    April 2022
    247 pages
    ISSN:2378-962X
    EISSN:2378-9638
    DOI:10.1145/3530302
    • Editor:
    • Chenyang Lu
    Issue’s Table of Contents

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Journal Family

    Publication History

    Published: 11 April 2022
    Online AM: 11 February 2022
    Accepted: 01 January 2022
    Revised: 01 September 2021
    Received: 01 August 2020
    Published in TCPS Volume 6, Issue 2

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Behavior trees
    2. formal verification
    3. modularity

    Qualifiers

    • Research-article
    • Refereed

    Funding Sources

    • Defence Science and Technology Group, through agreement MyIP: ID10266 entitled “Hierarchical Verification of Autonomy Architectures,” and the Australian Government
    • ONR MURI

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)73
    • Downloads (Last 6 weeks)6
    Reflects downloads up to 11 Aug 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Improving the Performance of Learned Controllers in Behavior Trees Using Value Function Estimates at Switching BoundariesIEEE Robotics and Automation Letters10.1109/LRA.2024.33824779:5(4647-4654)Online publication date: May-2024
    • (2024)BeBOP - Combining Reactive Planning and Bayesian Optimization to Solve Robotic Manipulation Tasks2024 IEEE International Conference on Robotics and Automation (ICRA)10.1109/ICRA57147.2024.10611468(16459-16466)Online publication date: 13-May-2024
    • (2023)Improving the Performance of Backward Chained Behavior Trees that use Reinforcement Learning2023 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)10.1109/IROS55552.2023.10342319(1572-1579)Online publication date: 1-Oct-2023
    • (2023)Creating Trustworthy AI for UAS using Labeled Backchained Behavior Trees2023 International Conference on Unmanned Aircraft Systems (ICUAS)10.1109/ICUAS57906.2023.10156149(1029-1036)Online publication date: 6-Jun-2023
    • (2023)On the programming effort required to generate Behavior Trees and Finite State Machines for robotic applications2023 IEEE International Conference on Robotics and Automation (ICRA)10.1109/ICRA48891.2023.10160972(5807-5813)Online publication date: 29-May-2023
    • (2023)A Framework for Learning Behavior Trees in Collaborative Robotic Applications2023 IEEE 19th International Conference on Automation Science and Engineering (CASE)10.1109/CASE56687.2023.10260363(1-8)Online publication date: 26-Aug-2023
    • (2022)Adding Neural Network Controllers to Behavior Trees without Destroying Performance Guarantees2022 IEEE 61st Conference on Decision and Control (CDC)10.1109/CDC51059.2022.9992501(3989-3996)Online publication date: 6-Dec-2022

    View Options

    Get Access

    Login options

    Full Access

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Full Text

    View this article in Full Text.

    Full Text

    HTML Format

    View this article in HTML Format.

    HTML Format

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media