3. The Concept of an Agent and Multi-Agent Systems
The concept of an agent was in artificial intelligence for approximately three decades. An agent theory describes what an agent is, what its properties and internal structure are, and how they are connected. In order to do this, an agent theory uses a mathematical formalism for representing an agent, its behavior, and reasoning. There is no unique definition of an agent. Several definitions are proposed. Three definitions are described below, i.e., definitions given by Wooldridge [
16], Ferber [
17], and Russel and Norvig [
18].
Wooldridge [
16] describes an agent as a computer system that is situated in some environment, and that is capable of autonomous action in this environment in order to meet its design objectives. This definition does not include intelligence. An agent is intelligent if it is capable of flexible autonomous action, where flexible mean that beside autonomy, an agent also needs to possess the following characteristics: reactivity, proactiveness, and social ability. Reactivity means that an agent can perceive its environment and has a real-time response to the observed changes. Proactiveness is an ability of an agent to exhibit goal-directed behavior that leads to the achievement of its designed objectives by taking the initiative. Social ability is a characteristic of an agent to interact with other agents (and possibly humans) in order to satisfy its designed objectives.
Ferber [
17] defines an agent as a physical or virtual entity which is capable of acting in an environment and can communicate with other agents. An agent is endowed with autonomy, i.e., it is not driven by commands of the user or other agents but by a set of tendencies, which can take a form of individual objectives or of satisfaction/survival functions. It possesses own resources. An agent is able to perceive its environment to a limited extent and has only a partial representation of this environment. An agent has skills and can offer services and may be able to reproduce itself. Ferber represents an agent as a ‘living organism’ that behaves in such way to attain objectives on the basis of all available elements, i.e., perceptions, representations, actions, communications, resources, and skills.
There are two concepts of agents according to the how the knowledge is represented [
17]. The first types are cognitive agents. They have symbolic and explicit representation of the world on the basis of which they can reason. They have a knowledge base with data, know how to complete tasks, and how to communicate with other agents and environment. If they have goals and explicit plans on how to achieve their goals, they are intentional agents. A well-known type of cognitive agents are the belief–desire–intention (BDI) agents [
19,
20,
21]. They have mental attitudes: beliefs, desires, and intentions. Beliefs represent the informational state of an agent about itself, other agents, and the environment. Desires describe what the agent’s motivations and goals are. Intentions are a result of deliberation. They lead to action. The strength of this type of agents is that they are inspired by the human concept of knowledge and deliberation. This property makes them simple and intuitive for understanding their internal structure. The second types are reactive agents. Their representation of knowledge is situated at a sub-symbolic level; they have no planning mechanism or explanation of goals. An internal representation is numerical, so they use optimization methods for exploring parameter space. This type of agent originates from the study of animal behavior [
22,
23]. They emulate the type of animal behavior that is simple and governed by simple rules, e.g., an ant colony, a flock of birds, or fish. The strength of this type of agent is not an individual agent, but a large number of agents with their property of self-organization that leads to emergent behavior that might be described as intelligent, i.e., intelligence of the group. Ferber [
17] also divides agents according to their modes of conduct on teleonomic and reflexes agents. Teleonomic agents are directed towards explicit goals expressed within the agents. A reflex agent behavior is regulated by perceptions obtained by environment.
This classification is simplified and divides agents in two completely different types. In multi-agent systems, these types can be combined in different ways depending on the problem domain, i.e., hybrid agent architecture can be developed or a hybrid multi-agent system can be created.
Russel and Norvig [
18] define an agent as anything that perceives its environment through sensors and acts on that environment through actuators. An agent behavior is described by the agent function that is implemented by an agent program. The agent function maps percept sequence to an action. There exist many types of agent programs design and they depend on the nature of the environment.
Russel and Norvig [
18] describe four basic kinds of agents: simple reflex agents (directly respond to percepts), model-based reflex agents (have an internal state that depends on the percept history, combines current percept with internal state, updates current state, and acts according to that), goal-based agents (act to achieve their goals), and utility-based agents (try to maximize their own utility function). All four kinds of agents can be the foundation for learning agents because they can improve their performance through learning.
As we saw from the definitions above, the concept of agent is mostly generic but gives the opportunity to be broadly applied to many different domains. Additionally, it is obvious that a single agent cannot make significant change in an environment in which it acts and consequently cannot be interesting for implementation. Therefore, agents are organized in multi-agent systems in order to resolve problem in different domains. To achieve common goals agents in multi-agent system must interact with each other. The interaction may be simple or complex, as well as may be achieved directly or through the environment. So far, numerous multi-agent systems are developed. In this paper we are interested in the use of multi-agent systems in unmanned surface vessels.
4. The Use of Intelligent Agents in Unmanned Surface Vessels
When considering multi-agent unmanned vessels, the multi-agent system ideally should be able to fully assume the role of a human crew member. Regardless of the ship’s functionality, the multi-agent system needs to take over each of the following four functional classes: (i) information acquisition; (ii) information analysis; (iii) decision and action selection, and (iv) action implementation [
24].
Figure 2 shows the structure of an agent through these functional classes. Performance of information acquisition is the task of agent sensors. Agent knowledge shall contain the knowledge necessary to perform information analysis as well as decision and action selection. Finally, agent effectors perform actions. When considering the operation of the multi-agent system on board, it is necessary to conceptualize, as parts of the multi-agent system, all those parts of the ship’s equipment over which the agent may have control. Parts of the ship’s equipment that can acquire different states of its environment, e.g., smoke detector, echo sounder, etc., may serve as agent sensors. Furthermore, all those parts that can perform actions can be conceptualized as agent effectors.
The following is a review of research papers from the scope of use of multi-agent systems to achieve the functionality of unmanned surface vessels. The presented papers were obtained using search tools with keywords unmanned (or autonomous), vessel (or ship), and agent (or multiagent, multi-agent).
The agents were first used in marine research for different simulation purposes. Simulations enable testing of various items which, in a real situation, would be too dangerous or too expensive to perform, and sometimes impossible to perform. In the case of maritime research, simulations made it possible to test scenarios to raise the level of safety and functionality of ship transport. With further development of simulation platforms, such environments are also used for design and evaluation of entire systems, including systems of unmanned vessels.
Liu, Sun, and Du [
25], in their work, propose the model of intelligent agent for simulating ship collision avoidance. Within this model, they defined seven basic components that such an intelligent agent should have. Each one of these basic components is specialized in performing one function. Cooperative activities of these components result in the following functions: perception, memory, communication, emotion, action, learning, and thinking. By using these functions, a ship conceptualized through an agent model is able to achieve functionalities, such as: detecting changes in the environment, gathering information about other vessels in the environment, judging the degree of danger of the current situation, communicating with other participants within the environment, making knowledge-based decisions, and acting to avoid collisions with other vessels or obstacles. With this approach, the target ship assumes the characteristics of an intelligent agent because this ship acts autonomously and adaptably.
Han, Zhang, Wang, Luo, Ran, and Xu [
26] propose the multi-agent model for training unmanned surface vessels. In their model, agents are designed as the physical controllers for each unmanned surface vehicle. Within the model, an agent cooperation method is defined. The authors designed the multi-agent-based learning system to train unmanned surface vehicles. A system simulation was carried out to verify its effectiveness. This simulation showed that the proposed model is feasible and can be transformed into a policy for selecting the actions of a team of unmanned surface vehicles.
The focus of work of Xiao, Fu, Zhang, Agarwal, and Goh [
27] is on planning, modelling, and testing autonomous vessels. Their model can be clearly divided into the following layers: (i) modelling analytics (sea way capacity evaluation, situational awareness, scenario evaluation, risk evaluation, and high-level decision making); (ii) multi-agent system modelling (dynamic multi-agent modelling, monitor runtime intermediate data, and generate modelling output) and (iii) data and knowledge (ENC data, AIS and radar data, regulation, spatial environment data, and other maritime transport data). The authors consider the process of autonomous maritime transport as a chain consisting of path planning, monitoring the situation, and making decisions according to the current state of the environment.
Autonomous navigation is the functionality most often referred to as the functionality taken over by the agent-based systems in autonomous ships. Navigation is a complex process that within itself possesses many requirements that need to be accomplished. These requirements represent functionalities such as avoiding collisions, path planning, detecting anomalies, or classifying objects of the vessel environment. The accomplishment of these functionalities by agents can be achieved through learning based on data on previous reactions of vessels in different situations. For the purpose of the above-mentioned training of agent-based systems, deep learning algorithms are most commonly used. The need to achieve autonomous navigation resulted in a greater number of publications dealing with appropriate deep learning methods. Thus, within the fifteen-year period (2003–2018), the number of publications discussing deep learning-based navigation methods increased 9 times. In the same period, the number of publications processing deep learning in ship collision avoidance increased 5 times and the number of publications researching deep learning for anomaly detection increased 15 times [
28].
Perera [
3] proposes a collision avoidance model within the framework for the autonomous navigation of ships. In the base of this model is an agent system based on deep learning systems. Deep learning systems would learn from the behaviors of the crews of nowadays ships, for example, they would learn vessel management by observing the actions of the shipyards. Similar methods are already used in practice. This concerns in particular the resolution of autonomy problems in related areas, such as the autonomy of road vehicles and drones. Nowadays, these methods can be adapted to unmanned surface vessels.
By analyzing COLREG rules, Perera finds potential regulatory problems related to the COLREG application to autonomous vessels. This author also suggests possible solutions to the discovered deficiencies of COLREG. A structured technology framework proposed by Perera would possess decision support layer supported by Internet of Things (IoT) elements that would provide the system with relevant data about the environment. He also stated that procedures for checking such autonomous systems should be established. Of course, all these checks must be coordinated with the appropriate public authorities. Perera, in collaboration with Murray, suggests the method for maritime situation control based on the prediction of ship behavior via clustering data extracted from ship trajectory in an observed geographical region [
29,
30]. The method uses machine learning techniques to extrapolate those segments of the trajectory that are relevant for the current calculation.
Azimi, Salokannel, Lafond, Lilius, Salokorpi, and Porres [
31], in their navigational model, recommend a combination of reinforcement learning and imitation learning. Reinforcement learning models identify the main elements of the problem understudy by analyzing how an agent interacts with its environment to reach a maximum reward while pursuing an ultimate goal. The agent derives information from its environment in order to perform actions which have impact based on a predefined reward. The imitation learning is based on data collected from experienced human behavior in order to teach the system to imitate an expert behavior. The authors combine reinforcement and imitation in their agent-based simulation environment to investigate the safety of this approach and the advantages of this model in relation to traditional search-based planning and optimization algorithms.
In their approach to collision avoidance methods, authors Chen Chen, Ma, Xu, Yuwang Chen, and Wang [
32] model the system as the multi-agent system. In their modelling approach, they do not start from an individual ship but observe a group of ships in a determined area. Each ship is joined by an agent. The avoidance of collision takes place through cooperation between these agents, and the applied actions are mutually decided (head-on, overtaking, or crossing). The method by which the system learns is multi-agent deep reinforcement learning.
Koznowski and Lebkovski [
33] defined the multi-agent system for the control of unmanned port tugboats. This system achieves interoperability within the formation of tugboats when performing joint port operations, such as assistance in ship maneuvers, monitoring and patrolling port areas, conducting port inspections, and assistance in the resolution of marine pollution. Here, decision making is centralized, where decision making is not at the level of tugboat, but every tugboat is part of the team. Within the multi-agent system, the functionality of the interoperable action of tugboats is achieved using control algorithms and evolutionary algorithms. The authors also developed an appropriate simulation environment, which explores possible scenarios of synergy of tugboats in performing port operations.
Wu, Lei, He, Zhang, and Ji [
34] also use deep reinforcement learning within their agent model. They use this model in order to solve the optimization problem of unnamed ship path planning. The waiting times at the defined port places are the values that are used for the path optimization in the model. In accordance with the reinforcement learning methodology, the learning agent interacts with the environment and gains knowledge of the best possible action.
The application of deep reinforcement learning to unmanned vessels is also the subject of research by Guo, Zhang, Zheng, and Du [
35]. They modified the deep reinforcement learning method to achieve an agent-based path planning model for unmanned ships.
Xiao, Ligteringen, Gulijk, and Ale [
36] defined the model for predicting ship behavior, which is based on previous behavior data of the observed ship. Data of ship movements are obtained from the automatic identification system (AIS). Based on these data, a mathematical model that provides information about the probability of future ship behaviors was created. Using this data, an autonomous ship can adjust actions according to calculated probability of other ship behavior that shares the same environment.
The next area of research of the multi-agent system application in unnamed surface vessels is safety. The range of potential safety threats to the ship is broad. Kim, Perera, Sollid, Batalden, and Sydnes [
37] define challenges that are related to autonomous ship safety. According to them, the safety of autonomous ships should be considered through the following eight categories: navigational safety, ship system safety, ship structural safety, personnel safety (due to different degrees of autonomy, it is also necessary to analyze this category), equipment safety, security (piracy, cyberattacks, illegal boarding, and robbery), cargo safety, and onboard emergency management (fire extinguishing, chemical and biological issues, and emergency evacuation). It is evident from this categorization how wide the area of onboard safety is. The same goes for agent systems that support safety on board.
Under conditions where manned vessels and unmanned vessels are in use, it is necessary to further improve maritime search and rescue. It is necessary to have ready methods and procedures enabling the prompt and efficient undertaking of necessary actions in case of any need to search and rescue at sea. This is the focus of the Yu and Xue research [
38]. They introduced the architecture of the multi-agent-based intelligent decision support system of maritime search and rescue. According to characteristics and procedures of the search and rescue, the whole decision process is divided into a few threads. Each thread is accomplished by one agent. These agents are: the main control agent, distress information processing agent, accident situation evaluation agent, search and rescue supporting information processing agent, search area determining agent, search and rescue resources selecting and optimizing agent, and shipwreck data mining agent. Testing of prototype systems shows that it is possible to effectively replace human decision making in search and rescue processes. The system proved credibility for decision making in the following tasks: (i) assessing disaster risk; (ii) operating in an environment where a quick response in critical situations is needed; and (iii) assessing the necessary search and rescue resources.
Jakob, Vanek, Hrstka, and Pechoucek [
39] propose the multi-agent model, the main task of which is to reduce the risk of pirate attacks at sea. Pirate attacks are a serious security problem in some seas. When solving this problem, the authors not only address unmanned ships, but suggest a model that is applicable to any ship, regardless of its degree of autonomy. The model recognizes three different types of agents: merchant ships, pirate ships, and navy warships. The reduction in risk of pirated attacks is achieved by recommending the following actions: recommending transit corridors, group transit (convoys), route randomization, and recommendations of patrol actions. Of course, this model cannot be achieved without integrating a wide range of data from the real world. Therefore, this emphasizes the need for the coordination of various systems, both in trade and military navies.
Sumic, Males, and Rosic [
40,
41] introduced a topic of the multi-agent system-based fire protection of autonomous ships. They developed the multi-agent ship firefighting model, where the agents take over fire control of every room of a ship. Each room of a ship was assigned its own agent. This agent has access to the firefighting elements contained in his assigned room. These elements include smoke detectors, flame detectors, IR cameras, fire foam generators, and similar elements. These elements serve as sensors and effectors through which the agent receives information from its environment and takes actions that it concludes are necessary to execute. An appropriate simulation environment was developed and the defined model was tested.
The supervision of numerous onboard systems is an area where the application of agents could be useful in unmanned vessels. Perera suggests using agents for condition monitoring [
3]. Condition monitoring implies monitoring of all ship functions to predict the need for maintenance. The idea is that the agent initiates maintenance through the condition-based maintenance system in case of the conclusion that a system requires maintenance. In this approach, the question arises when an urgent repair of a system is required while the vessel is, for example, in the middle of the ocean. One possible answer to this question is to achieve interoperability with robotic systems that could be used in situations such as the situation mentioned above.
When considering unmanned surface vessels, it is necessary to research an infrastructure that will support such vessels. Marine surveillance systems are an important part of this infrastructure. These systems are particularly important in the areas of dense traffic. Many vessels, and the different ways these vessels behave, create a dynamic and complex system that needs to be carefully monitored. Multi-agent systems can also have a significant application in this field.
Mano, George, and Gleizes developed the adaptive multi-agent model for maritime surveillance [
42]. In this model, each vessel is represented by one agent. Each agent monitors local anomalies to react appropriately in case it concludes that intervention is necessary. The causes of ship behavior anomalies can vary from criminal intent to various malfunctions.
A kind of continuation of the previous research is the research conducted by Brax, Andonoff, and Gleizes. They proposed a multi-agent system designed to observe the abnormal behavior of ships [
43]. The developed system proposed by these authors is not intended for independent decision making, but serves as a means of helping human operators in early warnings about potential problems. The human operator shall decide on the action to be taken. This information is feedback to the multi-agent system. Based on feedback, the multi-agent system adapts its future alerts related to the potential ship’s abnormal behaviors.
Singh, Nguyen, Kumar, and Lau also assign an agent to each ship within their multiagent model [
44]. The purpose of their model is the management of maritime transport in a busy waterway environment. In order to avoid congestions, the system based on this model generates the speed recommendation for each vessel in the environment.
Some authors approach the problem of unmanned surface vessels through robotic technology. A certain number of such approaches can also be considered as an agent approach if the robot is considered as a physical manifestation of an agent and artificial intelligence methods are used. Often, these systems are operationalized through the cooperative activity of a large number of robots, i.e., multiple unmanned surface vessels. Song and Chen [
45] conceptualize multiple unmanned surface vessels as cognitive agents who, besides sensors and effectors, possess the following modules: (i) user interface and communication module; (ii) learning module; (iii) module for modelling environmental information; and (iv) decision-making module. Luo, Bae, Min, and Kim [
46,
47] model multiple unmanned surface vessels for the purpose of applying teams of robotic vessels in environmental operations, such as oil cleaning operations and other sea protection operations.
Finally, two more cases will be listed. Both cases are specific when compared to previously described research. In the first one, the management of groups of fishing boats is considered, while the second refers to the problem of avoiding the destruction of the marine biosystem.
In their research, Vanhée, Borit, and Santos [
48] consider a particular type of autonomous vessel, namely autonomous fishing vessels. The focus of their work is the application of multi-agent systems in autonomous fishing vessels. Their goal is the definition of autonomous fishing operation systems. This system is modeled as a multi-agent system and its task is to perform actions necessary for integrated fishing operations, i.e., search for suitable fishing locations, operations with fishing nets, and the storage and transport of the fish caught.
The multi-agent model 3MTSim is developed to simulate the spatiotemporal movement of marine mammals and maritime traffic [
49]. It is based on existing telemetry data on fin, blue, and beluga whales, as well as on land-based tracking of humpback and minke whales in the St. Lawrence Estuary in Canada. This is the decision–support tool to inform management personnel in the estuary. This tool also can be used in autonomous ships passing an ecologically sensitive area, i.e., an area populated by protected marine species. The model represents the decision-making process as a function of environmental conditions, the contextual setting, and objectives that are set. This paper also shows how wide the planning process has to be when designing unmanned vessels. It is not expected that each unmanned vessel must contain an implemented system enabling the avoidance of disturbances of local marine species. This functionality can be provided as an external service to vessels when passing through bio-sensitive areas.
5. Discussion
A total of 24 papers examining multi-agent systems as facilitators of unmanned surface vessel functions are presented. A summary of the main contribution of these papers is given in
Table 1.
It is shown that the most frequent application of agents in unmanned surface vessels is in navigation, since a total of nine papers directly consider that purpose. The number of papers engaged in the navigation of unmanned vessels is not exhausted. Two out of three papers presented here that are classified in the field of simulations consider navigational problems through simulations. By adding these two papers, the number of papers directly or indirectly engaged in navigation of unmanned vessels almost reaches half of all papers considered.
Safety is one of the essential elements of unmanned surface vessels. Among the presented papers, three papers belong directly to the safety category. These are the papers that consider reducing the risk of pirated attacks on the sea, fire protection of autonomous vessels, and agent-based search and rescue operations at sea. All works categorized in the field of navigation could also be categorized in the field of safety. This is understandable because, for example, every system that covers navigation must have built-in methods to avoid collisions, which is one of the functions that must be covered by vessel safety systems. However, the presented papers show that there is enormous space for additional application of intelligent agents in the field of unmanned surface vessel safety. For example, there is no appropriate multi-agent system solution for avoiding, detecting, and responding to events such as grounding, engine errors, propulsion system errors, hull damage, problems with ship stability, failure of any ship subsystem, cargo problems, or cyber-attacks on the ship’s systems. Intelligent agents could also be used in the monitoring and management of ship systems such as the engine, propulsion system, electrical system, communication system, and IT system. Only one paper was found to discuss the problem of vessel system monitoring and control.
Three papers on maritime surveillance based on agents are also presented. Maritime surveillance is not a direct function of a vessel, but this activity is essential for the sea traffic. This importance is even more emphasized in the hybrid environment, where vessels of different degrees of autonomy navigate in the same area, starting from vessels with a human crew, through remote-controlled vessels, to fully autonomous unmanned vessels.
There are two papers in the group of elaborated papers that were singled out from the previously analyzed topics. The first paper topic is about the coordination of unmanned fishing boats, and the second covers the avoidance of sensitive marine species that may inhabit areas of navigation. These papers are an indicator of the interdisciplinary potential of the area, i.e., show how interesting it can be to extend the research of multi-agent system applications in unnamed surface vessels to other related areas.
It should be noted that none of the presented papers discuss the interoperability between several multi-agent systems on unmanned surface vessels. It is reasonable to assume that the interoperability of such systems is necessary in order to achieve the full functionality of autonomous unmanned surface vessels. This is difficult to achieve without a common framework that would define common ontology, communication, and cooperation procedures for the multi-agent systems installed on the vessel.