Abstract
The design of systems that can change their behaviour to account for scenarios that were not foreseen at design time remains an open challenge. In this article, we propose an approach for adaptation of mobile robot missions that is not constrained to a predefined set of mission evolutions. We implement an adaptive software architecture and show how controller synthesis can be used both to guarantee correct transitioning from the old to the new mission goals with runtime architectural reconfiguration to include new software actuators and sensors if necessary. The architecture brings together architectural concepts that are commonplace in robotics such as temporal planning, discrete, hybrid and continuous control layers together with architectural concepts from adaptive systems such as runtime models and runtime synthesis. We validate the architecture flying several missions taken from the robotic literature for different real and simulated UAVs.
- [1] . 2016. Software architectures for robotic systems: A systematic mapping study. Journal of Systems and Software 122 (2016), 16–39. Google Scholar
Digital Library
- [2] . 2013. Elaborating requirements using model checking and inductive learning. IEEE Transactions on Software Engineering 39, 3 (2013), 361–383.Google Scholar
Digital Library
- [3] . 2012. Achieving dynamic adaptation via management and interpretation of runtime models. Journal of Systems and Software 85, 12 (2012), 2720–2737.
Self-Adaptive Systems. Google ScholarDigital Library
- [4] . 2007. Deployment and dynamic reconfiguration planning for distributed software systems. Software Quality Journal 15, 3 (2007), 265–281.Google Scholar
Digital Library
- [5] . 2017. Data analysis of the MAVLink communication protocol. In Proceedings of the 2017 International Conference on Information Science and Communications Technologies. 1–3.Google Scholar
Cross Ref
- [6] . 2015. Automated synthesis of application-layer connectors from automata-based specifications. In Proceedings of the Language and Automata Theory and Applications. Springer International Publishing, Cham, 3–24.Google Scholar
Cross Ref
- [7] . 2018. FlyNetSim: An open source synchronized UAV network simulator based on Ns-3 and ardupilot. In Proceedings of the 21st ACM International Conference on Modeling, Analysis and Simulation of Wireless and Mobile Systems. ACM, New York, NY, 37–45.Google Scholar
Digital Library
- [8] . 2008. Principles of Model Checking (Representation and Mind Series). The MIT Press.Google Scholar
Digital Library
- [9] . 2018. Mode-Target games: Reactive synthesis for control applications. IEEE Transactions on Automatic Control 63, 1 (2018), 196–202.Google Scholar
Cross Ref
- [10] . 2010. Handling consistent dynamic updates on distributed systems. In Proceedings of the Computers and Communications, 2010 IEEE Symposium on. 471–476.Google Scholar
Digital Library
- [11] . 2010. The disappearing boundary between development-time and run-time. In Proceedings of the FSE/SDP Workshop on Future of Software Engineering Research. ACM, New York, NY, 17–22.Google Scholar
Digital Library
- [12] . 2017. UAS-Rx interface for mission planning, fire tracking, fire ignition, and real-time updating. In Proceedings of the 2017 IEEE International Symposium on Safety, Security and Rescue Robotics. 67–74.Google Scholar
Digital Library
- [13] . 2007. Symbolic planning and control of robot motion [Grand Challenges of Robotics]. IEEE Robotics Automation Magazine 14, 1 (2007), 61–70.Google Scholar
Cross Ref
- [14] . 2014. Unmanned aerial vehicle security using recursive parameter estimation. In Proceedings of the International Conference on Unmanned Aircraft Systems, ICUAS 2014, Vol. 84. 692–702.Google Scholar
Cross Ref
- [15] . 2009. [email protected]. Computer 42, 10 (
Oct. 2009), 22–27.Google ScholarDigital Library
- [16] . 2018. Drone forensics: Challenges and new insights. In Proceedings of the 2018 9th IFIP International Conference on New Technologies, Mobility and Security. 1–6.Google Scholar
Cross Ref
- [17] . 2015. MORPH: A reference architecture for configuration and behaviour self-adaptation. In Proceedings of the 1st International Workshop on Control Theory for Software Engineering (Bergamo, Italy). ACM, New York, NY, 9–16.Google Scholar
Digital Library
- [18] . 2018. Engineering trustworthy self-adaptive software with dynamic assurance cases. IEEE Transactions on Software Engineering 44, 11 (2018), 1039–1069.Google Scholar
Cross Ref
- [19] . 2015. Reasoning about human participation in self-adaptive systems. In Proceedings of the 10th International Symposium on Software Engineering for Adaptive and Self-Managing Systems. IEEE Press, Piscataway, NJ, 146–156.Google Scholar
Digital Library
- [20] . 2018. MOSAICO: Offline synthesis of adaptation strategy repertoires with flexible trade-offs. Automated Software Engineering 25, 3 (
Sept. 2018), 595–626.Google ScholarDigital Library
- [21] . 2016. Autonomous indoor object tracking with the Parrot AR.Drone. In Proceedings of the 2016 International Conference on Unmanned Aircraft Systems. 25–30.Google Scholar
Cross Ref
- [22] . 2011. Dynamic software updating using a relaxed consistency model. Software Engineering, IEEE Transactions on 37, 5 (
Sept 2011), 679–694.Google ScholarDigital Library
- [23] . 2016. Open source computer-vision based guidance system for UAVs on-board decision making. In Proceedings of the 2016 IEEE Aerospace Conference. 1–5.Google Scholar
Cross Ref
- [24] . 2008. Recent Models and Algorithms for One-to-One Pickup and Delivery Problems. Springer US, Boston, MA, 327–357.Google Scholar
- [25] . 2016. A framework for the analysis of UAV strategies using co-simulation. In Proceedings of the 2016 VI Brazilian Symposium on Computing Systems Engineering. 9–15.Google Scholar
- [26] Rogério de Lemos, Holger Giese, Hausi A. Müller, Mary Shaw, Jesper Andersson, Marin Litoiu, Bradley Schmerl, Gabriel Tamura, Norha M. Villegas, Thomas Vogel, Danny Weyns, Luciano Baresi, Basil Becker, Nelly Bencomo, Yuriy Brun, Bojan Cukic, Ron Desmarais, Schahram Dustdar, Gregor Engels, Kurt Geihs, Karl M. Göschka, Alessandra Gorla, Vincenzo Grassi, Paola Inverardi, Gabor Karsai, Jeff Kramer, Antónia Lopes, Jeff Magee, Sam Malek, Serge Mankovskii, Raffaela Mirandola, John Mylopoulos, Oscar Nierstrasz, Mauro Pezzè, Christian Prehofer, Wilhelm Schäfer, Rick Schlichting, Dennis B. Smith, João Pedro Sousa, Ladan Tahvildari, Kenny Wong, and Jochen Wuttke. 2013. Software engineering for self-adaptive systems: A second research roadmap. In Proceedings of the Software Engineering for Self-Adaptive Systems II. Springer, 1–32.Google Scholar
- [27] . 2015. Dynamics-driven adaptive abstraction for reactive high-level mission and motion planning. In Proceedings of the 2015 IEEE International Conference on Robotics and Automation. 369–376.Google Scholar
Cross Ref
- [28] . 2017. Design and implementation of a semi-autonomous mobile search and rescue robot: SALVOR. In Proceedings of the 2017 International Artificial Intelligence and Data Processing Symposium. 1–6.Google Scholar
Cross Ref
- [29] . 2014. Hope for the best, prepare for the worst: Multi-tier control for adaptive systems. In Proceedings of the 36th International Conference on Software Engineering. ACM, New York, NY, 688–699.Google Scholar
Digital Library
- [30] . 2011. Synthesis of live behaviour models for fallible domains. In Proceedings of the 2011 33rd International Conference on Software Engineering. 211–220.Google Scholar
Digital Library
- [31] . 2008. MTSA: The modal transition system analyser. In Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering. 475–476.Google Scholar
Digital Library
- [32] . 2013. Coupling software architecture and human architecture for collaboration-aware system adaptation. In Proceedings of the 2013 International Conference on Software Engineering. IEEE Press, Piscataway, NJ, 53–62.Google Scholar
Digital Library
- [33] . 2016. Smart aero-amphibian surveillance system. In Proceedings of the International Conference Workshop on Electronics Telecommunication Engineering. 112–116.Google Scholar
Cross Ref
- [34] . 2005. Temporal logic motion planning for mobile robots. In Proceedings of the 2005 IEEE International Conference on Robotics and Automation. 2020–2025.Google Scholar
Cross Ref
- [35] . 1971. STRIPS: A new approach to the application of theorem proving to problem solving. In Proceedings of the 2nd International Joint Conference on Artificial Intelligence. 608–620.Google Scholar
Digital Library
- [36] . 2010. LTLMoP: Experimenting with language, temporal logic and robot control. In Proceedings of the 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems. 1988–1993.Google Scholar
Cross Ref
- [37] . 2018. An architecture for decentralized, collaborative, and autonomous robots. In Proceedings of the 2018 IEEE International Conference on Software Architecture. 75–7509.Google Scholar
Cross Ref
- [38] . 2019. High-level mission specification for multiple robots. In Proceedings of the 12th ACM SIGPLAN International Conference on Software Language Engineering. ACM, New York, NY, 127–140.Google Scholar
Digital Library
- [39] . 2004. Rainbow: Architecture-based self-adaptation with reusable infrastructure. Computer 37, 10 (
Oct. 2004), 46–54.Google ScholarDigital Library
- [40] . 1997. Three-layer Architectures, Artificial Intelligence and Mobile Robots. MIT/AAAI Press.Google Scholar
- [41] . 2017. Strengthening adaptation in cyber-physical systems via meta-adaptation strategies. ACM Transactions on Cyber-Physical Systems 1, 3 (
04 2017), 1–25.Google ScholarDigital Library
- [42] . 2021. Applying machine learning in self-adaptive systems: A systematic literature review. ACM Transactions on Autonomous and Adaptive 15, 3, Article
9 (Aug. 2021), 37 pages.Google Scholar - [43] . 2003. Fluent model checking for event-based systems. In Proceedings of the 9th European Software Engineering Conference Held Jointly with 11th ACM SIGSOFT International Symposium on Foundations of Software Engineering. ACM, New York, NY, 257–266.Google Scholar
Digital Library
- [44] . 2013. Incrementally synthesizing controllers from scenario-based product line specifications. In Proceedings of the 9th Joint Meeting on Foundations of Software Engineering. New York, NY, 433–443.Google Scholar
Digital Library
- [45] . 2018. Human-in-the-Loop mixed-initiative control under temporal tasks. In Proceedings of the 2018 IEEE International Conference on Robotics and Automation. 6395–6400.Google Scholar
Digital Library
- [46] . 1996. A formal framework for on-line software version change. IEEE Transactions on Software Engineering 22, 2 (1996), 120–131.Google Scholar
Digital Library
- [47] . 2012. Specifying and verifying the correctness of dynamic software updates. In Proceedings of the 4th International Conference on Verified Software: Theories, Tools, Experiments. Springer-Verlag, Berlin, 278–293.Google Scholar
Digital Library
- [48] . 2013. Safe software updates via multi-version execution. In Proceedings of the 2013 International Conference on Software Engineering. IEEE Press, Piscataway, NJ, 612–621.Google Scholar
Digital Library
- [49] . 2016. The progress of operational forest fire monitoring with infrared remote sensing. Journal of Forestry Research 28, 2 (
Dec. 2016), 1–15.Google Scholar - [50] . 2011. Middleware-Layer Connector Synthesis: Beyond State of the Art in Middleware Interoperability. Springer Berlin Heidelberg, Berlin, 217–255.Google Scholar
- [51] . 2017. An end-to-end system for accomplishing tasks with modular robots: Perspectives for the AI community. In Proceedings of the 26th International Joint Conference on Artificial Intelligence. 4879–4883.Google Scholar
Digital Library
- [52] . 2000. Small progress measures for solving parity games. In Proceedings of the 17th Annual Symposium on Theoretical Aspects of Computer Science. Springer-Verlag, Berlin, 290–301.Google Scholar
Digital Library
- [53] . 2006. Minimizing generalized büchi automata. In Proceedings of the Computer Aided Verification, and (Eds.). Springer Berlin Heidelberg, Berlin, 45–58.Google Scholar
Digital Library
- [54] . 1976. Formal verification of parallel programs. Communications of the ACM 19, 7 (
07 1976), 371–384.Google ScholarDigital Library
- [55] . 2003. The vision of autonomic computing. Computer 36, 1 (
Jan 2003), 41–50.Google ScholarDigital Library
- [56] . 2015. Synthesizing structural and behavioral control for reconfigurations in component-based systems. Formal Aspects of Computing 28, 1 (
Dec. 2015), 21–43.Google Scholar - [57] . 1990. The evolving philosophers problem: Dynamic change management. IEEE Transactions on Software Engineering 16, 11 (
Nov. 1990), 1293–1306.Google ScholarDigital Library
- [58] . 2007. Self-Managed systems: An architectural challenge. In Proceedings of the 2007 Future of Software Engineering. IEEE Computer Society, Washington, DC, 259–268.Google Scholar
Digital Library
- [59] . 2008. Translating structured english to robot controllers. Advanced Robotics 22 (
10 2008), 1343–1359.Google ScholarCross Ref
- [60] . 2007. Where’s waldo? sensor-based temporal logic motion planning. In Proceedings 2007 IEEE International Conference on Robotics and Automation. 3116–3121.Google Scholar
Cross Ref
- [61] . 2009. Temporal-Logic-Based reactive mission and motion planning. IEEE Transactions on Robotics 25, 6 (2009), 1370–1381.Google Scholar
Digital Library
- [62] . 2018. Synthesis for robots: Guarantees and feedback for robot behavior. Annual Review of Control, Robotics, and Autonomous Systems 1, 1 (2018), 211–236.Google Scholar
Cross Ref
- [63] . 2017. Visibility analysis of fire lookout towers in the boyabat state forest enterprise in Turkey. Environmental Monitoring and Assessment 7, 189, Article 329 (
Jun. 2017).Google ScholarCross Ref
- [64] . 2013. Just-in-time synthesis for reactive motion planning with temporal logic. In Proceedings of the 2013 IEEE International Conference on Robotics and Automation. 5048–5053.Google Scholar
Cross Ref
- [65] . 2019. Survey on coverage path planning with unmanned aerial vehicles. Drones 3, 1 (
01 2019), 4.Google ScholarCross Ref
- [66] . 2016. Reactive high-level behavior synthesis for an Atlas humanoid robot. In Proceedings of the 2016 IEEE International Conference on Robotics and Automation. 4192–4199.Google Scholar
Digital Library
- [67] . 2019. Specification patterns for robotic missions. IEEE Transactions on Software Engineering 47, 10 (2019), 2208–2224.Google Scholar
- [68] . 2015. Framework for autonomous delivery drones. In Proceedings of the 4th Annual ACM Conference on Research in Information Technology. 1–4.Google Scholar
Digital Library
- [69] . 2018. Dynamic update of discrete event controllers. IEEE Transactions on Software Engineering 46, 11 (2018), 1220–1240.Google Scholar
- [70] . 2015. State attraction under language specification for the reconfiguration of discrete event systems. IEEE Transactions on Automatic Control 60, 6 (
June 2015), 1630–1634.Google ScholarCross Ref
- [71] . 2013. Formalizing correctness criteria of dynamic updates derived from specification changes. In Proceedings of the 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems. IEEE Press, 63–72.Google Scholar
Digital Library
- [72] . 2020. Unified DEVS-based platform for modeling and simulation of hybrid control systems. In Proceedings of the 2020 Winter Simulation Conference. 1051–1062.Google Scholar
Cross Ref
- [73] . 2008. An architectural approach to the correct and automatic assembly of evolving component-based systems. Journal of Systems and Software 81, 12 (
Dec. 2008), 2237–2251.Google ScholarDigital Library
- [74] . 2006. Synthesis of reactive (1) designs. Lecture Notes in Computer Science 3855 (2006), 364–380. Google Scholar
Digital Library
- [75] . 1989. On the synthesis of a reactive module. In Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages. ACM, New York, NY, 179–190.Google Scholar
Digital Library
- [76] . 1989. The control of discrete event systems. Proceedings of the IEEE 77, 1 (1989), 81–98.Google Scholar
Cross Ref
- [77] . 2010. Automatically generating adaptive logic to balance non-functional tradeoffs during reconfiguration. In Proceedings of the 7th International Conference on Autonomic Computing. ACM, New York, NY, 225–234.Google Scholar
Digital Library
- [78] . 2016. Utilizing UAV-based mapping in post disaster volcano eruption. In Proceedings of the 2016 6th International Annual Engineering Seminar. 202–205.Google Scholar
Cross Ref
- [79] . 2019. Mutual influence-aware runtime learning of self-adaptation behavior. ACM Transactions on Autonomous and Adaptive Systems 14, 1, Article
4 (Sept. 2019), 37 pages.Google ScholarDigital Library
- [80] . 2013. A survey of dynamic software updating. Journal of Software: Evolution and Process 25, 5 (2013), 535–568.Google Scholar
Cross Ref
- [81] . 2017. A USV platform for surface autonomy. In Proceedings of the OCEANS 2017 - Anchorage. 1–8.Google Scholar
- [82] . 2008. From goals to components: A combined approach to self-management. In Proceedings of the ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems.Google Scholar
Digital Library
- [83] . 2010. PLASMA: A plan-based layered architecture for software model-driven adaptation. In Proceedings of the IEEE/ACM International Conference on Automated Software Engineering. ACM, New York, NY, 467–476.Google Scholar
Digital Library
- [84] . 2016. Development of a low cost and light weight UAV for photogrammetry and precision land mapping using aerial imagery. In Proceedings of the 2016 International Conference on Frontiers of Information Technology. 360–364.Google Scholar
Cross Ref
- [85] . 2020. MAVProxy Software Package. Retrieved January 16, 2020 from https://github.com/ArduPilot/MAVProxy.Google Scholar
- [86] . 2020. Transformational supervisor synthesis for evolving systems. IFAC-PapersOnLine 53, 4 (2020), 309–316.
Google Scholar Cross Ref
- [87] . 2014. Vehicle Routing: Problems, Methods, and Applications, Second Edition. Society for Industrial and Applied Mathematics.Google Scholar
Cross Ref
- [88] . 2004. Fluent-Based animation: Exploiting the relation between goals and scenarios for requirements validation. In Proceedings. 12th IEEE International Requirements Engineering Conference. 208–217.Google Scholar
Cross Ref
- [89] . 2014. Model-Driven engineering of self-adaptive software with EUREMA. ACM Transactions on Autonomous and Adaptive Systems 8, 4, Article
18 (Jan. 2014), 33 pages.Google ScholarDigital Library
- [90] . 2018. Multi-Vehicle motion planning for search and tracking. In Proceedings of the 2018 IEEE Conference on Multimedia Information Processing and Retrieval. 352–355.Google Scholar
Cross Ref
- [91] . 2018. Coverage path planning under the energy constraint. In Proceedings of the 2018 IEEE International Conference on Robotics and Automation. 368–373.Google Scholar
Digital Library
- [92] . 2019. Victim detection using UAV with on-board voice recognition system. In Proceedings of the IEEE International Conference on Robotic Computing. 555–559.Google Scholar
Cross Ref
- [93] . 2017. An improved multi-AUV patrol path planning method. In Proceedings of the 2017 IEEE International Conference on Mechatronics and Automation. 1930–1936.Google Scholar
Digital Library
- [94] . 2019. Formal synthesis of warehouse robotic systems with temporal logic specifications. In Proceedings of the 2019 IEEE International Conference on Cybernetics and Intelligent Systems and IEEE Conference on Robotics, Automation and Mechatronics. 469–474.Google Scholar
Cross Ref
- [95] . 2019. HAFLoop: An architecture for supporting highly adaptive feedback loops in self-adaptive systems. Future Generation Computer Systems 105, C (Dec. 2019), 607–630.Google Scholar
- [96] . 2006. Model-based development of dynamically adaptive software. In Proceedings of the 28th International Conference on Software engineering. ACM, 371–380.Google Scholar
Digital Library
- [97] . 2020. Iterator-based temporal logic task planning. In Proceedings of the 2020 International Conference on Robotics and Automation.Google Scholar
Cross Ref
- [98] . 2021. Fork of MAVProxy to support hybrid controllers and assured mission adaptation. Retrieved October 12, 2021 from https://bitbucket.org/szudaire/modules.Google Scholar
- [99] . 2021. MTSA tool, LTS requirements and mission videos. Retrieved October 12, 2021 from http://mtsa.dc.uba.ar/uav/uav-morph.html.Google Scholar
Index Terms
Assured Mission Adaptation of UAVs
Recommendations
Joint resource allocation for dynamic cellular‐enabled UAVs communication
Emerging cellular‐enabled unmanned aerial vehicles (UAVs) communication poses both opportunities and challenges to the current research of UAV applications. On the one hand, the advanced cellular technologies and authentication mechanisms make significant ...
Gain Enhancement of Axial Mode Helical Antenna for UAV Applications
ISMS '15: Proceedings of the 2015 6th International Conference on Intelligent Systems, Modelling and SimulationThe Unmanned Aerial Vehicle (UAV) technology has seen substantial growth in the last two decades. Helical antennas play vital role in establishing reliable communication in UAV applications. In this paper, an axial mode helical antenna for unmanned ...
A Mission Planning Framework for Fleets of Connected UAVs
AbstractCurrently, several platforms offer solutions for the management and control of fleets of unmanned aerial vehicles (UAVs), addressing a wide range of scenarios, each with its own particular set of objectives. Some of these solutions are mission ...






Comments