3.1. Composition of Architecture
From the view of system modeling, system architecture design covers several related significant models, including system logic model, system function model, task model, organizational structure model, etc. Among these models, the system logic model is determined mainly by accounting for the internal relationship among the system’s physical elements. The system architecture is a comprehensive and essential base to model and implement autonomous systems.
G. M. Amdahl, who was the first scholar, proposed the concept of Architecture in 1964 [28
]. Afterward, researchers paid increasing interest and attention to proposing a unified and commonly-approved explanation for architecture that promised the relevant theoretical foundation to a high degree. In the past half-century, architecture discipline, such as its related connotations, has made great progress [29
]. The architecture of autonomous systems can be seen as the effective integration of conceptual [30
], physical structure [31
], logical structure, software and hardware structure, organizational structure, functional structure, network structure, computing structure, and some other related structures [32
]. In general, the system architecture contains a comprehensive logical conceptual structure and a system technical structure that can be varied flexibly according to the technology domain.
Furthermore, the comprehensive logical conceptual structure is comprised of services classification structure and logical structure. The logical structure is the basis of implementing services classification structure, and the services classification structure is the concrete manifestation of realizing logical structure. The technical structure can be divided into software structure and hardware structure. Hardware structure is the foundation of software structure deployment. Architecture design is a collection of system-related concepts used to describe the system composition, function, logic, and other aspects of the design. The physical structure mainly describes the overall design of the system and the operation mode to achieve the objectives, mainly including various software and hardware developed for the system. The software system is mainly applicable to competent the deployment of the system software, which contributes to implementing the required functions. It is noticeable that the efficient design of the software system involves both suitable hardware and software.
Some special attention should be paid to several paramount aspects of the physical structure, including the elements of physical construction and network form of the system to ensure the reliability, robustness, and diversity of tasks related to the system [33
]. The organizational structure [34
] focuses on the organizational relationship among the system components, including the organizational forms of user layer, system layer, and element layer. The cores of functional architecture [35
] are the functional elements of the system and the intrinsic logic of function realization, which build the bridge between the system and the user interaction. The main concern of the logical architecture [36
] is the internal correlations among the constituent objects or elements in the system, such as ships, ports, waterways, information flow, user interfaces, databases, and so on, in the waterway transportation system. The logical architecture focuses on the logical relationship within the system, and the remote system functions under the logical relationship [37
]. Furthermore, the logical architecture is more inclined to the “hierarchical” structure [38
]. The hierarchical structure of a system always consists of physical logic layer, business function layer, and network data layer, so-called a classic three-layer architecture [39
], which is illustrated in . The development process of system architecture is presented in .
Figure 2. The typical composition of system architecture.
Figure 3. The development process of system architecture.
In summary, it can be found that the primary purpose of building an architecture for an autonomous system is essential, and essential especially for designing the overall structure and realizing the expected functions of the system, which, in turn, enhances the autonomous and task fulfillment abilities of the system [40
]. For an autonomous system, four kinds of abilities, including environment perception and self-perception, planning, self-execution, and self-learning ability promising self-adaptation and self-evolution.
3.2. Representative Architecture of Automation System
A robot system is a standard and simple automation system. As a representative form of the automation system, robot architecture is generally composed of perception subsystem, planning subsystem, and execution subsystem [41
]. According to the different combination forms of the three subsystems, they can be divided into knowledge-based architecture (also known as horizontal, decentralized architecture) [42
], behavior-based architecture (also known as vertical decomposition type) [43
], and hybrid architecture combining knowledge and behavior [44
At present, knowledge-based architecture is accepted as the prominent architecture of the Robot system, this kind of system architecture inspired by human cognition of knowledge. Human cognition usually contains the following processes: perceiving surrounding information; modeling the body model for its kinematic equation and dynamic equation; planning the tasks; executing the instruction; and repeating from perception module. The implementation of the module is detected and supervised. Besides, the environment model needs to be accurate. The knowledge-based architecture connects the modules according to human cognition.
An illustration of the knowledge-based architecture is presented in . In the architecture, each module can work and develop independently, and the system implementation is straightforward.
Figure 4. The knowledge-based architecture.
The construction of knowledge-based architecture is a typical top-down construction method. The top-down construction method refers to the generation of system actions, which go through a series of processes, from perception to execution.
The perception module also plays a significant role in the system. The perception module can construct the global environment information independently and infer the relationship of each element object in the global environment information. However, the sensed data will not affect the action execution directly.
The planning module is an essential component in this architecture, which determined the motion of the robot. The planning module will deal with the task. Through the given objectives and system constraints, the planner will give the following action instructions according to the perceived information and complete the whole task with the cooperation of each module.
In this structure, every module is essential. With the cooperation of each module, the system completes the whole task. The perception module can construct the global environment information independently and infer the relationship of each element in the global environmental information. If the global environment information is missing, the planning module cannot complete and correctly plan the action instructions. The establishment of environmental information depends on the hardware conditions of the system. Due to the weak computing power, there will be an unavoidable delay in the control loop of the system, which leads to the lack of real-time and flexibility of the system.
Due to concatenate structure of the knowledge-based architecture, there are some obvious shortcomings. The first shortcoming is the lack of system reliability. In the concatenate structure, if one of the modules fails, the whole system will collapse. Besides, the real-time performance of actions is flawed since the transmission of information will go through a series of processes and cannot respond to the rapidly changing environment.
In 1986, Professor Rodney A. Brooks, from Australia, proposed behavior-based architecture, also known as inclusive architecture [45
]. Comparing with knowledge-based architecture, behavior-based architecture adopts the parallel way to build the system.
The perception module and execution module are included in the function structure of each level of behavior-based architecture. According to the difference of each layer, the perception module, and planning module is activated based on the real-time demand. In the behavior-based architecture, the system plans different levels of behavior capabilities according to the different tasks. The behavior capabilities are superimposed in each level of the functional structure. In general, complex behavior will influence simple behavior, and simple behavior will also affect complex behavior, but the influence is limited. Whether it is low-level or high-level, each level has independent behavior and can independently control the intelligent robot to generate corresponding motion.
Behavior-based architecture highlights the behavior control structure from perception to action. Behavior-based architecture is a typical parallel architecture. Each behavior includes a series of capabilities from perception, modeling, planning, execution, etc. A typical behavior-based architecture is demonstrated in .
Figure 5. The behavior-based architecture.
In this architecture, the basic behavior is relatively simple and fixed. So, it needs less physical resources and can respond to the rapidly changing environment and task information. The whole system can also be very flexible to achieve complex tasks. A specific layer completes each action, and each level contains the complete path of perception, planning, execution, etc.
What is more, there is an entirely parallel structure of all levels. The advantage of the parallel structure is that, even if one module fails, the other control loops can still work typically and perform the given actions. Therefore, the behavior-based architecture can improve the system’s survivability and enhance the system’s ability to complete the task.
Both knowledge-based architecture and behavior-based architecture have some limitations. The system using knowledge-based architecture components is relatively lacking in real-time and task diversity. while the behavior-based architecture improves the system’s real-time performance and action response, its system is challenging to implement. Combining the advantages of the two architectures seems to be a good solution. Thus, some scholars proposed a hybrid architecture [46
]. The goal of hybrid architecture design is to combine the advantages of the two kinds of architecture, that is, simple hierarchical structure and fast response speed of behavior-based architecture [47
A typical hybrid architecture, such as CASIA-I, is proposed by researchers from the Chinese Academy of Sciences, and an indoor mobile robot is designed based on the hybrid architecture. Researchers integrate two architectures, where the structure includes the human-computer interaction layer, task planning layer, map database, and behavior control layer.
Hybrid architecture is currently becoming a significant development trend of autonomous individual architecture, but many problems are still to be solved. First of all is the coordination and implementation among different levels, especially the coordination between knowledge-based behavior and reactive behavior. The second is how to adapt the hybrid architecture to the dynamic environment. The third is how to supervise the individual’s execution, find problems in time, and improve the individual’s performance.
When scenes and robots change rapidly, intelligent robots cannot perceive the scene timely due to the limitation of sensors and computing power. When the system’s hardware cannot meet the requirements of calculation, the real-time performance of the system will be seriously affected. To solve the problem, Dr. Kuffner from Carnegie Mellon University proposed a concept of “cloud robotics” in 2010 [48
]. The cloud robot is a combination of cloud computing and intelligent robot, moving the computing power of the robot to the cloud [49
]. When the intelligent robot needs to process the information, it connects to the corresponding cloud server and processes it. The results are sent back to the robot through the network [50
Compared with local robots, the cloud robot moves complex information perception acquisition and information processing computing tasks to the cloud service, which has lower requirements on local software and hardware in the local robot. At the same time, by connecting with the cloud, it can also receive the relevant data of other intelligent robots, realize information sharing, and enhance the learning ability of intelligent robots through information interaction. Through cloud connection, information sharing between intelligent robots will be faster and more convenient. The cloud robot architecture is shown in .
Figure 6. The architecture of cloud robot.
The four structural characteristics of the automation system are summarized in .
Table 3. Comparison of architecture characteristics of automation system.
||The order of each functional modules is clear, that is conducive to design and easy to implement.
||Concatenate structure: lack of reliability and the real-time performance of action.
||Parallel structure, which is high- response, robust, and flexible.
||It is difficult to design, and it is not easy to coordinate between modules.
||Not only ensuring the real-time and task diversity, but also having a relatively simple structure and easy to implement.
||The design of system is very difficult, which is only feasible for simple individuals. Moreover, transition redundancy, system simplicity is not high.
||The complex computing tasks are unloaded to the cloud to improve the ability of information sharing and task execution among individuals.
||The cost of information sharing is high, and it is highly dependent on network quality.
3.3. Transformation of Architecture from Automation System to Autonomous System
The autonomous system refers to the system which can deal with the non-programmed or non-present situation and has self-management and self-guidance ability. The office of the chief scientist of the U.S. Air Force has issued a document to plan the future development of the autonomous system [51
] to clarify the role of autonomous systems in future systems. The system’s autonomy means that the system has the characteristics of self-management ability in a complex changing environment and non-present situation. Compared with traditional automation systems or a semi-autonomous system, the autonomous system can realize self-learning and self-adaptive ability in the face of a more complex and time-varying environment and has a broader application prospect, such as the aerospace field [52
], military field [53
], and mechanical engineering field [54
In an autonomous system, autonomy refers to the application of advanced software algorithms, a variety of heterogeneous sensors, and other hardware facilities so that the system can interact with individuals and the environment through limited communication for a long time. It only needs to issue the necessary task instructions without other external intervention to independently complete the task independently and independently adjust the system in an unknown environment. A fully autonomous system cannot be realized at the present stage, and the vast majority of systems require people to participate in decision-making and supervision.
The level of transformation is relatively low. In the existing research, most of the systems are semi-autonomous to some extent. In the future, full autonomy is the ultimate destination of the control field. With the development of autonomous systems, the emphasis of human operators moves from low-level decision-making to high-level tasks, including the overall task arrangement and coordination. In the future, these systems may contain more autonomous functionalities, human participation in decision-making is less and less, the weight of human decision-making is higher and higher at the regular operation of the system, and the system will gradually transition to full autonomy. The extension from the classical control system to the autonomous control system is shown in .
Figure 7. Extension from classical automatic system to autonomous system.
The classic semi-autonomous system [55
] is a closed-loop system composed of sensors, decision-makers, controllers, actuators, and control objects under specific environmental conditions. A large number of intelligent algorithms will be used in the system to organically combine with the emerging factors, such as perception, planning, decision-making, computing, and communication, to greatly enhance and expand the autonomous ability of the system [56
]. The semi-autonomous system can also interact with systems of different autonomous levels, including human beings, and even realize the transfer of intelligence from human to equipment.
At present, the military field [57
] is the most widely used field of unmanned systems, and it is also the field closest to the application of the autonomous system. DARPA, together with ABC and Hopkins University, studied the standard operating system (COS) of the joint unmanned air combat system [58
]. Different types of UAV (Unmanned Aerial Vehicle), UAV ground control station, and communication satellite are integrated into an organic whole, which can effectively share information among members and make planning and decision at the system level and platform level, resulting in the networked operation between multiple platforms. The system framework is shown in .
Figure 8. Common operation system.