| Autonomous robots are a type of cyber-physical system that operates in an open environment while being able to autonomously make and execute intelligent behaviours.The autonomous robot software runs on the robot hardware platform and provides several critical functionalities,including high-level behavioural decision-making and underlying hardware control,which supports the efficient,robust and safe operation of autonomous robots in the open environment.The development and well running of autonomous robot software needs to solve three critical research problems:(1)How to abstract the diverse behaviours of autonomous robots and analyze the complex interaction between behaviours.(2)How to improve the effectiveness of behavioural decision-making under the uncertainty of the open environment.(3)How to provide effective software engineering technology to support the efficient development of such software systems.Focusing on the above three issues,the paper focuses on the behaviour interaction mechanism,behaviour decision-making approach and software development technology of autonomous robot software,and carries out several systematic research works,and has achieved the following innovative research results.1.Aiming at the issue of behaviour abstraction and analysis of autonomous robots,the paper proposes an interactive pattern of adjoint behaviour for autonomous robots.The paper distinguishes the observation and actuating behaviours of autonomous robots,proposes the accompanying paradigm between the observation and actuating behaviours,and designs three types of adjoint behaviour interaction patterns,including parallel,active and hybrid adjoint patterns.The purpose,data exchange,and execution timing of companion patterns are presented to guide more complex behavioural decisions and module encapsulation of autonomous robot software.2.Aiming at the issue of effective behavioural decision-making in the dynamic environment,the paper proposes the realization mechanism of parallel adjoint patterns and the two-stage behavioural decision-making approach.The paper realizes the parallel execution and continuous interactive feedback between the observation and actuating behaviours by enhancing the actuating behaviour safety condition and the parallel observation process.A two-stage behaviour decision-making approach to the parallel adjoint pattern is proposed,and the first stage produces an ordered sequence of task-oriented actuating behaviours.The second stage produces the observational behaviours that are executed in parallel.The paper carries out experimental verification,and the results show that the two-stage behavioural decision-making approach can deal with environmental changes more effectively,and improve the success rate of task completion and the efficiency of behaviour execution.3.Aiming at the issue of effective behavioural decision-making in the unknown environment,the paper proposes the realization mechanism of the active adjoint pattern and the hybrid behavioural decision-making approach.The approach combines two deterministic and logical planning algorithms with different characteristics to solve the two decision goals of task realization and environmental observation respectively and conducts experimental verification based on the target search task in the unknown environment.The classical behaviour decision and probabilistic POMDP behaviour decision approaches are compared.The results show that the hybrid behavioural decision-making approach has higher behavioural decision-making efficiency and task completion success rate.4.Aiming at the development of autonomous robot software,the paper proposes a systematic software development technology and supporting development platform.This paper proposes a software design pattern based on the hybrid adjoint interaction pattern and designs a software implementation architecture based on the behaviour tree model.The implementation architecture realizes the control flow and planning within the software by extending the behaviour tree control node,introducing an independent planner in the node and a shared data store.This paper designs and implements the autonomous robot software support platform Auto Robot,which supports the design,coding,deployment,compilation,running and monitoring of autonomous robot software.This paper develops and demonstrates case studies and experiments to evaluate the effectiveness and efficiency of software development technologies and platforms.The results show that the software development technology and platform proposed in this paper can effectively improve the development efficiency of autonomous robot software and the effectiveness of task realization. |