Control of a system is a set of actions needed to force changes in the system’s state according to the set objectives, goals to be met and mission to be accomplished. Intelligence is brought by methods borrowed from Artificial intelligence including machine vision, decision making, learning and other methods. One can look at intelligent control and control in general through answers to the following questions:
In the context of autonomy here, only the last question is discussed in details. According to [1] there are two main approaches to building control architectures – deliberative and behavioural architectures. All others are a kind of hybrids of the mentioned ones.
Deliberative architectures approach decision making by applying reasoning on a model of the world. Information flows in a sequential way from one module to another starting from sensor data acquisition, processing, interpretation, world’s model update, action planning end execution. Rather classical architecture is NASREM (NASA/NBS Standard Reference Model for Telerobot Control System Architecture) [2]:
The lower layers respond faster than the higher ones to sensor input data. Data flows horizontally in each layer while control flows vertically. The architecture itself is not limited to three layers since it is a reference architecture.
Behavioral architectures follow the building blocks defined by [3], which are based on simplicity and assumptions to achieve low response latency:
In this case, intelligent control is achieved through asynchronous execution of different behaviours, which in their essence are finite state machines i.e. each behaviour is a separate module Thus, high flexibility and fast response are achieved. However, the drawback is an unclear reaction on conflicting behaviour results as well as high mission complexity.
Hybrid architectures combine the best of both deliberative and reactive (behavioural) architectures. However, the so-called – three-layer architecture is the most known one and combines reactive control at the lowest level and deliberative layer at the top level of the architecture:
It must be emphasized that each of the layers whatever the architecture is selected might be implemented using a different software development approach, different methods and run on different hardware, which is a typical approach in the automotive domain to shrink response times and increase the overall safety of the system and its users. In military and space application different hardware allows increasing the system’s resilience.